/* ================= Pages secondaires — design ================= */
.fpage{--accent:#1b9aaa;--accent2:#38c1c9}

/* Barre de navigation haute */
.subnav{background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--bord);position:sticky;top:0;z-index:40}
.subnav .in{max-width:1140px;margin:0 auto;padding:11px 22px;display:flex;align-items:center;gap:12px}
.subnav img{height:42px;width:auto}
.subnav .sp{flex:1}
.btn-back{display:inline-flex;align-items:center;gap:7px;background:var(--grisclair);color:var(--bleufonce);border:1px solid var(--bord);border-radius:30px;padding:9px 16px;font-weight:700;text-decoration:none;font-size:.9rem;transition:.15s}
.btn-back:hover{background:#e6edf2;color:var(--bleu);transform:translateY(-1px)}
.btn-back.ghost{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.4)}
.btn-back.ghost:hover{background:rgba(255,255,255,.24);color:#fff}

/* HERO */
.fhero{position:relative;color:#fff;overflow:hidden;background:linear-gradient(135deg,#062f47 0%,#0a3f5f 45%,var(--accent) 125%)}
.fhero::before{content:"";position:absolute;top:-120px;right:-90px;width:420px;height:420px;border-radius:50%;
  background:radial-gradient(circle at center, var(--accent2), transparent 68%);opacity:.5}
.fhero::after{content:"";position:absolute;left:-60px;bottom:-120px;width:300px;height:300px;border-radius:50%;
  background:radial-gradient(circle at center,#ffffff,transparent 70%);opacity:.06}
.fhero .wm{position:absolute;right:2%;bottom:-30px;width:260px;height:260px;color:#fff;opacity:.10;pointer-events:none;z-index:1}
.fhero .in{position:relative;z-index:2;max-width:1140px;margin:0 auto;padding:40px 22px 76px}
.crumb{font-size:.82rem;opacity:.85;margin-bottom:18px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.crumb a{color:#fff;text-decoration:none;opacity:.9}
.crumb a:hover{text-decoration:underline}
.crumb span{opacity:.6}
.icon-badge{width:62px;height:62px;border-radius:18px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;
  background:linear-gradient(140deg,var(--accent),var(--accent2));box-shadow:0 10px 24px rgba(0,0,0,.25)}
.icon-badge svg{width:34px;height:34px;color:#fff}
.fhero .badge{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.32);padding:6px 15px;border-radius:30px;font-weight:700;font-size:.8rem;letter-spacing:.3px;margin-bottom:14px}
.fhero h1{font-size:2.5rem;line-height:1.08;font-weight:800}
.fhero .full{font-size:1.18rem;opacity:.96;margin-top:8px;font-weight:600;color:#eaf6f8}
.fhero p.lead{margin-top:16px;max-width:730px;opacity:.95;font-size:1.02rem;line-height:1.6}
.fhero .cta{margin-top:26px;display:flex;gap:12px;flex-wrap:wrap}

.wrapc{max-width:1140px;margin:0 auto;padding:0 22px 30px}

/* EN BREF */
.enbref{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:-46px;position:relative;z-index:5}
.eb{background:#fff;border:1px solid var(--bord);border-radius:16px;padding:18px;box-shadow:0 14px 34px rgba(8,76,114,.12);display:flex;gap:13px;align-items:flex-start}
.eb .ei{width:42px;height:42px;border-radius:11px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,var(--accent),var(--accent2))}
.eb .ei svg{width:22px;height:22px;color:#fff}
.eb .k{font-size:.7rem;text-transform:uppercase;letter-spacing:.6px;color:var(--gris);font-weight:800}
.eb .v{color:var(--bleufonce);font-weight:700;margin-top:3px;line-height:1.25}

/* SECTIONS */
.fsec{margin-top:40px}
.fsec > h2{display:flex;align-items:center;gap:11px;color:var(--bleufonce);font-size:1.4rem;font-weight:800;margin-bottom:16px;padding-bottom:10px;position:relative}
.fsec > h2::after{content:"";position:absolute;left:0;bottom:0;width:64px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--accent),var(--accent2))}
.hi{width:40px;height:40px;border-radius:11px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 14%,#fff);border:1px solid color-mix(in srgb,var(--accent) 24%,#fff)}
.hi svg{width:22px;height:22px;color:var(--accent)}
.card-soft h2{display:flex;align-items:center;gap:11px;color:var(--bleufonce);font-size:1.25rem;font-weight:800}
.two{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.card-soft{background:#fff;border:1px solid var(--bord);border-radius:16px;padding:22px 24px;box-shadow:0 8px 22px rgba(8,76,114,.06);height:100%}
.card-soft p{color:var(--txt);line-height:1.6}

/* Ce que tu apprends — grille à puces cochées */
.learn{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.learn .li{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--bord);border-radius:13px;padding:14px 16px;box-shadow:0 6px 16px rgba(8,76,114,.05)}
.learn .ck{width:26px;height:26px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,var(--accent),var(--accent2))}
.learn .ck svg{width:15px;height:15px;color:#fff}
.learn .li span{color:var(--txt);line-height:1.45;font-size:.96rem}

/* Compétences & certifications */
.certs{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cert{display:flex;gap:12px;align-items:center;background:linear-gradient(180deg,#fff,var(--grisclair));border:1px solid var(--bord);border-radius:13px;padding:14px 16px}
.cert .ci{width:34px;height:34px;flex:0 0 auto;display:flex;align-items:center;justify-content:center;border-radius:9px;background:color-mix(in srgb,var(--accent) 15%,#fff)}
.cert .ci svg{width:19px;height:19px;color:var(--accent)}
.cert span{color:var(--bleufonce);font-weight:600;font-size:.95rem}

/* Métiers visés — cartes */
.jobs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.job{background:#fff;border:1px solid var(--bord);border-radius:14px;padding:18px 16px;text-align:center;box-shadow:0 8px 20px rgba(8,76,114,.06);transition:.15s}
.job:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(8,76,114,.12)}
.job .ji{width:46px;height:46px;margin:0 auto 10px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(140deg,var(--accent),var(--accent2))}
.job .ji svg{width:24px;height:24px;color:#fff}
.job span{color:var(--bleufonce);font-weight:700;font-size:.92rem;line-height:1.25}

/* Poursuite d'études */
.next{display:flex;gap:16px;align-items:center;background:linear-gradient(135deg,var(--bleufonce),var(--accent));color:#fff;border-radius:16px;padding:22px 24px;box-shadow:0 14px 34px rgba(8,76,114,.18)}
.next .ni{width:52px;height:52px;flex:0 0 auto;border-radius:14px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center}
.next .ni svg{width:26px;height:26px;color:#fff}
.next p{margin:0;line-height:1.55;font-size:1.02rem}

/* Témoignage */
.tquote{position:relative;background:#fff;border:1px solid var(--bord);border-left:5px solid var(--accent);border-radius:16px;padding:26px 28px 24px;box-shadow:0 10px 26px rgba(8,76,114,.07)}
.tquote .qm{position:absolute;top:8px;right:22px;font-size:4rem;line-height:1;color:var(--accent);opacity:.16;font-family:Georgia,serif}
.tquote .qt{font-style:italic;font-size:1.08rem;color:var(--txt);line-height:1.6}
.tquote .who{display:flex;align-items:center;gap:12px;margin-top:16px}
.tquote .av{width:44px;height:44px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff;background:linear-gradient(140deg,var(--accent),var(--accent2))}
.tquote .who b{color:var(--bleufonce)}

/* Bandeau d'appel à l'action */
.ctaband{margin-top:44px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;border-radius:20px;padding:34px 30px;text-align:center;box-shadow:0 18px 40px rgba(8,76,114,.18)}
.ctaband h3{font-size:1.5rem;font-weight:800}
.ctaband p{opacity:.95;margin:8px auto 18px;max-width:560px}
.ctaband .btn{background:#fff;color:var(--bleufonce)}
.ctaband .btn:hover{background:#f2f6f9}
.ctaband .btn-back{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.4)}

/* ============ Galerie & témoignages ============ */
.gsec{max-width:1140px;margin:0 auto;padding:0 22px}
.gal{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:172px;gap:14px}
.gtile{position:relative;border-radius:16px;overflow:hidden;background-size:cover;background-position:center;display:flex;align-items:flex-end;color:#fff;grid-column:span 1;box-shadow:0 8px 22px rgba(8,76,114,.10)}
.gtile.big{grid-column:span 2;grid-row:span 2}
.gtile::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(4,30,46,.72));transition:.25s}
.gtile:hover::before{background:linear-gradient(transparent 10%,rgba(4,30,46,.8))}
.gtile span{position:relative;z-index:2;padding:16px 18px;font-weight:700;font-size:1rem;text-shadow:0 1px 4px rgba(0,0,0,.4)}
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tcard{position:relative;background:#fff;border:1px solid var(--bord);border-radius:18px;padding:24px 24px 22px;box-shadow:0 10px 26px rgba(8,76,114,.07);border-top:4px solid var(--accent);transition:.15s}
.tcard:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(8,76,114,.14)}
.tcard .stars{color:#f0a52a;font-size:1rem;letter-spacing:2px}
.tcard .qt{font-style:italic;margin:12px 0 16px;color:var(--txt);line-height:1.6}
.tcard .who{display:flex;align-items:center;gap:12px}
.tcard .av{width:46px;height:46px;border-radius:50%;flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-weight:800;color:#fff}
.tcard .who b{color:var(--bleufonce);display:block;line-height:1.15}
.tcard .who small{color:var(--gris)}

/* Pied de page secondaire */
.pfoot{background:var(--bleufonce);color:#cfe0ec;text-align:center;padding:30px 22px;margin-top:50px;font-size:.9rem}
.pfoot a{color:#fff}

@media(max-width:900px){
  .enbref{grid-template-columns:1fr 1fr}
  .two,.learn,.certs{grid-template-columns:1fr}
  .jobs{grid-template-columns:1fr 1fr}
  .gal{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}
  .gtile,.gtile.big{grid-column:span 1;grid-row:span 1}
  .tgrid{grid-template-columns:1fr}
  .fhero h1{font-size:1.8rem}
  .fhero .wm{display:none}
}
