
:root{
  --night-1:#100a1e;--night-2:#1b1330;--card:#201938;--gold:#c9a961;
  --gold-soft:#e3cf9a;--rose:#c98ba0;--ink:#ede6f5;--muted:#b3a8c8;
  --line:rgba(201,169,97,.18);--max:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--night-1);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
h1,h2,h3,.brand{font-family:Georgia,'Times New Roman',serif}
a{color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:var(--max);margin:auto;padding:0 24px}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;color:#000;padding:8px;z-index:999}
header{position:sticky;top:0;z-index:50;background:rgba(16,10,30,.94);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:74px;gap:20px}
.brand{text-decoration:none;font-size:1.3rem;font-weight:bold}.brand span{color:var(--gold-soft);font-style:italic;font-weight:normal}
.navlinks{display:flex;gap:24px;list-style:none;margin:0;padding:0}.navlinks a{text-decoration:none;color:var(--muted)}
.navlinks a:hover,.navlinks a[aria-current="page"]{color:var(--gold-soft)}
.cta{display:inline-block;text-decoration:none;background:var(--gold);color:var(--night-1);padding:12px 22px;border-radius:999px;font-weight:bold}
.ghost{background:transparent;border:1px solid var(--gold);color:var(--gold-soft)}
.hero{padding:96px 0;background:radial-gradient(circle at 50% 0,rgba(201,169,97,.14),transparent 42%),linear-gradient(180deg,var(--night-1),var(--night-2));text-align:center}
.hero .eyebrow,.eyebrow{color:var(--rose);text-transform:uppercase;letter-spacing:.18em;font-size:.78rem}
.hero h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1.1;max-width:900px;margin:18px auto}
.hero p{max-width:720px;margin:0 auto 28px;color:var(--muted);font-size:1.08rem}
.actions{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
section{padding:82px 0}.section-head{text-align:center;max-width:760px;margin:0 auto 42px}.section-head h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:10px 0}.section-head p{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px}.card h3{margin-top:0}.card p{color:var(--muted)}.card a{color:var(--gold-soft)}
.band{background:var(--night-2);border-block:1px solid var(--line)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.step{border-top:2px solid var(--gold);padding-top:16px}.step strong{color:var(--gold-soft)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.portrait{border-radius:18px;overflow:hidden;border:1px solid var(--line);background:var(--card);min-height:360px;display:grid;place-items:center}
.portrait img{width:100%;height:100%;object-fit:cover}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;margin:12px 0}.faq summary{cursor:pointer;font-weight:bold}
.notice{font-size:.9rem;color:var(--muted);border-left:3px solid var(--gold);padding-left:14px}
footer{border-top:1px solid var(--line);padding:34px 0}.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:.9rem}
.page-hero{padding:70px 0 42px;background:linear-gradient(180deg,var(--night-2),var(--night-1));text-align:center}.page-hero h1{font-size:clamp(2rem,4vw,3.2rem)}
.content{max-width:820px;margin:auto}.content h2{margin-top:42px;color:var(--gold-soft)}
@media(max-width:850px){.grid,.steps,.two{grid-template-columns:1fr 1fr}.navlinks{display:none}}
@media(max-width:580px){.grid,.steps,.two{grid-template-columns:1fr}.hero{padding:70px 0}.nav .cta{padding:10px 14px;font-size:.85rem}}


/* Phase 4 : accessibilité, navigation mobile et stabilité visuelle */
.nav-toggle{
  display:none;background:transparent;border:1px solid var(--line);color:var(--ink);
  border-radius:10px;padding:9px 11px;font:inherit;cursor:pointer
}
.nav-toggle span{display:block;width:22px;height:2px;background:currentColor;margin:4px 0}
.breadcrumb{padding:14px 0;font-size:.86rem;color:var(--muted)}
.breadcrumb ol{display:flex;gap:8px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.breadcrumb li+li:before{content:"›";margin-right:8px;color:var(--gold)}
.breadcrumb a{color:var(--gold-soft)}
.callout{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;margin:28px 0}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
img{height:auto}
@media(max-width:850px){
  .nav-toggle{display:block}
  .nav{position:relative;flex-wrap:wrap}
  .navlinks{
    display:none;position:absolute;top:68px;left:24px;right:24px;
    flex-direction:column;gap:0;background:var(--night-2);
    border:1px solid var(--line);border-radius:14px;padding:8px;
    box-shadow:0 18px 40px rgba(0,0,0,.35)
  }
  .navlinks.is-open{display:flex}
  .navlinks a{display:block;padding:12px}
  .nav>.cta{display:none}
}

.cookie-banner{
  position:fixed;left:18px;right:18px;bottom:18px;z-index:1000;
  max-width:920px;margin:auto;background:var(--night-2);border:1px solid var(--gold);
  border-radius:16px;padding:18px 20px;box-shadow:0 18px 50px rgba(0,0,0,.45);
  display:flex;align-items:center;justify-content:space-between;gap:22px
}
.cookie-banner p{margin:4px 0 0;color:var(--muted)}
.cookie-actions{display:flex;gap:10px;flex-shrink:0}
.cookie-actions button{border-width:1px;cursor:pointer;font:inherit}
@media(max-width:650px){.cookie-banner{align-items:stretch;flex-direction:column}.cookie-actions{justify-content:flex-end}}
