/* ============================================================
   PAGE IA POUR SALLE DE SPORT — styles additionnels (design v3)
   Réutilise au maximum les patterns de he-agence-ia-toulouse-v3.css
   (hero, trust-strip, section-light/sombre/noire, sec-head, map-cta,
    method-steps/mstep, nope-grid, about-cta, go-next…).
   N'ajoute ici que ce qui est propre à la page :
     - héros un peu plus court
     - "le quotidien" : 4 cartes claires
     - "vos outils" : 4 cartes sombres avec badge "à garder" + note
     - "l'IA en plus" : grille de cartes avant/après (1 pleine largeur)
     - "humains" : 3 cartes sombres
     - "honnêteté" : grille nope sur 4 colonnes (section noire)
     - flux "comment on s'y prendrait" : chips reliés (poh-flow)
   Mêmes variables, mêmes codes visuels que la homepage.
   ============================================================ */

/* onglet de nav correspondant à la page courante */
.mega-here > .mega-trigger{color:var(--text)}
.mega-here > .mega-trigger::after{content:"";position:absolute;left:14px;right:14px;bottom:3px;height:2px;border-radius:2px;
  background:var(--accent);opacity:.75}
.mega-here{position:relative}

/* petite classe utilitaire mono (badges) */
.mono{font-family:var(--font-mono)}

/* --- HÉRO salle de sport : un peu plus court --- */
.hero-sport{min-height:auto;padding:150px 0 96px}
.hero-in-sport{align-items:center}
.hero-sport h1{font-size:clamp(2.3rem,5.4vw,4.2rem)}
.hero-sport p.lede{margin-top:26px}

/* ============================================================
   GRILLES DE CARTES — base commune (quotidien / outils / humains)
   ============================================================ */
.sport-grid{display:grid;gap:22px}
.sport-grid-2{grid-template-columns:repeat(2,1fr)}
.sport-grid-3{grid-template-columns:repeat(3,1fr)}
@media(max-width:920px){.sport-grid-2,.sport-grid-3{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.sport-grid-2,.sport-grid-3{grid-template-columns:1fr}}

.sport-card{position:relative;border-radius:var(--radius);padding:32px 28px;overflow:hidden;display:flex;flex-direction:column;
  transition:transform .5s var(--ease),border-color .5s,box-shadow .5s}
.sport-card::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:var(--grad-bright);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
.sport-card:hover::before{transform:scaleX(1)}
.sport-card .sc-ico{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;font-size:1.5rem;margin-bottom:20px;flex:none}
.sport-card h3{font-size:1.18rem;margin-bottom:12px;line-height:1.25}
.sport-card p{font-size:.96rem}

/* variante CLAIRE (sur section-light) */
.sport-card-light{background:var(--light-surface);border:1px solid var(--light-line);box-shadow:0 18px 40px -30px rgba(15,27,45,.4)}
.sport-card-light:hover{transform:translateY(-6px);border-color:var(--light-line-strong);box-shadow:0 36px 64px -34px rgba(15,27,45,.26)}
.sport-card-light .sc-ico{background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(29,78,216,.08));border:1px solid var(--light-line-strong);color:var(--blue-600)}
.sport-card-light h3{color:var(--light-text)}
.sport-card-light p{color:var(--light-dim)}

/* variante SOMBRE (sur fond sombre) */
.sport-card-dark{background:linear-gradient(180deg,var(--surface),var(--ink-700));border:1px solid var(--line)}
.sport-card-dark:hover{transform:translateY(-6px);border-color:var(--line-strong);box-shadow:0 36px 64px -34px rgba(0,0,0,.7)}
.sport-card-dark .sc-ico{background:var(--grad-soft);border:1px solid var(--line-strong);color:var(--blue-300)}
.sport-card-dark h3{color:var(--text)}
.sport-card-dark p{color:var(--text-dim)}

/* badge "à garder" dans les cartes outils */
.sport-card .sc-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.sport-card .sc-top .sc-ico{margin-bottom:0}
.sc-keep{flex:none;font-size:.7rem;letter-spacing:.04em;color:var(--accent);
  border:1px solid rgba(56,189,248,.3);border-radius:999px;padding:5px 12px;margin-top:6px;
  background:rgba(56,189,248,.06)}
.sport-outils .sport-card h3{margin-top:8px}

/* ============================================================
   VOS OUTILS — fond sombre + note d'info
   ============================================================ */
.sport-outils{background:radial-gradient(64% 60% at 22% 0%, rgba(37,99,235,.09),transparent 60%)}
.sport-note{margin-top:30px;display:flex;align-items:flex-start;gap:16px;max-width:780px;margin-inline:auto;
  border-radius:var(--radius);padding:22px 26px;
  background:linear-gradient(135deg,rgba(37,99,235,.10),rgba(29,78,216,.06));border:1px solid var(--line-strong)}
.sport-note i{flex:none;color:var(--accent);font-size:1.25rem;margin-top:2px}
.sport-note p{color:var(--text-dim);font-size:1rem;margin:0}
.sport-note p b{color:var(--text);font-weight:600}

/* ============================================================
   HUMAINS — fond sombre
   ============================================================ */
.sport-humains{background:radial-gradient(60% 70% at 78% 0%,rgba(29,78,216,.08),transparent 60%)}

/* ============================================================
   L'IA EN PLUS — section claire : cartes avant/après
   ============================================================ */
.plus-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.plus-card{position:relative;border-radius:var(--radius);padding:32px 30px;overflow:hidden;
  background:var(--light-surface);border:1px solid var(--light-line);box-shadow:0 18px 40px -30px rgba(15,27,45,.4);
  transition:transform .5s var(--ease),border-color .5s,box-shadow .5s}
.plus-card::before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:var(--grad-bright);transform:scaleX(0);transform-origin:left;transition:transform .55s var(--ease)}
.plus-card:hover{transform:translateY(-6px);border-color:var(--light-line-strong);box-shadow:0 36px 64px -34px rgba(15,27,45,.26)}
.plus-card:hover::before{transform:scaleX(1)}
.plus-card .pc-ico{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;font-size:1.4rem;margin-bottom:18px;
  background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(56,189,248,.08));border:1px solid var(--light-line-strong);color:var(--blue-600)}
.plus-card h3{font-size:1.2rem;margin-bottom:16px;color:var(--light-text);line-height:1.25}
.plus-card .pc-before,.plus-card .pc-after{font-size:.95rem;line-height:1.55;display:block}
.plus-card .pc-before{color:var(--light-mute);margin-bottom:12px}
.plus-card .pc-before b{color:var(--light-dim);font-weight:600}
.plus-card .pc-before i{color:#dc2626;margin-right:5px}
.plus-card .pc-after{color:var(--light-dim);margin:0}
.plus-card .pc-after b{color:var(--blue-600);font-weight:600}
.plus-card .pc-after i{color:#0d9488;margin-right:5px}

/* carte 5 : pleine largeur, avant/après côte à côte */
.plus-card-wide{grid-column:1 / -1}
.plus-card-wide .pc-wide-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
.plus-card-wide .pc-before{margin-bottom:0}
@media(max-width:920px){.plus-grid{grid-template-columns:1fr}.plus-card-wide .pc-wide-grid{grid-template-columns:1fr;gap:12px}}

/* ============================================================
   HONNÊTETÉ — section noire : nope-grid sur 4 colonnes
   ============================================================ */
.nope-grid-4{grid-template-columns:repeat(4,1fr)}
.sport-honnetete .nope-card .nico{background:rgba(220,38,38,.08);border:1px solid rgba(220,38,38,.22);color:#f87171}
.sport-honnetete .nope-card::before{background:linear-gradient(90deg,#f87171,transparent)}
.sport-honnetete .nope-card:hover{border-color:rgba(248,113,113,.3)}
@media(max-width:980px){.nope-grid-4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.nope-grid-4{grid-template-columns:1fr}}

/* ============================================================
   FLUX "COMMENT ON S'Y PRENDRAIT" — chips reliés dans le CTA de fin
   ============================================================ */
.poh-flow{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin:30px auto 4px}
.poh-flow .chip{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:.8rem;color:var(--text-dim);
  background:rgba(14,26,46,.7);border:1px solid var(--line-strong);border-radius:999px;padding:10px 16px}
.poh-flow .chip i{color:var(--accent)}
.poh-flow .flow-arrow{color:var(--blue-300);font-size:1rem}
@media(max-width:620px){.poh-flow .flow-arrow{transform:rotate(90deg)}}

/* ============================================================
   HÉRO personnalisé salle de sport — accent énergie (vert lime)
   (pilote Hanz) — couleur native, lisible sur fond sombre
   ============================================================ */
:root{ --accent:#84CC16; }
.hero-sport #neural-canvas{ filter:hue-rotate(78deg) saturate(1.1); }
.hero-sport .hero-eyebrow{ color:#A3E635; }
.hero-sport .grad-text{ background:linear-gradient(120deg,#A3E635,#65A30D); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero-sport .btn-primary{ background:linear-gradient(120deg,#84CC16,#65A30D); box-shadow:0 10px 34px -10px rgba(132,204,22,.55); }

/* ============================================================
   SCHÉMA DE FLUX salle de sport (héros) — calqué sur fleuriste,
   couleurs natives (pas de hue-rotate)
   ============================================================ */
.flux-salle-sport{ width:100%; height:auto; }
.flux-salle-sport text{ text-anchor:middle; font-family:Inter,system-ui,sans-serif; }
.flux-salle-sport .flux-line{ stroke:rgba(163,230,53,.28); stroke-width:1.4; }
.flux-salle-sport .flux-line.out{ stroke:rgba(101,163,13,.45); stroke-width:1.7; }
.flux-salle-sport .p{ fill:#BEF264; filter:drop-shadow(0 0 3px rgba(190,242,100,.8)); }
.flux-salle-sport .p.out{ fill:#A3E635; }
.flux-salle-sport .fnode circle{ fill:rgba(163,230,53,.12); stroke:rgba(163,230,53,.6); stroke-width:1.4; }
.flux-salle-sport .fnode text{ fill:#d9f99d; font-size:13px; font-weight:600; }
.flux-salle-sport .ia-core{ fill:#84CC16; animation:ssIaPulse 2.8s ease-in-out infinite; transform-box:fill-box; transform-origin:center; }
.flux-salle-sport .ia-label{ fill:#1a2e05; font-size:17px; font-weight:800; }
.flux-salle-sport .ia-sub{ fill:#bef264; font-size:11px; letter-spacing:.04em; text-transform:uppercase; }
.flux-salle-sport .vous{ fill:rgba(101,163,13,.20); stroke:#65A30D; stroke-width:1.7; }
.flux-salle-sport .vous-label{ fill:#fff; font-size:13px; font-weight:700; }
.flux-salle-sport .vous-sub{ fill:#bef264; font-size:11px; }
.flux-salle-sport .ev{ fill:#BEF264; font-size:13px; font-weight:700; opacity:0; letter-spacing:.01em; }
.flux-salle-sport .ev-cap{ fill:#4d7c0f; font-size:10px; font-weight:600; letter-spacing:.16em; text-transform:uppercase; }
@keyframes ssIaPulse{ 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.08); } }
@media (prefers-reduced-motion:reduce){ .flux-salle-sport .ia-core{ animation:none; } }

/* ============================================================
   MINI-SCHÉMA "bascule" (section humains) — l'IA absorbe le
   répétitif, le temps rendu va au plateau. Sobre, fond sombre.
   ============================================================ */
.ss-bascule{margin:38px auto 6px;max-width:760px;padding:0}
.ss-flux-bascule{width:100%;height:auto;display:block}
.ss-flux-bascule text{font-family:Inter,system-ui,sans-serif}
.ss-flux-bascule .ssb-cap{fill:#4d7c0f;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;text-anchor:start}
.ss-flux-bascule .ssb-task circle{fill:rgba(163,230,53,.14);stroke:rgba(163,230,53,.55);stroke-width:1.2}
.ss-flux-bascule .ssb-task text{fill:#d9f99d;font-size:13px;font-weight:600;text-anchor:start}
.ss-flux-bascule .ssb-line{stroke:rgba(163,230,53,.28);stroke-width:1.4}
.ss-flux-bascule .ssb-line.out{stroke:rgba(101,163,13,.45);stroke-width:1.7}
.ss-flux-bascule .ssb-p{fill:#BEF264;filter:drop-shadow(0 0 3px rgba(190,242,100,.8))}
.ss-flux-bascule .ssb-p.out{fill:#A3E635}
.ss-flux-bascule .ssb-core{fill:#84CC16;animation:ssIaPulse 2.8s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.ss-flux-bascule .ssb-core-label{fill:#1a2e05;font-size:13px;font-weight:800;text-anchor:middle}
.ss-flux-bascule .ssb-you circle{fill:rgba(101,163,13,.20);stroke:#65A30D;stroke-width:1.7}
.ss-flux-bascule .ssb-you-label{fill:#fff;font-size:13px;font-weight:700;text-anchor:middle}
.ss-flux-bascule .ssb-you-sub{fill:#bef264;font-size:11px;font-weight:600;text-anchor:middle}
@media (prefers-reduced-motion:reduce){ .ss-flux-bascule .ssb-core{ animation:none; } }
