/* ── Fallbacks métriques polices web ── évite le CLS au chargement ── */
@font-face {
  font-family: 'Bebas Neue Fallback';
  src: local('Impact');
  ascent-override: 88%;
  descent-override: 10%;
  line-gap-override: 0%;
  size-adjust: 88%;
}
@font-face {
  font-family: 'Outfit Fallback';
  src: local('Arial');
  ascent-override: 94%;
  descent-override: 24%;
  line-gap-override: 0%;
  size-adjust: 99%;
}

/* Réduire drastiquement la taille du badge ReCaptcha (en bas à gauche) */
.grecaptcha-badge {
  transform: scale(0.4) !important;
  transform-origin: bottom left !important;
  opacity: 0.15 !important;
  transition: opacity 0.3s ease !important;
}
.grecaptcha-badge:hover {
  opacity: 0.5 !important;
}

:root{--p:#00D4AA;--pd:#00B894;--s:#FF6B35;--od:#0A1628;--om:#132743;--ol:#1E3A5F;--w:#FFF;--tl:rgba(255,255,255,.9);--tm:rgba(255,255,255,.6)}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Outfit','Outfit Fallback',system-ui,sans-serif;background:var(--od);color:var(--w);overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.bg{position:fixed;inset:0;z-index:-1;background:linear-gradient(135deg,var(--od),var(--om),var(--ol));contain:layout style paint}
.bg::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 80%,rgba(0,212,170,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(255,107,53,.1) 0%,transparent 50%);animation:pulse 8s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}

/* Particles */
.particles{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
.particle{position:absolute;width:4px;height:4px;background:var(--p);border-radius:50%;opacity:.3;animation:float 15s infinite}
.particle:nth-child(2){left:20%;animation-delay:2s;animation-duration:18s}
.particle:nth-child(3){left:40%;animation-delay:4s;animation-duration:20s}
.particle:nth-child(4){left:60%;animation-delay:1s;animation-duration:16s}
.particle:nth-child(5){left:80%;animation-delay:3s;animation-duration:22s}
@keyframes float{0%{transform:translateY(100vh) scale(0);opacity:0}10%{opacity:.3}90%{opacity:.3}100%{transform:translateY(-100vh) scale(1);opacity:0}}

/* Header */
.header{position:fixed;top:0;left:0;width:100%;padding:1.2rem 3rem;display:flex;justify-content:space-between;align-items:center;z-index:1000;background:linear-gradient(90deg,rgba(60,100,150,.95),rgba(180,100,150,.95));backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,212,170,.1);overflow:visible}
.header.scrolled{padding:.8rem 3rem}
.logo{display:flex;align-items:center;gap:38px;overflow:visible;flex-shrink:0}
.logo img{height:70px;transition:transform .4s ease;object-fit:contain;filter:drop-shadow(0 8px 25px rgba(0,0,0,0.3))}
.header.scrolled .logo img{transform:scale(0.79);transform-origin:left center}
.nav{display:flex;gap:2rem}
.nav a{color:var(--tl);text-decoration:none;font-weight:500;font-size:1rem;letter-spacing:1px;transition:opacity .3s;position:relative}
.nav a::after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:2px;background:var(--p);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nav a:hover{opacity:.75}
.nav a:hover::after{transform:scaleX(1)}

/* Progress bar */
.progress-container{position:fixed;top:0;left:0;width:100%;height:4px;z-index:1001}
.progress-bar-scroll{height:100%;background:linear-gradient(90deg,var(--p),var(--s));width:100%;transform:scaleX(0);transform-origin:left;transition:transform .1s}

/* Sections */
.section{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:9rem 2rem 4rem;position:relative}
.section:nth-child(even){background:rgba(0,0,0,.1)}

/* Animations */
.reveal{opacity:0;transform:translateY(60px);transition:opacity .8s cubic-bezier(.17,.67,.35,1.2),transform .8s cubic-bezier(.17,.67,.35,1.2)}
.reveal.active{opacity:1;transform:translateY(0)}
.reveal-left{opacity:0;transform:translateX(-60px);transition:opacity .8s cubic-bezier(.17,.67,.35,1.2),transform .8s cubic-bezier(.17,.67,.35,1.2)}
.reveal-left.active{opacity:1;transform:translateX(0)}
.reveal-right{opacity:0;transform:translateX(60px);transition:opacity .8s cubic-bezier(.17,.67,.35,1.2),transform .8s cubic-bezier(.17,.67,.35,1.2)}
.reveal-right.active{opacity:1;transform:translateX(0)}
.reveal-scale{opacity:0;transform:scale(.8);transition:opacity .8s cubic-bezier(.17,.67,.35,1.2),transform .8s cubic-bezier(.17,.67,.35,1.2)}
.reveal-scale.active{opacity:1;transform:scale(1)}

.stagger-children > *{opacity:0;transform:translateY(30px);transition:opacity .6s cubic-bezier(.17,.67,.35,1.2),transform .6s cubic-bezier(.17,.67,.35,1.2)}
.stagger-children.active > *{opacity:1;transform:translateY(0)}
.stagger-children.active > *:nth-child(1){transition-delay:.1s}
.stagger-children.active > *:nth-child(2){transition-delay:.2s}
.stagger-children.active > *:nth-child(3){transition-delay:.3s}
.stagger-children.active > *:nth-child(4){transition-delay:.4s}
.stagger-children.active > *:nth-child(5){transition-delay:.5s}
.stagger-children.active > *:nth-child(6){transition-delay:.6s}
.stagger-children.active > *:nth-child(7){transition-delay:.7s}
.stagger-children.active > *:nth-child(8){transition-delay:.8s}

.content{max-width:1200px;width:100%;text-align:center}
.icon{font-size:2.5rem;margin-bottom:1.2rem;display:inline-block}
.icon-animate{animation:bounce 2s infinite}
@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-15px)}}
.title{font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;letter-spacing:3px;margin-bottom:1rem;background:linear-gradient(135deg,var(--w),var(--p));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.subtitle{font-size:1.1rem;color:var(--tm);max-width:600px;margin:0 auto 3rem;line-height:1.7}

/* Welcome */
.badge{display:inline-flex;align-items:center;gap:.6rem;padding:.7rem 1.4rem;background:rgba(0,212,170,.1);border:1px solid rgba(0,212,170,.3);border-radius:50px;font-size:1.02rem;color:var(--p);animation:pbadge 2s infinite}
@keyframes pbadge{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.02)}}
.wtitle{font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;letter-spacing:3px;line-height:1.15;background:linear-gradient(135deg,var(--w) 0%,var(--p) 50%,var(--s) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-top:2rem}
.wdesc{font-size:1.3rem;color:var(--tl);max-width:700px;line-height:1.8;margin:1.5rem auto}
.wfeats{display:flex;gap:2.5rem;margin-top:2rem;flex-wrap:wrap;justify-content:center}
.wfeat{display:flex;align-items:center;gap:.8rem;font-size:.95rem;color:var(--tm)}
.wfeat-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem}
.wfeat-icon.home{background:rgba(0,212,170,.15)}
.wfeat-icon.cyclone{background:rgba(100,180,255,.15)}
.wfeat-icon.solar{background:rgba(255,200,50,.15)}
.wfeat-icon.ia{background:rgba(150,120,255,.15)}

/* CTA */
.cta{display:inline-flex;align-items:center;gap:1rem;padding:1.2rem 3rem;background:linear-gradient(135deg,var(--p),var(--pd));border:none;border-radius:60px;color:var(--od);font-family:'Outfit','Outfit Fallback',system-ui,sans-serif;font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .3s,opacity .3s;text-transform:uppercase;letter-spacing:2px;margin-top:2rem;text-decoration:none;position:relative;overflow:hidden}
.cta::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);opacity:0;transition:opacity .4s}
.cta:hover::before{opacity:1}
.cta:hover{transform:translateY(-3px) scale(1.02);opacity:.92}

/* Scroll Indicator */
.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--tm);font-size:.8rem;animation:scrollBounce 2s infinite}
@keyframes scrollBounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}}
.scroll-indicator .arrow{width:30px;height:50px;border:2px solid var(--tm);border-radius:15px;position:relative}
.scroll-indicator .scrollDot{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:6px;height:6px;background:var(--p);border-radius:50%;animation:scrollDot 2s infinite}
@keyframes scrollDot{0%{transform:translateX(-50%) translateY(0);opacity:1}100%{transform:translateX(-50%) translateY(22px);opacity:0}}

/* Cards - Sizes */
.sizes{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;width:100%;max-width:1000px;margin:0 auto}
.size-card{background:rgba(255,255,255,.03);border:2px solid rgba(255,255,255,.1);border-radius:24px;padding:2.5rem 1.5rem;cursor:pointer;transition:transform .4s,opacity .4s}
.size-card:hover{outline:2px solid var(--p);transform:translateY(-8px) scale(1.02)}
.size-card.sel{outline:2px solid var(--p);background:rgba(0,212,170,.05)}
.size-val{font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;font-size:4rem;color:var(--p);line-height:1}
.size-unit{font-size:1.5rem;color:var(--tm)}
.size-label{font-size:.9rem;color:var(--tm);margin-top:.5rem;text-transform:uppercase;letter-spacing:2px}
.size-details{margin-top:1rem;font-size:.85rem;color:var(--tm);line-height:1.6}

/* Cards - Design */
.designs{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;width:100%;max-width:1100px;margin:0 auto}
.design-card{background:rgba(255,255,255,.03);border:2px solid rgba(255,255,255,.1);border-radius:20px;overflow:hidden;cursor:pointer;transition:transform .4s}
.design-card:hover{outline:2px solid var(--p);transform:scale(1.02)}
.design-card.sel{outline:2px solid var(--p)}
.design-img{width:100%;height:200px;display:flex;align-items:center;justify-content:center;font-size:6rem;overflow:hidden;position:relative}
.design-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.design-card:hover .design-img img{transform:scale(1.1)}
/* Indicateur d'édition en mode admin */
.admin-mode .design-img::before{content:'🖼️ Cliquez pour changer';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,212,170,.95);color:#fff;padding:8px 16px;border-radius:8px;font-size:0.9rem;opacity:0;transition:opacity .3s;z-index:10;pointer-events:none}
.admin-mode .design-card:hover .design-img::before{opacity:1}
.admin-mode .design-img:hover{cursor:pointer}
.capsule-bg{background:linear-gradient(135deg,var(--om),var(--ol))}
.container-bg{background:linear-gradient(135deg,var(--ol),var(--om))}
.design-info{padding:2rem}
.design-name{font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;font-size:2rem;letter-spacing:3px;margin-bottom:.5rem}
.design-desc{font-size:.9rem;color:var(--tm);line-height:1.6}
.design-tags{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap}
.design-tag{padding:.4rem .8rem;background:rgba(0,212,170,.1);border-radius:20px;font-size:.75rem;color:var(--p)}

/* Cards - Equipment */
.equip{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;width:100%;max-width:1200px}
.equip-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:1.5rem;cursor:pointer;transition:transform .3s,opacity .3s;position:relative}
.equip-card:hover{outline:1px solid var(--p);transform:translateY(-5px)}
.equip-card.sel{outline:2px solid var(--p);background:rgba(0,212,170,.1)}
.equip-check{position:absolute;top:1rem;right:1rem;width:24px;height:24px;border:2px solid rgba(255,255,255,.3);border-radius:6px;display:flex;align-items:center;justify-content:center;transition:opacity .3s,transform .3s;font-size:.8rem;color:transparent}
.equip-card.sel .equip-check{background:var(--p);border-color:var(--p);color:var(--od);transform:scale(1.1);opacity:1}
.equip-icon{font-size:2.5rem;margin-bottom:1rem;transition:transform .3s;position:relative}
/* Indicateur d'édition d'image en mode admin */
.admin-mode .equip-card[data-image] .equip-icon{position:relative}
.admin-mode .equip-card[data-image] .equip-icon::before{content:'🖼️';position:absolute;top:-8px;right:-8px;font-size:1rem;background:rgba(0,212,170,.9);padding:4px 6px;border-radius:6px;opacity:0;transition:opacity .3s}
.admin-mode .equip-card[data-image]:hover .equip-icon::before{opacity:1}
.admin-mode .equip-card[data-image] .equip-icon:hover{transform:scale(1.15);cursor:pointer;filter:brightness(1.3)}
.equip-name{font-weight:600;font-size:1rem;margin-bottom:.5rem}
.equip-desc{font-size:.8rem;color:var(--tm);line-height:1.5}

/* Image Preview */
.image-preview-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;pointer-events:none;transition:opacity .4s ease;backdrop-filter:blur(10px)}
.image-preview-overlay.active{opacity:1;pointer-events:auto}
.image-preview-overlay img{max-width:80%;max-height:80%;border-radius:20px;transform:scale(.8);transition:transform .4s ease,opacity .3s ease;opacity:0}
.image-preview-overlay.active img{transform:scale(1)}
.image-preview-label{position:absolute;bottom:10%;left:50%;transform:translateX(-50%);color:var(--w);font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;font-size:2rem;letter-spacing:3px;text-shadow:0 2px 20px rgba(0,0,0,.5)}

/* Custom */
.custom{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;width:100%;max-width:1200px;margin:0 auto}
.custom-cat{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:1.5rem;text-align:left;transition:opacity .3s}
.custom-cat:hover{outline:1px solid rgba(0,212,170,.3)}
.custom-title{font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;font-size:1.3rem;letter-spacing:2px;color:var(--p);margin-bottom:1rem}
.custom-opts{display:flex;flex-wrap:wrap;gap:.8rem}
.custom-opt{padding:.6rem 1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;cursor:pointer;transition:opacity .3s,transform .3s;font-size:.85rem;color:var(--tl)}
.custom-opt:hover{outline:1px solid var(--p);background:rgba(0,212,170,.1);transform:translateY(-1px)}
.custom-opt.sel{background:var(--p);color:var(--od);outline:2px solid var(--p)}
.colors{display:flex;gap:.8rem;flex-wrap:wrap}
.color{width:40px;height:40px;border-radius:10px;cursor:pointer;outline:3px solid transparent;outline-offset:2px;transition:transform .3s,outline-color .15s;position:relative}
.color:hover{transform:scale(1.15)}
.color.sel{outline-color:var(--w)}
.color.sel::after{content:'✓';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.2rem;color:var(--w);text-shadow:0 0 3px rgba(0,0,0,.5)}

/* Info Grid */
.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;max-width:1200px;width:100%;margin:3rem auto 0}
.info-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:25px;padding:2rem;text-align:center;transition:transform .4s;display:flex;flex-direction:column;align-items:center}
.info-card:hover{outline:1px solid rgba(0,212,170,.3);transform:translateY(-8px)}
.info-icon{width:60px;height:60px;background:linear-gradient(135deg,var(--p),var(--s));border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;margin-bottom:1.2rem}
.info-title{font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;font-size:1.5rem;letter-spacing:2px;margin-bottom:.8rem}
.info-text{font-size:.9rem;color:var(--tm);line-height:1.7;text-align:justify}
.info-list{list-style:none;margin:1rem 0;text-align:left;width:100%}
.info-list-item{display:flex;align-items:flex-start;gap:.8rem;margin-bottom:.8rem;font-size:.9rem;color:var(--tl);line-height:1.5}
.info-list-item:before{content:'✓';color:var(--p);font-weight:bold;flex-shrink:0;margin-top:2px}

/* Garanties Specific (Dashboard match) */
.guarantee-title{font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;font-size:2rem;letter-spacing:3px;color:var(--p);margin-bottom:1.5rem}
.guarantee-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem 2rem;margin-top:1.5rem;padding:0 2rem}
.guarantee-item{display:grid;grid-template-columns:30px 1fr;align-items:center;gap:.8rem;font-size:.9rem;color:var(--tl);text-align:left}
.guarantee-check{width:24px;height:24px;background:var(--p);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;color:var(--od);flex-shrink:0}

/* Summary */
.summary{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1200px;width:100%;text-align:left}
.summary-visual{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:30px;padding:2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}
.summary-icon{font-size:10rem;margin-bottom:1rem;min-height:120px;display:flex;align-items:center;justify-content:center}
.summary-specs{display:flex;gap:2rem;flex-wrap:wrap;justify-content:center}
.summary-spec{text-align:center}
.summary-spec-val{font-family:'Bebas Neue','Bebas Neue Fallback',Impact,sans-serif;font-size:2.5rem;color:var(--p)}
.summary-spec-label{font-size:.75rem;color:var(--tm);text-transform:uppercase;letter-spacing:1px}
.summary-details{display:flex;flex-direction:column;gap:1.5rem}
.summary-section{background:rgba(255,255,255,.03);border-radius:15px;padding:1.2rem}
.summary-section-title{font-weight:600;font-size:.9rem;color:var(--p);margin-bottom:.8rem}
.summary-list{display:flex;flex-wrap:wrap;gap:.5rem}
.summary-tag{padding:.4rem .8rem;background:rgba(255,255,255,.05);border-radius:8px;font-size:.8rem;color:var(--tl)}

/* Form */
.form{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:30px;padding:2.5rem;max-width:600px;width:100%;margin-top:2rem}
.form-group{margin-bottom:1.5rem;text-align:left}
.form-label{display:block;font-size:.85rem;color:var(--tm);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px}
.form-input{width:100%;padding:1rem 1.2rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;color:var(--w);font-family:'Outfit','Outfit Fallback',system-ui,sans-serif;font-size:1rem;transition:outline .15s}
.form-input:focus{outline:2px solid var(--p);outline-offset:0}
.form-input::placeholder{color:var(--tm)}
textarea.form-input{resize:vertical;min-height:100px}

/* Toast */
.toast{position:fixed;bottom:2rem;right:2rem;padding:1rem 2rem;background:var(--p);color:var(--od);border-radius:15px;font-weight:600;transform:translateY(100px);opacity:0;transition:transform .4s,opacity .4s;z-index:10000}
.toast.show{transform:translateY(0);opacity:1}

/* Misc */
.whatsapp-btn{position:fixed;bottom:2rem;right:2rem;width:60px;height:60px;background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:999;transition:transform .3s,opacity .3s;text-decoration:none}
.whatsapp-btn:hover{transform:scale(1.1);opacity:.9}
.whatsapp-btn svg{width:32px;height:32px;fill:#fff}
.whatsapp-tooltip{position:absolute;right:70px;background:#fff;color:#333;padding:.6rem 1rem;border-radius:10px;font-size:.85rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .3s}
.whatsapp-btn:hover .whatsapp-tooltip{opacity:1;pointer-events:auto}
.back-to-top{position:fixed;bottom:6rem;right:2rem;width:50px;height:50px;background:linear-gradient(135deg,var(--p),var(--pd));border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:transform .3s,opacity .3s;z-index:999;border:none;color:var(--od);font-size:1.5rem}
.back-to-top.visible{opacity:1;pointer-events:auto}
.back-to-top:hover{transform:translateY(-5px)}

/* reCAPTCHA badge visibility */
.grecaptcha-badge{visibility:visible !important;opacity:1 !important;z-index:9999 !important;position:fixed !important;bottom:14px !important;left:0 !important;right:auto !important}

/* Bandeau réassurance - CONVERSION BOOST */
.trust-banner{background:linear-gradient(90deg,rgba(0,212,170,.15),rgba(255,107,53,.15));padding:1rem;display:flex;justify-content:center;align-items:center;gap:clamp(1.5rem,4vw,3rem);flex-wrap:wrap;border-bottom:1px solid rgba(0,212,170,.2)}
.trust-item{display:flex;align-items:center;gap:.8rem;font-size:clamp(.8rem,2vw,.9rem);color:var(--tl)}
.trust-item::before{content:'✓';color:var(--p);font-size:1.2rem;font-weight:bold}

/* Timer urgence - CONVERSION */
.urgence-timer{display:inline-flex;align-items:center;gap:.8rem;padding:.8rem 1.5rem;background:linear-gradient(135deg,rgba(255,107,53,.2),rgba(255,107,53,.1));border:2px solid var(--s);border-radius:50px;font-size:clamp(.85rem,2vw,.95rem);color:var(--s);margin-top:1rem;animation:pulse-urgence 1.5s infinite}
@keyframes pulse-urgence{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}

/* Accessibilité améliorée */
:focus-visible{outline:2px solid var(--p);outline-offset:4px}
button{cursor:pointer;font-family:inherit}

@media(max-width:900px){.summary,.guarantee-list{grid-template-columns:1fr}}
@media(max-width:768px){
.header{padding:1rem 1.5rem;height:auto}
.logo img{height:55px;width:auto}
.header.scrolled .logo img{height:50px;width:auto}
.nav{display:none}
.section{padding:6rem 1rem 3rem}
.designs{grid-template-columns:repeat(2,1fr);gap:1rem}
.design-img{height:150px}
.info-grid{grid-template-columns:1fr}
.wfeats{flex-direction:column;align-items:center;gap:1.5rem}
.wfeat{width:100%;max-width:280px;justify-content:flex-start}
.sizes{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:500px){
.logo img{height:48px;width:auto}
.header.scrolled .logo img{height:45px;width:auto}
.wfeats{gap:1.2rem}
.wfeat{max-width:240px;font-size:.9rem}
.designs{grid-template-columns:1fr}
.design-img{height:180px}
}

/* WhatsApp flottant - NOUVEAU pour conversion */
.whatsapp-float{position:fixed;bottom:6rem;right:2rem;width:clamp(56px,14vw,64px);height:clamp(56px,14vw,64px);background:#25D366;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:clamp(1.8rem,4.5vw,2rem);z-index:998;cursor:pointer;transition:transform .3s,opacity .3s;text-decoration:none;animation:pulse-whatsapp 2s infinite;min-width:56px;min-height:56px}
.whatsapp-float:hover{transform:scale(1.1);opacity:.9}
@keyframes pulse-whatsapp{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}

/* Optimisation accessibilité */
.subtitle{color:rgba(255,255,255,.85)}
.equip-desc,.service-desc,.quality-desc,.info-text{color:rgba(255,255,255,.75)}

/* FAQ Styles */
.faq-container{max-width:800px;margin:0 auto}
.faq-item{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:12px;margin-bottom:1rem;overflow:hidden;transition:opacity .3s}
.faq-item:hover{outline:1px solid rgba(0,212,170,.3)}
.faq-question{padding:1.3rem 1.5rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;font-weight:500;color:var(--w);user-select:none;transition:opacity .3s}
.faq-question:hover{opacity:.8}
.faq-toggle{font-size:1.5rem;color:var(--p);transition:transform .3s;flex-shrink:0}
.faq-item.active .faq-toggle{transform:rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease-out}
.faq-answer-content{padding:0 1.5rem 1.5rem;color:var(--tl);line-height:1.8}
.faq-answer-content strong{color:var(--p)}