/* ==========================================================================
   Adnalytics — feuille de styles du site statique
   ========================================================================== */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:#0A0D13;color:#EDF1F7;font-family:'Manrope',sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;}
::selection{background:rgba(0,140,255,0.32);color:#fff;}
a{color:inherit;}
input,textarea,button{font-family:inherit;}
::placeholder{color:#5C6675;}

/* ---------- Animations ---------- */
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes glowpulse{0%,100%{opacity:.55}50%{opacity:.9}}
@keyframes gridpan{0%{background-position:0 0}100%{background-position:64px 64px}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes shimmer{0%{background-position:-200% 0}100%{background-position:200% 0}}
@keyframes revealUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes whyDetailIn{from{opacity:0}to{opacity:1}}
.why-detail{animation:whyDetailIn .5s ease .15s both;}
.why-ico-grad svg{stroke:url(#whyIcoGrad) !important;}

/* icônes Lucide petit format */
svg.ic-sm{width:18px;height:18px;}

/* ---------- Bascule de vues (routing) ---------- */
.view{display:none;}
.view.is-active{display:block;}

/* ---------- Menu mobile ---------- */
.nav-mobile{display:none;}
.nav-mobile.is-open{display:block;}

/* ---------- RESPONSIVE ---------- */
/* Tablet & down */
@media (max-width: 1000px){
  .nav-desktop{display:none !important;}
  .nav-cta{display:none !important;}
  .nav-burger{display:inline-flex !important;}
  .hero-grid{grid-template-columns:1fr !important;gap:48px !important;}
  .hero-mock{display:none !important;}
  .two-col{grid-template-columns:1fr !important;gap:36px !important;}
  .poste-grid{grid-template-columns:1fr !important;gap:36px !important;}
  .poste-aside{position:static !important;order:-1;}
  .skill-row{grid-template-columns:1fr !important;gap:12px !important;}
  .cards-2{grid-template-columns:1fr !important;}
  .cards-3{grid-template-columns:1fr 1fr !important;}
  .stats-3{grid-template-columns:1fr !important;gap:34px !important;}
  .bento-why{grid-template-columns:1fr 1fr !important;}
  .bento-why .why-inner{min-height:0 !important;}
  .footer-grid{grid-template-columns:1fr 1fr !important;gap:34px !important;}
  .form-2{grid-template-columns:1fr !important;}
  .phase-row{grid-template-columns:1fr !important;gap:18px !important;}
}
/* Phone */
@media (max-width: 640px){
  .cards-3{grid-template-columns:1fr !important;}
  .bento-why{grid-template-columns:1fr !important;}
  .bento-why > div{grid-column:auto !important;}
  .bento-why .why-inner{flex-direction:column !important;}
  .why-detail{border-left:none !important;border-top:1px solid rgba(0,150,255,0.2) !important;padding-left:0 !important;padding-top:18px !important;}
  .footer-grid{grid-template-columns:1fr !important;gap:28px !important;}
  .job-row{flex-direction:column !important;align-items:flex-start !important;}
  .job-row > span.job-cta{width:100%;justify-content:center;}
  .hero-sec{padding-top:120px !important;padding-bottom:70px !important;}
  .page-hero{padding-top:120px !important;}
  .v-pad{padding-top:56px !important;padding-bottom:56px !important;}
  .nav-bar{padding-left:18px !important;padding-right:18px !important;}
  .timeline{padding-left:34px !important;}
  .phase-row{padding:26px 20px !important;gap:14px !important;}
  .phase-check{grid-template-columns:1fr !important;}
  .timeline .rail-track,.timeline .rail-fill{left:11px !important;}
  .timeline [data-node]{left:-31px !important;top:32px !important;}
}
