@font-face{font-family:Noticia;src:url('./assets/noticia-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Montserrat;src:url('./assets/montserrat.woff') format('woff');font-style:normal;font-weight:100 900;font-display:swap}
:root{--wine:#7e2226;--deep:#641b1e;--cream:#ffe5c4;--paper:#fff;--beige:#f2ece3;--ink:#2a2422;--soft:#594e4b;--line:#ded8ce;--serif:Noticia,Georgia,serif;--sans:Montserrat,Arial,sans-serif;--display:clamp(46px,5.4vw,80px);--section-display:clamp(40px,4vw,56px);--body:16px;--label:12px;--header-height:80px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--body)/1.5 var(--sans)}
h1,h2,p,figure,dl,dd{margin:0}
h1{font:400 var(--display)/1.08 var(--serif);letter-spacing:0;font-kerning:normal}
h2{font:400 var(--section-display)/1.12 var(--serif);letter-spacing:-.025em}
h1 span,h2 span{display:block}
h1 span+span{color:var(--cream)}
h2 span+span{color:var(--wine)}
a{color:inherit;text-decoration:none}
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:2px solid currentColor;outline-offset:5px}
img,svg{display:block;max-width:100%}
.icon-library{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.illustrated-icon{display:block;flex:none;overflow:visible;color:inherit}
.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}
.eyebrow{font:400 var(--label)/1.5 var(--sans);letter-spacing:.15em;text-transform:uppercase}
.skip{position:fixed;top:10px;left:10px;z-index:10;transform:translateY(-180%);color:var(--ink);background:var(--cream);padding:10px 16px}
.skip:focus{transform:none}
.site-header{position:relative;z-index:10;height:var(--header-height);background:var(--wine);color:var(--paper)}
.masthead{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #ffe5c42b}
.logo{flex:none}
.logo img{width:136px;height:auto}
nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,32px);font-size:14px}
nav a{transition:color .2s}
nav a:hover{color:var(--cream)}
.menu-toggle{display:inline-flex;align-items:center;gap:10px;min-height:40px;padding:8px 12px;border:1px solid #ffe5c44d;background:transparent;color:inherit;font:400 14px/1.5 var(--sans);cursor:pointer}
.menu-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round}
.menu-toggle[aria-expanded=false] .menu-close-icon,.menu-toggle[aria-expanded=true] .menu-open-icon{display:none}
.header-contact{display:flex;align-items:center;gap:10px}
.header-contact svg,.cta svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
.hero{--hero-top:clamp(32px,5svh,56px);--hero-label-gap:24px;position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:40px;height:calc(100svh - var(--header-height));padding:var(--hero-top) max(56px,calc((100% - 1320px)/2));background:var(--wine);color:var(--paper)}
.hero-copy{position:relative;z-index:2;min-width:0}
.hero-copy>.eyebrow{color:var(--cream);margin-bottom:var(--hero-label-gap)}
.hero h1 span{white-space:nowrap}
.hero-summary{display:grid;gap:10px;margin-top:clamp(44px,6svh,64px);font:400 var(--body)/1.5 var(--sans);max-width:500px}
.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:11px 22px;background:var(--wine);color:var(--paper);font:400 var(--body)/1.5 var(--sans);border:1px solid transparent;transition:background-color .24s,transform .24s}
.cta:hover{background:var(--deep);transform:translateY(-2px)}
.hero-copy>.cta{margin-top:clamp(48px,7svh,72px)}
.hero-tagline{margin:0;font:inherit;color:inherit;text-wrap:pretty}
.hero-price{color:var(--paper)}
.hero-cta{background:#fff;color:var(--wine)}
.hero-cta:hover{background:#f6f2ed}
.hero-side{position:absolute;inset:0 0 0 54%;min-width:0}
.hero-return{position:absolute;z-index:2;right:max(56px,calc((100vw - 1320px)/2));top:calc(var(--hero-top) + var(--label)*1.5 + var(--hero-label-gap));display:grid;gap:8px;color:var(--cream)}
.hero-return-value{font:400 var(--display)/1.08 var(--serif);letter-spacing:-.025em}
.hero-return-label{font:400 var(--body)/1.45 var(--sans);color:#fff}
.hero-art{position:absolute;inset:0;pointer-events:none;overflow:visible}
.brand-illustration{position:absolute;right:-2%;bottom:0;width:132%;height:70%;max-width:none;object-fit:contain;object-position:right bottom}
.terms{--terms-gap:clamp(40px,5vw,72px);background:var(--cream);color:var(--wine)}
.terms-inner{display:flex;align-items:center;gap:24px;height:56px}
.terms-window{flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.terms-window::-webkit-scrollbar{display:none}
.terms-list{display:flex;align-items:center;gap:var(--terms-gap);list-style:none;padding:0;margin:0;white-space:nowrap;font:400 var(--body)/1.5 var(--sans)}
.terms-list li{display:flex;align-items:center;gap:14px;flex:none}
.term-icon{width:30px;height:30px}
.terms.is-running .terms-window{overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 2%,#000 98%,transparent)}
.terms.is-running .terms-track{display:flex;width:max-content;animation:terms-scroll 38s linear infinite}
.terms.is-running .terms-list{flex:none;padding-inline-end:var(--terms-gap)}
.terms:not(.is-running) .terms-list[aria-hidden=true]{display:none}
@keyframes terms-scroll{to{transform:translateX(-33.3333333333%)}}
.motion-toggle{display:grid;place-items:center;flex:none;width:30px;height:30px;padding:6px;border:1px solid #7e22264d;background:transparent;color:inherit;cursor:pointer}
.motion-toggle:hover{background:#7e22260a}
.motion-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.motion-toggle[aria-pressed=false] .pause-icon,.motion-toggle[aria-pressed=true] .play-icon,[hidden]{display:none!important}
.content-section{scroll-margin-top:24px;background:var(--paper)}
.section-beige{background:var(--beige)}
.section-inner{padding-block:clamp(64px,6.8vw,100px)}
.about-inner{padding-top:clamp(48px,5vw,68px)}
.section-inner>.eyebrow{color:var(--wine);margin-bottom:24px}
.section-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(40px,5vw,80px);align-items:start}
.section-grid.long-copy-layout{row-gap:0}
.long-copy-layout h2,.long-copy-layout .section-copy{grid-column:1;min-width:0}
.long-copy-layout .section-copy{margin-top:36px;grid-template-columns:minmax(0,1fr);gap:20px}
.opportunity{position:relative;isolation:isolate;overflow:hidden}
.opportunity>.wrap{position:relative;z-index:1}
.opportunity-art{position:absolute;inset:0 0 0 64%;overflow:hidden;pointer-events:none}
.opportunity-art img{position:absolute;right:0;bottom:0;width:100%;height:100%;max-width:none;object-fit:contain;object-position:right bottom}
.scenic-banner{height:clamp(140px,14vw,210px);overflow:hidden;background:#dce0df}
.scenic-banner img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 68%}

.section-copy{display:grid;gap:12px;color:var(--soft);line-height:1.45;min-width:0}
.section-grid:not(.long-copy-layout)>h2+.section-copy{padding-top:calc(var(--section-display)*.18)}
.section-copy a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.section-copy a:hover{text-decoration-thickness:2px}
.project-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}
.project-stat{min-width:0}
.stat-number{font:400 var(--section-display)/1.12 var(--serif);letter-spacing:-.025em;white-space:nowrap;color:var(--wine)}
.project-stat dd{max-width:300px;margin:16px 0 0;color:var(--soft);font:400 var(--body)/1.5 var(--sans);letter-spacing:normal;text-transform:none}
.section-grid.growth-details{margin-top:36px;row-gap:0}
.growth-copy{grid-column:1}
.growth-grid,.long-copy-layout{grid-template-columns:minmax(0,1.7fr) minmax(0,.9fr)}
.section-wine{background:var(--wine);color:var(--paper)}
.section-wine .section-inner>.eyebrow,.section-wine h2 span+span{color:var(--cream)}
.section-wine .section-copy,.section-wine .investment-volume dd{color:#ffffffeb}
.section-wine .investment-volume dt a{color:var(--cream)}
.section-wine .investment-volume dt a:hover{color:#fff}
.section-wine .growth-details,.section-wine .infrastructure-list li{border-color:#ffe5c436}
 .section-wine .cta{background:#fff;color:var(--wine)}
.section-wine .cta:hover{background:#f6f2ed}
.section-wine .infrastructure-label{color:var(--cream)}
.investment-volume{min-width:0}
.investment-volume dt a{display:inline-flex;align-items:baseline;gap:.14em;color:var(--wine);font:400 var(--section-display)/1.12 var(--serif);letter-spacing:-.025em;white-space:nowrap;border-bottom:1px solid #ffe5c480;padding-bottom:.10em;transition:color .2s,border-color .2s}
.volume-source-arrow{width:.46em;height:.46em;margin-left:.22em;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.investment-volume dt a:hover{border-bottom-color:currentColor}
.investment-volume dt a:hover .volume-source-arrow{transform:translate(2px,-2px)}
.volume-number,.volume-unit{font:inherit;letter-spacing:inherit}
.investment-volume dd{margin-top:18px;color:var(--soft)}
.infrastructure{grid-column:1/-1;margin-top:40px;padding-top:30px;border-top:1px solid #ffe5c436}
.infrastructure-label{color:var(--wine);margin-bottom:24px;font:400 var(--body)/1.5 var(--sans)}
.infrastructure-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 40px;list-style:none;margin:0;padding:0}
.infrastructure-list li{display:flex;align-items:flex-start;gap:16px;min-width:0}
.infrastructure-list .illustrated-icon{width:44px;height:44px;color:var(--cream);transition:transform .35s cubic-bezier(.2,.65,.3,1)}
.infrastructure-list .snowplow-icon{position:relative;top:-4px}
.infrastructure-list li:hover svg{transform:translateY(-3px) rotate(-4deg)}
.infrastructure-list span{padding-top:4px}
.infrastructure>.cta{margin-top:36px}
.purchase-intro .section-copy{gap:16px}
.purchase-figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:48px;padding-block:32px 36px;border-block:1px solid var(--line)}
.purchase-figure{min-width:0}
.purchase-figure dt{font:400 var(--section-display)/1.12 var(--serif);letter-spacing:-.025em;white-space:nowrap;color:var(--wine)}
.purchase-figure dd{margin-top:16px;color:var(--soft);line-height:1.5;max-width:360px}
.purchase-action{max-width:430px;margin-top:40px;display:grid;gap:18px;justify-items:start}
.purchase-action p{color:var(--soft);line-height:1.5}
.programs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:44px;border-block:1px solid var(--line)}
.income-program{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:32px 40px 36px 0}
.income-program+.income-program{padding-inline:40px 0;border-left:1px solid var(--line)}
.income-program h3{margin:0;font:600 var(--body)/1.5 var(--sans)}
.program-rate{display:flex;align-items:baseline;flex-wrap:wrap;gap:12px;margin-block:20px;color:var(--wine)}
.program-rate strong{font:400 var(--section-display)/1.12 var(--serif);letter-spacing:-.025em;white-space:nowrap}
.program-copy{display:grid;gap:12px;max-width:510px;color:var(--soft);line-height:1.5}
.programs-action{width:min(620px,100%);display:grid;gap:18px;margin-top:32px}
.programs-action .cta{width:100%;min-height:60px;justify-content:center;padding:16px 24px}
.programs-caption{width:100%;color:var(--soft);line-height:1.5}
dialog{width:min(590px,calc(100% - 40px));padding:0;border:1px solid var(--line);background:var(--paper);color:var(--ink);max-height:calc(100% - 40px)}
dialog::backdrop{background:#2e1416b8}
.contact-inner{position:relative;padding:40px}
.close{position:absolute;right:12px;top:12px;margin:0}
.close button{display:grid;place-items:center;width:36px;height:36px;border:0;background:transparent;color:var(--wine);font:400 28px/1 var(--sans);cursor:pointer}
.contact-inner>.eyebrow{color:var(--wine);padding-right:30px}
.contact-inner h2{margin:22px 0 28px}
.contact-inner>p:not(.eyebrow){color:var(--soft)}
#contact{width:min(760px,calc(100% - 40px));max-height:calc(100svh - 32px)}
.has-contact-dialog{overflow:hidden}
.contact-inner h2{margin:18px 0;font-size:clamp(32px,3.8vw,46px)}
#contact-description{max-width:600px;line-height:1.45}
.lead-form{margin-top:26px}
.lead-form [hidden]{display:none!important}
.lead-fields{display:grid;gap:20px}
.form-field{display:grid;gap:9px;min-width:0;color:var(--ink);font:400 var(--body)/1.4 var(--sans)}
.form-field input,.form-field select{width:100%;min-width:0;min-height:50px;padding:12px 14px;border:1px solid var(--line);border-radius:0;background:var(--paper);color:var(--ink);font:400 16px/1.4 var(--sans);transition:border-color .2s,box-shadow .2s}
.form-field input::placeholder{color:#8c817b;opacity:1}
.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--wine);box-shadow:0 0 0 2px #7e222614}
.form-field input[aria-invalid=true],.form-field select[aria-invalid=true]{border-color:var(--wine);box-shadow:0 0 0 1px var(--wine)}
.form-field small{font:400 12px/1.45 var(--sans);color:var(--soft)}
.form-field select{font-size:14px;padding-right:28px;cursor:pointer}
.contact-channels{margin:0;padding:0;border:0;min-width:0}
.contact-channels legend{padding:0;margin-bottom:10px;font:400 var(--body)/1.4 var(--sans)}
.channel-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.channel-options label{position:relative;min-width:0;cursor:pointer}
.channel-options input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.channel-options span{display:grid;place-items:center;min-height:46px;border:1px solid var(--line);font:400 14px/1.4 var(--sans);color:var(--soft);transition:color .2s,background .2s,border-color .2s}
.channel-options input:checked+span{border-color:var(--wine);background:var(--wine);color:var(--paper)}
.channel-options input:focus-visible+span{outline:2px solid var(--wine);outline-offset:3px}
.form-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.form-questions .form-field{grid-template-rows:minmax(40px,auto) auto;align-content:start}
.form-questions .form-field label{align-self:end}
.form-honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.lead-submit,.lead-done{justify-content:center;width:100%;font-family:var(--sans);cursor:pointer}
.lead-submit:disabled{opacity:.6;cursor:wait;transform:none}
.form-note{color:var(--soft);font:400 12px/1.5 var(--sans);margin-top:-7px}
.form-error{color:var(--wine);font:400 14px/1.5 var(--sans)}
.lead-success{display:grid;gap:20px;padding-block:8px;outline:none}
.success-check{width:46px;height:46px;fill:none;stroke:var(--wine);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.lead-success h3{margin:0;font:400 32px/1.15 var(--serif)}
.lead-success-message{color:var(--soft)}
#contact .direct-contact{gap:6px 12px;margin-top:22px;font:400 12px/1.5 var(--sans);color:var(--soft)}
#contact .direct-contact a{color:var(--wine);text-decoration:underline;text-underline-offset:3px}
.direct-contact{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px;color:var(--wine)}
.direct-contact a:hover{text-decoration:underline}
.noscript{padding:20px;text-align:center}
.gallery-grid{--gallery-gap:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gallery-gap);align-items:start}
.gallery-column{display:grid;gap:var(--gallery-gap);min-width:0}
.gallery-column:nth-child(2){padding-top:clamp(40px,6.5vw,88px)}
.gallery-item{min-width:0}
.gallery-open{display:block;position:relative;overflow:hidden;background:#e2ddd4;cursor:zoom-in}
.gallery-open img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.3,1)}
.gallery-column:first-child .gallery-item:first-child img{aspect-ratio:4/3}
.gallery-column:first-child .gallery-item:nth-child(2) img{aspect-ratio:5/4;object-position:58% center}
.gallery-column:nth-child(2) .gallery-item img{aspect-ratio:2/1}
.gallery-open:hover img,.gallery-open:focus-visible img{transform:scale(1.025)}
.gallery-lightbox{width:min(1400px,calc(100vw - 48px));max-width:1400px;max-height:calc(100svh - 48px);border:0;background:var(--beige);overflow:auto}
.gallery-lightbox::backdrop{background:#171010e8}
.gallery-viewer-inner{position:relative;padding:48px 24px 14px}
.gallery-lightbox .close{right:10px;top:5px}
.gallery-full{width:100%;height:min(72svh,820px);object-fit:contain}
.gallery-viewer-footer{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:20px;align-items:center;margin-top:14px}
.gallery-viewer-footer button{width:44px;height:44px;padding:10px;background:transparent;color:var(--wine);border:1px solid #7e22264d;cursor:pointer}
.gallery-viewer-footer button:hover{background:#7e22260a}
.gallery-viewer-footer svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3}
.gallery-viewer-counter{text-align:center;font:400 var(--body)/1.5 var(--sans);color:var(--soft)}
.gallery-landscape img{aspect-ratio:16/9}
@media(max-width:1150px){
 :root{--body:15px;--section-display:clamp(40px,4.7vw,50px)}
 .wrap{width:calc(100% - 72px)}
 .hero{gap:32px;padding-inline:36px}
 .hero-return{right:36px}
 .section-grid{gap:40px}
 .infrastructure-list{gap:28px}
 .purchase-figures{gap:32px}
}
@media(max-width:900px){
 :root{--display:clamp(42px,5.4vw,52px);--section-display:clamp(38px,4.7vw,44px)}
 .wrap{width:calc(100% - 48px)}
 .hero{padding-inline:24px;gap:28px}
 .hero-return{right:24px}
 .hero-return-label{max-width:200px}
 .section-grid{gap:32px}
 .project-stats{gap:28px}
 .infrastructure-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
 .infrastructure-list li{gap:12px}
 .purchase-figures{gap:24px}
 .income-program{padding-right:28px}
 .income-program+.income-program{padding-left:28px}
}
@media(min-width:701px) and (max-height:700px){
 .hero{--hero-top:32px;--hero-label-gap:20px;padding-block:var(--hero-top)}
 .hero-summary{margin-top:42px}
 .hero-copy>.cta{margin-top:48px}
 .cta{min-height:48px}
}
@media(max-width:700px){
 :root{--body:14px;--display:clamp(36px,6.1vw,44px);--section-display:clamp(34px,5.5vw,40px);--label:11px}
 :root{--header-height:64px}
 .logo img{width:96px}
 .masthead{gap:12px}
 .header-contact{gap:7px}
 .header-contact svg{width:16px;height:16px}
 .hero{height:calc(100svh - var(--header-height));grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:28px 24px 0}
 .hero-copy>.eyebrow{margin-bottom:18px}
 .hero h1 span{white-space:normal}
 .hero-summary{margin-top:36px;gap:8px;max-width:440px}
 .hero-copy>.cta{margin-top:38px}
 .hero-side{position:relative;inset:auto;height:100%;min-height:0;width:calc(100% + 48px);margin-left:-24px}
 .hero-return{left:24px;right:auto;top:20px;gap:7px;max-width:118px;text-align:left}
 .hero-return-label{font-size:14px;line-height:1.4}
 .hero-art{inset:0 0 0 142px}
 .brand-illustration{right:0;width:100%;height:100%;object-position:right bottom}
 .section-inner{padding-block:56px}
 .about-inner{padding-top:40px}
 .section-grid{grid-template-columns:1fr;gap:28px}
 .long-copy-layout .section-copy{grid-template-columns:1fr;margin-top:28px;gap:16px}
 .opportunity-art{display:none}
 .project-stats{gap:24px;margin-top:36px;padding-top:28px}
 .project-stat dd{margin-top:12px}
 .investment-volume dd{margin-top:12px}
 .section-grid.growth-details{margin-top:28px}
 .infrastructure{margin-top:32px;padding-top:26px}
 .infrastructure-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
 .infrastructure>.cta{margin-top:30px}
 .section-grid:not(.long-copy-layout)>h2+.section-copy{padding-top:0}
 .purchase-figures{grid-template-columns:1fr;gap:24px;margin-top:32px;padding-block:28px}
 .purchase-figure{display:grid;grid-template-columns:minmax(145px,.9fr) minmax(0,1.1fr);gap:24px;align-items:start}
 .purchase-figure dd{margin-top:2px;max-width:none}
 .purchase-action{margin-top:32px;gap:16px}
 .programs-action{margin-top:28px;gap:16px}
 .programs-grid{grid-template-columns:1fr;margin-top:32px}
 .income-program{padding:28px 0}
 .income-program+.income-program{padding:28px 0;border-left:0;border-top:1px solid var(--line)}
 .program-rate{margin-block:18px}
 .gallery-grid{--gallery-gap:24px;grid-template-columns:1fr}
 .gallery-column:nth-child(2){padding-top:0}
 .gallery-column:nth-child(2) .gallery-item img{aspect-ratio:3/2}
 .gallery-column:nth-child(2) .gallery-landscape img{aspect-ratio:16/9}
 .gallery-lightbox{width:calc(100vw - 24px);max-height:calc(100svh - 24px)}
 .gallery-viewer-inner{padding:44px 12px 12px}
 .gallery-full{height:64svh}
 .gallery-viewer-footer{gap:12px}
 .contact-inner{padding:32px 24px}
}
@media(max-width:450px){
 .wrap{width:calc(100% - 40px)}
 .hero{padding-inline:20px}
 .hero-side{width:calc(100% + 40px);margin-left:-20px}
 .hero-return{left:20px}
 .hero-art{left:126px}
 .hero-copy>.cta{gap:16px;padding-inline:16px}
 .terms-inner{gap:14px}
 .project-stats{grid-template-columns:1fr;gap:24px}
 .project-stat{display:grid;grid-template-columns:92px minmax(0,1fr);gap:20px;align-items:start}
 .project-stat dd{margin-top:0}
 .section-inner>.eyebrow{margin-bottom:20px}
 .infrastructure-list{grid-template-columns:1fr;gap:20px}
 .purchase-figure{grid-template-columns:1fr;gap:10px}
 .purchase-action .cta{width:100%;gap:14px;padding-inline:16px}
}
@media(max-width:700px) and (max-height:700px){
 .hero{padding-top:20px;gap:8px}
 .hero-copy>.eyebrow{margin-bottom:14px}
 .hero-summary{margin-top:clamp(24px,4.7svh,30px)}
 .hero-copy>.cta{margin-top:clamp(24px,5svh,32px)}
 .hero-return{top:12px}
 .cta{min-height:48px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation:none!important;transition:none!important}
 .cta:hover,.investment-volume dt a:hover .volume-source-arrow{transform:none}
}

@media(max-width:600px){
 #contact{width:calc(100% - 24px);max-height:calc(100svh - 24px)}
 #contact .contact-inner{padding:32px 20px 24px}
 #contact .contact-inner h2{margin-block:16px;font-size:34px;padding-right:8px}
 .lead-fields{gap:18px}
 .channel-options{gap:6px}
 .channel-options span{font-size:12px;min-height:44px}
 .form-questions{grid-template-columns:1fr;gap:18px}
 .form-questions .form-field{grid-template-rows:auto auto}
 .form-field select{font-size:16px}
 .lead-submit{padding-inline:12px}
}

.seasons-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:48px}
.season-card{padding:32px 28px;background:var(--wine);border:1px solid var(--wine);min-width:0;transition:transform .3s,border-color .3s}
.season-card h3{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding-bottom:28px;border-bottom:1px solid #ffe5c44d;color:var(--cream);font:400 var(--section-display)/1.12 var(--serif);letter-spacing:-.025em}
.season-card p{margin-top:28px;color:var(--paper);line-height:1.5}
.season-card:hover{transform:translateY(-3px);border-color:var(--deep)}
.seasons-caption{max-width:780px;margin-top:32px;color:var(--soft);line-height:1.5}
@media(max-width:1150px){.seasons-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.season-card{padding:28px}}
@media(max-width:700px){.seasons-grid{margin-top:32px;gap:20px}.season-card{padding:24px}.season-card h3{padding-bottom:20px}.season-card p{margin-top:20px}.seasons-caption{margin-top:24px}}
@media(max-width:500px){.seasons-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.season-card{transition:none}.season-card:hover{transform:none}}
.ownership .section-inner{padding-block:clamp(48px,5vw,72px)}
.ownership .section-copy .cta{justify-self:start;margin-top:12px;color:var(--paper);text-decoration:none}
.form-questions>.form-field:only-child{grid-column:1/-1}

/* Apartment explorer, adapted from the first Goderdzi Time site. */
.interior-gallery .gallery-grid .gallery-column .gallery-item img{height:auto}
#apartment-explorer-root{margin-top:40px}
#apartment-explorer-root button,#apartment-explorer-root select,.apartment-dialog button{font-family:var(--sans)}
.apartment-loading{color:var(--soft);padding-block:32px}
.apartment-search{padding:28px;background:var(--paper);border:1px solid var(--line)}
.apartment-search-fields{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(0,1fr) minmax(0,1.1fr);gap:32px;align-items:start}
.apartment-type-field{display:grid;gap:14px;min-width:0;font:400 14px/1.5 var(--sans)}
.apartment-type-field select{width:100%;min-height:44px;padding:8px 12px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:0;font:400 14px/1.5 var(--sans)}
.apartment-range-field{margin:0;padding:0;border:0;min-width:0}
.apartment-range-field legend{display:flex;flex-wrap:wrap;gap:6px 14px;justify-content:space-between;width:100%;padding:0;font:400 14px/1.5 var(--sans)}
.apartment-range-field output{font:400 13px/1.6 var(--sans);color:var(--soft);white-space:nowrap}
.apartment-range-track{position:relative;height:44px;margin-top:14px}
.apartment-range-track>span{position:absolute;top:21px;inset-inline:0;height:2px;background:linear-gradient(to right,var(--line) 0 var(--range-low),var(--wine) var(--range-low) var(--range-high),var(--line) var(--range-high) 100%)}
.apartment-range-track input{position:absolute;inset:0;width:100%;height:44px;margin:0;appearance:none;-webkit-appearance:none;background:transparent;pointer-events:none;accent-color:var(--wine)}
.apartment-range-track input::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1px solid var(--wine);border-radius:50%;background:var(--paper);pointer-events:auto;cursor:ew-resize}
.apartment-range-track input::-moz-range-thumb{width:18px;height:18px;border:1px solid var(--wine);border-radius:50%;background:var(--paper);pointer-events:auto;cursor:ew-resize}
.apartment-range-track input:focus-visible{outline:0}
.apartment-range-track input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px #7e222633}
.apartment-search-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:20px;font:400 13px/1.5 var(--sans);color:var(--soft)}
.apartment-search-bottom label{display:flex;align-items:center;gap:9px;cursor:pointer}
.apartment-search-bottom input{width:17px;height:17px;margin:0;accent-color:var(--wine)}
.apartment-search-bottom button{margin-left:auto;padding:4px 0;background:transparent;border:0;border-bottom:1px solid var(--wine);color:var(--wine);font:inherit;cursor:pointer}
.apartment-floor-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-block:28px 24px}
.apartment-floor-tabs button{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:12px 18px;border:1px solid var(--line);background:transparent;color:var(--ink);font:400 15px/1.5 var(--sans);cursor:pointer}
.apartment-floor-tabs button[aria-selected=true]{background:var(--wine);border-color:var(--wine);color:var(--paper)}
.floor-count{font-size:13px;opacity:.75}
.apartment-selector{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:stretch}
.floor-card{min-width:0;padding:24px;background:var(--paper);border:1px solid var(--line)}
.floor-card-heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:20px}
.floor-card-heading .eyebrow{color:var(--wine);margin-bottom:8px}
.floor-card-heading p:not(.eyebrow){color:var(--soft);font:400 13px/1.5 var(--sans)}
.floor-zoom{display:flex;align-items:center;gap:12px;flex:none;font:400 12px/1.5 var(--sans);color:var(--soft)}
.floor-zoom button{display:grid;place-items:center;width:32px;height:32px;background:#fff;border:1px solid var(--line);font-size:20px;color:var(--wine);cursor:pointer}
.floor-zoom button:disabled{opacity:.35;cursor:default}
.floor-scroll{overflow:auto;overscroll-behavior-x:contain;padding-block:12px;min-height:230px;scrollbar-color:var(--wine) var(--beige);scrollbar-width:thin}
.interactive-floor{display:block;height:auto;min-width:720px;max-width:none}
.floor-unit{cursor:pointer;outline:none}
.floor-unit[aria-disabled=true]{cursor:default}
.floor-unit-shape{fill:transparent;stroke:transparent;stroke-width:1;transition:fill .16s,stroke .16s}
.floor-unit.is-closed .floor-unit-shape{fill:#d7d1c7ed;stroke:#b8b0a3;stroke-width:.4}
.floor-unit.is-muted:not(.is-closed) .floor-unit-shape{fill:#f2ece3dc;stroke:#cfc7bb;stroke-width:.4}
.floor-unit.is-selected .floor-unit-shape,.floor-unit:not(.is-muted):hover .floor-unit-shape{fill:#7e222633;stroke:var(--wine);stroke-width:1.3}
.floor-unit:focus-visible .floor-unit-shape{stroke:var(--wine);stroke-width:2}
.floor-unit-number-plate{fill:#fff;stroke:#ded8ce;stroke-width:.4}
.floor-unit-id{fill:var(--wine);font:500 8.5px var(--sans)}
.floor-unit.is-selected .floor-unit-number-plate{fill:var(--wine);stroke:var(--wine)}
.floor-unit.is-selected .floor-unit-id{fill:#fff}
.floor-unit.is-closed .floor-unit-number-plate{fill:#ece7df;stroke:none}
.floor-unit.is-closed .floor-unit-id{fill:#8f877d}
.floor-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:22px;color:var(--soft);font:400 12px/1.5 var(--sans)}
.floor-legend>span{display:flex;align-items:center;gap:7px}
.floor-legend i{display:block;width:10px;height:10px;border:1px solid var(--line)}
.floor-legend .legend-available{background:#fff}.floor-legend .legend-selected{background:var(--wine);border-color:var(--wine)}.floor-legend .legend-closed{background:#d7d1c7}.floor-legend .legend-muted{background:var(--beige)}
.floor-unit-shortcuts{display:none}
.unit-summary{display:flex;flex-direction:column;gap:24px;padding:28px;background:var(--wine);color:#fff;min-width:0}
.unit-summary>.eyebrow{color:var(--cream)}
.unit-summary h3{margin:0;color:var(--cream);font:400 clamp(32px,3.2vw,44px)/1.1 var(--serif);letter-spacing:-.025em}
.unit-summary dl{display:grid;gap:22px}
.unit-summary dt{font:400 13px/1.5 var(--sans);margin-bottom:8px}
.unit-summary dd{font:400 var(--section-display)/1.12 var(--serif);letter-spacing:-.025em;white-space:nowrap}
.unit-summary dd>span,.unit-detail-metrics dd>span{font:400 var(--body)/1.5 var(--sans);letter-spacing:0}
.unit-summary .cta{margin-top:auto;width:100%;background:#fff;color:var(--wine);justify-content:center;gap:12px;padding-inline:14px;cursor:pointer}
.unit-summary .cta:hover{background:var(--cream)}
.unit-summary .price-on-request,.unit-detail-metrics .price-on-request{font:400 var(--body)/1.5 var(--sans);white-space:normal;letter-spacing:0}
.apartment-dialog{width:min(1240px,calc(100% - 40px));max-height:calc(100svh - 40px);padding:32px;background:#fff;overflow:auto}
.apartment-dialog-header{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:28px}
.apartment-dialog-header .eyebrow{color:var(--wine);margin-bottom:12px}
.apartment-dialog-header h2{font-size:clamp(32px,3.6vw,46px)}
.apartment-close{display:grid;place-items:center;flex:none;width:36px;height:36px;border:1px solid var(--line);background:#fff;color:var(--wine);font-size:26px;cursor:pointer}
.apartment-dialog-body{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,.9fr);gap:32px;align-items:start}
.apartment-visual{min-width:0}
.apartment-view-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.apartment-view-tabs button{padding:10px 12px;background:#fff;border:1px solid var(--line);color:var(--soft);font:400 13px/1.5 var(--sans);cursor:pointer}
.apartment-view-tabs button[aria-pressed=true]{background:var(--wine);border-color:var(--wine);color:#fff}
.apartment-view-content{min-height:480px;background:#fff}
.apartment-model{display:grid;grid-template-rows:auto minmax(340px,1fr) auto;min-height:480px;height:100%}
.model-source{display:flex;justify-content:space-between;gap:12px;color:var(--soft);font:400 12px/1.5 var(--sans)}
.webgl-model-stage{position:relative;min-height:360px;height:410px}
.webgl-model-stage canvas{display:block;max-width:100%;touch-action:none}
.model-poster{display:block;width:100%;height:100%;max-height:480px;object-fit:contain}
.webgl-model-stage .model-poster{position:absolute;inset:0;width:100%;height:100%}
.model-loading{position:absolute;bottom:8px;left:12px;right:12px;text-align:center;background:#ffffffdd;padding:8px;font:400 12px/1.5 var(--sans);color:var(--soft)}
.model-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid var(--line);padding-top:14px;color:var(--soft);font:400 12px/1.5 var(--sans)}
.model-controls>div{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.model-controls button,.unit-gallery-controls button{min-width:32px;min-height:34px;padding:5px 8px;background:#fff;border:1px solid var(--line);color:var(--wine);font:400 13px/1.5 var(--sans);cursor:pointer}
.model-controls button:disabled{opacity:.35;cursor:default}
.unit-top-plan{display:block;width:100%;height:480px;object-fit:contain}
.unit-interior-gallery>img{width:100%;height:440px;object-fit:cover}
.unit-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:16px;font-size:13px;color:var(--soft)}
.apartment-details{display:grid;gap:24px;min-width:0}
.apartment-details>.eyebrow{color:var(--wine)}
.unit-detail-metrics{display:grid;gap:24px}
.unit-detail-metrics dt{margin-bottom:10px;color:var(--soft);font:400 14px/1.5 var(--sans)}
.unit-detail-metrics dd{color:var(--wine);font:400 var(--section-display)/1.12 var(--serif);letter-spacing:-.025em;white-space:nowrap}
.apartment-details>p:not(.eyebrow){color:var(--soft);line-height:1.5}
.apartment-details .cta{justify-content:center;width:100%;cursor:pointer}
.apartment-back{justify-self:start;padding:0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--soft);font:400 13px/1.5 var(--sans);cursor:pointer}
@media(max-width:1100px){.apartment-selector{grid-template-columns:1fr}.unit-summary{display:grid;grid-template-columns:1fr 1.5fr;align-items:start}.unit-summary>.eyebrow{grid-column:1/-1}.unit-summary dl{grid-column:2;grid-row:2/4;grid-template-columns:1fr 1fr}.unit-summary .cta{grid-column:1;margin-top:0}.apartment-search-fields{grid-template-columns:1fr 1fr;gap:24px}.apartment-type-field{grid-column:1/-1;max-width:360px}}
@media(max-width:900px){.apartment-dialog-body{grid-template-columns:1fr}.apartment-details{padding-top:24px;border-top:1px solid var(--line)}.unit-detail-metrics{grid-template-columns:1fr 1fr}.apartment-details>.cta{max-width:420px}}
@media(max-width:700px){#apartment-explorer-root{margin-top:32px}.apartment-search{padding:20px}.apartment-search-fields{grid-template-columns:1fr}.apartment-type-field{max-width:none}.apartment-type-field select{font-size:16px}.apartment-search-bottom{align-items:start;gap:16px}.apartment-search-bottom button{margin-left:0}.apartment-floor-tabs{display:flex;overflow-x:auto;gap:8px;margin-block:24px 20px;padding-bottom:6px}.apartment-floor-tabs button{flex:none;min-width:115px;padding-inline:14px;font-size:14px}.floor-card{padding:18px}.floor-card-heading{gap:16px;flex-wrap:wrap}.floor-scroll{min-height:210px}.floor-unit-shortcuts{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.floor-unit-shortcuts button{min-height:36px;padding:7px 10px;background:#fff;border:1px solid var(--line);color:var(--wine);font:400 13px/1.5 var(--sans);cursor:pointer}.unit-summary{display:flex;padding:24px;gap:24px}.unit-summary dl{grid-template-columns:1fr 1fr;width:100%}.unit-summary h3{font-size:36px}.apartment-dialog{width:calc(100% - 20px);max-height:calc(100svh - 20px);padding:24px 18px}.apartment-dialog-header{gap:12px;margin-bottom:24px}.apartment-dialog-header h2{font-size:32px}.apartment-view-content,.apartment-model{min-height:350px}.webgl-model-stage{min-height:280px;height:300px}.apartment-model{grid-template-rows:auto minmax(280px,1fr) auto}.unit-top-plan{height:360px}.unit-interior-gallery>img{height:320px}.apartment-view-tabs button{padding:9px;font-size:12px}.model-source{font-size:11px}.unit-detail-metrics{grid-template-columns:1fr 1fr}.apartment-details{gap:20px}}
@media(max-width:450px){.unit-summary dl,.unit-detail-metrics{grid-template-columns:1fr}.model-controls>div{gap:4px}.model-controls button{padding:5px 7px}}
@media(prefers-reduced-motion:reduce){.floor-unit-shape{transition:none}}

/* Team, completed projects and dated construction reports. */
.season-icon{width:44px;height:44px;flex:none}
.developer .section-copy .cta,.construction-enquiry .section-copy .cta{justify-self:start;margin-top:12px;color:var(--paper);text-decoration:none}
.completed-projects{margin-top:56px}
.completed-projects>h3,.construction-report-controls>h3{margin:0;font:400 28px/1.2 var(--serif);letter-spacing:-.02em}
.completed-projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}
.completed-project{position:relative;isolation:isolate;min-width:0;height:440px;overflow:hidden;background:#3d4242;color:#fff}
.completed-project>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.completed-project:first-child>img{object-position:62% center}
.completed-project:nth-child(2)>img{object-position:center 30%}
.completed-project:nth-child(3)>img{object-position:center 25%}
.completed-project::after{content:'';position:absolute;z-index:0;inset:28% 0 0;background:linear-gradient(transparent,rgba(14,20,19,.55) 45%,rgba(14,20,19,.94))}
.completed-project-caption{position:absolute;z-index:1;inset:auto 24px 24px;display:grid;gap:12px}
.completed-project-caption h4{margin:0;color:var(--cream);font:400 clamp(25px,2.3vw,32px)/1.12 var(--serif);letter-spacing:-.02em}
.completed-project-caption p{font-size:14px;line-height:1.45}
.completed-project-caption address{font:400 12px/1.5 var(--sans);color:#ffffffe0}
.construction-timeline{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;margin:56px 0 0;gap:0}
.milestone{position:relative;min-width:0;display:grid;grid-template-rows:auto 46px 1fr;padding-right:28px}
.milestone h3{margin:0;font:400 clamp(19px,1.7vw,23px)/1.25 var(--serif)}
.milestone p{padding-top:6px;color:var(--soft);line-height:1.45;max-width:245px}
.milestone::after{content:'';position:absolute;top:calc(clamp(19px,1.7vw,23px)*1.25 + 23px);left:10px;right:0;border-top:1px solid #7e222655}
.milestone:last-child::after{display:none}
.milestone-dot{position:relative;z-index:1;align-self:center;width:44px;height:44px;margin-left:-15.5px;padding:0;border:0;background:transparent;color:var(--wine);cursor:pointer}
.milestone-dot::before{content:"";position:absolute;left:15.5px;top:15.5px;width:13px;height:13px;border-radius:50%;border:1px solid var(--wine);background:var(--beige);transition:background-color .2s,box-shadow .2s}
.milestone-dot:hover::before{box-shadow:0 0 0 5px #7e22260d}
.milestone-dot[aria-selected=true]::before{background:var(--wine);box-shadow:0 0 0 5px #7e222619}
.milestone.is-selected h3{color:var(--wine)}
.construction-report{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:64px;margin-top:56px;padding-top:40px;border-top:1px solid var(--line)}
.construction-report-controls{display:flex;flex-direction:column;align-items:start;gap:20px}
.report-months{display:grid;gap:12px}
.report-months button,.report-formats button{font:400 var(--body)/1.5 var(--sans);color:var(--soft);background:none;border:0;padding:4px 0;text-align:left;cursor:pointer}
.report-months button{border-bottom:1px solid transparent}
.report-months button[aria-selected=true]{color:var(--wine);border-color:currentColor}
.report-formats{display:flex;gap:16px}
.report-formats button{font-size:14px;padding:7px 14px;border:1px solid var(--line)}
.report-formats button[aria-pressed=true]{background:var(--wine);border-color:var(--wine);color:#fff}
.construction-media{min-width:0}
.construction-stage{display:grid;place-items:center;height:clamp(240px,28vw,360px);background:#dedbd5;overflow:hidden}
.construction-stage img,.construction-stage video{width:100%;height:100%;object-fit:contain;min-height:0;min-width:0}
.construction-media-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:16px;color:var(--soft);font-size:13px}
.report-arrows{display:flex;gap:10px}
.report-arrows button{width:42px;height:42px;border:1px solid #7e22264d;background:transparent;color:var(--wine);font:400 24px/1 var(--sans);cursor:pointer}
.report-arrows button:hover{background:#7e222609}
 .construction-enquiry{margin-top:4px;display:grid;gap:16px;max-width:390px}
.construction-enquiry>h3{margin:0;font:400 26px/1.18 var(--serif);letter-spacing:-.02em}
.construction-enquiry>p{color:var(--soft);font-size:14px;line-height:1.5}
.construction-enquiry>.cta{justify-self:start;justify-content:center;margin-top:2px;font-size:14px;min-height:48px}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(40px,5vw,80px);align-items:start}
.contact-copy>p{max-width:630px;color:var(--soft);line-height:1.5;margin-top:24px}
.contact-promise{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px}
.contact-promise li{display:flex;gap:12px;align-items:center}
.contact-promise svg{width:22px;height:22px;flex:none;stroke:var(--wine);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-form-panel{padding:clamp(24px,3vw,40px);background:var(--beige);scroll-margin-top:32px}
.inline-enquiry-fields{display:grid;gap:24px}
.inline-enquiry h3{margin:0;font:400 28px/1.2 var(--serif);letter-spacing:-.02em}
.inline-enquiry .form-field{display:flex;flex-direction:column;gap:9px}
.inline-enquiry .form-field input,.inline-enquiry .form-field textarea{background:transparent;border:0;border-bottom:1px solid #7e222649;padding:10px 0;min-height:44px;font:400 16px/1.5 var(--sans);width:100%;border-radius:0;color:var(--ink)}
.inline-enquiry .form-field textarea{resize:vertical;min-height:98px;max-height:300px}
.inline-enquiry .form-field textarea::placeholder{color:#8c817b}
.inline-enquiry .form-field input:focus,.inline-enquiry .form-field textarea:focus{outline:none;box-shadow:none;border-bottom-color:var(--wine)}
.inline-enquiry .form-field input[aria-invalid=true],.inline-enquiry .form-field textarea[aria-invalid=true]{border-color:var(--wine);box-shadow:0 1px var(--wine)}
.inline-enquiry .optional-label{display:inline;font-size:12px;color:var(--soft);margin-top:-7px}
.enquiry-consent{display:flex;align-items:start;gap:10px;color:var(--soft);font-size:12px;line-height:1.5}
.enquiry-consent input{flex:none;width:17px;height:17px;margin:2px 0 0;accent-color:var(--wine)}
.enquiry-consent a{text-decoration:underline;text-underline-offset:3px}
.inline-enquiry-submit{width:100%;justify-content:center;cursor:pointer}
.inline-enquiry-submit:disabled{opacity:.6;cursor:wait;transform:none}
.inline-enquiry-reset{justify-content:center;cursor:pointer}
.site-footer{background:var(--beige)}
.footer-landscape{position:relative;isolation:isolate;color:#fff;overflow:hidden;background:#263c34}
.footer-background{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}
.footer-landscape::after{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(100deg,#21191bcf,#1f2223a8 58%,#1c2828c9)}
.footer-inner{padding-block:40px 52px}
.footer-top{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-bottom:30px;border-bottom:1px solid #ffffff42}
.footer-logo img{width:154px;height:auto}
.back-top{display:inline-flex;align-items:center;gap:24px;font-size:14px}
.back-top span{font-size:26px}
.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .85fr;gap:48px;margin-top:40px}
.footer-brand>p{font:400 var(--section-display)/1.1 var(--serif);letter-spacing:-.025em}
.footer-brand em{font-style:normal;color:var(--cream)}
.footer-brand>span{display:block;margin-top:24px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--cream)}
.footer-contacts,.footer-socials{display:flex;flex-direction:column;align-items:start;gap:12px;min-width:0;font-size:14px}
.footer-grid h3{margin:0 0 8px;font:400 12px/1.5 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--cream)}
.footer-contacts>a:first-of-type{font-size:21px}
.footer-contacts p{margin-top:8px;font-size:13px;line-height:1.7;color:#ffffffe0}
.footer-contacts>a:hover,.footer-socials>a:hover,.back-top:hover{text-decoration:underline;text-underline-offset:5px}
.footer-socials>a{display:flex;justify-content:space-between;gap:32px;width:100%}
.footer-socials .footer-enquiry{padding-bottom:12px;margin-top:8px;border-bottom:1px solid #ffffff70}
.footer-socials nav{display:flex;flex-wrap:wrap;gap:20px;font-size:12px;margin-top:4px}
@media(max-width:1100px){.contact-layout{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px}.footer-grid{gap:32px;grid-template-columns:1fr 1fr .9fr}.footer-contacts>a:first-of-type{font-size:18px}}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr}.contact-copy>h2{max-width:700px}.contact-copy>p{max-width:660px}.contact-form-panel{max-width:660px;width:100%;padding:32px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1;display:flex;justify-content:space-between;align-items:end;gap:32px}.footer-brand>span{max-width:180px;text-align:right}}
@media(max-width:700px){.season-icon{width:42px;height:42px}.contact-layout{gap:32px}.contact-form-panel{padding:24px 20px}.inline-enquiry h3{font-size:26px}.inline-enquiry-fields{gap:22px}.inline-enquiry .form-field input{font-size:16px}.inline-enquiry .form-field input::placeholder{font-size:13px}.contact-copy>p{margin-top:20px}.contact-promise{gap:12px;margin-top:24px}.footer-inner{padding-block:28px 36px}.footer-top{padding-bottom:24px}.footer-logo img{width:130px}.back-top{font-size:12px;gap:16px}.footer-grid{gap:28px 24px;margin-top:28px}.footer-brand{display:block}.footer-brand>span{max-width:none;text-align:left;margin-top:18px}.footer-grid h3{font-size:11px;letter-spacing:.03em}.footer-contacts,.footer-socials{font-size:13px}.footer-contacts>a:first-of-type{font-size:16px}.footer-contacts p{font-size:12px}.footer-socials>a{gap:12px}.footer-socials nav{display:grid;gap:12px}.construction-report{display:flex;flex-direction:column}.construction-report-controls{display:contents}.construction-report-controls>h3{order:0}.report-months{order:1}.report-formats{order:2}.construction-media{order:3;width:100%}.construction-enquiry{order:4;width:100%;margin-top:0}.construction-stage{height:260px}}
@media(max-width:1150px){.completed-project{height:420px}.completed-project-caption{inset:auto 20px 20px}.construction-timeline{gap:0}.milestone{padding-right:18px}.construction-report{gap:28px}}
@media(max-width:900px){.completed-projects-grid{gap:16px}.completed-project{height:380px}.completed-project-caption{inset:auto 16px 20px}.completed-project-caption h4{font-size:24px}.completed-project-caption p{font-size:13px}.completed-project-caption address{font-size:11px}.milestone h3{max-width:155px;min-height:48px}.milestone::after{top:71px}.construction-report{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:32px}}
@media(max-width:700px){.completed-projects{margin-top:40px}.completed-projects-grid{grid-template-columns:1fr;gap:20px;margin-top:24px}.completed-project{height:430px}.completed-project-caption{inset:auto 24px 24px;gap:12px}.completed-project-caption h4{font-size:30px}.completed-project-caption p{font-size:15px}.completed-project-caption address{font-size:12px}.construction-timeline{grid-template-columns:1fr;margin-top:36px;gap:0}.milestone{grid-template-columns:20px 1fr;grid-template-rows:auto auto;column-gap:16px;padding:0 0 28px}.milestone h3{grid-column:2;min-height:0;max-width:none;font-size:23px}.milestone-dot{grid-column:1;grid-row:1;align-self:start;margin-top:-8px}.milestone p{grid-column:2;max-width:none;padding-top:12px}.milestone::after{left:6px;top:20px;bottom:-8px;right:auto;border-top:0;border-left:1px solid #7e222655}.milestone:last-child{padding-bottom:0}.construction-report{grid-template-columns:1fr;margin-top:36px;padding-top:32px;gap:24px}.construction-report-controls{gap:20px}.construction-report-controls>h3 br{display:none}.report-months{display:flex;flex-wrap:wrap;gap:24px}.construction-media-footer{font-size:12px}.construction-enquiry{margin-top:12px;max-width:none}.construction-stage{height:260px}.construction-report-controls{display:contents}}

.construction-media-footer>p{min-width:0}

/* Complete site navigation, in page order. */

.header-shortcuts{margin-left:auto;gap:clamp(18px,2vw,28px);white-space:nowrap}
.header-actions{display:flex;align-items:center;gap:24px;flex:none;font-size:14px}
.menu-label-mobile{display:none}
#primary-nav{display:block;position:absolute;top:100%;left:0;right:0;background:var(--wine);border-bottom:1px solid #ffe5c44d;box-shadow:0 16px 28px #3213171f;max-height:calc(100svh - var(--header-height));overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
.header-nav-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;padding-block:20px 28px}
.header-nav-grid>a{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:46px;padding-block:11px;border-bottom:1px solid #ffe5c42b;font:400 14px/1.45 var(--sans)}
.header-nav-arrow{flex:none;color:var(--cream);font-size:15px;opacity:.7}
.header-nav-grid>a:hover{color:var(--cream);border-bottom-color:#ffe5c470}
main>section:focus{outline:none}
@media(max-width:1150px){.header-shortcuts{display:none}.header-nav-grid{gap:0 32px}.header-actions{gap:24px}}
@media(max-width:900px){.header-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}}
@media(max-width:700px){.menu-label-desktop{display:none}.menu-label-mobile{display:inline}.header-actions{gap:16px;font-size:13px}.header-nav-grid{padding-block:14px 22px;gap:0 24px}.header-nav-grid>a{font-size:14px;min-height:46px}.header-contact{min-height:44px}.menu-toggle{min-height:44px}}
@media(max-width:450px){.menu-label-mobile{display:none}.menu-toggle{width:44px;justify-content:center;padding:10px}.header-actions{gap:18px}.header-nav-grid{gap:0 20px}}

/* A separate dialing code keeps telephone entry clear on every form. */
.contact-input-row{display:flex;gap:10px;min-width:0}
.contact-input-row>input{flex:1;width:0}
.country-picker{flex:0 0 148px;min-width:0}
.country-picker select{height:100%;padding-left:10px;padding-right:20px;text-overflow:ellipsis}
.country-picker[hidden]{display:none}
.inline-enquiry .form-field select{background:transparent;border:0;border-bottom:1px solid #7e222649;padding-block:10px;min-height:44px}
.inline-enquiry .country-picker{flex-basis:136px}
.inline-enquiry .contact-input-row>input{width:0}
.privacy-inner{position:relative;padding:40px 32px}
.privacy-inner h2{padding-right:22px;font:400 30px/1.15 var(--serif)}
.privacy-inner p{margin-top:24px;font-size:14px;line-height:1.6;color:var(--soft)}
@media(max-width:450px){.country-picker,.inline-enquiry .country-picker{flex-basis:116px}.contact-input-row{gap:8px}.country-picker select{font-size:14px}.privacy-inner{padding:36px 22px}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
