/* Échecs360 — landing page (design « coach IA », intégré depuis la maquette).
   Le gros du style est inline dans le HTML (export fidèle de la maquette) ;
   ce fichier porte les fonts, les utilitaires, l'accordéon FAQ et le responsive. */

/* Police Sora (auto-hébergée, extraite de la maquette) */
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('/fonts/sora-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20AC; }
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 400; font-display: swap;
  src: url('/fonts/sora-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+1E00-1E9F, U+20A0-20C0; }
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('/fonts/sora-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20AC; }
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 600; font-display: swap;
  src: url('/fonts/sora-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+1E00-1E9F, U+20A0-20C0; }
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('/fonts/sora-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20AC; }
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 700; font-display: swap;
  src: url('/fonts/sora-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+1E00-1E9F, U+20A0-20C0; }
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 800; font-display: swap;
  src: url('/fonts/sora-latin.woff2') format('woff2'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20AC; }
@font-face { font-family: 'Sora'; font-style: normal; font-weight: 800; font-display: swap;
  src: url('/fonts/sora-latin-ext.woff2') format('woff2'); unicode-range: U+0100-02BA, U+1E00-1E9F, U+20A0-20C0; }

/* Global */
html { scroll-behavior: smooth; }
body { margin: 0; background: #fbf9f4; }
a { color: #2e7d5b; }
a:hover { color: #226045; }
h2[id] { scroll-margin-top: 24px; }

/* Utilitaires de la maquette */
.fx{display:flex}.col{display:flex;flex-direction:column}.grid{display:grid}
.ac{align-items:center}.jc{justify-content:center}.jb{justify-content:space-between}
.f1{flex:1}.noshrink{flex-shrink:0}.wrap{flex-wrap:wrap}
.fw5{font-weight:500}.fw6{font-weight:600}.fw7{font-weight:700}.fw8{font-weight:800}
.fs11{font-size:11px}.fs12{font-size:12px}.fs13{font-size:13px}.fs14{font-size:14px}
.fs15{font-size:15px}.fs16{font-size:16px}.fs20{font-size:20px}.fs22{font-size:22px}
.upper{text-transform:uppercase}.tc{text-align:center}.nowrap{white-space:nowrap}
.gap8{gap:8px}.gap10{gap:10px}.gap12{gap:12px}.gap16{gap:16px}.gap24{gap:24px}
.m0{margin:0}.mt8{margin-top:8px}.mt12{margin-top:12px}.mt16{margin-top:16px}
.mb8{margin-bottom:8px}.mb12{margin-bottom:12px}.mb16{margin-bottom:16px}
.posrel{position:relative}.posabs{position:absolute}.round{border-radius:50%}
.ohide{overflow:hidden}.bbox{box-sizing:border-box}.pointer{cursor:pointer}
.w100{width:100%}.b0{border:none}

/* Accordéon FAQ (replié par JS ; tout reste visible sans JavaScript) */
.faq-card [data-faq-answer] { transition: none; }

/* Responsive : la maquette est calée sur desktop (paddings 56px, grilles fixes) */
@media (max-width: 960px) {
  [style*="padding: 0px 56px"], [style*="padding: 20px 56px"], [style*="padding: 26px 56px"],
  [style*="padding: 32px 56px"], [style*="padding: 64px 56px"], [style*="padding: 72px 56px"],
  [style*="padding: 80px 56px"] {
    padding-left: 22px !important; padding-right: 22px !important;
  }
  [style*="padding: 64px 40px 72px"] { padding: 36px 22px 48px !important; } /* hero */
  [style*="grid-template-columns: repeat(3, 1fr)"] { grid-template-columns: 1fr !important; }
  [style*="grid-template-columns: 0.85fr 1.15fr"] { grid-template-columns: 1fr !important; }
  [style*="grid-template-columns: 1fr 1fr"] { grid-template-columns: 1fr !important; } /* fonctionnalités */
  [style*="grid-template-columns: 1.4fr 1fr 1fr 1fr"] { grid-template-columns: 1fr 1fr !important; }
  [style*="font-size: 52px"] { font-size: 34px !important; }
  .nav-center { display: none !important; }
}

/* Téléphones : titres resserrés, carte CTA et bandeau stats compacts */
@media (max-width: 560px) {
  [style*="font-size: 52px"] { font-size: 29px !important; }
  [style*="font-size: 36px"] { font-size: 25px !important; }
  [style*="font-size: 34px"] { font-size: 24px !important; }
  [style*="font-size: 30px"] { font-size: 22px !important; }
  [style*="border-radius: 24px"] { padding: 32px 22px !important; }       /* carte CTA finale */
  [style*="gap: 48px"] { gap: 10px 14px !important; }                     /* bandeau chiffres */
  [style*="grid-template-columns: 1.4fr 1fr 1fr 1fr"] { grid-template-columns: 1fr !important; }
  [style*="padding: 20px 56px"] { padding-top: 12px !important; padding-bottom: 12px !important; }
}
