:root{--paper:#f0eee6;--surface:#faf8f2;--ink:#19382e;--muted:#5e6a63;--line:rgba(25,56,46,.2);--accent:#d9c79f;--dark:#19382e;color:var(--ink);background:var(--paper);font-family:'DM Sans',Arial,sans-serif;font-synthesis:none;scroll-behavior:smooth;scroll-padding-top:105px}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);color-scheme:light}body[data-light=night]{color-scheme:dark}:root[data-light=night],body[data-light=night]{--paper:#182822;--surface:#21352c;--ink:#f0eee6;--muted:#b9c5bc;--line:rgba(241,239,231,.2)}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer;background:none;border:0}button,a{-webkit-tap-highlight-color:transparent}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #a99364;outline-offset:5px}img,video{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Italiana',Georgia,serif;font-weight:400}h2{font-size:clamp(38px,4.5vw,68px);line-height:1.1}p{line-height:1.7}svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}[data-icon]{display:inline-flex;align-items:center}[hidden]{display:none!important}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:500;line-height:1.5}.fine{font-size:13px;line-height:1.6;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:52px;padding:15px 24px;background:var(--ink);color:var(--paper);font-size:14px;border:1px solid var(--ink);transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button.outline{color:var(--ink);background:transparent;border-color:var(--line)}.glass{color:#fff;background:rgba(23,42,33,.3);border:1px solid rgba(255,255,255,.4);backdrop-filter:blur(12px)}.text-link{display:inline-flex;align-items:center;gap:14px;font-size:14px;padding-block:8px;border-bottom:1px solid currentColor}.skip{position:fixed;left:15px;top:-100px;z-index:100;padding:15px;background:var(--paper)}.skip:focus{top:15px}.section{padding:110px 6%}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:42px}.section-heading .eyebrow{margin-bottom:18px}.section-heading>p{max-width:380px;color:var(--muted)}.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:1;transform:none}.js-motion .reveal.seen{animation:section-arrive .7s ease both}@keyframes section-arrive{from{transform:translateY(22px)}to{transform:none}}
header{position:fixed;inset:0 0 auto;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:24px 4%;color:#fff;transition:background .25s,color .25s,padding .25s}header.solid{background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);padding-block:17px}.brand{display:flex;flex-direction:column;gap:7px}.brand>span{font-family:'Italiana',Georgia,serif;font-size:35px;line-height:1;letter-spacing:.08em}.brand small{font-size:10px;letter-spacing:.15em}.brand-dot{color:var(--accent)}header nav{display:flex;gap:27px;font-size:14px}header nav a{padding:12px 0}.header-actions{display:flex;gap:16px;align-items:center}.header-enquire{background:#f0eee6;color:#19382e;border-color:#f0eee6}.light-switch{display:flex;background:rgba(22,45,34,.4);padding:4px;border:1px solid rgba(255,255,255,.5);border-radius:50px;color:white}.solid .light-switch{background:var(--surface);color:var(--ink);border-color:var(--line)}.light-switch span{display:flex;align-items:center;gap:7px;min-height:37px;padding:6px 12px;border-radius:40px;font-size:14px}.light-switch svg{width:18px;height:18px}body[data-light=day] [data-mode=day],body[data-light=night] [data-mode=night]{background:#f0eee6;color:#19382e}.solid .light-switch [data-mode=day]{background:var(--ink);color:var(--paper)}body[data-light=night] .solid .light-switch [data-mode=day]{background:transparent;color:var(--ink)}body[data-light=night] .solid .light-switch [data-mode=night]{background:#f0eee6;color:#19382e}
.hero{height:440svh;background:#19382e}.hero-sticky{height:100svh;position:sticky;top:0;overflow:hidden;color:white}.hero-poster,.hero-canvas,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-poster,.hero-canvas{object-position:50% 48%}.hero-canvas{opacity:0;transition:opacity .6s}.hero-canvas.ready{opacity:1}.hero-shade{background:linear-gradient(180deg,rgba(7,25,17,.4),transparent 38%,rgba(7,25,17,.62)),linear-gradient(90deg,rgba(7,25,17,.25),transparent)}.hero-location{position:absolute;left:4%;top:145px;display:flex;align-items:center;gap:18px}.hero-location>span{display:block;width:28px;height:1px;background:#fff}.hero-copy{position:absolute;bottom:110px;left:6%;max-width:720px}.hero-copy h1{font-size:clamp(62px,7.5vw,116px);line-height:.98;letter-spacing:-.02em;margin:15px 0 22px}.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.6}.hero-buttons{display:flex;align-items:center;gap:27px;margin-top:25px}.hero-buttons .text-link{border-bottom:0}.hero-plan{position:absolute;right:5%;bottom:125px;width:240px;padding:20px;text-align:left}.hero-plan>.eyebrow{font-size:11px}.hero-plan>svg{width:100%;height:auto;margin:18px 0;color:#eee8d9}.hero-plan>span:last-child{display:flex;justify-content:space-between;align-items:center;font-size:14px}.hero-bottom{position:absolute;bottom:27px;left:4%;right:4%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.05em}.scroll-label{display:flex;gap:15px;align-items:center}.scroll-label i{width:32px;height:1px;background:#fff}.hero-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:rgba(255,255,255,.2)}.hero-progress span{display:block;height:100%;background:#d9c79f;transform:scaleX(0);transform-origin:left}.hero-night-note{position:absolute;right:5%;top:148px;font-size:12px;background:rgba(15,32,22,.7);padding:7px 12px;max-width:300px}
.overview .intro{display:grid;grid-template-columns:1.2fr 1fr;column-gap:9%;align-items:end}.intro>.eyebrow{grid-column:1/-1;margin-bottom:24px}.intro>p:last-child{color:var(--muted);max-width:520px}.facts{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;margin:68px 0 30px;padding:30px 0;border-block:1px solid var(--line)}.facts div{display:flex;flex-direction:column-reverse;gap:9px}.facts dt{font-size:14px;color:var(--muted)}.facts dd{font-family:'Italiana',Georgia,serif;font-size:48px;margin:0}.facts dd span{font:16px 'DM Sans',Arial,sans-serif}.intro-foot{display:flex;justify-content:space-between;align-items:center;font-size:14px}.spaces{padding-top:35px}.space-filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:35px}.space-filter button,.pill{padding:10px 17px;border:1px solid var(--line);border-radius:30px;min-height:44px;font-size:14px}.space-filter button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.space-grid{display:grid;grid-template-columns:repeat(var(--space-columns,4),minmax(0,1fr));gap:38px 24px}.space-card{text-align:left;padding:0;width:100%;display:flex;flex-direction:column;align-items:stretch}.space-card .card-image{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--surface)}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s,opacity .3s}.space-card:hover img{transform:scale(1.035)}.card-image>.card-arrow{position:absolute;bottom:16px;right:16px;background:rgba(240,238,230,.92);color:#19382e;width:40px;height:40px;display:grid;place-items:center;border-radius:50%}.card-night{position:absolute;top:12px;left:12px;padding:5px 8px;font-size:11px;letter-spacing:.04em;background:rgba(15,31,23,.82);color:white}.space-card h3{font-size:31px;margin:17px 0 6px}.space-card p{font-size:14px;color:var(--muted)}.space-card .card-meta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:15px;padding-top:12px;font-size:12px;color:var(--muted)}.gallery-note{margin-top:30px;font-size:13px;color:var(--muted)}
.evening{display:grid;grid-template-columns:1.2fr 1fr;background:var(--dark);color:#f0eee6}.evening-image{position:relative;min-height:540px}.evening-image img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0;transition:opacity .3s}.media-label{position:absolute;bottom:18px;left:18px;font-size:11px;letter-spacing:.08em;padding:7px 10px;color:white;background:rgba(12,29,21,.8)}.evening-copy{padding:80px 12%;align-self:center}.evening-copy .eyebrow{color:#cfbe9b;margin-bottom:25px}.evening-copy h2{font-size:clamp(39px,4vw,62px)}.evening-copy>p:not(.eyebrow){margin-top:25px;color:#c7d1c8}.evening-copy .button{background:#f0eee6;color:#19382e;margin-top:30px}.evening-copy .fine{font-size:12px!important;color:#aebeb2!important}
.layout-shell{display:grid;grid-template-columns:1fr 270px;border:1px solid var(--line);background:var(--surface)}.plan-view{padding:32px;min-width:0}.plan-tabs{display:flex;gap:8px;margin-bottom:25px}.plan-tabs button{padding:12px 17px;border-bottom:1px solid var(--line);font-size:14px}.plan-tabs button.active{border-color:var(--ink);font-weight:600}.floorplan-svg{width:100%;height:auto;min-height:280px;stroke:var(--ink)}.floorplan-svg text{stroke:none;fill:var(--ink);font:18px 'DM Sans',sans-serif}.floorplan-svg .small{font-size:14px;fill:var(--muted)}.plan-block{fill:var(--paper);stroke:var(--ink);stroke-width:1.2}.plan-garden{fill:#6a8b6940;stroke:var(--line)}.plan-water{fill:#418d9230;stroke:#497a75}.plan-hotspot{cursor:pointer}.plan-hotspot:hover .plan-block,.plan-hotspot:focus .plan-block{fill:#d9c79f50;stroke-width:3}.plan-number{fill:var(--ink);stroke:none}.floorplan-svg .number{fill:var(--paper);font-size:15px;font-weight:500}.plan-aside{border-left:1px solid var(--line);padding:30px 22px}.plan-aside>.eyebrow{color:var(--muted)}#plan-list{margin:20px 0}#plan-list button{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;border-bottom:1px solid var(--line);padding:16px 0;font-size:14px}.plan-aside .text-link{font-size:13px}.plan-view>.fine{margin-top:20px}.details-section{padding-top:0}.details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.detail-image{position:relative}.details-grid img{width:100%;aspect-ratio:4/5;object-fit:cover}.details-grid h3{font-size:32px;margin:25px 0 14px}.details-grid p{font-size:15px;color:var(--muted)}
.location{color:var(--ink);border-block:1px solid var(--line);display:grid;grid-template-columns:1fr 1.1fr;gap:10%;background:var(--surface)}.location-intro h2{margin:22px 0}.location-intro>p{margin-bottom:22px}.location-intro .button{margin-top:7px}.area-list{align-self:center}.area-item{display:grid;grid-template-columns:35px 1fr 26px;align-items:center;gap:15px;padding:23px 0;border-bottom:1px solid var(--line)}.area-item:first-child{border-top:1px solid var(--line)}.area-item>.number{font-size:12px;color:var(--muted)}.area-item strong{font-weight:450;font-size:20px}.area-item small{display:block;color:var(--muted);font-size:13px;margin-top:5px}.area-item:hover strong{text-decoration:underline;text-underline-offset:5px}.questions{display:grid;grid-template-columns:1fr 1.2fr;gap:8%}.questions h2{margin-top:20px}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:25px;padding:23px 0;cursor:pointer;font-size:16px}.faq summary::-webkit-details-marker{display:none}.faq details p{padding:0 30px 24px 0;color:var(--muted);font-size:15px}.faq details[open] summary svg{transform:rotate(45deg)}
.contact{background:#19382e;color:#f0eee6;display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.contact h2{margin:23px 0;font-size:clamp(43px,4.7vw,70px)}.contact-intro>p:not(.eyebrow){max-width:400px;color:#c0cfc4}.contact-wordmark{font-family:'Italiana',Georgia,serif;font-size:29px;margin-top:70px}.contact-wordmark span{display:block;font:11px 'DM Sans',sans-serif;letter-spacing:.2em;margin-top:12px}form{display:grid;gap:21px}label{display:flex;flex-direction:column;gap:10px;font-size:14px}input,select,textarea{width:100%;padding:13px 0;background:transparent;border:0;border-bottom:1px solid #ffffff45;color:inherit;border-radius:0;resize:vertical;font-size:16px}input::placeholder,textarea::placeholder{color:#bbc7be}select option{background:#19382e;color:white}.contact-submit{background:#f0eee6;color:#19382e;border-color:#f0eee6}.contact .fine{color:#b3c5b8;font-size:12px}#enquiry-status,#share-status{font-size:14px;line-height:1.6}footer{padding:45px 6%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center;font-size:14px}footer>a:last-of-type{justify-self:end;display:flex;align-items:center;gap:15px}footer>.fine{grid-column:1/-1;border-top:1px solid var(--line);padding-top:25px;font-size:12px}.mobile-enquire{display:none}
dialog{border:0;padding:0;background:var(--paper);color:var(--ink);max-height:94svh;max-width:94vw;box-shadow:0 20px 90px #0007}dialog::backdrop{background:rgba(5,20,12,.78);backdrop-filter:blur(5px)}.icon-button{width:44px;height:44px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.icon-button:hover{background:var(--surface)}.gallery-dialog{width:1300px}.dialog-top{display:flex;justify-content:space-between;align-items:center;padding:17px 24px;border-bottom:1px solid var(--line)}.dialog-tools{display:flex;gap:10px;align-items:center}.gallery-body{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr)}.gallery-photo-wrap{position:relative;background:#0f1b15;min-height:580px;display:flex;align-items:center;justify-content:center;overflow:auto}.gallery-photo-wrap>img{max-height:74svh;width:100%;object-fit:contain}.gallery-photo-wrap.zoomed{display:block}.gallery-photo-wrap.zoomed>img{width:150%;max-width:none;max-height:none;object-fit:contain;cursor:zoom-out}.photo-prev,.photo-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(240,238,230,.92);color:#19382e;border:0}.photo-prev{left:16px}.photo-next{right:16px}.photo-count{position:absolute;right:18px;bottom:22px;color:white;font-size:12px;background:#102317b3;padding:6px 10px}.gallery-copy{padding:35px 30px;overflow:auto;max-height:77svh}.gallery-copy h2{font-size:45px;margin-bottom:22px}.gallery-copy>p{font-size:15px;color:var(--muted)}.gallery-copy ul{padding:0;list-style:none;margin:25px 0;font-size:14px}.gallery-copy li{padding:12px 0;border-block-start:1px solid var(--line)}.gallery-thumbs{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.gallery-thumbs button{padding:0;width:65px;height:65px;border:2px solid transparent}.gallery-thumbs button.active{border-color:var(--ink)}.gallery-thumbs img{width:100%;height:100%;object-fit:cover}.gallery-copy .button{width:100%;font-size:13px;padding-inline:14px}.gallery-copy .fine{margin-top:18px;font-size:12px}.film-dialog{width:1200px;background:#0e1c15;color:white}.film-dialog>button{position:absolute;z-index:3;right:16px;top:16px;color:white;background:#132b20c9;border-color:#ffffff80}.film-dialog video{width:100%;max-height:80svh}.film-dialog>p{padding:17px 24px;font-size:14px}.share-dialog{width:560px;padding:40px}.share-dialog>.icon-button{float:right}.share-dialog h2{font-size:43px;margin:20px 0}.share-dialog>p:not(.eyebrow){font-size:14px;color:var(--muted)}.share-dialog textarea{border:1px solid var(--line);padding:15px;margin:22px 0;font-size:14px;min-height:220px;color:var(--ink)}.share-dialog>div{display:flex;gap:10px;flex-wrap:wrap}.share-dialog .button{font-size:14px;padding:12px 15px}
@media(min-width:1700px){.section{padding-inline:max(6%,calc((100vw - 1500px)/2))}.hero-copy{left:max(6%,calc((100vw - 1500px)/2))}}
@media(max-width:1050px){header nav{display:none}.section{padding:80px 5%}.hero-copy h1{font-size:85px}.hero-plan{width:190px;right:4%}.hero-copy{left:5%}.space-grid{grid-template-columns:repeat(2,1fr)}.evening-copy{padding:55px 8%}.layout-shell{grid-template-columns:1fr 230px}.plan-view{padding:22px}.gallery-photo-wrap{min-height:440px}.gallery-copy{padding:25px 20px}.gallery-copy h2{font-size:35px}.section-heading>p{max-width:320px}}
@media(max-width:700px){:root{scroll-padding-top:95px}.section{padding:65px 22px}header{padding:18px 20px}header.solid{padding:15px 20px}.brand>span{font-size:29px}.brand small{font-size:9px;letter-spacing:.07em}.header-actions{gap:0}.header-enquire{display:none}.light-switch span{min-height:33px;padding:6px 10px;font-size:13px}.light-switch svg{width:17px}.hero{height:420svh}.hero-location{left:22px;top:115px;font-size:10px;gap:10px}.hero-location>span{width:18px}.hero-copy{left:24px;right:24px;bottom:105px}.hero-copy .eyebrow{font-size:11px}.hero-copy h1{font-size:clamp(62px,15vw,85px);margin-top:15px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-buttons{gap:18px;flex-wrap:wrap}.hero-buttons .button{padding:13px 16px;gap:10px;min-height:47px;font-size:13px}.hero-buttons .text-link{font-size:13px;gap:7px}.hero-plan{display:none}.hero-bottom{left:24px;right:24px;bottom:36px;font-size:10px}.hero-bottom>span:last-child{display:none}.hero-bottom #hero-state{max-width:140px;text-align:right}.hero-night-note{top:147px;left:22px;right:auto;max-width:300px;font-size:11px}.overview .intro{display:block}.intro>.eyebrow{margin-bottom:20px}.intro h2{font-size:43px;margin-bottom:25px}.intro>p:last-child{font-size:16px}.facts{grid-template-columns:repeat(3,1fr);gap:28px 12px;margin-top:35px}.facts dd{font-size:36px}.facts dd span{font-size:13px}.facts dt{font-size:12px}.intro-foot{align-items:start;gap:17px;flex-direction:column}.intro-foot>span{font-size:13px}.spaces{padding-top:10px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:43px}.section-heading>p{margin-top:22px;max-width:100%;font-size:15px}.space-filter{flex-wrap:nowrap;overflow:auto;padding-bottom:8px;margin-right:-22px;scrollbar-width:thin}.space-filter button{flex-shrink:0;font-size:13px;padding:9px 15px}.space-grid{gap:28px 14px}.space-card h3{font-size:25px;margin-top:13px}.space-card p{font-size:13px;line-height:1.5}.card-image>.card-arrow{width:30px;height:30px;bottom:10px;right:10px}.card-image>.card-arrow svg{width:17px}.space-card .card-meta{font-size:11px;gap:7px;line-height:1.5}.card-night{font-size:9px;top:7px;left:7px;padding:4px 6px}.gallery-note{font-size:12px}.evening{grid-template-columns:1fr}.evening-image{min-height:0;aspect-ratio:4/3}.evening-copy{padding:40px 24px 50px}.evening-copy h2{font-size:44px}.evening-copy>p:not(.eyebrow){font-size:15px}.layout-shell{grid-template-columns:1fr}.plan-view{padding:19px 12px}.floorplan-svg{min-height:220px}.plan-tabs{justify-content:center}.plan-view>.fine{padding-inline:9px;font-size:12px}.plan-aside{border-left:0;border-top:1px solid var(--line);padding:25px 20px}#plan-list{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.details-section{padding-top:10px}.details-grid{grid-template-columns:1fr;gap:35px}.details-grid article{display:grid;grid-template-columns:42% 1fr;gap:0 20px;align-items:start}.details-grid .detail-image{grid-row:1/3}.details-grid img{aspect-ratio:3/4}.details-grid h3{font-size:29px;margin:5px 0 15px}.details-grid p{font-size:14px}.location{grid-template-columns:1fr;gap:30px}.location-intro h2{font-size:45px}.area-item strong{font-size:19px}.questions{grid-template-columns:1fr;gap:25px}.questions h2{font-size:43px}.faq summary{font-size:15px;line-height:1.5}.contact{grid-template-columns:1fr;gap:38px}.contact h2{font-size:47px}.contact-wordmark{display:none}.contact form{gap:20px}footer{grid-template-columns:1fr 1fr;padding:35px 22px 100px;gap:25px}footer>p:not(.fine){font-size:12px}footer>a:last-of-type{justify-self:start;font-size:13px;grid-column:1/-1}footer>.fine{font-size:12px}.mobile-enquire{position:fixed;z-index:25;bottom:0;left:0;right:0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);display:flex;gap:12px;transform:translateY(110%);transition:transform .25s}.mobile-enquire.visible{transform:translateY(0)}.mobile-enquire a{flex:1;display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:var(--paper);padding:13px 17px;font-size:14px}.mobile-enquire button{display:flex;gap:8px;align-items:center;font-size:14px;padding:8px}.gallery-dialog{max-width:100vw;max-height:100svh;width:100vw;height:100svh;margin:0}.dialog-top{padding:12px 16px;position:sticky;top:0;z-index:2;background:var(--paper)}.dialog-top>.eyebrow{font-size:10px}.dialog-tools{gap:7px}.dialog-tools .pill{font-size:12px;padding:8px 10px;min-height:40px}.dialog-tools .icon-button{width:39px;height:39px}.gallery-body{display:block}.gallery-photo-wrap{min-height:0;height:47svh}.gallery-photo-wrap>img{height:100%;max-height:none;object-fit:contain}.gallery-photo-wrap.zoomed>img{height:auto;min-height:100%;width:180%}.gallery-copy{padding:25px 24px;max-height:none;overflow:visible}.gallery-copy h2{font-size:39px}.photo-prev,.photo-next{width:36px;height:36px}.photo-prev{left:10px}.photo-next{right:10px}.media-label{font-size:9px;left:10px;bottom:12px}.photo-count{right:10px;bottom:12px;font-size:11px}.film-dialog{max-width:100vw}.share-dialog{padding:28px 22px;max-width:94vw}.share-dialog h2{font-size:38px}}
@media(max-width:370px){.space-grid{grid-template-columns:1fr}.hero-copy h1{font-size:59px}.hero-buttons{gap:8px}.hero-buttons .button{font-size:12px}.brand small{font-size:8px}.light-switch span{padding-inline:8px}.section-heading h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.js-motion .reveal{opacity:1;transform:none}.hero{height:100svh}}

.hero-poster-night{opacity:0;transition:opacity .45s}body[data-light=night] .hero-poster-night{opacity:1}.film-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 24px}.film-footer p{font-size:13px;line-height:1.5}.film-footer .pill{color:#f0eee6;border-color:#ffffff60;flex-shrink:0}.detail-image .media-label{font-size:9px;bottom:10px;left:10px}.hero-canvas{pointer-events:none}@media(max-width:700px){.film-footer{padding:14px 16px;gap:12px}.film-footer p{font-size:11px}.film-footer .pill{font-size:12px;padding-inline:12px}.detail-image .media-label{font-size:8px;padding:5px;left:5px;bottom:5px}}

.film-options{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:700px){.film-footer{flex-wrap:wrap}.film-options{width:100%}.film-options .pill{flex:1}}

.photo-light-switch{display:flex;align-items:center;padding:3px!important;gap:2px;min-height:40px!important}.photo-light-switch span{padding:7px 11px;border-radius:30px;font-size:13px}.photo-light-switch[data-light=day] [data-photo-mode=day],.photo-light-switch[data-light=night] [data-photo-mode=night]{background:var(--ink);color:var(--paper)}

@media(min-width:1051px){.space-card h3{font-size:clamp(25px,2.15vw,32px);min-height:2.2em;line-height:1.1}.space-card>p{min-height:3.4em}.space-card .card-meta{margin-top:auto;padding-top:12px}.space-grid[data-count="1"]{max-width:600px}.space-grid[data-count="2"]{max-width:1050px}}@media(min-width:701px) and (max-width:1050px){.space-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.space-grid[data-count="3"] .space-card:last-child{grid-column:1/-1}.space-card .card-meta{margin-top:auto}.space-card>p{padding-bottom:12px}}

/* Align incoming day/night footage before fading it over the previous frame. */
.hero-shade,.hero-location,.hero-copy,.hero-plan,.hero-bottom,.hero-progress,.hero-night-note{z-index:3}.hero-canvas{transition:opacity .6s ease-in-out}.film-stage{position:relative;background:#0e1c15;line-height:0}.film-stage video{display:block;aspect-ratio:16/9;object-fit:contain}.film-stage canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;opacity:0;transition:opacity .45s ease-in-out}.film-stage canvas.holding{opacity:1;transition:none}
@media(prefers-reduced-motion:reduce){.hero-canvas,.film-stage canvas{transition:none}}

/* An explicit start remains available when motion/data preferences pause the tour. */
.hero.is-still{height:100svh}.hero.scroll-enabled{height:440svh}.start-scroll-tour{display:inline-flex;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid #ffffff80;color:white;font-size:13px}.start-scroll-tour svg{width:16px;height:16px}@media(max-width:700px){.hero.scroll-enabled{height:420svh}}

/* Keep blue-hour grounds visible while retaining contrast behind the hero copy. */
body[data-light=night] .hero-shade{background:linear-gradient(180deg,rgba(7,25,17,.24),transparent 38%,rgba(7,25,17,.48)),linear-gradient(90deg,rgba(7,25,17,.14),transparent)}

/* Resolve inherited colour on the themed element, including native buttons. */
body{color:var(--ink);background:var(--paper)}
.layout-shell,.plan-tabs,.plan-aside,#plan-list button{color:var(--ink)}
[hidden]{display:none!important}

/* Fit the descriptive sales heading on smaller screens. */
.hero-copy h1{font-size:clamp(48px,6.4vw,98px)}
@media(max-width:700px){.hero-copy h1{font-size:clamp(40px,10.5vw,64px)}}

/* Resolve section text against the active theme, independent of root inheritance. */
.overview,.spaces,.layout,.details-section,.questions,footer,.space-card{color:var(--ink)}
