@font-face{font-family:'DM Sans';src:url('./assets/fonts/font-0.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('./assets/fonts/font-2.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url('./assets/fonts/font-6.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Manrope;src:url('./assets/fonts/font-8.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Manrope;src:url('./assets/fonts/font-9.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--ink:#160100;--panel:#1d0603;--gold:#fae7af;--paper:#fef1d9;--bronze:#9d7c5c;--soft:#e5cea6;--line:rgba(229,206,166,.24);--metal:linear-gradient(112deg,#9d7c5c 0%,#e5cea6 18%,#fae7af 35%,#fef1d9 46%,#9d7c5c 54%,#fae7af 73%,#fef1d9 100%);--gutter:clamp(24px,5vw,88px);--ease:cubic-bezier(.22,.68,.12,1);--focus:#fae7af}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:106px;overflow-x:clip}
body{margin:0;background:var(--ink);color:var(--paper);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}
body.menu-open,body.dialog-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
button{color:inherit;border:0;background:none;cursor:pointer}
button:disabled{opacity:.35;cursor:default}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--focus);outline-offset:5px}
img{display:block;max-width:100%;height:auto}
svg{display:block}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:Manrope,sans-serif;font-weight:400}
h1,h2{line-height:1.09;letter-spacing:-.045em}
h2{font-size:clamp(38px,4.65vw,72px)}
[hidden]{display:none!important}
::selection{background:var(--gold);color:var(--ink)}
.shell{max-width:1680px;margin-inline:auto;padding-inline:var(--gutter)}
.metal-text{background:var(--metal);background-clip:text;-webkit-background-clip:text;color:transparent}
.eyebrow{font-size:9px;line-height:1.6;letter-spacing:.16em;text-transform:uppercase;color:var(--soft)}
.small-note{font-size:10px;color:var(--bronze);line-height:1.8}
.skip-link{position:fixed;left:12px;top:12px;padding:12px 18px;z-index:100;background:var(--gold);color:var(--ink);transform:translateY(-160%)}
.skip-link:focus{transform:none}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.utility-bar{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--line);padding-top:10px;padding-bottom:10px;font-size:9px;color:var(--soft)}
.utility-bar a>span{margin-left:12px;color:var(--gold)}
.site-header{position:sticky;top:0;z-index:30;background:var(--ink);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:35px;height:var(--header-size,108px)}

.brand{display:flex;align-items:center;gap:16px;flex-shrink:0;color:var(--paper)}
.brand>img{height:68px;width:67px;object-fit:contain;transition:transform .4s var(--ease);transform-origin:left center}
.brand>span{font-family:Georgia,'Times New Roman',serif;font-size:19px;letter-spacing:.19em;line-height:1.2}
.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:8px;color:var(--soft);letter-spacing:.15em;text-transform:uppercase;margin-top:9px}

.main-nav{display:flex;align-items:center;gap:29px;font-size:11px;color:var(--soft)}
.main-nav a{position:relative;padding:13px 0}
.main-nav a::after{content:'';position:absolute;bottom:4px;left:0;right:0;height:1px;background:var(--metal);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.main-nav a:hover::after,.main-nav a[aria-current=location]::after,.main-nav a[aria-current=page]::after{transform:scaleX(1)}
.header-actions{display:flex;align-items:center;gap:17px}
.header-quote{display:flex;align-items:center;gap:23px;font-size:11px;line-height:1.6;border:1px solid var(--bronze);padding:12px 17px;color:var(--gold);white-space:nowrap;transition:background .3s,border-color .3s}
.header-quote:hover{background:var(--panel);border-color:var(--gold)}
.header-quote>.header-arrow{font-size:18px;line-height:1}
.quote-label-mobile{display:none}
.menu-toggle{display:none;width:33px;height:39px;padding:8px 4px}
.menu-toggle>span{display:block;height:1px;background:var(--gold);margin:6px 0;transition:transform .35s var(--ease)}
.page-progress{position:absolute;left:0;right:0;bottom:-1px;display:block;height:1px;background:var(--metal);transform:scaleX(0);transform-origin:left;pointer-events:none}
.hero{padding-top:32px;padding-bottom:30px;overflow:hidden}
.hero-meta{display:flex;justify-content:space-between;align-items:center;gap:25px;color:var(--bronze)}
.hero-meta>span{font-size:9px}
.hero-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(38px,4.9vw,85px);align-items:center;padding-top:50px;padding-bottom:40px}
.hero-copy{padding-bottom:20px}
.hero-copy h1{font-size:clamp(55px,6.5vw,105px);font-weight:600;line-height:1.05;letter-spacing:-.06em}
.hero-copy>p:not(.hero-note){font-size:13px;line-height:1.95;color:var(--soft);max-width:435px;margin-top:30px}
.hero-actions{display:flex;align-items:center;gap:27px;flex-wrap:wrap;margin-top:35px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;max-width:100%;min-height:54px;padding:15px 22px;font-size:11px;font-weight:600;line-height:1.6;border:1px solid transparent;transition:background-position .7s var(--ease),filter .3s,transform .3s}
.button>span{font-size:20px;font-weight:400;line-height:1;transition:transform .35s var(--ease)}
.button:hover:not(:disabled)>span{transform:translate(3px,-3px)}
.button-gold{background:var(--metal);background-size:145% 100%;color:var(--ink);border-color:#9d7c5c}
.button-gold:hover:not(:disabled){background-position:100% 50%}
.hero-phone{font-size:11px;letter-spacing:.04em;color:var(--gold);border-bottom:1px solid var(--bronze);padding:9px 0}
.hero-note{font-size:9px;color:var(--bronze);letter-spacing:.06em;margin-top:26px}
.hero-composition{position:relative;min-width:0;padding-top:14px;padding-bottom:55px}
.hero-main{margin-right:24%;position:relative}
.hero-main>img{width:100%;height:clamp(395px,39vw,630px);object-fit:cover;object-position:center 54%}
.hero-main::before{content:'';position:absolute;inset:11px 11px 34px;border:1px solid rgba(254,241,217,.35);pointer-events:none}
.hero-main figcaption{font-size:8px;color:var(--soft);letter-spacing:.03em;margin-top:11px}
.hero-detail{position:absolute;right:0;bottom:67px;width:56%;border:7px solid var(--ink)}
.hero-detail>img{width:100%;aspect-ratio:1.42;object-fit:cover}
.hero-detail figcaption{font-size:9px;color:var(--soft);padding:10px 0 0;background:var(--ink)}
.hero-signature{position:absolute;bottom:0;left:2%;right:0;display:flex;align-items:center;gap:18px;color:var(--gold);font-size:8px;letter-spacing:.24em}
.hero-signature svg{height:43px;width:135px;fill:none;stroke:var(--gold);stroke-width:1}
.hero-bottom{display:flex;justify-content:space-between;gap:22px;align-items:center;border-top:1px solid var(--line);padding-top:22px;color:var(--soft);font-size:9px;letter-spacing:.03em}
.hero-bottom>a{display:flex;align-items:center;gap:16px}
.hero-bottom>a>span{font-size:21px;color:var(--gold)}
.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:10px 0;border-bottom:1px solid var(--bronze);font-size:11px;color:var(--gold);transition:border-color .3s,gap .35s var(--ease)}
.text-link>span{font-size:18px;line-height:1}
.text-link:hover{border-color:var(--gold);gap:54px}
.transformation-section{display:grid;grid-template-columns:.9fr 1.15fr;gap:clamp(50px,7vw,110px);align-items:center;padding-top:86px;padding-bottom:102px}
.transformation-copy .eyebrow{margin-bottom:26px}
.transformation-copy h2{font-size:clamp(43px,4.9vw,75px);line-height:1.13;margin-bottom:30px}
.transformation-copy>p:not(.eyebrow){font-size:12px;color:var(--soft);line-height:1.95;max-width:375px;margin-bottom:20px}
.transformation-details{display:flex;flex-direction:column;gap:10px;font-size:10px;color:var(--bronze);margin:28px 0 25px;padding-left:18px;border-left:1px solid var(--bronze)}
.comparison-wrap{min-width:0}
.compare-stage{position:relative;width:100%;height:clamp(520px,58vw,850px);overflow:hidden;isolation:isolate;touch-action:pan-y;cursor:ew-resize;background:var(--panel)}
.compare-stage:focus-within{outline:2px solid var(--gold);outline-offset:6px}
.compare-after,.compare-before{position:absolute;inset:0;pointer-events:none}
.compare-after img,.compare-before img{width:100%;height:100%;object-fit:cover;object-position:center}
.compare-before{clip-path:inset(0 calc(100% - var(--reveal)) 0 0);z-index:1}
.compare-label{position:absolute;top:18px;padding:7px 11px;background:var(--ink);font-size:8px;letter-spacing:.14em;z-index:2;pointer-events:none;color:var(--paper)}
.compare-label-before{left:18px}.compare-label-after{right:18px}
.compare-divider{position:absolute;left:var(--reveal);top:0;bottom:0;width:1px;background:var(--gold);z-index:3;pointer-events:none}
.compare-divider>span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:51px;height:51px;border:1px solid var(--gold);border-radius:50%;color:var(--gold);background:var(--ink);font-size:23px}
.compare-range{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;z-index:4;touch-action:pan-y}
.compare-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:17px 0}
.compare-toolbar>div{display:flex;gap:16px}
.compare-toolbar button{font-size:9px;min-height:40px;padding:5px 0;border-bottom:1px solid transparent;color:var(--soft);transition:color .25s,border-color .25s}
.compare-toolbar button[aria-pressed=true]{border-color:var(--gold);color:var(--gold)}
.compare-toolbar output{font-size:9px;color:var(--bronze);white-space:nowrap}
#compare-hint{font-size:9px;color:var(--bronze);line-height:1.8;margin-top:14px}
.expertise-section{background:var(--panel);border-block:1px solid var(--line);padding:88px 0 70px}
.expertise-heading{max-width:980px}
.expertise-heading .eyebrow{margin-bottom:25px}
.expertise-heading>p:last-child{font-size:12px;color:var(--soft);line-height:1.9;margin-top:25px;max-width:460px}
.expertise-columns{display:grid;grid-template-columns:1fr 1fr 1fr;margin-top:63px;gap:clamp(28px,4.8vw,75px)}
.expertise-columns article{position:relative;border-top:1px solid var(--bronze);padding-top:28px}
.expertise-index{font-size:10px;color:var(--bronze);letter-spacing:.1em}
.expertise-columns h3{font-size:clamp(40px,4.1vw,68px);letter-spacing:-.04em;line-height:1.12;margin-top:20px;color:var(--gold)}
.expertise-columns article>p{font-size:11px;line-height:1.9;color:var(--soft);margin:22px 0 20px;max-width:245px}
.expertise-columns ul{list-style:none;margin:0 0 21px;padding:0;color:var(--soft);font-size:11px;line-height:2.3}
.expertise-columns .text-link{font-size:10px;gap:25px}
.project-path{border-top:1px solid var(--line);padding-top:27px;margin-top:62px;display:grid;grid-template-columns:190px 1fr;gap:23px 40px}
.project-path ol{list-style:none;margin:0;padding:0;display:flex;align-items:start;justify-content:space-between;gap:25px;font-size:10px;color:var(--soft)}
.project-path ol>li{display:flex;align-items:center;gap:13px;line-height:1.8}
.project-path b{font-weight:400;font-size:9px;color:var(--bronze)}
.project-path>p:last-child{grid-column:2;font-size:9px;color:var(--bronze);line-height:1.8}
.projects-section{padding-top:97px;padding-bottom:90px}
.projects-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:43px}
.projects-heading .eyebrow{margin-bottom:26px}
.projects-heading h2{font-size:clamp(55px,6.4vw,96px)}
.projects-toolbar{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:20px;margin-bottom:42px}
.project-filters{display:flex;gap:30px;flex-wrap:wrap}
.project-filters button{font-size:11px;line-height:1.6;min-height:40px;padding:8px 0;color:var(--bronze);border-bottom:1px solid transparent;transition:color .3s,border-color .3s}
.project-filters button[aria-pressed=true]{color:var(--gold);border-color:var(--gold)}
.projects-toolbar>p{font-size:9px;color:var(--bronze);white-space:nowrap}
.project-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:48px 38px;align-items:start}
.project{grid-column:span 3;min-width:0}
.project.is-featured{grid-column:span 4}
.project.is-narrow{grid-column:span 2;margin-top:80px}
.project-photo{overflow:hidden;position:relative;aspect-ratio:1.3;background:var(--panel)}
.project.is-featured .project-photo{aspect-ratio:1.48}
.project.is-narrow .project-photo{aspect-ratio:.75}
.project-photo img{height:100%;width:100%;object-fit:cover;transition:transform .85s var(--ease)}
.project-open:hover .project-photo img{transform:scale(1.035)}
.project-view{position:absolute;bottom:16px;left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;padding:13px 16px;color:var(--gold);background:rgba(22,1,0,.91);font-size:9px;transform:translateY(8px);opacity:0;transition:opacity .3s,transform .35s var(--ease)}
.project-view>span{font-size:18px;line-height:1}
.project-open:hover .project-view,.project-open:focus-visible .project-view{transform:none;opacity:1}
.project-caption{display:grid;grid-template-columns:22px 1fr 20px;gap:13px;border-bottom:1px solid var(--line);padding:21px 0 22px}
.project-index{font-size:8px;color:var(--bronze);margin-top:3px}
.project-caption p{font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:var(--bronze);margin-bottom:8px}
.project-caption h3{font-size:clamp(17px,1.65vw,27px);line-height:1.3;letter-spacing:-.02em}
.project-arrow{font-size:18px;color:var(--gold)}
.project.is-entering{animation:project-enter .55s var(--ease)}
.portfolio-note{font-size:9px;color:var(--bronze);line-height:1.8;margin-top:35px}
.trust-section{padding:45px 0 54px;border-block:1px solid var(--line);overflow:hidden}
.trust-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:40px}
.trust-heading h2{font-size:clamp(30px,3.3vw,52px);line-height:1.15;margin-top:20px}
.marquee-pause{display:flex;align-items:center;gap:15px;font-size:9px;color:var(--bronze);min-height:40px;padding:8px 0;flex-shrink:0}
.marquee-pause>span{font-size:13px;color:var(--gold)}
.logo-marquee{overflow:hidden;padding-block:14px;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.logo-track{display:flex;width:max-content;animation:logos-travel var(--marquee-duration,48s) linear infinite;will-change:transform}
.logo-group{display:flex;align-items:center;gap:64px;padding-inline:32px;flex-shrink:0}
.client-logo{width:184px;height:68px;display:grid;place-items:center;flex-shrink:0;background:none}
.client-logo img{width:184px;height:57px;object-fit:contain}
.logo-marquee.is-paused .logo-track{animation-play-state:paused}
.trust-note{font-size:9px;color:var(--bronze);margin-top:32px}
.warranty-section{padding-top:90px;padding-bottom:90px}
.warranty-heading .eyebrow{margin-bottom:25px}
.warranty-heading h2{font-size:clamp(43px,4.9vw,76px)}
.warranty-heading>p:last-child{font-size:12px;color:var(--soft);line-height:1.9;margin-top:25px;max-width:540px}
.warranty-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px;margin-top:45px}
.warranty-grid img{width:100%;height:auto;transition:transform .6s var(--ease)}
.warranty-grid article>a:first-child:hover img{transform:translateY(-4px)}
.warranty-grid h3{font-size:18px;line-height:1.4;letter-spacing:-.025em;margin-top:24px;margin-bottom:13px}
.warranty-grid article>p{font-size:11px;line-height:1.95;color:var(--soft);max-width:330px;min-height:86px}
.warranty-grid article>a:last-child{display:inline-block;border-bottom:1px solid var(--bronze);font-size:9px;color:var(--gold);padding-bottom:5px;margin-top:18px}
.warranty-footer{display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid var(--line);padding-top:25px;margin-top:44px}
.warranty-footer>p{font-size:9px;line-height:1.9;color:var(--bronze);max-width:610px}
.warranty-footer .text-link{font-size:10px;white-space:nowrap;gap:25px}
.contact-section{padding-top:90px;padding-bottom:95px;background:var(--panel);border-top:1px solid var(--line)}
.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,8vw,125px);align-items:start}
.contact-copy .eyebrow{margin-bottom:25px}
.contact-copy h2{font-size:clamp(46px,5.35vw,82px);line-height:1.11;margin-bottom:26px}
.contact-copy>p:not(.eyebrow):not(.contact-availability){font-size:12px;color:var(--soft);line-height:1.9;max-width:350px;margin-bottom:22px}
.contact-phone{display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:345px;color:var(--gold);font-family:Manrope,sans-serif;font-size:26px;letter-spacing:-.025em;padding:13px 0;border-bottom:1px solid var(--bronze)}
.contact-phone>span{font-size:22px}
.contact-availability{font-size:9px;color:var(--bronze);line-height:1.9;margin-top:14px}
.contact-person{margin-top:32px}
.contact-person>span,.contact-area>span{display:block;font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:var(--bronze);margin-bottom:10px}
.contact-person b{font-size:14px;font-weight:400;display:block}
.contact-person p{font-size:11px;color:var(--soft);margin-top:4px}
.contact-person a{font-size:11px;color:var(--gold);display:inline-block;margin-top:8px}
.contact-area{margin-top:30px}
.contact-area p{font-size:11px;line-height:1.9;color:var(--soft)}
.quote-panel{padding:37px 37px 31px;border:1px solid var(--bronze);background:var(--ink);position:relative}
.quote-panel::before,.quote-panel::after{content:'';position:absolute;width:9px;height:9px;border:1px solid var(--gold);pointer-events:none}
.quote-panel::before{top:-5px;left:-5px}.quote-panel::after{bottom:-5px;right:-5px}
.quote-heading{border-bottom:1px solid var(--line);padding-bottom:25px}
.quote-heading>span{font-size:8px;letter-spacing:.16em;color:var(--bronze)}
.quote-heading>p{font-family:Manrope,sans-serif;font-size:25px;letter-spacing:-.035em;line-height:1.25;margin-top:13px}
.quote-fields{display:grid;grid-template-columns:1fr 1fr;gap:25px 26px;margin-top:29px}
.quote-fields label{display:block;font-size:10px;color:var(--soft)}
.quote-fields label>span{color:var(--gold);margin-left:4px}
.quote-fields input{display:block;min-width:0;width:100%;border:0;border-bottom:1px solid var(--bronze);border-radius:0;padding:12px 0;background:transparent;color:var(--paper);font-size:14px;min-height:44px;margin-top:5px;transition:border-color .3s}
.quote-fields input:focus{border-color:var(--gold)}
.quote-fields input[aria-invalid=true]{border-color:var(--gold);border-bottom-width:2px}
.quote-error{font-size:11px;color:var(--gold);line-height:1.8;margin-top:22px}
.quote-error:empty{display:none}
.quote-privacy{font-size:9px;color:var(--bronze);line-height:1.9;margin:26px 0 24px}
.quote-privacy a{color:var(--soft);text-decoration:underline;text-underline-offset:4px}
.quote-panel .button{width:100%;gap:20px}
.quote-delivery{font-size:9px;color:var(--bronze);line-height:1.9;margin-top:18px}
.quote-ready{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--bronze);border-radius:50%;font-size:18px;color:var(--gold);margin-bottom:24px}
.quote-result h3{font-size:42px;line-height:1.13;letter-spacing:-.04em;margin:22px 0}
.quote-result dl{font-size:11px;margin:28px 0}
.quote-result dl>div{display:flex;justify-content:space-between;gap:25px;align-items:start;border-top:1px solid var(--line);padding:13px 0}
.quote-result dt{color:var(--bronze)}
.quote-result dd{margin:0;text-align:right;overflow-wrap:anywhere}
.quote-result-actions{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-top:20px}
.quote-result-actions button{font-size:9px;color:var(--soft);padding:8px 0;border-bottom:1px solid var(--bronze)}
.site-footer{padding-top:48px;padding-bottom:27px}
.footer-top{display:grid;grid-template-columns:180px 1fr 1fr 45px;gap:60px;align-items:start;padding-bottom:36px}
.footer-logo{display:block;width:145px;margin-top:-16px}
.footer-logo img{width:100%;height:auto}
.footer-address>.eyebrow{margin-bottom:15px}
.footer-address>p:not(.eyebrow){font-size:11px;line-height:1.9;color:var(--soft);margin-bottom:13px}
.footer-address>a{display:block;font-size:10px;color:var(--gold);line-height:2}
.footer-top>nav{display:flex;flex-direction:column;align-items:start;gap:9px;font-size:10px;color:var(--soft);padding-top:5px}
.back-top{width:43px;height:43px;border:1px solid var(--bronze);display:grid;place-items:center;font-size:20px;color:var(--gold);transition:background .3s}
.back-top:hover{background:var(--panel)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding-top:23px;font-size:8px;color:var(--bronze)}
.footer-bottom nav{display:flex;align-items:center;flex-wrap:wrap;gap:23px}
.footer-bottom button{font-size:inherit;padding:0}
.footer-bottom a:hover,.footer-bottom button:hover{text-decoration:underline;text-underline-offset:4px;color:var(--gold)}
dialog{padding:0;border:1px solid var(--bronze);background:var(--ink);color:var(--paper);max-width:calc(100vw - 48px);max-height:calc(100dvh - 48px);overflow:auto;overscroll-behavior:contain;box-shadow:0 25px 70px rgba(0,0,0,.35)}
dialog::backdrop{background:rgba(22,1,0,.83);backdrop-filter:blur(7px)}
dialog[open]{animation:dialog-enter .4s var(--ease)}
.project-dialog{width:1120px}
.project-dialog-layout{display:grid;grid-template-columns:1.2fr 1fr}
.project-dialog-media{min-width:0;background:var(--panel)}
.project-dialog-media>img{width:100%;height:620px;object-fit:contain}
.project-dialog-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 24px;font-size:10px;color:var(--soft);border-top:1px solid var(--line)}
.project-dialog-controls button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--bronze);font-size:17px;color:var(--gold)}
.dialog-close{position:absolute;top:15px;right:15px;width:35px;height:35px;border:1px solid var(--bronze);background:var(--ink);color:var(--gold);font-size:25px;line-height:1;z-index:3;display:grid;place-items:center}
.project-dialog-copy{padding:63px 37px 35px}
.project-dialog-copy h2{font-size:40px;line-height:1.14;margin:23px 0 24px;color:var(--gold);letter-spacing:-.04em}
.project-dialog-copy>p:not(.eyebrow):not(.project-source){font-size:12px;color:var(--soft);line-height:1.9}
.project-dialog-copy ul{padding:20px 0 20px 18px;font-size:11px;line-height:2;color:var(--soft);border-block:1px solid var(--line);margin:27px 0}
.project-dialog-copy>.button{margin-top:22px;font-size:10px;padding-inline:18px;gap:22px}
.project-dialog-copy>.text-link{font-size:10px;gap:22px}
.project-source{font-size:9px;color:var(--bronze);margin-top:23px}
.toast{position:fixed;z-index:80;bottom:23px;left:50%;transform:translate(-50%,14px);opacity:0;pointer-events:none;max-width:calc(100vw - 40px);padding:13px 22px;background:var(--gold);color:var(--ink);font-size:11px;text-align:center;transition:opacity .3s,transform .3s var(--ease)}
.toast.is-visible{transform:translate(-50%,0);opacity:1}
.noscript-note{padding:20px var(--gutter);font-size:11px;background:var(--panel);color:var(--soft)}
.noscript-note a{text-decoration:underline}
html:not(.js) .quote-panel,html:not(.js) .marquee-pause{display:none}
html:not(.js) .contact-layout{grid-template-columns:1fr}
html:not(.js) .logo-marquee{mask-image:none;overflow:visible}
html:not(.js) .logo-track{animation:none;width:auto;transform:none}
html:not(.js) .logo-group:first-child{width:100%;justify-content:center;flex-wrap:wrap;gap:25px 40px;padding-inline:var(--gutter)}
html:not(.js) .logo-group[aria-hidden=true]{display:none}
.js .hero-copy{animation:content-enter .95s var(--ease) both}
.js .hero-main{animation:photo-enter 1.2s var(--ease) .08s both}
.js .hero-detail{animation:photo-enter 1.2s var(--ease) .2s both}
.project-dialog-media>img.is-entering{animation:photo-enter .4s var(--ease)}
@keyframes logos-travel{to{transform:translateX(-50%)}}
@keyframes content-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes photo-enter{from{opacity:0}to{opacity:1}}
@keyframes project-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes dialog-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
.reduce-motion,.reduce-motion *{scroll-behavior:auto!important}
.reduce-motion *,.reduce-motion *::before,.reduce-motion *::after{transition:none!important;animation:none!important}
.reduce-motion .project-open:hover .project-photo img,.reduce-motion .warranty-grid article>a:first-child:hover img,.reduce-motion .button:hover>span{transform:none}
.reduce-motion .logo-marquee{mask-image:none;overflow:visible}
.reduce-motion .logo-track{width:auto;transform:none}
.reduce-motion .logo-group:first-child{width:100%;justify-content:center;flex-wrap:wrap;gap:25px 40px;padding-inline:var(--gutter)}
.reduce-motion .logo-group[aria-hidden=true],.reduce-motion [data-logo-repeat]{display:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.project-open:hover .project-photo img,.warranty-grid article>a:first-child:hover img,.button:hover>span{transform:none}.logo-marquee{mask-image:none;overflow:visible}.logo-track{width:auto;transform:none}.logo-group:first-child{width:100%;justify-content:center;flex-wrap:wrap;gap:25px 40px;padding-inline:var(--gutter)}.logo-group[aria-hidden=true],[data-logo-repeat]{display:none}}
@media(max-width:1150px){
 :root{--gutter:46px}.header-inner{gap:26px}.brand{gap:13px}.brand>span{font-size:17px;letter-spacing:.17em}.brand>img{width:59px;height:60px}.main-nav{gap:20px;font-size:10px}.header-quote{font-size:10px;padding:11px 14px;gap:17px}
 .hero-layout{gap:39px}.hero-copy h1{font-size:7.3vw}.hero-actions{gap:19px}.hero-copy>p:not(.hero-note){font-size:12px}.hero-actions .button{gap:28px;padding-inline:18px}.hero-main>img{height:490px}.hero-composition{padding-bottom:50px}.hero-detail{width:59%;bottom:62px}
 .transformation-section{gap:55px;grid-template-columns:.9fr 1.1fr}.transformation-copy h2{font-size:5.5vw}.transformation-copy>p:not(.eyebrow){font-size:11px}.compare-stage{height:660px}.compare-toolbar>div{gap:12px}.compare-toolbar button,.compare-toolbar output{font-size:8px}
 .project-path{grid-template-columns:170px 1fr;gap:21px 30px}.project-path ol{gap:18px;font-size:9px}.project-path ol>li{gap:10px}.project-grid{gap:39px 30px}.project.is-narrow{margin-top:65px}.project-caption{grid-template-columns:18px 1fr 17px;gap:10px}.project-caption h3{font-size:20px}
 .trust-heading h2{font-size:41px}.marquee-pause{font-size:8px}.warranty-grid{gap:33px}.warranty-grid h3{font-size:16px}.warranty-grid article>p{font-size:10px}.warranty-heading h2{font-size:5.3vw}
 .contact-layout{gap:65px}.contact-copy h2{font-size:5.8vw}.quote-panel{padding:31px 29px 27px}.contact-phone{font-size:24px}.footer-top{grid-template-columns:145px 1fr 1fr 43px;gap:37px}.footer-logo{width:130px}.footer-bottom nav{gap:17px}.footer-bottom{font-size:7px}
 .project-dialog-media>img{height:560px}.project-dialog-copy{padding:60px 28px 28px}.project-dialog-copy h2{font-size:34px}.project-dialog-copy>p:not(.eyebrow):not(.project-source){font-size:11px}
}
@media(max-width:900px){
 :root{--gutter:34px}html{scroll-padding-top:91px}.header-inner{height:88px}.brand>img{width:55px;height:56px}.brand>span{font-size:18px}
 .js .main-nav{position:absolute;top:100%;left:0;right:0;display:flex;flex-direction:column;align-items:start;gap:0;margin:0;padding:25px var(--gutter) 36px;background:var(--ink);border-bottom:1px solid var(--bronze);max-height:calc(100dvh - 90px);overflow-y:auto;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px);transition:opacity .35s var(--ease),transform .35s var(--ease),visibility .35s}
 .js .main-nav a{font-family:Manrope,sans-serif;font-size:29px;line-height:1.3;width:100%;padding-block:15px;color:var(--gold);letter-spacing:-.03em}
 .js .menu-is-open .main-nav{opacity:1;visibility:visible;pointer-events:auto;transform:none}.js .menu-toggle{display:block}.menu-is-open .menu-toggle>span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-is-open .menu-toggle>span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .utility-bar{font-size:8px}.header-quote{font-size:11px;padding-inline:16px}.header-actions{gap:18px}
 .hero-meta>span{font-size:8px}.hero-layout{gap:38px;padding-top:40px}.hero-copy h1{font-size:8.2vw}.hero-main>img{height:450px}.hero-composition{padding-bottom:47px}.hero-main{margin-right:21%}.hero-detail{width:63%;bottom:63px}.hero-detail figcaption{font-size:8px}.hero-copy>p:not(.hero-note){font-size:11px}.hero-copy>p:not(.hero-note)>br{display:none}.hero-actions{margin-top:27px;display:block}.hero-actions .button{font-size:10px;gap:30px}.hero-phone{display:inline-block;margin-top:17px;font-size:10px}.hero-note{font-size:8px;margin-top:23px}.hero-bottom{font-size:8px}
 .transformation-section{gap:42px;padding-top:65px;padding-bottom:72px;grid-template-columns:.9fr 1fr}.transformation-copy h2{font-size:5.5vw}.transformation-copy .eyebrow{font-size:8px;margin-bottom:22px}.transformation-copy .text-link{font-size:10px;gap:23px}.transformation-details{font-size:9px}.compare-stage{height:600px}.compare-toolbar{display:block;padding-block:13px}.compare-toolbar>div{justify-content:space-between;gap:15px}.compare-toolbar output{display:block;margin-top:8px;font-size:8px}.compare-toolbar button{font-size:9px}#compare-hint{font-size:8px}
 .expertise-section{padding-block:72px 59px}.expertise-heading h2{font-size:5.2vw}.expertise-columns{gap:28px;margin-top:48px}.expertise-columns h3{font-size:5.1vw}.expertise-columns article>p,.expertise-columns ul{font-size:10px}.expertise-columns .text-link{font-size:9px;gap:18px}.project-path{grid-template-columns:1fr;gap:21px;margin-top:47px}.project-path>p:last-child{grid-column:auto}.project-path ol{font-size:10px;justify-content:flex-start;gap:37px}
 .projects-section{padding-block:75px 72px}.projects-heading h2{font-size:8vw}.projects-heading .text-link{font-size:10px;gap:26px}.project-grid{gap:33px 25px}.project.is-narrow{margin-top:52px}.project-caption h3{font-size:18px}.project-caption p{font-size:7px}.project-filters{gap:25px}.project-filters button{font-size:10px}.project-view{opacity:1;transform:none;right:auto;bottom:12px;left:12px;font-size:8px;padding:9px 12px;gap:21px}
 .trust-heading{align-items:start;gap:27px}.trust-heading h2{font-size:36px}.marquee-pause{font-size:8px}.client-logo{width:165px}.client-logo img{width:165px}.logo-group{gap:50px;padding-inline:25px}
 .warranty-section{padding-block:72px}.warranty-grid{gap:26px;margin-top:32px}.warranty-grid h3{font-size:14px}.warranty-grid article>p{font-size:9px;min-height:100px}.warranty-grid article>a:last-child{font-size:8px}.warranty-footer .text-link{font-size:9px;gap:20px}.warranty-footer>p{font-size:8px}.warranty-heading h2{font-size:5.5vw}
 .contact-section{padding-block:72px 78px}.contact-layout{gap:42px}.contact-copy h2{font-size:6.2vw}.contact-copy>p:not(.eyebrow):not(.contact-availability){font-size:11px}.contact-phone{font-size:22px;gap:15px}.quote-panel{padding:28px 25px 25px}.quote-heading>p{font-size:22px}.quote-fields{gap:22px 19px}.quote-fields label{font-size:9px}.quote-fields input{font-size:13px}.quote-panel .button{font-size:10px}.quote-result h3{font-size:35px}.quote-result-actions{display:block}.quote-result-actions button{display:block;margin-top:12px}
 .footer-top{grid-template-columns:120px 1fr 1fr 39px;gap:25px}.footer-logo{width:113px}.footer-address>p:not(.eyebrow){font-size:10px}.footer-address>a{font-size:9px}.footer-top>nav{font-size:9px}.footer-bottom{align-items:start;gap:20px}.footer-bottom nav{gap:13px 18px}.back-top{width:38px;height:38px}
 html:not(.js) .header-inner{height:auto;position:static;flex-wrap:wrap;padding-block:20px}html:not(.js) .main-nav{order:3;width:100%;font-size:11px}html:not(.js) .header-quote{font-size:10px}
}
@media(max-width:700px){
 :root{--gutter:25px}.quote-label-desktop{display:none}.quote-label-mobile{display:inline}.header-quote{gap:14px;font-size:10px;min-height:42px}.header-actions{gap:13px}.brand>span{font-size:17px;letter-spacing:.16em}.brand small{font-size:7px;margin-top:7px}.brand{gap:12px}
 .hero-meta>span{display:none}.hero-layout{grid-template-columns:1fr;gap:31px;padding-top:33px;padding-bottom:31px}.hero-copy{padding-bottom:0}.hero-copy h1{font-size:clamp(57px,11.8vw,82px);max-width:540px;line-height:1.04}.hero-copy>p:not(.hero-note){font-size:12px;max-width:375px;margin-top:24px}.hero-copy>p:not(.hero-note)>br{display:block}.hero-actions{display:flex;gap:26px;margin-top:27px}.hero-actions .button{font-size:11px;gap:35px}.hero-phone{margin-top:0;font-size:11px}.hero-note{font-size:9px;margin-top:22px}.hero-main{margin-right:24%}.hero-main>img{height:460px}.hero-detail{width:57%;bottom:65px;right:0}.hero-composition{max-width:570px;width:100%;justify-self:end;padding-bottom:53px}.hero-main figcaption{font-size:8px}.hero-signature{bottom:0}.hero-bottom{gap:18px;flex-wrap:wrap;font-size:8px}.hero-bottom>span:last-child{display:none}.hero-bottom>a{margin-right:auto}
 .transformation-section{grid-template-columns:1fr;gap:31px;padding-block:56px 65px}.transformation-copy h2{font-size:clamp(45px,8.3vw,65px);max-width:580px;margin-bottom:24px}.transformation-copy .eyebrow{font-size:9px}.transformation-copy>p:not(.eyebrow){font-size:12px;max-width:440px}.transformation-details{flex-direction:row;flex-wrap:wrap;gap:11px 20px;font-size:9px;padding-left:0;border:0;margin-block:25px 15px}.transformation-copy .text-link{font-size:11px;gap:32px}.comparison-wrap{max-width:530px;justify-self:center;width:100%}.compare-stage{height:auto;aspect-ratio:3/4}.compare-toolbar{display:flex;gap:18px}.compare-toolbar>div{gap:18px}.compare-toolbar output{margin-top:0;font-size:9px}.compare-toolbar button{font-size:9px}#compare-hint{font-size:9px}
 .expertise-section{padding-block:60px 53px}.expertise-heading h2{font-size:clamp(37px,6.5vw,49px)}.expertise-heading>p:last-child{font-size:11px}.expertise-columns{grid-template-columns:1fr;gap:30px;margin-top:40px}.expertise-columns article{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding-top:22px;align-items:start}.expertise-index{font-size:9px}.expertise-columns h3{font-size:48px;margin-top:14px;grid-column:1}.expertise-columns article>p{grid-column:1;grid-row:3;font-size:11px;margin-block:17px 0;max-width:210px}.expertise-columns ul{grid-column:2;grid-row:2/5;font-size:11px;line-height:2.15;padding-top:3px;margin:0}.expertise-columns .text-link{grid-column:1;grid-row:4;justify-self:start;align-self:end;margin-top:18px;font-size:9px;gap:18px}.project-path ol{gap:23px;align-items:start}.project-path ol>li{display:block;font-size:9px;max-width:150px}.project-path ol>li>b{display:block;margin-bottom:8px}.project-path .eyebrow{font-size:8px}.project-path>p:last-child{font-size:8px}
 .projects-section{padding-block:63px 58px}.projects-heading{align-items:end;gap:23px;margin-bottom:30px}.projects-heading h2{font-size:clamp(51px,9.3vw,73px)}.projects-heading .eyebrow{font-size:9px}.projects-heading .text-link{gap:16px;font-size:9px}.projects-toolbar{gap:17px;align-items:start;margin-bottom:30px;padding-top:16px}.project-filters{gap:19px}.project-filters button{font-size:10px}.projects-toolbar>p{font-size:8px;padding-top:12px}.project-grid{grid-template-columns:1fr 1fr;gap:30px 23px}.project,.project.is-narrow{grid-column:span 1;margin-top:0}.project.is-featured{grid-column:1/-1}.project.is-narrow .project-photo,.project .project-photo{aspect-ratio:.9}.project.is-featured .project-photo{aspect-ratio:1.3}.project-caption{grid-template-columns:1fr 15px;gap:8px;padding-top:17px;padding-bottom:18px}.project-index{display:none}.project-caption h3{font-size:16px}.project-caption p{font-size:7px}.project-arrow{font-size:16px}.project-view{font-size:7px;padding:8px 9px;left:9px;bottom:9px;gap:12px}.project-view>span{font-size:14px}.portfolio-note{font-size:8px;margin-top:28px}
 .trust-section{padding-block:39px 42px}.trust-heading{display:block;margin-bottom:28px}.trust-heading .eyebrow{font-size:8px}.trust-heading h2{font-size:37px;max-width:460px}.marquee-pause{font-size:8px;margin-top:14px;padding-block:5px;gap:12px}.client-logo{width:150px;height:58px}.client-logo img{width:150px;height:47px}.logo-group{gap:38px;padding-inline:19px}.trust-note{font-size:8px;margin-top:22px}
 .warranty-section{padding-block:59px}.warranty-heading .eyebrow{font-size:9px;margin-bottom:22px}.warranty-heading h2{font-size:clamp(37px,6.9vw,53px)}.warranty-heading>p:last-child{font-size:11px;max-width:430px}.warranty-grid{grid-template-columns:1fr;gap:30px;margin-top:38px}.warranty-grid article{display:grid;grid-template-columns:1fr 1fr;gap:0 23px;align-items:center;max-width:660px}.warranty-grid article>a:first-child{grid-column:1;grid-row:1/4}.warranty-grid h3{grid-column:2;font-size:17px;margin-top:0;margin-bottom:12px}.warranty-grid article>p{grid-column:2;font-size:10px;min-height:0;line-height:1.8}.warranty-grid article>a:last-child{grid-column:2;justify-self:start;font-size:8px;margin-top:14px}.warranty-grid img{width:100%;transform:none}.warranty-footer{display:block;margin-top:33px;padding-top:22px}.warranty-footer>p{font-size:9px}.warranty-footer .text-link{margin-top:15px;font-size:10px;gap:27px}
 .contact-section{padding-block:62px 63px}.contact-layout{grid-template-columns:1fr;gap:42px}.contact-copy h2{font-size:clamp(51px,8.5vw,66px)}.contact-copy>p:not(.eyebrow):not(.contact-availability){font-size:12px}.contact-phone{font-size:29px;max-width:370px}.contact-availability{font-size:10px}.contact-person{margin-top:28px}.contact-area{margin-top:24px}.contact-person a{font-size:12px}.contact-copy .eyebrow{font-size:9px}.quote-panel{padding:31px 31px 28px;max-width:590px;width:100%;justify-self:end}.quote-heading>p{font-size:29px}.quote-fields{gap:25px 24px}.quote-fields input{font-size:16px}.quote-fields label{font-size:10px}.quote-panel .button{font-size:11px}.quote-privacy,.quote-delivery{font-size:9px}.quote-result h3{font-size:41px}.quote-result-actions{display:flex}
 .footer-top{grid-template-columns:115px 1fr 39px;gap:23px}.footer-top>nav{grid-column:2;grid-row:2;font-size:10px;gap:8px}.footer-address{grid-column:2}.back-top{grid-column:3;grid-row:1}.footer-logo{grid-column:1;grid-row:1/3}.footer-address>p:not(.eyebrow){font-size:11px}.footer-address>a{font-size:10px}.footer-top{padding-bottom:31px}.footer-bottom{display:block;font-size:8px}.footer-bottom nav{margin-top:16px;font-size:8px;gap:13px 20px}
 .project-dialog-layout{grid-template-columns:1fr}.project-dialog-media>img{height:440px;object-position:center}.project-dialog-copy{padding:32px 28px}.project-dialog-copy h2{font-size:36px}.project-dialog-copy>p:not(.eyebrow):not(.project-source){font-size:12px}.project-dialog-copy ul{font-size:11px}.project-dialog-copy .button{font-size:11px}.project-source{font-size:9px}
}
@media(max-width:460px){
 :root{--gutter:22px}.utility-bar{font-size:7px;gap:18px;padding-block:8px}.utility-bar>span{max-width:160px}.utility-bar a{white-space:nowrap}.utility-bar a>span{margin-left:8px}.header-inner{height:82px;gap:13px}.brand>img{height:46px;width:45px}.brand{gap:10px}.brand>span{font-size:15px;letter-spacing:.12em}.brand small{font-size:6px;letter-spacing:.14em;margin-top:7px}.header-actions{gap:9px}.header-quote{font-size:9px;padding:9px 10px;gap:10px;min-height:39px}.header-quote>.header-arrow{font-size:16px}.menu-toggle{width:26px;padding-inline:2px}.js .main-nav a{font-size:27px}
 .hero{padding-top:25px;padding-bottom:23px}.hero-meta .eyebrow{font-size:8px;letter-spacing:.1em}.hero-layout{padding-top:29px;gap:27px}.hero-copy h1{font-size:clamp(48px,12.8vw,61px);line-height:1.09;letter-spacing:-.055em}.hero-copy>p:not(.hero-note){font-size:11px;line-height:1.85;margin-top:23px}.hero-actions{gap:19px;margin-top:23px}.hero-actions .button{font-size:10px;gap:28px;min-height:50px;padding-inline:18px}.hero-phone{font-size:10px}.hero-note{font-size:8px;margin-top:20px}.hero-main>img{height:370px}.hero-main{margin-right:22%}.hero-detail{width:59%;border-width:5px;bottom:62px}.hero-main figcaption{font-size:7px}.hero-detail figcaption{font-size:7px}.hero-signature{font-size:7px;gap:14px}.hero-signature svg{width:113px;height:35px}.hero-composition{padding-bottom:46px}.hero-bottom{font-size:7px;gap:15px;justify-content:space-between}.hero-bottom>a{gap:10px;margin-right:0}.hero-bottom>span:nth-of-type(2){display:none}
 .transformation-copy h2{font-size:42px;line-height:1.17}.transformation-copy .eyebrow{font-size:8px}.transformation-copy>p:not(.eyebrow){font-size:11px}.transformation-copy .text-link{font-size:10px}.transformation-details{font-size:8px;gap:9px 14px}.compare-toolbar{gap:13px}.compare-toolbar>div{gap:14px}.compare-toolbar button{font-size:10px}.compare-toolbar output{font-size:9px}.compare-label{font-size:8px;top:14px;padding:6px 9px}.compare-label-before{left:14px}.compare-label-after{right:14px}.compare-divider>span{width:45px;height:45px;font-size:21px}#compare-hint{font-size:10px}
 .expertise-heading h2{font-size:35px;line-height:1.2}.expertise-heading .eyebrow{font-size:8px}.expertise-heading>p:last-child{font-size:11px}.expertise-columns{gap:28px}.expertise-columns article{gap:0 22px}.expertise-columns h3{font-size:39px}.expertise-columns article>p,.expertise-columns ul{font-size:9px}.expertise-columns ul{line-height:2.3}.expertise-columns .text-link{font-size:8px;gap:16px}.project-path ol{gap:20px}.project-path ol>li{font-size:8px;line-height:1.9}.project-path>p:last-child{font-size:8px}
 .projects-heading{display:block}.projects-heading h2{font-size:53px}.projects-heading .text-link{margin-top:20px;gap:38px;font-size:10px}.projects-heading .eyebrow{font-size:8px;margin-bottom:22px}.projects-toolbar{align-items:center;gap:15px}.project-filters{gap:18px}.project-filters button{font-size:9px}.projects-toolbar>p{font-size:7px;padding:0}.project-grid{gap:27px 19px}.project-caption{gap:7px;padding-block:14px 17px}.project-caption h3{font-size:15px}.project-caption p{font-size:6px;letter-spacing:.04em;line-height:1.7}.project-view{font-size:6px;gap:7px;left:7px;bottom:7px;padding:7px 8px}.project-view>span{font-size:12px}.project.is-featured .project-photo{aspect-ratio:1.06}.portfolio-note{font-size:7px}
 .trust-heading h2{font-size:33px}.trust-heading .eyebrow{font-size:7px}.marquee-pause{font-size:7px}.client-logo{width:146px}.client-logo img{width:146px}.logo-group{gap:34px;padding-inline:17px}.trust-note{font-size:7px}
 .warranty-heading h2{font-size:35px;line-height:1.2}.warranty-heading .eyebrow{font-size:8px}.warranty-heading>p:last-child{font-size:10px}.warranty-grid{gap:28px}.warranty-grid article{grid-template-columns:1fr 1.1fr;gap:0 18px}.warranty-grid h3{font-size:14px;line-height:1.4;margin-bottom:10px}.warranty-grid article>p{font-size:9px}.warranty-grid article>a:last-child{font-size:7px;line-height:1.9;margin-top:12px}.warranty-footer>p{font-size:8px}.warranty-footer .text-link{font-size:9px}
 .contact-copy h2{font-size:45px;line-height:1.18}.contact-copy>p:not(.eyebrow):not(.contact-availability){font-size:11px}.contact-phone{font-size:25px;max-width:330px}.contact-availability{font-size:9px}.contact-person>span,.contact-area>span{font-size:7px}.contact-person b{font-size:13px}.contact-person p,.contact-area p{font-size:10px}.contact-person a{font-size:10px}.quote-panel{padding:28px 24px 25px}.quote-heading>p{font-size:25px}.quote-heading>span{font-size:7px}.quote-fields{gap:25px 20px}.quote-fields label{font-size:9px}.quote-fields input{font-size:16px}.quote-privacy,.quote-delivery{font-size:8px}.quote-result dl{font-size:10px}.quote-result h3{font-size:36px}.quote-result-actions{display:block}.quote-result-actions button{font-size:9px}
 .footer-top{grid-template-columns:95px 1fr 33px;gap:20px}.footer-logo{width:96px;margin-top:-12px}.footer-address>.eyebrow{font-size:7px}.footer-address>p:not(.eyebrow){font-size:9px}.footer-address>a{font-size:8px}.footer-top>nav{font-size:9px;gap:7px}.back-top{width:32px;height:32px;font-size:18px}.footer-bottom{font-size:7px}.footer-bottom nav{font-size:7px;gap:12px 18px}
 dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.dialog-close{top:12px;right:12px;width:33px;height:33px;font-size:23px}.project-dialog-media>img{height:365px}.project-dialog-controls{padding:13px 20px}.project-dialog-copy{padding:28px 24px}.project-dialog-copy h2{font-size:32px}.project-dialog-copy>p:not(.eyebrow):not(.project-source){font-size:11px}.project-dialog-copy ul{font-size:10px}.project-dialog-copy .button{font-size:10px;gap:20px}.toast{font-size:10px;padding:12px 18px;width:max-content}
}
@media(max-width:360px){
 :root{--gutter:18px}.brand>span{font-size:13px}.brand>img{width:39px;height:40px}.header-actions{gap:8px}.header-quote{padding-inline:8px}.hero-copy h1{font-size:49px}.hero-main>img{height:335px}.hero-actions .button{gap:24px}.hero-actions{gap:18px}.hero-note{font-size:7px}.transformation-copy h2{font-size:38px}.compare-toolbar{display:block}.compare-toolbar output{margin-top:8px}.expertise-heading h2{font-size:32px}.expertise-columns h3{font-size:35px}.expertise-columns article{gap:0 16px}.project-filters{gap:15px}.projects-toolbar>p{font-size:6px}.project-grid{gap:25px 17px}.warranty-grid article{grid-template-columns:1fr;max-width:320px;justify-self:center}.warranty-grid article>a:first-child{grid-column:1;grid-row:auto;width:100%;max-width:285px;justify-self:center}.warranty-grid h3,.warranty-grid article>p,.warranty-grid article>a:last-child{grid-column:1;text-align:center}.warranty-grid h3{font-size:17px;margin-top:17px}.warranty-grid article>p{font-size:10px}.warranty-grid article>a:last-child{justify-self:center;font-size:8px}.contact-copy h2{font-size:41px}.quote-fields{grid-template-columns:1fr}.quote-panel{padding-inline:23px}.footer-top{grid-template-columns:80px 1fr 30px;gap:16px}.footer-logo{width:83px}.footer-address>a{font-size:7px}.footer-top>nav{font-size:8px}
}

/* Companion documents use clear reading layouts, independently of JavaScript. */
.document-header{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-block:24px;border-bottom:1px solid var(--line)}
.document-header>a:last-child{font-size:11px;color:var(--gold)}
.portfolio-main,.information-main{padding-top:62px;padding-bottom:70px}
.portfolio-main>h1,.information-main>h1{font-size:clamp(55px,6.6vw,100px);font-weight:400;line-height:1.09;margin:25px 0 25px}
.document-lead{font-size:13px;line-height:1.95;color:var(--soft);max-width:720px}
.portfolio-nav,.information-nav{display:flex;gap:14px 27px;flex-wrap:wrap;margin:30px 0 55px;font-size:10px;line-height:1.9}
.portfolio-nav a,.information-nav a{border-bottom:1px solid var(--bronze);padding-bottom:5px;color:var(--gold)}
.portfolio-project{display:grid;grid-template-columns:.65fr 1.15fr;gap:65px;align-items:start;border-top:1px solid var(--line);padding-top:50px;margin-top:60px;scroll-margin-top:35px}
.portfolio-project h2{font-size:38px;line-height:1.2;margin:24px 0 23px;color:var(--gold)}
.portfolio-project-copy>p:not(.eyebrow){font-size:12px;color:var(--soft);line-height:1.9}
.portfolio-project-copy ul{padding-left:18px;font-size:11px;color:var(--soft);line-height:2;margin:24px 0}
.portfolio-project-copy .text-link{font-size:10px;gap:20px;margin-top:10px;margin-right:20px}
.portfolio-project-photos{display:grid;grid-template-columns:1fr;gap:35px}
.portfolio-project-photos img{width:100%;height:auto;max-height:780px;object-fit:contain;object-position:left center}
.portfolio-project-photos figcaption{font-size:9px;color:var(--bronze);line-height:1.9;margin-top:12px}
.information-main{max-width:1200px}
.information-main section{padding-top:35px;padding-bottom:36px;border-top:1px solid var(--line);scroll-margin-top:30px}
.information-main section h2{font-size:32px;line-height:1.3;margin-bottom:25px;color:var(--gold)}
.information-main section h3{font-size:17px;line-height:1.5;margin-top:26px;margin-bottom:13px}
.information-main section p,.information-main section li{font-size:13px;line-height:1.95;color:var(--soft);max-width:830px}
.information-main section p+p{margin-top:17px}
.information-main section a{color:var(--gold);text-decoration:underline;text-underline-offset:4px}
.information-main section ul{padding-left:20px;margin-block:18px}
.information-main dl{margin:23px 0;font-size:12px}
.information-main dl>div{display:grid;grid-template-columns:220px 1fr;gap:25px;padding:13px 0;border-bottom:1px solid var(--line);line-height:1.9}
.information-main dt{color:var(--bronze)}
.information-main dd{margin:0;color:var(--paper);overflow-wrap:anywhere}
.information-note{background:var(--panel);border-left:2px solid var(--bronze);padding:20px 25px;margin-top:24px}
.legal-source{font-size:10px!important;color:var(--bronze)!important;margin-top:20px;line-height:1.8!important}
@media(max-width:900px){.portfolio-project{gap:40px;grid-template-columns:.75fr 1fr}.portfolio-project h2{font-size:31px}.portfolio-project-copy>p:not(.eyebrow){font-size:11px}}
@media(max-width:700px){.document-header{padding-block:20px}.document-header>a:last-child{font-size:10px}.portfolio-main,.information-main{padding-top:45px;padding-bottom:55px}.portfolio-main>h1,.information-main>h1{font-size:53px}.document-lead{font-size:12px}.portfolio-nav,.information-nav{font-size:9px;gap:13px 22px;margin-bottom:40px}.portfolio-project{grid-template-columns:1fr;gap:30px;padding-top:32px;margin-top:45px}.portfolio-project h2{font-size:34px;margin-block:20px}.portfolio-project-copy>p:not(.eyebrow){font-size:12px}.portfolio-project-photos figcaption{font-size:8px}.information-main section h2{font-size:28px}.information-main section p,.information-main section li{font-size:12px}.information-main dl>div{grid-template-columns:1fr;gap:6px;font-size:11px}.information-note{padding:18px 20px}.legal-source{font-size:9px!important}.document-header .brand>img{width:46px;height:47px}.document-header .brand>span{font-size:16px}}

/* Keep substantive copy readable on small screens while captions stay discreet. */
@media(max-width:700px){
 .hero-copy>p:not(.hero-note),.transformation-copy>p:not(.eyebrow),.expertise-heading>p:last-child,.warranty-heading>p:last-child,.contact-copy>p:not(.eyebrow):not(.contact-availability){font-size:13px}
 .expertise-columns article>p,.expertise-columns ul,.warranty-grid article>p,.contact-person p,.contact-area p{font-size:12px}
 .expertise-columns .text-link,.warranty-grid article>a:last-child,.quote-fields label,.quote-privacy,.quote-delivery{font-size:11px}
 .expertise-columns article{grid-template-columns:1fr 1.12fr}
 .expertise-columns ul{overflow-wrap:anywhere;line-height:1.95}
 .warranty-grid h3{font-size:17px}.warranty-grid article>a:last-child{line-height:1.6}
 .contact-person a{font-size:12px;overflow-wrap:anywhere}
 .project-caption p,.portfolio-note,.trust-note,.hero-note,.contact-availability,.footer-bottom,.footer-bottom nav{font-size:10px}
 .project-filters button,.projects-toolbar>p,.marquee-pause{font-size:10px}
 .portfolio-project-copy>p:not(.eyebrow),.information-main section p,.information-main section li{font-size:14px}
 .document-lead{font-size:14px}.portfolio-nav,.information-nav{font-size:11px}
 .legal-source{font-size:11px!important}
}
