:root{--paper:#f8fbff;--ink:#20272f;--muted:#5f6b76;--line:#dce5ed;--blue:#0757c8;--accent:#c0e2ce;--green:#25343e;--gutter:48px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;letter-spacing:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;line-height:1.08;text-wrap:balance}h1{font-size:76px}h2{font-size:48px}h3{font-size:24px}p{color:var(--muted);margin-top:20px;max-width:65ch}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}img{display:block;max-width:100%}.wrap{width:100%;max-width:1440px;margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:88px}.no-top{padding-top:12px}.eyebrow{font-size:12px;font-weight:700;line-height:1.5;text-transform:uppercase;color:var(--muted);margin:0 0 24px}.fine{font-size:14px;line-height:1.6}.site-header{height:96px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter);background:white;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{width:144px;flex-shrink:0}.brand img{width:144px;height:88px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:30px}.site-header nav a{font-size:14px;padding:9px 0;position:relative}.site-header nav a:not(.nav-cta):after{content:'';position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s}.site-header nav a:hover:after,.site-header nav a[aria-current]:after{transform:scaleX(1)}.site-header .nav-cta{background:var(--ink);color:white;padding:13px 18px;display:flex;gap:24px}.nav-toggle{display:none}.skip-link{position:absolute;top:-80px;left:20px;z-index:50;background:white;padding:12px}.skip-link:focus{top:10px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:52px;padding:14px 22px;background:var(--blue);color:white;border:0;font-weight:600;font-size:15px;transition:background .25s,box-shadow .25s}.button:hover{background:#003584;box-shadow:inset 0 -4px 0 var(--accent)}.button span,.text-link span,.light-link span{font-size:22px;line-height:1;transition:transform .25s}.button:hover span,.text-link:hover span,.light-link:hover span{transform:translate(3px,-3px)}.text-link,.light-link{display:inline-flex;gap:24px;align-items:center;padding-block:12px;border-bottom:1px solid currentColor;font-size:15px;font-weight:600}.text-link{color:var(--blue);margin-top:22px}.light-link{color:white}.home-hero{position:relative;min-height:490px;overflow:hidden;background:#26343f;color:white}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,28,46,.8),rgba(9,28,46,.3) 52%,transparent 80%)}.hero-copy{position:relative;padding-block:55px}.hero-copy .eyebrow{color:#e8f3fb}.hero-copy h1{font-size:68px;max-width:740px}.hero-tagline{font-size:26px;color:white;margin-top:15px}.hero-links{display:flex;align-items:center;gap:30px;margin-top:30px}.hero-links .button{background:white;color:var(--blue)}.hero-caption{position:absolute;right:24px;bottom:16px;font-size:12px;color:white;background:#20272fa6;padding:3px 8px}.opening-line{position:absolute;right:30%;top:0;bottom:0;border-left:1px solid #ffffff50;pointer-events:none;animation:opening 1.4s cubic-bezier(.2,.65,.3,1) both}.hero-copy{animation:arrive .8s .15s both}.credential-strip{border-bottom:1px solid var(--line);background:white}.credential-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;font-size:13px}.credential-strip b{font-size:20px;font-weight:500;margin-right:6px}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:40px;margin-bottom:50px}.section-heading h2{max-width:850px}.section-heading p{max-width:600px}.audience-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px}.segmented{display:flex;border-bottom:1px solid var(--line);margin-bottom:30px}.segmented button{border:0;border-bottom:3px solid transparent;background:none;padding:14px 20px;color:var(--muted);font-size:15px}.segmented button[aria-pressed=true]{border-color:var(--blue);color:var(--blue)}.audience-copy{min-height:238px}.audience-copy.switching{animation:arrive .4s}.service-index a{display:grid;grid-template-columns:35px 1fr 24px;gap:15px;align-items:center;min-height:74px;border-bottom:1px solid var(--line);font-size:23px;transition:padding .3s,background .3s}.service-index a:hover{padding-inline:12px;background:#edf5fb}.index{font-size:12px;color:var(--muted);font-family:monospace}.service-index .all-services{font-size:15px;display:flex;justify-content:space-between;color:var(--blue)}.experience-band{background:var(--green);color:white;padding-block:80px}.experience-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.experience-number{font-size:172px;line-height:1;font-weight:500;color:var(--accent);position:relative}.experience-number>span{font-size:70px;vertical-align:top}.experience-number small{display:block;font-size:16px;color:#d8e7f0;line-height:1.6;margin-top:24px}.experience-band p{color:#d4e2ec}.experience-band .eyebrow{color:var(--accent)}.experience-band .light-link{margin-top:24px}.materials{display:grid;grid-template-columns:1.12fr 1fr;gap:100px;align-items:center}.material-sample{min-height:440px;background:#e8f1f7;position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:24px}.sample-top{display:flex;justify-content:space-between;gap:10px;font:12px monospace}.sample-colour{height:205px;width:75%;margin:32px auto;background:var(--finish);transform:skewY(-12deg);box-shadow:12px 16px 0 #00000018;transition:background .55s,transform .55s;border:1px solid #00000016}.material-sample:hover .sample-colour{transform:skewY(-7deg) translateY(-7px)}.sample-caption{display:grid;gap:4px}.sample-caption strong{font-size:18px;font-weight:500}.sample-caption span{font-size:12px;color:var(--muted)}.swatches{display:flex;gap:14px;margin:28px 0}.swatch{width:48px;height:48px;background:none;border:1px solid transparent;border-radius:50%;padding:5px;flex-shrink:0}.swatch span{display:block;width:100%;height:100%;background:var(--swatch);border-radius:50%;border:1px solid #0002}.swatch.selected{border-color:var(--ink)}.material-controls h3{font-size:20px}.material-controls [data-finish-copy]{min-height:54px}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}.process article{border-top:1px solid var(--line);padding-top:22px}.step{font:14px monospace;color:var(--blue);display:block;margin-bottom:35px}.process h3{font-size:22px}.process p{font-size:16px}.project-cta{background:var(--blue);color:white;padding-block:60px;position:relative;overflow:hidden}.project-cta .wrap{position:relative}.project-cta h2{font-size:64px;max-width:800px}.project-cta .button{position:absolute;right:var(--gutter);bottom:8px;background:white;color:var(--blue)}.project-cta .eyebrow{color:var(--accent)}footer{background:var(--ink);color:white;padding-top:54px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:36px;padding-bottom:52px}.footer-top strong{font-size:17px}.footer-top p{color:#c5d1da;font-size:14px;margin-top:14px}.footer-top .eyebrow{margin:0 0 16px;font-size:12px}.footer-links{display:flex;gap:22px;font-size:14px}.footer-links a:hover{color:var(--accent)}.footer-bottom{border-top:1px solid #ffffff26;padding-block:22px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#c5d1da}.footer-contact{display:grid;gap:5px;font-size:14px}.footer-contact a,.contact-links a{overflow-wrap:anywhere}.page-heading{padding-block:65px 60px}.page-heading h1{max-width:1000px}.lead{font-size:20px;max-width:760px}.service-section{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-bottom:80px}.service-intro{padding-top:25px}.service-intro p{max-width:280px}.service-detail{border-top:1px solid var(--line)}.service-detail:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service-detail summary{display:grid;grid-template-columns:28px 1fr 24px;gap:18px;align-items:center;padding:27px 0}.service-detail summary h2{font-size:30px}.expand{font-size:30px;transition:transform .3s}.service-detail[open] .expand{transform:rotate(45deg)}.service-detail[open] summary h2{color:var(--blue)}.service-body{padding:8px 42px 32px;animation:arrive .35s}.service-body h3{font-size:23px}.options{display:flex;flex-wrap:wrap;gap:8px 24px;padding-left:18px;margin-top:25px;color:var(--muted);font-size:14px}.glass-section{background:#edf5fb}.glass-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center}.glass-preview{position:relative;min-width:0;aspect-ratio:1.4;overflow:hidden}.glass-preview img{width:100%;height:100%;object-fit:cover;transition:filter .5s}.glass-overlay{position:absolute;inset:0;pointer-events:none;transition:background .5s}.glass-preview figcaption{position:absolute;bottom:0;left:0;right:0;padding:20px;background:#20272fd9;color:white;display:grid;gap:4px}.glass-preview figcaption small{font-size:12px}.glass-select{margin-bottom:28px}.glass-link+.fine{margin-top:30px}.benefits{display:grid;grid-template-columns:repeat(2,1fr);gap:40px 70px}.benefits article{border-top:1px solid var(--line);padding-top:26px}.faq{margin-top:40px;padding:22px 0;border-block:1px solid var(--line)}.faq summary{font-size:20px}.faq summary:after{content:'+';float:right}.empty-work{padding-block:40px 110px;min-height:350px;border-top:1px solid var(--line)}.empty-work h2{color:#677583}.story{display:grid;grid-template-columns:1fr 1.4fr;gap:100px;align-items:start}.story-number{font-size:168px;line-height:1;color:var(--blue)}.story-number>span{font-size:64px;vertical-align:top}.story-number p{font-size:18px;line-height:1.6}.career-band{background:#edf5fb}.career{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.career article{border-top:2px solid var(--green);padding-top:22px}.career article>span{color:var(--green);display:block;margin-bottom:24px;font:14px monospace}.career h3{font-size:23px}.career p{font-size:16px}.quote-layout{display:grid;grid-template-columns:1fr 1.6fr;gap:90px}.quote-layout aside h2{font-size:40px}.contact-links{display:grid;gap:10px;margin-top:30px}.contact-links>a{font-size:16px}.contact-links>a:not(.text-link){display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:10px}.contact-links .text-link{justify-self:start}fieldset{border:0;border-top:1px solid var(--line);padding:25px 0 32px;margin:0;min-width:0}legend{font-size:21px;padding:0 15px 0 0}legend>span{font:12px monospace;color:var(--blue);margin-right:12px}legend small{font-size:12px;margin-left:12px;color:var(--muted)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:grid;gap:8px;font-size:14px;margin-bottom:22px}input,select,textarea{width:100%;min-width:0;min-height:48px;padding:12px;background:white;border:1px solid #bacbd8;border-radius:0;color:var(--ink);font-size:16px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.quote-layout form>.button{margin-top:20px}#quote-result{margin-top:35px;border-top:1px solid var(--line);padding-top:25px}#quote-result h3{margin-bottom:18px}.result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:20px}.result-actions .text-link{margin:0}.text-button{border:0;border-bottom:1px solid;background:none;padding:8px 0;color:var(--blue)}@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes opening{from{right:90%;opacity:0}to{right:30%;opacity:1}}@media(prefers-reduced-motion:no-preference){.reveal.is-visible{animation:arrive .65s both}@view-transition{navigation:auto}::view-transition-old(root){animation:exit-page .2s both}::view-transition-new(root){animation:arrive .35s both}@keyframes exit-page{to{opacity:0;transform:translateX(-12px)}}}@media(min-width:1600px){.home-hero{min-height:510px}.hero-copy{padding-block:65px}}@media(max-width:1100px){:root{--gutter:32px}.site-header nav{gap:20px}.audience-layout,.experience-layout,.materials,.story,.quote-layout{gap:50px}.footer-top{flex-wrap:wrap}.section-heading{grid-template-columns:1fr 2.5fr}.process{gap:22px}.project-cta h2{font-size:52px}}@media(max-width:800px){:root{--gutter:24px}.site-header{height:82px}.brand,.brand img{width:125px}.brand img{height:78px}.nav-toggle{display:grid;gap:6px;place-content:center;width:46px;height:46px;border:1px solid var(--line);background:white}.nav-toggle span{display:block;width:22px;height:2px;background:var(--ink)}.site-header nav{display:none;position:absolute;top:82px;left:0;right:0;background:white;padding:20px 24px;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:10px}.site-header nav a{padding:12px}.home-hero{min-height:470px}.hero-copy h1{font-size:54px}.hero-copy{padding-block:48px}.hero-shade{background:linear-gradient(90deg,#10263bcb,#10263b55)}.hero-tagline{font-size:23px}.credential-strip .wrap{flex-wrap:wrap;gap:5px 20px;padding-block:17px}.credential-strip .wrap>strong{width:100%}.section{padding-block:60px}.section-heading{grid-template-columns:1fr;gap:0;margin-bottom:35px}h1{font-size:56px}h2{font-size:40px}.audience-layout,.materials,.glass-layout,.story,.quote-layout{grid-template-columns:1fr;gap:38px}.experience-layout{gap:30px}.experience-number{font-size:120px}.experience-number>span{font-size:50px}.experience-band h2{font-size:34px}.process,.career{grid-template-columns:1fr 1fr;gap:35px}.material-sample{min-height:360px}.material-controls{max-width:620px}.project-cta .button{position:static;margin-top:30px}.project-cta h2{font-size:48px}.service-section{grid-template-columns:1fr;gap:20px}.service-intro p{max-width:600px}.page-heading{padding-block:48px}.no-top{padding-top:0}.story-number{font-size:120px}.story-number p{font-size:16px}.story{gap:40px}.story-number>span{font-size:48px}.footer-bottom{flex-wrap:wrap}}@media(max-width:480px){:root{--gutter:20px}h1{font-size:44px}h2{font-size:34px}.home-hero{min-height:465px}.hero-copy h1{font-size:44px}.hero-copy{padding-top:44px}.hero-links{align-items:start;gap:15px;flex-direction:column;margin-top:24px}.hero-tagline{font-size:21px}.hero-links .button{min-height:48px}.hero-caption{font-size:12px;right:12px;bottom:10px}.experience-layout{grid-template-columns:1fr;gap:35px}.experience-band{padding-block:55px}.experience-number{font-size:124px}.experience-number small{margin-top:8px}.process,.career,.benefits{grid-template-columns:1fr}.process article{padding-top:18px}.step{margin-bottom:18px}.service-index a{font-size:21px}.service-detail summary{grid-template-columns:23px 1fr 22px;gap:8px}.service-detail summary h2{font-size:25px}.service-body{padding-left:31px;padding-right:0}.service-body h3{font-size:21px}.form-row{grid-template-columns:1fr;gap:0}.footer-links{flex-wrap:wrap;gap:16px}.footer-top{gap:30px}.project-cta h2{font-size:40px}.page-heading .lead{font-size:18px}.material-sample{min-height:340px;padding:20px}.sample-colour{height:170px}.sample-top{font-size:12px}.segmented button{padding-inline:13px}.glass-preview{aspect-ratio:1.05}.button{gap:24px}.quote-layout aside h2{font-size:34px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
:root{--motion-ease:cubic-bezier(.16,1,.3,1)}
h1,h2,.experience-number,.story-number{font-family:Bahnschrift,'Arial',sans-serif}
.hero-image{animation:glass-open 1.25s var(--motion-ease) both}
.home-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 24.9%,#ffffff23 25%,transparent 25.1%,transparent 49.9%,#ffffff23 50%,transparent 50.1%,transparent 74.9%,#ffffff23 75%,transparent 75.1%);pointer-events:none;animation:frame-clear 1.7s both}
.process article:nth-child(2),.career article:nth-child(2){animation-delay:.1s}
.process article:nth-child(3),.career article:nth-child(3){animation-delay:.2s}
.process article:nth-child(4),.career article:nth-child(4){animation-delay:.3s}
.material-controls,.service-details,.quote-layout form,.quote-layout aside,.experience-layout>div,.story>div{min-width:0}
.swatch:hover{outline:1px solid var(--muted);outline-offset:3px}
@keyframes glass-open{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@keyframes frame-clear{0%,50%{opacity:1}100%{opacity:0}}
@media(min-width:801px) and (max-height:760px){.home-hero{min-height:395px}.hero-copy{padding-block:34px}.hero-copy h1{font-size:56px}.hero-tagline{font-size:23px}.hero-links{margin-top:23px}}
@media(max-width:480px) and (max-height:700px){.home-hero{min-height:420px}.hero-copy{padding-top:30px;padding-bottom:35px}.hero-copy h1{font-size:40px}.hero-copy .eyebrow{margin-bottom:18px}.hero-links{gap:10px;margin-top:18px}}
@media(prefers-reduced-motion:reduce){.hero-image{clip-path:none}.home-hero:after{display:none}}
.home-hero:after,.opening-line{display:none!important}
.hero-image{animation:hero-reveal 1.05s var(--motion-ease) both;transform-origin:center}
.hero-copy{animation:hero-copy-reveal .75s .12s var(--motion-ease) both}
@keyframes hero-reveal{from{opacity:.35;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}
@keyframes hero-copy-reveal{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.hero-image,.hero-copy{animation:none;transform:none;opacity:1}}

/* Home storytelling panels: the content stays readable while the layout carries more of the visual weight. */
main>.wrap.section:has(.audience-content){position:relative;overflow:hidden;background:linear-gradient(105deg,#f8fbff 0 58%,#eaf3fa 58% 100%);}
main>.wrap.section:has(.audience-content):before{content:'SPACE / LIGHT / FUNCTION';position:absolute;top:42px;right:var(--gutter);color:#809bae;font:11px monospace;letter-spacing:.08em;transform:rotate(90deg);transform-origin:right top;}
main>.wrap.section:has(.audience-content) .section-heading{position:relative;z-index:1;padding-right:12%;}
main>.wrap.section:has(.audience-content) .section-heading h2{font-size:clamp(48px,6vw,86px);}
main>.wrap.section:has(.audience-content) .editorial-copy{position:relative;z-index:1;grid-template-columns:1.1fr .9fr;gap:0;background:#20272f;color:white;margin-top:10px;}
main>.wrap.section:has(.audience-content) .editorial-copy>p{padding:38px 42px 42px;color:white;font-size:21px;line-height:1.42;border-right:1px solid #ffffff29;}
main>.wrap.section:has(.audience-content) .editorial-copy>div{padding:20px 38px 28px;background:var(--blue);}
main>.wrap.section:has(.audience-content) .editorial-copy>div p{color:white;margin-top:16px;font-size:15px;}
main>.wrap.section:has(.audience-content) .audience-content{position:relative;z-index:1;margin-top:42px;padding:0;border-top:0;grid-template-columns:1.05fr .95fr;gap:0;background:white;box-shadow:18px 18px 0 #c9dce9;}
main>.wrap.section:has(.audience-content) .audience-content>div:first-child{padding:34px 38px 28px;}
main>.wrap.section:has(.audience-content) .audience-note{padding:38px;background:var(--accent);border:0;}
main>.wrap.section:has(.audience-content) .audience-note h3{font-size:31px;max-width:290px;}
main>.wrap.section:has(.audience-content) .audience-note p{color:#29483b;}
main>.wrap.section:has(.audience-content) .audience-note:after{content:'↗';display:block;font-size:76px;line-height:1;color:#397158;margin-top:28px;text-align:right;}
main>.wrap.section:has(.audience-content) .audience-copy{min-height:236px;}
main>.wrap.section:has(.audience-content) .audience-copy h3{font-size:31px;}
main>.wrap.section:has(.audience-content) .segmented{border-bottom:2px solid #dbe8f1;}
main>.wrap.section:has(.audience-content) .segmented button{font-weight:700;}

.services-overview{position:relative;overflow:hidden;background:#20272f;}
.services-overview .section-heading h2,.services-overview .section-heading p{color:white;}
.services-overview .section-heading .eyebrow{color:var(--accent);}
.home-service-list{position:relative;z-index:1;gap:0 48px;}
.home-service-list>a{border-color:#ffffff26;color:white;position:relative;overflow:hidden;transition:padding .35s var(--motion-ease),background .35s;}
.home-service-list>a:before{content:'';position:absolute;inset:0;background:var(--blue);transform:translateX(-102%);transition:transform .45s var(--motion-ease);z-index:-1;}
.home-service-list>a:hover:before{transform:translateX(0);}
.home-service-list>a:hover{padding-inline:18px;border-color:transparent;}
.home-service-list>a p{color:#d1e0e9;}
.home-service-list>a:hover p{color:white;}
.home-service-list>a .index,.home-service-list>a .service-explore{color:var(--accent);}
.home-service-list>a:nth-child(even){transform:translateY(24px);}

.experience-band{position:relative;overflow:hidden;background:var(--green);}
.experience-band:before{content:'22';position:absolute;right:-20px;top:-80px;color:#ffffff0b;font-size:420px;line-height:1;font-weight:700;pointer-events:none;}
.experience-layout{position:relative;z-index:1;}
.experience-layout>div:last-child{max-width:580px;}
.experience-band .experience-number{animation:count-in 1s .15s var(--motion-ease) both;}
@keyframes count-in{from{opacity:0;transform:translateX(-35px)}to{opacity:1;transform:translateX(0)}}

main>.wrap.section:has(.materials)>.section-heading{margin-bottom:28px;}
main>.wrap.section:has(.materials)>.combination-intro{max-width:560px;margin-bottom:44px;padding-left:20px;border-left:3px solid var(--accent);}
main>.wrap.section:has(.materials)>.materials{position:relative;}
main>.wrap.section:has(.materials)>.materials:before{content:'SELECT / COMPARE / BUILD';position:absolute;right:0;top:-34px;color:#8396a5;font:11px monospace;}
.material-sample{box-shadow:16px 16px 0 #c9dce9;}
.material-controls h2{font-size:44px;}

.home-process{background:#eaf3fa;max-width:none;padding-left:calc((100vw - 1440px)/2 + var(--gutter));padding-right:calc((100vw - 1440px)/2 + var(--gutter));}
.home-process .process{gap:0;background:white;box-shadow:14px 14px 0 #c9dce9;}
.home-process .process article{min-height:250px;padding:26px;border-right:1px solid var(--line);transition:background .3s,color .3s,transform .3s;}
.home-process .process article:last-child{border-right:0;}
.home-process .process article:hover{background:var(--blue);color:white;transform:translateY(-10px);}
.home-process .process article:hover p{color:#e8f2fa;}
.home-process .process article:hover .step{color:var(--accent);}

@media(max-width:800px){main>.wrap.section:has(.audience-content){background:var(--paper);}.space-section:before{display:none}.editorial-copy{grid-template-columns:1fr}.home-service-list>a:nth-child(even){transform:none}.home-process{padding-left:var(--gutter);padding-right:var(--gutter)}.home-process .process{box-shadow:8px 8px 0 #c9dce9}.home-process .process article{min-height:190px;border-right:0;border-bottom:1px solid var(--line)}main>.wrap.section:has(.audience-content) .editorial-copy>p{padding:30px 26px;font-size:18px}main>.wrap.section:has(.audience-content) .editorial-copy>div{padding:18px 26px 24px}main>.wrap.section:has(.audience-content) .audience-content{grid-template-columns:1fr;box-shadow:8px 8px 0 #c9dce9}main>.wrap.section:has(.audience-content) .audience-content>div:first-child{padding:26px 24px 20px}.audience-note{padding:28px 24px!important}.material-controls h2{font-size:38px}}
@media(max-width:480px){main>.wrap.section:has(.audience-content) .section-heading h2{font-size:44px}.home-process .process{grid-template-columns:1fr}.home-process .process article{min-height:160px}.home-process .process article:nth-child(2){animation-delay:0}.home-process .process article:nth-child(3){animation-delay:0}.home-process .process article:nth-child(4){animation-delay:0}.main>.wrap.section:has(.materials)>.materials:before{display:none}}

/* Home page contrast and hierarchy refinements. */
main>.services-overview{background:#20272f!important;color:white;}
main>.services-overview .section-heading h2,main>.services-overview .section-heading p{color:white;}
main>.services-overview .section-heading .eyebrow{color:var(--accent);}
main>.services-overview .home-service-list>a{color:white;border-color:#ffffff2b;}
main>.services-overview .home-service-list>a p{color:#d1e0e9;}
main>.services-overview .home-service-list>a .index,main>.services-overview .home-service-list>a .service-explore{color:var(--accent);}
main>.services-overview .home-service-list>a:before{background:var(--blue);}

main>.wrap.section:has(>.materials){background:#f3f8fc;}
main>.wrap.section:has(>.materials)>.section-heading{grid-template-columns:.7fr 1.3fr;align-items:end;padding-bottom:12px;}
main>.wrap.section:has(>.materials)>.section-heading h2{font-size:clamp(42px,5.3vw,72px);max-width:780px;}
main>.wrap.section:has(>.materials)>.combination-intro{margin:0 auto 42px;max-width:780px;padding:20px 24px;background:white;border-left:4px solid var(--blue);font-size:18px;line-height:1.55;}
main>.wrap.section:has(>.materials)>.materials{max-width:1160px;margin-inline:auto;grid-template-columns:1fr 1fr;gap:68px;align-items:stretch;}
main>.wrap.section:has(>.materials)>.materials:after{content:'01  CHOOSE THE FRAME';position:absolute;left:0;top:-34px;color:var(--blue);font:700 11px monospace;letter-spacing:.07em;}
main>.wrap.section:has(>.materials)>.materials .material-controls{padding:28px 0 0;}
main>.wrap.section:has(>.materials)>.materials .material-controls:before{content:'02  MATCH THE GLASS';display:block;margin-bottom:18px;color:var(--blue);font:700 11px monospace;letter-spacing:.07em;}
main>.wrap.section:has(>.materials)>.materials .material-controls h2{font-size:clamp(32px,4vw,52px);line-height:1.03;}
main>.wrap.section:has(>.materials)>.materials .material-controls>p:first-of-type{max-width:480px;}
main>.wrap.section:has(>.materials)>.materials .swatches{padding:18px 0;border-block:1px solid var(--line);}
main>.wrap.section:has(>.materials)>.materials .sample-colour{animation:sample-pulse 5s ease-in-out infinite alternate;}
main>.wrap.section:has(>.materials)>.text-link{display:flex;max-width:1160px;margin:28px auto 0;}
@keyframes sample-pulse{from{transform:skewY(-12deg) translateY(0)}to{transform:skewY(-8deg) translateY(-8px)}}

main>.wrap.section:has(>.process){background:#eaf3fa;max-width:none;padding-left:calc((100vw - 1440px)/2 + var(--gutter));padding-right:calc((100vw - 1440px)/2 + var(--gutter));}
main>.wrap.section:has(>.process)>.section-heading{max-width:1440px;margin-inline:auto;}
main>.wrap.section:has(>.process)>.process{max-width:1440px;margin-inline:auto;background:white;box-shadow:14px 14px 0 #c9dce9;gap:0;}
main>.wrap.section:has(>.process)>.process article{position:relative;min-height:260px;padding:28px;border-right:1px solid var(--line);border-top:0;overflow:hidden;transition:background .4s var(--motion-ease),color .4s var(--motion-ease),transform .4s var(--motion-ease);}
main>.wrap.section:has(>.process)>.process article:last-child{border-right:0;}
main>.wrap.section:has(>.process)>.process article:after{content:'';position:absolute;right:24px;top:33px;width:34px;height:1px;background:var(--blue);transform-origin:right;transition:transform .35s var(--motion-ease);}
main>.wrap.section:has(>.process)>.process article:hover{background:var(--blue);color:white;transform:translateY(-10px);}
main>.wrap.section:has(>.process)>.process article:hover p{color:#e8f2fa;}
main>.wrap.section:has(>.process)>.process article:hover .step{color:var(--accent);}
main>.wrap.section:has(>.process)>.process article:hover:after{background:var(--accent);transform:scaleX(2.2);}
main>.wrap.section:has(>.process)>.process .step{font-size:15px;margin-bottom:46px;}

.project-cta{padding-block:42px;}
.project-cta h2{font-size:48px;}
.project-cta .button{bottom:2px;}
@media(max-width:800px){main>.wrap.section:has(>.materials)>.section-heading{grid-template-columns:1fr;padding-bottom:0}main>.wrap.section:has(>.materials)>.materials{grid-template-columns:1fr;gap:34px}main>.wrap.section:has(>.materials)>.materials .material-controls{padding-top:0}main>.wrap.section:has(>.materials)>.materials:after{top:-26px}main>.wrap.section:has(>.process){padding-left:var(--gutter);padding-right:var(--gutter)}main>.wrap.section:has(>.process)>.process{box-shadow:8px 8px 0 #c9dce9}main>.wrap.section:has(>.process)>.process article{min-height:200px;border-right:0;border-bottom:1px solid var(--line)}.project-cta h2{font-size:40px}}
@media(max-width:480px){main>.wrap.section:has(>.materials)>.combination-intro{padding:16px 18px;font-size:16px}main>.wrap.section:has(>.materials)>.materials .material-controls h2{font-size:35px}.project-cta{padding-block:34px}.project-cta h2{font-size:34px}}
.trust-strip{padding-block:24px;background:white;border-block:1px solid var(--line)}
.trust-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:32px}
.trust-labels{display:flex;flex-wrap:wrap;gap:12px 26px;flex-shrink:0}
.trust-labels strong{font-size:14px;color:var(--green);font-weight:600}
.trust-strip p{margin:0;font-size:14px;max-width:470px}
.editorial-copy{display:grid;grid-template-columns:1fr 1fr;gap:60px}
.editorial-copy>p,.editorial-copy>div>p:first-child{margin-top:0}
.audience-content{margin-top:55px;padding-top:40px;border-top:1px solid var(--line)}
.audience-copy{min-height:280px}
.audience-note{border-left:1px solid var(--line);padding-left:38px}
.services-overview,.personal-service{background:#edf5fb}
.home-service-list{display:grid;grid-template-columns:1fr 1fr;gap:0 48px}
.home-service-list>a{display:grid;grid-template-columns:25px 1fr 22px;gap:16px;border-top:1px solid #ccdce8;padding:27px 0;transition:background .25s}
.home-service-list>a:hover{background:#e4eff7}
.home-service-list h3{font-size:25px}
.home-service-list p{margin-top:12px;font-size:16px}
.service-explore{display:block;color:var(--blue);font-size:14px;margin-top:16px}
.combination-intro{margin:0 0 42px;max-width:800px}
.configuration-list{margin-top:30px}
.configuration-list>div{padding-block:17px;border-top:1px solid var(--line)}
.configuration-list dt{font-weight:600;font-size:17px}
.configuration-list dd{margin:8px 0 0;color:var(--muted)}
.finish-reference,.glass-reference{margin-top:52px}
.guidance-section{background:#edf5fb}
.guidance-section .section-heading{margin-bottom:24px}
.guidance-section .button{margin-left:calc((100% - 40px)/3 + 40px)}
.approach-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:50px}
.approach-steps article{border-top:1px solid #c6d7e3;padding-top:20px}
.approach-steps h3{font-size:24px}
.standard-list h3{font-size:26px;padding-bottom:18px}
.form-intro{margin-bottom:34px}
.form-intro h2{font-size:30px}
.form-guidance{margin:0 0 24px;color:var(--muted);font-size:14px}
.form-guidance h3{font-size:21px;margin-top:24px}
.form-guidance p{margin-top:10px}
.footer-links{flex-wrap:wrap;max-width:380px}
.project-cta p:not(.eyebrow){max-width:500px;color:#e8f2fa;padding-right:20px}
.hero-copy{padding-block:28px 34px}
.hero-copy h1{font-size:56px}
.hero-copy .eyebrow{margin-bottom:14px}
.hero-tagline{font-size:23px;margin-top:8px}
.hero-copy .hero-description{color:white;font-size:16px;line-height:1.5;max-width:570px;margin-top:12px}
.hero-copy .hero-experience{color:white;font-weight:600;font-size:14px;line-height:1.5;max-width:540px;margin-top:12px}
.hero-copy .hero-links{margin-top:22px}
.hero-shade{background:linear-gradient(90deg,rgba(9,28,46,.88),rgba(9,28,46,.58) 44%,rgba(9,28,46,.08) 85%)}
@media(max-width:1100px){.trust-strip .wrap{align-items:flex-start;flex-direction:column;gap:12px}.trust-strip p{max-width:none}.guidance-section .button{margin-left:0}}
@media(max-width:800px){.editorial-copy{grid-template-columns:1fr;gap:24px}.audience-note{padding-left:0;padding-top:30px;border-left:0;border-top:1px solid var(--line)}.home-service-list{gap:0 26px}.home-service-list h3{font-size:22px}.approach-steps{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:48px}.hero-copy{padding-block:28px 40px}.hero-copy .hero-description{max-width:490px}.hero-caption{right:12px;bottom:8px}}
@media(max-width:480px){.home-service-list{grid-template-columns:1fr}.trust-labels{gap:8px 16px}.trust-labels strong{font-size:13px}.trust-strip{padding-block:18px}.trust-strip p{font-size:13px}.approach-steps{grid-template-columns:1fr}.hero-copy h1{font-size:38px}.hero-tagline{font-size:21px}.hero-copy .hero-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.hero-links .button,.hero-links .light-link{font-size:13px;gap:8px;padding:10px 12px;min-height:52px}.hero-links .light-link{padding-inline:0}.hero-copy .hero-experience{font-size:14px}.hero-copy .hero-description{font-size:15px}.home-hero{min-height:0}.audience-copy{min-height:320px}.form-intro h2{font-size:26px}}

/* Services page: one contained chooser and one readable detail view. */
.services-explorer{background:#edf5fb;padding-block:72px 96px;}
.explorer-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:42px;}
.explorer-heading h2{font-size:clamp(42px,5vw,72px);}
.explorer-heading>p{max-width:430px;margin:0 0 8px;font-size:17px;}
.explorer-shell{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);background:white;box-shadow:16px 16px 0 #c9dce9;min-height:640px;}
.service-picker{border-right:1px solid var(--line);padding:14px 0;align-self:stretch;}
.service-choice{width:100%;display:grid;grid-template-columns:30px 1fr 22px;gap:12px;align-items:center;text-align:left;background:none;border:0;border-left:4px solid transparent;padding:20px 28px;color:var(--ink);transition:background .3s,color .3s,border-color .3s,padding .3s var(--motion-ease);}
.service-choice:hover{background:#e5f3e9;padding-left:34px;}
.service-choice.active{background:var(--accent);color:var(--ink);border-left-color:var(--blue);padding-left:34px;}
.service-choice span{font:12px monospace;color:var(--blue);}
.service-choice.active span,.service-choice.active i{color:var(--blue);}
.service-choice strong{font-size:16px;font-weight:600;line-height:1.25;}
.service-choice i{font-style:normal;font-size:20px;transition:transform .3s;}
.service-choice:hover i,.service-choice.active i{transform:translate(3px,-3px);}
.service-panels{min-width:0;position:relative;}
.service-panel{padding:44px 52px 48px;animation:panel-in .45s var(--motion-ease) both;}
.service-panel[hidden]{display:none;}
.panel-top{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:30px;}
.panel-top .eyebrow{margin:0;color:var(--blue);}
.panel-status{font:12px monospace;color:var(--muted);}
.service-panel>h2{font-size:clamp(38px,4.5vw,62px);color:var(--blue);margin-bottom:14px;}
.service-panel>h3{font-size:24px;margin-top:28px;}
.service-panel .service-kicker{margin:0;color:var(--ink);font-size:17px;}
.service-panel .configuration-list{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin-top:32px;}
.service-panel .configuration-list>div{padding-block:16px;border-top:1px solid var(--line);}
.service-panel .configuration-list dt{font-size:16px;}
.service-panel .configuration-list dd{font-size:14px;line-height:1.5;}
@keyframes panel-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){.services-explorer{padding-block:56px 72px}.explorer-heading{grid-template-columns:1fr;gap:16px;margin-bottom:30px}.explorer-heading>p{margin:0}.explorer-shell{grid-template-columns:1fr;box-shadow:8px 8px 0 #c9dce9}.service-picker{border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;padding:0}.service-choice{padding:16px 18px;border-left:0;border-bottom:3px solid transparent}.service-choice:hover,.service-choice.active{padding-left:18px}.service-choice.active{border-bottom-color:var(--blue)}.service-panel{padding:34px 28px 38px}.service-panel .configuration-list{grid-template-columns:1fr}}
@media(max-width:480px){.services-explorer{padding-block:44px 58px}.service-picker{grid-template-columns:1fr}.service-choice{padding-block:14px}.service-panel{padding:28px 20px 32px}.service-panel>h2{font-size:38px}.service-panel>h3{font-size:21px}.service-panel .service-kicker{font-size:16px}}

.service-hero{min-height:540px;position:relative;overflow:hidden;background:#26343f;color:white;}
.service-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.service-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,28,46,.86),rgba(9,28,46,.48) 42%,rgba(9,28,46,.06) 78%);}
.service-hero-copy{position:relative;z-index:1;padding-block:72px 64px;}
.service-hero-copy .eyebrow{color:var(--accent);margin-bottom:24px;}
.service-hero-copy h1{font-size:clamp(48px,6vw,82px);max-width:760px;}
.service-hero-copy .lead{color:white;font-size:18px;line-height:1.55;max-width:610px;margin-top:26px;}
.service-hero .hero-caption{z-index:2;}
@media(max-width:800px){.service-hero{min-height:520px}.service-hero>img{object-position:58% center}.service-hero-shade{background:linear-gradient(90deg,rgba(9,28,46,.9),rgba(9,28,46,.56) 70%,rgba(9,28,46,.25))}.service-hero-copy{padding-block:56px 48px}.service-hero-copy h1{font-size:clamp(44px,11vw,64px)}.service-hero-copy .lead{font-size:17px;max-width:520px}}
@media(max-width:480px){.service-hero{min-height:560px}.service-hero>img{object-position:63% center}.service-hero-copy{padding-block:44px 40px}.service-hero-copy h1{font-size:43px}.service-hero-copy .lead{font-size:16px;margin-top:22px}}

/* Services page: a visual break between the editorial intro and the detail list. */
.services-break{background:var(--ink);color:white;position:relative;overflow:hidden;}
.services-break:after{content:'SERVICES / 08';position:absolute;right:var(--gutter);bottom:24px;color:#ffffff35;font:700 11px monospace;letter-spacing:.12em;}
.services-break-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:center;padding-block:76px;}
.services-break h2{font-size:clamp(42px,5vw,72px);color:white;}
.services-break p:not(.eyebrow){color:#d4e2ec;max-width:470px;}
.services-break .eyebrow{color:var(--accent);}
.service-quick-nav{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ffffff30;}
.service-quick-nav a{display:grid;grid-template-columns:30px 1fr 20px;gap:12px;align-items:center;padding:18px 0;border-bottom:1px solid #ffffff30;color:white;transition:padding .3s var(--motion-ease),background .3s;}
.service-quick-nav a:nth-child(odd){padding-right:24px;border-right:1px solid #ffffff30;}
.service-quick-nav a:nth-child(even){padding-left:24px;}
.service-quick-nav a:hover,.service-quick-nav a.active{background:var(--blue);padding-inline:14px;}
.service-quick-nav a span{font:12px monospace;color:var(--accent);}
.service-quick-nav a strong{font-size:15px;font-weight:500;}
.service-quick-nav a i{font-style:normal;font-size:20px;transition:transform .3s;}
.service-quick-nav a:hover i,.service-quick-nav a.active i{transform:translate(3px,-3px);}
.service-progress{height:3px;background:var(--line);margin-top:32px;max-width:240px;}
.service-progress span{display:block;height:100%;width:12.5%;background:var(--blue);transition:width .4s var(--motion-ease);}
.service-kicker{font-size:17px;line-height:1.5;color:var(--blue);max-width:580px;margin-bottom:24px;}
.service-detail[open] .service-body{animation:service-open .5s var(--motion-ease) both;}
@keyframes service-open{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:800px){.services-break-inner{grid-template-columns:1fr;gap:40px;padding-block:58px}.services-break:after{right:var(--gutter);bottom:16px}.service-quick-nav a:nth-child(odd){padding-right:12px}.service-quick-nav a:nth-child(even){padding-left:12px}.service-quick-nav a:hover,.service-quick-nav a.active{padding-inline:10px}.service-kicker{font-size:16px}}
@media(max-width:480px){.service-quick-nav{grid-template-columns:1fr}.service-quick-nav a:nth-child(odd){padding-right:0;border-right:0}.service-quick-nav a:nth-child(even){padding-left:0}.services-break h2{font-size:42px}.services-break-inner{padding-block:48px}.service-progress{max-width:none}}

/* Finishes page: a material-led opening that follows the home and services rhythm. */
.finish-hero{min-height:540px;position:relative;overflow:hidden;background:#26343f;color:white;}
.finish-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;}
.finish-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,28,46,.88),rgba(9,28,46,.5) 42%,rgba(9,28,46,.08) 82%);}
.finish-hero-copy{position:relative;z-index:1;padding-block:72px 64px;}
.finish-hero-copy .eyebrow{color:var(--accent);margin-bottom:24px;}
.finish-hero-copy h1{font-size:clamp(48px,6vw,82px);max-width:760px;}
.finish-hero-copy .lead{color:white;font-size:18px;line-height:1.55;max-width:580px;margin-top:26px;}
.finish-hero .hero-caption{z-index:2;}
.finish-intro{background:var(--ink);color:white;padding-block:72px;}
.finish-intro .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:end;}
.finish-intro .eyebrow{color:var(--accent);}
.finish-intro h2{font-size:clamp(42px,5vw,72px);}
.finish-intro p:not(.eyebrow){color:#d4e2ec;max-width:490px;margin:0 0 8px;font-size:17px;}
.finish-material-section{background:#f3f8fc;max-width:none;padding-inline:max(var(--gutter),calc((100vw - 1440px)/2 + var(--gutter)));}
.finish-material-section>.section-heading,.finish-material-section>.materials,.finish-material-section>.finish-reference,.finish-material-section>.faq{max-width:1440px;margin-inline:auto;}
.finish-material-section>.section-heading{grid-template-columns:.7fr 1.3fr;align-items:end;margin-bottom:34px;padding-bottom:12px;}
.finish-material-section>.section-heading h2{font-size:clamp(42px,5.3vw,72px);max-width:780px;}
.finish-material-section>.section-heading p{max-width:570px;}
.finish-material-section>.materials{grid-template-columns:1fr 1fr;gap:68px;align-items:stretch;}
.finish-material-section>.materials .material-sample{box-shadow:16px 16px 0 #c9dce9;}
.finish-material-section>.materials .material-controls{padding:28px 0 0;}
.finish-material-section>.materials .material-controls h2{font-size:clamp(32px,4vw,52px);line-height:1.03;}
.finish-material-section>.materials .swatches{padding:18px 0;border-block:1px solid var(--line);}
.finish-material-section>.finish-reference{margin-top:68px;}
.finish-reference article{background:#fff;border:1px solid #dce5ed;padding:28px 26px 32px;min-height:220px;box-shadow:8px 8px 0 #e5eff5;}
.finish-reference article h3{font-size:22px;}
.finish-reference article p{font-size:15px;line-height:1.6;margin-top:14px;}
.finish-material-section>.faq{background:#fff;border:1px solid #dce5ed;padding:28px 30px 30px;box-shadow:8px 8px 0 #e5eff5;}
.finish-material-section>.faq summary{font-weight:500;}
.glass-section>.wrap>.section-heading{display:flex;flex-direction:column;align-items:center;text-align:center;gap:0;}
.glass-section>.wrap>.section-heading .eyebrow{margin-bottom:18px;}
.glass-section>.wrap>.section-heading>div{display:flex;flex-direction:column;align-items:center;}
.glass-section>.wrap>.section-heading h2{max-width:800px;}
.glass-section>.wrap>.section-heading p{max-width:680px;}
.finish-material-section>.faq{margin-top:44px;}
@media(max-width:800px){.finish-hero{min-height:520px}.finish-hero>img{object-position:58% center}.finish-hero-shade{background:linear-gradient(90deg,rgba(9,28,46,.9),rgba(9,28,46,.56) 70%,rgba(9,28,46,.25))}.finish-hero-copy{padding-block:56px 48px}.finish-hero-copy h1{font-size:clamp(44px,11vw,64px)}.finish-hero-copy .lead{font-size:17px;max-width:520px}.finish-intro .wrap{grid-template-columns:1fr;gap:20px}.finish-intro{padding-block:58px}.finish-material-section{padding-left:var(--gutter);padding-right:var(--gutter)}.finish-material-section>.section-heading{grid-template-columns:1fr;gap:0}.finish-material-section>.materials{grid-template-columns:1fr;gap:34px}.finish-material-section>.materials .material-controls{padding-top:0}}
@media(max-width:480px){.finish-hero{min-height:560px}.finish-hero>img{object-position:63% center}.finish-hero-copy{padding-block:44px 40px}.finish-hero-copy h1{font-size:43px}.finish-hero-copy .lead{font-size:16px;margin-top:22px}.finish-intro{padding-block:48px}.finish-intro h2{font-size:42px}.finish-material-section>.section-heading h2{font-size:44px}}
.finish-hero-copy .light-link{margin-top:28px;color:var(--accent);border-color:#ffffff80}.finish-studio{display:grid;grid-template-columns:1.05fr .95fr;gap:68px;max-width:1160px;margin-inline:auto}.finish-studio-preview{min-height:590px;padding:24px;background:#e4eff7;display:flex;flex-direction:column;justify-content:space-between;box-shadow:16px 16px 0 #c9dce9;overflow:hidden}.studio-top{display:flex;justify-content:space-between;color:#586d7d;font:11px monospace;letter-spacing:.06em}.studio-window{position:relative;min-height:330px;margin:28px 10% 18px;background:linear-gradient(145deg,#b9d2d8,#6d8f94 48%,#d7e0d9);overflow:hidden;box-shadow:0 20px 35px #172f4324}.studio-glass{position:absolute;inset:0;background:linear-gradient(120deg,#ffffff50 0 18%,transparent 18% 56%,#ffffff24 56% 60%,transparent 60%);mix-blend-mode:screen}.studio-frame{position:absolute;background:var(--finish);box-shadow:0 3px 0 #0003;transition:background .4s}.studio-frame-top,.studio-frame-bottom{left:0;right:0;height:18px}.studio-frame-top{top:0}.studio-frame-bottom{bottom:0}.studio-frame-left,.studio-frame-right{top:0;bottom:0;width:18px}.studio-frame-left{left:0}.studio-frame-right{right:0}.studio-frame-centre{top:0;bottom:0;left:50%;width:12px;transform:translateX(-50%)}.studio-caption{display:grid;gap:4px}.studio-caption strong{font-size:19px;font-weight:500}.studio-caption span{font-size:12px;color:#586d7d}.finish-studio-controls{display:flex;flex-direction:column;justify-content:space-between;padding-block:4px}.studio-step{border-top:1px solid var(--line);padding-top:22px}.studio-step+.studio-step{margin-top:30px}.studio-step .eyebrow{color:var(--blue);margin-bottom:12px}.studio-step h3{font-size:26px}.studio-step p{margin-top:12px;max-width:450px}.finish-options,.glass-options{display:grid;margin-top:20px;border-top:1px solid var(--line)}.finish-option,.glass-option{display:grid;grid-template-columns:30px 1fr 20px;align-items:center;gap:12px;min-height:54px;padding:8px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;color:var(--muted);font-size:15px}.glass-option{grid-template-columns:1fr 20px;padding-left:12px}.finish-option:hover,.glass-option:hover,.finish-option.selected,.glass-option.selected{color:var(--ink);background:#ffffff80}.finish-option.selected,.glass-option.selected{font-weight:600}.finish-option>span:last-child,.glass-option>span:last-child{color:var(--blue);font-size:20px;transition:transform .25s}.finish-option:hover>span:last-child,.glass-option:hover>span:last-child,.finish-option.selected>span:last-child,.glass-option.selected>span:last-child{transform:translate(3px,-3px)}.option-dot{width:22px;height:22px;border-radius:50%;background:var(--swatch);border:1px solid #0003}.studio-action{border-top:1px solid var(--line);margin-top:32px;padding-top:20px}.studio-action .fine{margin:0;min-height:72px}.studio-action .text-link{margin-top:12px}.finish-reference{grid-template-columns:repeat(4,1fr)}.finish-reference article{min-height:150px}.glass-reference{grid-template-columns:repeat(3,1fr)}
@media(max-width:800px){.finish-studio{grid-template-columns:1fr;gap:42px}.finish-studio-preview{min-height:470px}.studio-window{min-height:250px;margin-inline:5%}.finish-studio-controls{padding:0}.finish-reference{grid-template-columns:1fr 1fr}.glass-reference{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.finish-studio-preview{min-height:410px;padding:20px}.studio-window{min-height:205px;margin-block:20px 14px}.studio-caption strong{font-size:16px}.studio-step h3{font-size:23px}.finish-reference,.glass-reference{grid-template-columns:1fr}.finish-option,.glass-option{min-height:58px}}
.glass-section{background:#edf5fb}.glass-section>.wrap>.section-heading{margin-bottom:54px}.glass-principles{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#d5e3ed;border:1px solid #d5e3ed;margin-bottom:76px}.glass-principles article{background:#f8fbff;padding:28px 26px 32px;min-height:220px}.principle-icon{display:grid;place-items:center;width:52px;height:52px;margin-bottom:32px;background:var(--ink);color:var(--accent)}.principle-icon svg{width:28px;height:28px}.glass-principles h3{font-size:22px}.glass-principles p{font-size:15px;line-height:1.55;margin-top:12px}.glass-guide-head{display:flex;justify-content:space-between;align-items:end;gap:40px;border-top:1px solid #c6d7e3;padding-top:28px;margin-bottom:30px}.glass-guide-head .eyebrow{color:var(--blue);margin-bottom:10px}.glass-guide-head h3{font-size:30px}.glass-guide-head p{max-width:430px;margin:0}.glass-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d5e3ed;border:1px solid #d5e3ed}.glass-card{background:#f8fbff;padding:22px 24px 26px;min-height:280px;display:flex;flex-direction:column}.glass-card-top{display:flex;align-items:start;justify-content:space-between;margin-bottom:28px}.glass-card-visual{display:block;width:70px;height:70px;border:1px solid #aabbb2;background:#d7e5e2;position:relative;overflow:hidden}.glass-card-visual:after{content:'';position:absolute;inset:-30% 40% 0 -25%;background:#ffffff80;transform:rotate(24deg)}.glass-visual-0{background:linear-gradient(140deg,#dfeff0,#81a9ae)}.glass-visual-1{background:linear-gradient(140deg,#f2f5f0,#c9d8d1)}.glass-visual-1:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 8px,#ffffff55 8px 10px)}.glass-visual-2{background:linear-gradient(140deg,#e7eeee,#9aa7a8);filter:saturate(.4)}.glass-visual-3{background:linear-gradient(140deg,#b8c8c9,#58696c)}.glass-visual-4{background:linear-gradient(140deg,#d8b99c,#8d6650)}.glass-visual-5{background:linear-gradient(140deg,#cbd9dc,#708995)}.glass-visual-6{background:linear-gradient(140deg,#e0f1ed,#8fb6ac)}.glass-card-index{font:11px monospace;color:var(--blue);letter-spacing:.08em}.glass-card h3{font-size:22px}.glass-card p{font-size:15px;line-height:1.55;margin-top:11px}.glass-card-link{display:inline-flex;align-items:center;gap:14px;color:var(--blue);font-size:14px;font-weight:600;margin-top:auto;padding-top:24px}.glass-card-link span{font-size:19px;transition:transform .25s}.glass-card-link:hover span{transform:translate(3px,-3px)}
@media(max-width:800px){.glass-principles{grid-template-columns:1fr 1fr;margin-bottom:56px}.glass-principles article{min-height:200px}.glass-guide-head{display:grid;gap:18px}.glass-card-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.glass-section>.wrap>.section-heading{margin-bottom:38px}.glass-principles{grid-template-columns:1fr;margin-bottom:48px}.glass-principles article{min-height:0;padding:24px}.principle-icon{margin-bottom:22px}.glass-guide-head h3{font-size:25px}.glass-card-grid{grid-template-columns:1fr}.glass-card{min-height:240px}}
.studio-scene{position:relative;min-height:370px;margin:24px 7% 20px;overflow:hidden;background:#cbdce8}.scene-wall{position:absolute;inset:0 0 36px;background:linear-gradient(150deg,#f1f6fa 0%,#dce9f2 52%,#bed2e0 100%)}.scene-opening{position:absolute;left:13%;right:13%;top:10%;bottom:0;background:linear-gradient(145deg,#c0d7db,#78989a 48%,#d7dfd8);overflow:hidden;box-shadow:0 18px 28px #172f4335}.scene-opening:before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,#ffffff70,transparent 30% 64%,#ffffff28 64%)}.scene-sill{position:absolute;left:9%;right:9%;bottom:-10px;height:20px;background:#b6c7d2;box-shadow:0 4px 0 #637d8e}.scene-floor{position:absolute;left:0;right:0;bottom:0;height:36px;background:repeating-linear-gradient(90deg,#ad8e71 0 54px,#a38368 54px 56px);opacity:.88}.scene-shadow{position:absolute;left:7%;bottom:10px;width:52%;height:10px;background:#263d4d40;filter:blur(6px);transform:skewX(-28deg)}.scene-callout{position:absolute;z-index:3;color:white;background:#20272fd9;padding:7px 9px;font:10px monospace;letter-spacing:.04em}.scene-callout b{font-weight:400;color:var(--accent)}.scene-callout-frame{left:4%;top:18%;transform:translateX(-50%) rotate(-90deg);transform-origin:center}.scene-callout-glass{right:4%;top:52%;transform:translateX(50%) rotate(90deg);transform-origin:center}.studio-scene .studio-glass{background:linear-gradient(120deg,#ffffff50 0 18%,transparent 18% 56%,#ffffff24 56% 60%,transparent 60%);transition:filter .45s,background .45s}.studio-scene .studio-frame{box-shadow:0 3px 0 #0003}.studio-scene+.studio-caption{margin-top:0}.finish-studio-preview{background:#e4eff7}.finish-studio-preview:after{content:'VIEW / ELEVATION STUDY';display:block;color:#586d7d;font:10px monospace;letter-spacing:.08em;margin-top:14px}
@media(max-width:800px){.studio-scene{min-height:300px;margin-inline:4%}.scene-callout{font-size:9px}.scene-callout-frame{left:2%;}.scene-callout-glass{right:2%;}}
@media(max-width:480px){.studio-scene{min-height:255px;margin-block:18px 16px}.scene-opening{left:12%;right:12%}.scene-callout{display:none}.finish-studio-preview:after{font-size:9px}}
.material-guide{display:grid;grid-template-columns:1.08fr .92fr;gap:76px;max-width:1160px;margin-inline:auto}.material-detail{background:#e4eff7;padding:24px;box-shadow:16px 16px 0 #c9dce9}.detail-top{display:flex;justify-content:space-between;color:#586d7d;font:11px monospace;letter-spacing:.06em}.detail-opening{position:relative;min-height:390px;margin:28px 7% 18px;background:#cbdce8;overflow:hidden}.detail-opening:before{content:'';position:absolute;inset:0 0 42px;background:linear-gradient(145deg,#f1f6fa,#cbdce8 55%,#a8c2d2)}.detail-opening:after{content:'';position:absolute;left:0;right:0;bottom:0;height:42px;background:repeating-linear-gradient(90deg,#ad8e71 0 54px,#a38368 54px 56px)}.detail-glass{position:absolute;z-index:1;left:14%;right:14%;top:12%;bottom:42px;background:linear-gradient(145deg,#c7dfe1,#749397 52%,#d7e1db);box-shadow:0 18px 28px #172f4335}.detail-glass:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,#ffffff65 0 18%,transparent 18% 56%,#ffffff2e 56% 60%,transparent 60%)}.detail-frame{position:absolute;z-index:2;background:#20272f}.detail-frame-top{left:13%;right:13%;top:11%;height:16px}.detail-frame-left{left:13%;top:11%;bottom:10%;width:16px}.detail-frame-centre{left:50%;top:11%;bottom:10%;width:11px;transform:translateX(-50%)}.detail-frame-sill{left:9%;right:9%;bottom:35px;height:17px;background:#b6c7d2;box-shadow:0 4px 0 #637d8e}.detail-line{position:absolute;z-index:3;height:1px;background:#b8dec8;transform-origin:left}.detail-line-light{left:29%;top:27%;width:31%;transform:rotate(-25deg)}.detail-line-privacy{right:17%;top:55%;width:23%;transform:rotate(20deg)}.detail-label{position:absolute;z-index:4;background:#20272f;color:#b8dec8;padding:5px 7px;font:10px monospace;letter-spacing:.05em}.detail-label-frame{left:3%;top:8%}.detail-label-glass{right:2%;top:50%}.detail-label-sill{left:17%;bottom:12px}.detail-caption{display:grid;gap:4px}.detail-caption strong{font-size:19px;font-weight:500}.detail-caption span{font-size:12px;color:#586d7d}.material-guide-copy{display:grid;align-content:center;gap:0}.material-point{display:grid;grid-template-columns:42px 1fr;gap:16px;border-top:1px solid var(--line);padding:24px 0}.material-number{font:12px monospace;color:var(--blue);padding-top:4px}.material-point h3{font-size:24px}.material-point p{font-size:15px;line-height:1.55;margin-top:9px}.material-guide-copy>.text-link{justify-self:start;margin-top:20px}
@media(max-width:800px){.material-guide{grid-template-columns:1fr;gap:42px}.detail-opening{min-height:300px}.material-guide-copy{display:block}.material-point{padding:20px 0}.material-guide-copy>.text-link{margin-top:18px}}
@media(max-width:480px){.material-detail{padding:20px;box-shadow:8px 8px 0 #c9dce9}.detail-top{font-size:9px}.detail-opening{min-height:245px;margin-inline:3%}.detail-label{font-size:8px}.detail-caption strong{font-size:16px}.material-point{grid-template-columns:32px 1fr;gap:11px}.material-point h3{font-size:21px}}

.hero-material-cue{position:absolute;right:var(--gutter);bottom:56px;z-index:2;display:grid;grid-template-columns:repeat(3,minmax(82px,1fr));border:1px solid #ffffff54;background:#10202fa6;backdrop-filter:blur(8px)}
.hero-material-cue span{display:grid;place-items:center;min-height:64px;padding:10px 14px;color:white;border-right:1px solid #ffffff36;font:700 11px/1.35 monospace;text-transform:uppercase;letter-spacing:.06em}
.hero-material-cue span:last-child{border-right:0;color:var(--accent)}
.home-material-study{background:#edf5fb;border-bottom:1px solid var(--line);overflow:hidden}
.home-study-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:84px;align-items:center}
.home-study-grid h2{font-size:clamp(42px,5vw,72px);max-width:780px}
.home-study-grid p:not(.eyebrow){font-size:17px;max-width:560px}
.study-panel{background:#e4eff7;padding:24px;box-shadow:16px 16px 0 #c9dce9;min-width:0}
.study-top,.study-notes{display:flex;justify-content:space-between;gap:16px;color:#586d7d;font:11px/1.4 monospace;letter-spacing:.06em;text-transform:uppercase}
.study-window{position:relative;min-height:315px;margin:26px 7% 22px;background:linear-gradient(145deg,#eef5fa,#d5e5ef 54%,#a5becd);overflow:hidden}
.study-window:after{content:'';position:absolute;left:0;right:0;bottom:0;height:42px;background:repeating-linear-gradient(90deg,#ad8e71 0 54px,#a38368 54px 56px)}
.study-glass{position:absolute;z-index:1;left:13%;right:13%;top:13%;bottom:42px;background:linear-gradient(145deg,#c6dfe2,#76969a 52%,#d7e1db);box-shadow:0 18px 28px #172f4330}
.study-glass:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,#ffffff65 0 18%,transparent 18% 56%,#ffffff2e 56% 60%,transparent 60%)}
.study-frame{position:absolute;z-index:2;background:#20272f}.study-frame-top{left:12%;right:12%;top:12%;height:15px}.study-frame-left,.study-frame-right{top:12%;bottom:11%;width:15px}.study-frame-left{left:12%}.study-frame-right{right:12%}.study-frame-centre{left:50%;top:12%;bottom:11%;width:11px;transform:translateX(-50%)}.study-sill{position:absolute;z-index:3;left:8%;right:8%;bottom:34px;height:16px;background:#b6c7d2;box-shadow:0 4px 0 #637d8e}
.home-study-points{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:64px;background:#d5e3ed;border:1px solid #d5e3ed}
.home-study-points article{background:#f8fbff;padding:26px 28px 30px;min-height:210px}
.home-study-points h3{font-size:23px;margin-top:28px}
.home-study-points p{font-size:15px;line-height:1.55;margin-top:12px}
.service-material-map{background:#edf5fb;color:var(--ink);position:relative;overflow:hidden}
.service-map-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(32px,4vw,64px);align-items:start}
.service-map-head{min-width:0}
.service-map-title{position:relative;isolation:isolate;padding:clamp(32px,4vw,54px) clamp(48px,5vw,76px) clamp(52px,6vw,88px) clamp(28px,3.4vw,48px)}
.service-map-title:before{content:'';position:absolute;z-index:-1;inset:0;background:var(--blue);clip-path:polygon(0 0,100% 0,88% 100%,0 100%)}
.service-map-title .eyebrow{color:var(--accent)}
.service-map-title h2{font-size:clamp(38px,3.7vw,53px);color:white;overflow-wrap:break-word}
.service-map-process{position:relative;display:grid;gap:12px;list-style:none;margin:38px 0 0;padding:0 10px 0 clamp(16px,2.4vw,34px)}
.service-map-route{position:absolute;z-index:0;left:4px;top:8px;width:51%;height:calc(100% - 18px);overflow:visible;fill:none;stroke:#aac7db;stroke-width:2;stroke-dasharray:7 8;stroke-linecap:round}
.service-map-step{position:relative;z-index:1;display:grid;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:28px;min-height:158px;width:calc(100% - 38px)}
.service-map-step:nth-of-type(even){margin-left:38px}
.service-map-step-icon{position:relative;display:grid;place-items:center;width:84px;height:84px;border:1px solid #b7cfe0;border-radius:50%;background:#f8fbff;color:#526879}
.service-map-step-icon:before{content:'';position:absolute;left:100%;top:50%;width:20px;border-top:1px solid #b7cfe0}
.service-map-step-icon:after{content:'';position:absolute;left:calc(100% + 20px);top:calc(50% - 4px);width:8px;height:8px;border-radius:50%;background:var(--blue)}
.service-map-step-icon svg{width:52px;height:52px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.service-map-step-icon .service-map-icon-fill{fill:#cfe4ee;stroke:#7d9eb4}
.service-map-step h3{margin:0;color:#263846;font-size:14px;line-height:1.2;letter-spacing:.14em;text-transform:uppercase}
.service-map-step p{margin:8px 0 0;color:#617386;font-size:14px;line-height:1.45}
.service-map-content{min-width:0}
.service-map-intro{color:var(--muted);max-width:610px;font-size:17px;line-height:1.55;margin:0 0 24px}
.service-map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#d5e3ed;border:1px solid #d5e3ed}
.service-map-card{display:flex;flex-direction:column;min-height:250px;background:#f8fbff;padding:24px;transition:background .25s var(--motion-ease),transform .25s var(--motion-ease)}
.service-map-card:hover,.service-map-card:focus-visible{background:#0757c8;transform:translateY(-4px)}
.service-map-index{font:12px/1 monospace;color:var(--blue);margin-bottom:34px}
.service-map-card h3{font-size:23px;color:var(--ink)}
.service-map-card p{color:var(--muted);font-size:15px;line-height:1.5;margin-top:14px}
.service-map-card:hover h3,.service-map-card:focus-visible h3,.service-map-card:hover p,.service-map-card:focus-visible p{color:white}
.service-map-card:hover .service-map-index,.service-map-card:focus-visible .service-map-index{color:var(--accent)}
.service-map-link{display:inline-flex;align-items:center;gap:12px;color:var(--blue);font-size:14px;font-weight:700;margin-top:auto;padding-top:26px}
.service-map-card:hover .service-map-link,.service-map-card:focus-visible .service-map-link{color:var(--accent)}
.service-map-link span{font-size:19px;transition:transform .25s}
.service-map-card:hover .service-map-link span,.service-map-card:focus-visible .service-map-link span{transform:translate(3px,-3px)}
.work-gallery{padding-block:48px 110px;border-top:1px solid var(--line)}
.work-gallery-intro{max-width:680px;margin-bottom:32px}
.work-gallery-intro h2{margin:12px 0 18px}
.work-gallery-intro p:last-child{color:var(--muted);line-height:1.6}
.work-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:36px}
.work-filters a{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--line);background:white;color:var(--ink);padding:9px 16px;text-decoration:none;transition:background .2s,color .2s,border-color .2s}
.work-filters a:hover,.work-filters a[href="#work-all"]{background:var(--blue);border-color:var(--blue);color:white}
.work-filters a:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.work-gallery:has(.work-collection:target) .work-filters a[href="#work-all"]{background:white;border-color:var(--line);color:var(--ink)}
.work-gallery:has(#work-doors:target) .work-filters a[href="#work-doors"],.work-gallery:has(#work-windows:target) .work-filters a[href="#work-windows"],.work-gallery:has(#work-shopfronts:target) .work-filters a[href="#work-shopfronts"],.work-gallery:has(#work-balustrades:target) .work-filters a[href="#work-balustrades"],.work-gallery:has(#work-skylights:target) .work-filters a[href="#work-skylights"],.work-gallery:has(#work-showers:target) .work-filters a[href="#work-showers"],.work-gallery:has(#work-garage-doors:target) .work-filters a[href="#work-garage-doors"],.work-gallery:has(#work-lodges:target) .work-filters a[href="#work-lodges"]{background:var(--blue);border-color:var(--blue);color:white}
.work-results{border-top:1px solid var(--line);padding:28px 0 0}
.work-all-anchor{display:block;scroll-margin-top:120px}
.work-collection{scroll-margin-top:120px}
.work-collection--empty{display:none}
.work-collection--empty:target{display:block}
.work-gallery:has(.work-collection:target) .work-collection:not(:target){display:none}
.work-collection h3{font-size:clamp(26px,2.4vw,36px);margin:0 0 24px}
.work-collection p{color:var(--muted);line-height:1.55}
.work-photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.work-photo{min-width:0;margin:0;border:1px solid var(--line);background:#fff;box-shadow:0 8px 24px #132b4010;transition:transform .35s var(--motion-ease),box-shadow .35s var(--motion-ease),border-color .35s}
.work-photo:hover,.work-photo:focus-within{transform:translateY(-4px);border-color:#a7bfd0;box-shadow:0 18px 38px #132b4020}
.work-photo-link{display:block;position:relative;overflow:hidden;background:#1b2b37}
.work-photo-link:focus-visible{outline:3px solid var(--blue);outline-offset:-3px}
.work-photo-image{display:block;width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;transition:transform .55s var(--motion-ease),filter .35s}
.work-photo-link:hover .work-photo-image,.work-photo-link:focus-visible .work-photo-image{transform:scale(1.045);filter:brightness(.82)}
.work-photo-open{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px;background:#fff;color:#172b3a;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;opacity:0;transform:translateY(8px);transition:opacity .25s,transform .3s var(--motion-ease)}
.work-photo-open b{font-size:20px;font-weight:400;line-height:1}
.work-photo-link:hover .work-photo-open,.work-photo-link:focus-visible .work-photo-open{opacity:1;transform:translateY(0)}
.work-photo figcaption{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:10px;min-height:74px;padding:17px 18px;color:var(--ink);line-height:1.35}
.work-photo figcaption span:first-child{color:var(--blue);font:12px monospace}
.work-photo figcaption strong{font-size:15px;font-weight:600}
.work-photo-caption-arrow{justify-self:end;color:var(--blue);font-size:18px}
.work-dialog-open{overflow:hidden}
.work-lightbox{width:min(1180px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:1px solid #426077;background:#102331;color:#fff;box-shadow:0 32px 90px #07111db3}
.work-lightbox::backdrop{background:#07131ee8;backdrop-filter:blur(8px)}
.work-lightbox[open]{animation:work-viewer-in .3s var(--motion-ease) both}
@keyframes work-viewer-in{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.work-lightbox-shell{display:grid;grid-template-rows:auto minmax(0,1fr) auto;max-height:calc(100dvh - 34px)}
.work-lightbox-top{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:12px 24px;border-bottom:1px solid #ffffff26}
.work-lightbox-top>div{display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px}
.work-lightbox-eyebrow{font-size:12px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:#b7d5e9}
.work-lightbox-count{font:13px monospace;color:#e4eff5}
.work-lightbox-close,.work-lightbox-nav{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;border:1px solid #ffffff4d;background:#ffffff14;color:#fff;transition:background .2s,border-color .2s}
.work-lightbox-close:hover,.work-lightbox-nav:hover:not(:disabled){background:#ffffff33;border-color:#fff}
.work-lightbox-close:focus-visible,.work-lightbox-nav:focus-visible{outline:3px solid #a9d4ff;outline-offset:3px}
.work-lightbox-close{gap:12px;padding:8px 14px;font-size:14px}
.work-lightbox-close span{font-size:25px;line-height:1}
.work-lightbox-stage{display:grid;grid-template-columns:70px minmax(0,1fr) 70px;align-items:center;justify-items:center;min-height:0;padding:14px 8px;background:#0b1822}
.work-lightbox-nav{font-size:27px}
.work-lightbox-nav:disabled{opacity:.3;cursor:default}
.work-lightbox-image{width:auto;max-width:100%;height:auto;max-height:min(70dvh,760px);object-fit:contain}
.work-lightbox-caption{max-width:none;margin:0;padding:18px 24px 21px;border-top:1px solid #ffffff26;color:#fff;font-size:16px;line-height:1.5}
@media(max-width:800px){.work-photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:520px){.work-photo-gallery{grid-template-columns:1fr}.work-photo-image{aspect-ratio:4/3}.work-photo-open{opacity:1;transform:none}.work-lightbox{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}.work-lightbox-shell{max-height:calc(100dvh - 18px)}.work-lightbox-top{padding-inline:14px}.work-lightbox-stage{grid-template-columns:48px minmax(0,1fr) 48px;padding:8px 0}.work-lightbox-nav{min-width:44px;min-height:44px}.work-lightbox-image{max-height:65dvh}.work-lightbox-caption{padding:14px}}
.work-gallery-note{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:26px;color:var(--muted)}
.work-gallery-note .text-link{margin:0}
@media(max-width:480px){.work-gallery{padding-block:34px 72px}}
.service-choice{min-height:58px}.service-choice[aria-selected=true]{color:var(--ink)}
@media(max-width:1100px){.hero-material-cue{display:none}.home-study-grid{grid-template-columns:1fr;gap:42px}.service-map-layout{grid-template-columns:1fr;gap:32px}.service-map-title{max-width:720px}.service-map-process{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 32px;max-width:720px;padding-left:0}.service-map-route{display:none}.service-map-step,.service-map-step:nth-of-type(even){width:auto;margin-left:0}}
@media(max-width:800px){.home-material-study .section{padding-block:58px}.study-panel{box-shadow:8px 8px 0 #c9dce9}.study-window{min-height:270px}.home-study-points{grid-template-columns:1fr;margin-top:44px}.home-study-points article{min-height:0}.service-map-title{padding:30px 58px 42px 28px}.service-map-process{margin-top:28px;gap:24px 18px}.service-map-step{display:block;min-height:0}.service-map-step-icon{width:66px;height:66px}.service-map-step-icon:before{width:14px}.service-map-step-icon:after{left:calc(100% + 14px);width:7px;height:7px}.service-map-step-icon svg{width:40px;height:40px}.service-map-step h3{font-size:12px;margin-top:14px}.service-map-step p{font-size:13px}.service-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-map-card{min-height:220px;padding:22px}}
@media(max-width:480px){.home-study-grid h2,.service-map-title h2{font-size:41px}.study-panel{padding:20px}.study-top,.study-notes{font-size:9px}.study-window{min-height:230px;margin-inline:3%}.home-study-points h3{margin-top:20px}.service-map-grid{grid-template-columns:1fr}.service-map-card{min-height:0}.service-map-index{margin-bottom:24px}}

main>.services-overview .home-service-list>a:nth-child(odd):hover:before{transform:translateX(0)}
main>.services-overview .home-service-list>a:nth-child(odd):hover{padding-inline:18px;border-color:transparent}
main>.services-overview .home-service-list>a:nth-child(odd):hover p{color:white}
.about-material-story{background:#edf5fb;border-block:1px solid var(--line);overflow:hidden}
.about-story-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center}
.about-story-grid h2{font-size:clamp(42px,5.5vw,76px);max-width:780px}
.about-story-grid p:not(.eyebrow){font-size:17px;max-width:560px}
.about-detail-panel{background:#e4eff7;padding:24px;box-shadow:16px 16px 0 #c9dce9;min-height:360px;display:flex;flex-direction:column;justify-content:space-between}
.about-detail-lines{display:grid;gap:1px;background:#d5e3ed;border:1px solid #d5e3ed;margin-top:34px}
.about-detail-lines span{display:block;background:#f8fbff;padding:22px 24px;color:var(--ink);font:700 13px/1.45 monospace;text-transform:uppercase;letter-spacing:.04em}
.about-detail-lines span:nth-child(2){background:var(--blue);color:white}
.about-proof-points{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:64px;background:#d5e3ed;border:1px solid #d5e3ed}
.about-proof-points article{background:#f8fbff;padding:26px 28px 30px;min-height:210px}
.about-proof-points h3{font-size:23px;margin-top:28px}
.about-proof-points p{font-size:15px;line-height:1.55;margin-top:12px}
@media(max-width:800px){.about-story-grid{grid-template-columns:1fr;gap:42px}.about-detail-panel{box-shadow:8px 8px 0 #c9dce9;min-height:300px}.about-proof-points{grid-template-columns:1fr;margin-top:44px}.about-proof-points article{min-height:0}}
@media(max-width:480px){.about-story-grid h2{font-size:41px}.about-detail-panel{padding:20px}.about-detail-lines span{padding:18px;font-size:12px}.about-proof-points h3{margin-top:20px}}

.about-hero{position:relative;min-height:590px;overflow:hidden;background:#26343f;color:white}
.about-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% 48%;animation:hero-reveal 1.05s var(--motion-ease) both}
.about-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,28,46,.9),rgba(9,28,46,.62) 44%,rgba(9,28,46,.22) 78%)}
.about-hero-inner{position:relative;z-index:1;min-height:590px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:70px;align-items:end;padding-block:86px 72px}
.about-hero-copy{animation:hero-copy-reveal .75s .12s var(--motion-ease) both}
.about-hero-copy .eyebrow{color:var(--accent)}
.about-hero-copy h1{font-size:clamp(48px,6vw,84px);max-width:840px}
.about-hero-copy .lead{color:white;font-size:19px;line-height:1.55;max-width:660px;margin-top:26px}
.about-floating-proof{align-self:end;display:grid;gap:10px;animation:about-float 5.8s var(--motion-ease) infinite alternate}
.about-floating-proof span{display:block;padding:18px 20px;background:#ffffffeb;color:var(--ink);box-shadow:10px 10px 0 #b8dec8;font:700 13px/1.3 Bahnschrift,Arial,sans-serif;text-transform:uppercase;letter-spacing:.04em}
.about-floating-proof span:nth-child(2){transform:translateX(-34px);background:#0757c8;color:white;box-shadow:10px 10px 0 #ffffff38}
.about-floating-proof span:nth-child(3){transform:translateX(22px);background:#edf5fb;box-shadow:10px 10px 0 #0757c8}
.about-intro-band{background:white;border-bottom:1px solid var(--line)}
.about-intro-band .wrap{display:grid;grid-template-columns:.65fr 1.15fr .9fr;gap:52px;align-items:end;padding-block:58px}
.about-intro-band .eyebrow{color:var(--blue);margin-bottom:0}
.about-intro-band h2{font-size:clamp(30px,3.4vw,50px)}
.about-intro-band p:not(.eyebrow){font-size:17px;margin:0;max-width:560px}
.about-founder{display:grid;grid-template-columns:.85fr 1.15fr;gap:92px;align-items:start}
.founder-statement{position:sticky;top:120px;padding:34px;background:#edf5fb;box-shadow:16px 16px 0 #c9dce9}
.founder-statement .story-number{display:block;font-size:154px;color:var(--blue);line-height:.9}
.founder-statement .story-number>span{font-size:58px;vertical-align:top}
.founder-statement p{font-size:18px;color:var(--ink);max-width:360px}
.founder-copy h2{font-size:clamp(38px,4.6vw,66px);max-width:760px}
.founder-copy p{font-size:17px}
.about-standards-band{background:var(--green);color:white;position:relative;overflow:hidden}
.about-standards-band:before{content:'STANDARDS';position:absolute;right:var(--gutter);top:38px;color:#ffffff18;font:700 120px/1 Bahnschrift,Arial,sans-serif}
.about-standards-band .wrap{position:relative;z-index:1;display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:start}
.about-standards-band .eyebrow{color:var(--accent)}
.about-standards-band h2{font-size:clamp(38px,4.7vw,66px);color:white}
.standards-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff30;border:1px solid #ffffff30}
.standards-row article{background:#25343e;padding:28px 24px 32px;min-height:250px}
.standards-row span{display:block;color:var(--accent);font:700 13px/1 Bahnschrift,Arial,sans-serif;margin-bottom:44px}
.standards-row h3{color:white;font-size:24px}
.standards-row p{color:#d4e2ec;font-size:15px;line-height:1.55;margin-top:12px}
.about-method{display:grid;grid-template-columns:.8fr 1.2fr;gap:82px}
.method-head{position:sticky;top:120px;align-self:start}
.method-head .eyebrow{color:var(--blue)}
.method-head h2{font-size:clamp(36px,4vw,58px)}
.method-timeline{display:grid;gap:0;border-top:1px solid var(--line)}
.method-timeline article{display:grid;grid-template-columns:72px minmax(0,1fr);column-gap:24px;row-gap:8px;padding:28px 0;border-bottom:1px solid var(--line)}
.method-timeline article>span{font:700 13px/1 Bahnschrift,Arial,sans-serif;color:var(--blue);padding-top:8px}
.method-timeline h3{font-size:25px}
.method-timeline p{grid-column:2;font-size:15px;line-height:1.55;margin:0;max-width:560px}
.about-service-break{background:#edf5fb;border-block:1px solid var(--line);overflow:hidden}
.about-service-break .wrap{display:grid;grid-template-columns:1fr .82fr;gap:72px;align-items:center}
.service-break-copy h2{font-size:clamp(38px,5vw,70px)}
.service-break-copy .eyebrow{color:var(--blue)}
.service-break-copy p:not(.eyebrow){font-size:17px;max-width:560px}
.service-break-panel{background:white;padding:36px;box-shadow:16px 16px 0 #c9dce9;border-top:4px solid var(--blue)}
.service-break-panel h3{font-size:30px}
.service-break-panel p{font-size:16px}
@keyframes about-float{from{transform:translateY(0)}to{transform:translateY(-14px)}}
@media(max-width:1100px){.about-hero-inner{grid-template-columns:1fr}.about-floating-proof{max-width:520px}.about-intro-band .wrap,.about-founder,.about-standards-band .wrap,.about-method,.about-service-break .wrap{grid-template-columns:1fr;gap:42px}.founder-statement,.method-head{position:static}.standards-row{grid-template-columns:1fr 1fr}.about-standards-band:before{font-size:84px}}
@media(max-width:800px){.about-hero,.about-hero-inner{min-height:560px}.about-hero-inner{padding-block:58px 48px}.about-hero-shade{background:linear-gradient(90deg,rgba(9,28,46,.92),rgba(9,28,46,.68) 72%,rgba(9,28,46,.38))}.about-floating-proof{display:none}.about-intro-band .wrap{padding-block:44px}.founder-statement{box-shadow:8px 8px 0 #c9dce9}.founder-statement .story-number{font-size:118px}.standards-row{grid-template-columns:1fr}.standards-row article{min-height:0}.about-method{gap:34px}.method-timeline article{grid-template-columns:48px 1fr}.service-break-panel{box-shadow:8px 8px 0 #c9dce9}}
@media(max-width:480px){.about-hero,.about-hero-inner{min-height:585px}.about-hero-copy h1{font-size:42px}.about-hero-copy .lead{font-size:16px}.about-intro-band h2,.founder-copy h2,.method-head h2,.service-break-copy h2{font-size:36px}.founder-statement{padding:26px}.founder-statement .story-number{font-size:104px}.about-standards-band:before{display:none}.about-standards-band h2{font-size:36px}.method-timeline article{grid-template-columns:1fr;gap:8px;padding:24px 0}.method-timeline p{grid-column:auto}.service-break-panel{padding:28px 24px}.service-break-panel h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.about-floating-proof,.about-hero>img,.about-hero-copy{animation:none}}
.site-header{padding-inline:max(var(--gutter),calc((100vw - 1440px)/2 + var(--gutter)))}
.site-header{height:calc(96px - 2mm)}
.brand,.brand img{width:calc(144px + 3mm)}
.brand{height:100%}
.brand img{height:100%;object-fit:contain}
@media(max-width:800px){.site-header{height:calc(82px - 2mm)}.brand,.brand img{width:calc(125px + 3mm)}.site-header nav{top:calc(82px - 2mm)}}

/* Header balance: give the mark more presence and keep the primary navigation near the centre. */
.brand,.brand img{width:calc(144px + 5mm)}
@media(min-width:1101px){
  .site-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
  .brand{grid-column:1;justify-self:start;margin-left:18px}
  .site-header nav{grid-column:2;justify-self:center;gap:34px}
  .site-header nav a{font-size:15px;font-weight:600}
}
@media(max-width:1100px) and (min-width:801px){
  .site-header nav{gap:24px}
  .site-header nav a{font-size:14px;font-weight:600}
}
@media(max-width:800px){.brand,.brand img{width:calc(125px + 5mm)}}

/* Knowledge & Advice: image-led editorial guidance using the site's material palette. */
.knowledge-hero{position:relative;isolation:isolate;min-height:560px;display:flex;align-items:center;overflow:hidden;background:#26343f;color:white}
.knowledge-hero-image{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.knowledge-hero-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(10,24,36,.92) 0%,rgba(10,24,36,.78) 34%,rgba(10,24,36,.24) 67%,rgba(10,24,36,.04) 100%)}
.knowledge-hero-inner{padding-block:64px 70px}
.knowledge-heading{max-width:720px}
.knowledge-heading .eyebrow{color:var(--accent)}
.knowledge-heading h1{max-width:720px;font-size:clamp(48px,5.2vw,74px)}
.knowledge-intro{max-width:660px;margin-top:26px}
.knowledge-intro p{margin:0;color:#edf5f8;font-size:19px;line-height:1.6}
.knowledge-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 30px;margin-top:34px}.knowledge-hero-actions .light-link{margin-top:0}
.knowledge-topic-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:white;border-block:1px solid var(--line);position:sticky;top:0;z-index:5}
.knowledge-topic-trigger{display:flex;align-items:center;gap:12px;min-height:74px;padding:14px 20px;border:0;border-right:1px solid var(--line);background:white;color:var(--ink);text-align:left;transition:background .2s,color .2s}
.knowledge-topic-trigger:last-child{border-right:0}.knowledge-topic-trigger:hover,.knowledge-topic-trigger[aria-expanded="true"]{background:#edf5fb;color:var(--blue)}.knowledge-topic-trigger:focus-visible{outline:3px solid var(--blue);outline-offset:-4px}.knowledge-topic-trigger>span:first-child{font:12px monospace;color:var(--muted)}.knowledge-topic-trigger strong{font-size:16px;font-weight:600;line-height:1.25}.knowledge-topic-arrow{font-size:20px;margin-left:auto;transition:transform .2s}.knowledge-topic-trigger[aria-expanded="true"] .knowledge-topic-arrow{transform:rotate(180deg)}
.knowledge-topic-panel[hidden]{display:none}.knowledge-topic-panel>.knowledge-section,.knowledge-topic-panel>.knowledge-glass-section>.knowledge-section{padding-top:68px}
.knowledge-section{scroll-margin-top:24px}.knowledge-section .section-heading{margin-bottom:38px}.knowledge-section .section-heading p{max-width:720px}.knowledge-section .section-heading p+p{margin-top:13px}
.knowledge-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;margin-bottom:92px;border-top:1px solid var(--line)}
.knowledge-benefits article{padding:25px 0 30px;border-bottom:1px solid var(--line)}.knowledge-benefits article>span,.knowledge-questions article>span{display:block;color:var(--blue);font:13px monospace;margin-bottom:22px}.knowledge-benefits h3{font-size:21px}.knowledge-benefits p{font-size:15px;margin-top:12px}
.knowledge-subhead{max-width:770px;margin-bottom:36px}.knowledge-subhead .eyebrow{margin-bottom:14px}.knowledge-subhead h2{font-size:clamp(36px,4vw,50px)}.knowledge-subhead p{margin-top:16px}
.knowledge-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.knowledge-option{background:white;border:1px solid var(--line);min-width:0}.knowledge-option h3{font:inherit}.knowledge-trigger{display:flex;align-items:center;gap:18px;width:100%;min-height:92px;border:0;background:transparent;text-align:left;padding:16px 20px;color:var(--ink);transition:background .2s}.knowledge-trigger:hover,.knowledge-trigger[aria-expanded="true"]{background:#edf5fb}.knowledge-trigger:focus-visible{outline:3px solid var(--blue);outline-offset:-4px}.knowledge-trigger-copy{flex:1;min-width:0;display:grid;gap:2px}.knowledge-trigger strong{font-size:20px;line-height:1.2;font-weight:500}.knowledge-trigger small{font-size:12px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.knowledge-plus{font-size:27px;font-weight:300;color:var(--blue);transition:transform .2s}.knowledge-trigger[aria-expanded="true"] .knowledge-plus{transform:rotate(45deg)}
.knowledge-swatch{width:54px;height:54px;flex:none;background:var(--knowledge-swatch);border:1px solid #20272f30;box-shadow:4px 4px 0 #dce5ed}.knowledge-glass-visual{width:54px;height:54px;flex:none;border:5px solid #a4b2bd;background:linear-gradient(135deg,#ffffffa6 0 25%,#bed4db80 25% 70%,#f7fcff 70%);box-shadow:4px 4px 0 #dce5ed}.knowledge-glass-arctic{background:repeating-linear-gradient(45deg,#e8edf0,#e8edf0 4px,#cbd5db 5px,#dce5e9 8px)}.knowledge-glass-cool-grey{background:#83909a}.knowledge-glass-cool-bronze{background:#a78d72}.knowledge-glass-s10-silver{background:linear-gradient(130deg,#f7fbff,#8597a3 50%,#e8f2f5)}.knowledge-glass-s10-grey{background:linear-gradient(130deg,#a8b8c0,#53636f 50%,#c7d3d8)}.knowledge-glass-low-e{background:linear-gradient(130deg,#e4f2ee,#b4d1d1 50%,#f6fbf8)}
.knowledge-panel{padding:0 22px 27px;border-top:1px solid var(--line)}.knowledge-enhanced .knowledge-option:has(.knowledge-trigger[aria-expanded="false"]) .knowledge-panel{display:none}.knowledge-answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 30px;padding-top:26px}.knowledge-answer-grid h4{font-size:13px;text-transform:uppercase;letter-spacing:.055em;margin:0 0 8px;color:var(--blue)}.knowledge-answer-grid p{margin:0;font-size:15px;line-height:1.62}.knowledge-answer-grid ul:not(.knowledge-chips){padding-left:20px;margin:0;color:var(--muted);font-size:15px}.knowledge-answer-grid li+li{margin-top:4px}.knowledge-consider{padding:15px 17px;background:#edf5fb;grid-column:1/-1}.knowledge-chips{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0}.knowledge-chips li{border:1px solid var(--line);padding:3px 9px;font-size:13px;color:var(--ink)}.knowledge-chips a{text-decoration:underline;text-decoration-color:#a8bdcf;text-underline-offset:3px}.knowledge-panel>.text-link{margin-top:23px}.knowledge-section>.fine{margin-top:18px}
.knowledge-glass-section{background:#edf5fb}.knowledge-glass-section .knowledge-option{border-color:#d2e1ec}.knowledge-safety .knowledge-option{border-top:3px solid var(--green)}.knowledge-safety-note{background:#edf5fb;padding:18px 22px;max-width:none;margin-top:26px}.knowledge-safety-note strong{color:var(--ink)}
.knowledge-choice{background:var(--green);color:white}.knowledge-choice .eyebrow{color:var(--accent)}.knowledge-choice .knowledge-subhead p{color:#d8e7ed}.knowledge-questions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#ffffff3b;border:1px solid #ffffff3b}.knowledge-questions article{padding:28px;background:var(--green)}.knowledge-questions article>span{color:var(--accent)}.knowledge-questions h3{font-size:24px}.knowledge-questions p{color:#dbe7ec;font-size:15px}.knowledge-questions strong{color:white}
.knowledge-cta{padding-block:72px}.knowledge-cta h2{font-size:clamp(42px,5vw,64px)}.knowledge-cta p:not(.eyebrow){color:#e8f2fa;max-width:670px;margin-top:16px}.knowledge-cta-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 28px;margin-top:28px}.knowledge-cta .button{position:static;margin:0}.knowledge-cta .light-link{margin:0}
@media(min-width:801px) and (max-width:1220px){.site-header nav{gap:13px}.site-header nav a{font-size:13px}.site-header .nav-cta{padding:12px;gap:10px}.brand{width:120px}.brand img{width:120px}}
@media(max-width:800px){.knowledge-hero{min-height:540px;align-items:flex-end}.knowledge-hero-image{object-position:58% center}.knowledge-hero-shade{background:linear-gradient(90deg,rgba(10,24,36,.94),rgba(10,24,36,.62))}.knowledge-hero-inner{padding-block:54px}.knowledge-heading{max-width:620px}.knowledge-benefits{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:68px}.knowledge-options{grid-template-columns:1fr}.knowledge-questions{grid-template-columns:1fr}.knowledge-topic-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.knowledge-topic-trigger{min-height:56px;padding:10px 14px}.knowledge-topic-trigger:nth-child(2){border-right:0}.knowledge-topic-trigger:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:480px){.knowledge-hero{min-height:580px}.knowledge-hero-image{object-position:61% center}.knowledge-hero-shade{background:linear-gradient(90deg,rgba(10,24,36,.94),rgba(10,24,36,.7))}.knowledge-hero-inner{padding-block:44px 50px}.knowledge-heading h1{font-size:42px}.knowledge-intro{margin-top:22px}.knowledge-intro p{font-size:17px;line-height:1.55}.knowledge-hero-actions{align-items:flex-start;flex-direction:column;gap:10px;margin-top:26px}.knowledge-hero-actions .light-link{font-size:14px}.knowledge-benefits{grid-template-columns:1fr}.knowledge-benefits article{padding-block:20px}.knowledge-trigger{min-height:76px;padding:12px}.knowledge-trigger strong{font-size:18px}.knowledge-swatch,.knowledge-glass-visual{width:46px;height:46px}.knowledge-answer-grid{grid-template-columns:1fr;gap:20px}.knowledge-panel{padding-inline:16px}.knowledge-questions article{padding:24px}}

/* Quote: a short enquiry and a direct, personal contact panel. */
.quote-heading{padding-block:54px 42px}.quote-heading h1{font-size:clamp(44px,5.4vw,72px);line-height:1.05;max-width:900px}.quote-heading .eyebrow{margin-bottom:20px}.quote-heading .lead{margin-top:20px}
.quote-simple{grid-template-columns:minmax(280px,.85fr) minmax(0,1.4fr);gap:64px;align-items:start;padding-bottom:76px}
.quote-contact{background:#edf5fb;border-top:3px solid var(--blue);padding:32px}.quote-contact .eyebrow{margin-bottom:18px}.quote-contact>p:not(.eyebrow){font-size:16px}.quote-contact .quote-whatsapp{margin-top:24px;width:100%;justify-content:space-between}.quote-contact .contact-links{margin-top:24px;gap:0}.quote-contact .contact-links>a{min-height:48px;align-items:center;padding-block:10px}
.quote-save-contact{border-top:1px solid var(--line);margin-top:28px;padding-top:24px;text-align:center}.quote-save-contact img{display:block;width:min(100%,280px);height:auto;margin:0 auto 18px}.quote-save-contact h3{font-size:23px}.quote-save-contact p{font-size:14px;margin-top:8px}.quote-save-contact .text-link{margin-top:5px;font-size:14px}
.quote-project .form-intro{margin-bottom:28px}.quote-project .form-intro .eyebrow{margin-bottom:16px}.quote-project .form-intro h2{font-size:32px}.quote-project .form-intro>p:not(.eyebrow){font-size:15px;margin-top:12px}.quote-project label{margin-bottom:20px}.quote-project input,.quote-project select,.quote-project textarea{border-color:#bacbd8;background:white}.quote-options{border-block:1px solid var(--line);margin:4px 0 8px}.quote-options summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;font-size:16px;font-weight:600}.quote-options summary small{color:var(--muted);font-size:12px;font-weight:400;margin-left:10px}.quote-plus{font-size:26px;font-weight:400;transition:transform .2s}.quote-options[open] .quote-plus{transform:rotate(45deg)}.quote-options-body{padding-top:8px}.quote-options-body>.fine{margin:0 0 22px}.quote-send-note{max-width:470px;margin-top:16px}.quote-simple a:focus-visible,.quote-simple summary:focus-visible,.quote-simple button:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
@media(max-width:1000px){.quote-simple{gap:32px}.quote-contact{padding:24px}.quote-project .form-intro h2{font-size:28px}}
@media(max-width:800px){.quote-heading{padding-block:40px 32px}.quote-simple{grid-template-columns:1fr;gap:36px}.quote-project{grid-row:1}.quote-contact{padding:28px}.quote-save-contact img{width:260px}.quote-contact .quote-whatsapp{width:auto;gap:40px}.quote-contact .contact-links{max-width:430px}}
@media(max-width:480px){.quote-heading h1{font-size:42px}.quote-heading .lead{font-size:18px}.quote-project .form-intro h2{font-size:27px}.quote-contact{padding:24px}.quote-simple{padding-bottom:48px}.quote-simple form>.button{width:100%;justify-content:space-between}}
