.banner-page{--banner-red:#f03623;--banner-blue:#2037b6;--banner-warm:#e8e1d6;--banner-dark:#111;--banner-gutter:clamp(20px,5vw,96px);background:#f4f0e8}.banner-intro{background:#e8e1d6;position:relative}.banner-intro .breadcrumbs{width:100%;max-width:100%;padding:18px var(--banner-gutter) 0;margin:0;left:0}.banner-eyebrow{color:var(--banner-red);letter-spacing:1.35px;text-transform:uppercase;margin:0 0 18px;font-size:10px;font-weight:800}.banner-section{width:100%;padding:clamp(92px,8vw,140px) var(--banner-gutter);margin:0}.banner-heading{grid-template-columns:minmax(180px,.32fr) minmax(0,.98fr) minmax(260px,.55fr);align-items:start;gap:clamp(28px,4vw,70px);margin-bottom:64px;display:grid}.banner-heading .banner-eyebrow{padding-top:10px}.banner-heading h2{letter-spacing:-.06em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(43px,4.6vw,70px);line-height:.91}.banner-heading>p:last-child{color:#5d5953;margin:6px 0 0;font-size:17px;line-height:1.55}.banner-hero{width:100%;min-height:calc(100svh - 94px);padding:0 var(--banner-gutter) 4.5vw;grid-template-columns:minmax(470px,.84fr) minmax(0,1.16fr);gap:clamp(26px,3.5vw,60px);margin:0;display:grid}.banner-hero-copy{align-self:center;min-width:0;padding:72px 0 48px}.banner-hero h1{letter-spacing:-.075em;text-transform:uppercase;text-wrap:balance;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none;max-width:760px;margin:0;font-size:clamp(58px,5.1vw,80px);font-weight:900;line-height:.84}.banner-hero-lead{color:#48433e;max-width:610px;margin:30px 0 0;font-size:clamp(18px,1.45vw,23px);line-height:1.42}.banner-hero-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:34px;display:flex}.banner-text-link{text-transform:uppercase;border-bottom:1px solid;padding:8px 0;font-size:13px;font-weight:800}.banner-hero-facts{border-top:1px solid #14141459;grid-template-columns:1fr 1fr;max-width:640px;margin:50px 0 0;display:grid}.banner-hero-facts div{padding:14px 14px 0 0}.banner-hero-facts div+div{border-left:1px solid #14141459;padding-left:18px}.banner-hero-facts dt{color:#7a736a;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px;font-size:9px}.banner-hero-facts dd{margin:0;font-size:13px;font-weight:800}.banner-hero-visual{background:#1a1a1a;min-width:0;min-height:0;margin:clamp(50px,5vw,82px) 0 0;position:relative;overflow:hidden}.banner-hero-visual img{object-fit:cover;object-position:center;width:100%;height:100%;display:block;position:absolute;inset:0}.banner-hero-visual:after{content:"";pointer-events:none;border:1px solid #fff3;position:absolute;inset:0}.banner-materials{padding-bottom:clamp(100px,10vw,170px)}.banner-material-scale{border-top:1px solid #141414;border-left:1px solid #141414;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.banner-material{border-bottom:1px solid #141414;border-right:1px solid #141414;grid-template-rows:130px minmax(0,1fr);min-width:0;min-height:350px;padding:0;display:grid;position:relative;overflow:hidden}.banner-material:before{display:none}.banner-material-1{--weight:28%;--surface:#efeae1}.banner-material-2{--weight:48%;--surface:#ddd6cb}.banner-material-3{--weight:68%;--surface:#bfc0bd}.banner-material-4{--weight:86%;--surface:#2037b6}.banner-material-code,.banner-material-copy{z-index:1;position:relative}.banner-material-code{align-items:flex-start;gap:7px;padding:24px;display:flex}.banner-material-code strong{letter-spacing:-.07em;font-size:clamp(54px,5vw,78px);line-height:.8}.banner-material-code span{letter-spacing:1px;text-transform:uppercase;padding-bottom:4px;font-size:8px;font-weight:800}.banner-material-copy{background:var(--surface,#ded8ce);padding:24px}.banner-material-4 .banner-material-copy{color:#fff}.banner-material-copy p{letter-spacing:1.1px;text-transform:uppercase;margin:0 0 8px;font-size:8px;font-weight:800}.banner-material-copy h3{letter-spacing:-.045em;text-transform:uppercase;margin:0 0 14px;font-size:clamp(29px,2.5vw,40px);line-height:.9}.banner-material-copy>span{max-width:260px;font-size:14px;line-height:1.48;display:block}.banner-processing{width:100%;padding:clamp(90px,9vw,150px) var(--banner-gutter) 70px;background:var(--banner-dark);color:#fff;margin:0}.banner-processing-intro{grid-template-columns:minmax(180px,.32fr) minmax(0,.9fr) minmax(270px,.55fr);align-items:start;gap:clamp(28px,4vw,70px);display:grid}.banner-processing-intro h2{letter-spacing:-.065em;text-transform:uppercase;text-wrap:balance;margin:0;font-size:clamp(46px,5vw,76px);line-height:.88}.banner-processing-intro>p:last-child{color:#bbb;font-size:17px;line-height:1.55}.banner-processing-line{border-top:1px solid #777;border-left:1px solid #777;grid-template-columns:repeat(3,1fr);margin:80px 0 0;padding:0;list-style:none;display:grid}.banner-processing-line li{border-bottom:1px solid #777;border-right:1px solid #777;min-height:320px;padding:24px}.banner-processing-line li>span{color:var(--acid);font-size:10px}.banner-processing-line h3{letter-spacing:-.05em;text-transform:uppercase;margin:120px 0 14px;font-size:clamp(30px,3vw,45px)}.banner-processing-line p{color:#bbb;max-width:350px;margin:0;line-height:1.5}.banner-eyelet-rule{grid-template-columns:24px 1fr auto 1fr 24px;align-items:center;gap:14px;margin-top:60px;display:grid}.banner-eyelet-rule i{background:#fff;height:1px}.banner-eyelet-rule b{color:var(--acid);font-size:25px}.banner-eyelet-rule small{text-align:center;color:#aaa;letter-spacing:1.2px;text-transform:uppercase;grid-column:1/-1;font-size:8px}.banner-eyelet{border:5px solid #d2d2d2;border-radius:50%;width:24px;height:24px;box-shadow:inset 0 0 0 2px #111}.banner-systems{padding-top:clamp(110px,10vw,170px)}.banner-system-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.banner-system-grid article{background:#fff;border-top:3px solid #141414;min-height:480px;padding:clamp(30px,4vw,62px);position:relative;overflow:hidden}.banner-system-grid article:nth-child(2){background:var(--banner-blue);color:#fff}.banner-system-grid article>span{letter-spacing:1.2px;text-transform:uppercase;font-size:9px;font-weight:800}.banner-system-grid h3{letter-spacing:-.075em;text-transform:uppercase;margin:120px 0 18px;font-size:clamp(52px,6vw,92px);line-height:.82}.banner-system-grid p{color:#5f5b55;max-width:560px;margin:0;font-size:17px;line-height:1.55}.banner-system-grid article:nth-child(2) p{color:#dce2ff}.banner-system-grid b{opacity:.28;font-size:54px;font-weight:400;position:absolute;top:30px;right:34px}.banner-installation{grid-template-columns:minmax(0,1.12fr) minmax(360px,.68fr);width:100%;margin:10px 0 0;display:grid}.banner-installation-main{background:var(--banner-red);color:#fff;padding:clamp(80px,8vw,130px) clamp(30px,6vw,100px)}.banner-installation-main .banner-eyebrow{color:#fff}.banner-installation-main>h2{letter-spacing:-.065em;text-transform:uppercase;text-wrap:balance;max-width:850px;margin:0 0 28px;font-size:clamp(48px,5vw,78px);line-height:.88}.banner-installation-main>p{max-width:750px;font-size:18px;line-height:1.55}.banner-installation-points{border-top:1px solid #ffffff8c;grid-template-columns:1fr 1fr;margin-top:60px;display:grid}.banner-installation-points>div{padding:20px 24px 0 0}.banner-installation-points>div+div{border-left:1px solid #ffffff8c;padding-left:24px}.banner-installation-points span{font-size:9px}.banner-installation-points h3{text-transform:uppercase;margin:50px 0 10px;font-size:28px}.banner-installation-points p{margin:0;line-height:1.5}.banner-approval-card{color:#fff;background:#1a1a1a;flex-direction:column;justify-content:center;padding:clamp(42px,5vw,78px);display:flex}.banner-approval-card>span{color:var(--acid);letter-spacing:1.2px;text-transform:uppercase;font-size:9px;font-weight:800}.banner-approval-card h2{letter-spacing:-.055em;text-transform:uppercase;margin:35px 0 22px;font-size:clamp(37px,4vw,60px);line-height:.9}.banner-approval-card p{color:#bbb;line-height:1.55}.banner-approval-card a{color:var(--acid);text-transform:uppercase;border-top:1px solid #555;margin-top:28px;padding-top:18px;font-size:12px;font-weight:800;line-height:1.4}.banner-before-print{grid-template-columns:minmax(0,1.12fr) minmax(330px,.68fr);align-items:start;gap:clamp(50px,8vw,130px);display:grid}.banner-before-print h2{letter-spacing:-.065em;text-transform:uppercase;max-width:720px;margin:0 0 38px;font-size:clamp(46px,5vw,74px);line-height:.88}.banner-before-print ul{border-top:1px solid #141414;grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;display:grid}.banner-before-print li{border-bottom:1px solid #141414;padding:16px 0;font-weight:800}.banner-before-print li:nth-child(odd){padding-right:18px}.banner-before-print li:nth-child(2n){border-left:1px solid #141414;padding-left:18px}.banner-before-print aside{background:var(--banner-warm);border-top:5px solid var(--banner-blue);padding:42px}.banner-before-print aside h2{margin-bottom:24px;font-size:clamp(35px,3.8vw,54px)}.banner-before-print aside p:not(.banner-eyebrow){color:#5d5953;line-height:1.55}.banner-before-print aside a{color:var(--banner-blue);text-transform:uppercase;margin-top:20px;font-size:12px;font-weight:800;display:inline-block}.banner-faq{grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr);gap:clamp(50px,8vw,130px);padding-top:30px;display:grid}.banner-faq header h2{letter-spacing:-.065em;text-transform:uppercase;max-width:550px;margin:0;font-size:clamp(46px,5vw,70px);line-height:.88}.banner-faq details{border-top:1px solid #141414}.banner-faq details:last-child{border-bottom:1px solid #141414}.banner-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:30px;min-height:94px;padding:18px 0;font-size:20px;font-weight:800;list-style:none;display:flex}.banner-faq summary::-webkit-details-marker{display:none}.banner-faq summary span{flex:none;font-size:28px;font-weight:400;transition:transform .2s}.banner-faq details[open] summary span{transform:rotate(45deg)}.banner-faq details p{color:#5d5953;max-width:760px;margin:0;padding:0 50px 24px 0;line-height:1.6}.banner-calculate{width:100%;padding:clamp(85px,9vw,140px) var(--banner-gutter);background:var(--banner-blue);color:#fff;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(50px,7vw,110px);margin:30px 0 0;display:grid}.banner-calculate-copy{min-width:0;position:sticky;top:120px}.banner-calculate h2{letter-spacing:-.067em;text-transform:uppercase;text-wrap:balance;max-width:680px;margin:0 0 25px;font-size:clamp(48px,5vw,76px);line-height:.86}.banner-calculate-copy>p:not(.banner-eyebrow){color:#dce2ff;max-width:580px;font-size:18px;line-height:1.55}.banner-calculate-mark{color:var(--acid);letter-spacing:1.2px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-top:55px;font-size:10px;display:grid}.banner-calculate-mark i{background:var(--acid);height:1px}.banner-calculate .calc-form{box-shadow:20px 20px 0 var(--acid)}@media (width<=1180px){.banner-hero{grid-template-columns:minmax(400px,.85fr) minmax(0,1.15fr)}.banner-hero h1{font-size:60px}.banner-heading,.banner-processing-intro{grid-template-columns:minmax(150px,.28fr) minmax(0,1fr)}.banner-heading>p:last-child,.banner-processing-intro>p:last-child{grid-column:2}.banner-material-scale{grid-template-columns:1fr 1fr}.banner-material{grid-template-rows:112px minmax(0,1fr);min-height:300px}.banner-installation{grid-template-columns:1fr}.banner-approval-card{min-height:420px}}@media (width<=980px){.banner-hero{grid-template-columns:1fr;gap:0;min-height:auto;padding:0 0 5vw}.banner-hero-copy{padding:100px 5vw 54px}.banner-hero h1{max-width:820px;font-size:clamp(58px,9vw,78px)}.banner-hero-visual{height:64vw;min-height:430px;max-height:650px;margin:0 5vw}.banner-system-grid{grid-template-columns:1fr}.banner-system-grid article{min-height:390px}.banner-system-grid h3{margin-top:90px}.banner-before-print,.banner-faq,.banner-calculate{grid-template-columns:1fr}.banner-faq{padding-top:70px}.banner-calculate-copy{position:static}}@media (width<=680px){.banner-section{width:100%;padding:76px 20px}.banner-heading,.banner-processing-intro{grid-template-columns:1fr;gap:18px;margin-bottom:38px}.banner-heading .banner-eyebrow{padding:0}.banner-heading>p:last-child,.banner-processing-intro>p:last-child{grid-column:1}.banner-heading h2,.banner-processing-intro h2{font-size:clamp(35px,10vw,42px);line-height:.91}.banner-intro .breadcrumbs{width:100%;padding-inline:20px}.banner-hero-copy{padding:90px 20px 42px}.banner-hero h1{font-size:clamp(43px,13vw,58px);line-height:.86}.banner-hero-lead{margin-top:24px;font-size:17px}.banner-hero-actions{flex-direction:column;align-items:flex-start;gap:14px}.banner-hero-facts{grid-template-columns:1fr;margin-top:38px}.banner-hero-facts div+div{border-top:1px solid #14141440;border-left:0;margin-top:13px;padding:13px 0 0}.banner-hero-visual{height:112vw;min-height:410px;max-height:540px;margin:0 20px}.banner-hero-visual img{object-position:58% center}.banner-material-scale{grid-template-columns:1fr}.banner-material{grid-template-rows:96px auto;min-height:0}.banner-material-code,.banner-material-copy{padding:20px}.banner-material-code strong{font-size:58px}.banner-processing{padding:76px 20px 52px}.banner-processing-line{grid-template-columns:1fr;margin-top:45px}.banner-processing-line li{min-height:230px}.banner-processing-line h3{margin-top:66px}.banner-eyelet-rule{grid-template-columns:22px 1fr auto 1fr 22px;gap:8px}.banner-eyelet{width:22px;height:22px}.banner-system-grid article{min-height:350px;padding:30px 24px}.banner-system-grid h3{margin-top:82px;font-size:50px}.banner-installation-main{padding:76px 20px}.banner-installation-main>h2{font-size:40px}.banner-installation-main>p{font-size:16px}.banner-installation-points{grid-template-columns:1fr}.banner-installation-points>div{padding:20px 0}.banner-installation-points>div+div{border-top:1px solid #ffffff8c;border-left:0;padding-left:0}.banner-installation-points h3{margin-top:28px}.banner-approval-card{min-height:390px;padding:42px 20px}.banner-before-print{gap:50px}.banner-before-print h2,.banner-faq header h2{font-size:40px}.banner-before-print ul{grid-template-columns:1fr}.banner-before-print li:nth-child(n){border-left:0;padding-inline:0}.banner-before-print aside{padding:32px 24px}.banner-faq summary{min-height:86px;font-size:17px}.banner-faq details p{padding-right:0}.banner-calculate{margin-top:0;padding:76px 20px 86px}.banner-calculate h2{font-size:40px}.banner-calculate .calc-form{box-shadow:10px 10px 0 var(--acid)}}@media (prefers-reduced-motion:reduce){.banner-faq summary span{transition:none}}
