/* ═══════════════════════════════════════════════════════════════
   Airproxy — Page d'accueil (design system « Nuit violette »)
   ═══════════════════════════════════════════════════════════════ */

body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;min-height:100vh;overflow-x:hidden;}
::-webkit-scrollbar{width:5px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:rgba(139,92,246,.4);border-radius:3px;}

header,main,footer{position:relative;z-index:1;}

/* ── Visibilité selon connexion (html.logged posé dans <head>) ─── */
html.logged .only-guest{display:none!important;}
html:not(.logged) .only-user{display:none!important;}

/* ── Fond vidéo — derrière tout, voilé aux couleurs de la charte ─ */
.bg-video{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;
  background:
    radial-gradient(ellipse 80% 60% at 65% -5%, rgba(109,40,217,.45) 0%, transparent 55%),
    radial-gradient(ellipse 60% 50% at 10% 95%, rgba(139,92,246,.18) 0%, transparent 50%),
    radial-gradient(ellipse 40% 40% at 90% 80%, rgba(76,29,149,.2) 0%, transparent 45%);
}
.bg-video video{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.2s ease;}
.bg-video video.playing{opacity:1;}
.bg-video::after{content:'';position:absolute;inset:0;background:rgba(14,10,22,.82);}
@media(max-width:768px){
  .bg-video{background:
    radial-gradient(ellipse 100% 50% at 50% 0%, rgba(109,40,217,.35) 0%, transparent 60%),
    radial-gradient(ellipse 70% 40% at 10% 100%, rgba(139,92,246,.15) 0%, transparent 50%);
  }
}

/* ── Header ──────────────────────────────────────────────────────── */
header{background:rgba(14,10,22,.92);border-bottom:1px solid var(--border);padding:0 60px;height:66px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;}
@media(max-width:768px){header{padding:0 20px;}}

/* ── Hero ────────────────────────────────────────────────────────── */
.hero{text-align:center;padding:clamp(48px,8vw,90px) 24px clamp(40px,6vw,70px);max-width:800px;margin:0 auto;}
.hero-title{font-size:clamp(1.8rem,4.5vw,3.2rem);font-weight:700;letter-spacing:-.03em;line-height:1.12;margin-bottom:18px;font-family:'Inter',system-ui,sans-serif;}
.hero-title span{color:var(--accent-bright);}
.hero-sub{font-size:clamp(.88rem,2vw,1rem);color:var(--muted);line-height:1.75;margin:0 auto 36px;max-width:560px;font-weight:400;}
.hero-ctas{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;}
.btn-primary{background:var(--accent);border:none;border-radius:13px;color:#fff;font-size:1rem;font-weight:700;padding:15px 32px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 6px 28px rgba(139,92,246,.5);transition:box-shadow .22s,transform .22s,background .15s;}
.btn-primary:hover{background:#7C4DEF;box-shadow:0 10px 44px rgba(139,92,246,.7);transform:translateY(-2px);}
.btn-secondary{background:rgba(255,255,255,.06);border:1.5px solid var(--border);color:var(--text);border-radius:13px;font-size:1rem;font-weight:600;padding:14px 28px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:border-color .22s,background .22s;}
.btn-secondary:hover{border-color:rgba(139,92,246,.5);background:rgba(139,92,246,.08);}
@media(max-width:520px){
  .hero-ctas{flex-direction:column;align-items:stretch;}
  .hero-ctas .btn-primary,.hero-ctas .btn-secondary{width:100%;}
}

/* ── Stats rapides ───────────────────────────────────────────────── */
.quick-stats{display:flex;align-items:center;justify-content:center;gap:0;padding:0 24px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:rgba(255,255,255,.015);}
.qs{text-align:center;padding:22px 48px;position:relative;}
.qs+.qs::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:36px;background:var(--border);}
.qs-val{font-size:1.5rem;font-weight:800;letter-spacing:-.03em;color:var(--text);}
.qs-label{font-size:.72rem;color:var(--muted);margin-top:3px;font-weight:600;text-transform:uppercase;letter-spacing:.07em;}
@media(max-width:640px){
  .quick-stats{gap:0;}
  .qs{padding:18px 20px;}
  .qs-val{font-size:1.2rem;}
  .qs:first-child .qs-val{font-size:.82rem;}
}

/* ── Sections ────────────────────────────────────────────────────── */
.section{max-width:1100px;margin:0 auto;padding:clamp(56px,8vw,84px) 24px;}
.section-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--accent-bright);margin-bottom:14px;text-align:center;}
.section-title{font-size:clamp(1.5rem,3.5vw,2.4rem);font-weight:900;letter-spacing:-.03em;text-align:center;margin-bottom:clamp(32px,5vw,52px);}

/* ── Comment ça marche ───────────────────────────────────────────── */
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.step-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;text-align:center;transition:border-color .2s;}
.step-card:hover{border-color:rgba(139,92,246,.3);}
.step-num{font-size:.78rem;font-weight:800;color:var(--accent-bright);letter-spacing:.14em;margin-bottom:14px;}
.step-title{font-size:1.02rem;font-weight:800;margin-bottom:8px;}
.step-desc{font-size:.86rem;color:var(--muted);line-height:1.65;}
@media(max-width:860px){.steps-grid{grid-template-columns:1fr;}}

/* ── Features ────────────────────────────────────────────────────── */
.features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;}
.feature-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:28px;text-align:center;transition:border-color .2s,transform .2s;}
.feature-card:hover{border-color:rgba(139,92,246,.3);transform:translateY(-3px);}
.feature-icon{width:48px;height:48px;border-radius:14px;background:var(--surface-2);border:1px solid rgba(139,92,246,.3);display:flex;align-items:center;justify-content:center;color:var(--accent-bright);margin:0 auto 18px;}
.feature-title{font-size:1rem;font-weight:800;margin-bottom:8px;}
.feature-desc{font-size:.86rem;color:var(--muted);line-height:1.65;}

/* ── Tarif ───────────────────────────────────────────────────────── */
.price-wrap{max-width:420px;margin:0 auto;}
.price-card{background:var(--surface);border:1px solid rgba(139,92,246,.3);border-radius:var(--radius);padding:32px;display:flex;flex-direction:column;align-items:center;text-align:center;}
.price-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--accent-soft);margin-bottom:10px;}
.price-value{font-size:2.4rem;font-weight:900;letter-spacing:-.04em;margin-bottom:16px;}
.price-unit{font-size:.85rem;font-weight:600;color:var(--muted);letter-spacing:0;margin-left:8px;}
.price-points{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:8px;align-items:center;}
.price-points li{font-size:.84rem;color:var(--muted);display:flex;align-items:center;gap:9px;}
.price-points li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--accent);flex-shrink:0;}
.price-cta{font-size:.92rem;padding:13px 28px;width:100%;}

/* ── Bannière parrainage ─────────────────────────────────────────── */
.ref-banner{display:flex;align-items:center;gap:20px;background:linear-gradient(135deg,rgba(139,92,246,.14),rgba(139,92,246,.04));border:1px solid rgba(139,92,246,.3);border-radius:var(--radius);padding:26px 28px;max-width:760px;margin:0 auto;flex-wrap:wrap;}
.ref-banner-icon{width:54px;height:54px;border-radius:14px;background:rgba(139,92,246,.18);border:1px solid rgba(139,92,246,.35);display:flex;align-items:center;justify-content:center;color:var(--accent-soft);flex-shrink:0;}
.ref-banner-txt{flex:1;min-width:220px;}
.ref-banner-title{font-size:1.15rem;font-weight:800;margin-bottom:6px;}
.ref-banner-sub{font-size:.88rem;color:var(--muted);line-height:1.6;}
.ref-banner-cta{white-space:nowrap;}
@media(max-width:600px){.ref-banner{flex-direction:column;text-align:center;}.ref-banner-cta{width:100%;}}

/* ── FAQ ─────────────────────────────────────────────────────────── */
.faq-list{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:12px;}
.faq-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .2s;}
.faq-item:hover,.faq-item[open]{border-color:rgba(139,92,246,.3);}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;cursor:pointer;font-size:.94rem;font-weight:700;list-style:none;user-select:none;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary svg{flex-shrink:0;color:var(--muted);transition:transform .25s;}
.faq-item[open] summary svg{transform:rotate(180deg);color:var(--accent-soft);}
.faq-a{padding:0 22px 18px;font-size:.86rem;color:var(--muted);line-height:1.65;}

/* ── CTA final ───────────────────────────────────────────────────── */
.cta-section{text-align:center;padding:20px 24px clamp(48px,7vw,80px);}
.cta-title{font-size:clamp(1.7rem,4vw,3rem);font-weight:900;letter-spacing:-.03em;margin-bottom:16px;}
.cta-sub{font-size:1rem;color:var(--muted);margin-bottom:36px;}
.cta-btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
@media(max-width:520px){
  .cta-btns{flex-direction:column;align-items:stretch;max-width:340px;margin:0 auto;}
}

/* ── Footer ──────────────────────────────────────────────────────── */
footer{border-top:1px solid var(--border);padding:32px 60px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;background:rgba(14,10,22,.6);}
.footer-logo{display:flex;align-items:center;gap:8px;}
.footer-logo img{height:32px;width:auto;display:block;}
.footer-logo span{font-size:1.1rem;font-weight:800;letter-spacing:-.5px;color:var(--text);}
.footer-links{display:flex;gap:20px;flex-wrap:wrap;}
.footer-links a{color:var(--muted);text-decoration:none;font-size:.82rem;transition:color .15s;}
.footer-links a:hover{color:var(--accent-soft);}
.footer-copy{font-size:.75rem;color:rgba(244,240,255,.25);}
@media(max-width:768px){footer{padding:24px 20px;flex-direction:column;text-align:center;justify-content:center;}}

/* ── Section Discord ─────────────────────────────────────────────── */
.discord-join{display:inline-flex;align-items:center;gap:10px;background:#5865F2;color:#fff;border-radius:13px;font-size:1rem;font-weight:700;padding:14px 30px;text-decoration:none;box-shadow:0 6px 28px rgba(88,101,242,.45);transition:background .2s,transform .2s,box-shadow .2s;}
.discord-join:hover{background:#4752c4;transform:translateY(-2px);box-shadow:0 10px 40px rgba(88,101,242,.6);}
.discord-join svg{display:block;}
