@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(assets/fonts/inter-latin-site.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/fraunces-400-site.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/fraunces-500-site.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:400;font-display:swap;src:url(assets/fonts/fraunces-italic-400-site.woff2)format("woff2")}:root{--ink:#171d1a;--ink-soft:#3a352f;--muted:#6b6357;--muted-soft:#8a8175;--paper:#e6e3d9;--paper-deep:#ddd3c5;--cream:#ddd3c5;--surface:#f1ede4;--surface-light:#f6f3ec;--sand:#aba092;--taupe:#aba092;--taupe-light:#c9bfaf;--taupe-deep:#7d715f;--line:#171d1a1a;--line-soft:#171d1a0f;--shadow-sm:0 6px 18px #3c342814;--shadow-md:0 18px 48px #3c34281f;--shadow-lg:0 34px 90px #3c34282e;--font-serif:"Fraunces", "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--gutter:clamp(20px, 5vw, 72px);--content-max:1240px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{color:var(--ink);font-family:var(--font-sans);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;font-weight:400;line-height:1.6;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit}:focus-visible{outline-offset:3px;outline:3px solid #7d715fa6}::selection{background:var(--taupe);color:#fff}h1,h2,h3,h4,p,ul,ol,blockquote,figure{margin-top:0}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:-.005em;color:var(--ink);font-weight:400}.js .reveal{opacity:0;will-change:opacity, transform;transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(24px)}.js .reveal.is-visible{opacity:1;will-change:auto;transform:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;color:#fff;background:var(--ink);padding:10px 14px;transition:transform .18s;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:25;min-height:84px;padding:14px var(--gutter);border-bottom:1px solid var(--line-soft);-webkit-backdrop-filter:blur(18px)saturate(1.1);background:#e6e3d9e0;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;transition:box-shadow .3s,background .3s;display:grid;position:sticky;top:0}.site-header.is-scrolled{background:#e6e3d9f5;box-shadow:0 12px 40px #3c342814}.brand img{width:clamp(150px,16vw,200px);height:auto}.nav{letter-spacing:.16em;text-transform:uppercase;justify-self:center;gap:clamp(20px,3.4vw,44px);font-size:.78rem;font-weight:600;display:flex}.nav a{color:var(--ink-soft);transition:color .22s;position:relative}.nav a:after{content:"";background:var(--taupe-deep);transform-origin:0;height:1px;transition:transform .32s;position:absolute;bottom:-6px;left:0;right:0;transform:scaleX(0)}.nav a:hover{color:var(--ink)}.nav a:hover:after{transform:scaleX(1)}.nav-toggle{border:1px solid var(--line);min-height:44px;color:var(--ink);font:inherit;letter-spacing:.12em;text-transform:uppercase;background:#ffffff9e;border-radius:999px;padding:0 14px;font-size:.76rem;font-weight:800;display:none}.button{color:#fff;background:linear-gradient(135deg, var(--taupe-light) 0%, var(--taupe) 50%, var(--taupe-deep) 100%);min-height:52px;font-family:var(--font-sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background-position:0 0;background-size:200% 100%;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0 28px;font-size:.82rem;font-weight:600;transition:background-position .5s,transform .22s,box-shadow .3s;display:inline-flex;box-shadow:0 14px 30px #5a4e3e47,inset 0 1px #ffffff38}.button:hover{background-position:100% 0;transform:translateY(-1px);box-shadow:0 20px 38px #5a4e3e52,inset 0 1px #ffffff47}.button:active{transform:translateY(0)}.button--small{letter-spacing:.12em;min-height:42px;padding:0 20px;font-size:.72rem}.button--ghost{color:var(--ink);box-shadow:none;background:#fff9;border:1px solid #171d1a2e}.button--ghost:hover{background:#ffffffe0;box-shadow:0 12px 28px #3c342814}.hero{isolation:isolate;color:#fff;background:var(--ink);align-items:end;min-height:min(760px,100vh - 84px);display:grid;position:relative;overflow:hidden}.hero__image{object-fit:cover;z-index:0;width:100%;height:100%;animation:18s ease-out forwards heroZoom;position:absolute;inset:0;transform:scale(1.02)}@keyframes heroZoom{0%{transform:scale(1.08)}to{transform:scale(1)}}.hero:before{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#171d1a75 0%,#171d1a38 34%,#171d1a0d 62%,#171d1a00 100%),linear-gradient(#171d1a00 0%,#171d1a1f 72%,#171d1a47 100%);position:absolute;inset:0}.hero__content{z-index:2;width:min(560px,92vw);padding:100px var(--gutter) 140px;text-shadow:0 3px 24px #0000009e;position:relative}.eyebrow{color:var(--taupe-light);font-family:var(--font-sans);letter-spacing:.22em;text-transform:uppercase;backdrop-filter:blur(6px);background:#171d1a47;border:1px solid #c9bfaf8c;border-radius:999px;margin:0 0 18px;padding:6px 14px;font-size:.72rem;font-weight:500;display:inline-block}.eyebrow--dark{color:var(--taupe-deep);background:#fff9;border-color:#7d715f59}.hero h1{color:#f6efe3;letter-spacing:-.01em;text-shadow:0 4px 28px #0000007a;margin:0 0 20px;font-size:clamp(2.15rem,4.3vw,4.2rem);font-weight:400;line-height:1.04}.hero h1 em{color:var(--taupe-light);font-style:italic;font-weight:400}.hero__lead{color:#fff8ee;max-width:460px;margin:0 0 30px;font-size:clamp(.98rem,1.1vw,1.08rem);font-weight:300;line-height:1.58}.hero__actions{flex-wrap:wrap;gap:14px;display:flex}.booking-strip{z-index:15;max-width:var(--content-max);box-shadow:var(--shadow-lg);background:#fff;border-radius:4px;grid-template-columns:minmax(200px,260px) 1fr;align-items:start;gap:10px clamp(14px,2vw,24px);margin:-56px auto 0;padding:18px 22px 14px;display:grid;position:sticky;top:84px}.booking-strip__intro strong{font-family:var(--font-serif);color:var(--ink);margin-bottom:6px;font-size:1.55rem;font-weight:500;display:block}.booking-strip__intro span{color:var(--muted);font-size:.92rem;line-height:1.5;display:block}.date-search{grid-template-columns:repeat(3,minmax(130px,1fr)) minmax(180px,auto);align-items:stretch;gap:10px;display:grid;position:relative}.date-search label{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;gap:4px;font-size:.66rem;font-weight:700;display:grid}.date-search input,.date-search select,.date-display{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);background:var(--surface-light);border-radius:3px;padding:0 14px;font-family:inherit;font-size:.95rem;font-weight:500;transition:border-color .2s,box-shadow .2s}.date-display{text-align:left;cursor:pointer;align-items:center;display:flex}.date-display.is-empty{color:var(--ink)}.date-search input:focus,.date-search select:focus,.date-display:focus{border-color:var(--taupe);outline:none;box-shadow:0 0 0 3px #aba0923d}.date-display.has-error{border-color:#9f4d3f;box-shadow:0 0 0 3px #9f4d3f29}.booking-error{color:#8d3328;grid-column:1/-1;margin:0;font-size:.84rem;font-weight:700;display:none}.has-booking-error .booking-error{display:block}.date-picker{z-index:40;width:min(390px,100%);box-shadow:var(--shadow-lg);background:#fff;border:1px solid #7d715f2e;border-radius:4px;padding:16px;position:absolute;top:calc(100% + 12px);left:0}.date-picker[hidden]{display:none}.date-picker__header,.date-picker__footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.date-picker__month{color:var(--ink);font-family:var(--font-serif);font-size:1.2rem;font-weight:500}.date-picker__nav{border:1px solid var(--line);color:var(--ink);background:var(--surface-light);font:inherit;cursor:pointer;border-radius:3px;width:36px;height:36px;font-weight:700}.date-picker__hint{color:var(--muted);font-size:.84rem}.date-picker__weekdays,.date-picker__grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.date-picker__weekdays{color:var(--muted-soft);letter-spacing:.1em;text-align:center;text-transform:uppercase;margin:14px 0 6px;font-size:.64rem;font-weight:700}.date-picker__day{min-height:38px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:3px;font-size:.86rem}.date-picker__day:hover{background:var(--surface)}.date-picker__day.is-muted{color:#171d1a47;cursor:default}.date-picker__day.is-muted:hover{background:0 0}.date-picker__day.is-in-range{background:#aba0922e}.date-picker__day.is-selected{color:#fff;background:var(--taupe-deep)}.date-picker__footer{margin-top:14px}.booking-strip .button{border-radius:3px;min-height:42px;padding-inline:22px;box-shadow:0 10px 22px #5a4e3e38}.booking-essentials{border-top:1px solid var(--line-soft);grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding-top:10px;display:grid}.booking-essentials span{color:var(--muted);gap:2px;font-size:.72rem;line-height:1.25;display:grid}.booking-essentials strong{color:var(--ink);letter-spacing:.14em;text-transform:uppercase;font-size:.62rem;font-weight:800}.booking-essentials--compact{border:1px solid var(--line-soft);background:#f6f3ecc7;border-radius:4px;grid-template-columns:1fr;margin-top:14px;padding:14px}.editorial-split{background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);min-height:620px;margin-top:100px;display:grid}.editorial-split--reverse{background:var(--cream);grid-template-columns:minmax(360px,.82fr) minmax(0,1fr)}.editorial-split img{object-fit:cover;width:100%;height:100%;min-height:520px}.editorial-split--reverse img{order:2}.editorial-split__content{align-content:center;padding:clamp(48px,7vw,100px);display:grid}.editorial-split h2{margin:12px 0 22px;font-size:clamp(2.6rem,4.6vw,4.6rem);font-weight:400;line-height:1.02}.editorial-split h2 em{color:var(--taupe-deep);font-style:italic;font-weight:400}.editorial-split__content>p{color:var(--muted);max-width:44ch;font-size:1.08rem;line-height:1.75}.section{padding:clamp(80px, 9vw, 130px) var(--gutter)}.section__intro{text-align:center;max-width:720px;margin:0 auto 48px}.section__intro h2{margin:12px 0 18px;font-size:clamp(2.4rem,4.4vw,4.4rem);font-weight:400;line-height:1.04}.section__intro h2 em{color:var(--taupe-deep);font-style:italic;font-weight:400}.section__intro p{color:var(--muted);font-size:1.05rem;line-height:1.7}.residences{color:var(--ink);background:var(--paper-deep);position:relative}.room-grid{max-width:var(--content-max);grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:0 auto;display:grid}.room-card{box-shadow:var(--shadow-sm);background:#fff;border-radius:4px;grid-template-rows:300px 1fr;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s;display:grid;position:relative;overflow:hidden}.room-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-6px)}.room-card__media{position:relative;overflow:hidden}.room-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .9s cubic-bezier(.2,.7,.2,1)}.room-card__image--lift{filter:brightness(1.16)saturate(1.05)contrast(.96)}.room-card:hover .room-card__media img{transform:scale(1.05)}.room-card__badge{color:var(--taupe-deep);letter-spacing:.16em;text-transform:uppercase;background:#fffffff0;border-radius:999px;padding:6px 14px;font-size:.66rem;font-weight:700;position:absolute;top:18px;left:18px;box-shadow:0 6px 18px #00000024}.room-card__badge--gold{background:linear-gradient(135deg, var(--taupe-light), var(--taupe));color:#fff}.room-card__body{padding:30px 28px 28px;display:grid}.room-card__tag{color:var(--taupe-deep);letter-spacing:.16em;text-transform:uppercase;margin:0 0 10px;font-size:.68rem;font-weight:700}.room-card h3{margin:0 0 14px;font-size:1.75rem;font-weight:400;line-height:1.15}.room-card p{color:var(--muted);margin:0 0 20px;font-size:.98rem;line-height:1.65}.room-card__meta{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);color:var(--muted);letter-spacing:.04em;gap:18px;margin-bottom:22px;padding:14px 0;font-size:.78rem;font-weight:500;display:flex}.room-card__meta strong{color:var(--ink);margin-bottom:2px;font-size:.9rem;font-weight:600;display:block}.room-card__cta{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;display:flex}.room-card__price{color:var(--muted);letter-spacing:.06em;font-size:.78rem;font-weight:500}.room-card__price strong{color:var(--ink);font-family:var(--font-serif);font-size:1.35rem;font-weight:500;display:block}.room-card__link{color:#fff;background:linear-gradient(135deg, var(--taupe-light), var(--taupe) 60%, var(--taupe-deep));letter-spacing:.14em;text-transform:uppercase;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:0 22px;font-size:.74rem;font-weight:600;transition:transform .22s,box-shadow .3s;display:inline-flex;box-shadow:0 10px 20px #5a4e3e3d}.room-card__link:hover{transform:translateY(-1px);box-shadow:0 14px 28px #5a4e3e52}.room-card--featured{transform:scale(1.02)}.room-card--featured:hover{transform:scale(1.02)translateY(-6px)}.room-card--featured:after{content:"";pointer-events:none;border:1px solid #7d715f59;border-radius:4px;position:absolute;inset:0}.comparison-section{padding-top:20px}.comparison-table{max-width:var(--content-max);border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:4px;margin:0 auto;overflow-x:auto}.comparison-table table{border-collapse:collapse;width:100%;min-width:860px}.comparison-table th,.comparison-table td{border-bottom:1px solid var(--line-soft);color:var(--muted);text-align:left;padding:18px 20px;font-size:.9rem;line-height:1.45}.comparison-table thead th{color:var(--taupe-deep);font-size:.68rem;font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;font-weight:800}.comparison-table tbody th{color:var(--ink);font-family:var(--font-serif);font-size:1.08rem;font-weight:500}.comparison-table tr:last-child th,.comparison-table tr:last-child td{border-bottom:0}.comparison-table a{border:1px solid var(--line);min-height:38px;color:var(--ink);letter-spacing:.12em;text-transform:uppercase;border-radius:3px;justify-content:center;align-items:center;padding:0 16px;font-size:.72rem;font-weight:800;transition:background .18s,border-color .18s;display:inline-flex}.comparison-table a:hover{border-color:var(--taupe);background:var(--surface-light)}.direct-section{text-align:center;padding:clamp(80px, 9vw, 130px) var(--gutter);color:#f1ede4;background:linear-gradient(135deg,#171d1ae6,#3a352fcc),image-set("assets/styleguide/styleguide-p10-01-1600.avif" 1x type("image/avif"),"assets/styleguide/styleguide-p10-01-1600.webp" 1x type("image/webp"),"assets/styleguide/styleguide-p10-01.jpeg" 1x type("image/jpeg")) 50%/cover;justify-items:center;display:grid}.direct-section h2{color:#fff;margin:12px 0 20px;font-size:clamp(2.4rem,4.4vw,4.2rem);line-height:1.04}.direct-section h2 em{color:var(--taupe-light);font-style:italic;font-weight:400}.direct-section>div>p{color:#f1ede4d1;max-width:48ch;margin-left:auto;margin-right:auto;font-size:1.08rem;line-height:1.75}.direct-benefits{text-align:left;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;width:min(1120px,100%);margin:34px auto 0;padding:0;list-style:none;display:grid}.direct-benefits li{color:#f1ede4e6;background:#ffffff14;border:1px solid #f1ede429;border-radius:4px;min-height:116px;padding:22px 20px 22px 42px;font-weight:600;line-height:1.45;position:relative}.direct-benefits li:before{content:"";background:var(--gold);border-radius:999px;width:8px;height:8px;position:absolute;top:28px;left:20px}.reviews{background:var(--paper)}.reviews__badge{border:1px solid var(--line);box-shadow:var(--shadow-sm);color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:12px;margin:14px auto 0;padding:10px 22px;font-size:.86rem;font-weight:600;display:inline-flex}.reviews__badge strong{color:var(--taupe-deep)}.reviews__badge-stars{color:#fbbc04;letter-spacing:.06em;text-shadow:0 1px #55442224;font-size:.92rem;line-height:1}.google-word{font-weight:700}.google-word span:first-child,.google-word span:nth-child(4){color:#4285f4}.google-word span:nth-child(2),.google-word span:nth-child(6){color:#db4437}.google-word span:nth-child(3){color:#f4b400}.google-word span:nth-child(5){color:#0f9d58}.review-grid{max-width:var(--content-max);grid-template-columns:repeat(3,1fr);gap:24px;margin:0 auto;display:grid}blockquote{box-shadow:var(--shadow-sm);background:#fff;border-radius:4px;align-content:start;gap:16px;margin:0;padding:34px 30px;transition:transform .3s,box-shadow .3s;display:grid}blockquote:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}blockquote p{color:var(--ink);font-family:var(--font-serif);margin:0;font-size:1.32rem;font-weight:400;line-height:1.4}.review-stars{color:#fbbc04;letter-spacing:.08em;text-shadow:0 1px #55442224;font-size:1.08rem;line-height:1}cite{color:var(--muted);gap:4px;font-size:.92rem;font-style:normal;font-weight:600;display:grid}cite span{color:var(--muted-soft);letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:500}.location{padding:clamp(80px, 9vw, 130px) var(--gutter);background:linear-gradient(90deg,#e6e3d9f5 0%,#ddd3c5db 100%),image-set("assets/balcony-860.avif" 1x type("image/avif"),"assets/balcony-860.webp" 1x type("image/webp"),"assets/balcony.avif" 1x type("image/avif")) 50%/cover;grid-template-columns:minmax(0,1fr) minmax(320px,480px);align-items:center;gap:clamp(40px,6vw,90px);display:grid}.location h2{margin:12px 0 20px;font-size:clamp(2.4rem,4.4vw,4.4rem);font-weight:400;line-height:1.04}.location h2 em{color:var(--taupe-deep);font-style:italic;font-weight:400}.location>div>p{color:var(--muted);max-width:46ch;font-size:1.05rem;line-height:1.7}.location__highlights{grid-template-columns:repeat(2,1fr);gap:10px 22px;margin:24px 0 0;padding:0;list-style:none;display:grid}.location__highlights li{color:var(--ink-soft);padding-left:20px;font-size:.94rem;font-weight:500;position:relative}.location__highlights li:before{content:"";background:var(--taupe-deep);border-radius:50%;width:8px;height:8px;position:absolute;top:.55em;left:0}.location-card{color:var(--ink);box-shadow:var(--shadow-lg);background:#fff;border-radius:4px;gap:8px;padding:36px;display:grid}.location-card__eyebrow{color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-size:.68rem;font-weight:700}.location-card strong{font-family:var(--font-serif);font-size:1.8rem;font-weight:500;line-height:1.1}.location-card span{color:var(--muted)}.location-card__link{color:var(--taupe-deep);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:8px;margin-top:14px;font-size:.78rem;font-weight:700;display:inline-flex}.location-card__link:after{content:"→";transition:transform .22s}.location-card__link:hover:after{transform:translate(4px)}.arrival-section{padding:80px var(--gutter);background:var(--surface-light)}.arrival-section .section__intro{margin-bottom:34px}.arrival-grid{max-width:var(--content-max);grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 auto;display:grid}.arrival-grid article{border:1px solid var(--line);box-shadow:var(--shadow-sm);background:#fff;border-radius:4px;padding:24px}.arrival-grid strong{color:var(--ink);font-family:var(--font-serif);margin-bottom:8px;font-size:1.22rem;font-weight:500;display:block}.arrival-grid p{color:var(--muted);margin:0;font-size:.96rem;line-height:1.65}.property-gallery{background:var(--surface)}.room-gallery{max-width:var(--content-max);grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:260px;gap:16px;margin:0 auto;display:grid}.room-gallery img{object-fit:cover;cursor:zoom-in;border-radius:4px;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.room-gallery img:hover{transform:scale(1.02)}.room-gallery img:first-child{grid-area:span 2/span 2}.room-gallery img:nth-child(4){grid-column:span 2}.gallery-lightbox{z-index:80;opacity:0;visibility:hidden;pointer-events:none;background:#171d1ae6;grid-template-rows:1fr auto;grid-template-columns:76px minmax(0,1fr) 76px;align-items:center;gap:16px;padding:34px;transition:opacity .22s,visibility .22s;display:grid;position:fixed;inset:0}.gallery-lightbox.is-open{opacity:1;visibility:visible;pointer-events:auto}.gallery-lightbox__figure{grid-area:1/2;justify-items:center;gap:14px;width:100%;min-width:0;display:grid}.gallery-lightbox__image{object-fit:contain;border-radius:4px;max-width:100%;max-height:min(76vh,760px);box-shadow:0 28px 80px #00000061}.gallery-lightbox__caption{color:#f6efe3db;text-align:center;max-width:760px;margin:0;font-size:.92rem}.gallery-lightbox__close,.gallery-lightbox__nav{color:#fff8ee;backdrop-filter:blur(8px);cursor:pointer;background:#ffffff14;border:1px solid #f6efe342;border-radius:999px;transition:background .18s,transform .18s}.gallery-lightbox__close:hover,.gallery-lightbox__nav:hover{background:#ffffff29;transform:translateY(-1px)}.gallery-lightbox__close{width:46px;height:46px;font-size:1.5rem;line-height:1;position:absolute;top:22px;right:22px}.gallery-lightbox__nav{width:54px;height:54px;font-size:2rem;line-height:1}.gallery-lightbox__nav--prev{grid-column:1;justify-self:center}.gallery-lightbox__nav--next{grid-column:3;justify-self:center}.gallery-lightbox__count{color:#f6efe3b8;letter-spacing:.16em;text-align:center;text-transform:uppercase;grid-area:2/2;font-size:.78rem;font-weight:700}body.gallery-is-open{overflow:hidden}.faq-section{background:var(--paper)}.faq-grid{max-width:var(--content-max);grid-template-columns:repeat(3,1fr);gap:22px;margin:0 auto;display:grid}.faq-grid article{box-shadow:var(--shadow-sm);background:#fff;border-radius:4px;padding:32px 30px}.faq-grid h3{margin:0 0 14px;font-size:1.35rem;font-weight:500;line-height:1.15}.faq-grid p{color:var(--muted);margin:0;font-size:.98rem;line-height:1.65}.final-cta{padding:clamp(90px, 10vw, 160px) var(--gutter);color:#fff;text-align:center;isolation:isolate;position:relative;overflow:hidden}.final-cta__image{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.final-cta:before{content:"";z-index:-1;background:linear-gradient(#171d1abd,#171d1ae6);position:absolute;inset:0}.final-cta__inner{max-width:720px;margin:0 auto}.final-cta h2{color:#fff;margin:18px 0 22px;font-size:clamp(2.6rem,5vw,5rem);font-weight:400;line-height:1.02}.final-cta h2 em{color:var(--taupe-light);font-style:italic;font-weight:400}.final-cta p{color:#ffffffd1;max-width:560px;margin:0 auto 32px;font-size:1.1rem;line-height:1.7}.final-cta .hero__actions{justify-content:center}.guarantee-grid{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:34px;display:grid}.guarantee-grid article{backdrop-filter:blur(12px);background:#ffffff14;border:1px solid #ffffff29;border-radius:4px;padding:22px}.guarantee-grid strong,.guarantee-grid span{display:block}.guarantee-grid strong{color:#fff;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;font-size:.78rem}.guarantee-grid span{color:#ffffffd1;line-height:1.55}.guarantee-grid a{color:#fff;font-weight:700}.site-footer{padding:60px var(--gutter) 40px;background:var(--ink);color:#f1ede4d1}.site-footer__inner{max-width:var(--content-max);grid-template-columns:1.4fr repeat(3,1fr);gap:48px;margin:0 auto;display:grid}.site-footer h4{color:var(--taupe-light);font-family:var(--font-sans);letter-spacing:.18em;text-transform:uppercase;margin:0 0 18px;font-size:.74rem;font-weight:700}.site-footer__brand strong{color:#fff;font-family:var(--font-serif);letter-spacing:.02em;margin-bottom:12px;font-size:1.6rem;font-weight:500;display:block}.site-footer__brand p{color:#f1ede4ad;margin:0;font-size:.94rem;line-height:1.6}.site-footer ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:#f1ede4d1;font-size:.94rem;transition:color .2s}.site-footer a:hover{color:var(--taupe-light)}.footer-button{color:#f1ede4d1;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:.94rem}.footer-button:hover{color:var(--taupe-light)}.site-footer__base{max-width:var(--content-max);color:#f1ede499;border-top:1px solid #f1ede41f;flex-wrap:wrap;justify-content:space-between;gap:16px;margin:40px auto 0;padding-top:28px;font-size:.82rem;display:flex}.site-footer__social{gap:16px;display:flex}.legal-page{padding:clamp(80px, 10vw, 130px) var(--gutter);background:var(--surface)}.legal-page__inner{max-width:880px;margin:0 auto}.legal-page h1{margin:12px 0 20px;font-size:clamp(2.6rem,5vw,4.8rem);line-height:1.02}.legal-page h2{margin:42px 0 12px;font-size:clamp(1.5rem,2.6vw,2.2rem)}.legal-page p,.legal-page li{color:var(--muted);font-size:1rem;line-height:1.75}.legal-page ul{gap:8px;padding-left:22px;display:grid}.legal-page a{color:var(--taupe-deep);text-underline-offset:3px;font-weight:700;text-decoration:underline}.legal-note{border:1px solid var(--line);background:#ffffff75;margin:28px 0;padding:18px}.cookie-banner{z-index:80;max-width:880px;box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(18px);background:#f6f3ecf5;border:1px solid #7d715f38;border-radius:4px;grid-template-columns:1fr auto;align-items:center;gap:18px;margin:0 auto;padding:18px;display:grid;position:fixed;bottom:20px;left:20px;right:20px}.cookie-banner p{color:var(--ink-soft);margin:0;font-size:.92rem;line-height:1.55}.cookie-banner__custom{color:var(--ink-soft);gap:8px;margin-top:12px;font-size:.9rem;display:grid}.cookie-banner__custom[hidden]{display:none}.cookie-banner__custom label{align-items:center;gap:8px;display:flex}.cookie-banner__custom a{color:var(--taupe-deep);text-underline-offset:3px;font-weight:800;text-decoration:underline}.cookie-banner__actions{gap:10px;display:flex}.cookie-banner__button{border:1px solid var(--taupe-deep);color:#fff;background:var(--taupe-deep);min-height:42px;font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:3px;padding:0 18px;font-size:.72rem;font-weight:800}.cookie-banner__button--ghost{color:var(--ink);background:0 0}.mobile-cta{z-index:40;padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(18px);border-top:1px solid var(--line);background:#e6e3d9f5;gap:10px;transition:transform .4s cubic-bezier(.2,.7,.2,1);display:none;position:fixed;bottom:0;left:0;right:0;transform:translateY(120%);box-shadow:0 -14px 40px #3c342824}.mobile-cta.is-visible{transform:translateY(0)}.mobile-cta a{letter-spacing:.1em;text-transform:uppercase;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:8px;min-height:50px;font-size:.82rem;font-weight:600;display:inline-flex}.mobile-cta__book{color:#fff;background:linear-gradient(135deg, var(--taupe-light), var(--taupe) 60%, var(--taupe-deep));box-shadow:0 10px 22px #5a4e3e47}.mobile-cta__email{color:var(--ink);border:1px solid var(--line);background:#fff}.room-hero{background:var(--cream);grid-template-columns:minmax(0,1.15fr) minmax(360px,540px);min-height:calc(100vh - 84px);display:grid}.room-hero__media{min-height:520px;position:relative;overflow:hidden}.room-hero__media img{object-fit:cover;width:100%;height:100%}.room-hero__content{background:linear-gradient(180deg, var(--surface-light), var(--cream));align-content:center;padding:clamp(48px,6vw,90px);display:grid}.room-hero__content .eyebrow{color:var(--taupe-deep);background:#fff9;border-color:#7d715f59}.room-hero__content h1{margin:14px 0 18px;font-size:clamp(2.6rem,4.6vw,4.6rem);font-weight:400;line-height:1.03}.room-hero__content h1 em{color:var(--taupe-deep);font-style:italic;font-weight:400}.room-hero__content>p{color:var(--muted);font-size:1.08rem;line-height:1.7}.room-hero__specs{border-top:1px solid var(--line);flex-wrap:wrap;gap:22px;margin:22px 0 0;padding:20px 0 0;display:flex}.room-hero__specs div strong{font-family:var(--font-serif);color:var(--ink);font-size:1.35rem;font-weight:500;line-height:1.1;display:block}.room-hero__specs div span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:500}.room-booking-card{box-shadow:var(--shadow-lg);background:#fff;border-radius:4px;margin-top:28px;padding:26px}.room-booking-card__price{color:var(--ink);font-family:var(--font-serif);margin:0 0 18px;font-size:1.2rem;line-height:1.2}.room-booking-card .date-search{grid-template-columns:1fr;gap:10px}.room-booking-card .button{width:100%}.room-details{padding:clamp(72px, 9vw, 120px) var(--gutter);background:var(--surface);grid-template-columns:minmax(0,1fr) minmax(300px,400px);gap:clamp(32px,6vw,80px);display:grid}.room-details h2{margin:12px 0 20px;font-size:clamp(2.2rem,4vw,3.8rem);font-weight:400;line-height:1.04}.room-details h2 em{color:var(--taupe-deep);font-style:italic;font-weight:400}.room-details p{color:var(--muted);font-size:1.05rem;line-height:1.7}.amenity-list,.spec-list{gap:0;margin:26px 0 0;padding:0;list-style:none;display:grid}.amenity-list li,.spec-list li{border-bottom:1px solid var(--line-soft);color:var(--ink-soft);padding:14px 0;font-size:.96rem;font-weight:500}.amenity-list li:before{content:"✓";color:var(--taupe-deep);margin-right:14px;font-weight:700}.spec-card{box-shadow:var(--shadow-md);background:#fff;border-radius:4px;align-self:start;padding:34px 30px}.spec-card h3{margin:0 0 8px;font-size:1.6rem;font-weight:500}.spec-card p{color:var(--muted);margin:0 0 8px;font-size:.95rem}.spec-list li:last-child{border-bottom:0}@media (width<=980px){.site-header{grid-template-columns:1fr auto auto;gap:16px;min-height:72px}.nav-toggle{justify-content:center;align-items:center;display:inline-flex}.nav{z-index:50;border:1px solid var(--line);box-shadow:var(--shadow-lg);background:#f6f3ecfa;grid-template-columns:1fr;gap:0;padding:12px;display:none;position:fixed;top:72px;left:16px;right:16px}.nav.is-open{display:grid}.nav a{align-items:center;min-height:48px;padding:0 10px;display:flex}.nav a:after{display:none}.booking-strip,.location,.room-hero,.room-details,.editorial-split,.editorial-split--reverse{grid-template-columns:1fr}.editorial-split--reverse img{order:0}.booking-strip{max-width:none;margin:-40px var(--gutter) 0;padding:18px 18px 14px;top:72px}.booking-strip .date-search{grid-template-columns:1fr 1fr}.booking-strip .button{grid-column:span 2}.room-grid,.review-grid,.direct-benefits,.faq-grid{grid-template-columns:1fr 1fr;gap:20px}.room-card{grid-template-rows:260px 1fr}.room-card--featured{transform:none}.room-card--featured:hover{transform:translateY(-6px)}.room-gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:220px}.room-gallery img:first-child,.room-gallery img:nth-child(4){grid-area:auto}.room-gallery img:first-child{grid-column:span 2}.site-footer__inner{grid-template-columns:1fr 1fr}.mobile-cta{display:flex}}@media (width<=640px){.brand img{width:140px}.site-header>.button{display:none}.hero{min-height:620px}.hero__content{padding:60px var(--gutter) 100px}.hero h1{font-size:clamp(1.9rem,8.4vw,2.3rem)}.hero__lead{font-size:.9rem;line-height:1.48}.booking-strip{margin:-30px 16px 0;padding:16px 16px 12px;position:relative;top:auto}.booking-strip__intro strong{font-size:1.3rem}.booking-strip .date-search{grid-template-columns:1fr}.booking-strip .date-search .button{grid-column:auto}.booking-essentials{grid-template-columns:1fr}.comparison-section{padding-top:10px}.comparison-table th,.comparison-table td{padding:16px}.editorial-split{min-height:unset;margin-top:60px}.editorial-split img{min-height:300px;max-height:380px}.room-grid,.review-grid,.direct-benefits,.guarantee-grid,.faq-grid{grid-template-columns:1fr}.section{padding:70px var(--gutter)}.section__intro{margin-bottom:36px}.direct-section,.location{padding:70px var(--gutter)}.location__highlights{grid-template-columns:1fr}.arrival-section{padding:70px var(--gutter)}.arrival-grid{grid-template-columns:1fr}.room-gallery{grid-template-columns:1fr;grid-auto-rows:240px}.room-gallery img:first-child{grid-column:auto}.gallery-lightbox{background:#171d1af5;grid-template-rows:1fr auto auto;grid-template-columns:1fr;align-content:center;gap:12px;padding:64px 16px 22px}.gallery-lightbox__figure{grid-column:1;justify-self:center;width:min(100%,100vw - 32px)}.gallery-lightbox__image{width:100%;max-height:68vh}.gallery-lightbox__nav{width:48px;height:48px;position:absolute;bottom:52px}.gallery-lightbox__nav--prev{left:calc(50% - 58px)}.gallery-lightbox__nav--next{right:calc(50% - 58px)}.gallery-lightbox__count{grid-area:3/1/auto/-1}.site-footer__inner{grid-template-columns:1fr;gap:32px}.cookie-banner{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));grid-template-columns:1fr}.cookie-banner__actions{justify-content:stretch}.cookie-banner__button{flex:1}.room-hero{min-height:unset}.room-hero__media{min-height:360px}.room-hero__content{padding:40px 22px}.room-hero__specs{gap:16px}.room-details h2{font-size:2.1rem}}@media (prefers-reduced-motion:reduce){.hero__image{animation:none}.js .reveal{opacity:1;transition:none;transform:none}*{transition-duration:.001ms!important;animation-duration:.001ms!important}}