:root{--blue:#009bdf;--blue-deep:#006eb4;--navy:#063862;--ink:#132735;--muted:#60717d;--pale:#f2f7fa;--line:#dce7ed;--white:#fff;--shadow:0 18px 55px rgba(9,48,76,.12);--wrap:min(1180px,calc(100% - 48px))}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.6;background:#fff;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.wrap{width:var(--wrap);margin-inline:auto}.skip-link{position:fixed;top:-100px;left:16px;background:#fff;padding:12px 18px;z-index:1000}.skip-link:focus{top:16px}.topbar{background:var(--navy);color:#d7e8f3;font-size:.78rem;letter-spacing:.04em}.topbar-inner{height:34px;display:flex;align-items:center;justify-content:space-between}.topbar a{color:#fff}.site-header{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:50;border-bottom:1px solid rgba(9,56,98,.08)}.nav-wrap{height:82px;display:flex;align-items:center;gap:34px}.brand{width:172px;height:64px;display:flex;align-items:center}.brand img{width:100%;height:auto}.desktop-nav{display:flex;align-items:center;gap:28px;margin-left:auto}.desktop-nav a{font-size:.9rem;font-weight:650;position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--blue);transition:.25s}.desktop-nav a:hover:after{right:0}.header-actions{display:flex;align-items:center;gap:15px}.phone-link{font-size:.92rem;font-weight:800;color:var(--navy)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:3px;border:1px solid transparent;font-weight:760;font-size:.93rem;transition:transform .2s,background .2s,color .2s,border .2s;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 10px 30px rgba(0,155,223,.24)}.btn-primary:hover{background:var(--blue-deep)}.btn-dark{background:var(--navy);color:#fff}.btn-white{background:#fff;color:var(--navy)}.menu-btn,.mobile-menu{display:none}
.hero{position:relative;min-height:calc(100svh - 116px);height:760px;color:#fff;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,27,44,.89) 0%,rgba(6,38,60,.71) 40%,rgba(6,38,60,.10) 76%),linear-gradient(0deg,rgba(0,0,0,.2),transparent 45%)}.hero-content{position:relative;padding-bottom:52px}.eyebrow{margin:0 0 18px;text-transform:uppercase;color:var(--blue-deep);font-size:.75rem;font-weight:850;letter-spacing:.18em}.eyebrow.light{color:#87d8fb}.hero h1,.section h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em;line-height:1.03}.hero h1{font-size:clamp(3rem,6.2vw,5.6rem);max-width:780px}.hero h1 em{font-style:normal;color:#8edcff}.hero-copy{font-size:1.15rem;line-height:1.55;max-width:650px;color:#eef7fb;margin:28px 0}.hero-actions{display:flex;gap:12px}.btn-glass{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5);color:#fff;backdrop-filter:blur(8px)}.hero-proof{display:grid;grid-template-columns:repeat(3,max-content);gap:0;margin-top:56px}.hero-proof div{padding:0 34px;border-left:1px solid rgba(255,255,255,.28)}.hero-proof div:first-child{padding-left:0;border:0}.hero-proof strong,.hero-proof span{display:block}.hero-proof strong{font-size:.94rem}.hero-proof span{font-size:.76rem;color:#c8d8e1}.scroll-cue{position:absolute;right:40px;bottom:32px;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;display:flex;align-items:center;gap:12px}.scroll-cue span{font-size:1.4rem}.section{padding:110px 0}.section h2{font-size:clamp(2.4rem,4.8vw,4.2rem);color:var(--navy)}.section h2 span{color:var(--blue-deep)}
.intro-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:100px;align-items:start}.intro-copy{font-size:1.08rem;color:var(--muted);padding-top:40px}.intro-copy p:first-child{font-size:1.28rem;color:var(--ink)}.text-link{display:inline-flex;gap:16px;align-items:center;margin-top:12px;color:var(--blue-deep);font-weight:800}.text-link span{font-size:1.4rem}.services{background:var(--pale)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:55px}.section-head>p{max-width:390px;color:var(--muted);margin:0 0 8px}.service-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1px;background:#cedde5;border:1px solid #cedde5}.service-card{background:#fff;min-height:240px;padding:34px;display:grid;grid-template-columns:52px 1fr;gap:20px;transition:.25s}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);z-index:1}.service-card.featured{grid-row:span 2;min-height:481px;background:var(--navy);color:#fff;align-items:end;padding:46px}.service-card .number{font-size:.73rem;color:var(--blue);font-weight:850;letter-spacing:.12em}.service-card h3{font-family:Georgia,serif;font-size:1.65rem;line-height:1.2;margin:0 0 12px;font-weight:400;color:var(--navy)}.service-card.featured h3{font-size:2.6rem;color:#fff}.service-card p{color:var(--muted);margin:0}.service-card.featured p{color:#d5e3eb}.service-card ul{list-style:none;padding:0;margin:30px 0 0;border-top:1px solid rgba(255,255,255,.16)}.service-card li{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.16);font-size:.9rem}.materials{background:var(--navy);color:#fff}.materials-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px}.material-title{padding-top:20px}.material-title h2{color:#fff}.material-title>p:last-child{color:#b9cbd6;max-width:430px}.material-list article{display:grid;grid-template-columns:90px 1fr;gap:25px;padding:28px 0;border-top:1px solid rgba(255,255,255,.16)}.material-list article:last-child{border-bottom:1px solid rgba(255,255,255,.16)}.material-list article>span{font-family:Georgia,serif;color:#75d2f7;font-size:2.5rem}.material-list h3{font-size:1.25rem;margin:0 0 4px}.material-list p{margin:0;color:#b9cbd6}.energy-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.energy-image-wrap{position:relative}.energy-image-wrap img{width:100%;height:690px;object-fit:cover}.image-note{position:absolute;left:-30px;bottom:34px;background:#fff;padding:19px 25px;box-shadow:var(--shadow)}.image-note strong,.image-note span{display:block}.image-note strong{color:var(--navy)}.image-note span{font-size:.78rem;color:var(--muted)}.energy-copy>p:not(.eyebrow){color:var(--muted);font-size:1.05rem}.rge-card{display:grid;grid-template-columns:75px 1fr;gap:18px;margin:30px 0;padding:24px;background:var(--pale);border-left:3px solid var(--blue)}.rge-mark{width:66px;height:66px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}.rge-card strong,.rge-card span{display:block}.rge-card span{font-size:.85rem;color:var(--muted);line-height:1.45}.repair{background:linear-gradient(120deg,#007dbd,#009bdf);color:#fff}.repair-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.repair h2{color:#fff}.repair-grid>div>p:not(.eyebrow){color:#e8f6fc;max-width:520px}.repair-list{list-style:none;margin:0;padding:0}.repair-list li{display:flex;gap:24px;padding:20px 0;border-top:1px solid rgba(255,255,255,.28);font-size:1.08rem;font-weight:700}.repair-list li:last-child{border-bottom:1px solid rgba(255,255,255,.28)}.repair-list span{font-size:.75rem;color:#b9e9fc;letter-spacing:.1em}.projects{background:#fff}.before-after{margin:0}.before-after img{width:100%;max-height:720px;object-fit:cover}.before-after figcaption{display:flex;justify-content:space-between;align-items:end;background:var(--navy);color:#fff;padding:24px 30px}.before-after strong,.before-after span{display:block}.before-after span{color:#c7d8e1;font-size:.9rem}.before-after small{color:#a8bdc9}.project-note{margin:25px 0 0;display:flex;gap:16px;align-items:center;color:var(--muted)}.project-note>span{width:50px;height:50px;border:1px solid var(--line);display:grid;place-items:center;color:var(--blue);font-size:1.5rem}.project-note p{margin:0}.project-note strong{color:var(--ink)}.reasons{background:var(--pale)}.reason-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-top:1px solid #cfdce3}.reason-grid article{padding:30px 28px 0;border-right:1px solid #cfdce3}.reason-grid article:first-child{padding-left:0}.reason-grid article:last-child{border:0}.reason-grid span{font-size:.75rem;color:var(--blue-deep);font-weight:800}.reason-grid h3{font-family:Georgia,serif;color:var(--navy);font-size:1.35rem;line-height:1.25}.reason-grid p{color:var(--muted);font-size:.9rem}.zones-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.zone-cards article{display:grid;grid-template-columns:68px 1fr;gap:24px;padding:28px 0;border-top:1px solid var(--line)}.zone-cards article:last-child{border-bottom:1px solid var(--line)}.zone-icon{width:60px;height:60px;background:var(--pale);display:grid;place-items:center;color:var(--blue-deep);font-size:1.5rem}.zone-cards h3{margin:0 0 8px;color:var(--navy)}.zone-cards p{margin:0;color:var(--muted)}.reviews{background:var(--ink);color:#fff}.reviews-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end}.reviews h2{color:#fff}.reviews-inner>p{color:#bfcdd5;margin:0}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.contact-copy>p:not(.eyebrow){color:var(--muted)}.contact-details{margin-top:40px}.contact-details a,.contact-details address{display:block;border-top:1px solid var(--line);padding:18px 0;font-style:normal}.contact-details span,.contact-details strong{display:block}.contact-details span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.contact-details strong{color:var(--navy)}.quote-form{background:var(--pale);padding:42px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.quote-form label{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:var(--navy);margin-bottom:18px}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;margin-top:8px;border:1px solid #c9d8e0;background:#fff;border-radius:2px;padding:13px 14px;color:var(--ink);text-transform:none;letter-spacing:0;outline:none}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(0,155,223,.13)}.quote-form textarea{resize:vertical}.submit-btn{width:100%}.form-note{text-align:center;font-size:.78rem;color:var(--muted);margin:12px 0 0}footer{background:#071f31;color:#d6e2e8;padding:65px 0 25px}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-brand{width:190px;height:64px;padding:8px;background:#fff;display:flex;align-items:center}.footer-brand img{width:100%;height:auto}.footer-main>div{display:flex;flex-direction:column;gap:6px}.footer-main>div>span{text-transform:uppercase;font-size:.7rem;letter-spacing:.14em;color:#7d9aaa;margin-bottom:10px}.footer-main a,.footer-main p{font-size:.9rem;margin:0}.footer-bottom{display:flex;justify-content:space-between;margin-top:55px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:.73rem;color:#7491a1}.mobile-bar{display:none}
@media (max-width:1020px){.desktop-nav,.phone-link{display:none}.header-actions{margin-left:auto}.hero{height:680px;min-height:0}.intro-grid,.materials-grid,.energy-grid,.repair-grid,.zones-grid,.contact-grid{gap:55px}.section{padding:90px 0}.reason-grid{grid-template-columns:1fr 1fr}.reason-grid article{border-bottom:1px solid #cfdce3}.reason-grid article:nth-child(2){border-right:0}.energy-image-wrap img{height:580px}}
@media (max-width:720px){:root{--wrap:calc(100% - 32px)}body{font-size:16px;padding-bottom:64px}.topbar{display:none}.nav-wrap{height:70px}.brand{width:132px;height:52px}.header-quote{display:none}.menu-btn{display:flex;width:42px;height:42px;background:transparent;border:0;flex-direction:column;gap:7px;justify-content:center;align-items:center}.menu-btn span{width:23px;height:2px;background:var(--navy);transition:.2s}.menu-btn[aria-expanded="true"] span:first-child{transform:translateY(4.5px) rotate(45deg)}.menu-btn[aria-expanded="true"] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}.mobile-menu{position:absolute;top:70px;left:0;right:0;background:#fff;padding:18px 16px 28px;border-top:1px solid var(--line);box-shadow:0 16px 30px rgba(0,0,0,.1)}.mobile-menu.open{display:flex;flex-direction:column}.mobile-menu a{padding:10px;font-weight:750}.hero{height:680px;min-height:calc(100svh - 70px);align-items:end}.hero-image{object-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(4,25,40,.95),rgba(4,25,40,.55) 68%,rgba(4,25,40,.08))}.hero-content{padding-bottom:74px}.hero h1{font-size:3.15rem}.hero-copy{font-size:1rem;margin:20px 0}.hero-actions{flex-direction:column;align-items:stretch}.hero-proof{grid-template-columns:1fr 1fr;gap:14px;margin-top:30px}.hero-proof div{padding:0 0 0 15px}.hero-proof div:nth-child(3){display:none}.hero-proof span{font-size:.7rem}.scroll-cue{display:none}.section{padding:72px 0}.section h2{font-size:2.55rem}.intro-grid,.materials-grid,.energy-grid,.repair-grid,.zones-grid,.reviews-inner,.contact-grid{grid-template-columns:1fr;gap:38px}.intro-copy{padding:0}.section-head{display:block;margin-bottom:35px}.section-head>p{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card.featured{grid-row:auto;min-height:380px}.service-card{min-height:210px;padding:26px}.service-card.featured{padding:30px}.materials-grid{gap:25px}.material-list article{grid-template-columns:58px 1fr}.energy-image-wrap img{height:500px}.image-note{left:12px;right:12px;bottom:14px}.rge-card{grid-template-columns:58px 1fr;padding:18px}.rge-mark{width:52px;height:52px}.repair-grid{gap:45px}.before-after{margin-inline:-16px}.before-after img{height:auto}.before-after figcaption{display:block;padding:18px 16px}.before-after small{display:block;margin-top:10px}.reason-grid{grid-template-columns:1fr;margin-top:38px}.reason-grid article,.reason-grid article:first-child{padding:24px 0;border-right:0}.zone-cards article{grid-template-columns:52px 1fr;gap:15px}.zone-icon{width:48px;height:48px}.quote-form{padding:25px 18px;margin-inline:-4px}.field-row{grid-template-columns:1fr;gap:0}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{display:block}.mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;height:64px;display:grid;grid-template-columns:.8fr 1.2fr;box-shadow:0 -8px 25px rgba(2,27,45,.15)}.mobile-bar a{display:flex;justify-content:center;align-items:center;font-weight:800;font-size:.88rem;background:#fff;color:var(--navy)}.mobile-bar a:last-child{background:var(--blue);color:#fff}.mobile-bar span{margin-right:7px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media (max-width:720px){.hero{height:620px}.hero-content{padding-bottom:58px}.hero-proof{margin-top:26px}.section{padding:62px 0}}
.service-grid{grid-template-columns:repeat(2,1fr);gap:18px;background:transparent;border:0}.service-card,.service-card.featured{display:block;min-height:0;padding:0;background:#fff;color:var(--ink);overflow:hidden}.service-card.featured{grid-row:auto}.service-photo{position:relative;height:285px;overflow:hidden;background:var(--navy)}.service-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.service-card:hover .service-photo img{transform:scale(1.025)}.service-photo span{position:absolute;top:16px;left:16px;padding:6px 9px;background:rgba(4,27,44,.82);color:#fff;font-size:.66rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.service-photo-door img{object-position:center 43%}.service-photo-shutters img{object-position:center}.service-body{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:28px 30px 31px}.service-card.featured .service-body{padding:28px 30px 31px}.service-card.featured h3{font-size:1.65rem;color:var(--navy)}.service-card.featured p{color:var(--muted)}.service-card ul{margin:18px 0 0;border-top:1px solid var(--line)}.service-card li{border-bottom:1px solid var(--line);color:var(--muted)}@media (max-width:720px){.service-grid{grid-template-columns:1fr;gap:16px}.service-card,.service-card.featured{min-height:0}.service-photo{height:245px}.service-body,.service-card.featured .service-body{padding:23px 20px 25px}}


/* Photo réelle FTC 26 — intervention sur une porte */
.repair-grid{grid-template-columns:.82fr 1.18fr;gap:60px 72px}
.repair-photo{position:relative;margin:0;min-height:480px;overflow:hidden;background:#07567f}
.repair-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 56%}
.repair-photo:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(3,25,40,.72))}
.repair-photo figcaption{position:absolute;z-index:1;left:24px;right:24px;bottom:20px;color:#fff;font-size:.82rem;font-weight:750;letter-spacing:.03em}
.repair-list{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.28);border-bottom:1px solid rgba(255,255,255,.28)}
.repair-list li{gap:16px;padding:20px 22px;border-top:0;border-right:1px solid rgba(255,255,255,.28);font-size:.98rem}
.repair-list li:first-child{padding-left:0}
.repair-list li:last-child{border-right:0;border-bottom:0;padding-right:0}
@media (max-width:1020px){.repair-grid{grid-template-columns:1fr 1fr;gap:48px}.repair-list{grid-template-columns:1fr 1fr}.repair-list li:nth-child(2){border-right:0}.repair-list li:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.28)}}
@media (max-width:720px){.repair-grid{grid-template-columns:1fr;gap:34px}.repair-photo{min-height:500px}.repair-list{grid-column:auto;grid-template-columns:1fr}.repair-list li,.repair-list li:first-child,.repair-list li:last-child{padding:18px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.28)}.repair-list li:last-child{border-bottom:0}}

/* Logo FTC 26 complet */
html{scroll-padding-top:112px}
.nav-wrap{height:96px;gap:28px}
.brand{width:132px;height:88px;flex:none;justify-content:center}
.brand img{width:100%;height:100%;object-fit:contain}
.desktop-nav{gap:25px}
.footer-brand{width:170px;height:116px;justify-content:center}
.footer-brand img{width:100%;height:100%;object-fit:contain}
@media (max-width:720px){
  .nav-wrap{height:82px}
  .brand{width:112px;height:76px}
  .mobile-menu{top:82px}
  .hero{min-height:calc(100svh - 82px)}
}
