/* Luxe v208: premium guest theme. Loaded last; every rule is scoped to public pages. */
@font-face{font-family:"Cormorant Garamond";src:url("fonts/cormorant-garamond.woff2") format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url("fonts/cormorant-garamond-italic.woff2") format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:Manrope;src:url("fonts/manrope.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap}

/* Older stylesheets name these aliases directly; point them at the new faces. */
@font-face{font-family:"DM Sans";src:url("fonts/manrope.woff2") format("woff2");font-weight:100 500;font-style:normal;font-display:swap}
@font-face{font-family:"DM Sans";src:url("fonts/manrope.woff2") format("woff2");font-weight:600 900;font-style:normal;font-display:swap}
@font-face{font-family:"Outfit";src:url("fonts/manrope.woff2") format("woff2");font-weight:100 500;font-style:normal;font-display:swap}
@font-face{font-family:"Outfit";src:url("fonts/manrope.woff2") format("woff2");font-weight:600 900;font-style:normal;font-display:swap}
@font-face{font-family:"HutSans";src:url("fonts/manrope.woff2") format("woff2");font-weight:100 500;font-style:normal;font-display:swap}
@font-face{font-family:"HutSans";src:url("fonts/manrope.woff2") format("woff2");font-weight:600 900;font-style:normal;font-display:swap}
@font-face{font-family:"AlpineSans";src:url("fonts/manrope.woff2") format("woff2");font-weight:100 500;font-style:normal;font-display:swap}
@font-face{font-family:"AlpineSans";src:url("fonts/manrope.woff2") format("woff2");font-weight:600 900;font-style:normal;font-display:swap}
@font-face{font-family:"HutSerif";src:url("fonts/cormorant-garamond.woff2") format("woff2");font-weight:100 500;font-style:normal;font-display:swap}
@font-face{font-family:"HutSerif";src:url("fonts/cormorant-garamond.woff2") format("woff2");font-weight:600 900;font-style:normal;font-display:swap}
@font-face{font-family:"AlpineSerif";src:url("fonts/cormorant-garamond.woff2") format("woff2");font-weight:100 500;font-style:normal;font-display:swap}
@font-face{font-family:"AlpineSerif";src:url("fonts/cormorant-garamond.woff2") format("woff2");font-weight:600 900;font-style:normal;font-display:swap}
@font-face{font-family:"HutSerif";src:url("fonts/cormorant-garamond-italic.woff2") format("woff2");font-weight:100 500;font-style:italic;font-display:swap}
@font-face{font-family:"HutSerif";src:url("fonts/cormorant-garamond-italic.woff2") format("woff2");font-weight:600 900;font-style:italic;font-display:swap}
@font-face{font-family:"AlpineSerif";src:url("fonts/cormorant-garamond-italic.woff2") format("woff2");font-weight:100 500;font-style:italic;font-display:swap}
@font-face{font-family:"AlpineSerif";src:url("fonts/cormorant-garamond-italic.woff2") format("woff2");font-weight:600 900;font-style:italic;font-display:swap}

body.h199.h200{
  --lx-ivory:#f7f3ea;--lx-paper:#fffdf8;--lx-sand:#efe8da;--lx-ink:#15201b;--lx-forest:#0e2620;--lx-forest-2:#173c34;
  --lx-gold:#a8844c;--lx-gold-soft:#c9b28a;--lx-muted:#66665e;--lx-line:#e2dacb;
  --lx-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--lx-sans:Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;
  --h168-serif:var(--lx-serif);--h168-sans:var(--lx-sans);--h168-green:var(--lx-forest-2);--h168-paper:var(--lx-ivory);--h168-line:var(--lx-line);
  background:var(--lx-ivory);color:var(--lx-ink);font-family:var(--lx-sans);font-size:15px;line-height:1.75;letter-spacing:.003em;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"lnum" 1
}
body.h199.h200 :is(button,input,select,textarea){font-family:var(--lx-sans)}
body.h199.h200 :is(h1,h2,h3,.h168-brand strong){font-family:var(--lx-serif);font-weight:400;letter-spacing:-.01em;color:inherit}
body.h199.h200 :is(h1,h2) em,body.h199.h200 h3 em{font-style:italic;font-weight:400;color:var(--lx-gold)}
body.h199.h200 ::selection{background:var(--lx-gold-soft);color:var(--lx-forest)}
body.h199.h200 :is(a,button,input,select,textarea,summary):focus-visible{outline:2px solid var(--lx-gold);outline-offset:4px}

/* Eyebrows and section labels: small, tracked, champagne. */
body.h199.h200 :is(.h168-eyebrow,.h168-section-label,.pub-eyebrow,.r178-eyebrow){font-family:var(--lx-sans);font-size:11px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:var(--lx-gold)}
body.h199.h200 .h168-section-label{display:flex;align-items:center;gap:16px}
body.h199.h200 .h168-section-label::after{content:"";flex:0 0 64px;height:1px;background:var(--lx-gold-soft)}
body.h199.h200 .h168-number{width:auto;height:auto;border:0;border-radius:0;font-family:var(--lx-serif);font-size:15px;font-style:italic;letter-spacing:0;color:var(--lx-gold)}

/* Header: quiet, translucent, hairline. */
body.h199.h200 :is(.h168-header,.pub-header){background:color-mix(in srgb,var(--lx-ivory) 88%,transparent);backdrop-filter:saturate(1.2) blur(14px);-webkit-backdrop-filter:saturate(1.2) blur(14px);border-bottom:1px solid color-mix(in srgb,var(--lx-line) 70%,transparent);box-shadow:none}
body.h199.h200 .h168-header-inner{min-height:84px}
body.h199.h200 .h168-brand strong{font-size:24px;font-weight:500;letter-spacing:.01em;color:var(--lx-forest)}
body.h199.h200 .h168-brand small{font-family:var(--lx-sans);font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--lx-muted)}
body.h199.h200 :is(.h168-nav,.pub-nav){gap:36px}
body.h199.h200 :is(.h168-nav,.pub-nav) a{position:relative;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--lx-ink);text-decoration:none;border:0}
body.h199.h200 :is(.h168-nav,.pub-nav) a::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:1px;background:var(--lx-gold);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
body.h199.h200 :is(.h168-nav,.pub-nav) a:is(:hover,:focus-visible,[aria-current=page])::after{transform:scaleX(1)}
body.h199.h200 .sd147-language{background:transparent;border:1px solid var(--lx-line);border-radius:0;padding:2px}
body.h199.h200 .sd147-language button{font-size:11px;font-weight:600;letter-spacing:.14em;border-radius:0}
body.h199.h200 .sd147-language button[aria-pressed=true]{background:var(--lx-forest);color:var(--lx-ivory)}

/* Buttons: square, tracked capitals; gold on hover. */
body.h199.h200 :is(.h168-button,.r178-button,.pub-button,.ph-submit){display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:52px;padding:16px 30px;border-radius:0;border:1px solid transparent;font-family:var(--lx-sans);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;box-shadow:none;transition:background-color .3s ease,color .3s ease,border-color .3s ease}
body.h199.h200 :is(.h168-button-dark,.ph-submit){background:var(--lx-forest);color:var(--lx-ivory);border-color:var(--lx-forest)}
body.h199.h200 :is(.h168-button-dark,.ph-submit):hover{background:var(--lx-gold);border-color:var(--lx-gold);color:#fff}
body.h199.h200 .h168-button-light{background:var(--lx-ivory);color:var(--lx-forest);border-color:var(--lx-ivory)}
body.h199.h200 .h168-button-light:hover{background:transparent;color:var(--lx-ivory);border-color:var(--lx-ivory)}
body.h199.h200 .h168-header-actions .h168-button{min-height:46px;padding:12px 22px}
body.h199.h200 .h168-text-link{font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;border:0;border-bottom:1px solid currentColor;padding:6px 0;min-height:0;background:none}
body.h199.h200 .h168-text-link-light{color:var(--lx-ivory)}

/* Hero: full-bleed, cinematic, generous type. */
body.h199.h200 .h168-hero{height:calc(100svh - 84px);min-height:640px;max-height:980px;background:var(--lx-forest)}
body.h199.h200 .h168-hero-photo img{transform:scale(1.04);animation:lx-hero 14s ease-out forwards}
@keyframes lx-hero{to{transform:scale(1)}}
body.h199.h200 .h168-hero-shade{background:linear-gradient(180deg,#0e262033 0%,#0e262000 26%,#0e262059 58%,#0b1d18eb 100%),linear-gradient(90deg,#0b1d18e0 0%,#0b1d18a6 34%,#0b1d1800 70%)}
body.h199.h200 .h168-hero h1,body.h199.h200 .h168-hero-lead{text-shadow:0 2px 24px #0b1d1880}
body.h199.h200 .h168-hero-content{justify-content:flex-end;padding-top:0;padding-bottom:140px;height:100%}
body.h199.h200 .h168-hero h1{margin:28px 0 0;max-width:900px;font-size:clamp(46px,6.4vw,104px);font-weight:300;line-height:.98;letter-spacing:-.02em;color:var(--lx-ivory)}
body.h199.h200 .h168-hero h1 em{color:var(--lx-gold-soft);font-weight:300}
body.h199.h200 .h168-hero-lead{max-width:540px;margin-top:28px;font-size:16px;font-weight:400;line-height:1.85;color:#f7f3eaeb}
body.h199.h200 .h168-hero-actions{margin-top:40px;gap:28px;align-items:center}
body.h199.h200 .h168-eyebrow-light{color:var(--lx-gold-soft)}
body.h199.h200 .h168-eyebrow-light .h168-rule{background:var(--lx-gold-soft)}
body.h199.h200 .h168-hero-index{background:none;border:0;font-family:var(--lx-serif);font-style:italic;font-size:18px;letter-spacing:.08em;color:var(--lx-ivory);opacity:.85}
body.h199.h200 .h168-hero-bottom{font-size:10px;font-weight:600;letter-spacing:.26em;color:#f7f3eab3;border-top:1px solid #f7f3ea26;padding-top:22px}

/* Editorial sections: more air, larger serif headings. */
body.h199.h200 :is(.h168-story,.h168-journal){padding-block:clamp(88px,10vw,148px)}
body.h199.h200 :is(.h168-story-grid h2,.h168-journal-heading h2,.h168-stay-copy h2,.h168-then-heading h2,.h168-location h2){font-size:clamp(36px,4.2vw,64px);font-weight:300;line-height:1.04;letter-spacing:-.015em}
body.h199.h200 .h168-lead{font-family:var(--lx-serif);font-size:clamp(22px,2vw,28px);font-style:italic;font-weight:400;line-height:1.4;color:var(--lx-forest-2)}
body.h199.h200 .h168-prose p{color:var(--lx-muted)}
body.h199.h200 .h168-first-hut{background:var(--lx-paper);padding:clamp(24px,4vw,56px);border:1px solid var(--lx-line);margin-top:80px}
body.h199.h200 .h168-first-copy h3{font-size:clamp(32px,3.2vw,46px);font-weight:300;line-height:1.05}
body.h199.h200 .h168-first-copy .h168-eyebrow{color:var(--lx-gold)}
body.h199.h200 .h168-first-copy .h168-note{background:transparent;border-left:1px solid var(--lx-gold-soft);padding:4px 0 4px 20px;font-family:var(--lx-serif);font-size:18px;font-style:italic;color:var(--lx-forest-2)}

/* Photographs: no passe-partout; soft depth and a slow zoom on hover. */
body.h199.h200 :is(.h168-first-photo,.h168-journal-grid figure,.h168-time-photos figure)>a{display:block;overflow:hidden;padding:0;background:none;border:0;box-shadow:0 30px 60px -30px #0e262059}
body.h199.h200 :is(.h168-first-photo,.h168-journal-grid figure,.h168-time-photos figure) img{transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
body.h199.h200 :is(.h168-first-photo,.h168-journal-grid figure,.h168-time-photos figure)>a:hover img{transform:scale(1.035)}
body.h199.h200 .h168-photo-expand{border-radius:0;background:#0e2620b3;color:var(--lx-ivory)}
body.h199.h200 figcaption{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lx-muted)}
body.h199.h200 figcaption>span:first-child{font-family:var(--lx-serif);font-size:17px;font-style:italic;letter-spacing:0;text-transform:none;color:var(--lx-forest-2)}
body.h199.h200 .h168-journal-grid .h169-archive-feature{background:var(--lx-paper);border:1px solid var(--lx-line);padding:24px}
body.h199.h200 .h168-journal-grid figure>a{width:fit-content;max-width:100%;margin-inline:auto}
body.h199.h200 .h168-journal-grid figure img{width:auto;max-width:100%;background:none}
body.h199.h200 .h168-journal-grid figure{display:flex;flex-direction:column;justify-content:flex-end}

/* Then & now: deep forest band. */
body.h199.h200 .h168-then{background:var(--lx-forest);padding-block:clamp(88px,9vw,136px) 72px}
body.h199.h200 .h168-then :is(h2,p){color:var(--lx-ivory)}
body.h199.h200 .h168-then-heading p{color:#f7f3eab8}
body.h199.h200 .h168-section-label-light{color:var(--lx-gold-soft)}
body.h199.h200 .h168-tabs button{border-radius:0;background:transparent;border:1px solid #f7f3ea33;color:var(--lx-ivory);font-size:11px;letter-spacing:.2em;text-transform:uppercase}
body.h199.h200 .h168-tabs button[aria-selected=true]{background:var(--lx-gold);border-color:var(--lx-gold);color:#fff}
body.h199.h200 .h168-time-photos{background:transparent;border:0;padding:0}
body.h199.h200 .h168-time-photos figcaption>span:first-child{color:var(--lx-ivory)}
body.h199.h200 .h168-time-note{font-family:var(--lx-serif);font-style:italic;font-size:20px;color:var(--lx-gold-soft)}

/* Heritage timeline cards. */
body.h199.h200 .h174-history{background:var(--lx-paper);border:1px solid var(--lx-line);padding:clamp(28px,4vw,56px)}
body.h199.h200 .h174-timeline>li{background:var(--lx-ivory);border:1px solid var(--lx-line);border-radius:0;padding:24px 20px}
body.h199.h200 .h174-date{font-family:var(--lx-serif);font-size:26px;font-weight:400;color:var(--lx-gold)}
body.h199.h200 .h174-marker{background:var(--lx-gold-soft)}

/* Stay band. */
body.h199.h200 .h168-stay{background:var(--lx-sand);padding-block:clamp(88px,9vw,136px)}
body.h199.h200 .h168-stay-copy>p{color:var(--lx-muted);max-width:460px}
body.h199.h200 .h168-stay-details{background:var(--lx-paper);border:1px solid var(--lx-line);border-radius:0;padding:clamp(28px,3.4vw,48px);box-shadow:0 40px 80px -48px #0e262040}
body.h199.h200 .h168-rooms li{background:transparent;border:0;border-bottom:1px solid var(--lx-line);padding:18px 0;margin:0}
body.h199.h200 .h168-rooms li>span:first-child{font-family:var(--lx-serif);font-size:22px;color:var(--lx-forest)}
body.h199.h200 .h168-rooms li small{font-family:var(--lx-sans);font-size:12px;color:var(--lx-muted)}
body.h199.h200 .h168-rooms li>span:last-child{background:transparent;border:1px solid var(--lx-gold-soft);color:var(--lx-gold);font-size:11px;letter-spacing:.12em;border-radius:0}
body.h199.h200 .h168-booking-note{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--lx-muted)}
body.h199.h200 .amenities202-folding{background:var(--lx-ivory);border:0;border-left:2px solid var(--lx-gold);border-radius:0}
body.h199.h200 .h168-location{background:var(--lx-paper);border:1px solid var(--lx-line);border-radius:0;padding:clamp(28px,4vw,56px)}

/* Footer: dark, refined. */
body.h199.h200 :is(.h168-footer,.pub-footer){background:var(--lx-forest);color:#f7f3eacc;border-top:0;padding-top:clamp(64px,7vw,104px)}
body.h199.h200 .h168-footer .h168-brand img{filter:none}
body.h199.h200 .h168-footer .h168-brand strong{color:var(--lx-ivory);font-size:30px}
body.h199.h200 .h168-footer :is(small,.h168-footer-bottom,.h168-footer-bottom span){color:#f7f3ea99}
body.h199.h200 .h168-footer a{color:var(--lx-ivory)}
body.h199.h200 .h168-footer a:hover{color:var(--lx-gold-soft)}
body.h199.h200 .h168-footer nav a{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
body.h199.h200 .h168-footer-top{border-bottom:1px solid #f7f3ea1f;padding-bottom:48px}
body.h199.h200 .h168-footer-bottom{border-top:0;font-size:12px}
body.h199.h200 .h168-footer-bottom nav a,body.h199.h200 .h168-to-top{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#f7f3eab3}

/* Booking flow: paper cards, hairlines, serif prices. */
body.h199.h200.b170 .ph-intro{padding-block:56px 32px}
body.h199.h200.b170 .ph-intro h1{font-size:clamp(40px,4.6vw,72px);font-weight:300;line-height:1}
body.h199.h200.b170 .b170-dates{background:var(--lx-paper);border:1px solid var(--lx-line);border-radius:0;box-shadow:0 30px 70px -50px #0e262059}
body.h199.h200.b170 .b170-dates h2{font-weight:300}
body.h199.h200.b170 :is(input,select,textarea){border-radius:0;border:1px solid var(--lx-line);background:var(--lx-paper);min-height:52px;font-size:15px}
body.h199.h200.b170 :is(input,select,textarea):focus{border-color:var(--lx-gold);outline:0;box-shadow:0 0 0 3px #a8844c26}
body.h199.h200.b170 label{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--lx-muted)}
body.h199.h200.b170 .ph-room-card{background:var(--lx-paper);border:1px solid var(--lx-line);border-radius:0;padding:28px 32px;box-shadow:none;transition:border-color .3s ease,box-shadow .3s ease}
body.h199.h200.b170 .ph-room-card:hover{border-color:var(--lx-gold-soft);box-shadow:0 30px 60px -44px #0e262059}
body.h199.h200.b170 .ph-room-card.ph-room-selected{background:var(--lx-paper);border-color:var(--lx-gold);box-shadow:inset 3px 0 0 var(--lx-gold)}
body.h199.h200.b170 .ph-room-info h3{font-size:30px;font-weight:400;line-height:1.1}
body.h199.h200.b170 .ph-room-icon{border-radius:0;border-color:var(--lx-line);color:var(--lx-gold)}
body.h199.h200.b170 .ph-room-badges span{border-radius:0;background:transparent;border:1px solid var(--lx-line);font-size:11px;letter-spacing:.06em}
body.h199.h200.b170 .ph-room-price strong,body.h199.h200.b170 .ph-room-price b{font-family:var(--lx-serif);font-size:26px;font-weight:500;color:var(--lx-forest)}
body.h199.h200.b170 .ph-choose-link{font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--lx-forest);border-bottom:1px solid var(--lx-gold)}
body.h199.h200.b170 .ph-quantity button{border-radius:0;border-color:var(--lx-line);background:var(--lx-ivory)}
body.h199.h200.b170 .ph-quantity button:hover{background:var(--lx-forest);color:var(--lx-ivory)}
body.h199.h200.b170 :is(.ph-guest,.ph-review){background:var(--lx-paper);border:1px solid var(--lx-line);border-radius:0}
body.h199.h200.b170 .room192-gallery{background:transparent;padding:0;border-radius:0}
body.h199.h200 :is(.b170-sidebar,.ph-sidebar,aside)>*{border-radius:0}
body.h199.h200.b170 :is(.b204-help>*,.sd150-hut-info,.b204-help section,.b204-help article,.b204-help div[class]){border-radius:0;border-color:var(--lx-line);background:var(--lx-paper)}
body.h199.h200.b170 .b204-help :is(h2,h3,strong:first-child){font-family:var(--lx-serif);font-size:22px;font-weight:500;color:var(--lx-forest)}
body.h199.h200.b170 .b170-steps{border-color:var(--lx-line)}
body.h199.h200.b170 .b170-steps :is(span,b,i,em):first-child{border-radius:0;border-color:var(--lx-gold-soft);color:var(--lx-gold);font-variant-numeric:lining-nums}
body.h199.h200.b170 .ph-check-btn{border-radius:0;background:var(--lx-forest);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
body.h199.h200.b170 .ph-check-btn:hover{background:var(--lx-gold)}
body.h199.h200.b170 .ph-room-badges span:first-child,body.h199.h200.b170 [class*=room-type]{border-radius:0}
body.h199.h200 :is(h1,h2,h3,.ph-room-price,.h174-date,.h168-hero-index,.h168-number,.h168-rooms){font-variant-numeric:lining-nums proportional-nums}

@media (max-width:767px){
  body.h199.h200 .h168-header-actions .h168-button{display:none}
  body.h199.h200 .h168-hero{height:auto;min-height:calc(100svh - 76px)}
  body.h199.h200 .h168-hero-shade{background:linear-gradient(180deg,#0b1d1873 0%,#0b1d18a6 45%,#0b1d18f0 100%)}
  body.h199.h200 .h168-hero-content{padding-top:120px;padding-bottom:120px}
  body.h199.h200 .h168-hero h1{font-size:clamp(42px,12vw,56px);line-height:1.02}
  body.h199.h200 .h168-hero-lead{font-size:15px}
  body.h199.h200 .h168-brand strong{font-size:20px}
  body.h199.h200 .h168-first-hut{margin-top:48px}
  body.h199.h200.b170 .ph-room-card{padding:22px 20px}
}
@media (prefers-reduced-motion:reduce){
  body.h199.h200 .h168-hero-photo img{animation:none;transform:none}
  body.h199.h200 *{transition:none!important}
}
@media print{body.h199.h200 .h168-hero-photo img{animation:none;transform:none}}
