*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#0C2340;--navy-2:#1A3A5C;--navy-3:#0A1D36;
  --blue:#185FA5;--blue-2:#2B7DD4;--blue-mid:#B5D4F4;
  --blue-light:#E8F2FC;--blue-faint:#F0F6FD;--blue-baby:#DCEBF8;
  --gray-bg:#F7F9FC;--gray-line:#E2EAF3;--gray-text:#7A90A8;--gray-soft:#9DAEC2;
  --white:#FFFFFF;--ink:#0F1C2E;
  --gold:#B8890A;--gold-light:#FDF8EC;--gold-soft:#E8D090;
}
html{scroll-behavior:smooth}
body{font-family:'Jost',sans-serif;font-weight:300;background:var(--white);color:var(--ink);font-size:14px;line-height:1.6;min-width:680px}

/* ═══ BASE IDENTIQUE AU FICHIER RECRUTEURS ═══ */
.topbar{background:var(--navy-3);padding:0 40px;height:32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,0.05)}
.tb-meta{font-size:10px;color:rgba(255,255,255,0.45);letter-spacing:0.04em}
.tb-meta strong{color:rgba(255,255,255,0.7);font-weight:400}
.tb-right{display:flex;gap:16px;align-items:center}
.tb-link{font-size:10px;color:rgba(255,255,255,0.45);letter-spacing:0.06em;text-transform:uppercase;cursor:pointer}
.tb-link:hover{color:var(--blue-mid)}
.tb-sep{width:1px;height:10px;background:rgba(255,255,255,0.1)}

.nav-top{background:var(--white);padding:16px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--gray-line)}
.logo{display:flex;align-items:center;gap:12px;cursor:pointer;text-decoration:none}
.logo-mark{width:40px;height:40px;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.logo-text .name{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;color:var(--navy);display:block;line-height:1}
.logo-text .tagline{font-size:8.5px;letter-spacing:0.22em;text-transform:uppercase;color:var(--blue);display:block;margin-top:2px;font-weight:400}
.nav-actions{display:flex;gap:10px}
.btn-space{display:flex;align-items:center;gap:9px;background:transparent;border:1px solid var(--gray-line);padding:9px 18px;font-family:'Jost',sans-serif;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;font-weight:500;color:var(--navy);transition:all .15s}
.btn-space:hover{border-color:var(--navy);background:var(--blue-faint)}
.btn-space svg{width:14px;height:14px;stroke:var(--blue);fill:none;stroke-width:1.5}
.btn-space.primary{background:var(--blue);color:var(--white);border-color:var(--blue)}
.btn-space.primary svg{stroke:var(--white)}
.btn-space.primary:hover{background:var(--navy);border-color:var(--navy)}

.nav-menu-bar{background:var(--blue-baby);border-bottom:1px solid var(--blue-mid)}
.nav-menu{display:flex;width:100%;padding:0}
.nav-item{flex:1;position:relative}
.nav-link{font-size:11.5px;color:var(--navy);padding:14px 12px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;justify-content:center;height:48px;transition:all .15s;text-align:center;border-left:1px solid rgba(24,95,165,0.15);position:relative;text-decoration:none}
.nav-item:last-child .nav-link{border-right:1px solid rgba(24,95,165,0.15)}
.nav-link:hover{background:rgba(255,255,255,0.5);color:var(--blue)}
.nav-link.active{color:var(--blue);font-weight:600}
.nav-link.active::after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--blue)}

/* ═══ HERO — identique structure ═══ */
.hero-candidates{background:var(--navy);position:relative;overflow:hidden;padding:48px 40px 52px;text-align:center}
.hero-candidates::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 30%,rgba(24,95,165,0.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 70%,rgba(184,137,10,0.06) 0%,transparent 50%)}
.hc-inner{position:relative;z-index:2;max-width:880px;margin:0 auto}
.hc-kicker{display:inline-flex;align-items:center;gap:14px;margin-bottom:18px;font-size:10px;letter-spacing:0.32em;text-transform:uppercase;color:var(--blue-mid);font-weight:400}
.hc-kicker::before,.hc-kicker::after{content:'';width:30px;height:1px;background:var(--blue-mid)}
.hc-h1{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:400;color:var(--white);line-height:1.1;letter-spacing:-0.015em;margin-bottom:16px}
.hc-h1 em{font-style:italic;color:var(--blue-mid)}
.hc-h1 strong{font-weight:600}
.hc-p{font-size:13px;color:rgba(255,255,255,0.62);font-weight:300;line-height:1.7;max-width:660px;margin:0 auto}
.hc-p strong{color:rgba(255,255,255,0.9);font-weight:500}

/* ═══ JE SOUHAITE — miroir des options recruteurs ═══ */
.options-wrap{background:#FAFBFD;padding:56px 40px 40px;position:relative;overflow:hidden}
.options-wrap::before{content:'';position:absolute;top:0;left:50%;width:1px;height:40px;background:linear-gradient(to bottom,transparent,var(--gold-soft),transparent);transform:translateX(-50%)}
.options-header{text-align:center;margin-bottom:36px;position:relative}
.options-eyebrow-big{font-family:'Jost',sans-serif;font-size:14px;letter-spacing:0.42em;text-transform:uppercase;color:var(--navy);font-weight:600;display:inline-flex;align-items:center;gap:18px}
.options-eyebrow-big::before,.options-eyebrow-big::after{content:'';width:48px;height:1px;background:var(--gold-soft)}

.options-bar{background:var(--white);position:sticky;top:0;z-index:90;box-shadow:0 4px 24px rgba(12,35,64,0.08);border-top:1px solid var(--gray-line);border-bottom:1px solid var(--gray-line);max-width:1400px;margin:0 auto}
.options-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:0;background:var(--white)}
.option-btn{background:transparent;border:none;border-right:1px solid var(--gray-line);padding:30px 18px;display:flex;flex-direction:column;align-items:center;gap:14px;cursor:pointer;font-family:'Jost',sans-serif;transition:all .22s;position:relative;text-decoration:none}
.option-btn:last-child{border-right:none}
.option-btn::before{content:'';position:absolute;bottom:0;left:50%;width:0;height:3px;background:var(--blue);transform:translateX(-50%);transition:width .25s}
.option-btn:hover{background:var(--blue-faint)}
.option-btn:hover::before{width:100%}
.option-btn:hover .option-num{color:var(--blue);transform:scale(1.08)}
.option-btn:hover .option-icon{background:var(--blue);border-color:var(--blue)}
.option-btn:hover .option-icon svg{stroke:var(--white)}
.option-btn:hover .option-label{color:var(--blue)}
.option-num{font-family:'Cormorant Garamond',serif;font-size:30px;font-style:italic;color:var(--blue);font-weight:600;line-height:1;transition:all .22s}
.option-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--blue-light);border:1.5px solid var(--blue-mid);border-radius:50%;transition:all .22s}
.option-icon svg{width:22px;height:22px;stroke:var(--blue);fill:none;stroke-width:1.6;transition:stroke .22s}
.option-label{font-family:'Jost',sans-serif;font-size:13px;letter-spacing:0.18em;text-transform:uppercase;color:var(--navy);font-weight:700;line-height:1.35;text-align:center;transition:color .22s}
.pass-opt .option-num{color:var(--gold)}
.pass-opt .option-icon{background:var(--gold-light);border-color:var(--gold-soft)}
.pass-opt .option-icon svg{stroke:var(--gold)}
.pass-opt:hover .option-num{color:var(--gold)}
.pass-opt:hover .option-icon{background:var(--gold);border-color:var(--gold)}
.pass-opt:hover .option-icon svg{stroke:var(--white)}
.pass-opt:hover .option-label{color:var(--gold)}

/* BANDES IDENTIQUES */
.section-anchor{position:relative;top:-140px;visibility:hidden;height:0}
.section-band{padding:80px 40px;border-bottom:1px solid var(--gray-line);position:relative}
.section-band.alt{background:var(--gray-bg)}
.band-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.band-inner.reverse{grid-template-columns:1fr 1fr}
.band-inner.reverse .band-text{order:2}
.band-inner.reverse .band-visual{order:1}
.band-text{padding:20px 0}
.band-eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:9.5px;letter-spacing:0.32em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:18px}
.band-eyebrow .band-num{font-family:'Cormorant Garamond',serif;font-size:18px;font-style:italic;color:var(--blue);line-height:1;letter-spacing:0}
.band-title{font-family:'Cormorant Garamond',serif;font-size:42px;font-weight:400;color:var(--navy);line-height:1.1;margin-bottom:20px;letter-spacing:-0.01em}
.band-title em{font-style:italic;color:var(--blue)}
.pass-band{background:linear-gradient(165deg,rgba(184,137,10,0.05) 0%,transparent 52%)}
.pass-band .band-eyebrow,.pass-band .band-num{color:var(--gold)}
.pass-band .band-title em{color:var(--gold)}
.pass-band .band-points li svg{stroke:var(--gold)}
.pass-band .band-cta:hover{background:var(--gold)}
.pass-band .vv-skill-t{background:var(--gold-light);border-color:var(--gold-soft);color:var(--gold)}
.pass-band .vv-m-v em{color:var(--gold)}
.band-title strong{font-weight:600}
.band-desc{font-size:14px;color:var(--gray-text);line-height:1.78;margin-bottom:24px;font-weight:300}
.band-desc strong{color:var(--ink);font-weight:500}
.band-points{list-style:none;display:flex;flex-direction:column;gap:11px;margin-bottom:30px}
.band-points li{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:1.6;color:var(--navy);font-weight:400}
.band-points li svg{width:15px;height:15px;stroke:var(--blue);fill:none;stroke-width:2;flex-shrink:0;margin-top:3px}
.band-points li strong{font-weight:600}
.band-cta{display:inline-flex;align-items:center;gap:14px;background:var(--navy);color:var(--white);border:none;padding:14px 28px;font-family:'Jost',sans-serif;font-size:11.5px;letter-spacing:0.14em;text-transform:uppercase;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}
.band-cta:hover{background:var(--blue)}
.band-cta-arrow{width:20px;height:1px;background:var(--white);position:relative;transition:width .2s}
.band-cta:hover .band-cta-arrow{width:28px}
.band-cta-arrow::after{content:'';position:absolute;right:0;top:-3px;width:6px;height:6px;border-right:1.5px solid var(--white);border-top:1.5px solid var(--white);transform:rotate(45deg)}

.band-visual{position:relative}

/* ═══ VISUEL 1 — Profil candidat ═══ */
.visual-profile{background:var(--white);border:1px solid var(--gray-line);padding:36px;position:relative;box-shadow:0 10px 40px rgba(12,35,64,0.06)}
.vp-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--gray-line);margin-bottom:24px}
.vp-logo-text{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:500;color:var(--navy)}
.vp-step{font-size:9px;letter-spacing:0.2em;text-transform:uppercase;color:var(--blue);font-weight:500}
.vp-form-title{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;color:var(--navy);margin-bottom:20px}
.vp-form-title em{font-style:italic;color:var(--blue)}
.vp-field{margin-bottom:14px}
.vp-field-label{font-size:9.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--gray-text);margin-bottom:6px;display:block;font-weight:500}
.vp-field-input{background:var(--gray-bg);border:1px solid var(--gray-line);padding:10px 14px;font-size:12.5px;color:var(--ink)}
.vp-field-input.filled{color:var(--navy);font-weight:500}
.vp-field-input.placeholder{color:var(--gray-soft);font-style:italic}

/* ═══ VISUEL 2 — Aperçu offre vue candidat ═══ */
.visual-job{background:var(--white);border:1px solid var(--gray-line);position:relative;box-shadow:0 10px 40px rgba(12,35,64,0.06);overflow:hidden}
.vj-header{background:var(--navy);padding:18px 24px;display:flex;align-items:center;justify-content:space-between;color:var(--white)}
.vj-title-h{font-family:'Cormorant Garamond',serif;font-size:17px;font-weight:500}
.vj-match{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:0.16em;text-transform:uppercase;color:var(--blue-mid);border:1px solid var(--blue);padding:4px 10px;font-weight:500}
.vj-match strong{color:var(--white);font-family:'Cormorant Garamond',serif;font-size:14px;font-weight:600;font-style:italic;letter-spacing:0}
.vj-body{padding:22px 24px}
.vj-co{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--gray-line)}
.vj-co-logo{width:38px;height:38px;background:var(--blue-light);border:1px solid var(--blue-mid);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:15px;font-weight:600;color:var(--blue)}
.vj-co-name{font-size:13px;font-weight:600;color:var(--navy)}
.vj-co-loc{font-size:10.5px;color:var(--gray-text);margin-top:2px}
.vj-meta{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}
.vj-meta-tag{font-size:9.5px;background:var(--blue-light);border:1px solid var(--blue-mid);color:var(--blue);padding:4px 9px;letter-spacing:0.04em;font-weight:500}
.vj-meta-tag.dark{background:var(--navy);border-color:var(--navy);color:var(--white)}
.vj-skills{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}
.vj-skill{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--navy)}
.vj-skill svg{width:13px;height:13px;stroke:var(--blue);fill:none;stroke-width:2;flex-shrink:0}
.vj-footer{background:var(--gray-bg);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--gray-line)}
.vj-save{font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--gray-text);display:flex;align-items:center;gap:6px}
.vj-save svg{width:13px;height:13px;stroke:var(--gold);fill:var(--gold);stroke-width:1}
.vj-apply{background:var(--blue);color:var(--white);border:none;padding:9px 18px;font-family:'Jost',sans-serif;font-size:10px;letter-spacing:0.12em;text-transform:uppercase;font-weight:500}

/* ═══ VISUEL 3 — Suivi candidatures ═══ */
.visual-track{background:var(--white);border:1px solid var(--gray-line);position:relative;box-shadow:0 10px 40px rgba(12,35,64,0.06);overflow:hidden}
.vt-header{background:var(--navy);padding:14px 22px;display:flex;align-items:center;justify-content:space-between}
.vt-title-h{font-family:'Cormorant Garamond',serif;font-size:15px;color:var(--white);font-weight:500}
.vt-counter{font-size:9px;letter-spacing:0.14em;text-transform:uppercase;color:var(--blue-mid)}
.vt-counter strong{color:var(--white);font-weight:600}
.vt-pipeline{display:flex;border-bottom:1px solid var(--gray-line);background:var(--gray-bg)}
.vt-stage{flex:1;padding:11px 8px;font-size:9px;letter-spacing:0.12em;text-transform:uppercase;color:var(--gray-text);border-right:1px solid var(--gray-line);font-weight:500;text-align:center}
.vt-stage:last-child{border-right:none}
.vt-stage.active{background:var(--white);color:var(--navy);border-bottom:2px solid var(--blue);margin-bottom:-1px;font-weight:600}
.vt-stage .vt-count{font-family:'Cormorant Garamond',serif;font-size:13px;font-style:italic;color:var(--blue);margin-left:4px;font-weight:500;letter-spacing:0}
.vt-list{padding:0}
.vt-app{display:grid;grid-template-columns:auto 1fr auto;gap:12px;padding:14px 22px;border-bottom:1px solid var(--gray-line);align-items:center}
.vt-app:last-child{border-bottom:none}
.vt-co-mini{width:34px;height:34px;background:var(--blue-light);border:1px solid var(--blue-mid);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:13px;font-weight:600;color:var(--blue)}
.vt-job-title{font-size:12px;color:var(--ink);font-weight:600}
.vt-job-co{font-size:10px;color:var(--gray-text);margin-top:2px}
.vt-status{font-size:8.5px;letter-spacing:0.12em;text-transform:uppercase;padding:4px 9px;font-weight:600}
.vt-status.received{background:var(--blue-light);color:var(--blue);border:1px solid var(--blue-mid)}
.vt-status.review{background:var(--gold-light);color:var(--gold);border:1px solid var(--gold-soft)}
.vt-status.interview{background:var(--navy);color:var(--white)}

/* ═══ VISUEL 4 — Alertes ═══ */
.visual-alert{background:var(--white);border:1px solid var(--gray-line);position:relative;box-shadow:0 10px 40px rgba(12,35,64,0.06);overflow:hidden}
.va2-header{background:var(--navy);padding:14px 22px;display:flex;align-items:center;gap:10px}
.va2-header svg{width:16px;height:16px;stroke:var(--blue-mid);fill:none;stroke-width:1.8}
.va2-title-h{font-family:'Cormorant Garamond',serif;font-size:15px;color:var(--white);font-weight:500}
.va2-body{padding:18px 22px}
.va2-section{margin-bottom:18px}
.va2-section:last-child{margin-bottom:0}
.va2-s-label{font-size:9px;letter-spacing:0.16em;text-transform:uppercase;color:var(--gray-text);margin-bottom:8px;font-weight:600}
.va2-chips{display:flex;flex-wrap:wrap;gap:5px}
.va2-chip{font-size:10px;background:var(--blue-faint);border:1px solid var(--blue-mid);color:var(--blue);padding:5px 10px;font-weight:500}
.va2-chip.active{background:var(--blue);color:var(--white);border-color:var(--blue)}
.va2-freq{display:flex;gap:0;border:1px solid var(--gray-line);margin-top:8px}
.va2-freq-opt{flex:1;padding:7px;font-size:9.5px;text-align:center;color:var(--gray-text);border-right:1px solid var(--gray-line);letter-spacing:0.08em;text-transform:uppercase;font-weight:500}
.va2-freq-opt:last-child{border-right:none}
.va2-freq-opt.active{background:var(--blue);color:var(--white)}
.va2-footer{background:var(--gray-bg);padding:12px 22px;border-top:1px solid var(--gray-line);display:flex;align-items:center;justify-content:space-between}
.va2-stat{font-size:10px;color:var(--gray-text)}
.va2-stat strong{color:var(--blue);font-weight:600;font-family:'Cormorant Garamond',serif;font-size:13px;font-style:italic}

/* ═══ VISUEL 5 — Profil visible ═══ */
.visual-visible{background:var(--white);border:1px solid var(--gray-line);position:relative;box-shadow:0 10px 40px rgba(12,35,64,0.06);overflow:hidden}
.vv-header{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);padding:28px 24px 30px;position:relative;overflow:hidden}
.vv-header::after{content:'';position:absolute;top:-30px;right:-30px;width:120px;height:120px;border:1px solid rgba(181,212,244,0.08);border-radius:50%}
.vv-avatar{width:60px;height:60px;background:var(--white);display:flex;align-items:center;justify-content:center;font-family:'Cormorant Garamond',serif;font-size:24px;font-weight:600;color:var(--navy);margin-bottom:14px;position:relative;z-index:1;border-radius:50%}
.vv-name{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:500;color:var(--white);margin-bottom:5px;position:relative;z-index:1}
.vv-tag{font-size:9px;letter-spacing:0.22em;text-transform:uppercase;color:var(--blue-mid);position:relative;z-index:1}
.vv-meta{display:flex;padding:14px 24px;border-bottom:1px solid var(--gray-line);background:var(--gray-bg);gap:18px}
.vv-m-item{flex:1}
.vv-m-l{font-size:8.5px;letter-spacing:0.14em;text-transform:uppercase;color:var(--gray-text);margin-bottom:3px;font-weight:500}
.vv-m-v{font-family:'Cormorant Garamond',serif;font-size:15px;color:var(--navy);font-weight:600}
.vv-m-v em{font-style:italic;color:var(--blue);font-weight:500}
.vv-body-s{padding:16px 24px}
.vv-s-title{font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:10px}
.vv-skills-pool{display:flex;flex-wrap:wrap;gap:5px}
.vv-skill-t{font-size:10px;background:var(--blue-light);border:1px solid var(--blue-mid);color:var(--blue);padding:4px 9px;letter-spacing:0.04em;font-weight:500}
.vv-views{border-top:1px solid var(--gray-line);padding:14px 24px;display:flex;align-items:center;justify-content:space-between;background:var(--gold-light)}
.vv-views svg{width:14px;height:14px;stroke:var(--gold);fill:none;stroke-width:2}
.vv-views-text{font-size:11px;color:var(--navy);display:flex;align-items:center;gap:8px}
.vv-views-text strong{font-family:'Cormorant Garamond',serif;color:var(--gold);font-style:italic;font-weight:600;font-size:14px}

/* FOOTER */
footer{background:var(--navy);padding:48px 40px 22px;margin-top:0}
.ft-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:36px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,0.07)}
.ft-brand-name{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:500;color:var(--white)}
.ft-brand-tag{font-size:8.5px;letter-spacing:0.2em;text-transform:uppercase;color:var(--blue-mid);display:block;margin-top:2px;margin-bottom:14px}
.ft-desc{font-size:11.5px;color:rgba(255,255,255,0.32);line-height:1.85;max-width:240px}
.ft-col-title{font-size:9.5px;letter-spacing:0.18em;text-transform:uppercase;color:rgba(255,255,255,0.4);font-weight:500;margin-bottom:14px}
.ft-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.ft-col ul a{font-size:11.5px;color:rgba(255,255,255,0.32);text-decoration:none;cursor:pointer}
.ft-col ul a:hover{color:rgba(255,255,255,0.85)}
.ft-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:18px}
.ft-copy{font-size:10px;color:rgba(255,255,255,0.25)}
.ft-copy strong{color:rgba(255,255,255,0.5);font-weight:500}

/* RESPONSIVE */
@media (max-width:1024px){
  .band-inner,.band-inner.reverse{grid-template-columns:1fr;gap:32px}
  .band-inner.reverse .band-text{order:1}
  .band-inner.reverse .band-visual{order:2}
  .teaser-board{grid-template-columns:1fr}
  .ft-grid{grid-template-columns:1fr 1fr 1fr}
}

/* ===== MOBILE-PHONE-ADAPT : adaptation téléphone ===== */
@media(max-width:600px){
html,body{overflow-x:hidden;max-width:100vw}
*{overflow-wrap:break-word}
img,svg,video,iframe,table{max-width:100%}
.topbar{padding:6px 13px!important;font-size:10px!important;flex-wrap:wrap;row-gap:3px}
.nav-top{padding:12px 14px!important;flex-wrap:wrap;row-gap:10px}
.logo-mark{width:32px!important;height:32px!important}
.logo-text,.logo-text .name{font-size:16px!important}
.nav-actions{width:100%;display:flex!important;gap:8px;margin-left:0!important}
.nav-actions .btn-space,.btn-space{flex:1;justify-content:center;padding:9px 6px!important;font-size:10px!important;white-space:nowrap}
.nav-menu{flex-wrap:wrap}
.nav-menu .nav-item,.nav-menu-bar .nav-item{flex:1 0 33.33%}
.nav-link{font-size:9px!important;padding:10px 3px!important;height:auto!important;min-height:42px;letter-spacing:0.02em!important;text-align:center;line-height:1.25}
.ft-grid{grid-template-columns:1fr 1fr!important;gap:22px!important}
.footer{padding:36px 16px 22px!important}
.ft-bottom{flex-direction:column;gap:10px;text-align:center;align-items:center}
.ft-desc{max-width:100%!important}
.legal-wrap{padding:36px 16px 48px!important}
.legal-title{font-size:27px!important}
input,textarea,select,.form-input{max-width:100%!important}
.band-inner{grid-template-columns:1fr!important}
.options-grid{grid-template-columns:1fr!important}
.reverse{grid-template-columns:1fr!important}
.vt-app{grid-template-columns:1fr!important}
}

/* ===== MOBILE-FIX2 : anti-débordement renforcé ===== */
@media(max-width:600px){
[class*="fresque"],[class*="-pattern"],.nf-pattern,.clouds-zone,.hero-fresque,.hero-veil ~ [class*="pattern"]{display:none!important}
.hero,.hero-inner,.hero-content,section,main,.dash-wrap,.dash-main,.appli-row,.msg-layout,.pf-grid,.cmp,.wrap,.container{max-width:100vw!important}
.dash-sidebar,.sb,.side,.sidebar,.dash-side,aside.msg-list,.dash-nav{width:100%!important;max-width:100vw!important;float:none!important;position:static!important}
table{display:block;overflow-x:auto;width:100%}
.partners-grid,[class*="partner"][class*="grid"]{grid-template-columns:repeat(3,1fr)!important}
}

/* ===== MOBILE-FIX3 : racine du débordement ===== */
@media(max-width:600px){
.topbar .tb-left,.topbar .tb-meta{display:none!important}
.topbar{justify-content:flex-end!important}
.nav-item,.nav-menu>*,.ft-grid>*,.partners-grid>*,[class*="grid"]>*,.topbar>*,.nav-actions>*{min-width:0!important}
.nav-link{white-space:normal!important}
.dash-stats,.pf-grid,.appli-row,.msg-layout,.gw-block-grid,.cmp{grid-template-columns:1fr!important;display:block!important}
}

/* ===== MOBILE-FIX4 : reset des largeurs fixes ===== */
@media(max-width:600px){
.hero-content,.hero-p,.hero-stats-wrap,.hero-inner,.hero-text,.qsn-modal,
[class*="hero-"],[class*="-wrap"],[class*="-inner"],[class*="-content"],[class*="-stats-"],[class*="-modal"],[class*="modal-"],
.dash-main,.dash-content,.dash-wrap,.main-content,.main-wrap,.page,.card,.wrap,.container,.msg-thread,.msg-list{width:auto!important;max-width:100%!important}
}

/* ===== MOBILE-FIX5 : boutons en-tête + shrink universel ===== */
@media(max-width:600px){
*{min-width:0!important}
.nav-actions{flex-direction:column!important;align-items:stretch!important;width:100%!important}
.nav-actions .btn-space,.btn-space{width:100%!important;white-space:normal!important;flex:none!important}
.nav-menu{flex-wrap:wrap!important}
.nav-item{flex:1 0 33%!important}
}

.nav-link,
.nav-menu-bar .nav-link,
.nav-menu .nav-link {
  text-transform: none !important;
  letter-spacing: 0.04em !important;
  font-size: 13px !important;
}