/* Nathif — site de présentation. Style « Arène Néon ». Aucune ressource externe. */
@font-face{font-family:"Chakra Petch";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/ChakraPetch-Regular.ttf") format("truetype")}
@font-face{font-family:"Chakra Petch";font-weight:600;font-style:normal;font-display:swap;src:url("../fonts/ChakraPetch-SemiBold.ttf") format("truetype")}
@font-face{font-family:"Chakra Petch";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/ChakraPetch-Bold.ttf") format("truetype")}
:root{
  --bg:#07091a;--panel:rgba(10,15,28,.86);
  --cyan:#2af0ff;--magenta:#ff2fb4;--jaune:#ffe14a;
  --texte:#eef6ff;--texte2:#a9bad3;--ligne:rgba(42,240,255,.35);
  --bias:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;font-family:"Chakra Petch",system-ui,sans-serif;font-size:17px;line-height:1.65;color:var(--texte);
  background:var(--bg) linear-gradient(180deg,#0b0e28 0%,#1a1250 38%,#2a1458 62%,#0a0b22 100%) fixed;min-height:100vh;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--cyan)}
a:hover{color:var(--jaune)}
:focus-visible{outline:3px solid var(--jaune);outline-offset:3px}
.sr{position:absolute;left:-9999px}
.sr:focus{left:8px;top:8px;z-index:100;background:var(--jaune);color:#000;padding:8px 14px}
.wrap{width:min(1120px,100% - 32px);margin-inline:auto}
h1,h2,h3{font-weight:700;text-transform:uppercase;letter-spacing:.04em;line-height:1.15;margin:0 0 .6em}
h2{font-size:clamp(1.6rem,4.5vw,2.4rem);color:var(--texte)}
h2::after{content:"";display:block;width:90px;height:4px;margin-top:10px;background:linear-gradient(90deg,var(--cyan),var(--magenta));transform:skewX(-20deg)}
h3{font-size:1.15rem;color:var(--cyan)}
p{margin:0 0 1em}
section{padding:64px 0}
.lead{font-size:1.15rem;color:var(--texte2);max-width:62ch}

header.nav{position:sticky;top:0;z-index:50;background:rgba(7,9,26,.92);border-bottom:1px solid var(--ligne);backdrop-filter:blur(6px)}
header.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:8px 16px;min-height:56px;flex-wrap:wrap;padding-block:6px}
.logo{font-weight:700;font-size:1.5rem;letter-spacing:.12em;text-decoration:none;color:var(--texte);font-style:italic}
.logo b{color:var(--cyan)}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px 18px;flex-wrap:wrap}
nav a{color:var(--texte2);text-decoration:none;font-weight:600;text-transform:uppercase;font-size:.85rem;letter-spacing:.06em;padding:4px 2px}
nav a:hover{color:var(--cyan)}

.btn{display:inline-block;font-family:inherit;font-weight:700;text-transform:uppercase;letter-spacing:.08em;text-decoration:none;
  padding:14px 32px;color:#04101a;background:var(--cyan);border:0;cursor:pointer;
  clip-path:polygon(var(--bias) 0,100% 0,calc(100% - var(--bias)) 100%,0 100%);transition:filter .15s,transform .15s}
.btn:hover{color:#04101a;filter:brightness(1.15) drop-shadow(0 0 10px var(--cyan));transform:translateY(-2px)}
.btn.mag{background:var(--magenta);color:#fff}
.btn.mag:hover{color:#fff}
.btn.gros{font-size:1.2rem;padding:18px 44px}
.btn.fantome{background:rgba(42,240,255,.14);color:var(--cyan)}

.panel{background:var(--panel);border:1px solid var(--ligne);padding:24px 26px;
  clip-path:polygon(0 0,calc(100% - 20px) 0,100% 20px,100% 100%,20px 100%,0 calc(100% - 20px))}
.grille{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))}
.panel h3{margin-top:0}
.tag{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#04101a;background:var(--jaune);padding:2px 10px;margin-bottom:10px;transform:skewX(-12deg)}

.hero{position:relative;padding:0;min-height:min(86vh,720px);display:flex;align-items:center;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-2;background:url("../img/carte.jpg") center/cover}
.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,9,26,.95) 0%,rgba(7,9,26,.7) 55%,rgba(7,9,26,.35) 100%),linear-gradient(0deg,#0b0e28 0%,transparent 30%)}
.hero .wrap{padding-block:72px}
.hero h1{font-size:clamp(3.2rem,13vw,7.5rem);font-style:italic;letter-spacing:.1em;margin:0;text-shadow:0 0 30px rgba(42,240,255,.55)}
.hero .slogan{font-size:clamp(1.1rem,3.2vw,1.6rem);font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--jaune);margin:6px 0 18px}
.hero p.lead{color:var(--texte)}
.actions{display:flex;gap:16px 20px;flex-wrap:wrap;margin-top:28px}
.chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px;padding:0;list-style:none}
.chips li{border:1px solid var(--ligne);background:var(--panel);padding:4px 16px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;transform:skewX(-12deg)}
.chips li span{display:inline-block;transform:skewX(12deg)}

.chiffres{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-top:32px}
.chiffres div{text-align:center;padding:16px 8px;border-top:3px solid var(--magenta);background:var(--panel)}
.chiffres strong{display:block;font-size:2.4rem;color:var(--cyan);line-height:1.1}
.chiffres span{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--texte2)}

.duo{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:center}
.cadre{border:1px solid var(--ligne);box-shadow:0 0 28px rgba(42,240,255,.18);background:#000}
figure{margin:0}
figcaption{font-size:.85rem;color:var(--texte2);padding:8px 2px}

.galerie{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}
.galerie figure{background:var(--panel);border:1px solid var(--ligne)}
.galerie a{display:block;overflow:hidden}
.galerie img{aspect-ratio:16/9;object-fit:cover;width:100%;transition:transform .3s}
.galerie a:hover img{transform:scale(1.04)}
.galerie figcaption{padding:10px 14px}
.galerie figcaption b{color:var(--texte);text-transform:uppercase;letter-spacing:.05em}

.noms{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.noms li{background:rgba(42,240,255,.08);border-left:3px solid var(--cyan);padding:2px 12px;font-size:.92rem}
.noms.sorts li{border-color:var(--magenta);background:rgba(255,47,180,.08)}

.tableau{overflow-x:auto}
table{border-collapse:collapse;width:100%;min-width:420px}
th,td{text-align:left;padding:10px 14px;border-bottom:1px solid rgba(42,240,255,.2);vertical-align:top}
th{color:var(--cyan);text-transform:uppercase;font-size:.85rem;letter-spacing:.08em}
kbd{font-family:inherit;font-weight:700;border:1px solid var(--cyan);padding:0 8px;background:rgba(42,240,255,.1);white-space:nowrap}

.dl{border:2px solid var(--cyan);box-shadow:0 0 36px rgba(42,240,255,.25)}
.avert{border-left:4px solid var(--jaune);background:rgba(255,225,74,.08);padding:12px 18px;margin:1em 0}
ol.etapes{counter-reset:e;list-style:none;padding:0}
ol.etapes>li{counter-increment:e;position:relative;padding-left:52px;margin-bottom:16px}
ol.etapes>li::before{content:counter(e);position:absolute;left:0;top:0;width:36px;height:36px;display:grid;place-items:center;background:var(--magenta);font-weight:700;transform:skewX(-12deg)}

.texte{max-width:78ch;padding-block:48px}
.texte h2{margin-top:1.6em}
.completer{background:var(--jaune);color:#000;font-weight:700;padding:0 6px}

footer{border-top:1px solid var(--ligne);background:rgba(4,5,16,.9);padding:36px 0;color:var(--texte2);font-size:.9rem}
footer ul{list-style:none;margin:0 0 14px;padding:0;display:flex;gap:6px 22px;flex-wrap:wrap}
.pegi{display:inline-block;border:2px solid var(--texte);padding:0 10px;font-weight:700;margin-right:10px;color:var(--texte)}
code{background:rgba(255,255,255,.08);padding:1px 6px;word-break:break-word}

@media (max-width:640px){
  body{font-size:16px}
  section{padding:44px 0}
  header.nav .wrap{justify-content:center}
  nav ul{justify-content:center}
  .btn.gros{padding:16px 28px;font-size:1.05rem}
  .panel{padding:20px 18px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
