/* ═══════════════════════════════════════════════════
   GLOBAL — Moustapha Seck | Dark Bold Edition v2
   ═══════════════════════════════════════════════════ */
:root {
  --orange:       #FF5E1F;
  --orange-l:     #FF7A40;
  --orange-d:     #CC4A14;
  --teal:         #00C9A7;
  --teal-d:       #009E84;
  --dark:         #0D0D0D;
  --dark-2:       #141414;
  --dark-3:       #1C1C1C;
  --dark-4:       #242424;
  --white:        #FFFFFF;
  --w60:          rgba(255,255,255,.60);
  --w40:          rgba(255,255,255,.40);
  --w15:          rgba(255,255,255,.15);
  --w08:          rgba(255,255,255,.08);
  --w04:          rgba(255,255,255,.04);
  --border:       rgba(255,255,255,.07);

  --font-hero:   'Barlow Condensed', sans-serif;
  --font-body:   'Outfit', sans-serif;

  --ease:        cubic-bezier(.4,0,.2,1);
  --ease-b:      cubic-bezier(.34,1.56,.64,1);
  --dur-f:       200ms;
  --dur-m:       400ms;
  --dur-s:       700ms;

  --max-w: 1200px;
  --pad:   clamp(1.25rem, 5vw, 2.5rem);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--font-body);
  background:var(--dark);
  color:var(--white);
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{display:block;max-width:100%}
a{text-decoration:none}

/* Astra reset */
.ast-container{max-width:var(--max-w)!important}
#page,.ast-site-content,
.ast-separate-container .ast-article-post,
.ast-separate-container .ast-article-single{
  background:var(--dark)!important;
  box-shadow:none!important;
}

/* Header Astra */
.main-header-bar,#masthead{
  background:rgba(13,13,13,.96)!important;
  backdrop-filter:blur(16px)!important;
  border-bottom:1px solid var(--border)!important;
}
.ast-site-identity .site-title a{
  font-family:var(--font-hero)!important;
  font-size:1.5rem!important;
  font-weight:800!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  color:var(--white)!important;
}
.main-header-menu .menu-item>a{
  font-family:var(--font-body)!important;
  font-weight:600!important;
  font-size:.78rem!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:var(--w60)!important;
  transition:color var(--dur-f) var(--ease)!important;
}
.main-header-menu .menu-item>a:hover,
.main-header-menu .current-menu-item>a{color:var(--orange)!important}

/* Container */
.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--pad)}

/* Boutons */
.btn{
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.9rem 2rem;
  font-family:var(--font-body);font-weight:700;
  font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  border:none;cursor:pointer;
  transition:all var(--dur-m) var(--ease);
  position:relative;overflow:hidden;
}
.btn-solid{background:var(--orange);color:#fff;box-shadow:0 6px 30px rgba(255,94,31,.4)}
.btn-solid:hover{background:var(--orange-l);transform:translateY(-2px);color:#fff}

.btn-ghost{background:transparent;color:#fff;border:1.5px solid var(--w40)}
.btn-ghost:hover{border-color:var(--orange);color:var(--orange);transform:translateY(-2px)}

.btn-teal{background:var(--teal);color:var(--dark);font-weight:800}
.btn-teal:hover{background:#00dbb8;transform:translateY(-2px);color:var(--dark)}

/* Divider ligne */
.ms-line{
  display:flex;align-items:center;gap:1rem;
  margin-bottom:1.25rem;
}
.ms-line::before,.ms-line::after{content:'';height:1px;flex:1;background:var(--orange);opacity:.35}
.ms-line span{
  font-family:var(--font-body);font-size:.68rem;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;color:var(--orange);white-space:nowrap;
}

/* Animations scroll */
.reveal{opacity:0;transform:translateY(28px);transition:opacity var(--dur-s) var(--ease),transform var(--dur-s) var(--ease)}
.reveal.in{opacity:1;transform:translateY(0)}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.35s}.d4{transition-delay:.5s}

@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes floatY{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes rotateRing{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes blink{50%{opacity:0}}
@keyframes glowPulse{0%,100%{opacity:.15}50%{opacity:.3}}

::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--dark-2)}
::-webkit-scrollbar-thumb{background:var(--orange);border-radius:2px}
