/* ÆRĀ Cleaning — overrides.css FULLPAGE FINAL
   Sections en position:fixed via JS
   CSS s'occupe uniquement du contenu interne
   ─────────────────────────────────────────── */

/* ═══════════════════════════
   ANIMATIONS REVEAL
═══════════════════════════ */
.reveal,.reveal-left,.reveal-right,.reveal-scale {
  opacity: 0;
  will-change: transform, opacity;
  transition: opacity .6s cubic-bezier(.4,0,.2,1), transform .6s cubic-bezier(.4,0,.2,1);
}
.reveal       { transform: translateY(24px); }
.reveal-left  { transform: translateX(-28px); }
.reveal-right { transform: translateX(28px); }
.reveal-scale { transform: scale(.94); }
.reveal.active, .reveal-left.active, .reveal-right.active, .reveal-scale.active {
  opacity: 1 !important; transform: none !important;
}
.delay-1 { transition-delay: .1s; }
.delay-2 { transition-delay: .2s; }
.delay-3 { transition-delay: .3s; }

/* ═══════════════════════════
   STEP NUMS
═══════════════════════════ */
.step-num {
  transition: transform .6s cubic-bezier(.34,1.56,.64,1), opacity .5s ease;
  will-change: transform, opacity;
}

/* ═══════════════════════════
   SECTIONS — contenu interne
   Le JS met position:fixed sur chaque section
   Ici on gère l'affichage du contenu
═══════════════════════════ */
@media (min-width: 769px) {

  /* Header reste au dessus */
  #header { z-index: 100 !important; }

  /* Chaque section : flex colonne, padding = header */
  .section.fullpage-slide,
  .contact-section.fullpage-slide,
  .trust-bar.fullpage-slide {
    display: flex !important;
    flex-direction: column !important;
    padding-top: var(--header-h) !important;
    padding-bottom: 0 !important;
    padding-left: var(--px) !important;
    padding-right: var(--px) !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
  }

  .hero.hero-new.fullpage-slide {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 !important;
  }

  /* Section header compact */
  .section-header {
    flex-shrink: 0 !important;
    padding-top: 6px !important;
    margin-bottom: 6px !important;
  }
  .overline { font-size: 8px !important; letter-spacing:.2em !important; margin-bottom:1px !important; display:block !important; }
  .section-header h2 { font-size:clamp(.9rem,1.55vw,1.4rem) !important; line-height:1.15 !important; margin:0 !important; }

  /* ─── HERO ─── */
  .hn-inner {
    flex: 1 !important;
    display: grid !important;
    grid-template-columns: 54% 43% !important;
    gap: 3% !important;
    align-items: center !important;
    padding: calc(var(--header-h) + 14px) 5% 14px !important;
    box-sizing: border-box !important;
  }

  /* ─── TRUST BAR ─── */
  #chiffres.trust-bar.fullpage-slide { justify-content:center !important; align-items:center !important; }
  .trust-bar-inner { max-width:900px !important; gap:14px !important; margin:0 auto !important; width:100% !important; }
  .promo-banner { padding:8px 16px !important; }
  .trust-stat { padding:12px 10px !important; }
  .trust-stat-num { font-size:30px !important; }
  .trust-stat-label,.trust-stat-sub { font-size:9px !important; }

  /* ─── SERVICES ─── */
  #services.section.fullpage-slide { gap:0 !important; }
  .services-grid {
    flex: 1 !important; min-height:0 !important;
    display: grid !important;
    grid-template-columns: repeat(3,1fr) !important;
    grid-template-rows: repeat(2,1fr) !important;
    gap: 6px !important;
    padding-bottom: 5px !important;
  }
  .service-card { height:100% !important; min-height:0 !important; overflow:hidden !important; border-radius:11px !important; display:flex !important; flex-direction:column !important; box-sizing:border-box !important; }
  .sc-photo { background-image:var(--sc-img) !important; background-size:cover !important; background-position:center !important; position:relative !important; }
  .sc-overlay { position:absolute !important; inset:0 !important; background:linear-gradient(155deg,rgba(4,17,31,.86) 0%,rgba(4,17,31,.65) 100%) !important; z-index:0 !important; transition:background .3s !important; }
  .sc-photo:hover .sc-overlay { background:linear-gradient(155deg,rgba(4,17,31,.74) 0%,rgba(7,50,105,.58) 100%) !important; }
  .sc-content { position:relative !important; z-index:1 !important; flex:1 !important; display:flex !important; flex-direction:column !important; gap:2px !important; padding:9px 11px !important; min-height:0 !important; overflow:hidden !important; }
  .sc-num { font-size:7.5px !important; font-weight:700 !important; letter-spacing:.18em !important; text-transform:uppercase !important; color:rgba(40,167,255,.62) !important; flex-shrink:0 !important; margin:0 !important; padding:0 !important; }
  .sc-title { font-size:clamp(10px,.94vw,12.5px) !important; font-weight:700 !important; color:#fff !important; line-height:1.15 !important; flex-shrink:0 !important; margin:0 !important; padding:0 !important; }
  .sc-desc { font-size:clamp(8.5px,.78vw,10px) !important; color:rgba(255,255,255,.6) !important; line-height:1.35 !important; flex-shrink:0 !important; margin:0 !important; padding:0 !important; }
  .sc-list { list-style:none !important; padding:0 !important; margin:0 !important; flex:1 !important; min-height:0 !important; overflow:hidden !important; display:flex !important; flex-direction:column !important; gap:1px !important; }
  .sc-list li { font-size:clamp(8px,.74vw,9.5px) !important; color:rgba(255,255,255,.5) !important; padding-left:9px !important; position:relative !important; line-height:1.3 !important; margin:0 !important; }
  .sc-list li::before { content:'—' !important; position:absolute !important; left:0 !important; color:rgba(40,167,255,.45) !important; font-size:7px !important; }
  .sc-badge { margin-top:auto !important; flex-shrink:0 !important; display:inline-block !important; background:rgba(40,167,255,.09) !important; border:1px solid rgba(40,167,255,.2) !important; border-radius:99px !important; padding:1px 7px !important; font-size:7px !important; font-weight:600 !important; color:#60a5fa !important; width:fit-content !important; }
  .service-card.service-cta,.sc-cta-card { background:linear-gradient(145deg,rgba(26,86,219,.18),rgba(7,14,28,.96)) !important; border:1px solid rgba(40,167,255,.25) !important; }
  .sc-cta-inner { flex:1 !important; display:flex !important; flex-direction:column !important; gap:5px !important; padding:9px 11px !important; min-height:0 !important; }
  .cta-pretitle { font-size:7.5px !important; letter-spacing:.14em !important; text-transform:uppercase !important; color:#28a7ff !important; display:block !important; position:static !important; flex-shrink:0 !important; margin:0 !important; }
  .sc-cta-inner h3 { font-size:clamp(13px,1.4vw,19px) !important; color:#fff !important; line-height:1.05 !important; font-family:'Cormorant Garamond',Georgia,serif !important; flex-shrink:0 !important; margin:0 !important; }
  .sc-cta-inner h3 em { color:#28a7ff !important; font-style:italic !important; }
  .sc-cta-inner > p { font-size:clamp(8.5px,.78vw,10px) !important; color:rgba(255,255,255,.46) !important; line-height:1.35 !important; display:block !important; flex-shrink:0 !important; margin:0 !important; }
  .sc-cta-hours { display:flex !important; flex-wrap:wrap !important; gap:3px !important; flex-shrink:0 !important; }
  .sc-cta-hours span { font-size:7.5px !important; color:rgba(40,167,255,.76) !important; background:rgba(40,167,255,.06) !important; border:1px solid rgba(40,167,255,.12) !important; border-radius:4px !important; padding:1px 5px !important; }
  .sc-cta-inner .btn { margin-top:auto !important; padding:7px 12px !important; font-size:10px !important; border-radius:7px !important; display:inline-flex !important; width:fit-content !important; flex-shrink:0 !important; }

  /* ─── PROCESSUS ─── */
  #processus.section.fullpage-slide { gap:0 !important; }
  .process-steps { flex:1 !important; min-height:0 !important; display:grid !important; grid-template-columns:repeat(4,1fr) !important; grid-template-rows:1fr !important; gap:8px !important; padding-bottom:5px !important; }
  .process-step { height:100% !important; min-height:0 !important; box-sizing:border-box !important; padding:13px 12px !important; display:flex !important; flex-direction:column !important; overflow:hidden !important; border-radius:13px !important; }
  .step-num { font-size:clamp(1.3rem,2.3vw,2.4rem) !important; margin-bottom:7px !important; line-height:1 !important; flex-shrink:0 !important; }
  .step-body { flex:1 !important; min-height:0 !important; overflow:hidden !important; }
  .step-body h3 { font-size:clamp(11px,1.05vw,14px) !important; margin-bottom:5px !important; line-height:1.2 !important; }
  .step-body p { font-size:clamp(9.5px,.9vw,12px) !important; line-height:1.5 !important; }

  /* ─── POURQUOI ─── */
  #pourquoi.section.fullpage-slide { justify-content:center !important; }
  .why-inner { flex:1 !important; display:grid !important; grid-template-columns:1fr 1fr !important; gap:44px !important; align-items:center !important; min-height:0 !important; padding:5px 0 !important; }
  .why-left { display:flex !important; flex-direction:column !important; gap:10px !important; }
  .why-left h2 { font-size:clamp(1.2rem,2.3vw,2.5rem) !important; line-height:1.15 !important; }
  .why-left .btn-gold { display:inline-flex !important; padding:10px 22px !important; background:var(--gold,#C9A96E) !important; color:#0a0a0a !important; font-size:12.5px !important; font-weight:600 !important; border-radius:9px !important; opacity:1 !important; visibility:visible !important; border:none !important; width:fit-content !important; }
  .why-right { display:flex !important; flex-direction:column !important; gap:7px !important; }
  .why-item { padding:10px 13px !important; border-radius:11px !important; gap:11px !important; display:flex !important; align-items:flex-start !important; }
  .why-icon { width:32px !important; height:32px !important; flex-shrink:0 !important; border-radius:8px !important; }
  .why-item h4 { font-size:12.5px !important; margin-bottom:2px !important; }
  .why-item p { font-size:11px !important; line-height:1.5 !important; }

  /* ─── TÉMOIGNAGES ─── */
  #temoignages.section.fullpage-slide { gap:0 !important; }
  .temoignages-grid { flex:1 !important; min-height:0 !important; display:grid !important; grid-template-columns:repeat(3,1fr) !important; grid-auto-rows:minmax(190px,auto) !important; gap:14px !important; padding-bottom:5px !important; overflow-y:auto !important; }
  .temoignage { height:100% !important; min-height:0 !important; box-sizing:border-box !important; padding:20px !important; display:flex !important; flex-direction:column !important; border-radius:16px !important; overflow:hidden !important; }
  .temoignage-stars { flex-shrink:0 !important; margin-bottom:6px !important; }
  .temoignage > div { flex:1 !important; min-height:0 !important; display:flex !important; flex-direction:column !important; }
  .temoignage p { font-size:clamp(13px,1.15vw,16px) !important; line-height:1.5 !important; flex:1 !important; overflow:hidden !important; display:-webkit-box !important; -webkit-line-clamp:5 !important; -webkit-box-orient:vertical !important; margin:0 !important; }
  .temoignage footer { flex-shrink:0 !important; margin-top:10px !important; padding-top:10px !important; border-top:1px solid rgba(255,255,255,.07) !important; display:flex !important; align-items:center !important; gap:10px !important; }
  .temoignage-avatar { width:36px !important; height:36px !important; font-size:11px !important; flex-shrink:0 !important; }
  .temoignage cite { font-size:13px !important; font-weight:600 !important; display:block !important; }
  .temoignage footer span { font-size:10.5px !important; }

  /* ─── CONTACT ─── */
  #contact.contact-section.fullpage-slide { gap:0 !important; }
  .contact-inner { flex:1 !important; min-height:0 !important; display:grid !important; grid-template-columns:1fr 1fr !important; gap:24px !important; padding:5px 0 !important; align-items:start !important; overflow:hidden !important; }
  .contact-intro-card { padding:16px !important; border-radius:13px !important; }
  .contact-intro-card h2 { font-size:clamp(1.1rem,2.1vw,2rem) !important; line-height:1.2 !important; margin-bottom:7px !important; }
  .contact-channels { gap:6px !important; margin-top:7px !important; }
  .channel { padding:8px 11px !important; border-radius:9px !important; }
  .channel-icon { width:30px !important; height:30px !important; }
  .contact-form { gap:8px !important; }
  .form-group input,.form-group select { padding:8px 11px !important; font-size:12px !important; border-radius:9px !important; }
  .form-group textarea { padding:8px 11px !important; font-size:12px !important; border-radius:9px !important; min-height:62px !important; max-height:78px !important; }
  .btn-full { padding:11px !important; font-size:13px !important; }

  /* ─── FOOTER ─── */
  footer.fullpage-slide { display:flex !important; flex-direction:column !important; justify-content:center !important; padding:0 !important; }

} /* fin desktop */

/* ═══════════════════════════
   HERO TEXTE
═══════════════════════════ */
.hn-content { display:flex !important; flex-direction:column !important; gap:14px !important; }
.hn-h1-line1 { font-size:clamp(1.5rem,2.8vw,3.8rem) !important; color:#fff !important; }
.hn-h1-line2 { font-size:clamp(2.6rem,5.2vw,6.8rem) !important; }
.hn-h1-line3 { font-size:clamp(1.5rem,2.8vw,3.8rem) !important; color:#fff !important; font-weight:700 !important; }
.hn-sub { color:rgba(255,255,255,.7) !important; font-size:clamp(.8rem,.98vw,.96rem) !important; }
.hn-badge { color:rgba(255,255,255,.84) !important; background:rgba(255,255,255,.07) !important; border-color:rgba(255,255,255,.18) !important; }
.hn-mini-stats { background:rgba(255,255,255,.06) !important; border-color:rgba(255,255,255,.1) !important; padding:9px 12px !important; }
.hn-mini-stat { padding:0 12px !important; }
.hn-mini-stat strong { color:#fff !important; font-size:15px !important; }
.hn-mini-stat span { color:rgba(255,255,255,.44) !important; font-size:7.5px !important; }
.hn-mini-sep { background:rgba(255,255,255,.12) !important; height:20px !important; }
.hn-ctas { gap:9px !important; }
.hn-cta-primary,.hn-cta-wa { padding:10px 18px !important; font-size:13px !important; }
.hn-card { padding:14px !important; gap:9px !important; border-radius:13px !important; overflow-y:auto !important; scrollbar-width:none !important; }
.hn-card::-webkit-scrollbar { display:none !important; }
.hn-card-title { display:none !important; }
.hn-card-contacts { gap:5px !important; }
.hn-card-contact { padding:7px 9px !important; gap:8px !important; }
.hn-card-ci { width:24px !important; height:24px !important; }
.hn-cl { font-size:7px !important; }
.hn-cv { font-size:11.5px !important; }
.hn-card-cta { padding:9px !important; font-size:11.5px !important; }
.hn-card-promo-strip { font-size:8.5px !important; }

/* ═══════════════════════════
   SECTION NAME + SIDENAV
═══════════════════════════ */
.section-name-overlay { z-index:160 !important; bottom:24px !important; }
#sideNav { z-index:160 !important; }

/* ═══════════════════════════
   FLOATER + BOUTON WA
═══════════════════════════ */
.wa-sticky { display:none !important; }
.aera-floater { position:fixed !important; bottom:0 !important; left:0 !important; right:0 !important; top:auto !important; border-radius:20px 20px 0 0 !important; padding:0 !important; flex-direction:column !important; gap:0 !important; background:rgba(4,17,31,.97) !important; border:none !important; border-top:1px solid rgba(40,167,255,.2) !important; box-shadow:0 -16px 48px rgba(4,17,31,.55) !important; transform:translateY(100%) !important; transition:transform .42s cubic-bezier(.4,0,.2,1) !important; opacity:1 !important; visibility:visible !important; max-height:88vh !important; overflow-y:auto !important; z-index:300 !important; }
.aera-floater.is-visible { transform:translateY(0) !important; }
.af-header { padding:16px 5% 12px; border-bottom:1px solid rgba(40,167,255,.1); display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.af-logo-row { display:flex; align-items:center; gap:10px; }
.af-logo-img { width:36px; height:36px; border-radius:50%; object-fit:cover; object-position:65% 20%; border:1.5px solid rgba(40,167,255,.3); }
.af-brand { font-family:'Cormorant Garamond',Georgia,serif; font-size:17px; font-weight:600; color:#fff; }
.af-brand em { font-style:italic; color:#28a7ff; }
.af-status { display:flex; align-items:center; gap:5px; font-size:11px; color:rgba(243,248,255,.42); margin-top:2px; }
.af-dot { width:7px; height:7px; border-radius:50%; background:#22c55e; flex-shrink:0; animation:dot-pulse 2s ease-in-out infinite; }
@keyframes dot-pulse { 0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.4)} 50%{box-shadow:0 0 0 5px rgba(34,197,94,0)} }
.af-tagline { font-size:11px; color:rgba(243,248,255,.28); }
.af-body { display:grid; grid-template-columns:repeat(3,1fr); }
.af-col { padding:14px 5%; border-right:1px solid rgba(40,167,255,.07); }
.af-col:last-child { border-right:none; }
.af-col-title { font-size:9px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:rgba(40,167,255,.62); margin-bottom:10px; padding-bottom:6px; border-bottom:1px solid rgba(40,167,255,.08); }
.af-nav { display:flex; flex-direction:column; gap:8px; }
.af-link { font-size:13px; color:rgba(243,248,255,.54); transition:color .2s,transform .2s; display:block; }
.af-link:hover { color:#fff; transform:translateX(4px); }
.af-contacts { display:flex; flex-direction:column; gap:8px; }
.af-contact-row { display:flex; align-items:center; gap:9px; font-size:12.5px; color:rgba(243,248,255,.54); transition:color .2s; }
.af-contact-row:hover { color:#fff; }
.af-wa-row { color:rgba(74,222,128,.74) !important; }
.af-ci { width:25px; height:25px; border-radius:6px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.af-ci-blue { background:rgba(26,86,219,.14); color:#60a5fa; }
.af-ci-green { background:rgba(34,197,94,.14); color:#4ade80; }
.af-services-tags { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:10px; }
.af-tag { background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); border-radius:5px; padding:3px 8px; font-size:11px; color:rgba(243,248,255,.58); cursor:default; }
.af-promo { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.af-promo-badge { background:rgba(40,167,255,.1); border:1px solid rgba(40,167,255,.22); color:#28a7ff; font-size:9px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; padding:3px 8px; border-radius:99px; }
.af-promo-text { font-size:11px; color:rgba(243,248,255,.28); }
.af-footer { display:flex; align-items:center; justify-content:space-between; padding:11px 5%; border-top:1px solid rgba(40,167,255,.08); flex-wrap:wrap; gap:11px; }
.af-cta { display:inline-flex; align-items:center; background:#1a56db; color:#fff; font-size:13px; font-weight:700; padding:9px 18px; border-radius:8px; transition:all .22s ease; }
.af-cta:hover { background:#1648c8; transform:translateY(-1px); }
.af-copy { font-size:10px; color:rgba(243,248,255,.16); }
.af-toggle { position:fixed; bottom:22px; right:22px; z-index:301; width:52px; height:52px; border-radius:50% !important; background:linear-gradient(135deg,#2ddd72,#1fa855); color:#fff; border:none; cursor:pointer; display:flex; align-items:center; justify-content:center; box-shadow:0 8px 24px rgba(37,211,102,.34); transition:all .3s cubic-bezier(.34,1.56,.64,1); opacity:0; visibility:hidden; pointer-events:none; }
.af-toggle.is-visible { opacity:1; visibility:visible; pointer-events:auto; }
.af-toggle.hide-wa { opacity:0 !important; visibility:hidden !important; pointer-events:none !important; transform:scale(.8) !important; }
.af-toggle:hover { transform:scale(1.1); }
.af-toggle.open { background:rgba(4,20,44,.92) !important; border:1.5px solid rgba(40,167,255,.3) !important; }
.af-toggle::before { content:''; position:absolute; inset:0; border-radius:50%; border:2px solid rgba(37,211,102,.36); animation:wa-pulse 2.5s ease-out infinite; pointer-events:none; }
@keyframes wa-pulse { 0%{transform:scale(.9);opacity:.6} 70%{transform:scale(1.4);opacity:0} 100%{transform:scale(1.4);opacity:0} }

/* ═══════════════════════════
   FOOTER
═══════════════════════════ */
.footer-studio { background:var(--black) !important; padding:0 !important; border-top:1px solid rgba(40,167,255,.12) !important; position:relative !important; height:100% !important; display:flex !important; flex-direction:column !important; justify-content:center !important; overflow:hidden !important; }
.footer-studio::before { content:''; position:absolute; inset:0; background-image:radial-gradient(1px 1px at 12% 22%,rgba(40,167,255,.34) 0%,transparent 100%),radial-gradient(1px 1px at 38% 65%,rgba(40,167,255,.24) 0%,transparent 100%),radial-gradient(1.5px 1.5px at 58% 18%,rgba(40,167,255,.3) 0%,transparent 100%),radial-gradient(1px 1px at 76% 80%,rgba(40,167,255,.2) 0%,transparent 100%),radial-gradient(1px 1px at 90% 42%,rgba(40,167,255,.32) 0%,transparent 100%); pointer-events:none; z-index:0; }
.footer-studio-inner { position:relative; z-index:1; max-width:1280px; margin:0 auto; padding:0 5%; width:100%; box-sizing:border-box; }
.fs-top { display:grid; grid-template-columns:1.2fr .85fr 1fr 1fr; gap:32px; padding:24px 0 18px; border-bottom:1px solid rgba(40,167,255,.08); }
.fs-brand-block { display:flex; flex-direction:column; gap:9px; }
.fs-logo { font-family:'Cormorant Garamond',Georgia,serif; font-size:18px; font-weight:600; color:var(--cream); }
.fs-logo em { font-style:italic; color:var(--blue); }
.fs-desc { font-size:11px; color:rgba(243,248,255,.34); line-height:1.65; }
.fs-available { display:inline-flex; align-items:center; gap:6px; background:rgba(34,197,94,.07); border:1px solid rgba(34,197,94,.16); border-radius:99px; padding:4px 10px; font-size:10px; color:#4ade80; width:fit-content; }
.fs-dot { width:6px; height:6px; border-radius:50%; background:#22c55e; animation:dot-pulse 2s ease-in-out infinite; }
.fs-socials { display:flex; gap:7px; }
.fs-social { width:28px; height:28px; border-radius:7px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.07); display:flex; align-items:center; justify-content:center; color:rgba(243,248,255,.36); transition:all .2s; }
.fs-social:hover { background:rgba(40,167,255,.08); border-color:rgba(40,167,255,.2); color:var(--cream); }
.fs-social-wa:hover { background:rgba(34,197,94,.08); border-color:rgba(34,197,94,.2); color:#4ade80; }
.fs-col { display:flex; flex-direction:column; gap:10px; }
.fs-col-title { font-size:8.5px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:rgba(40,167,255,.56); padding-bottom:6px; border-bottom:1px solid rgba(40,167,255,.08); }
.fs-nav { display:flex; flex-direction:column; gap:6px; }
.fs-link { font-size:12px; color:rgba(243,248,255,.42); transition:color .2s,transform .2s; display:block; }
.fs-link:hover { color:#fff; transform:translateX(4px); }
.fs-contacts { display:flex; flex-direction:column; gap:7px; }
.fs-contact { display:flex; align-items:center; gap:8px; font-size:11.5px; color:rgba(243,248,255,.42); transition:color .2s; }
.fs-contact svg { flex-shrink:0; opacity:.36; }
.fs-contact:hover { color:var(--cream); }
.fs-contact-wa { color:rgba(74,222,128,.55); }
.fs-contact-wa:hover { color:#4ade80; }
.fs-contact-loc { cursor:default; }
.fs-services { display:flex; flex-direction:column; gap:4px; }
.fs-tag { font-size:11px; color:rgba(243,248,255,.42); padding:2px 0; border-bottom:1px solid rgba(255,255,255,.04); }
.fs-tag:last-child { border-bottom:none; }
.fs-legal { display:flex; flex-direction:column; gap:4px; padding-top:7px; border-top:1px solid rgba(255,255,255,.04); }
.fs-legal a { font-size:9.5px; color:rgba(243,248,255,.2); transition:color .2s; }
.fs-legal a:hover { color:rgba(243,248,255,.52); }
.fs-bottom { display:flex; align-items:center; justify-content:space-between; padding:10px 0; flex-wrap:wrap; gap:7px; }
.fs-bottom span,.fs-bottom a { font-size:10px; color:rgba(243,248,255,.17); letter-spacing:.03em; }
.fs-bottom a:hover { color:rgba(243,248,255,.46); }
.fs-back-top { color:rgba(40,167,255,.32) !important; cursor:pointer; }
.fs-back-top:hover { color:var(--blue) !important; }
footer * { animation:none !important; }

/* ═══════════════════════════
   MOBILE — scroll classique
═══════════════════════════ */
@media (max-width: 768px) {
  .hn-inner { grid-template-columns:1fr !important; height:auto !important; padding:calc(var(--header-h)+12px) 5% 18px !important; }
  .hn-card { order:-1 !important; }
  .hn-h1-line1,.hn-h1-line3 { font-size:1.9rem !important; color:#fff !important; }
  .hn-h1-line2 { font-size:3.4rem !important; }
  .hn-ctas { flex-direction:column !important; }
  .hn-cta-primary,.hn-cta-wa { width:100% !important; justify-content:center !important; }
  .services-grid { grid-template-columns:1fr !important; height:auto !important; }
  .process-steps { grid-template-columns:1fr 1fr !important; height:auto !important; }
  .why-inner { grid-template-columns:1fr !important; height:auto !important; }
  .temoignages-grid { grid-template-columns:1fr !important; height:auto !important; }
  .contact-inner { grid-template-columns:1fr !important; height:auto !important; }
  .trust-stats { display:grid !important; grid-template-columns:1fr 1fr !important; }
  .trust-divider { display:none !important; }
  .fs-top { grid-template-columns:1fr !important; }
  .af-body { grid-template-columns:1fr !important; }
  .af-col { border-right:none !important; border-bottom:1px solid rgba(40,167,255,.07) !important; }
  .side-nav,.section-name-overlay { display:none !important; }
}

/* ═══════════════════════════════════════════
   PATCH — Espace entre description et liste
═══════════════════════════════════════════ */

/* Supprimer TOUT espace entre sc-desc et sc-list */
.sc-content {
  gap: 0 !important;
}

.sc-num {
  margin-bottom: 4px !important;
}

.sc-title {
  margin-bottom: 3px !important;
}

.sc-desc {
  margin-bottom: 5px !important;
  padding-bottom: 0 !important;
}

.sc-list {
  margin-top: 0 !important;
  padding-top: 0 !important;
  gap: 2px !important;
}

/* Idem pour les cartes classiques sans photo */
.service-card:not(.sc-photo) .service-icon-wrap {
  margin-bottom: 6px !important;
}

.service-card:not(.sc-photo) h3 {
  margin-bottom: 3px !important;
}

.service-card:not(.sc-photo) > p {
  margin-bottom: 5px !important;
  margin-top: 0 !important;
  padding: 0 !important;
}

.service-card:not(.sc-photo) .service-list {
  margin-top: 0 !important;
  gap: 2px !important;
}

/* ═══════════════════════════════════════════
   FIX DÉFINITIF — espace desc→liste
   Le style.css original met margin-bottom:22px
   sur .service-card p et margin-top:auto sur
   .service-list — on écrase tout
═══════════════════════════════════════════ */

/* Reset complet de la carte service */
.service-card p {
  margin-bottom: 4px !important;
  margin-top: 0 !important;
  padding: 0 !important;
}

.service-list {
  margin-top: 4px !important;  /* petit espace seulement */
  margin-bottom: 0 !important;
  padding: 0 !important;
}

/* Reset pour les cartes avec photo */
.sc-desc {
  margin: 0 0 3px 0 !important;
  padding: 0 !important;
}

.sc-list {
  margin: 0 !important;
  padding: 0 !important;
}

/* Reset service-num margin */
.service-num {
  margin-bottom: 6px !important;
}

/* Reset h3 margin */
.service-card h3 {
  margin-bottom: 4px !important;
  margin-top: 0 !important;
}

/* Reset service-icon-wrap */
.service-icon-wrap {
  margin-bottom: 6px !important;
}

/* ════════════════════════════════════════════════════
   FIX SCROLL — cause réelle du blocage :
   les conteneurs internes (.services-grid, .why-inner,
   .temoignages-grid, .contact-inner, .process-track,
   .footer-inner) sont ceux qui doivent scroller si leur
   contenu dépasse l'espace disponible — PAS la section
   .fullpage-slide elle-même (qui reste overflow:hidden,
   c'est un cadre fixe). Ce bloc d'overrides précédent
   imposait overflow:hidden / pas d'overflow sur ces
   conteneurs, ce qui rendait tout contenu débordant
   invisible et totalement inaccessible, sans scroll
   possible nulle part. On corrige ici en dernière
   position pour gagner la cascade. */
@media (min-width: 769px) {
  .services-grid,
  .process-track,
  .why-inner,
  .temoignages-grid,
  .contact-inner,
  .footer-inner {
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
  }

  /* Scrollbar discrète, cohérente avec le design sombre */
  .services-grid::-webkit-scrollbar,
  .process-track::-webkit-scrollbar,
  .why-inner::-webkit-scrollbar,
  .temoignages-grid::-webkit-scrollbar,
  .contact-inner::-webkit-scrollbar,
  .footer-inner::-webkit-scrollbar { width: 6px; }

  .services-grid::-webkit-scrollbar-track,
  .process-track::-webkit-scrollbar-track,
  .why-inner::-webkit-scrollbar-track,
  .temoignages-grid::-webkit-scrollbar-track,
  .contact-inner::-webkit-scrollbar-track,
  .footer-inner::-webkit-scrollbar-track { background: transparent; }

  .services-grid::-webkit-scrollbar-thumb,
  .process-track::-webkit-scrollbar-thumb,
  .why-inner::-webkit-scrollbar-thumb,
  .temoignages-grid::-webkit-scrollbar-thumb,
  .contact-inner::-webkit-scrollbar-thumb,
  .footer-inner::-webkit-scrollbar-thumb { background: rgba(40,167,255,.25); border-radius: 3px; }

  .services-grid, .process-track, .why-inner,
  .temoignages-grid, .contact-inner, .footer-inner {
    scrollbar-width: thin;
    scrollbar-color: rgba(40,167,255,.25) transparent;
  }
}
