:root{--bg:#0f0b12;--bg-2:#1b1519;--bg-cream:#f1eada;--bg-sage:#d8e0cb;--panel:#16111a;--panel-2:#20171f;--line:#eedcc324;--line-strong:#eedcc347;--text:#efe4cc;--text-dim:#c9b99f;--text-mute:#948572;--text-dark:#2c2418;--text-sage:#405441;--amber:#e1a659;--amber-2:#f0be72;--amber-glow:#f0be728c;--gold:#d5a863;--cream:#f1e4c6;--sage:#90a98d;--sage-2:#7a9c7e;--peach:#e8b39b;--rose:#d68a8a}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{letter-spacing:.005em;min-height:100vh;font-family:Noto Serif KR,Nanum Myeongjo,Cormorant Garamond,Times New Roman,serif;font-weight:400;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.container{max-width:1180px;margin:0 auto;padding:0 24px}.container-narrow{max-width:860px;margin:0 auto;padding:0 24px}.center{text-align:center}.site-header{z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#0f0b12d9;position:sticky;top:0}.site-header .row{justify-content:space-between;align-items:center;gap:20px;height:72px;display:flex}.brand-mark{letter-spacing:.28em;text-transform:uppercase;color:var(--cream);align-items:center;gap:14px;font-family:Cormorant Garamond,serif;font-size:15px;display:inline-flex}.brand-mark img{filter:drop-shadow(0 0 12px #f0be7280);width:34px;height:34px}.brand-mark .brand-jp{color:var(--text-dim);letter-spacing:.32em;font-family:Nanum Myeongjo,serif;font-size:12px}.site-nav{align-items:center;gap:28px;display:none}@media (min-width:960px){.site-nav{display:inline-flex}}.site-nav a{letter-spacing:.36em;text-transform:uppercase;color:var(--text-dim);padding:10px 0;font-family:Cormorant Garamond,serif;font-size:12.5px;transition:color .2s;position:relative}.site-nav a:hover,.site-nav a.active{color:var(--cream)}.site-nav a:after{content:"";background:var(--amber-2);transform-origin:0;height:1px;transition:transform .28s;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a.active:after{transform:scaleX(1)}.hamburger{color:var(--cream);cursor:pointer;letter-spacing:.32em;background:0 0;border:0;align-items:center;gap:8px;padding:10px;font-family:Cormorant Garamond,serif;font-size:12.5px;display:inline-flex}@media (min-width:960px){.hamburger{display:none}}.hamburger .bars{background:currentColor;width:22px;height:2px;display:block;box-shadow:0 6px,0 -6px}.drawer-backdrop{z-index:60;background:#0000009e;position:fixed;inset:0}.drawer{z-index:61;border-left:1px solid var(--line);background:#100b14;flex-direction:column;gap:20px;width:min(320px,88vw);padding:24px 22px;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.drawer h4{letter-spacing:.32em;text-transform:uppercase;color:var(--text-mute);margin:12px 0 6px;font-family:Cormorant Garamond,serif;font-size:12px}.drawer a{border-bottom:1px solid var(--line);letter-spacing:.04em;padding:12px 0;font-size:15px}.drawer a:hover{color:var(--amber-2)}.drawer .drawer-cta{gap:10px;margin-top:auto;display:flex}.drawer .btn{flex:1;justify-content:center}.drawer .drawer-close{color:var(--text-dim);cursor:pointer;background:0 0;border:0;align-self:flex-end;padding:0 4px;font-size:22px}.hero-rooftop{background:radial-gradient(1200px 500px at 50% 0,#1e223e80,#0000),linear-gradient(#0b0812 0%,#131022 50%,#0f0b12 100%);padding:90px 0 40px;position:relative;overflow:hidden}.hero-rooftop:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 8% 12%,#f0be7299 0 2px,#0000 3px),radial-gradient(circle at 20% 8%,#f0be7280 0 1.5px,#0000 2.5px),radial-gradient(circle at 34% 14%,#f0be7280 0 2px,#0000 3px),radial-gradient(circle at 48% 6%,#f0be728c 0 1.8px,#0000 2.8px),radial-gradient(circle at 62% 12%,#f0be7280 0 1.5px,#0000 2.5px),radial-gradient(circle at 76% 8%,#f0be728c 0 2px,#0000 3px),radial-gradient(circle at 90% 14%,#f0be7280 0 1.6px,#0000 2.6px);position:absolute;inset:0}.hero-rooftop .hero-copy{text-align:center;padding:20px 0 40px;position:relative}.hero-rooftop .eyebrow{letter-spacing:.44em;text-transform:uppercase;color:var(--amber-2);justify-content:center;align-items:center;gap:14px;margin-bottom:22px;font-family:Cormorant Garamond,serif;font-size:12.5px;display:inline-flex}.hero-rooftop .eyebrow:before,.hero-rooftop .eyebrow:after{content:"";background:var(--amber-2);width:40px;height:1px}.hero-rooftop h1{color:var(--cream);max-width:22ch;margin:0 auto 22px;font-family:Nanum Myeongjo,Noto Serif KR,serif;font-size:clamp(30px,5vw,58px);font-weight:800;line-height:1.22}.hero-rooftop h1 em{color:var(--amber-2);font-style:normal}.hero-rooftop .lead{color:var(--text-dim);max-width:46ch;margin:0 auto 28px;font-size:16px;line-height:1.85}.hero-rooftop .cta-row{flex-wrap:wrap;justify-content:center;gap:12px;display:inline-flex}.hero-rooftop .hero-frame{aspect-ratio:3/4;border:1px solid #f0be722e;max-width:780px;margin:40px auto 0;position:relative;overflow:hidden;box-shadow:0 40px 80px -20px #0009,0 0 0 8px #ffffff08}.hero-rooftop .hero-frame img{object-fit:cover;object-position:50% 30%;filter:saturate(1.05)contrast(1.04);width:100%;height:100%}.hero-rooftop .hero-frame:after{content:"";background:linear-gradient(#0b081266 0%,#0000 20% 80%,#0b081240 100%);position:absolute;inset:0}.sky-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;background:linear-gradient(#0f0b12,#0a0710);padding:60px 0}.sky-strip .cap{letter-spacing:.5em;text-transform:uppercase;color:var(--amber-2);margin-bottom:8px;font-family:Cormorant Garamond,serif;font-size:11.5px}.sky-strip h2{color:var(--cream);letter-spacing:.12em;margin:0 0 12px;font-family:Nanum Myeongjo,serif;font-size:clamp(22px,3vw,30px)}.sky-strip p{color:var(--text-dim);max-width:46ch;margin:0 auto;font-size:15px}.triptych{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:68px 0 82px}.triptych .cols{grid-template-columns:1fr;gap:42px;display:grid}@media (min-width:720px){.triptych .cols{grid-template-columns:repeat(3,1fr);gap:56px}}.triptych h3{letter-spacing:.44em;text-transform:uppercase;color:var(--amber-2);margin:0 0 16px;font-family:Cormorant Garamond,serif;font-size:14px}.triptych p{color:var(--text-dim);margin:0;font-size:14.5px;line-height:1.85}.appeal-strip{background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:40px 0}.appeal-strip .inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;display:flex}.appeal-badge{border:1px solid var(--amber);letter-spacing:.34em;text-transform:uppercase;color:var(--amber-2);border-radius:999px;align-items:center;padding:8px 18px;font-family:Cormorant Garamond,serif;font-size:12px;display:inline-flex}.appeal-chips{flex-wrap:wrap;justify-content:center;gap:10px;display:inline-flex}.appeal-chip{border:1px solid var(--line-strong);color:var(--text);letter-spacing:.06em;border-radius:999px;padding:6px 14px;font-size:13px}.appeal-tagline{color:var(--text-dim);letter-spacing:.04em;font-size:14px}.lower-cream{background:var(--bg-cream);color:var(--text-dark);border-top:1px solid #0000000d;padding:96px 0 80px}.lower-cream .brand-mini{text-align:center;color:#7a6448;letter-spacing:.14em;margin-bottom:30px;font-family:Cormorant Garamond,serif;font-size:18px;font-style:italic}.lower-cream .brand-mini:after{content:"·";color:#b29a75;margin-top:10px;font-size:20px;display:block}.triptych-portraits{grid-template-columns:1fr;gap:32px;display:grid}@media (min-width:780px){.triptych-portraits{grid-template-columns:repeat(3,1fr);gap:28px}}.triptych-portraits .portrait{text-align:center;flex-direction:column;align-items:center;display:flex}.triptych-portraits .p-frame{aspect-ratio:3/4;background:#e7dcc5;width:100%;overflow:hidden}.triptych-portraits .p-frame img{object-fit:cover;object-position:50% 20%;width:100%;height:100%}.triptych-portraits h4{letter-spacing:.34em;text-transform:uppercase;color:#3e3222;margin:26px 0 10px;font-family:Cormorant Garamond,serif;font-size:15px}.triptych-portraits p{color:#6c5a44;max-width:30ch;margin:0 auto;font-size:13.5px;line-height:1.8}.sage-form-strip{background:var(--bg-sage);color:var(--text-sage);border-top:12px solid #c3d0b4;padding:70px 0 60px}.sage-form-strip .grid{grid-template-columns:1fr;gap:34px;display:grid}@media (min-width:800px){.sage-form-strip .grid{grid-template-columns:1fr 1fr 1fr;gap:40px}}.sage-form-strip h5{color:#405441;letter-spacing:.03em;margin:0 0 16px;font-family:Cormorant Garamond,serif;font-size:26px;font-style:italic}.sage-form-strip label{letter-spacing:.28em;text-transform:uppercase;color:#4e624a;margin-bottom:6px;font-family:Cormorant Garamond,serif;font-size:11px;display:block}.sage-form-strip .field{color:#405441;border-bottom:1px solid #40544159;margin-bottom:20px;padding:6px 0 10px;font-size:14px}.sage-form-strip .btn-outline{color:#405441;letter-spacing:.28em;text-transform:uppercase;border:1px solid #405441;margin-top:8px;padding:12px 22px;font-family:Cormorant Garamond,serif;font-size:12px;transition:background .2s,color .2s;display:inline-block}.sage-form-strip .btn-outline:hover{color:#f1eada;background:#405441}.sage-form-strip .btn-outline.rose{color:#a65454;background:#d68a8a0f;border-color:#d68a8a}.section{padding:84px 0}.section h2{letter-spacing:.04em;color:var(--cream);margin:0 0 14px;font-family:Nanum Myeongjo,serif;font-size:clamp(26px,3.4vw,38px)}.section h2 .kicker-small{letter-spacing:.4em;text-transform:uppercase;color:var(--amber-2);margin-bottom:12px;font-family:Cormorant Garamond,serif;font-size:12px;display:block}.section p.lead{color:var(--text-dim);max-width:60ch;font-size:16px}.section.on-cream{background:var(--bg-cream);color:var(--text-dark)}.section.on-cream h2{color:#2a211a}.section.on-cream p,.section.on-cream li{color:#4b3a2a}.btn{letter-spacing:.14em;border:1px solid var(--amber);color:#1a0f09;background:linear-gradient(135deg, var(--amber-2), var(--amber));cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:14px 24px;font-family:Noto Serif KR,Nanum Myeongjo,serif;font-size:14.5px;text-decoration:none;transition:transform .2s,box-shadow .25s;display:inline-flex;position:relative;overflow:hidden}.btn.ghost{color:var(--cream);border-color:var(--line-strong);background:0 0}.btn.ghost:hover{border-color:var(--amber-2);color:var(--amber-2)}.btn.solid-dark{color:var(--cream);background:#16100b;border-color:#16100b}.btn.disabled{color:#f0e4ce8c;cursor:not-allowed;pointer-events:none;background:#78645240;border-color:#b4a08c4d}.btn.shine:before{content:"";background:linear-gradient(120deg,#0000,#ffffff8c,#0000);width:40%;height:100%;animation:3.6s infinite btn-shine;position:absolute;top:0;left:-60%;transform:skew(-20deg)}@keyframes btn-shine{0%{left:-60%}60%,to{left:120%}}.btn.glow{box-shadow:0 0 0 0 var(--amber-glow);animation:2.4s ease-in-out infinite btn-glow}@keyframes btn-glow{0%,to{box-shadow:0 0 #f0be728c}50%{box-shadow:0 0 28px 4px #f0be7252}}.btn.pulse{animation:2s ease-in-out infinite btn-pulse}@keyframes btn-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.035)}}.btn.lift{transition:transform .2s,box-shadow .25s}.btn.lift:hover{transform:translateY(-3px);box-shadow:0 10px 30px -12px #f0be7273}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.fixed-call{z-index:55;color:#1a0f09;box-shadow:0 12px 30px -8px #0000008c, 0 0 0 0 var(--amber-glow);letter-spacing:.06em;background:linear-gradient(135deg,#f5c275,#c48a45);border-radius:999px;align-items:center;gap:12px;padding:14px 22px 14px 16px;font-size:15px;font-weight:700;animation:2.6s ease-in-out infinite fixed-pulse;display:inline-flex;position:fixed;bottom:22px;left:22px}.fixed-call.disabled{color:#f0e4ceb3;cursor:not-allowed;background:#504137e6;animation:none;box-shadow:0 8px 20px -8px #0006}.fixed-call .ring{width:34px;height:34px;color:var(--amber-2);background:#1a0f09;border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:inline-flex}@keyframes fixed-pulse{0%,to{box-shadow:0 12px 30px -8px #0000008c,0 0 #f0be7280}50%{box-shadow:0 12px 30px -8px #0000008c,0 0 0 14px #f0be7200}}@media (max-width:480px){.fixed-call{padding:12px 16px 12px 12px;font-size:14px}}.promo-banner{color:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:center;letter-spacing:.06em;background:#0a0710;padding:18px 0;font-size:14px}.promo-banner a{color:var(--amber-2);text-underline-offset:4px;text-decoration:underline}.promo-banner strong{color:var(--cream);letter-spacing:.08em}.site-footer{color:var(--text-dim);border-top:1px solid var(--line);background:#08050c;padding:60px 0 30px}.site-footer .grid{grid-template-columns:1fr;gap:32px;display:grid}@media (min-width:780px){.site-footer .grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}.site-footer h6{letter-spacing:.36em;text-transform:uppercase;color:var(--cream);margin:0 0 12px;font-family:Cormorant Garamond,serif;font-size:12px}.site-footer p,.site-footer li a{color:var(--text-dim);font-size:13.5px;line-height:1.85}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li a:hover{color:var(--amber-2)}.site-footer .fine{border-top:1px solid var(--line);text-align:center;color:var(--text-mute);letter-spacing:.12em;margin-top:40px;padding-top:20px;font-size:12px}.site-footer .region-index a{border:1px solid var(--line-strong);letter-spacing:.08em;color:var(--text-dim);border-radius:999px;margin:2px 4px 2px 0;padding:4px 10px;font-size:12px;display:inline-block}.site-footer .region-index a:hover{border-color:var(--amber-2);color:var(--amber-2)}.hub{grid-template-columns:1fr;align-items:center;gap:40px;min-height:92vh;padding:40px 0 80px;display:grid;position:relative;overflow:hidden}.hub .hero-side{aspect-ratio:3/4;border:1px solid #00000014;margin:0 24px;position:relative;overflow:hidden;box-shadow:0 30px 60px -20px #00000080}.hub .hero-side img{object-fit:cover;object-position:50% 26%;width:100%;height:100%}.hub .hero-copy{padding:0 24px}.hub .eyebrow{letter-spacing:.42em;text-transform:uppercase;align-items:center;gap:12px;margin-bottom:20px;font-family:Cormorant Garamond,serif;font-size:12.5px;display:inline-flex}.hub .eyebrow:before{content:"";background:currentColor;width:40px;height:1px}.hub h1{letter-spacing:-.01em;margin:0 0 20px;font-family:Nanum Myeongjo,serif;font-size:clamp(34px,5vw,60px);font-weight:800;line-height:1.14}.hub .lead{max-width:46ch;font-size:16.5px;line-height:1.85}.hub .hero-cta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}@media (min-width:900px){.hub{grid-template-columns:1fr 1fr;padding:60px 0 100px}}.mini-nav{border-bottom:1px solid var(--line);background:#0f0b128c}.mini-nav.light{background:#ffffff8c;border-color:#00000014}.mini-nav .inner{justify-content:space-between;align-items:center;gap:22px;height:56px;display:flex;overflow-x:auto}.mini-nav .brand{letter-spacing:.28em;font-family:Nanum Myeongjo,serif;font-size:15px}.mini-nav .links{letter-spacing:.38em;text-transform:uppercase;color:var(--text-dim);gap:22px;font-family:Cormorant Garamond,serif;font-size:11.5px;display:inline-flex}.mini-nav.light .links{color:#6c5745}.mini-nav .links a:hover{color:var(--amber-2)}.mini-nav.light .links a:hover{color:#7a5a2a}.roster{background:var(--bg-2);padding:90px 0}.roster.light{color:var(--text-dark);background:#f5edda}.roster .head{text-align:center;margin-bottom:46px}.roster h2{color:inherit;margin:0 0 10px;font-family:Nanum Myeongjo,serif;font-size:clamp(26px,3.4vw,36px)}.roster .sub{letter-spacing:.42em;text-transform:uppercase;color:var(--amber-2);font-family:Cormorant Garamond,serif;font-size:12px}.roster.light .sub{color:#8a6a34}.roster .grid{grid-template-columns:1fr;gap:24px;display:grid}@media (min-width:640px){.roster .grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:960px){.roster .grid{grid-template-columns:repeat(3,1fr)}}.roster .card{background:var(--panel);border:1px solid var(--line);flex-direction:column;display:flex;overflow:hidden}.roster.light .card{background:#fffdf7;border-color:#382a1e1a}.roster .card .img{aspect-ratio:4/5;position:relative;overflow:hidden}.roster .card .img img{object-fit:cover;object-position:50% 18%;width:100%;height:100%}.roster .card .info{padding:20px 22px 24px}.roster .card h4{color:inherit;letter-spacing:.02em;margin:0 0 4px;font-family:Nanum Myeongjo,serif;font-size:20px}.roster .card .meta{letter-spacing:.32em;text-transform:uppercase;color:var(--text-mute);margin-bottom:10px;font-family:Cormorant Garamond,serif;font-size:12px}.roster .card p{color:var(--text-dim);margin:0;font-size:14px;line-height:1.7}.roster.light .card p{color:#5d493a}.reserve-strip{text-align:center;border-top:1px solid var(--line);background:linear-gradient(#120c18,#0f0b12);padding:90px 0}.reserve-strip.light{background:var(--bg-cream);border-color:#0000000f}.reserve-strip.light h2{color:#2a211a}.reserve-strip h2{color:var(--cream);margin:0 0 12px;font-family:Nanum Myeongjo,serif;font-size:clamp(28px,3.6vw,40px)}.reserve-strip p{color:var(--text-dim);max-width:46ch;margin:0 auto 26px}.reserve-strip.light p{color:#4b3a2a}.reserve-strip .btn-row{justify-content:center}.faq{flex-direction:column;gap:12px;display:flex}.faq details{border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:18px 22px}.faq details[open]{background:var(--panel-2)}.faq summary{cursor:pointer;color:var(--cream);justify-content:space-between;gap:20px;font-family:Nanum Myeongjo,serif;font-size:16px;list-style:none;display:flex}.faq summary:after{content:"+";color:var(--amber-2);font-size:20px;line-height:1}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--text-dim);margin:14px 0 0;font-size:14.5px;line-height:1.8}.section.on-cream .faq details{background:#fffdf7;border-color:#00000014}.section.on-cream .faq details[open]{background:#faf4e7}.section.on-cream .faq summary{color:#2a211a}.section.on-cream .faq details p{color:#4b3a2a}.preview-strip{color:#f5e7c6;text-align:center;letter-spacing:.06em;border-bottom:1px solid var(--line);background:#3a2617;padding:10px 12px;font-size:13px}.detail-cards{grid-template-columns:1fr;gap:16px;margin-top:28px;display:grid}@media (min-width:600px){.detail-cards{grid-template-columns:repeat(2,1fr)}}@media (min-width:900px){.detail-cards{grid-template-columns:repeat(3,1fr)}}.detail-cards a{border:1px solid var(--line-strong);background:var(--panel);color:var(--cream);padding:22px;transition:transform .2s,border-color .2s;display:block}.detail-cards a:hover{border-color:var(--amber-2);transform:translateY(-2px)}.detail-cards.light a{color:#2a211a;background:#faf4e7;border-color:#0000001a}.detail-cards.light a:hover{border-color:#b79370}.detail-cards .d-eyebrow{letter-spacing:.32em;text-transform:uppercase;margin-bottom:8px;font-family:Cormorant Garamond,serif;font-size:12px}.detail-cards .d-title{letter-spacing:.02em;font-family:Nanum Myeongjo,serif;font-size:17px}
