@font-face{font-family:Inter;src:url('/assets/fonts/inter-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url('/assets/fonts/inter-semibold.ttf') format('truetype');font-style:normal;font-weight:600 800;font-display:swap}
@font-face{font-family:Montserrat;src:url('/assets/fonts/montserrat-semibold.ttf') format('truetype');font-style:normal;font-weight:500 600;font-display:swap}
@font-face{font-family:Montserrat;src:url('/assets/fonts/montserrat-bold.ttf') format('truetype');font-style:normal;font-weight:700 900;font-display:swap}
:root{--paper:#FFFFFF;--white:#FFFFFF;--ink:#1F252B;--muted:#626B75;--red:#D71920;--red-dark:#B51118;--grey:#B7BEC6;--line:#E1E4E8;--dark:#1F252B;--font:Inter,Arial,sans-serif;--heading:Montserrat,Arial,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{max-width:100%;display:block}button svg{pointer-events:none}h1,h2,h3,h4,p,blockquote{margin:0}h1,h2,h3,h4{line-height:1.15;font-weight:600}p+p{margin-top:1em}h2{font-size:clamp(2.3rem,4vw,3.65rem);letter-spacing:-.05em}h3{letter-spacing:-.035em}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}::selection{background:var(--red);color:var(--ink)}:focus-visible{outline:3px solid var(--red-dark);outline-offset:5px}button[disabled]{opacity:.55;cursor:wait}[hidden]{display:none!important}.container{width:min(1320px,calc(100% - 112px));margin-inline:auto}.section{padding-block:112px}.eyebrow{font-size:11px;line-height:1.5;letter-spacing:.19em;font-weight:700;text-transform:uppercase;margin-bottom:25px;color:var(--muted)}.eyebrow.light{color:#C7CDD3}.heading-accent{font-family:var(--heading);font-weight:400;font-style:italic;letter-spacing:-.055em}.lead{font-size:21px;line-height:1.7}.muted{color:var(--muted)}.note,.collection-note{font-size:13px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:55px;padding:15px 24px;border:1px solid transparent;font-size:13px;font-weight:700;line-height:1.4;transition:background .25s,transform .25s,box-shadow .25s}.button:hover{transform:translateY(-3px)}.button span{font-size:21px;font-weight:400;line-height:1}.button-primary{background:var(--red);color:#FFFFFF}.button-primary:hover{background:#B51118;box-shadow:0 8px 25px #00000010}.button-dark{background:var(--dark);color:var(--white)}.button-dark:hover{background:#313A44}.button-outline{background:transparent;border-color:#B7BEC6;color:var(--ink)}.button-outline:hover{background:#F0F2F4}.text-link{display:inline-flex;align-items:center;gap:32px;border-bottom:1px solid var(--ink);padding-bottom:9px;font-size:13px;font-weight:700}.text-link span{font-size:21px;transition:transform .25s}.text-link:hover span{transform:translate(3px,-3px)}.text-link.light{color:white;border-color:#75808C}.icon-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:transparent}.visually-hidden,.skip-link:not(:focus){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link:focus{position:fixed;top:10px;left:10px;background:var(--paper);z-index:1000;padding:12px 24px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:80px}.three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.topbar{background:var(--dark);color:#D5DAE0;font-size:10px;letter-spacing:.14em}.topbar .container{display:flex;justify-content:space-between;align-items:center;min-height:34px}.topbar a{font-size:11px;letter-spacing:.03em}.topbar a span{color:#fff;margin-left:17px}.site-header{background:var(--paper);position:sticky;top:0;z-index:40;border-bottom:1px solid transparent;transition:box-shadow .3s}.site-header.is-scrolled{box-shadow:0 3px 30px #00000010}.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{width:37px;height:44px;fill:var(--ink);stroke:none}.brand-word{font-size:49px;line-height:.86;letter-spacing:-.055em;font-weight:700;position:relative}.brand-dot{color:var(--red-dark)}.brand-sub{display:inline-block;font-size:7px;line-height:1.45;letter-spacing:.09em;font-weight:600;margin-left:14px;vertical-align:middle}.main-nav{display:flex;align-items:center;gap:29px;margin-left:auto}.main-nav>a{font-size:12px;white-space:nowrap;position:relative;padding-block:12px}.main-nav>a::after{content:'';position:absolute;left:0;bottom:4px;height:2px;width:0;background:var(--red-dark);transition:width .3s}.main-nav>a:hover::after,.main-nav>a[aria-current]::after{width:100%}.header-actions{display:flex;align-items:center;gap:17px}.header-cta{font-size:11px;min-height:46px;padding:12px 18px;gap:21px}.header-actions .search-toggle{width:27px}.search-toggle svg{width:18px}.menu-toggle{display:none}.hero{position:relative;min-height:680px;height:calc(100svh - 128px);max-height:880px;background:#1F252B;color:#fff;overflow:hidden}.hero-visual,.hero-photo,.hero-shade,.hero-grid{position:absolute;inset:0;width:100%;height:100%}.hero-photo{object-fit:cover;object-position:center;opacity:0;transform:scale(1.055);transition:opacity 1.1s ease,transform 8s linear}.hero-photo.is-active{opacity:1;transform:scale(1)}.hero-shade{background:linear-gradient(90deg,rgba(16,23,31,.92) 0%,rgba(16,23,31,.62) 38%,rgba(16,23,31,.06) 72%),linear-gradient(0deg,rgba(16,23,31,.76),transparent 30%)}.hero-grid{background:linear-gradient(90deg,transparent calc(50% - .5px),#ffffff0a 50%,transparent calc(50% + .5px));pointer-events:none}.hero-content{position:relative;padding-top:clamp(66px,9vh,120px);padding-bottom:140px;z-index:2}.hero .eyebrow{display:flex;align-items:center;gap:14px;color:#E1E5EA;font-size:10px;letter-spacing:.21em;margin-bottom:28px}.hero .eyebrow>span{display:block;width:26px;height:1px;background:var(--red)}.hero h1{font-size:clamp(4.2rem,6.4vw,6.2rem);line-height:1.02;letter-spacing:-.055em;max-width:710px;font-weight:500}.hero h1 em{color:#FFFFFF;font-family:var(--heading);font-weight:400;letter-spacing:-.035em}.hero-description{font-size:14px;line-height:1.9;color:#D8DFE6;margin-top:25px}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px}.hero-actions .button{min-height:53px;font-size:12px}.hero-secondary{font-size:12px;display:inline-flex;gap:16px;align-items:center;border-bottom:1px solid #ffffff60;padding:11px 0}.hero-footer{position:absolute;left:0;right:0;bottom:27px;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:30px}.scroll-cue{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:.16em}.scroll-cue>span{display:grid;place-items:center;width:30px;height:40px;border:1px solid #ffffff45;border-radius:20px;font-size:18px;animation:scrollCue 3s ease-in-out infinite}.hero-note{display:flex;gap:16px;align-items:center;margin-left:auto;margin-right:44px}.tiny-cross{font-size:34px;line-height:1;color:var(--red);font-weight:400}.hero-note>div>span{display:block;font-size:13px}.hero-note small{font-size:8px;letter-spacing:.16em;color:#CBD2D9}.hero-controls{display:flex;align-items:center;gap:8px}.hero-controls button,.testimonial-controls button{width:37px;height:37px;border:1px solid #ffffff50;background:transparent;color:inherit;border-radius:50%;font-size:18px;transition:background .2s}.hero-controls button:hover{background:#ffffff20}.hero-controls button[data-hero-pause]{border:0;font-size:13px;width:25px}.slide-index{display:flex;gap:10px;align-items:center;font-size:10px;margin-right:14px;color:#E1E5EA}.slide-index>span:first-child{font-size:12px;color:white}.slide-divider{display:block;width:44px;height:1px;background:#ffffff60}.assurance-strip{background:#F2F3F5;border-bottom:1px solid var(--line)}.assurance-strip .container{display:flex;align-items:center;justify-content:space-between;min-height:81px}.assurance-strip .container>span{display:flex;align-items:center;gap:14px;font-size:12px}.assurance-strip svg{width:22px;height:22px;color:#D71920}.assurance-strip .container>span+span{border-left:1px solid #D8DDE3;padding-left:7vw}.introduction{display:grid;grid-template-columns:1.1fr 1fr;gap:110px}.introduction h2{font-size:clamp(2rem,3.6vw,3.4rem);line-height:1.2}.intro-copy{padding-top:39px}.intro-copy .lead{margin-bottom:19px}.intro-copy>p:not(.lead){font-size:14px;color:var(--muted);line-height:1.9}.intro-copy .text-link{margin-top:29px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:46px}.section-heading>div:last-child>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:18px}.expertise-section{padding-top:0}.home-services{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;perspective:1200px}.home-service-card{display:block;transition:transform .45s var(--ease);transform-style:preserve-3d}.service-card-image{height:315px;position:relative;overflow:hidden;background:#E5E8EC}.service-card-image::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0002,transparent 30%,#0002)}.service-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.home-service-card:hover img{transform:scale(1.06)}.service-card-number{position:absolute;top:19px;left:20px;color:#fff;font-size:11px;z-index:1}.round-link{position:absolute;right:18px;bottom:18px;background:var(--paper);width:43px;height:43px;display:grid;place-items:center;border-radius:50%;font-size:23px;z-index:1;transition:background .25s,transform .25s}.home-service-card:hover .round-link,.space-card:hover .round-link{background:var(--red);transform:rotate(45deg)}.service-card-body{padding:24px 0 28px}.service-card-body h3{font-size:20px;margin-bottom:11px}.service-card-body p{font-size:13px;line-height:1.8;color:var(--muted);max-width:320px}.secondary-services{border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:15px}.secondary-services>a{display:flex;gap:16px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.secondary-services>a>span:first-child{font-size:10px;color:var(--muted)}.secondary-services h3{font-size:15px}.secondary-services>a>span:last-child{margin-left:auto;font-size:23px;transition:transform .25s}.secondary-services>a:hover>span:last-child{transform:translate(3px,-3px)}
.process-section{background:var(--dark);color:var(--paper);padding-block:95px;overflow:hidden}.process-section .two-col{grid-template-columns:1fr 1.08fr;gap:100px;align-items:center}.process-copy>p:not(.eyebrow){font-size:14px;color:#B7BEC6;margin-top:24px}.process-tabs{display:flex;border-bottom:1px solid #58636F;margin-top:36px}.process-tabs button{flex:1;display:flex;align-items:center;gap:11px;background:transparent;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;color:#BAC2CB;padding:18px 0;font-size:13px}.process-tabs button[aria-selected=true]{border-bottom-color:var(--red);color:var(--paper)}.process-tabs button>span:first-child{font-size:10px;color:#B7BEC6}.process-tabs button>span:last-child{display:none}.process-panels{min-height:127px;padding-top:21px;font-size:13px;line-height:1.9;color:#C7CFD8}.process-copy>.text-link{margin-top:16px}.architecture-stage{height:480px;position:relative;perspective:1000px;display:grid;place-items:center}.architecture-grid{position:absolute;inset:0;background-image:linear-gradient(#B7BEC614 1px,transparent 1px),linear-gradient(90deg,#B7BEC614 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(ellipse,#000,transparent 73%)}.architecture-model{position:relative;width:260px;height:260px;transform:rotateX(58deg) rotateZ(-35deg);transform-style:preserve-3d;transition:transform 1.2s var(--ease);animation:modelFloat 10s ease-in-out infinite}.model-ground{position:absolute;inset:-30px;border:1px solid #B7BEC660;background:repeating-linear-gradient(0deg,transparent 0 25px,#B7BEC619 25px 26px),repeating-linear-gradient(90deg,transparent 0 25px,#B7BEC619 25px 26px);box-shadow:35px 35px 80px #0002}.model-floor{position:absolute;inset:0;border:1px solid #D71920;background:#B7BEC626;transform-style:preserve-3d;transition:transform 1.4s var(--ease),background 1s,opacity 1s}.floor-one{transform:translateZ(8px);box-shadow:0 0 30px #D719201A}.floor-two{inset:0 0 70px 0;transform:translateZ(105px);background:#B7BEC638;border-color:#B7BEC6}.floor-three{inset:0 0 70px 0;transform:translateZ(200px);background:#D7192080;border-color:#ED5056}.model-wall{position:absolute;width:260px;height:97px;border:1px solid #B7BEC6;background:repeating-linear-gradient(90deg,#B7BEC622 0 42px,#B7BEC699 43px 44px);transform-origin:bottom;transition:transform 1.3s var(--ease),opacity .8s}.wall-one{left:0;top:-97px;transform:rotateX(-90deg) translateY(-8px)}.wall-two{left:-130px;top:33px;transform:rotateZ(90deg) rotateX(-90deg) translateY(-8px)}.wall-three{left:0;top:-97px;transform:rotateX(-90deg) translateY(-105px)}.model-column{position:absolute;width:2px;height:194px;background:#DCE1E7;transform-origin:bottom;transform:rotateX(-90deg) translateY(-8px)}.column-one{left:0;top:66px}.column-two{right:0;top:66px}.column-three{left:0;top:-194px}.column-four{right:0;top:-194px}.model-label{position:absolute;font-size:9px;letter-spacing:.13em;color:#BBC3CB;display:flex;align-items:center;gap:12px}.model-label span{font-size:23px;color:var(--red)}.label-top{right:2px;top:14px}.label-bottom{bottom:71px;left:2px}.model-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid #ffffff20;padding-top:20px}.model-caption .eyebrow{margin:0;color:#BBC3CB;font-size:8px}.model-caption>span:last-child{font-size:11px;color:var(--red)}[data-architecture-stage="1"] .floor-two{transform:translateZ(145px)}[data-architecture-stage="1"] .floor-three{transform:translateZ(270px)}[data-architecture-stage="1"] .wall-three{transform:rotateX(-90deg) translateY(-145px)}[data-architecture-stage="2"] .model-floor{background:#B7BEC688}[data-architecture-stage="2"] .floor-three{background:#D71920DD}[data-architecture-stage="2"] .model-wall{background:repeating-linear-gradient(90deg,#B7BEC650 0 42px,#CBD2D9CC 43px 44px)}
.spaces-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:32px}.space-card .image-wrap{height:355px;position:relative;overflow:hidden}.space-card .image-wrap img{height:100%;width:100%;object-fit:cover;transition:transform .8s var(--ease)}.space-card:hover img{transform:scale(1.045)}.space-card>div:last-child{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:24px}.space-card h3{font-size:18px}.space-card>div:last-child>span{font-size:8px;letter-spacing:.14em;color:var(--muted)}.collection-note{margin-top:28px;font-size:11px}.testimonial-section{padding:78px 0;background:#F3F4F6;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.testimonial-section>.container{display:grid;grid-template-columns:1fr 2fr;gap:60px}.testimonial-side .eyebrow{font-size:10px}.quote-mark{font:130px/1 var(--heading);color:#D71920}.testimonial-main{position:relative;padding-right:24px}.testimonial-main blockquote{font-size:clamp(1.5rem,2.5vw,2.25rem);letter-spacing:-.035em;line-height:1.55;min-height:115px}.quote-person{display:flex;align-items:center;gap:15px;margin-top:30px}.person-initials{width:43px;height:43px;background:#E7EAEF;display:grid;place-items:center;font-size:12px;border-radius:50%}.quote-person strong,.quote-person div>span{display:block;font-size:11px}.quote-person div>span{font-size:10px;color:var(--muted);margin-top:3px}.testimonial-controls{display:flex;align-items:center;gap:8px;position:absolute;right:0;bottom:0}.testimonial-controls>span{font-size:10px;margin-right:12px}.testimonial-controls button{border-color:#B7BEC6}.testimonial-controls button:hover{background:#E1E5EA}
.project-cta{background:#F0F2F5;padding:82px 0;position:relative;overflow:hidden}.project-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:50px;position:relative;z-index:1}.project-cta h2{font-size:clamp(2rem,3.6vw,3.3rem);line-height:1.2}.project-cta h2>span{color:var(--red-dark)}.project-cta .eyebrow{margin-bottom:20px;font-size:10px}.cta-action{display:flex;flex-direction:column;align-items:center;gap:17px;flex-shrink:0}.cta-phone{font-size:12px;border-bottom:1px solid #A5AEB8}.cta-arch{position:absolute;width:320px;height:420px;border:65px solid #B7BEC633;border-radius:160px 160px 0 0;right:12%;top:-32px;transform:rotate(-17deg)}.site-footer{background:var(--dark);color:#B7BEC6;padding:64px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1.25fr 1.2fr;gap:50px;padding-bottom:55px}.footer-grid .brand-word{font-size:61px;color:var(--paper)}.footer-grid .brand-dot{color:var(--red)}.footer-brand>p{font-size:10px;line-height:1.9;margin-top:15px}.footer-brand>p+p{font-size:12px;line-height:1.9;margin-top:25px}.footer-grid h2{font-size:11px;letter-spacing:0;color:#FFFFFF;margin:10px 0 24px;font-weight:600}.footer-grid>div>a:not(.brand){display:block;font-size:11px;line-height:2.7}.footer-grid>div>a:hover{color:#fff}.footer-contact p{font-size:11px;margin-top:17px;line-height:1.9}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff1a;padding-block:23px;font-size:9px;color:#B7BEC6}.footer-bottom>div{display:flex;gap:24px}.footer-bottom button{border:0;background:transparent;color:inherit;font-size:9px;padding:0}
/* Secondary pages share the same architectural rhythm. */
.page-hero{padding:82px 0 70px;border-bottom:1px solid var(--line);background:#F2F4F6}.page-hero h1,.display-heading{font-size:clamp(2.8rem,5.6vw,5.25rem);letter-spacing:-.055em;line-height:1.1;max-width:960px}.page-hero .lead{max-width:650px;margin-top:28px;color:var(--muted);font-size:17px}.page-hero .eyebrow{margin-bottom:24px}.page-hero a:not(.button){text-decoration:underline}.page-hero .button{margin-top:27px}.breadcrumb{display:flex;gap:12px;font-size:11px;color:var(--muted);margin-bottom:25px}.prose{font-size:15px;line-height:1.9;max-width:820px}.prose h2{font-size:27px;margin:42px 0 20px;letter-spacing:-.03em}.prose h3{font-size:20px;margin:30px 0 14px}.prose p{color:var(--muted)}.prose a{text-decoration:underline;text-underline-offset:3px}.prose ul{padding-left:22px;color:var(--muted)}.two-col>.image-wrap img{width:100%;height:100%;max-height:580px;object-fit:cover}.two-col .lead{margin-bottom:22px}.two-col p:not(.eyebrow):not(.lead){color:var(--muted);font-size:15px}.two-col h2{margin-bottom:25px}.two-col .text-link{margin-top:25px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service-card{display:flex;flex-direction:column;border:1px solid var(--line);background:#FFFFFF;transition:transform .3s,box-shadow .3s;overflow:hidden}.service-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #1F252B12}.service-card>.image-wrap{height:240px;overflow:hidden}.service-card img{height:100%;width:100%;object-fit:cover;transition:transform .7s}.service-card:hover img{transform:scale(1.04)}.service-card-body,.service-card-content{padding:25px}.service-card h2,.service-card h3{font-size:24px;letter-spacing:-.035em;margin:10px 0 15px}.service-card>p,.service-card>h2,.service-card>h3,.service-card>.card-number,.service-card>.text-link{margin-inline:25px}.service-card>p{font-size:14px;color:var(--muted);margin-bottom:20px}.service-card>.text-link{align-self:flex-start;margin-bottom:28px;margin-top:auto}.service-card .card-number{font-size:11px;color:var(--red-dark)}.service-card>.card-number{margin-top:24px}.service-icon{width:42px;height:42px;margin:25px 25px 0;color:var(--red-dark)}.service-card .text-link{margin-top:20px}.detail-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:80px}.detail-aside{background:#F1F3F5;padding:35px;height:fit-content;position:sticky;top:120px}.detail-aside h2,.detail-aside h3{font-size:25px;letter-spacing:-.04em;margin-bottom:20px}.detail-aside p{font-size:14px;color:var(--muted);margin-bottom:24px}.detail-aside .button{width:100%;margin-top:10px}.detail-aside a:not(.button){display:block;font-size:13px;margin-top:16px;text-decoration:underline}.detail-grid .image-wrap{margin:30px 0}.detail-grid img{width:100%;max-height:450px;object-fit:cover}.detail-grid h2{font-size:32px;margin:28px 0 18px}.detail-grid li{margin-bottom:12px}.detail-grid ul{padding-left:20px}.process-step{padding:28px;border-top:1px solid var(--line)}.process-step .card-number{color:var(--red-dark);font-size:12px}.process-step h3{font-size:23px;margin:16px 0}.process-step p{font-size:14px;color:var(--muted)}.faq-list{max-width:900px;margin-inline:auto}details{border-top:1px solid var(--line);padding:23px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-size:17px;font-weight:600;padding-right:32px;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary::after{content:'+';position:absolute;right:3px;top:-3px;font-size:25px;font-weight:400}details[open] summary::after{content:'−'}details p{font-size:14px;line-height:1.9;color:var(--muted);max-width:750px;margin-top:15px}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:35px}.filter-button{background:transparent;border:1px solid #CBD1D8;padding:10px 22px;font-size:12px;border-radius:2px}.filter-button[aria-pressed=true],.filter-button.is-active{background:var(--dark);border-color:var(--dark);color:white}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:36px 28px}.gallery-card{margin:0}.gallery-card button,.gallery-image{display:block;position:relative;border:0;padding:0;background:#E6E9ED;width:100%;overflow:hidden}.gallery-card img{width:100%;height:330px;object-fit:cover;transition:transform .6s}.gallery-card button:hover img,.gallery-image:hover img{transform:scale(1.045)}.gallery-card button::after{content:'+';position:absolute;right:20px;bottom:20px;background:var(--paper);color:var(--ink);width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font-size:26px}.gallery-card h2,.gallery-card h3{font-size:21px;margin:18px 0 8px}.gallery-card p,.gallery-card figcaption{font-size:13px;color:var(--muted)}.gallery-card figcaption{padding-top:16px}.gallery-card figcaption h2,.gallery-card figcaption h3{margin-top:0;color:var(--ink)}.gallery-grid+.note{margin-top:30px}.gallery-status{font-size:12px;color:var(--muted);margin-bottom:20px}.contact-details{padding-right:20px}.contact-details h2{font-size:36px;margin-bottom:24px}.contact-details>p{font-size:14px;color:var(--muted)}.contact-details .contact-link{display:block;padding:20px 0;border-bottom:1px solid var(--line);font-size:21px;letter-spacing:-.02em}.contact-details .contact-link small,.contact-details dt{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px}.contact-details dl{margin:30px 0}.contact-details dd{margin:0 0 22px;font-size:14px}.contact-details h3{font-size:19px;margin:30px 0 15px}.contact-details li{font-size:14px;color:var(--muted)}.contact-details address{font-style:normal;font-size:14px;color:var(--muted)}.enquiry-form{background:#F3F5F7;border:1px solid #DFE4E9;padding:36px}.enquiry-form h2{font-size:28px;letter-spacing:-.04em;margin-bottom:12px}.enquiry-form>p{font-size:13px;color:var(--muted)}.enquiry-step{border:0;margin:0;padding:0;min-width:0}.enquiry-step legend{font-size:23px;letter-spacing:-.03em;margin:22px 0 23px;font-weight:600}.enquiry-step>p{font-size:13px;color:var(--muted);margin-bottom:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:20px;min-width:0}.form-grid .field{margin-bottom:0}.field label{font-size:12px;font-weight:600}.field input,.field select,.field textarea{width:100%;min-height:48px;border:1px solid #C3CBD4;background:var(--paper);padding:12px 14px;font-size:14px;color:var(--ink);border-radius:0}.field textarea{min-height:175px;resize:vertical}.field small{font-size:11px;color:var(--muted)}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--red-dark);outline-offset:1px}.field [aria-invalid=true]{border-color:#9e402e;background:#fff8f5}[data-field-error]{color:#983627;font-size:12px;line-height:1.5;display:block}[data-field-error]:empty{display:none}.enquiry-step .form-grid{margin-bottom:21px}.consent-field,.checkbox-field{display:flex;align-items:flex-start;gap:11px;font-size:12px;line-height:1.7;margin:20px 0}.consent-field input,.checkbox-field input{width:18px;height:18px;flex:0 0 18px;accent-color:var(--dark);margin-top:3px}.consent-field a,.checkbox-field a{text-decoration:underline}.form-actions{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:25px}.enquiry-form [data-prev]{background:transparent;border:1px solid #C3CBD4;padding:13px 20px;font-size:12px}.enquiry-form [data-next],.enquiry-form button[type=submit]{background:var(--dark);border:0;color:white;padding:15px 23px;font-size:12px;margin-left:auto}.step-progress{display:flex;list-style:none;padding:0;margin:0 0 25px;gap:10px}.step-progress li,.step-progress>span{flex:1;border-top:2px solid #D3D9E0;padding-top:10px;font-size:10px;color:var(--muted)}.step-progress [aria-current=step],.step-progress .is-active{border-color:var(--red-dark);color:var(--ink)}.step-progress button{background:none;border:0;padding:0;font-size:inherit;color:inherit}.step-progress span{margin-right:5px}.enquiry-form [data-form-status]:not(:empty){border:1px solid #C5CCD4;padding:16px;background:#FFFFFF;margin-top:20px;font-size:13px}.enquiry-form [data-form-status].is-error{border-color:#d0a190;color:#8c3829}.enquiry-form [data-form-status].is-success{border-color:#98ac8e;background:#edf5e8;color:#284a29}.honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.form-summary{background:#E4E8ED;border-left:2px solid var(--red-dark);padding:16px;font-size:13px;margin-bottom:24px}.page-404 main{min-height:60vh}.page-privacy .prose{margin-inline:auto}.page-privacy .prose h2:first-child{margin-top:0}
.page-hero.container{width:100%;padding-inline:max(56px,calc((100% - 1320px)/2));margin:0}.back-link{margin-bottom:26px}.section-soft{background:#F4F5F7}.image-wrap{position:relative}.image-caption{display:block;font-size:10px;color:var(--muted);padding-top:9px}.service-grid+.note{margin-top:24px}.service-card .service-card-body>p{font-size:14px;line-height:1.8;color:var(--muted)}.home-service-card .service-card-body{padding:24px 0 28px}.faq-item summary>span{display:none}.faq-list{width:100%}.contact-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:100px}.contact-details .contact-link{position:relative;font-size:23px;line-height:1.5}.contact-link>span[aria-hidden]{position:absolute;right:0;top:30px}.contact-area{margin-top:38px}.contact-area .eyebrow{margin-bottom:15px}.contact-area>p:last-child{font-size:15px;color:var(--muted)}.field-full{grid-column:1/-1}.form-trap{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}.checkbox-label{display:flex;align-items:flex-start;gap:12px;font-weight:400!important;line-height:1.8}.checkbox-label input{width:17px;min-height:17px;height:17px;flex:0 0 17px;margin-top:3px;accent-color:var(--dark)}.checkbox-label a{text-decoration:underline;text-underline-offset:3px}.enquiry-form{scroll-margin-top:120px}.enquiry-step>.note{margin-top:19px;font-size:11px}.step-progress>span{padding-bottom:3px}.step-progress b{font-weight:400;font-size:9px;display:block;margin-bottom:4px}.gallery-expand{position:absolute;right:18px;bottom:18px;width:40px;height:40px;background:var(--paper);color:var(--ink);display:grid;place-items:center;border-radius:50%;font-size:22px}.gallery-card>a>.eyebrow{margin:18px 0 8px;font-size:9px}.gallery-card>a>h2{margin:0}.page-hero .note{margin-top:25px;max-width:710px;font-size:11px}.button-group{display:flex;flex-wrap:wrap;gap:15px}.page-hero .button-outline{margin-left:0}
@media(max-width:1200px){.page-hero.container{padding-inline:40px}.contact-grid{gap:65px}.contact-details .contact-link{font-size:20px}}
@media(max-width:980px){.page-hero.container{padding-inline:28px}.contact-grid{gap:35px}.hero-note{display:flex;position:absolute;right:0;bottom:52px;margin:0}.hero-note .tiny-cross,.hero-note>div>span{display:none}.hero-note small{font-size:7px;letter-spacing:.1em}}
@media(max-width:760px){.page-hero.container{padding-inline:20px}.contact-grid{grid-template-columns:1fr;gap:45px}.step-progress>span{font-size:10px}.contact-details .contact-link{font-size:21px}.hero-note{bottom:51px}.hero-note small{font-size:6px}.home-service-card .service-card-body{padding:20px 0 25px}.page-hero .note{font-size:11px;line-height:1.9}.gallery-card>a>h2{font-size:23px}.contact-link>span[aria-hidden]{top:27px}.gallery-card>a>.eyebrow{font-size:10px}}
/* Dialogs and progressive enhancement. */
dialog{border:0;color:var(--ink);padding:0}dialog::backdrop{background:#131A23B8;backdrop-filter:blur(7px)}.search-dialog{width:min(650px,calc(100% - 32px));background:var(--paper);padding:30px;margin-top:15vh;max-height:75vh;box-shadow:0 30px 100px #0003}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.dialog-top .eyebrow{margin:0}.dialog-close{font-size:30px}.search-dialog input{width:100%;border:0;border-bottom:1px solid #B7BEC6;padding:20px 0;background:none;border-radius:0;font-size:26px;letter-spacing:-.03em}.search-hint{font-size:12px;color:var(--muted);margin:16px 0}#search-results{max-height:38vh;overflow:auto}#search-results a{display:flex;align-items:center;justify-content:space-between;padding:13px 5px;border-bottom:1px solid var(--line);font-size:14px}#search-results a small{font-size:10px;color:var(--muted)}#search-results a:hover{background:#ECEFF3}#search-results p{font-size:14px;padding:20px 0}.dialog-foot{padding-top:20px;font-size:10px;color:var(--muted)}kbd{border:1px solid #B7BEC6;padding:2px 6px;margin-inline:3px}.lightbox{background:#171D24;color:#fff;width:min(1100px,calc(100% - 40px));max-height:92vh;padding:48px 24px 18px;overflow:auto}.lightbox>img{width:100%;height:auto;max-height:73vh;object-fit:contain}.lightbox-close{position:absolute;top:4px;right:7px;font-size:30px;color:#fff}.lightbox-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:15px}.lightbox-caption p{font-size:13px;text-align:center}.lightbox-caption button{background:transparent;color:#fff;border:1px solid #fff6;width:40px;height:40px;font-size:20px;flex-shrink:0}.js-enhanced [data-reveal]{opacity:0;transform:translateY(25px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.js-enhanced [data-reveal].is-visible{opacity:1;transform:translateY(0)}.reduce-motion *,.reduce-motion *::before,.reduce-motion *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reduce-motion [data-reveal]{opacity:1;transform:none}@keyframes scrollCue{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}@keyframes modelFloat{0%,100%{transform:rotateX(58deg) rotateZ(-35deg) translateZ(0)}50%{transform:rotateX(56deg) rotateZ(-29deg) translateZ(10px)}}
@media(min-width:1600px){.hero-content{padding-top:105px}.hero h1{font-size:104px}.hero-description{font-size:16px}.hero-actions{margin-top:35px}.hero-footer{bottom:38px}.hero-note small{font-size:9px}}
@media(max-width:1200px){.container{width:calc(100% - 80px)}.header-inner{gap:20px}.brand-sub{display:none}.main-nav{gap:24px}.header-actions{gap:15px}.hero h1{font-size:80px}.hero-note{margin-right:20px}.introduction{gap:65px}.process-section .two-col{gap:55px}.architecture-model{width:230px;height:230px}.model-wall{width:230px}.column-one,.column-two{top:36px}.service-card-image{height:275px}.space-card>div:last-child{display:block}.space-card>div:last-child>span{display:block;margin-top:10px}.footer-grid{gap:30px}.detail-grid{gap:45px}.two-col{gap:45px}}
@media(max-width:980px){.container{width:calc(100% - 56px)}.header-inner{height:82px}.header-actions .header-cta{display:none}.hero{height:auto;min-height:690px}.hero-content{padding-top:70px}.hero h1{font-size:76px}.hero-note{display:none}.hero-footer{bottom:25px}.section{padding-block:80px}.introduction{gap:50px}.expertise-section{padding-top:0}.assurance-strip .container>span{font-size:10px;gap:9px}.assurance-strip .container>span+span{padding-left:3vw}.home-services{gap:17px}.service-card-image{height:245px}.home-service-card .service-card-body{padding-inline:0}.service-card-body h3{font-size:17px}.secondary-services h3{font-size:13px}.secondary-services>a{gap:10px}.process-section .two-col{gap:36px}.architecture-stage{transform:scale(.9);margin-inline:-20px}.process-tabs button{font-size:11px;gap:7px}.process-tabs button>span:first-child{font-size:9px}.spaces-grid{gap:24px}.space-card .image-wrap{height:295px}.testimonial-section>.container{grid-template-columns:.75fr 2fr;gap:30px}.project-cta>.container{gap:30px}.project-cta .button{font-size:11px;gap:15px;padding:16px}.footer-grid{grid-template-columns:1.2fr .8fr 1fr;gap:35px}.footer-contact{grid-column:1/-1;display:flex;align-items:baseline;gap:30px}.footer-contact p{margin-left:auto;margin-top:0}.footer-contact h2{margin-bottom:0}.footer-bottom{font-size:8px}.service-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1.5fr 1fr;gap:30px}.detail-aside{padding:25px}.enquiry-form{padding:25px}.contact-details .contact-link{font-size:17px}.gallery-card img{height:280px}}
@media(max-width:760px){html{scroll-padding-top:85px}.container{width:calc(100% - 40px)}.topbar .container{min-height:30px}.topbar .container>span{font-size:7px;letter-spacing:.1em}.topbar a{font-size:9px}.topbar a span{margin-left:0}.topbar a{font-size:0}.topbar a span{font-size:10px}.header-inner{height:76px}.brand-word{font-size:43px}.brand-mark{width:29px;height:36px}.brand-sub{display:inline-block;font-size:6px;margin-left:10px}.header-actions{gap:12px}.menu-toggle{display:flex;flex-direction:column;gap:6px}.menu-toggle span{width:23px;height:1px;background:var(--ink);transition:transform .25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.js-enhanced .main-nav{display:none}.main-nav,.main-nav.is-open{position:absolute;top:76px;left:0;right:0;background:var(--paper);margin:0;padding:20px;box-shadow:0 14px 20px #0001;flex-direction:column;align-items:stretch;gap:0}.js-enhanced .main-nav.is-open{display:flex}.main-nav>a{font-size:15px;padding:15px 8px;border-bottom:1px solid var(--line)}.main-nav>a::after{display:none}.main-nav>a[aria-current]{color:var(--red-dark)}.hero{min-height:720px;height:calc(100svh - 106px);max-height:850px}.hero-photo{object-position:62% center}.hero-shade{background:linear-gradient(90deg,#121B25D9,#17212D88 60%,#0001),linear-gradient(0deg,#121923E8,transparent 45%)}.hero-content{padding-top:71px;padding-bottom:130px}.hero .eyebrow{font-size:8px;letter-spacing:.15em;gap:10px;margin-bottom:27px}.hero h1{font-size:clamp(61px,11vw,83px);line-height:1.05;letter-spacing:-.055em}.hero-description{font-size:13px;line-height:1.9;margin-top:26px}.hero-actions{align-items:flex-start;gap:22px;flex-wrap:wrap;margin-top:28px}.hero-actions .button{font-size:11px;min-height:51px;padding-inline:19px;gap:23px}.hero-secondary{font-size:10px;gap:10px;padding-block:14px}.hero-footer{bottom:23px;gap:15px}.scroll-cue{font-size:7px;gap:9px;letter-spacing:.1em}.scroll-cue>span{width:24px;height:34px;font-size:15px}.hero-controls{gap:6px}.hero-controls button{width:30px;height:30px;font-size:14px}.hero-controls .slide-index{gap:7px;margin-right:3px}.slide-divider{width:23px}.slide-index>span:first-child{font-size:10px}.slide-index{font-size:9px}.hero-controls button[data-hero-pause]{width:22px}.assurance-strip .container{min-height:70px;gap:14px;overflow-x:auto;padding-block:16px;justify-content:flex-start;scrollbar-width:none}.assurance-strip .container>span{white-space:nowrap;font-size:9px;gap:8px;min-width:max-content}.assurance-strip .container>span+span{padding-left:16px}.assurance-strip svg{width:18px;height:18px}.section{padding-block:65px}.eyebrow{font-size:9px;letter-spacing:.15em;margin-bottom:20px}h2{font-size:35px}.introduction{grid-template-columns:1fr;gap:15px}.introduction h2{font-size:39px}.intro-copy{padding-top:10px}.intro-copy .lead{font-size:19px}.intro-copy>p:not(.lead){font-size:14px}.intro-copy .text-link{margin-top:23px}.section-heading{gap:24px;align-items:flex-start;margin-bottom:30px;flex-direction:column}.section-heading>div:last-child>p:not(.eyebrow){display:none}.section-heading .text-link{font-size:11px}.expertise-section{padding-top:0}.home-services{grid-template-columns:1fr;gap:17px}.service-card-image{height:300px}.service-card-body{padding:20px 0 25px}.service-card-body h3{font-size:23px}.service-card-body p{max-width:100%;font-size:14px}.secondary-services{grid-template-columns:1fr;gap:0;margin-top:0}.secondary-services>a{padding:20px 0}.secondary-services h3{font-size:17px}.secondary-services>a>span:first-child{font-size:11px}.process-section .two-col{grid-template-columns:1fr;gap:25px}.process-section h2{font-size:39px}.process-tabs{margin-top:26px}.process-tabs button{font-size:13px;padding:18px 0;gap:12px}.process-panels{min-height:110px;font-size:14px}.architecture-stage{height:390px;transform:scale(.95);margin:15px 0 -10px}.architecture-model{width:230px;height:230px}.model-label{font-size:8px}.label-top{top:0}.label-bottom{bottom:54px}.spaces-grid{grid-template-columns:1fr;gap:35px}.space-card .image-wrap{height:290px}.space-card>div:last-child{display:flex;padding-top:18px}.space-card>div:last-child>span{font-size:7px;margin-top:0;max-width:100px;text-align:right}.space-card h3{font-size:19px}.collection-note{font-size:10px}.testimonial-section{padding:50px 0}.testimonial-section>.container{grid-template-columns:1fr;gap:5px}.testimonial-side{display:flex;justify-content:space-between;align-items:center}.testimonial-side .eyebrow{font-size:9px;margin:0}.quote-mark{font-size:77px;line-height:.7}.testimonial-main{padding-right:0}.testimonial-main blockquote{font-size:26px;min-height:145px}.quote-person{margin-top:27px}.quote-person div>span{max-width:150px;font-size:9px}.testimonial-controls{gap:6px}.testimonial-controls>span{display:none}.testimonial-controls button{width:32px;height:32px;font-size:15px}.project-cta{padding:58px 0}.project-cta>.container{align-items:flex-start;flex-direction:column;gap:30px}.project-cta h2{font-size:35px}.project-cta .eyebrow{font-size:9px}.project-cta .button{font-size:12px;gap:30px;padding:16px 24px}.cta-action{align-items:flex-start;gap:15px}.cta-phone{font-size:11px}.cta-arch{right:-100px;top:60px;border-width:55px}.site-footer{padding-top:50px}.footer-grid{grid-template-columns:1fr 1fr;gap:38px 20px;padding-bottom:35px}.footer-brand{grid-column:1/-1}.footer-brand>p+p{margin-top:14px}.footer-grid h2{margin:0 0 18px}.footer-contact{display:block;grid-column:auto}.footer-contact p{margin-top:17px}.footer-grid>div>a:not(.brand){font-size:11px}.footer-bottom{flex-direction:column;font-size:8px;gap:15px;padding-block:20px}.footer-bottom>div{gap:22px;justify-content:space-between}.footer-bottom button{font-size:8px}.page-hero{padding:53px 0 45px}.page-hero h1,.display-heading{font-size:44px}.page-hero .lead{font-size:15px;margin-top:22px}.two-col,.three-col,.detail-grid{grid-template-columns:1fr;gap:35px}.two-col>.image-wrap img{max-height:440px}.service-grid{grid-template-columns:1fr;gap:24px}.service-card>.image-wrap{height:265px}.detail-aside{position:static}.detail-grid h2{font-size:29px}.process-step{padding:23px 0}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-card img{height:280px}.filter-bar{gap:7px;margin-bottom:25px}.filter-button{padding:9px 14px;font-size:11px}.gallery-card h2,.gallery-card h3{font-size:23px}.form-grid{grid-template-columns:1fr;gap:18px}.enquiry-form{padding:23px 20px}.enquiry-form h2{font-size:26px}.enquiry-step legend{font-size:22px}.contact-details{padding-right:0}.contact-details .contact-link{font-size:20px}.search-dialog{padding:23px;margin-top:10vh}.search-dialog input{font-size:21px}.lightbox{padding:43px 12px 15px;width:calc(100% - 20px)}.lightbox-caption p{font-size:11px}.prose{font-size:14px}.prose h2{font-size:24px}.footer-grid .brand-word{font-size:54px}}
@media(max-width:380px){.container{width:calc(100% - 32px)}.brand-sub{display:none}.hero{min-height:750px}.hero h1{font-size:60px}.hero-actions{gap:11px}.hero-secondary{padding-block:8px}.hero-controls .slide-index{display:none}.hero-footer{gap:10px}.service-card-image{height:270px}.space-card>div:last-child{display:block}.space-card>div:last-child>span{max-width:none;text-align:left;margin-top:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-enhanced [data-reveal]{opacity:1;transform:none}}
@media print{.topbar,.site-header,.hero-controls,.hero-footer,.project-cta,.search-dialog,.lightbox,.footer-bottom,.architecture-stage{display:none!important}.container{width:100%}.hero{height:auto;min-height:0;background:white;color:black;padding:20px}.hero-visual,.hero-shade,.hero-grid{display:none}.hero h1 em,.hero-description{color:black}.hero-content{padding:0}.section{padding-block:30px}.js-enhanced [data-reveal]{opacity:1;transform:none}.site-footer{background:white;color:black}.button{border:1px solid black}.process-section{background:white;color:black}}
.process-section .process-copy p:not(.eyebrow){color:#C5CDD6}.process-section .process-panels p{font-size:14px}.footer-bottom button:disabled{opacity:1;cursor:default}
@media(max-width:980px){.hero-note{display:flex;position:absolute;right:0;bottom:53px;margin:0}.hero-note .tiny-cross,.hero-note>div>span{display:none}.hero-note small{font-size:8px;letter-spacing:.06em}}
@media(max-width:760px){.hero-note{bottom:50px}.hero-note small{font-size:7px}}
