:root{--bg:#FAFAF7;--bg-alt:#F1EBDF;--ink:#111111;--ink-soft:#3A3A38;--muted:#7A7872;--rule:#E5E1D8;--accent:#B08D57;--accent-dark:#8A6B3E;--dark:#0A0A0A;--dark-2:#161614;--white:#FFFFFF;--serif:"Fraunces","Cormorant Garamond",Georgia,serif;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Helvetica Neue",sans-serif;--container:1280px;--gutter:clamp(20px,4vw,48px);--tr:0.5s cubic-bezier(.19,1,.22,1)}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--sans);font-size:16px;line-height:1.6;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:normal}img{max-width:100%;display:block}a{color:inherit;text-decoration:none;transition:color var(--tr),opacity var(--tr)}a:hover{color:var(--accent)}::selection{background:var(--accent);color:var(--white)}h1,h2,h3,h4{font-family:var(--serif);font-weight:300;color:var(--ink);letter-spacing:-0.02em;margin:0 0 0.5em;font-variation-settings:"SOFT" 30,"WONK" 0,"opsz" 100}h1{font-size:clamp(2.6rem,5.2vw,4.8rem);line-height:1.02}h2{font-size:clamp(2.1rem,3.6vw,3.4rem);line-height:1.08}h3{font-size:clamp(1.4rem,2vw,1.8rem);line-height:1.2;font-weight:400}p{margin:0 0 1rem;color:var(--ink-soft)}strong{font-weight:500}.eyebrow{font-family:var(--sans);font-size:0.7rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--muted);font-weight:500;display:inline-flex;align-items:center;gap:14px}.eyebrow::before{content:"";display:inline-block;width:32px;height:1px;background:var(--accent)}.section-num{font-family:var(--sans);font-size:0.7rem;letter-spacing:0.3em;color:var(--muted);font-weight:500;margin-bottom:20px;display:block}.container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter)}.section{padding:clamp(80px,10vw,150px) 0}.section--tight{padding:clamp(50px,7vw,90px) 0}.section--dark{background:var(--dark);color:var(--bg)}.section--dark p,.section--dark .eyebrow{color:rgba(255,255,255,0.72)}.section--dark h1,.section--dark h2,.section--dark h3{color:var(--bg)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,100px);align-items:center}@media (max-width:820px){.two-col{grid-template-columns:1fr}}.nav{position:sticky;top:0;z-index:100;padding:20px var(--gutter);display:flex;align-items:center;justify-content:space-between;transition:padding var(--tr),box-shadow var(--tr),background var(--tr);background:rgba(250,250,247,0.9);color:var(--ink);border-bottom:1px solid rgba(10,10,10,0.06);backdrop-filter:saturate(1.6) blur(14px);-webkit-backdrop-filter:saturate(1.6) blur(14px)}.nav--scrolled{padding:12px var(--gutter);background:rgba(250,250,247,0.95);box-shadow:0 1px 0 var(--rule),0 6px 14px -10px rgba(0,0,0,0.12)}.nav--solid{position:sticky;background:var(--bg);color:var(--ink);box-shadow:0 1px 0 var(--rule)}.nav__brand{font-family:var(--serif);font-size:1.3rem;font-weight:400;letter-spacing:0.02em;font-variation-settings:"opsz" 60;display:flex;align-items:center}.nav__brand em{font-style:italic;font-weight:300}.nav__logo{display:block;height:32px;width:auto;transition:filter var(--tr)}@media (max-width:800px){.nav__logo{height:26px}}.nav__links{display:flex;gap:36px;list-style:none;margin:0;padding:0;font-size:0.74rem;letter-spacing:0.22em;text-transform:uppercase;font-weight:500}.nav__links a{opacity:0.88}.nav__links a:hover,.nav__links a.is-active{opacity:1;color:var(--accent)}.nav__cta{display:inline-block;padding:11px 26px;background:var(--accent);border:1px solid var(--accent);color:var(--white)!important;font-size:0.7rem;letter-spacing:0.22em;text-transform:uppercase;font-weight:500;transition:background var(--tr),border-color var(--tr)}.nav__cta:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.nav__toggle{display:none;background:none;border:0;cursor:pointer;width:28px;height:22px;padding:0;position:relative;color:inherit}.nav__toggle span{position:absolute;left:0;right:0;height:1px;background:currentColor;transition:transform var(--tr),top var(--tr),opacity var(--tr)}.nav__toggle span:nth-child(1){top:3px}.nav__toggle span:nth-child(2){top:11px}.nav__toggle span:nth-child(3){top:19px}@media (max-width:980px){.nav__links,.nav__cta{display:none}.nav__toggle{display:block}.nav.is-open{background:var(--bg);color:var(--ink);flex-wrap:wrap;padding-bottom:24px}.nav.is-open .nav__links,.nav.is-open .nav__cta{display:flex;flex-basis:100%;flex-direction:column;gap:18px;margin-top:22px;text-align:left}.nav.is-open .nav__cta{align-self:flex-start}}.btn{display:inline-block;padding:17px 40px;font-family:var(--sans);font-size:0.72rem;letter-spacing:0.26em;text-transform:uppercase;font-weight:500;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;transition:background var(--tr),color var(--tr),border-color var(--tr),transform var(--tr)}.btn:hover{background:var(--ink);color:var(--bg)}.btn--primary{background:var(--ink);color:var(--bg)}.btn--primary:hover{background:var(--accent);border-color:var(--accent);color:var(--white)}.btn--light{border-color:rgba(255,255,255,0.8);color:var(--bg)}.btn--light:hover{background:var(--bg);border-color:var(--bg);color:var(--ink)}.btn--accent{background:var(--accent);border-color:var(--accent);color:var(--white)}.btn--accent:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:var(--white)}.btn--block{display:block;width:100%;text-align:center}.hero{position:relative;min-height:100vh;color:var(--white);overflow:hidden;display:flex;align-items:center;justify-content:center;padding-top:100px;padding-bottom:100px}.hero__bg{position:absolute;inset:0;background-size:cover;background-position:center}.hero__pic{position:absolute;inset:0;display:block;z-index:0}.hero__pic img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0.35) 0%,rgba(0,0,0,0.15) 35%,rgba(0,0,0,0.65) 100%)}.hero__inner{position:relative;z-index:2;max-width:var(--container);width:100%;padding:0 var(--gutter);text-align:center}.hero__eyebrow{color:rgba(255,255,255,0.85)!important;margin-bottom:22px;justify-content:center}.hero__eyebrow::before{background:var(--accent)}.hero__title{font-family:var(--serif);font-weight:300;font-size:clamp(2.6rem,6vw,5.4rem);line-height:1.0;letter-spacing:-0.025em;color:var(--white);margin:0 0 18px;font-variation-settings:"opsz" 144,"SOFT" 30}.hero__title em{font-style:italic;font-weight:300;color:#E8D5B4;font-variation-settings:"opsz" 144,"SOFT" 100}.hero__sub{color:rgba(255,255,255,0.85);max-width:48ch;font-size:1.02rem;margin:0 auto 50px;line-height:1.6}.hero__scroll{position:absolute;left:50%;bottom:30px;transform:translateX(-50%);color:rgba(255,255,255,0.7);font-size:0.65rem;letter-spacing:0.3em;text-transform:uppercase;z-index:3;text-align:center}.hero__scroll::after{content:"";display:block;width:1px;height:48px;background:rgba(255,255,255,0.6);margin:12px auto 0;animation:scrollPulse 2.2s ease-in-out infinite}@keyframes scrollPulse{0%,100%{transform:scaleY(0.25);transform-origin:top;opacity:0.4}50%{transform:scaleY(1);opacity:1}}.booking-card{max-width:980px;margin:0 auto;background:rgba(250,250,247,0.97);color:var(--ink);padding:28px 30px 24px;box-shadow:0 40px 100px -20px rgba(0,0,0,0.55),0 0 0 1px rgba(255,255,255,0.06) inset;backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);border-radius:2px;text-align:left}.booking-card__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:20px;flex-wrap:wrap}.booking-card__title{font-family:var(--serif);font-size:1.15rem;font-weight:400;color:var(--ink);margin:0;letter-spacing:-0.01em}.booking-card__title em{font-style:italic;color:var(--accent)}.booking-card__sub{font-size:0.68rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--muted);font-weight:500}.booking-card__grid{display:grid;grid-template-columns:1fr 1fr 0.85fr auto;gap:0;border:1px solid var(--rule);background:var(--white)}.booking-card__grid--no-guests{grid-template-columns:1fr 1fr auto}.booking-field{padding:16px 22px;border-right:1px solid var(--rule);position:relative;cursor:pointer;transition:background var(--tr)}.booking-field:hover{background:#FBF9F4}.booking-field:last-of-type{border-right:0}.booking-field__label{display:block;font-size:0.62rem;letter-spacing:0.28em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:6px}.booking-field input,.booking-field select{width:100%;border:0;background:transparent;font-family:var(--sans);font-size:0.98rem;font-weight:500;color:var(--ink);padding:0;outline:none;cursor:pointer;appearance:none;-webkit-appearance:none}.booking-field input[type="date"]{font-variant-numeric:tabular-nums;color-scheme:light}.booking-field input::-webkit-calendar-picker-indicator{opacity:0.4;cursor:pointer;filter:invert(0)}.booking-submit{background:var(--ink);color:var(--white);border:0;padding:0 42px;font-family:var(--sans);font-size:0.72rem;letter-spacing:0.26em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:background var(--tr);display:flex;align-items:center;justify-content:center;min-height:82px;white-space:nowrap}.booking-submit:hover{background:var(--accent)}.booking-card__footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;font-size:0.7rem;color:var(--muted);letter-spacing:0.14em;text-transform:uppercase;flex-wrap:wrap;gap:10px}.booking-card__perks{display:flex;gap:22px;flex-wrap:wrap}.booking-card__perks span::before{content:"✓";color:var(--accent);margin-right:8px;font-weight:700}@media (max-width:820px){.booking-card__grid{grid-template-columns:1fr 1fr}.booking-card__grid--no-guests{grid-template-columns:1fr 1fr}.booking-field{border-bottom:1px solid var(--rule)}.booking-field:nth-child(3){border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);grid-column:span 2}.booking-submit{grid-column:span 2;padding:20px}}@media (max-width:480px){.booking-card{padding:22px 18px 20px}.booking-card__grid{grid-template-columns:1fr}.booking-card__grid--no-guests{grid-template-columns:1fr}.booking-field{border-right:0!important}.booking-submit{grid-column:span 1}}@media (max-width:720px){.topstrip{display:none}.uvp-strip{display:none}.hero{padding-top:12px;padding-bottom:16px;min-height:auto;justify-content:flex-start}.hero__inner{display:flex;flex-direction:column;align-items:center;gap:8px}.hero__eyebrow{display:none}.hero__title{font-size:clamp(1.4rem,6vw,1.8rem);margin:8px 0 4px;line-height:1.05;text-align:center}.hero__sub{display:none}.hero__scroll{display:none}.booking-card{margin-top:4px}}@media (max-width:480px){.hero{padding-top:8px;padding-bottom:12px}.hero__title{font-size:clamp(1.3rem,7vw,1.6rem);margin:6px 0 2px}}.page-hero{position:relative;height:62vh;min-height:420px;color:var(--white);display:flex;align-items:flex-end;overflow:hidden}.page-hero__bg{position:absolute;inset:0;background-size:cover;background-position:center}.page-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0.2),rgba(0,0,0,0.65))}.page-hero__inner{position:relative;z-index:2;padding:0 var(--gutter) 80px;max-width:var(--container);margin:0 auto;width:100%}.page-hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(2.8rem,6vw,5rem);margin:14px 0 0;color:var(--white);letter-spacing:-0.025em;font-variation-settings:"opsz" 144,"SOFT" 30}.page-hero h1 em{font-style:italic;color:#E8D5B4;font-variation-settings:"opsz" 144,"SOFT" 100}.intro{max-width:780px;margin:0 auto;text-align:center}.intro .eyebrow{margin-bottom:26px;justify-content:center}.intro h2{margin-bottom:26px}.intro h2 em{font-style:italic}.intro p{font-size:1.08rem;line-height:1.75;color:var(--ink-soft)}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;padding:70px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.feature{text-align:center}.feature__num{font-family:var(--serif);font-style:italic;font-weight:300;font-size:2.8rem;color:var(--accent);line-height:1;margin-bottom:12px;font-variation-settings:"opsz" 144,"SOFT" 100}.feature__label{font-size:0.7rem;letter-spacing:0.26em;text-transform:uppercase;color:var(--muted);font-weight:500}@media (max-width:780px){.features{grid-template-columns:repeat(2,1fr);gap:30px}}.showcase__img{aspect-ratio:4/5;background-size:cover;background-position:center;box-shadow:0 40px 100px -40px rgba(0,0,0,0.35)}.showcase--reverse .showcase__img{order:2}@media (max-width:820px){.showcase--reverse .showcase__img{order:0}}.showcase__body .eyebrow,.showcase__body .section-num{margin-bottom:18px}.showcase__body h2{margin-bottom:24px}.showcase__body h2 em{font-style:italic}.showcase__body ul{list-style:none;padding:0;margin:30px 0 0;columns:2;column-gap:40px}.showcase__body ul li{padding:12px 0;border-bottom:1px solid var(--rule);font-size:0.92rem;color:var(--ink-soft);break-inside:avoid;letter-spacing:0.01em}@media (max-width:560px){.showcase__body ul{columns:1}}.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.review{padding:44px 36px;border:1px solid var(--rule);background:var(--white);position:relative;display:flex;flex-direction:column;transition:transform var(--tr),box-shadow var(--tr)}.review:hover{transform:translateY(-4px);box-shadow:0 30px 60px -30px rgba(0,0,0,0.15)}.review__quote{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.22rem;line-height:1.55;color:var(--ink);margin:0 0 26px;flex:1;font-variation-settings:"opsz" 36,"SOFT" 100}.review__quote::before{content:"\201C";font-family:var(--serif);font-size:4.4rem;font-weight:300;color:var(--accent);line-height:0.2;display:block;margin-bottom:22px;font-variation-settings:"opsz" 144}.review__author{font-size:0.7rem;letter-spacing:0.24em;text-transform:uppercase;color:var(--muted);font-weight:500}.review__stars{color:var(--accent);letter-spacing:3px;margin-bottom:10px;font-size:0.9rem}@media (max-width:900px){.reviews{grid-template-columns:1fr}}.room-types{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:44px}.room-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--rule);overflow:hidden;transition:transform var(--tr),box-shadow var(--tr),border-color var(--tr)}.room-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -20px rgba(0,0,0,0.18);border-color:rgba(0,0,0,0.12)}.room-card--featured{border-color:var(--accent);box-shadow:0 2px 0 var(--accent) inset,0 14px 36px -22px rgba(0,0,0,0.22)}.room-card--featured:hover{box-shadow:0 2px 0 var(--accent) inset,0 22px 50px -20px rgba(0,0,0,0.26)}.room-card__img{position:relative;aspect-ratio:4 / 3;background-size:cover;background-position:center}.room-card__tier{position:absolute;top:14px;left:14px;background:var(--white);color:var(--dark);font-size:0.72rem;letter-spacing:0.16em;text-transform:uppercase;font-weight:600;padding:6px 12px;border-radius:2px;box-shadow:0 2px 8px -2px rgba(0,0,0,0.15)}.room-card--featured .room-card__tier{background:var(--accent);color:var(--white)}.room-card__badge{position:absolute;top:14px;right:14px;background:var(--dark);color:var(--white);font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;font-weight:500;padding:5px 11px;border-radius:2px}.room-card__body{display:flex;flex-direction:column;flex:1;padding:26px 26px 24px}.room-card__title{font-family:var(--serif);font-size:1.7rem;font-weight:400;margin:0 0 14px;letter-spacing:-0.01em}.room-card__title em{color:var(--accent);font-style:italic}.room-card__specs{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:0.8rem;color:var(--muted);letter-spacing:0.04em;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--rule)}.room-card__specs span{white-space:nowrap}.room-card__specs strong{color:var(--dark);font-weight:600}.room-card__lede{font-size:0.95rem;line-height:1.6;color:var(--dark);margin-bottom:14px}.room-card__features{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:6px}.room-card__features li{font-size:0.88rem;line-height:1.5;color:var(--muted);padding-left:20px;position:relative}.room-card__features li::before{content:"";position:absolute;left:0;top:0.55em;width:10px;height:1px;background:var(--accent)}.room-card__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:18px;border-top:1px solid var(--rule)}.room-card__cta-group{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}.room-card__price{display:flex;flex-direction:column;line-height:1}.room-card__price-label{font-size:0.68rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.room-card__price strong{font-family:var(--serif);font-size:1.5rem;font-weight:500;color:var(--dark)}.room-card__dollars{display:inline-flex;align-items:baseline;gap:1px;font-family:var(--serif);font-size:1.4rem;font-weight:500;line-height:1;letter-spacing:0.02em}.room-card__dollars span{color:rgba(0,0,0,0.18);transition:color var(--tr)}.room-card__dollars .is-on{color:var(--dark)}.room-card--featured .room-card__dollars .is-on{color:var(--accent)}.room-card__dollars--inline{font-size:1.05rem}.room-card__cta{font-size:0.78rem;padding:9px 14px;white-space:nowrap}@media (max-width:980px){.room-types{grid-template-columns:1fr;max-width:560px;margin-left:auto;margin-right:auto}}.room-compare{overflow-x:auto;margin-bottom:14px}.room-compare__table{width:100%;border-collapse:collapse;font-size:0.92rem;background:var(--white);border:1px solid var(--rule)}.room-compare__table thead th{font-family:var(--serif);font-weight:400;font-size:1.05rem;padding:18px 20px;text-align:left;border-bottom:1px solid var(--rule);background:var(--bg-alt)}.room-compare__table thead th.is-featured{color:var(--accent);position:relative}.room-compare__table thead th.is-featured::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.room-compare__table tbody th{text-align:left;padding:14px 20px;font-weight:500;color:var(--muted);font-size:0.82rem;letter-spacing:0.04em;text-transform:uppercase;background:var(--bg-alt);border-right:1px solid var(--rule);width:35%}.room-compare__table td{padding:14px 20px;border-bottom:1px solid var(--rule);color:var(--dark)}.room-compare__table td.is-featured{background:rgba(0,0,0,0.02);font-weight:500}.room-compare__table tr:last-child td,.room-compare__table tr:last-child th{border-bottom:none}.room-compare__note{font-size:0.84rem;color:var(--muted);text-align:center;margin-top:12px}@media (max-width:680px){.room-compare__table{font-size:0.85rem}.room-compare__table thead th,.room-compare__table tbody th,.room-compare__table td{padding:12px 14px}.room-compare__table tbody th{width:40%}}.amenity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--rule);border-left:1px solid var(--rule)}.amenity{padding:44px 38px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);transition:background var(--tr)}.amenity:hover{background:var(--white)}.amenity__icon{width:34px;height:34px;stroke:var(--accent);fill:none;stroke-width:1.2;margin-bottom:22px}.amenity h3{font-size:1.35rem;margin-bottom:10px;font-weight:400}.amenity p{font-size:0.94rem;margin:0;line-height:1.65}@media (max-width:820px){.amenity-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.amenity-grid{grid-template-columns:1fr}}.brewery{position:relative;overflow:hidden}.brewery__bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:brightness(0.5)}.brewery__inner{position:relative;z-index:2;padding:clamp(90px,14vw,170px) 0;color:var(--white);text-align:center}.brewery__inner h2{color:var(--white);font-size:clamp(2.4rem,5vw,4.2rem);margin-bottom:18px;font-weight:300}.brewery__inner h2 em{font-style:italic;color:#E8D5B4}.brewery__inner p{color:rgba(255,255,255,0.9);max-width:560px;margin:0 auto 34px}.brewery__inner .eyebrow{color:rgba(255,255,255,0.8);justify-content:center}.location{display:grid;grid-template-columns:1fr 1.2fr;gap:0;min-height:540px}.location__body{padding:clamp(40px,6vw,90px);background:var(--bg-alt);display:flex;flex-direction:column;justify-content:center}.location__body h2 em{font-style:italic}.location__body address{font-style:normal;font-size:1.08rem;line-height:1.8;color:var(--ink);margin:24px 0 32px}.location__map{min-height:420px}.location__map iframe{width:100%;height:100%;border:0;display:block}@media (max-width:820px){.location{grid-template-columns:1fr}.location__map{min-height:340px}}.cta-banner{background:var(--dark);color:var(--bg);padding:clamp(70px,10vw,130px) 0;text-align:center;position:relative;overflow:hidden}.cta-banner h2{color:var(--bg);font-size:clamp(2rem,4.5vw,3.6rem);margin-bottom:34px;font-weight:300}.cta-banner h2 em{font-style:italic;color:#E8D5B4}.cta-banner .eyebrow{color:rgba(255,255,255,0.7);justify-content:center;margin-bottom:24px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px)}.contact-grid h2 em{font-style:italic}.contact-info p{margin:0 0 8px}.contact-info strong{display:block;font-family:var(--sans);font-size:0.68rem;letter-spacing:0.26em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-top:26px;margin-bottom:6px}.form{display:grid;gap:22px}.form label{display:block;font-size:0.68rem;letter-spacing:0.26em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:8px}.form input,.form textarea,.form select{width:100%;border:0;border-bottom:1px solid var(--rule);background:transparent;padding:12px 0;font-family:var(--sans);font-size:1rem;color:var(--ink);outline:none;transition:border-color var(--tr)}.form input:focus,.form textarea:focus,.form select:focus{border-color:var(--accent)}.form textarea{min-height:130px;resize:vertical}@media (max-width:820px){.contact-grid{grid-template-columns:1fr}}.booking-wrap{max-width:980px;margin:0 auto;padding:clamp(30px,4vw,50px);background:var(--white);border:1px solid var(--rule);box-shadow:0 40px 100px -50px rgba(0,0,0,0.2)}.booking-placeholder{border:2px dashed var(--rule);padding:60px 30px;text-align:center;color:var(--muted);background:var(--bg)}.booking-placeholder code{display:block;background:var(--dark);color:#E8D5B4;padding:22px;margin:22px auto;max-width:640px;font-family:"SF Mono",Consolas,Menlo,monospace;font-size:0.82rem;text-align:left;overflow-x:auto;white-space:pre;line-height:1.55}.footer{background:#0B0B0B;color:rgba(255,255,255,0.72);padding:90px 0 32px}.footer__grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:44px;margin-bottom:70px}.footer h4{font-family:var(--sans);font-size:0.7rem;letter-spacing:0.26em;text-transform:uppercase;color:var(--white);font-weight:500;margin-bottom:20px}.footer__brand{font-family:var(--serif);font-weight:300;font-size:1.8rem;color:var(--white);margin-bottom:16px;letter-spacing:-0.015em}.footer__brand em{font-style:italic}.footer__logo{display:block;height:38px;width:auto;opacity:0.95}.footer p{color:rgba(255,255,255,0.68);margin:0 0 8px;font-size:0.94rem}.footer a{color:rgba(255,255,255,0.78)}.footer a:hover{color:var(--accent)}.footer ul{list-style:none;margin:0;padding:0}.footer ul li{margin-bottom:11px;font-size:0.9rem}.footer__newsletter input{width:100%;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,0.28);color:var(--white);padding:11px 0;font-size:0.95rem;margin-bottom:16px;outline:none}.footer__newsletter input::placeholder{color:rgba(255,255,255,0.5)}.footer__newsletter button{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,0.5);padding:11px 24px;font-size:0.68rem;letter-spacing:0.24em;text-transform:uppercase;cursor:pointer;transition:all var(--tr);font-weight:500}.footer__newsletter button:hover{background:var(--accent);border-color:var(--accent)}.footer__bottom{border-top:1px solid rgba(255,255,255,0.12);padding-top:28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;font-size:0.8rem;color:rgba(255,255,255,0.5)}@media (max-width:820px){.footer__grid{grid-template-columns:1fr 1fr}}@media (max-width:520px){.footer__grid{grid-template-columns:1fr}}.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s ease,transform 1.1s cubic-bezier(.19,1,.22,1);transition-delay:0.05s}.reveal.is-visible{opacity:1;transform:translateY(0)}.text-center{text-align:center}.mt-0{margin-top:0!important}.mb-0{margin-bottom:0!important}.topstrip{position:relative;z-index:60;background:var(--bg-alt);color:var(--dark);font-family:var(--sans);font-size:0.78rem;letter-spacing:0.06em;border-bottom:1px solid rgba(10,10,10,0.08)}.topstrip__inner{max-width:var(--container);margin:0 auto;padding:10px var(--gutter);display:flex;justify-content:center;flex-wrap:wrap;gap:28px;align-items:center;text-align:center;gap:18px}.topstrip__promo{display:inline-flex;align-items:center;gap:10px}.topstrip__promo strong{color:var(--accent-dark);font-weight:600;letter-spacing:0.1em;text-transform:uppercase;font-size:0.72rem}.topstrip__promo a{color:inherit;border-bottom:1px solid rgba(10,10,10,0.25);padding-bottom:1px}.topstrip__promo a:hover{color:var(--accent-dark);border-color:var(--accent-dark)}.topstrip__live{display:inline-flex;align-items:center;gap:16px;color:var(--muted)}.topstrip__live-item{display:inline-flex;align-items:center;gap:6px}.topstrip__live-dot{width:7px;height:7px;border-radius:50%;background:#3A8E4C;position:relative}.topstrip__live-dot::after{content:'';position:absolute;inset:0;border-radius:50%;background:rgba(58,142,76,0.4);animation:pulse 2.2s ease-out infinite;will-change:transform,opacity;pointer-events:none}@keyframes pulse{0%{transform:scale(1);opacity:0.6}70%{transform:scale(2.6);opacity:0}100%{transform:scale(2.6);opacity:0}}@media (max-width:760px){.topstrip__inner{flex-direction:column;gap:6px;padding:8px var(--gutter);text-align:center}.topstrip__live{font-size:0.72rem;gap:10px}}.taps__heading{font-family:var(--sans);font-weight:500;font-size:0.78rem;letter-spacing:0.28em;text-transform:uppercase;color:#F5E7D0;margin:30px 0 18px;text-align:center;position:relative;display:inline-block;padding:0 18px}.taps__heading::before,.taps__heading::after{content:"";position:absolute;top:50%;width:34px;height:1px;background:rgba(232,213,180,0.55)}.taps__heading::before{right:100%}.taps__heading::after{left:100%}.taps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 auto;padding:0;list-style:none;max-width:780px}.taps__item{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.22);border-radius:12px;padding:18px 20px;color:var(--white);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);text-align:left}.taps__name{font-family:var(--serif);font-weight:400;font-size:1.15rem;margin:0 0 6px;color:var(--white);font-variation-settings:"opsz" 144}.taps__style{font-family:var(--sans);font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:#E8D5B4;font-weight:500}@media (max-width:720px){.taps{grid-template-columns:1fr}}.map-wrap{position:relative;height:clamp(520px,70vh,760px);border-radius:14px;overflow:hidden;box-shadow:0 30px 80px -40px rgba(0,0,0,0.25)}.map-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-top:40px;padding:0;list-style:none}.map-legend__item{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-alt);border-radius:8px;font-size:0.88rem}.map-legend__dot{width:14px;height:14px;border-radius:50%;flex-shrink:0}.leaflet-popup-content{font-family:var(--sans);font-size:0.88rem;line-height:1.5}.leaflet-popup-content h4{font-family:var(--serif);font-size:1.1rem;margin:0 0 6px;font-weight:400}.guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:40px}.guide-card{display:block;color:inherit;background:var(--white);border:1px solid var(--rule);border-radius:14px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.guide-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -30px rgba(0,0,0,0.15)}.guide-card__img{height:200px;background-size:cover;background-position:center}.guide-card__body{padding:22px 24px 26px}.guide-card__eyebrow{font-family:var(--sans);font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;display:block}.guide-card__title{font-family:var(--serif);font-weight:400;font-size:1.3rem;margin:0 0 8px;letter-spacing:-0.02em;font-variation-settings:"opsz" 144}.guide-card__excerpt{margin:0 0 14px;color:var(--muted);font-size:0.95rem}.guide-card__more{font-family:var(--sans);font-size:0.78rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--accent)}.sticky-book{position:fixed;z-index:80;right:24px;bottom:24px;display:inline-flex;align-items:center;gap:10px;padding:14px 22px;background:var(--accent);color:var(--white);font-family:var(--sans);font-size:0.82rem;letter-spacing:0.14em;text-transform:uppercase;font-weight:500;border-radius:999px;box-shadow:0 18px 40px -12px rgba(176,141,87,0.55),0 4px 14px -4px rgba(0,0,0,0.2);opacity:0;pointer-events:none;transform:translateY(16px);transition:opacity .4s ease,transform .4s ease,background .2s ease}.sticky-book.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.sticky-book:hover{background:var(--accent-dark);color:var(--white)}.sticky-book__icon{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2}@media (max-width:720px){.sticky-book{left:16px;right:16px;bottom:16px;justify-content:center;padding:15px 22px;font-size:0.84rem;border-radius:12px}}.uvp-strip{background:var(--bg-alt);padding:18px var(--gutter);text-align:center;font-family:var(--sans);font-size:0.86rem;color:var(--ink-soft)}.uvp-strip strong{font-weight:500;color:var(--ink)}.uvp-strip .dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--accent);margin:0 14px;vertical-align:middle}@media (max-width:640px){.uvp-strip .dot:nth-of-type(2){display:none}.uvp-strip .uvp-strip__item:nth-of-type(3){display:none}}.urgency{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;background:rgba(176,141,87,0.12);border:1px solid rgba(176,141,87,0.28);border-radius:999px;font-family:var(--sans);font-size:0.8rem;color:var(--accent-dark);font-weight:500;letter-spacing:0.02em}.urgency__dot{width:8px;height:8px;border-radius:50%;background:#E09B4A;position:relative}.urgency__dot::after{content:'';position:absolute;inset:0;border-radius:50%;background:rgba(224,155,74,0.5);animation:pulse-warm 2.4s ease-out infinite;will-change:transform,opacity;pointer-events:none}@keyframes pulse-warm{0%{transform:scale(1);opacity:0.6}70%{transform:scale(3.3);opacity:0}100%{transform:scale(3.3);opacity:0}}.price-compare{max-width:760px;margin:40px auto 0;background:var(--white);border-radius:16px;overflow:hidden;box-shadow:0 30px 70px -40px rgba(0,0,0,0.22)}.price-compare__head{padding:26px 32px 22px;border-bottom:1px solid var(--rule)}.price-compare__head h3{margin:0 0 8px;font-size:clamp(1.3rem,2vw,1.7rem);font-weight:400;font-variation-settings:"opsz" 144}.price-compare__head p{margin:0;font-size:0.9rem;color:var(--muted)}.price-compare__dates{display:flex;flex-wrap:wrap;gap:14px;padding:20px 32px;border-bottom:1px solid var(--rule);background:var(--bg);align-items:center}.price-compare__dates label{display:flex;flex-direction:column;font-family:var(--sans);font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);gap:4px}.price-compare__dates input{font-family:var(--sans);padding:6px 8px;border:1px solid var(--rule);border-radius:6px;background:var(--white);font-size:0.95rem;color:var(--ink)}.price-compare__rows{display:flex;flex-direction:column}.price-row{display:grid;grid-template-columns:1fr 110px 130px;align-items:center;gap:20px;padding:18px 32px;border-bottom:1px solid var(--rule)}.price-row:last-child{border-bottom:none}.price-row:nth-child(odd){background:var(--white)}.price-row:nth-child(even){background:var(--bg-alt)}.price-row.is-winner{background:linear-gradient(90deg,rgba(176,141,87,0.10),rgba(176,141,87,0.03));border-left:3px solid var(--accent)}.price-row__source{display:flex;align-items:center;gap:14px}.price-row__logo{width:42px;height:42px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 1px 3px rgba(0,0,0,0.10);overflow:hidden}.price-row__logo img{display:block;width:60%;height:60%;object-fit:contain}.price-row__logo--vrbo img{width:95%;height:auto;padding:0 2px}.price-row__logo--wef img{width:92%;height:92%;object-fit:contain}.price-row__logo--wef{background:var(--bg-alt)}.price-row__logo--airbnb{background:#FF5A5F}.price-row__logo--vrbo{background:#245ABC}.price-row__logo--booking{background:#003580}.price-row__name{font-family:var(--sans);font-weight:500;font-size:0.98rem}.price-row__fees{display:block;font-size:0.76rem;color:var(--muted);font-weight:400;margin-top:2px}.price-row__total{font-family:var(--serif);font-weight:400;font-size:1.5rem;font-variation-settings:"opsz" 144;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;display:block}.price-row.is-winner .price-row__total{color:var(--accent-dark)}.price-row__save{font-family:var(--sans);font-size:0.72rem;letter-spacing:0.14em;text-transform:uppercase;padding:5px 10px;border-radius:999px;background:var(--accent);color:var(--white)}.price-row__cta{font-family:var(--sans);font-size:0.76rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);text-align:right}.price-row__cta--book{padding:10px 20px;border-radius:999px;background:var(--ink);color:var(--white)}.price-row__cta--book:hover{background:var(--accent);color:var(--white)}.price-compare__foot{padding:16px 32px 22px;font-size:0.76rem;color:var(--muted);background:var(--bg)}.price-compare.is-loading .price-row__total{opacity:0.55;transition:opacity 0.2s ease}@media (max-width:720px){.price-row{grid-template-columns:1fr auto;gap:12px;padding:16px 22px}.price-row__cta{grid-column:1 / -1;text-align:right}.price-compare__head,.price-compare__dates,.price-compare__foot{padding-left:22px;padding-right:22px}.price-row__total{font-size:1.25rem}}.faq{max-width:820px;margin:0 auto}.faq__group{margin-bottom:50px}.faq__group h3{font-family:var(--serif);font-weight:400;font-size:1.4rem;margin:0 0 18px;font-variation-settings:"opsz" 144;color:var(--ink);padding-bottom:12px;border-bottom:1px solid var(--rule)}.faq details{border-bottom:1px solid var(--rule);padding:16px 0}.faq details[open] summary::after{transform:rotate(45deg)}.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;font-family:var(--sans);font-weight:500;font-size:1rem;color:var(--ink);padding:4px 0}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";font-family:var(--serif);font-size:1.6rem;font-weight:300;color:var(--accent);flex-shrink:0;line-height:1;transition:transform .25s ease}.faq details p{margin:12px 0 0;color:var(--ink-soft);font-size:0.95rem;line-height:1.7;max-width:720px}.faq-section{background:linear-gradient(180deg,var(--bg,#F1EBDF) 0%,#faf6ed 60%)}.faq-controls{max-width:760px;margin:0 auto 48px;position:sticky;top:80px;z-index:12;padding:18px 0 14px;background:linear-gradient(180deg,rgba(250,246,237,1) 0%,rgba(250,246,237,1) 80%,rgba(250,246,237,0) 100%);backdrop-filter:blur(6px)}.faq-search{position:relative;margin-bottom:16px}.faq-search svg{position:absolute;left:22px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:var(--muted,#776b5a);pointer-events:none}.faq-search input{width:100%;padding:18px 22px 18px 54px;border:1px solid var(--rule,rgba(0,0,0,0.1));border-radius:999px;background:#fff;font-family:var(--sans);font-size:1rem;color:var(--ink);outline:none;box-shadow:0 6px 24px -16px rgba(0,0,0,0.12);transition:box-shadow .25s,border-color .25s,transform .25s;-webkit-appearance:none;appearance:none}.faq-search input::placeholder{color:var(--muted,#776b5a);opacity:0.7}.faq-search input:focus{border-color:var(--ink);box-shadow:0 12px 40px -20px rgba(0,0,0,0.2)}.faq-search input::-webkit-search-cancel-button{-webkit-appearance:none;height:16px;width:16px;background:var(--muted,#776b5a);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 6l12 12M18 6L6 18' stroke='black' stroke-width='2.5' stroke-linecap='round'/></svg>") center / contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M6 6l12 12M18 6L6 18' stroke='black' stroke-width='2.5' stroke-linecap='round'/></svg>") center / contain no-repeat;cursor:pointer}.faq-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.faq-pill{padding:9px 18px;border-radius:999px;border:1px solid var(--rule,rgba(0,0,0,0.12));background:#fff;cursor:pointer;font-family:var(--sans);font-size:0.85rem;font-weight:500;letter-spacing:0.01em;color:var(--ink-soft,#5a5043);transition:background .2s,color .2s,border-color .2s,transform .15s}.faq-pill:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-1px)}.faq-pill.is-active{background:var(--ink);color:#fff;border-color:var(--ink)}.faq-grid{max-width:760px;margin:0 auto}.faq-group{margin-bottom:56px;scroll-margin-top:220px}.faq-group__title{font-family:var(--sans);font-weight:500;font-size:0.7rem;letter-spacing:0.22em;text-transform:uppercase;color:var(--muted,#776b5a);margin:0 0 18px;display:flex;align-items:center;gap:14px}.faq-group__title::after{content:'';flex:1;height:1px;background:var(--rule,rgba(0,0,0,0.12))}.faq-item{background:#fff;border:1px solid rgba(0,0,0,0.05);border-radius:14px;margin-bottom:10px;overflow:hidden;transition:box-shadow .3s ease,border-color .3s ease,transform .3s ease;position:relative}.faq-item::before{content:'';position:absolute;inset:0;border-radius:14px;pointer-events:none;box-shadow:0 0 0 0 rgba(0,0,0,0);transition:box-shadow .3s ease}.faq-item:hover{border-color:rgba(0,0,0,0.1);box-shadow:0 10px 28px -22px rgba(0,0,0,0.18)}.faq-item.is-focused{border-color:rgba(0,0,0,0.12);box-shadow:0 14px 36px -24px rgba(0,0,0,0.22)}.faq-item.is-open{border-color:rgba(0,0,0,0.14);box-shadow:0 22px 60px -32px rgba(0,0,0,0.28)}.faq-item__q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 26px;background:transparent;border:0;cursor:pointer;font-family:var(--serif);font-weight:400;font-size:1.08rem;line-height:1.4;letter-spacing:-0.01em;color:var(--ink);text-align:left;transition:background .2s,color .2s;-webkit-tap-highlight-color:transparent}.faq-item__q:hover{background:rgba(0,0,0,0.015)}.faq-item__q-text{flex:1}.faq-item__icon{flex-shrink:0;width:28px;height:28px;position:relative;border-radius:50%;background:rgba(0,0,0,0.04);transition:background .25s ease,transform .35s cubic-bezier(.4,0,.2,1)}.faq-item__icon::before,.faq-item__icon::after{content:'';position:absolute;background:var(--ink);border-radius:1px;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .25s}.faq-item__icon::before{top:50%;left:50%;width:12px;height:1.5px;transform:translate(-50%,-50%)}.faq-item__icon::after{top:50%;left:50%;width:1.5px;height:12px;transform:translate(-50%,-50%)}.faq-item:hover .faq-item__icon{background:rgba(0,0,0,0.07)}.faq-item.is-open .faq-item__icon{background:var(--ink);transform:rotate(180deg)}.faq-item.is-open .faq-item__icon::before{background:#fff}.faq-item.is-open .faq-item__icon::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0}.faq-item__a{height:0;overflow:hidden;transition:height .35s cubic-bezier(.4,0,.2,1)}.faq-item__a-inner{padding:0 26px 26px 26px;color:var(--ink-soft,#5a5043);font-size:0.96rem;line-height:1.75;font-family:var(--sans)}.faq-item__a-inner p{margin:0}.faq-item__a-inner p + p{margin-top:12px}.faq-item__a-inner a{color:var(--ink);border-bottom:1px solid currentColor;text-decoration:none}.faq-item.is-hidden{display:none!important}.faq-group.is-hidden{display:none!important}.faq-empty{text-align:center;padding:60px 20px;color:var(--muted,#776b5a);font-family:var(--sans);display:none}.faq-empty.is-shown{display:block}.faq-empty a{color:var(--ink);border-bottom:1px solid currentColor;text-decoration:none}@media (max-width:720px){.faq-controls{top:60px;margin-bottom:32px}.faq-search input{padding:14px 18px 14px 48px;font-size:0.95rem}.faq-search svg{left:18px}.faq-pill{padding:8px 14px;font-size:0.8rem}.faq-item__q{padding:18px 20px;font-size:1rem}.faq-item__a-inner{padding:0 20px 22px;font-size:0.92rem}.faq-group{scroll-margin-top:240px}}@media (prefers-reduced-motion:reduce){.faq-item,.faq-item__a,.faq-item__icon,.faq-item__icon::before,.faq-item__icon::after{transition:none!important}}.google-reviews__head{display:flex;justify-content:center;align-items:center;gap:22px;margin-bottom:40px;flex-wrap:wrap;font-family:var(--sans)}.google-reviews__rating{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;background:var(--white);border:1px solid var(--rule);border-radius:12px;box-shadow:0 10px 30px -15px rgba(0,0,0,0.12)}.google-reviews__stars{color:#E8A93A;font-size:1rem;letter-spacing:2px}.google-reviews__number{font-family:var(--serif);font-size:1.5rem;font-weight:400;color:var(--ink);font-variation-settings:"opsz" 144}.google-reviews__label{font-size:0.78rem;color:var(--muted);letter-spacing:0.08em;text-transform:uppercase}.google-reviews__cta{font-family:var(--sans);font-size:0.8rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent)}.review__source{font-family:var(--sans);font-size:0.72rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);margin-top:10px;display:flex;align-items:center;gap:6px}.review__source::before{content:"";display:inline-block;width:14px;height:14px;background:conic-gradient(from 0deg,#4285F4 0 25%,#EA4335 25% 50%,#FBBC05 50% 75%,#34A853 75% 100%);border-radius:50%}.tour-block{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:16 / 9;background:var(--ink);box-shadow:0 40px 90px -40px rgba(0,0,0,0.3);max-width:1100px;margin:0 auto}.tour-block__img{width:100%;height:100%;object-fit:cover;opacity:0.75}.tour-block__play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;color:var(--white);text-align:center;padding:20px}.tour-block__circle{width:86px;height:86px;border-radius:50%;background:var(--white);display:flex;align-items:center;justify-content:center;box-shadow:0 20px 50px -20px rgba(0,0,0,0.5);transition:transform .3s ease}.tour-block:hover .tour-block__circle{transform:scale(1.08)}.tour-block__circle svg{width:32px;height:32px;fill:var(--ink);margin-left:4px}.tour-block__label{font-family:var(--sans);font-size:0.82rem;letter-spacing:0.18em;text-transform:uppercase;font-weight:500}.tour-block__title{font-family:var(--serif);font-weight:300;font-size:clamp(1.6rem,3vw,2.4rem);margin:0;color:var(--white);font-variation-settings:"opsz" 144;max-width:560px}.inline-faq{margin-top:60px}.press-strip{background:var(--bg);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:28px 0}.press-strip__inner{max-width:var(--container);margin:0 auto;padding:0 var(--gutter);display:flex;align-items:center;justify-content:center;gap:38px;flex-wrap:wrap}.press-strip__eyebrow{font-family:var(--sans);font-size:0.7rem;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);margin-right:10px}.press-strip__item{font-family:var(--serif);font-size:1.1rem;font-weight:400;color:var(--muted);font-style:italic;opacity:0.75;transition:opacity var(--tr),color var(--tr)}.press-strip__item:hover{opacity:1;color:var(--dark)}@media (max-width:720px){.press-strip__inner{gap:22px}.press-strip__item{font-size:0.95rem}}.trust-strip{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;padding:18px 0;margin-top:18px;border-top:1px solid rgba(255,255,255,0.08);font-family:var(--sans);font-size:0.74rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.55)}.trust-strip__item{display:inline-flex;align-items:center;gap:6px}.trust-strip__item svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.6}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery__item{position:relative;display:block;overflow:hidden;border-radius:8px;aspect-ratio:4 / 3;background:var(--bg-alt);cursor:zoom-in;transition:transform 0.25s ease,box-shadow 0.25s ease}.gallery__item:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,0.12)}.gallery__item img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform 0.4s ease}.gallery__item:hover img{transform:scale(1.04)}.gallery__item--hero{grid-column:span 2;grid-row:span 2;aspect-ratio:8 / 6}@media (max-width:980px){.gallery{grid-template-columns:repeat(3,1fr)}.gallery__item--hero{grid-column:span 2;grid-row:span 2}}@media (max-width:640px){.gallery{grid-template-columns:repeat(2,1fr);gap:8px}.gallery__item--hero{grid-column:1 / -1;grid-row:auto;aspect-ratio:4 / 3}}.lightbox{position:fixed;inset:0;background:rgba(20,17,13,0.94);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity 0.2s ease}.lightbox.is-open{opacity:1;pointer-events:auto}.lightbox__img{max-width:92vw;max-height:86vh;object-fit:contain;user-select:none;-webkit-user-drag:none;box-shadow:0 20px 60px rgba(0,0,0,0.4)}.lightbox__btn{position:absolute;background:rgba(255,255,255,0.12);border:none;color:var(--white);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.4rem;transition:background 0.15s ease;-webkit-tap-highlight-color:transparent}.lightbox__btn:hover,.lightbox__btn:focus-visible{background:rgba(255,255,255,0.25);outline:none}.lightbox__close{top:20px;right:20px}.lightbox__prev{left:20px;top:50%;transform:translateY(-50%)}.lightbox__next{right:20px;top:50%;transform:translateY(-50%)}.lightbox__counter{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);font-family:var(--sans);font-size:0.82rem;letter-spacing:0.1em;color:rgba(255,255,255,0.7);background:rgba(0,0,0,0.4);padding:6px 14px;border-radius:999px}@media (max-width:720px){.lightbox__btn{width:40px;height:40px}.lightbox__close{top:12px;right:12px}.lightbox__prev{left:8px}.lightbox__next{right:8px}}.date-range-wrap{display:flex;flex-direction:column;gap:6px}.date-range-wrap__label{font-family:var(--sans);font-size:0.74rem;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted)}.date-range-input{width:100%;padding:12px 14px;border:1px solid var(--rule);border-radius:6px;background:var(--white);font-family:var(--sans);font-size:1rem;color:var(--ink);cursor:pointer;font-variant-numeric:tabular-nums;text-align:center}.date-range-input:focus{outline:none;border-color:var(--accent)}.nearby{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:980px;margin:0 auto}.nearby__col h3{font-family:var(--sans);font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--accent-dark);font-weight:500;margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--accent);display:inline-block}.nearby__col ul{list-style:none;padding:0;margin:0}.nearby__col li{padding:10px 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-family:var(--sans);font-size:0.92rem}.nearby__col li:last-child{border-bottom:none}.nearby__col li strong{font-weight:500;color:var(--ink)}.nearby__col li span{color:var(--muted);font-size:0.82rem;white-space:nowrap;flex-shrink:0}@media (max-width:880px){.nearby{grid-template-columns:1fr;gap:24px}}.long-copy{max-width:760px;margin:0 auto}.long-copy h2{font-family:var(--serif);font-size:clamp(1.6rem,2.6vw,2.1rem);font-weight:400;margin:14px 0 26px}.long-copy p{font-family:var(--serif);font-size:1.06rem;line-height:1.78;color:var(--ink);margin:0 0 22px}.long-copy p:last-child{margin-bottom:0}.long-copy strong{color:var(--accent-dark);font-weight:500}iframe[title="chat widget"],iframe[title*="chat"]:not([style*="height: 0"]),iframe.widget-visible[title*="chat"]{bottom:14px!important;right:14px!important;top:auto!important;left:auto!important;border-radius:14px!important;box-shadow:0 22px 60px -20px rgba(0,0,0,0.45)!important}@media (max-width:720px){iframe[title="chat widget"][style*="100%"],iframe[title*="chat"]:not([style*="height: 0"]),iframe.widget-visible[title*="chat"]{width:min(92vw,380px)!important;height:min(70vh,600px)!important}}@media (max-width:480px){iframe[title="chat widget"][style*="100%"],iframe[title*="chat"]:not([style*="height: 0"]),iframe.widget-visible[title*="chat"]{width:calc(100vw - 20px)!important;height:75vh!important;bottom:10px!important;right:10px!important}}.flatpickr-calendar{--wef-day-h:44px}.flatpickr-day{height:44px!important;line-height:36px!important;position:relative}.flatpickr-day.flatpickr-day--has-price{line-height:28px!important;padding-top:4px}.flatpickr-day__price{position:absolute;bottom:3px;left:0;right:0;font-family:var(--sans,system-ui);font-size:0.62rem;font-weight:500;letter-spacing:0.01em;line-height:1;color:var(--muted,#776b5a);pointer-events:none;font-variant-numeric:tabular-nums}.flatpickr-day--cheap .flatpickr-day__price{color:#1f7a4d}.flatpickr-day--mid .flatpickr-day__price{color:#5a5043}.flatpickr-day--spendy .flatpickr-day__price{color:#b08d57}.flatpickr-day--booked,.flatpickr-day--booked:hover{color:rgba(0,0,0,0.25)!important;text-decoration:line-through;cursor:not-allowed;background:repeating-linear-gradient(-45deg,transparent 0 4px,rgba(0,0,0,0.04) 4px 6px)}.flatpickr-day--booked .flatpickr-day__price{display:none}.flatpickr-day.selected .flatpickr-day__price,.flatpickr-day.startRange .flatpickr-day__price,.flatpickr-day.endRange .flatpickr-day__price,.flatpickr-day.inRange .flatpickr-day__price{color:rgba(255,255,255,0.85)!important}.flatpickr-calendar.hasWeeks .dayContainer,.flatpickr-days{width:auto}@media (max-width:480px){.flatpickr-day__price{font-size:0.58rem;bottom:2px}.flatpickr-day{height:40px!important}.flatpickr-day.flatpickr-day--has-price{line-height:24px!important;padding-top:4px}}