:root{--cream:#fffaf7;--paper:#fffefd;--ink:#493e45;--muted:#796d74;--rose:#f6d6df;--rose-strong:#e9aebf;--pink:#fdebf1;--sage:#dfeedd;--sage-strong:#b9d5b6;--blue:#e1eef9;--blue-strong:#b8d3ed;--lavender:#ede6f7;--peach:#f8e4d7;--line:rgba(91,72,81,.13);--shadow:0 22px 60px rgba(111,86,97,.12);--radius:34px;--max:1180px;--narrow:820px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:"Pretendard","Apple SD Gothic Neo","Noto Sans KR",system-ui,sans-serif;line-height:1.75;word-break:keep-all}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit}
.content{width:min(var(--max),calc(100% - 40px));margin-inline:auto;text-align:center}
.narrow{max-width:var(--narrow)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,250,247,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.72)}
.header-inner{width:min(var(--max),calc(100% - 40px));height:86px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:12px}
.brand-mark{display:grid;place-items:center;width:45px;height:45px;border-radius:17px;background:linear-gradient(135deg,var(--rose),var(--sage),var(--blue));font-weight:800;box-shadow:0 9px 22px rgba(179,128,148,.18)}
.brand>span:last-child{display:grid;line-height:1.05;text-align:left}
.brand strong{font-family:Georgia,"Noto Serif KR",serif;font-size:22px;letter-spacing:.08em}
.brand small{margin-top:6px;color:var(--muted);font-size:9px;letter-spacing:.15em}
.primary-nav{display:flex;align-items:center;justify-content:center;gap:28px;font-size:14px;font-weight:700;color:#65575f}
.primary-nav a{position:relative;padding:10px 0}
.primary-nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:4px;height:2px;background:var(--rose-strong);transition:.2s}
.primary-nav a:hover::after,.primary-nav a:focus-visible::after{left:0;right:0}
.menu-button{display:none;border:0;border-radius:999px;padding:9px 15px;background:var(--pink);color:var(--ink);font-weight:800}
.hero{overflow:hidden;position:relative;padding:104px 0 68px;background:radial-gradient(circle at 12% 18%,rgba(246,214,223,.8),transparent 31%),radial-gradient(circle at 90% 6%,rgba(223,238,221,.9),transparent 33%),linear-gradient(155deg,#fffaf7 18%,#fff 52%,#e7f1fb 140%)}
.hero::before,.hero::after{content:"";position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}
.hero::before{width:210px;height:210px;right:-80px;bottom:-90px;background:rgba(248,228,215,.78)}
.hero::after{width:110px;height:110px;left:6%;bottom:-45px;background:rgba(237,230,247,.9)}
.hero-copy{position:relative;z-index:1;max-width:940px}
.eyebrow,.section-heading>span{display:block;margin:0 0 17px;color:#b16f84;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
h1{max-width:900px;margin:0 auto;font-family:Georgia,"Noto Serif KR",serif;font-size:clamp(42px,6.1vw,82px);font-weight:600;line-height:1.22;letter-spacing:-.04em}
.hero-lead{max-width:720px;margin:28px auto 0;color:#70636b;font-size:clamp(17px,2vw,21px)}
.hero-pills{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:32px}
.hero-pills span{padding:10px 17px;border:1px solid rgba(177,111,132,.23);border-radius:999px;background:rgba(255,255,255,.6);font-size:13px;font-weight:700}
.model-stage{padding:66px 20px 110px;background:linear-gradient(180deg,#fff 0,var(--cream) 100%)}
.section-heading{max-width:780px;margin:0 auto 46px;text-align:center}
.section-heading.compact{margin-bottom:30px}
.section-heading.small{margin-top:54px;margin-bottom:22px}
.section-heading h2{margin:0;font-family:Georgia,"Noto Serif KR",serif;font-size:clamp(31px,4vw,52px);line-height:1.25;letter-spacing:-.035em;font-weight:600}
.section-heading p{max-width:650px;margin:18px auto 0;color:var(--muted);font-size:16px}
.portrait-mosaic{width:min(var(--max),100%);margin:auto;display:grid;grid-template-columns:1.28fr .72fr .72fr;grid-template-rows:repeat(2,minmax(210px,310px));gap:16px}
.portrait{position:relative;margin:0;overflow:hidden;border-radius:30px;background:#eee;box-shadow:var(--shadow)}
.portrait-1{grid-row:span 2}
.portrait picture,.portrait img{width:100%;height:100%;object-fit:cover}
.portrait figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:10px 12px;border:1px solid rgba(255,255,255,.72);border-radius:16px;background:rgba(255,255,255,.84);backdrop-filter:blur(12px);color:#493e44;text-align:center;box-shadow:0 8px 24px rgba(51,39,45,.08)}
.portrait figcaption strong,.portrait figcaption span{display:block}.portrait figcaption strong{font-size:12px;line-height:1.3}.portrait figcaption span{margin-top:3px;color:#8e6d79;font-size:11px;font-weight:700;line-height:1.3}
.soft-section{padding:105px 0;background:linear-gradient(130deg,var(--pink),#fff 35%,var(--sage) 105%)}
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
.price-card{min-height:338px;padding:38px 26px;border:1px solid rgba(255,255,255,.75);border-radius:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 18px 48px rgba(110,83,96,.09);position:relative}
.tint-rose{background:linear-gradient(145deg,#fff,var(--rose))}.tint-sage{background:linear-gradient(145deg,#fff,var(--sage))}.tint-blue{background:linear-gradient(145deg,#fff,var(--blue))}
.price-card p{margin:0 0 16px;color:var(--muted);font-size:14px}
.price-card h3{margin:0;font-family:Georgia,serif;font-size:42px}
.price-card strong{margin:8px 0 20px;font-size:24px;color:#a55f76}
.price-card span{max-width:220px;color:#655960;font-size:14px}
.price-card em{position:absolute;top:18px;right:18px;padding:7px 10px;border-radius:999px;background:#fff;color:#769073;font-size:11px;font-style:normal;font-weight:800}
.fine-print{margin:24px auto 0;color:#81757b;font-size:13px}
.journal{max-width:900px;padding:110px 0}
.journal>p{margin:0 auto;color:#655a61;font-family:Georgia,"Noto Serif KR",serif;font-size:clamp(18px,2.1vw,23px);line-height:2.05}
.pastel-divider{display:flex;justify-content:center;gap:8px;margin:56px 0}
.pastel-divider i{width:34px;height:8px;border-radius:999px;background:var(--rose)}
.pastel-divider i:nth-child(2){background:var(--sage)}.pastel-divider i:nth-child(3){background:var(--blue)}.pastel-divider i:nth-child(4){background:var(--lavender)}
.subarea-section{padding:100px 0;background:linear-gradient(155deg,#fff,var(--pink) 46%,var(--blue) 145%)}
.subarea-parent{display:inline-flex;margin:-16px auto 25px;padding:10px 17px;border:1px solid rgba(177,111,132,.2);border-radius:999px;background:rgba(255,255,255,.72);color:#9d6476;font-size:13px;font-weight:800}
.subarea-groups{display:grid;gap:13px;width:min(940px,100%);margin:0 auto}
.subarea-panel{overflow:hidden;border:1px solid rgba(91,72,81,.12);border-radius:24px;background:rgba(255,255,255,.78);box-shadow:0 15px 40px rgba(111,86,97,.07)}
.subarea-panel summary{display:flex;align-items:center;justify-content:center;gap:12px;padding:20px 54px;cursor:pointer;list-style:none;position:relative;font-size:17px;font-weight:800}
.subarea-panel summary::-webkit-details-marker{display:none}
.subarea-panel summary::after{content:"＋";position:absolute;right:24px;color:#ba748a;font-size:20px}
.subarea-panel[open] summary::after{content:"−"}
.subarea-panel summary strong{padding:4px 9px;border-radius:999px;background:var(--pink);color:#9d6476;font-size:11px}
.subarea-links{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;padding:0 24px 25px}
.subarea-links a{min-width:82px;padding:10px 15px;border:1px solid rgba(73,62,69,.12);border-radius:999px;background:#fff;font-size:13px;font-weight:700;transition:.2s}
.subarea-links a:hover,.subarea-links a:focus-visible,.subarea-links a[aria-current="page"]{transform:translateY(-2px);background:var(--ink);color:#fff}
.area-section{padding:110px 0;background:#fff}
.area-launchers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1040px;margin:0 auto}
.area-launcher{display:flex;min-height:190px;padding:28px;border:1px solid var(--line);border-radius:28px;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:var(--ink);cursor:pointer;box-shadow:0 16px 38px rgba(80,58,69,.06);transition:transform .2s ease,box-shadow .2s ease}
.area-launcher:hover,.area-launcher:focus-visible{transform:translateY(-4px);box-shadow:0 20px 44px rgba(80,58,69,.11)}
.area-launcher-seoul{background:linear-gradient(145deg,#fff,var(--pink))}.area-launcher-incheon{background:linear-gradient(145deg,#fff,var(--sage))}.area-launcher-gyeonggi{background:linear-gradient(145deg,#fff,var(--blue))}.area-launcher-hotspots{background:linear-gradient(145deg,#fff,var(--lavender))}
.area-launcher-asan{background:linear-gradient(145deg,#fff,var(--peach))}.area-launcher-cheonan{background:linear-gradient(145deg,#fff,#f4e3ec)}.area-launcher-daejeon{background:linear-gradient(145deg,#fff,#e7f0df)}.area-launcher-wonju{background:linear-gradient(145deg,#fff,#e6edf9)}
.area-launcher span{font-size:22px;font-weight:800}.area-launcher strong{margin-top:4px;font-size:14px;color:#a46c7e}.area-launcher small{max-width:250px;margin-top:12px;font-size:13px;line-height:1.7;color:#786a70}.area-launcher i{margin-top:17px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.7);font-size:12px;font-style:normal;font-weight:800}
.area-dialog{width:min(760px,calc(100% - 28px));max-height:min(82vh,760px);padding:0;border:0;border-radius:30px;background:transparent;color:var(--ink);box-shadow:0 30px 90px rgba(36,25,31,.22);overflow:hidden}
.area-dialog::backdrop{background:rgba(43,32,38,.48);backdrop-filter:blur(7px)}
.area-dialog-shell{position:relative;padding:44px 34px 38px;background:linear-gradient(145deg,#fff,var(--paper));text-align:center;overflow:auto;max-height:min(82vh,760px)}
.area-dialog-close{position:absolute;top:16px;right:18px;width:38px;height:38px;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--ink);font-size:24px;line-height:1;cursor:pointer}
.area-dialog-kicker{margin:0 0 8px;color:#b96f86;font-size:11px;font-weight:800;letter-spacing:.16em}.area-dialog h3{margin:0;font-size:30px}.area-dialog h3+p{margin:10px 0 24px;color:#786a70;font-size:14px}
.area-links{display:flex;justify-content:center;flex-wrap:wrap;gap:9px}
.area-links a{min-width:78px;padding:10px 16px;border:1px solid rgba(73,62,69,.12);border-radius:999px;background:rgba(255,255,255,.72);font-size:14px;font-weight:700;transition:.2s}
.area-links a:hover,.area-links a:focus-visible,.area-links a[aria-current="page"]{transform:translateY(-2px);background:var(--ink);color:#fff}
.faq-section{padding:110px 0;background:linear-gradient(180deg,#fff,var(--peach))}
.faq-list{display:grid;gap:12px;text-align:center}
.faq-list details{border:1px solid rgba(88,67,77,.13);border-radius:22px;background:rgba(255,255,255,.76);overflow:hidden}
.faq-list summary{cursor:pointer;list-style:none;padding:23px 58px;font-weight:800;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"＋";position:absolute;right:24px;color:#be7d91}
.faq-list details[open] summary::after{content:"−"}
.faq-list p{margin:0;padding:0 30px 24px;color:var(--muted)}
.contact-section{padding:78px 0;background:linear-gradient(135deg,var(--pink),var(--sage));text-align:center}
.contact-kicker{margin:0 0 10px;color:#a46c7e;font-size:11px;font-weight:900;letter-spacing:.18em}
.contact-section h2{margin:0;font-size:clamp(30px,4vw,44px)}
.contact-section h2+p{margin:16px auto 24px;color:var(--muted);line-height:1.8}
.contact-button{display:inline-flex;min-width:168px;min-height:52px;align-items:center;justify-content:center;border-radius:999px;background:var(--ink);color:#fff;font-weight:900;box-shadow:0 14px 30px rgba(73,62,69,.18)}
.contact-number{margin:13px 0 0!important;font-size:14px;font-weight:800;letter-spacing:.06em}
.contact-number a{color:var(--ink)}
.mobile-contact-bar{display:none}
.site-footer{padding:78px 0;background:#493e45;color:#fdf6f8;text-align:center}
.footer-brand{display:inline-block;margin-bottom:24px;font-family:Georgia,"Noto Serif KR",serif;font-size:34px;font-weight:700}
.site-footer p{margin:10px auto;color:#ded1d7;font-size:13px;line-height:1.9}
.site-footer small{display:block;margin-top:28px;color:#bdadb4;font-size:11px;letter-spacing:.08em}
.error-page{min-height:100vh;display:grid;place-items:center;padding:30px;text-align:center;background:linear-gradient(135deg,var(--pink),var(--sage),var(--blue))}
.error-page>div{max-width:600px;padding:58px;border-radius:38px;background:rgba(255,255,255,.82);box-shadow:var(--shadow)}
.error-page span{font-size:14px;font-weight:900;letter-spacing:.18em;color:#af6d83}
.error-page h1{margin-top:14px;font-size:44px}
.pastel-button{display:inline-block;margin-top:18px;padding:13px 22px;border-radius:999px;background:var(--ink);color:#fff;font-weight:800}
@media(max-width:820px){body{padding-bottom:76px}.header-inner{height:72px}.menu-button{display:block}.header-inner>#primary-nav{display:none;position:absolute;top:72px;left:0;right:0;padding:12px 20px 22px;background:rgba(255,250,247,.97);border-bottom:1px solid var(--line)}.header-inner>#primary-nav.is-open{display:block}.primary-nav{display:grid;gap:4px}.primary-nav a{padding:10px;border-radius:12px}.hero{padding:74px 0 50px}.portrait-mosaic{grid-template-columns:repeat(2,1fr);grid-template-rows:auto}.portrait{aspect-ratio:1}.portrait-1{grid-column:span 2;grid-row:auto;aspect-ratio:2/1}.price-grid{grid-template-columns:1fr;max-width:500px;margin:auto}.price-card{min-height:280px}.journal,.subarea-section,.area-section,.faq-section,.soft-section{padding-top:82px;padding-bottom:82px}.area-launchers{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-contact-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:90;display:block;padding:7px;border:1px solid rgba(255,255,255,.58);border-radius:999px;background:rgba(73,62,69,.92);box-shadow:0 14px 34px rgba(45,32,39,.24);backdrop-filter:blur(12px)}.mobile-contact-bar a{display:flex;min-height:48px;align-items:center;justify-content:center;border-radius:999px;background:#fff;color:var(--ink);font-weight:900}}
@media(max-width:520px){.content,.header-inner{width:min(100% - 26px,var(--max))}.brand small{display:none}.brand strong{font-size:20px}.hero{padding-top:58px}h1{font-size:40px}.hero-lead{font-size:16px}.model-stage{padding:48px 13px 72px}.portrait-mosaic{gap:9px}.portrait{border-radius:19px}.portrait-1{aspect-ratio:1.32}.portrait figcaption{left:10px;bottom:10px;padding:5px 8px}.section-heading{margin-bottom:34px}.section-heading h2{font-size:32px}.area-launchers{grid-template-columns:1fr;gap:12px}.area-launcher{min-height:150px;padding:22px}.area-dialog-shell{padding:48px 16px 28px}.area-dialog h3{font-size:26px}.area-links a{min-width:72px;padding:9px 13px}.faq-list summary{padding:20px 42px 20px 18px}.faq-list summary::after{right:16px}.journal>p{font-size:18px;line-height:1.95}.price-card{border-radius:26px}.site-footer{padding:62px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.primary-nav a::after,.area-links a,.area-launcher{transition:none}}
