@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-vietnamese-wght-normal-CnvboYUG.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-wght-normal-ukD16Tqj.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-cyrillic-ext-wght-normal-C8S-KRRz.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--mosgroen: #4a5240;--linnen: #ede6d6;--bark: #6b5138;--fs-100: .9rem;--fs-200: 1.125rem;--fs-300: 1.406rem;--fs-400: 1.758rem;--fs-500: 2.197rem;--fs-600: 2.747rem;--fs-700: 3.433rem;--fs-800: 4.292rem;--sp-1: .5rem;--sp-2: 1rem;--sp-3: 1.5rem;--sp-4: 2.5rem;--sp-5: 4rem;--sp-6: 6.5rem;--sp-7: 10rem;--font-display: "Fraunces Variable", "Georgia", serif;--font-body: "Manrope Variable", "Helvetica Neue", sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1);--header-h: 68px}[data-theme=dark]{color-scheme:dark;--bg: #1c2018;--bg-alt: #232820;--panel: #2e3428;--ink: #ede6d6;--ink-dim: #bfb8a4;--accent: #d9a45b;--accent-deep: #b07f3e;--line: rgba(237, 230, 214, .14);--card-grad: linear-gradient(160deg, rgba(237,230,214,.08), rgba(237,230,214,.03));--scrim: rgba(28, 32, 24, .55)}[data-theme=light]{color-scheme:light;--bg: #f0ead9;--bg-alt: #e6ddc8;--panel: #f8f3e6;--ink: #3a4032;--ink-dim: #5a6350;--accent: #9a7233;--accent-deep: #7d5c26;--line: rgba(58, 64, 50, .18);--card-grad: linear-gradient(160deg, rgba(255,255,255,.72), rgba(255,255,255,.4));--scrim: rgba(240, 234, 217, .5)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-weight:350;font-size:var(--fs-200);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;transition:background .3s var(--ease-out),color .3s var(--ease-out)}h1,h2,h3{font-family:var(--font-display);font-weight:420;line-height:1.08;letter-spacing:-.01em}h1{font-size:clamp(var(--fs-600),6vw,var(--fs-800))}h2{font-size:clamp(var(--fs-500),4.5vw,var(--fs-700))}h3{font-size:var(--fs-400)}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul{list-style:none}.wrap{width:min(1180px,100% - 2 * var(--sp-3));margin-inline:auto}.eyebrow{font-size:var(--fs-100);font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--sp-2)}.demo-banner{position:relative;z-index:60;display:flex;align-items:center;justify-content:center;gap:var(--sp-1);padding:.45rem var(--sp-2);background:var(--bark);color:var(--linnen);font-size:.82rem;font-weight:500;letter-spacing:.03em;text-align:center}.demo-banner a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#e8dfcf59}.demo-banner a:hover{text-decoration-color:var(--linnen)}.demo-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--accent)}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:var(--sp-3);height:var(--header-h)}.brand{font-family:var(--font-display);font-size:var(--fs-300);letter-spacing:.01em;white-space:nowrap}.brand em{font-style:italic;color:var(--accent)}.site-nav{display:flex;gap:var(--sp-3);margin-left:auto}.site-nav a{font-size:var(--fs-100);font-weight:500;letter-spacing:.04em;color:var(--ink-dim);transition:color .2s var(--ease-out)}.site-nav a:hover{color:var(--ink)}.controls{display:flex;align-items:center;gap:var(--sp-2);margin-left:auto}.site-nav+.controls{margin-left:0}.lang-toggle,.theme-toggle{display:inline-flex;align-items:center;justify-content:center;height:36px;min-width:36px;padding:0 .5rem;background:transparent;color:var(--ink-dim);border:1px solid var(--line);border-radius:999px;cursor:pointer;font:600 .78rem var(--font-body);letter-spacing:.06em;transition:color .2s var(--ease-out),border-color .2s var(--ease-out)}.lang-toggle:hover,.theme-toggle:hover{color:var(--ink);border-color:var(--accent)}.theme-toggle svg{width:17px;height:17px}[data-theme=dark] .icon-sun,[data-theme=light] .icon-moon{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.85rem 1.7rem;border-radius:999px;border:1px solid transparent;background:var(--accent);color:#16211c;font:600 .95rem var(--font-body);letter-spacing:.03em;cursor:pointer;transition:transform .22s var(--ease-out),background .22s var(--ease-out),border-color .22s var(--ease-out);white-space:nowrap}.btn:hover{transform:translateY(-2px);background:var(--accent-deep);color:#101a15}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{background:transparent;border-color:var(--accent);color:var(--accent)}.btn-small{padding:.5rem 1.1rem;font-size:.82rem}.hero{position:relative}.hero-sticky{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden}#heroCanvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.hero-vignette{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(100deg,rgba(20,38,38,.42) 0%,transparent 55%),radial-gradient(120% 90% at 50% 50%,transparent 52%,rgba(20,38,38,.5) 100%),linear-gradient(to bottom,rgba(20,38,38,.35),transparent 24%,transparent 72%,rgba(20,38,38,.55))}.hero-copy{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;color:#f2ecdf}.hero-copy h1,.hero-copy h2{max-width:12ch}.hero-sub{max-width:46ch;margin:var(--sp-2) 0 var(--sp-3);font-size:var(--fs-300);font-weight:350;color:#f2ecdfeb}.hero-copy .btn{align-self:flex-start}.hero-end{opacity:0}.scroll-hint{position:absolute;left:50%;bottom:var(--sp-3);transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.25rem;color:#f2ecdfbf;font-size:.78rem;letter-spacing:.24em;text-transform:uppercase}.scroll-hint svg{width:18px;height:18px;animation:hint-bob 2.2s var(--ease-out) infinite}@keyframes hint-bob{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.section{padding:var(--sp-6) 0}.section-alt{background:var(--bg-alt)}.section-head{max-width:640px;margin-bottom:var(--sp-5)}.section-intro{color:var(--ink-dim);margin-top:var(--sp-2)}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-3)}.room-card{position:relative;border-radius:22px;overflow:hidden;background:var(--card-grad);border:1px solid var(--line);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .26s var(--ease-out),border-color .26s var(--ease-out)}.room-card:after{content:"";position:absolute;inset:auto 0 0 0;height:3px;opacity:0;background:linear-gradient(90deg,var(--accent-deep),var(--accent),transparent 80%);transition:opacity .26s var(--ease-out)}.room-card:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--accent) 55%,transparent)}.room-card:hover:after{opacity:1}.room-media{aspect-ratio:3 / 2;overflow:hidden}.room-media img{width:100%;height:100%;object-fit:cover}.room-body{padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-1)}.room-body>p:not(.room-spec){color:var(--ink-dim);font-size:1rem}.room-spec{font-size:.85rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.room-foot{margin-top:var(--sp-2);display:flex;flex-direction:column;gap:var(--sp-2)}.room-price{font-size:.9rem;color:var(--ink-dim)}.room-price .amount{font-family:var(--font-display);font-size:var(--fs-400);color:var(--ink);margin-right:.35rem}.room-foot .btn{align-self:flex-start}.split{display:grid;grid-template-columns:1.05fr 1fr;gap:var(--sp-5);align-items:center}.split-reverse .split-text{order:2}.split-reverse .split-media{order:1}.split-text p+p{margin-top:var(--sp-2)}.split-text h2{margin-bottom:var(--sp-2)}.split-text>p{color:var(--ink-dim)}.split-media{position:relative}.split-media .img-tall{width:82%;aspect-ratio:3 / 4;object-fit:cover;border-radius:20px;border:1px solid var(--line)}.split-media .img-float{position:absolute;right:0;bottom:-8%;width:52%;aspect-ratio:3 / 4;object-fit:cover;border-radius:16px;border:1px solid var(--line);box-shadow:0 24px 48px -16px #0a161673}.split-media .img-tall:only-child{width:100%}.check-list{margin-top:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-1)}.check-list li{position:relative;padding-left:1.7rem;color:var(--ink)}.check-list li:before{content:"";position:absolute;left:0;top:.62em;width:.85rem;height:2px;background:var(--accent);border-radius:2px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:260px;gap:var(--sp-2)}.gallery-grid figure{border-radius:18px;overflow:hidden;border:1px solid var(--line)}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease-out)}.gallery-grid figure:hover img{transform:scale(1.04)}.g-tall{grid-row:span 2}.g-wide{grid-column:span 2}.section-book{background:var(--bark);color:var(--linnen)}.section-book .eyebrow{color:var(--accent)}.book-panel{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--sp-5);align-items:start;max-width:980px;margin-inline:auto}.book-head p:not(.eyebrow){color:#ede6d6c7;margin-top:var(--sp-2)}.book-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-2)}.field{display:flex;flex-direction:column;gap:.35rem}.field label{font-size:.8rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ede6d6bf}.field input,.field select{padding:.7rem .9rem;border-radius:12px;border:1px solid rgba(237,230,214,.25);background:#ede6d612;color:var(--linnen);font:400 1rem var(--font-body)}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px}.field select option{color:#142626}.book-form .btn{grid-column:1 / -1;justify-self:start;margin-top:var(--sp-1)}.form-error{grid-column:1 / -1;color:#f0b8a0;font-size:.92rem}.book-confirm{grid-column:1 / -1;text-align:left}.confirm-icon{width:44px;height:44px;color:var(--accent);margin-bottom:var(--sp-2)}.book-confirm h3{margin-bottom:var(--sp-1)}.book-confirm p{color:#ede6d6d9}.confirm-note{margin:var(--sp-2) 0;font-size:.9rem;color:#ede6d699!important}.book-confirm .btn-ghost{color:var(--linnen);border-color:#ede6d659}.book-confirm .btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.site-footer{padding:var(--sp-5) 0 var(--sp-3);border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:var(--sp-4)}.footer-brand{font-size:var(--fs-400);margin-bottom:var(--sp-1)}.footer-tag,.footer-grid p{color:var(--ink-dim);font-size:.95rem}.footer-head{font-size:.8rem!important;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)!important;margin-bottom:var(--sp-1)}.footer-grid a:hover{color:var(--accent)}.footer-links{display:flex;flex-direction:column;gap:.3rem}.footer-base{margin-top:var(--sp-4);padding-top:var(--sp-2);border-top:1px solid var(--line)}.footer-base p{font-size:.85rem;color:var(--ink-dim)}.reveal{opacity:0;transform:translateY(28px)}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}@media(max-width:900px){.site-nav{display:none}.room-grid{grid-template-columns:1fr}.split{grid-template-columns:1fr;gap:var(--sp-4)}.split-reverse .split-text{order:1}.split-reverse .split-media{order:2}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:200px}.book-panel{grid-template-columns:1fr;gap:var(--sp-4)}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.wrap{width:calc(100% - 2 * var(--sp-2))}.header-inner{gap:.45rem}.brand{font-size:1.05rem}.lang-toggle,.theme-toggle{height:32px;min-width:32px;padding:0 .4rem}.nav-cta{padding:.42rem .7rem;font-size:.72rem;white-space:nowrap}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:220px}.g-wide{grid-column:span 1}.book-form{grid-template-columns:1fr}.hero-sub{font-size:var(--fs-200)}.footer-grid{grid-template-columns:1fr;gap:var(--sp-3)}.split-media .img-float{position:static;width:70%;margin:-18% 0 0 auto}}
