:root{--red:#e30032;--ink:#151519;--dark:#202020;--paper:#fff;--mist:#f5f6f7;--line:#dfe1e4;--muted:#62636b;--max:1700px;--shadow:0 10px 28px rgba(28,19,22,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,"Helvetica Neue",sans-serif;color:var(--ink);background:#fff;line-height:1.45;overflow-x:hidden}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.section-pad{padding:110px 0}.site-header{overflow:visible;height:88px;background:rgba(255,255,255,.96);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(0,0,0,.05);backdrop-filter:blur(12px)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:36px}.brand{display:inline-flex;align-items:center;position:relative;font-size:34px;font-weight:900;line-height:1;letter-spacing:-2px;white-space:nowrap}.brand b{width:40px;height:5px;background:currentColor;margin:0 1px}.brand small{color:var(--red);font-size:8px;letter-spacing:1.4px;margin-left:9px;align-self:flex-start;margin-top:4px}.desktop-nav{display:flex;gap:42px;margin-left:auto}.desktop-nav a{font-size:13px;text-transform:uppercase;font-weight:700;letter-spacing:2px;padding:12px 0;position:relative}.desktop-nav a:after{content:"";position:absolute;bottom:4px;left:0;width:0;height:2px;background:var(--red);transition:.25s}.desktop-nav a:hover:after,.desktop-nav a.active:after{width:100%}.desktop-nav a.active{color:var(--red)}.header-actions{display:flex;align-items:center;gap:18px}.phone{font-size:14px;font-weight:700}.phone span{color:var(--red);margin-right:7px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;border:0;background:var(--red);color:#fff;text-transform:none;font-weight:700;padding:16px 12px 16px 26px;min-height:56px;box-shadow:0 8px 18px rgba(227,0,50,.22);transition:transform .2s,box-shadow .2s,background .2s;cursor:pointer}.btn:hover{transform:translateY(-2px);box-shadow:0 12px 25px rgba(227,0,50,.3);background:#c9002c}.btn i{font-style:normal;background:#fff;color:#111;width:32px;height:32px;display:grid;place-items:center}.btn-small{min-height:48px;padding:8px 8px 8px 18px;font-size:13px;text-transform:uppercase;letter-spacing:.5px;gap:12px}.btn-small i{flex:0 0 32px;width:32px;height:32px}.menu-toggle,.mobile-nav{display:none}.hero{min-height:672px;position:relative;display:grid;align-items:center;background:linear-gradient(180deg,#fff 75%,#fff5f7);padding-top:98px;padding-bottom:90px}.hero-glow{position:absolute;left:-10%;right:-10%;bottom:-40px;height:220px;background:radial-gradient(ellipse at center,rgba(227,0,50,.08),transparent 70%);filter:blur(20px)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(480px,.95fr);align-items:center;gap:70px}.hero-copy{position:relative}.eyebrow{font-size:12px;letter-spacing:3px;text-transform:uppercase;font-weight:700;margin:0 0 26px;padding-left:14px;position:relative}.eyebrow:before{content:"";position:absolute;width:14px;height:14px;border-left:2px solid var(--red);border-top:2px solid var(--red);left:0;top:-6px}.eyebrow.light{color:#fff}.eyebrow.red{color:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,4.1vw,78px);line-height:.98;letter-spacing:-3.6px;margin:0 0 26px;font-weight:900}h1 em,h2 em{font-style:normal;color:var(--red)}.lead{font-size:18px;max-width:540px;color:#595a60;margin-bottom:34px}.hero-actions{display:flex;align-items:center;gap:38px}.rating{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:7px;font-size:13px}.rating .stars{color:#ffb400;letter-spacing:1px}.rating small{color:#777}.rating b{grid-column:3;font-size:11px;color:#4285f4}.proof-row{margin-top:25px;display:flex;gap:0;font-size:14px;font-weight:600}.proof-row span{padding-right:20px;margin-right:20px;border-right:1px solid #ddd}.proof-row span:last-child{border:0}.proof-row span::first-letter{color:var(--red)}.experience-stamp{position:absolute;right:5px;bottom:4px;width:120px;height:120px;border-radius:50%;display:grid;place-items:center;text-align:center;transform:rotate(-8deg)}.experience-stamp:before{content:"";position:absolute;inset:13px;border:2px solid #222;border-radius:50%}.experience-stamp small{font-size:10px;font-weight:800;letter-spacing:1.7px;line-height:1.7}.experience-stamp strong{position:absolute;font-size:58px;line-height:1}.hero-visual{height:435px;position:relative;overflow:hidden;border:1px solid #e6e6e6;box-shadow:var(--shadow);cursor:pointer;display:block}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 58%,rgba(0,0,0,.75))}.hero-visual img{height:100%;object-fit:cover;transition:transform .65s}.hero-visual:hover img{transform:scale(1.04)}.image-kicker{position:absolute;z-index:2;left:20px;top:20px;background:var(--red);color:#fff;padding:6px 12px;font-size:11px;text-transform:uppercase;font-weight:700}.image-caption{position:absolute;z-index:2;left:20px;right:20px;bottom:16px;color:#fff;display:grid;grid-template-columns:1fr auto}.image-caption b{font-size:18px}.image-caption small{grid-column:1}.image-caption i{grid-row:1/3;grid-column:2;font-style:normal;background:rgba(255,255,255,.16);width:28px;height:28px;display:grid;place-items:center}.issues{background:var(--mist)}.section-heading h2,.split-head h2,.comparison h2,.testimonial-head h2{font-size:clamp(42px,3.2vw,64px);line-height:1.08;letter-spacing:-2.5px;margin:0}.section-heading>p:last-child{max-width:690px;color:var(--muted);font-size:18px;margin-top:28px}.issue-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:66px}.issue-card{background:white;border:1px solid #e4e4e4;min-width:0;transition:transform .25s,box-shadow .25s}.issue-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.card-image{height:190px;position:relative;overflow:hidden}.card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,0,0,.55))}.card-image img{height:100%;object-fit:cover;transition:transform .55s}.issue-card:hover img{transform:scale(1.05)}.card-image span{position:absolute;z-index:2;left:16px;top:16px;background:white;padding:5px 10px;font-size:11px;text-transform:uppercase;font-weight:700}.card-image b{position:absolute;z-index:2;left:16px;bottom:12px;color:#fff;font-size:25px}.card-copy{padding:27px 28px 23px}.card-copy h3{font-size:22px}.card-copy p{height:68px;color:#555;font-size:14px}.card-copy a{display:flex;justify-content:space-between;margin-top:26px;padding-top:20px;border-top:1px solid #eee;text-transform:uppercase;font-size:11px;font-weight:700}.card-copy i{font-style:normal}.diagnostic{margin-top:58px;background:var(--red);color:#fff;padding:24px 28px 24px 48px;display:flex;align-items:center;justify-content:space-between}.diagnostic span{display:grid}.diagnostic small{margin-top:3px}.diagnostic a{background:#fff;color:#111;text-transform:uppercase;font-weight:700;font-size:11px;padding:14px 20px}.diagnostic i{font-style:normal;margin-left:22px}.difference,.testimonials{background:#222;color:#fff}.split-head{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end}.split-head>p{max-width:610px;color:#bdbdbd;font-size:17px;justify-self:end;margin-bottom:10px}.difference-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:60px}.diff-card{margin:0;min-width:0}.diff-card figcaption{right:20px;padding-right:8px}.diff-card figcaption strong{min-height:1.15em}.diff-card figcaption small{min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tech-tabs,.benefit-tabs{display:grid;gap:16px}.tech-tab,.benefit{width:100%;display:grid;grid-template-columns:40px 1fr auto;text-align:left;gap:6px 0;padding:26px;border:1px solid #444;background:#2d2d2d;color:#fff;cursor:pointer;transition:.25s}.tech-tab span,.benefit span{grid-row:1/3;color:#aaa;font-size:18px}.tech-tab b,.benefit b{font-size:18px}.tech-tab small,.benefit small{grid-column:2;color:#d0d0d0}.tech-tab i,.benefit i{grid-column:3;grid-row:1/3;font-style:normal;background:#fff;color:#222;width:26px;height:26px;display:grid;place-items:center}.tech-tab.active{background:#f5f5f6;color:#111;border-color:#fff}.tech-tab.active span{color:var(--red)}.tech-tab.active small{color:#555}.tech-tab.active i{background:var(--red);color:#fff}.technical-visual,.durability-visual{margin:0;height:460px;position:relative;overflow:hidden;border:1px solid #777}.technical-visual img,.durability-visual img{height:100%;object-fit:cover;transition:opacity .25s,transform .5s}.technical-visual:after,.durability-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.78))}.technical-visual figcaption,.durability-visual figcaption{position:absolute;z-index:2;left:26px;bottom:24px;display:grid}.technical-visual figcaption span{color:var(--red);text-transform:uppercase;font-size:11px;font-weight:700;margin-bottom:8px}.technical-visual figcaption strong,.durability-visual figcaption strong{font-size:25px}.technical-visual figcaption small,.durability-visual figcaption small{color:#ddd}.value{height:708px;position:relative;overflow:hidden;background:#222}.value>img{height:100%;object-fit:cover;object-position:center 43%}.value:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.18),transparent)}.value-panel{position:absolute;z-index:2;width:min(850px,47vw);right:10%;top:50%;transform:translateY(-50%);padding:68px;background:rgba(255,255,255,.93);box-shadow:var(--shadow)}.value-panel h2{font-size:clamp(38px,3vw,59px);line-height:1.15;letter-spacing:-2px}.value-panel>p:not(.eyebrow){font-size:18px;color:#555;max-width:650px;margin:35px 0}.value-panel>div{border-top:1px solid #ddd;padding-top:24px;text-transform:uppercase;font-weight:700;font-size:11px;color:#777;display:flex;justify-content:space-between}.value-panel>div b{color:var(--red)}.durability{background:#fafafa}.durability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch;margin-top:36px}.dura-card{margin:0;min-width:0}.dura-card figcaption{right:20px;padding-right:8px}.dura-card figcaption strong{min-height:1.15em}.dura-card figcaption small{min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.durability-intro{margin:28px 0 0}.durability-intro{max-width:520px;font-size:19px;color:#555;margin-bottom:44px}.benefit{background:#fff;color:#111;border-color:#ddd}.benefit span{color:#9da0a6}.benefit small{color:#555}.benefit i{background:#f2f2f2}.benefit.active{background:#18181b;color:#fff}.benefit.active span{color:var(--red)}.benefit.active small{color:#ccc}.benefit.active i{background:var(--red);color:#fff}.durability-visual{height:455px;border:0;box-shadow:var(--shadow)}.durability-visual>span{position:absolute;z-index:3;top:16px;left:16px;background:#fff;padding:6px 12px;text-transform:uppercase;font-weight:700;font-size:11px}.method{background:var(--mist)}.method .split-head>p{color:#555}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:68px}.method-card{background:#fff;border:1px solid #e1e1e1;padding:28px;min-height:350px;display:grid;grid-template-columns:1fr auto;align-content:start;transition:.25s}.method-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.method-card>span{color:var(--red);font-size:21px;font-weight:800}.method-card>i{font-style:normal;width:38px;height:38px;background:#f3f3f3;display:grid;place-items:center}.method-card>small{grid-column:1/3;text-transform:uppercase;font-size:10px;font-weight:700;margin:28px 0 14px}.method-card h3,.method-card p,.method-card footer{grid-column:1/3}.method-card h3{font-size:21px;margin-bottom:12px}.method-card p{color:#555;font-size:14px;min-height:86px}.method-card footer{border-top:1px solid #ddd;margin-top:15px;padding-top:19px;display:flex;justify-content:space-between;font-size:11px}.method-card.featured{background:linear-gradient(130deg,var(--red),#f22f55);color:#fff;border-color:var(--red);box-shadow:0 14px 35px rgba(227,0,50,.22)}.method-card.featured>i{background:#fff;color:#222}.method-card.featured p{color:#fff}.method-card.featured footer{border-color:rgba(255,255,255,.4)}.gallery{background:var(--mist);padding-bottom:120px}.gallery-head{align-items:end}.gallery-head>p{color:#555}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:60px}.project{background:#fff;border:1px solid #d7d7d7;min-width:0;transition:.25s}.project:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.project-main{height:410px;position:relative;overflow:hidden;background:#ddd}.project-main img{height:100%;object-fit:cover;transition:opacity .18s,transform .55s}.project:hover .project-main img{transform:scale(1.02)}.project-main>span{position:absolute;left:16px;top:16px;background:var(--red);color:#fff;padding:7px 11px;text-transform:uppercase;font-size:11px;font-weight:700}.project-main>small{position:absolute;right:15px;top:17px;background:rgba(17,17,17,.85);color:#fff;padding:6px 10px;font-size:11px}.project-main button{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:45px;border:0;background:rgba(15,15,15,.8);color:#fff;font-size:28px;cursor:pointer;transition:.2s}.project-main button:hover{background:var(--red)}.project-prev{left:14px}.project-next{right:14px}.project-body{padding:18px 18px 25px}.project-body>p{color:var(--red);text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.5px;margin-bottom:9px}.project-body h3{font-size:22px;margin-bottom:10px}.thumbs{display:flex;gap:7px}.thumbs button{border:2px solid transparent;padding:0;background:transparent;width:31%;height:64px;cursor:pointer;overflow:hidden}.thumbs button.active{border-color:var(--red)}.thumbs img{height:100%;object-fit:cover}.stages{display:block;margin-top:9px;text-transform:uppercase;font-size:9px;font-weight:700}.comparison{background:#fff;padding:72px 0 78px}.comparison-head{display:flex;align-items:center;justify-content:space-between;gap:30px}.comparison-head h2{font-size:clamp(35px,2.8vw,55px)}.comparison-head .eyebrow{margin-bottom:15px}.comparison-grid{display:grid;grid-template-columns:1fr 1.7fr 1fr;gap:58px;align-items:center;margin-top:38px}.comparison-grid article{background:#f7f8f9;border:1px solid #ddd;padding:30px 36px}.comparison-grid article>span{font-size:32px}.comparison-grid article:first-child>span,.comparison-grid article:first-child h3,.comparison-grid article:first-child p::first-letter{color:var(--red)}.comparison-grid h3{font-size:30px;margin:10px 0}.comparison-grid p{margin:8px 0;color:#4f5055}.comparison-grid img{height:355px;object-fit:contain}.testimonials{padding-top:105px;padding-bottom:125px}.testimonial-head{display:flex;justify-content:space-between;align-items:center}.google-score{display:grid;grid-template-columns:auto auto;gap:1px 18px;align-items:center}.google-score strong{font-size:48px;grid-row:1/3}.google-score span{color:#ff9c20}.google-score small{color:#ddd}.google-score b{grid-column:3;grid-row:1/3;font-size:34px;color:#4285f4}.review-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-top:82px}.review{background:#2c2c2c;padding:24px;min-height:280px;position:relative}.review header{display:flex;gap:12px;align-items:center}.review header>b{width:48px;height:48px;border-radius:50%;background:#ddd;color:#444;display:grid;place-items:center}.review header span{display:grid}.review header small{color:#aaa}.review>div{color:#ff9b1c;margin:18px 0 10px}.review p{font-size:14px;line-height:1.35;color:#eee}.review>i{position:absolute;right:16px;bottom:6px;color:var(--red);font-size:40px}.quote{background:var(--red);color:#fff}.quote-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center}.quote-copy h2{font-size:clamp(66px,6vw,112px);line-height:.9;letter-spacing:-6px;margin:75px 0 35px}.quote-copy h2 em{color:#16161a}.quote-copy>p:last-child{max-width:500px;font-size:18px}.quote-form{background:#fff;color:#111;padding:46px 48px;box-shadow:var(--shadow)}.quote-form h3{font-size:25px;margin-bottom:3px}.quote-form>p{color:#777;margin-bottom:25px}.quote-form label{display:grid;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.5px;margin-bottom:20px}.quote-form input,.quote-form select,.quote-form textarea{margin-top:8px;border:1px solid #ccc;background:#fafafa;padding:13px 15px;font-size:14px;text-transform:none;min-height:46px;border-radius:0}.quote-form textarea{height:85px;resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.quote-form .submit{width:100%;text-transform:uppercase;font-size:12px}.quote-form output{display:block;color:#14823b;font-size:14px;font-weight:700;margin-top:12px}.privacy{font-size:11px;margin:16px 0 0}.site-footer{background:#18181b;color:#fff;padding-top:80px;padding-bottom:35px}.grants{background:#fff;color:#18181b;min-height:170px;padding:32px 55px;display:grid;grid-template-columns:1.1fr 1.3fr .7fr .7fr;gap:32px;align-items:center}.grants strong{color:var(--red);font-size:29px;line-height:1}.grants p{padding:0 30px;border-left:1px solid #ddd;border-right:1px solid #ddd;margin:0}.grants ul{font-size:11px;list-style:none;padding:0;margin:0}.grants li{margin:7px 0}.grants li:before{content:"✓";color:var(--red);margin-right:7px}.grants>span{background:#28282b;color:#fff;padding:25px 20px;text-align:center;font-size:27px;font-weight:900}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:80px;margin-top:80px}.footer-brand{color:#fff}.footer-grid>div:first-child>p{color:#aaa;max-width:520px;margin:30px 0}.footer-grid>div:first-child>small{color:#bbb;text-transform:uppercase;letter-spacing:1px}.footer-grid h4{color:var(--red);text-transform:uppercase;font-size:11px;letter-spacing:1px}.footer-grid>div{display:flex;flex-direction:column;gap:13px}.footer-grid a,.footer-grid p{font-size:14px;color:#b9b9bb}.legal{border-top:1px solid #666;margin-top:75px;padding-top:30px;display:flex;justify-content:space-between;color:#777;font-size:11px}.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal.in{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}
@media(max-width:1200px){.desktop-nav{gap:18px}.phone{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:35px}.experience-stamp{display:none}.proof-row{flex-wrap:wrap;gap:8px}.issue-grid{grid-template-columns:repeat(2,1fr)}.method-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}.review-grid{grid-template-columns:repeat(3,1fr)}.value-panel{right:5%;width:58vw}.comparison-grid{gap:24px}.grants{grid-template-columns:1fr 1.3fr}.grants p{border-right:0}.quote-grid{gap:40px}}
@media(max-width:820px){.shell{width:min(100% - 32px,var(--max))}.section-pad{padding:72px 0}.site-header{height:64px}.desktop-nav,.header-actions .btn{display:none}.header-actions{margin-left:auto}.brand{font-size:24px;letter-spacing:-1.5px}.brand b{width:27px;height:4px}.brand small{font-size:6px}.menu-toggle{display:grid;place-items:center;border:0;background:#18181b;color:#fff;width:38px;height:38px;font-size:20px}.mobile-nav{display:none;position:absolute;left:0;right:0;top:64px;background:#fff;border-top:1px solid #eee;padding:8px 16px 18px;box-shadow:var(--shadow)}.mobile-nav.open{display:grid}.mobile-nav a{padding:14px 4px;border-bottom:1px solid #eee;text-transform:uppercase;font-size:12px;font-weight:700}.hero{padding-top:45px}.hero-grid{grid-template-columns:1fr;gap:42px}.hero h1{font-size:44px;letter-spacing:-2.2px;line-height:1.02}.hero-actions{align-items:stretch;flex-direction:column;gap:20px}.hero-actions .btn{width:100%}.rating{align-self:flex-start}.proof-row{font-size:11px}.proof-row span{padding-right:10px;margin-right:6px}.hero-visual{height:280px}.section-heading h2,.split-head h2,.comparison h2,.testimonial-head h2{font-size:38px;letter-spacing:-1.5px}.section-heading br,.split-head br{display:none}.issue-grid{display:grid;grid-template-columns:1fr;gap:18px;overflow:visible;margin-right:0;padding-right:0;scroll-snap-type:none}.issue-card{min-width:0;width:100%;scroll-snap-align:unset}.diagnostic{align-items:flex-start;gap:22px;padding:22px;flex-direction:column}.split-head{grid-template-columns:1fr;gap:26px}.split-head>p{justify-self:start}.difference-grid,.durability-grid{grid-template-columns:1fr;gap:36px;margin-top:40px}.tech-tab,.benefit{padding:19px}.technical-visual,.durability-visual{height:300px}.value{height:610px}.value>img{height:52%}.value-panel{left:16px;right:16px;top:auto;bottom:24px;transform:none;width:auto;padding:28px}.value-panel h2{font-size:34px}.value-panel>p:not(.eyebrow){font-size:15px;margin:20px 0}.method-grid,.gallery-grid{grid-template-columns:1fr}.method-card{min-height:310px}.project-main{height:390px}.comparison{padding:64px 0}.comparison-head,.testimonial-head{align-items:flex-start;flex-direction:column}.comparison-grid{grid-template-columns:1fr}.comparison-grid img{grid-row:1;height:auto;max-height:330px}.comparison-grid article{padding:25px}.review-grid{display:grid;grid-template-columns:1fr;gap:16px;overflow:visible;scroll-snap-type:none}.review{min-width:0;width:100%;scroll-snap-align:unset}.quote-grid{grid-template-columns:1fr}.quote-copy h2{font-size:64px;letter-spacing:-3.5px;margin:45px 0 30px}.quote-form{padding:28px 20px}.form-grid{grid-template-columns:1fr}.grants{grid-template-columns:1fr;padding:28px}.grants p{border:0;padding:0}.footer-grid{grid-template-columns:1fr;gap:45px}.legal{align-items:flex-start;gap:20px;flex-direction:column}.gallery-head>p{margin-top:0}.project:hover,.issue-card:hover,.method-card:hover{transform:none}}
@media(max-width:480px){.hero h1{font-size:37px}.lead{font-size:16px}.section-heading h2,.split-head h2,.comparison h2,.testimonial-head h2{font-size:32px}.project-main{height:350px}.quote-copy h2{font-size:54px}.comparison-head .btn{width:100%}.value-panel h2{font-size:29px}.grants strong{font-size:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{transition-duration:.01ms!important}}

/* Ajustements fidèles aux références MATTHYS */
.brand{display:block;width:335px;max-width:25vw;font-size:0;line-height:0;letter-spacing:0}.brand img{width:100%;height:auto;object-fit:contain}.footer-brand{width:325px;max-width:100%}
.phone{display:inline-flex;align-items:center;gap:9px}.phone svg{width:19px;height:19px;fill:var(--red);flex:0 0 auto}.phone span{display:none}
.hero{isolation:isolate}.hero-glow{z-index:-1;left:-15%;right:-15%;bottom:-65px;height:330px;background:radial-gradient(ellipse at 32% 60%,rgba(227,0,50,.14),transparent 45%),radial-gradient(ellipse at 76% 55%,rgba(227,0,50,.11),transparent 46%);filter:blur(28px);transform-origin:center;animation:red-glow 5.5s ease-in-out infinite alternate;pointer-events:none}.hero-glow:after{content:"";position:absolute;inset:15% 10%;background:radial-gradient(ellipse at center,rgba(255,24,75,.1),transparent 65%);animation:red-glow-inner 4s ease-in-out infinite alternate}
@keyframes red-glow{0%{opacity:.55;transform:translate3d(-2%,12px,0) scale(.94)}55%{opacity:.95;transform:translate3d(2%,-5px,0) scale(1.04)}100%{opacity:.7;transform:translate3d(0,-16px,0) scale(1.1)}}
@keyframes red-glow-inner{from{opacity:.35;transform:scale(.85)}to{opacity:1;transform:scale(1.12)}}
.experience-stamp{position:absolute;right:0;bottom:-1px;width:146px;height:146px;overflow:visible;transform:rotate(-5deg);color:#17171b}.experience-stamp:before{content:none}.stamp-text{fill:currentColor;font-size:12px;font-weight:900;letter-spacing:1.7px}.stamp-number{fill:currentColor;font-size:70px;font-weight:900;letter-spacing:-4px}
.issue-card{background:linear-gradient(140deg,#fff 50%,#fff1f4 100%);border-color:#f1ccd4}.card-copy{background:linear-gradient(145deg,rgba(255,255,255,.98) 45%,rgba(255,234,239,.72) 100%)}.card-copy a{border-color:#f0d7dc}
.method-card:not(.featured){background:linear-gradient(135deg,#fff 40%,#fff1f4 100%);border-color:#efd6dc}.method-card>i{width:40px;height:40px;background:#f4f4f5;border:1px solid #ececef;color:#2d2d31;box-shadow:0 4px 12px rgba(31,25,27,.05)}.method-card>i svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.method-card:first-child>i{background:var(--red);border-color:var(--red);color:#fff}.method-card.featured>i{background:#fff;border-color:#fff;color:#3a3a3d}.method-card.featured{background:linear-gradient(130deg,#db0030 12%,#ee003a 55%,#ff6c85 130%)}
.value>img{object-position:center 52%}
.grants>span{white-space:nowrap;font-size:clamp(20px,1.6vw,27px)}
@media(max-width:820px){.brand{width:205px;max-width:calc(100vw - 125px)}.footer-brand{width:280px;max-width:100%}.phone{display:none}.experience-stamp{display:none}.hero-glow{height:250px;bottom:-30px}.grants>span{white-space:nowrap}.value>img{object-position:center 48%}}

/* Motion system */
.site-header{transition:height .35s ease,box-shadow .35s ease,background .35s ease}.site-header.scrolled{background:rgba(255,255,255,.985);box-shadow:0 12px 35px rgba(18,18,22,.08)}
.google-logo{width:145px;height:auto;object-fit:contain}.google-logo-small{grid-column:3;grid-row:1/3;width:70px;max-height:30px}.rating{grid-template-columns:auto auto auto auto}.rating .google-logo-small{grid-column:4}.google-score{display:grid;grid-template-columns:auto auto;grid-template-rows:auto auto;gap:2px 22px;align-items:center}.google-score strong{grid-row:1/3;font-variant-numeric:tabular-nums}.google-score span{color:#ddd;font-size:12px;text-transform:uppercase;letter-spacing:1px}.google-score .google-logo{grid-column:2;grid-row:1/3;width:155px}
.durability-visual>span{background:rgba(20,20,23,.88);color:#fff;border-left:3px solid var(--red);box-shadow:0 8px 22px rgba(0,0,0,.18)}
.durability-visual figcaption strong,.durability-visual figcaption small{color:#fff}.hero h1 em{color:var(--red)!important;background:none!important}
.scroll-fill{--title-fill:0%;--title-ink:#17171b;color:transparent!important;background:linear-gradient(to bottom,var(--title-ink) 0 var(--title-fill),var(--red) var(--title-fill) 100%);-webkit-background-clip:text;background-clip:text;will-change:background}.difference .scroll-fill,.testimonials .scroll-fill{--title-ink:#fff}.quote .scroll-fill{--title-ink:#17171b}
.reveal{filter:blur(7px);transform:translateY(34px) scale(.992);transition:opacity .78s cubic-bezier(.2,.72,.2,1),transform .78s cubic-bezier(.2,.72,.2,1),filter .78s ease}.reveal.in{filter:none;transform:none}.eyebrow:before{transform-origin:left top;transition:transform .65s cubic-bezier(.2,.8,.2,1)}.reveal:not(.in) .eyebrow:before{transform:scale(0)}
.btn{position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:-80%;left:-35%;width:28%;height:260%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.38),transparent);transform:rotate(18deg) translateX(-250%);transition:transform .65s ease}.btn:hover:before{transform:rotate(18deg) translateX(620%)}.btn i,.image-caption i,.card-copy i,.method-card footer b{transition:transform .3s ease}.btn:hover i,.hero-visual:hover .image-caption i,.issue-card:hover .card-copy i,.method-card:hover footer b{transform:translate(3px,-3px)}
.hero-visual,.technical-visual,.durability-visual,.value{isolation:isolate}.hero-visual img,.technical-visual img,.durability-visual img,.value>img{--parallax-y:0px;transform:translate3d(0,var(--parallax-y),0) scale(1.055);will-change:transform}.hero-visual:hover img{transform:translate3d(0,var(--parallax-y),0) scale(1.095)}
.issue-card,.method-card,.project,.review,.comparison-grid article,.tech-tab,.benefit,.value-panel{transition:transform .4s cubic-bezier(.2,.75,.2,1),box-shadow .4s ease,border-color .4s ease,background .4s ease,color .4s ease}.issue-card:hover,.method-card:hover,.project:hover{transform:translateY(-9px);box-shadow:0 22px 48px rgba(30,17,21,.14)}.issue-card:hover{border-color:rgba(227,0,50,.4)}.issue-card:hover .card-copy{background:linear-gradient(145deg,#fff 25%,#ffe5eb 100%)}.method-card:not(.featured):hover{background:linear-gradient(135deg,#fff 18%,#ffe1e8 100%);border-color:rgba(227,0,50,.38)}.method-card:hover>i{transform:rotate(-6deg) scale(1.08);background:var(--red);border-color:var(--red);color:#fff}.method-card.featured:hover>i{background:#fff;color:#222}.project:hover{border-color:rgba(227,0,50,.38)}.project-main>span{transition:padding .3s ease,background .3s ease}.project:hover .project-main>span{padding-inline:16px}.review:hover{transform:translateY(-7px);background:#343434;box-shadow:0 20px 45px rgba(0,0,0,.22)}.comparison-grid article:hover{transform:translateY(-6px);border-color:rgba(227,0,50,.4);box-shadow:0 16px 35px rgba(30,17,21,.1)}.tech-tab:hover,.benefit:hover{transform:translateX(6px)}.value-panel:hover{box-shadow:0 25px 60px rgba(20,12,15,.2)}
.card-image:after,.hero-visual:after{transition:opacity .45s ease}.issue-card:hover .card-image:after,.hero-visual:hover:after{opacity:.78}.card-image img{will-change:transform}.project-main button{opacity:.82}.project:hover .project-main button{opacity:1}.thumbs button{transition:border-color .25s ease,transform .25s ease}.thumbs button:hover{transform:translateY(-3px)}
.count-up{font-variant-numeric:tabular-nums}.motion-ready main>section{transition:background-color .5s ease}.motion-ready .grants,.motion-ready .quote-form{transition:transform .5s ease,box-shadow .5s ease}.motion-ready .grants:hover,.motion-ready .quote-form:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(25,15,19,.16)}
@media(max-width:820px){.rating{grid-template-columns:auto auto auto}.rating .google-logo-small{grid-column:1/4;grid-row:2;width:74px;margin-top:6px}.google-score .google-logo{width:135px}.hero-visual img,.technical-visual img,.durability-visual img,.value>img{transform:scale(1.025)}.issue-card:hover,.method-card:hover,.project:hover,.review:hover,.comparison-grid article:hover{transform:none}.tech-tab:hover,.benefit:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.hero-glow,.hero-glow:after{animation:none}.scroll-fill{color:var(--red)!important;background:none}.difference .scroll-fill,.testimonials .scroll-fill{color:var(--red)!important}.hero-visual img,.technical-visual img,.durability-visual img,.value>img{transform:none}.btn:before{display:none}}

/* Gallery — 3 projets : espaces adaptés */
.gallery{padding-bottom:100px}
.gallery-head{gap:48px;margin-bottom:8px}
.gallery-head>p{max-width:420px;justify-self:end;margin:0;line-height:1.5}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:48px}
.gallery-grid .project{display:flex;flex-direction:column;height:100%}
.gallery-grid .project-main{height:380px}
.gallery-grid .project-body{padding:22px 22px 26px;display:flex;flex-direction:column;flex:1}
.gallery-grid .project-body>p{margin-bottom:8px}
.gallery-grid .project-body h3{font-size:24px;margin:0 0 16px;letter-spacing:-.4px}
.gallery-grid .thumbs{gap:8px;margin-top:auto}
.gallery-grid .thumbs button{height:72px;width:calc((100% - 16px) / 3)}
.gallery-grid .stages{margin-top:12px;color:#6b6c72;letter-spacing:.4px}
@media(max-width:1200px){
  .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
  .gallery-grid .project-main{height:360px}
}
@media(max-width:820px){
  .gallery-head{gap:18px}
  .gallery-head>p{max-width:none;justify-self:start}
  .gallery-grid{grid-template-columns:1fr;gap:18px;margin-top:36px}
  .gallery-grid .project-main{height:340px}
  .gallery-grid .project-body{padding:18px}
  .gallery-grid .thumbs button{height:64px}
}

/* Gallery — une carte = une ligne : titre + avant + après */
.gallery-list{display:grid;grid-template-columns:1fr;gap:16px;margin-top:40px}
.gallery-list .project{background:#fff;border:1px solid #e0e0e0;overflow:hidden;display:grid;grid-template-columns:minmax(220px,.75fr) minmax(0,1.6fr);grid-template-rows:220px;align-items:stretch;min-width:0;height:220px}
.gallery-list .project.reveal:not(.in){filter:none;transform:none}
.gallery-list .project-body{padding:22px 26px;display:flex;flex-direction:column;justify-content:center;gap:8px;min-width:0;min-height:0;height:100%;overflow:hidden;background:linear-gradient(160deg,#fff 45%,#fff4f6 100%);color:var(--ink)}
.gallery-list .project-body>p{color:var(--red);text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:1px;margin:0}
.gallery-list .project-body h3{margin:0;color:var(--ink);font-size:clamp(20px,1.8vw,28px);font-weight:800;letter-spacing:-.5px;line-height:1.15}
.project-shots{display:flex;flex-wrap:nowrap;gap:6px;padding:0;min-width:0;min-height:0;height:100%}
.project-shots figure{margin:0;position:relative;overflow:hidden;flex:1 1 0;min-width:0;min-height:0;height:100%;background:#ddd}
.project-shots img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .55s ease}
.project-shots figure:hover img{transform:scale(1.04)}
.project-shots span{position:absolute;left:8px;top:8px;z-index:2;background:rgba(20,20,23,.88);color:#fff;border-radius:999px;padding:5px 10px;font-size:10px;font-weight:700;letter-spacing:.3px}
.project-shots figure:last-child span{background:var(--red)}
@media(max-width:720px){
  .gallery-list .project{grid-template-columns:1fr;grid-template-rows:auto 160px;height:auto}
  .gallery-list .project-body{padding:16px 16px 12px;height:auto;overflow:visible}
  .project-shots{height:160px}
  .project-shots span{left:6px;top:6px;padding:4px 8px;font-size:9px}
}

/* Header: fixed slots so language text never shifts layout */
.desktop-nav{flex:1 1 auto;justify-content:center;gap:8px;min-width:0;margin-left:0}
.desktop-nav a{flex:0 0 auto;width:9.6rem;text-align:center;white-space:nowrap}
.desktop-nav a[data-i18n="nav.works"]{width:13.8rem}
.desktop-nav a:after{left:50%;transform:translateX(-50%)}
.header-actions{flex:0 0 auto;margin-left:0}
.header-actions .header-cta{width:17.8rem;min-width:17.8rem;justify-content:space-between;align-items:center;box-sizing:border-box;gap:12px;overflow:hidden}
.header-actions .header-cta span{flex:1 1 auto;min-width:0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.header-actions .header-cta i{flex:0 0 32px}
.header-actions .phone{min-width:9.6rem;justify-content:flex-start;white-space:nowrap}

/* Language dropdown */
.lang-dropdown{position:relative;flex:0 0 auto}
.lang-switch{display:inline-flex;align-items:center;justify-content:center;gap:7px;width:5.6rem;height:40px;padding:0 10px;border:1px solid #ddd;font-size:12px;font-weight:800;letter-spacing:1px;color:#17171b;transition:border-color .2s,color .2s,background .2s}
.lang-switch svg{width:16px;height:16px;flex:0 0 auto}
.lang-code{width:1.6em;text-align:center}
.lang-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;margin-left:1px;transition:transform .2s}
.lang-dropdown.open .lang-caret{transform:rotate(180deg)}
.lang-switch:hover,.lang-dropdown.open .lang-switch{border-color:var(--red);color:var(--red);background:#fff5f7}
.lang-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:60;margin:0;padding:6px;list-style:none;min-width:11.5rem;background:#fff;border:1px solid #e6e6e8;box-shadow:0 14px 34px rgba(18,18,22,.12)}
.lang-menu[hidden]{display:none !important}
.lang-menu button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:10px 12px;font:inherit;font-size:12px;font-weight:700;letter-spacing:.4px;color:#17171b;cursor:pointer}
.lang-menu button:hover,.lang-menu button[aria-selected="true"]{background:#fff5f7;color:var(--red)}
button.lang-switch{cursor:pointer;background:#fff;font:inherit}
.merci-page button.lang-switch{background:transparent}
.merci-page .lang-menu{background:#16161a;border-color:rgba(255,255,255,.18)}
.merci-page .lang-menu button{color:#fff}
.merci-page .lang-menu button:hover,.merci-page .lang-menu button[aria-selected="true"]{background:rgba(255,255,255,.08);color:#fff}
.merci-page .lang-dropdown.open .lang-switch{background:rgba(255,255,255,.06)}
.mobile-nav .lang-dropdown{width:100%;border-bottom:1px solid #eee}
.mobile-nav .lang-switch{justify-content:flex-start;width:100%;border:0;border-radius:0;padding:14px 4px;height:auto}
.mobile-nav .lang-menu{position:static;min-width:0;box-shadow:none;border:0;padding:0 0 8px;background:transparent}
@media(max-width:1200px){
  .desktop-nav a{width:8.4rem}
  .desktop-nav a[data-i18n="nav.works"]{width:12.2rem}
  .header-actions .header-cta{width:16.5rem;min-width:16.5rem}
}
@media(max-width:820px){.lang-switch{height:36px;padding:0 10px}}


@media(max-width:820px){.difference-grid{grid-template-columns:1fr;gap:16px}.diff-card.technical-visual{height:280px}}
@media(min-width:821px) and (max-width:1100px){.difference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.diff-card figcaption{left:16px;bottom:16px}.diff-card.technical-visual figcaption strong{font-size:20px}}

@media(max-width:820px){.durability-grid{grid-template-columns:1fr;gap:16px}.dura-card.durability-visual{height:280px}}
@media(min-width:821px) and (max-width:1100px){.durability-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dura-card figcaption{left:16px;bottom:16px}.dura-card.durability-visual figcaption strong{font-size:20px}}


/* Mobile: no horizontal carousels — stacked layouts only */
@media(max-width:820px){
  .issue-grid,.difference-grid,.durability-grid,.method-grid,.review-grid,.gallery-list{display:grid;grid-template-columns:1fr;overflow-x:visible;overflow:visible}
  .issue-card,.diff-card,.dura-card,.method-card,.review,.gallery-list .project{min-width:0;width:100%;max-width:100%}
  .project-shots{flex-wrap:nowrap;width:100%;max-width:100%}
}
