:root{--ink:#1d2a2e;--ink-soft:#3f5154;--paper:#f8f6f1;--paper-deep:#eee8de;--sand:#d8c4a9;--sage:#93a08f;--rose:#be7168;--card:#293a3d;--white:#fff;--line:#1d2a2e29;--hero-overlay-strong:#111c1fdb;--hero-overlay-mid:#111c1f6b;--hero-overlay-light:#111c1f1f;--hero-overlay-bottom:#111c1fcc;--cta-overlay-strong:#1d2a2eeb;--cta-overlay-light:#1d2a2e5c;--serif:"Cormorant Garamond", Georgia, serif;--sans:"DM Sans", Arial, sans-serif}html[data-theme=cozy]{--ink:#1d2a2e;--ink-soft:#3f5154;--paper:#f8f6f1;--paper-deep:#eee8de;--sand:#d8c4a9;--sage:#93a08f;--rose:#be7168;--serif:"Cormorant Garamond", Georgia, serif;--sans:"DM Sans", Arial, sans-serif;--hero-overlay-strong:#111c1fdb;--hero-overlay-mid:#111c1f6b;--hero-overlay-light:#111c1f1f;--hero-overlay-bottom:#111c1fcc;--cta-overlay-strong:#1d2a2eeb;--cta-overlay-light:#1d2a2e5c}html[data-theme=lakehouse]{--ink:#123542;--ink-soft:#48656b;--paper:#f4f9f7;--paper-deep:#e1efeb;--sand:#edc271;--sage:#8ebbb4;--rose:#168b9b;--serif:"DM Serif Display", Georgia, serif;--sans:"Manrope", Arial, sans-serif;--hero-overlay-strong:#123542e0;--hero-overlay-mid:#12354270;--hero-overlay-light:#1235421a;--hero-overlay-bottom:#123542cc;--cta-overlay-strong:#123542f0;--cta-overlay-light:#12354261}html[data-theme=sunset]{--ink:#2b203d;--ink-soft:#625873;--paper:#fffaf3;--paper-deep:#f2e9de;--sand:#ffb168;--sage:#83b7a5;--rose:#e86f68;--serif:"Space Grotesk", Arial, sans-serif;--sans:"IBM Plex Sans", Arial, sans-serif;--hero-overlay-strong:#2b203de0;--hero-overlay-mid:#2b203d70;--hero-overlay-light:#2b203d1a;--hero-overlay-bottom:#2b203dd1;--cta-overlay-strong:#2b203df0;--cta-overlay-light:#2b203d61}html[data-theme=lumen]{--ink:#111318;--ink-soft:#5f6572;--paper:#f4f2eb;--paper-deep:#e3e1d8;--sand:#d7ff3f;--sage:#8fb9ff;--rose:#2849d8;--line:#11131829;--hero-overlay-strong:#111318e6;--hero-overlay-mid:#11131875;--hero-overlay-light:#11131814;--hero-overlay-bottom:#111318db;--cta-overlay-strong:#111318f2;--cta-overlay-light:#11131866;--serif:"Bodoni Moda", Georgia, serif;--sans:"Sora", Arial, sans-serif}html[data-theme=terra]{--ink:#263a32;--ink-soft:#5c6b61;--paper:#fbf7ef;--paper-deep:#eee5d7;--sand:#efb464;--sage:#9fb7a0;--rose:#c7664e;--white:#fff;--line:#263a3229;--hero-overlay-strong:#1b2824e0;--hero-overlay-mid:#1b282470;--hero-overlay-light:#1b28241a;--hero-overlay-bottom:#1b2824d1;--cta-overlay-strong:#263a32f0;--cta-overlay-light:#263a3261;--serif:"Fraunces", Georgia, serif;--sans:"Plus Jakarta Sans", Arial, sans-serif}html[data-theme=nocturne]{--ink:#16132e;--ink-soft:#5f5a78;--paper:#f6f2fb;--paper-deep:#e8e0f2;--sand:#c9b2ff;--sage:#8bd9ed;--rose:#ed6f9f;--card:#34264f;--white:#fff;--line:#16132e29;--hero-overlay-strong:#16132ee6;--hero-overlay-mid:#16132e7a;--hero-overlay-light:#16132e1a;--hero-overlay-bottom:#16132ed6;--cta-overlay-strong:#16132ef2;--cta-overlay-light:#16132e6b;--serif:"Playfair Display", Georgia, serif;--sans:"Outfit", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}body,button,a{font-family:var(--sans)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1180px,100% - 48px);margin:0 auto}.site-header{z-index:20;color:var(--white);position:absolute;inset:0 0 auto}.site-header--solid{background:var(--ink);position:relative}.nav-shell{border-bottom:1px solid #ffffff42;justify-content:space-between;align-items:center;gap:32px;width:min(1320px,100% - 64px);min-height:94px;margin:0 auto;display:flex}.site-header--solid .nav-shell{border-bottom-color:#ffffff1f}.brand{letter-spacing:.08em;text-transform:uppercase;flex-direction:column;align-items:flex-start;line-height:.78;display:inline-flex}.brand span{font-family:var(--serif);letter-spacing:.02em;text-transform:none;font-size:1.45rem;font-weight:600}.brand strong{font-size:1.2rem;font-weight:700}.desktop-nav,.nav-actions,.footer-socials{align-items:center;display:flex}.desktop-nav{letter-spacing:.11em;text-transform:uppercase;gap:34px;margin-left:auto;margin-right:18px;font-size:.76rem;font-weight:600}.desktop-nav a,.footer-column a,.footer-socials a{transition:color .18s}.desktop-nav a:hover,.footer-column a:hover,.footer-socials a:hover{color:var(--sand)}.nav-actions{gap:18px}.nav-contact{text-align:right;border-left:1px solid #ffffff4d;flex-direction:column;gap:3px;padding:11px 0 11px 20px;display:inline-flex}.nav-contact__label{color:var(--sand);letter-spacing:.13em;text-transform:uppercase;font-size:.64rem;font-weight:700}.nav-contact__number{letter-spacing:.04em;font-size:.86rem;font-weight:600}.mobile-menu{display:none;position:relative}.mobile-menu summary{cursor:pointer;flex-direction:column;gap:6px;padding:9px 0;list-style:none;display:flex}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{background:currentColor;width:25px;height:1px;display:block}.mobile-menu__panel{background:var(--ink);width:190px;padding:12px;display:grid;position:absolute;top:44px;right:0;box-shadow:0 18px 36px #0000002e}.mobile-menu__panel a{color:var(--white);letter-spacing:.1em;text-transform:uppercase;padding:12px 8px;font-size:.75rem;font-weight:700}.hero{min-height:100svh;color:var(--white);background:linear-gradient(90deg, var(--hero-overlay-strong) 0%, var(--hero-overlay-mid) 55%, var(--hero-overlay-light) 100%), url(/assets/img/vila-roza-main.jpg) center 42% / cover no-repeat;align-items:stretch;display:flex;position:relative;overflow:hidden}.hero:after{content:"";background:linear-gradient(0deg, var(--hero-overlay-bottom), transparent);pointer-events:none;height:34%;position:absolute;inset:auto 0 0}.hero__inner{z-index:1;flex-direction:column;width:min(1180px,100% - 48px);min-height:100svh;margin:auto;padding:clamp(100px,14vh,170px) 0 clamp(72px,11vh,130px);display:flex;position:relative}.hero__copy{max-width:720px}.eyebrow{color:var(--rose);letter-spacing:.19em;text-transform:uppercase;margin:0 0 18px;font-size:.68rem;font-weight:700;line-height:1.4}.hero .eyebrow{color:var(--sand)}.hero h1{max-width:700px;font-family:var(--serif);letter-spacing:-.055em;margin:0;font-size:clamp(4.6rem,9vw,8.6rem);font-weight:500;line-height:.81}.hero h1 span{color:var(--sand);display:block}.hero__lead{color:#ffffffd6;max-width:390px;margin:34px 0 0;font-size:1rem;line-height:1.7}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.button{letter-spacing:.1em;text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;gap:16px;min-height:50px;padding:0 21px;font-size:.72rem;font-weight:700;transition:background .18s,border-color .18s,color .18s,transform .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--light{background:var(--paper);color:var(--ink)}.button--light:hover{background:var(--sand)}.button--outline{color:var(--white);border-color:#ffffff7a}.button--outline:hover{border-color:var(--white);background:#ffffff17}.button--solid{background:var(--ink);color:var(--white);margin-top:32px}.button--solid:hover{background:var(--rose)}.hero__facts{z-index:2;border-top:1px solid #ffffff52;grid-template-columns:repeat(3,1fr);display:grid;position:absolute;bottom:42px;left:0;right:0}.hero__fact{color:#ffffffc7;letter-spacing:.03em;align-items:baseline;gap:13px;padding:17px 18px 0 0;font-size:.76rem;display:flex}.hero__fact strong{color:var(--sand);font-family:var(--serif);font-size:2rem;font-weight:600;line-height:1}.section{padding:125px 0}.intro-section{background:var(--paper);padding-top:74px}.intro-grid,.experience-grid,.location-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(48px,9vw,140px);display:grid}.intro-visual{padding:0 0 28px 28px;position:relative}.intro-visual:before{border:1px solid var(--sand);content:"";position:absolute;inset:28px 0 0}.intro-visual__media{z-index:1;aspect-ratio:.82;position:relative;overflow:hidden}.intro-visual img{z-index:1;object-fit:cover;width:100%;height:100%;display:block;position:relative}.image-note{z-index:2;background:var(--rose);max-width:168px;color:var(--white);font-family:var(--serif);padding:18px;font-size:1.45rem;line-height:.95;position:absolute;bottom:48px;right:-24px}.section-heading h2,.intro-copy h2,.experience-copy h2,.location-copy h2,.detail-content h1{font-family:var(--serif);letter-spacing:-.045em;margin:0;font-size:clamp(3rem,5vw,5rem);font-weight:500;line-height:.93}.intro-copy>p,.experience-copy>p,.location-copy>p{max-width:475px;color:var(--ink-soft);margin:28px 0 0;font-size:1rem;line-height:1.8}.link-arrow{border-bottom:1px solid var(--ink);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:14px;margin-top:32px;padding-bottom:7px;font-size:.72rem;font-weight:700;display:inline-flex}.link-arrow span{color:var(--rose);font-size:1.1rem}.stat-strip{background:var(--paper-deep)}.stat-strip__grid{grid-template-columns:repeat(3,1fr);display:grid}.stat{border-left:1px solid var(--line);padding:36px 28px}.stat:last-child{border-right:1px solid var(--line)}.stat strong{color:var(--rose);font-family:var(--serif);margin-bottom:8px;font-size:3rem;font-weight:600;line-height:.9;display:block}.stat span{color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;font-weight:700}.stay-section{background:var(--ink);color:var(--white);padding:125px 0 140px}.stay-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:52px;display:grid}.stay-card{background:var(--card);overflow:hidden}.stay-card__media{aspect-ratio:.92;display:block;position:relative;overflow:hidden}.stay-card__media:after{content:"";background:linear-gradient(#0000002e,#0000 48%,#00000070);position:absolute;inset:0}.stay-card__media img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.stay-card:hover .stay-card__media img{transform:scale(1.05)}.stay-card__number,.stay-card__arrow{z-index:1;color:var(--white);position:absolute}.stay-card__number{letter-spacing:.13em;font-size:.68rem;font-weight:700;top:18px;left:20px}.stay-card__arrow{font-size:1.75rem;bottom:15px;right:20px}.stay-card__body{padding:26px 23px 22px}.stay-card__heading{justify-content:space-between;gap:15px;display:flex}.stay-card__type,.stay-card__capacity{color:var(--sand);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.62rem;font-weight:700}.stay-card h3{font-family:var(--serif);margin:9px 0 0;font-size:2.15rem;font-weight:500;line-height:.9}.stay-card__capacity{color:#ffffff9e;white-space:nowrap;padding-top:3px}.stay-card__description{color:#ffffffad;min-height:49px;margin:23px 0 26px;font-size:.86rem;line-height:1.6}.stay-card__footer{color:#ffffff91;letter-spacing:.07em;text-transform:uppercase;border-top:1px solid #ffffff26;align-items:center;gap:12px;padding-top:17px;font-size:.67rem;font-weight:600;display:flex}.stay-card__footer a{color:var(--sand);white-space:nowrap;margin-left:auto}.stay-card__footer a span{color:var(--white);margin-left:4px;font-size:1rem}.property-info-section{background:var(--paper);padding:125px 0}.property-info-heading{grid-template-columns:minmax(0,1fr) minmax(260px,.65fr);align-items:end;gap:60px;margin-bottom:52px;display:grid}.property-info-heading h2{max-width:650px;font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(3.2rem,5.3vw,5.7rem);font-weight:500;line-height:.92}.property-info-heading>p{max-width:430px;color:var(--ink-soft);margin:0 0 4px;font-size:.95rem;line-height:1.8}.property-info-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.property-info-card{background:var(--paper-deep);min-width:0;padding:30px 28px 32px}.property-info-card__label{color:var(--rose);letter-spacing:.15em;text-transform:uppercase;margin:0 0 17px;font-size:.64rem;font-weight:700}.property-info-card h3{font-family:var(--serif);letter-spacing:-.03em;margin:0 0 27px;font-size:clamp(2rem,3vw,3rem);font-weight:500;line-height:.95}.property-info-facts,.property-info-rules,.property-info-list{margin:0;padding:0;list-style:none}.property-info-facts li,.property-info-rules li{border-top:1px solid var(--line);gap:5px;padding:13px 0;display:grid}.property-info-facts strong,.property-info-rules strong{letter-spacing:.09em;text-transform:uppercase;font-size:.7rem}.property-info-facts span,.property-info-rules span{color:var(--ink-soft);font-size:.84rem;line-height:1.55}.property-info-list{gap:13px;display:grid}.property-info-list li{color:var(--ink-soft);gap:9px;font-size:.86rem;line-height:1.5;display:flex}.property-info-list li span{color:var(--rose);flex:none;font-weight:700}.booking-panel{background:var(--ink);color:var(--white);justify-content:space-between;align-items:center;gap:32px;margin-top:16px;padding:32px 36px;display:flex}.booking-panel .eyebrow{color:var(--sand);margin-bottom:12px}.booking-panel h3{max-width:620px;font-family:var(--serif);margin:0;font-size:clamp(1.9rem,3vw,3.1rem);font-weight:500;line-height:.98}.booking-panel .button--solid{background:var(--paper);color:var(--ink);flex:none;margin-top:0}.booking-panel .button--solid:hover{background:var(--sand)}.section-heading--light h2{color:var(--white)}.section-heading--light .eyebrow{color:var(--sand)}.garden-section{background:var(--paper-deep)}.garden-intro{grid-template-columns:minmax(0,1fr) minmax(260px,.62fr);align-items:end;gap:70px;margin-bottom:48px;display:grid}.garden-intro h2{max-width:650px;color:var(--ink);font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(3.2rem,5.3vw,5.7rem);font-weight:500;line-height:.9}.garden-intro>p{max-width:430px;color:var(--ink-soft);margin:0 0 4px;font-size:.95rem;line-height:1.8}.garden-grid{grid-template-rows:300px 250px 320px;grid-template-columns:1.12fr .82fr .82fr;gap:14px;display:grid}.garden-card{background:var(--ink);min-width:0;margin:0;position:relative;overflow:hidden}.garden-card--feature{grid-area:1/1/span 2}.garden-card--tall{grid-area:1/2/span 2}.garden-card--terrace{grid-area:1/3}.garden-card--sign{grid-area:2/3}.garden-card--wide{grid-area:3/1/auto/-1}.garden-card picture,.garden-card img{width:100%;height:100%;display:block}.garden-card img{object-fit:cover;transition:transform .6s}.garden-card:hover img{transform:scale(1.04)}.garden-card:after{content:"";pointer-events:none;background:linear-gradient(#0d191c0a 35%,#0d191cb3 100%);position:absolute;inset:0}.garden-card figcaption{z-index:1;color:var(--white);font-family:var(--serif);font-size:1.35rem;line-height:1;position:absolute;bottom:18px;left:18px;right:18px}.experience-section{background:var(--paper)}.experience-image{position:relative}.experience-image__media{aspect-ratio:1.05;overflow:hidden}.experience-image img{object-fit:cover;width:100%;height:100%;display:block}.experience-image__caption{background:var(--paper);color:var(--ink);letter-spacing:.11em;text-transform:uppercase;padding:11px 15px;font-size:.66rem;font-weight:700;position:absolute;bottom:20px;right:20px}.feature-list{border-top:1px solid var(--line);gap:0;margin-top:36px;display:grid}.feature{border-bottom:1px solid var(--line);grid-template-columns:48px 1fr;gap:17px;padding:20px 0;display:grid}.feature__number{color:var(--rose);font-family:var(--serif);font-size:1.55rem;line-height:1}.feature h3{margin:0 0 5px;font-size:.95rem;font-weight:700}.feature p{color:var(--ink-soft);margin:0;font-size:.83rem;line-height:1.6}.location-section{background:var(--paper-deep);padding-top:30px}.location-grid{align-items:stretch;gap:32px}.location-copy{background:var(--ink);color:var(--white);padding:clamp(34px,5vw,76px)}.location-copy h2{color:var(--white)}.location-copy>p{color:#ffffffb3}.location-address{color:#ffffffb8;border-top:1px solid #fff3;gap:7px;margin-top:38px;padding-top:22px;font-size:.83rem;line-height:1.6;display:grid}.location-address strong{color:var(--sand);letter-spacing:.12em;text-transform:uppercase;font-size:.67rem}.language-note{color:#fff9;letter-spacing:.04em;margin:24px 0 0;font-size:.72rem;line-height:1.6}.location-copy .button{margin-top:30px}.map-frame{background:#c7c4bb;min-height:500px}.map-frame iframe{filter:saturate(.75)contrast(.96);border:0;width:100%;height:100%;min-height:500px;display:block}.cta-banner{min-height:420px;color:var(--white);background:linear-gradient(90deg, var(--cta-overlay-strong), var(--cta-overlay-light)), url(/assets/img/vila-roza-main.jpg) center 60% / cover no-repeat;align-items:center;display:flex;position:relative;overflow:hidden}.cta-banner__content{z-index:1;max-width:600px;padding:85px 0;position:relative}.cta-banner h2{font-family:var(--serif);letter-spacing:-.05em;margin:0;font-size:clamp(3.4rem,6vw,6rem);font-weight:500;line-height:.87}.cta-banner p{color:#ffffffc7;max-width:420px;margin:24px 0 0;line-height:1.7}.cta-banner .button{margin-top:30px}.site-footer{background:var(--ink);color:var(--white);padding:70px 0 24px}.footer-grid{grid-template-columns:1.6fr .75fr 1fr;gap:60px;padding-bottom:75px;display:grid}.brand--footer{color:var(--sand)}.brand--footer span{font-size:1.6rem}.brand--footer strong{font-size:1.25rem}.footer-brand-block>p{color:#ffffff8c;max-width:200px;margin:22px 0 0;font-size:.83rem;line-height:1.7}.footer-column{color:#ffffffb3;align-content:start;gap:11px;font-size:.83rem;display:grid}.footer-label{color:var(--sand);letter-spacing:.15em;text-transform:uppercase;margin:0 0 8px;font-size:.66rem;font-weight:700}.footer-contact span{color:#ffffff73;margin-top:5px;line-height:1.65}.footer-bottom{color:#ffffff6b;letter-spacing:.04em;border-top:1px solid #ffffff29;justify-content:space-between;gap:24px;padding-top:21px;font-size:.69rem;display:flex}.footer-socials{color:#ffffffa3;gap:20px}.detail-page{background:var(--paper)}.detail-hero{padding:90px 0 120px}.detail-layout{grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);align-items:start;gap:clamp(44px,8vw,120px);display:grid}.detail-image-wrap{position:relative}.detail-image-wrap:before{border:1px solid var(--sand);content:"";position:absolute;inset:20px -20px -20px 20px}.detail-image-frame{z-index:1;aspect-ratio:1.02;position:relative;overflow:hidden}.detail-image{z-index:1;object-fit:cover;width:100%;height:100%;display:block;position:relative}.detail-content{padding-top:32px}.detail-content h1{font-size:clamp(3.5rem,6vw,6rem)}.detail-intro{max-width:420px;color:var(--ink-soft);margin:25px 0 0;font-size:1rem;line-height:1.8}.detail-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,1fr);gap:17px;margin:37px 0 32px;padding:20px 0;display:grid}.detail-fact strong{color:var(--rose);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;font-size:.63rem;font-weight:700;display:block}.detail-fact span{font-family:var(--serif);font-size:1.45rem}.amenity-title{letter-spacing:.13em;text-transform:uppercase;margin:0 0 15px;font-size:.68rem;font-weight:700}.amenity-grid{color:var(--ink-soft);grid-template-columns:repeat(2,1fr);gap:9px 20px;font-size:.82rem;display:grid}.detail-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:32px;display:flex}.detail-actions .button--solid{margin-top:0}.detail-call-link{color:var(--rose);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;font-weight:700}.detail-specs{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:90px;padding:28px 0;display:grid}.detail-spec{gap:8px;display:grid}.detail-spec strong{color:var(--rose);letter-spacing:.12em;text-transform:uppercase;font-size:.63rem;font-weight:700}.detail-spec span{color:var(--ink-soft);font-size:.85rem;line-height:1.55}.detail-copy{border-top:1px solid var(--line);max-width:710px;margin:60px 0 0;padding-top:33px}.detail-copy h2{font-family:var(--serif);margin:0 0 18px;font-size:2.7rem;font-weight:500;line-height:1}.detail-copy p{color:var(--ink-soft);margin:0;font-size:1rem;line-height:1.85}.detail-copy h3{letter-spacing:.02em;margin:34px 0 11px;font-size:1rem}.detail-copy ul{color:var(--ink-soft);margin:18px 0 0;padding-left:20px;line-height:1.8}.detail-gallery-section{padding:0 0 120px}.detail-gallery-heading{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(260px,.65fr);align-items:end;gap:60px;margin-bottom:36px;padding-top:33px;display:grid}.detail-gallery-heading h2{max-width:720px;font-family:var(--serif);margin:0;font-size:clamp(2.6rem,5vw,4.6rem);font-weight:500;line-height:.98}.detail-gallery-heading>p{max-width:360px;color:var(--ink-soft);margin:0 0 3px;font-size:.94rem;line-height:1.75}.detail-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.detail-gallery__item{background:var(--ink);min-width:0;margin:0;position:relative;overflow:hidden}.detail-gallery__item--wide{grid-column:1/-1}.detail-gallery__media{aspect-ratio:1.4;overflow:hidden}.detail-gallery__item--wide .detail-gallery__media{aspect-ratio:2.15}.detail-gallery__item img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.detail-gallery__item:hover img{transform:scale(1.025)}.detail-gallery__item figcaption{color:var(--paper);font-family:var(--serif);align-items:baseline;gap:12px;padding:13px 15px 15px;font-size:1.15rem;display:flex}.detail-gallery__item figcaption span{color:var(--gold);font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;font-size:.58rem;font-weight:700}@media (width<=900px){.desktop-nav{display:none}.mobile-menu{display:block}.intro-grid,.experience-grid,.location-grid,.detail-layout{grid-template-columns:1fr;gap:58px}.intro-visual{max-width:580px}.intro-copy{max-width:600px}.stay-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.property-info-heading{grid-template-columns:1fr .75fr;gap:36px}.property-info-grid{grid-template-columns:1fr}.booking-panel{flex-direction:column;align-items:flex-start}.detail-specs{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:62px}.stay-card:last-child{grid-column:1/-1;max-width:calc(50% - 8px)}.garden-intro{grid-template-columns:1fr .75fr;gap:36px}.garden-grid{grid-template-rows:300px 240px 280px 300px;grid-template-columns:repeat(2,minmax(0,1fr))}.garden-card--feature{grid-area:1/1/span 2}.garden-card--tall{grid-area:1/2}.garden-card--terrace{grid-area:2/2}.garden-card--sign{grid-area:3/1}.garden-card--wide{grid-area:4/1/auto/-1}.detail-content{padding-top:0}.detail-image-wrap{max-width:700px}.detail-gallery-heading{grid-template-columns:1fr .75fr;gap:36px}}@media (width<=620px){.container,.hero__inner{width:min(100% - 36px,1180px)}.nav-shell{width:calc(100% - 36px);min-height:80px}.nav-contact{display:none}.hero{background-position:59%;min-height:100svh}.hero__inner{padding-top:142px;padding-bottom:155px}.hero h1{font-size:clamp(4.5rem,19vw,6.8rem)}.hero__lead{margin-top:25px;font-size:.9rem}.hero__facts{bottom:28px}.hero__fact{padding-top:13px;font-size:.62rem;display:block}.hero__fact strong{margin-bottom:5px;font-size:1.7rem;display:block}.section,.stay-section,.property-info-section{padding:84px 0}.intro-section{padding-top:56px}.property-info-heading{grid-template-columns:1fr;gap:26px;margin-bottom:36px}.property-info-heading h2{font-size:3.5rem}.property-info-card{padding:26px 22px 28px}.booking-panel{gap:24px;padding:28px 22px}.section-heading h2,.intro-copy h2,.experience-copy h2,.location-copy h2{font-size:3.5rem}.garden-intro{grid-template-columns:1fr;gap:22px;margin-bottom:32px}.garden-intro h2{font-size:3.5rem}.garden-grid{grid-template-rows:none;grid-template-columns:1fr;gap:12px}.garden-card,.garden-card--feature,.garden-card--tall,.garden-card--terrace,.garden-card--sign,.garden-card--wide{grid-area:auto;min-height:300px}.garden-card--feature,.garden-card--tall,.garden-card--wide{min-height:380px}.intro-visual{padding-left:16px}.image-note{font-size:1.2rem;bottom:30px;right:-10px}.stat-strip__grid,.stay-grid,.footer-grid{grid-template-columns:1fr}.stat,.stat:last-child{border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.stat:last-child{border-bottom:0}.stay-card:last-child{grid-column:auto;max-width:none}.stay-card__media{aspect-ratio:1.08}.detail-specs{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px;margin-top:58px}.experience-grid{gap:42px}.location-section{padding-top:0}.location-copy{padding:42px 28px}.map-frame,.map-frame iframe{min-height:360px}.cta-banner__content{padding:76px 0}.footer-grid{gap:42px;padding-bottom:48px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:15px}.detail-hero{padding:62px 0 80px}.detail-content h1{font-size:4.25rem}.detail-copy{margin-top:60px}.detail-gallery-section{padding-bottom:80px}.detail-gallery-heading{grid-template-columns:1fr;gap:18px;margin-bottom:24px}.detail-gallery{grid-template-columns:1fr}.detail-gallery__item--wide{grid-column:auto}.detail-gallery__item--wide .detail-gallery__media,.detail-gallery__media{aspect-ratio:1.15}}
