:root{
  /* COULEURS */
  --overdrivehost-topbar-bg:#111216;
  --overdrivehost-topbar-text:#ffffff;

  --overdrivehost-header-bg:#ffffff;
  --overdrivehost-header-text:#000000;

  /* Accent */
  --overdrivehost-accent:#b5161a;

  /* HERO (nouveau : cohérent + fond type “OVH”) */
  --overdrivehost-hero-ink:#ffffff;
  --overdrivehost-hero-sub:rgba(255,255,255,.82);
  --overdrivehost-hero-muted:rgba(255,255,255,.68);
  --overdrivehost-hero-bg1:#061a4a;
  --overdrivehost-hero-bg2:#0a2aa6;

  --overdrivehost-container:1240px;
  --overdrivehost-ink:#0b1b3a;

  --overdrivehost-topbar-sep:rgba(255,255,255,.22);
  --overdrivehost-topbar-border:rgba(255,255,255,.22);

  --overdrivehost-nav-sep:rgba(0,0,0,.10);

  --overdrivehost-radius:12px;
  --overdrivehost-radius-pill:999px;

  --overdrivehost-font:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,"Noto Sans","Liberation Sans",sans-serif;
}

*{box-sizing:border-box}
html,body{height:100%}
body.overdrivehost{
  margin:0;
  font-family:var(--overdrivehost-font);
  background:#f5f7ff;
  color:var(--overdrivehost-ink);
  font-weight:400;
}

.overdrivehost-container{width:min(var(--overdrivehost-container),calc(100% - 48px));margin:0 auto}

.overdrivehost-sr{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0
}

/* =========================
   TOPBAR
   ========================= */
.overdrivehost-topbar{
  background:var(--overdrivehost-topbar-bg);
  color:var(--overdrivehost-topbar-text);
  border-bottom:1px solid rgba(0,0,0,.25);
}
.overdrivehost-topbar__inner{
  height:66px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:18px;
}
.overdrivehost-topbar__brand{
  display:inline-flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:var(--overdrivehost-topbar-text);
  font-weight:600;
  letter-spacing:.2px;
}
.overdrivehost-brandmark{
  width:34px;height:34px;border-radius:10px;
  border:1px solid var(--overdrivehost-topbar-border);
  background:
    radial-gradient(18px 18px at 30% 30%, rgba(255,255,255,.18), transparent 62%),
    radial-gradient(18px 18px at 70% 70%, rgba(255,255,255,.10), transparent 60%),
    linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.05));
  position:relative;
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}
.overdrivehost-brandmark::after{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:7px;
  border:2px solid rgba(255,255,255,.50);
  transform:rotate(10deg);
}
.overdrivehost-brandname{font-size:16px;line-height:1;font-weight:600}

/* Logo image (ton index.php utilise <img class="overdrivehost-brandlogo" ...>) */
.overdrivehost-brandlogo{
  height:35px; /* AUGMENTÉ (avant: 28px) */
  width:auto;
  display:block;
  object-fit:contain;
}

.overdrivehost-topbar__search{
  justify-self:center;
  width:min(680px,100%);
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:var(--overdrivehost-radius-pill);
  background:rgba(255,255,255,.08);
  overflow:hidden;
}
.overdrivehost-topbar__search input{
  height:44px;
  padding:0 18px;
  border:0;
  outline:none;
  background:transparent;
  color:var(--overdrivehost-topbar-text);
  font-size:14px;
  letter-spacing:.2px;
  font-weight:400;
}
.overdrivehost-topbar__search input::placeholder{color:rgba(255,255,255,.70)}
.overdrivehost-searchbtn{
  height:44px;width:56px;
  border:0;
  background:rgba(255,255,255,.10);
  color:var(--overdrivehost-topbar-text);
  cursor:pointer;
  display:grid;
  place-items:center;
  transition:background .15s ease, transform .15s ease;
}
.overdrivehost-searchbtn:hover{background:rgba(255,255,255,.16);transform:translateY(-1px)}

.overdrivehost-topbar__links{
  display:inline-flex;
  align-items:center;
  gap:12px;
}
.overdrivehost-topbar__link{
  color:var(--overdrivehost-topbar-text);
  text-decoration:none;
  font-size:14px;
  font-weight:500;
  letter-spacing:.12px;
  opacity:.95;
  transition:opacity .15s ease, transform .15s ease;
}
.overdrivehost-topbar__link:hover{opacity:1;transform:translateY(-1px)}
.overdrivehost-topbar__sep{width:1px;height:18px;background:var(--overdrivehost-topbar-sep)}

.overdrivehost-topbar__lang{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  border-radius:var(--overdrivehost-radius-pill);
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);
  color:var(--overdrivehost-topbar-text);
  font-weight:500;
  letter-spacing:.12px;
  cursor:pointer;
  transition:background .15s ease, transform .15s ease;
}
.overdrivehost-topbar__lang:hover{background:rgba(255,255,255,.14);transform:translateY(-1px)}

.overdrivehost-flag{
  width:16px;height:12px;border-radius:2px;border:1px solid rgba(255,255,255,.25);
  background:linear-gradient(90deg,#1b42ff 0 33.3%,#ffffff 33.3% 66.6%,#ff2b2b 66.6% 100%);
}

.overdrivehost-topbar__toggle{
  display:none;
  width:44px;height:44px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.08);
  cursor:pointer;
  color:var(--overdrivehost-topbar-text);
}
.overdrivehost-topbar__toggle:hover{background:rgba(255,255,255,.14)}
.overdrivehost-burger{
  display:block;
  width:18px;height:2px;
  background:currentColor;
  margin:0 auto;
  border-radius:999px;
  position:relative;
}
.overdrivehost-burger::before,.overdrivehost-burger::after{
  content:"";
  position:absolute;
  left:0;
  width:18px;height:2px;
  background:currentColor;
  border-radius:999px;
}
.overdrivehost-burger::before{top:-6px}
.overdrivehost-burger::after{top:6px}

/* =========================
   HEADER NAV + MEGA MENU
   (FIX FULL WIDTH)
   ========================= */
.overdrivehost-header{
  background:var(--overdrivehost-header-bg);
  border-bottom:1px solid rgba(0,0,0,.06);
  box-shadow:0 10px 28px rgba(0,0,0,.05);
  position:relative; /* référence pour le mega menu plein écran */
  z-index:60;
}
.overdrivehost-header__inner{
  height:60px;
  display:flex;
  align-items:center;
}

/* IMPORTANT :
   - On évite que le mega menu se positionne sur le <li> (menu “collé à gauche”).
   - On retire les contextes de positionnement intermédiaires.
*/
.overdrivehost-nav{
  width:100%;
  overflow:visible;
  position:static; /* FIX */
}
.overdrivehost-nav__list{
  margin:0;
  padding:0;
  list-style:none;
  width:100%;
  display:flex;
  align-items:stretch;
  gap:0;
}
.overdrivehost-nav__item{
  position:static; /* FIX */
  display:flex;
  align-items:stretch;
  flex:1 1 0;
  min-width:0;
}
.overdrivehost-nav__item + .overdrivehost-nav__item{
  border-left:2px solid var(--overdrivehost-nav-sep);
}
.overdrivehost-nav__item--right{
  flex:0 0 210px;
  margin-left:auto;
}
.overdrivehost-nav__link,
.overdrivehost-nav__trigger{
  width:100%;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:0 12px;
  white-space:nowrap;

  color:var(--overdrivehost-header-text);
  text-decoration:none;
  font-weight:600;
  letter-spacing:.10px;
  font-size:13px;

  background:transparent;
  border:0;
  cursor:pointer;

  position:relative;
}
.overdrivehost-nav__link:focus-visible,
.overdrivehost-nav__trigger:focus-visible{
  outline:2px solid rgba(181,22,26,.35);
  outline-offset:3px;
  border-radius:12px;
}

.overdrivehost-nav__link::after,
.overdrivehost-nav__trigger::after{
  content:"";
  position:absolute;
  left:30%;
  right:30%;
  bottom:7px;
  height:2px;
  border-radius:999px;
  background:rgba(0,0,0,.40);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .22s ease;
}
@media (hover:hover){
  .overdrivehost-nav__link:hover::after,
  .overdrivehost-nav__trigger:hover::after{transform:scaleX(1)}
}
.overdrivehost-nav__link:focus-visible::after,
.overdrivehost-nav__trigger:focus-visible::after{transform:scaleX(1)}

.overdrivehost-caret{
  width:8px;height:8px;
  border-right:2px solid rgba(0,0,0,.55);
  border-bottom:2px solid rgba(0,0,0,.55);
  transform:rotate(45deg);
  margin-top:-2px;
  transition:transform .18s ease;
}

/* Mega panel (plein largeur du header) */
.overdrivehost-mega{
  position:absolute;
  left:0;
  right:0;
  top:100%;
  display:none;

  padding:14px 0 16px;
  background:#fff;
  border-top:1px solid rgba(0,0,0,.06);
  box-shadow:0 24px 60px rgba(0,0,0,.12);
  z-index:80; /* au-dessus du hero */
}
.overdrivehost-nav__item--mega:hover > .overdrivehost-mega,
.overdrivehost-nav__item--mega:focus-within > .overdrivehost-mega{
  display:block;
}

/* Ouverture via clic (aria-expanded) */
.overdrivehost-nav__trigger[aria-expanded="true"] + .overdrivehost-mega{
  display:block;
}
.overdrivehost-nav__trigger[aria-expanded="true"] .overdrivehost-caret{
  transform:rotate(225deg);
}

.overdrivehost-mega__inner{
  display:grid;
  grid-template-columns: 1fr 360px;
  gap:18px;
  align-items:stretch;
}

/* Sous-menu : liens à côté + séparateurs */
.overdrivehost-mega__links{
  display:flex;
  align-items:stretch;
  flex-wrap:nowrap;
  min-height:72px;

  border:1px solid rgba(0,0,0,.10);
  border-radius:14px;
  overflow:hidden;
  background:
    radial-gradient(560px 140px at 18% 40%, rgba(42,107,255,.08), transparent 60%),
    radial-gradient(520px 140px at 80% 60%, rgba(0,245,200,.08), transparent 55%),
    linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.00));
}
.overdrivehost-mega__link{
  flex:1 1 0;
  min-width:0;

  display:flex;
  align-items:center;
  justify-content:center;

  padding:0 16px;
  text-decoration:none;
  font-weight:650;
  font-size:14px;
  letter-spacing:.10px;

  color:rgba(0,0,0,.88);
  transition:background .15s ease, transform .15s ease, color .15s ease;
}
.overdrivehost-mega__link + .overdrivehost-mega__link{
  border-left:2px solid rgba(0,0,0,.10);
}
.overdrivehost-mega__link:hover{
  background:rgba(0,0,0,.03);
  transform:translateY(-1px);
  color:#000;
}

/* Box promo alignée à droite */
.overdrivehost-megaPromo{
  position:relative;
  border-radius:14px;
  overflow:hidden;
  padding:16px 16px 14px;
  color:#fff;
  border:1px solid rgba(0,0,0,.10);
  box-shadow:0 18px 46px rgba(0,0,0,.10);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.overdrivehost-megaPromo::before{
  content:"";
  position:absolute;
  inset:-40px;
  opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='420' viewBox='0 0 900 420'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23ffffff' stop-opacity='.18'/%3E%3Cstop offset='1' stop-color='%23ffffff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M-40 310 C 170 250, 310 360, 540 300 C 700 255, 790 210, 960 240' fill='none' stroke='url(%23g)' stroke-width='2'/%3E%3Ccircle cx='720' cy='120' r='92' fill='rgba(255,255,255,.12)'/%3E%3Ccircle cx='720' cy='120' r='60' fill='rgba(255,255,255,.08)'/%3E%3C/svg%3E");
  background-size:cover;
  background-position:center;
  pointer-events:none;
}
.overdrivehost-megaPromo > *{position:relative; z-index:1;}

.overdrivehost-megaPromo__kicker{
  font-size:12px;
  letter-spacing:.18px;
  font-weight:650;
  opacity:.88;
}
.overdrivehost-megaPromo__title{
  margin-top:6px;
  font-size:20px;
  font-weight:750;
  letter-spacing:.12px;
}
.overdrivehost-megaPromo__text{
  margin:8px 0 12px;
  font-size:13px;
  line-height:1.45;
  opacity:.92;
}
.overdrivehost-megaPromo__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:38px;
  padding:0 12px;
  width:max-content;

  border-radius:12px;
  text-decoration:none;
  font-weight:650;
  letter-spacing:.10px;
  font-size:13px;

  background:rgba(255,255,255,.92);
  color:#111216;
  border:1px solid rgba(255,255,255,.16);
  transition:transform .15s ease, opacity .15s ease;
}
.overdrivehost-megaPromo__cta:hover{transform:translateY(-1px);opacity:.98}

/* Variantes de fond “image” (très pro, sans fichiers externes) */
.overdrivehost-megaPromo--web{
  background:
    radial-gradient(420px 220px at 12% 30%, rgba(0,212,255,.40), transparent 60%),
    radial-gradient(420px 240px at 86% 64%, rgba(42,107,255,.40), transparent 62%),
    linear-gradient(135deg, #071a45, #0a2aa6);
}
.overdrivehost-megaPromo--cloud{
  background:
    radial-gradient(420px 220px at 12% 30%, rgba(0,245,200,.38), transparent 60%),
    radial-gradient(420px 240px at 86% 64%, rgba(42,107,255,.36), transparent 62%),
    linear-gradient(135deg, #052a2b, #0a2aa6);
}
.overdrivehost-megaPromo--telecom{
  background:
    radial-gradient(420px 220px at 12% 30%, rgba(181,22,26,.32), transparent 60%),
    radial-gradient(420px 240px at 86% 64%, rgba(0,212,255,.30), transparent 62%),
    linear-gradient(135deg, #1a0e13, #07205f);
}
.overdrivehost-megaPromo--gaming{
  background:
    radial-gradient(420px 220px at 12% 30%, rgba(157,255,239,.30), transparent 60%),
    radial-gradient(420px 240px at 86% 64%, rgba(181,22,26,.30), transparent 62%),
    linear-gradient(135deg, #0a1f2d, #2b0d18);
}
.overdrivehost-megaPromo--entreprise{
  background:
    radial-gradient(420px 220px at 12% 30%, rgba(255,255,255,.22), transparent 60%),
    radial-gradient(420px 240px at 86% 64%, rgba(0,212,255,.26), transparent 62%),
    linear-gradient(135deg, #12131a, #0a2aa6);
}

/* =========================
   HERO (fond image + plus dense)
   ========================= */
.overdrivehost-hero{
  position:relative;
  color:var(--overdrivehost-hero-ink);
  overflow:hidden;
  padding:44px 0 86px;
  border-bottom:1px solid rgba(0,0,0,.06);

  /* “image de fond” : multi-gradients + motif SVG (type tech/wave) */
  background:
    radial-gradient(900px 520px at 18% 20%, rgba(0,212,255,.25), transparent 55%),
    radial-gradient(820px 520px at 84% 26%, rgba(42,107,255,.34), transparent 60%),
    radial-gradient(880px 620px at 78% 74%, rgba(0,245,200,.18), transparent 62%),
    linear-gradient(135deg, var(--overdrivehost-hero-bg1), var(--overdrivehost-hero-bg2));
}
.overdrivehost-hero::before{
  content:"";
  position:absolute;
  inset:-40px -40px -40px -40px;
  pointer-events:none;
  opacity:.60;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='700' viewBox='0 0 1200 700'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23ffffff' stop-opacity='.10'/%3E%3Cstop offset='1' stop-color='%23ffffff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M-40 520 C 220 410, 410 590, 680 480 C 920 385, 1020 300, 1260 360' fill='none' stroke='url(%23g)' stroke-width='2'/%3E%3Cpath d='M-60 580 C 190 475, 430 650, 700 535 C 960 425, 1060 340, 1280 410' fill='none' stroke='rgba(255,255,255,.10)' stroke-width='2'/%3E%3Cpath d='M-80 620 C 160 530, 470 700, 740 595 C 980 505, 1120 420, 1300 470' fill='none' stroke='rgba(255,255,255,.08)' stroke-width='2'/%3E%3Ccircle cx='980' cy='180' r='110' fill='rgba(255,255,255,.06)'/%3E%3Ccircle cx='980' cy='180' r='78' fill='rgba(255,255,255,.04)'/%3E%3Ccircle cx='980' cy='180' r='48' fill='rgba(255,255,255,.03)'/%3E%3C/svg%3E");
  background-size:cover;
  background-position:center;
  filter:blur(.2px);
}
.overdrivehost-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,0) 42%, rgba(0,0,0,.18));
  opacity:.55;
}

.overdrivehost-hero__slides{position:relative;z-index:1}

.overdrivehost-hero__slide{
  display:none;
  opacity:0;
  transform:translateY(10px);
  transition:opacity .25s ease, transform .25s ease;
}
.overdrivehost-hero__slide.is-active{
  display:block;
  opacity:1;
  transform:translateY(0);
}

.overdrivehost-hero__inner{
  display:grid;
  grid-template-columns:1.08fr .92fr;
  gap:34px;
  align-items:center;
  min-height:520px;
}

.overdrivehost-hero__content{max-width:690px}

.overdrivehost-hero__head{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.overdrivehost-hero__tag{
  display:inline-flex;
  align-items:center;
  height:30px;
  padding:0 14px;
  border-radius:var(--overdrivehost-radius-pill);
  background:rgba(0,245,200,.14);
  border:1px solid rgba(0,245,200,.22);
  color:rgba(255,255,255,.92);
  font-weight:500;
  font-size:13px;
  letter-spacing:.2px;
}

.overdrivehost-hero__badge{
  display:inline-flex;
  align-items:center;
  height:30px;
  padding:0 14px;
  border-radius:var(--overdrivehost-radius-pill);
  background:rgba(181,22,26,.16);
  border:1px solid rgba(181,22,26,.22);
  color:rgba(255,255,255,.92);
  font-weight:500;
  font-size:13px;
  letter-spacing:.2px;
}
.overdrivehost-hero__badge--alt{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.14);
  color:rgba(255,255,255,.88);
}

.overdrivehost-hero__title{
  margin:14px 0 10px;
  font-size:clamp(34px, 4.1vw, 50px);
  line-height:1.05;
  letter-spacing:.2px;
  font-weight:650;
  color:#fff;
}
.overdrivehost-hero__title span{
  color:rgba(255,255,255,.92);
  position:relative;
}
.overdrivehost-hero__title span::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(181,22,26,.0), rgba(181,22,26,.92), rgba(181,22,26,.0));
  opacity:.95;
}

.overdrivehost-hero__lead{
  margin:0 0 16px;
  font-size:16px;
  line-height:1.55;
  color:var(--overdrivehost-hero-sub);
  max-width:600px;
  font-weight:400;
}

.overdrivehost-hero__list{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
  color:rgba(255,255,255,.86);
  font-weight:400;
  line-height:1.45;
}
.overdrivehost-hero__list li{position:relative;padding-left:26px}
.overdrivehost-hero__list li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:rgba(0,245,200,.95);
  font-weight:700;
}

.overdrivehost-hero__actions{
  margin-top:22px;
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

.overdrivehost-hero__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:46px;
  padding:0 18px;
  border-radius:12px;
  background:var(--overdrivehost-accent);
  color:#fff;
  text-decoration:none;
  font-weight:500;
  letter-spacing:.12px;
  border:1px solid rgba(0,0,0,.12);
  box-shadow:0 18px 40px rgba(0,0,0,.18);
  transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.overdrivehost-hero__btn:hover{
  transform:translateY(-1px);
  box-shadow:0 22px 48px rgba(0,0,0,.22);
  opacity:.99;
}
.overdrivehost-hero__btn--ghost{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:none;
}
.overdrivehost-hero__btn--ghost:hover{
  box-shadow:none;
  background:rgba(255,255,255,.14);
}

.overdrivehost-hero__stats{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:12px;
}
.overdrivehost-stat{
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  padding:12px 12px 10px;
  backdrop-filter: blur(10px);
  box-shadow:0 20px 60px rgba(0,0,0,.14);
}
.overdrivehost-stat__k{
  font-size:12px;
  letter-spacing:.18px;
  color:rgba(255,255,255,.78);
  font-weight:500;
}
.overdrivehost-stat__v{
  margin-top:4px;
  font-size:18px;
  font-weight:650;
  letter-spacing:.12px;
  color:#fff;
}
.overdrivehost-stat__m{
  margin-top:2px;
  font-size:12px;
  color:rgba(255,255,255,.72);
  font-weight:400;
}

.overdrivehost-hero__visual{display:grid;justify-items:end}
.overdrivehost-hero__visualFrame{
  position:relative;
  width:min(540px,100%);
  padding:18px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  backdrop-filter: blur(10px);
  box-shadow:0 34px 90px rgba(0,0,0,.18);
}
.overdrivehost-hero__svg{width:100%;height:auto;display:block}

.overdrivehost-hero__float{
  position:absolute;
  min-width:150px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(0,0,0,.18);
  padding:10px 12px 9px;
  box-shadow:0 22px 70px rgba(0,0,0,.22);
}
.overdrivehost-hero__float--1{left:-14px;top:18px}
.overdrivehost-hero__float--2{right:-14px;bottom:16px}

.overdrivehost-float__k{
  font-size:12px;
  color:rgba(255,255,255,.76);
  letter-spacing:.18px;
  font-weight:500;
}
.overdrivehost-float__v{
  margin-top:4px;
  font-size:18px;
  color:#fff;
  font-weight:650;
  letter-spacing:.12px;
}
.overdrivehost-float__m{
  margin-top:2px;
  font-size:12px;
  color:rgba(255,255,255,.70);
  font-weight:400;
}

.overdrivehost-hero__visual--simple{justify-items:end}
.overdrivehost-hero__card{
  width:min(430px,100%);
  border-radius:16px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  padding:18px 18px 14px;
  box-shadow:0 26px 74px rgba(0,0,0,.16);
  backdrop-filter: blur(10px);
}
.overdrivehost-hero__card-title{font-weight:650;letter-spacing:.2px;margin-bottom:10px;color:#fff}
.overdrivehost-hero__card-metric{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
  color:rgba(255,255,255,.78);
  font-weight:400;
}
.overdrivehost-pill{
  display:inline-flex;
  align-items:center;
  height:26px;
  padding:0 10px;
  border-radius:var(--overdrivehost-radius-pill);
  font-size:12px;
  font-weight:500;
  letter-spacing:.2px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.88);
}
.overdrivehost-pill--ok{border-color:rgba(0,245,200,.24);background:rgba(0,245,200,.12);color:#bafff4}
.overdrivehost-pill--fast{border-color:rgba(42,107,255,.28);background:rgba(42,107,255,.14);color:#d6e3ff}
.overdrivehost-lat{opacity:.92}

.overdrivehost-bars{
  display:grid;
  grid-template-columns:repeat(6, 1fr);
  gap:10px;
  align-items:end;
  height:96px;
  padding:8px 0 10px;
}
.overdrivehost-bars span{
  display:block;
  border-radius:10px;
  background:linear-gradient(180deg, rgba(0,245,200,.38), rgba(255,255,255,.08));
  opacity:.92;
}
.overdrivehost-bars span:nth-child(1){height:34%}
.overdrivehost-bars span:nth-child(2){height:62%}
.overdrivehost-bars span:nth-child(3){height:46%}
.overdrivehost-bars span:nth-child(4){height:78%}
.overdrivehost-bars span:nth-child(5){height:54%}
.overdrivehost-bars span:nth-child(6){height:66%}

.overdrivehost-hero__card-footer{
  color:rgba(255,255,255,.74);
  font-weight:400;
  letter-spacing:.12px;
  font-size:13px;
}

.overdrivehost-hero__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  width:46px;
  height:46px;
  border-radius:var(--overdrivehost-radius-pill);
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.10);
  color:rgba(255,255,255,.92);
  cursor:pointer;
  display:grid;
  place-items:center;
  transition:background .15s ease, transform .15s ease, opacity .15s ease;
  backdrop-filter: blur(10px);
}
.overdrivehost-hero__arrow:hover{background:rgba(255,255,255,.16);transform:translateY(-50%) scale(1.02)}
.overdrivehost-hero__arrow span{font-size:28px;line-height:1;margin-top:-2px}
.overdrivehost-hero__arrow--left{left:18px}
.overdrivehost-hero__arrow--right{right:18px}

.overdrivehost-hero__controls{
  position:absolute;
  left:50%;
  bottom:24px;
  transform:translateX(-50%);
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:8px 12px;
  border-radius:var(--overdrivehost-radius-pill);
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(10px);
}

.overdrivehost-dot{
  width:11px;height:11px;
  border-radius:var(--overdrivehost-radius-pill);
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.18);
  cursor:pointer;
  transition:transform .15s ease, opacity .15s ease, background .15s ease;
  opacity:.86;
}
.overdrivehost-dot:hover{transform:translateY(-1px);opacity:1}
.overdrivehost-dot.is-active{
  background:rgba(181,22,26,.95);
  border-color:rgba(181,22,26,.95);
  opacity:1;
}

.overdrivehost-pause{
  width:38px;height:26px;
  border-radius:var(--overdrivehost-radius-pill);
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.12);
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  transition:background .15s ease, transform .15s ease;
}
.overdrivehost-pause:hover{background:rgba(255,255,255,.16);transform:translateY(-1px)}
.overdrivehost-pause__bar{width:3px;height:12px;border-radius:2px;background:rgba(255,255,255,.80)}

/* =========================
   BUTTONS
   ========================= */
.overdrivehost-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:44px;
  padding:0 16px;
  border-radius:12px;
  font-weight:500;
  letter-spacing:.10px;
  text-decoration:none;
  cursor:pointer;
  border:1px solid transparent;
  transition:transform .15s ease, opacity .15s ease, box-shadow .15s ease, background .15s ease;
}
.overdrivehost-btn:hover{transform:translateY(-1px);opacity:.99}
.overdrivehost-btn--primary{
  background:var(--overdrivehost-accent);
  color:#fff;
  box-shadow:0 14px 30px rgba(0,0,0,.10);
}
.overdrivehost-btn--light{
  background:rgba(255,255,255,.92);
  color:#111216;
  border-color:rgba(255,255,255,.18);
}

/* =========================
   AUTH / LOGIN (ajout)
   ========================= */
body.overdrivehost.overdrivehost--auth{
  background:
    radial-gradient(900px 520px at 18% 10%, rgba(42,107,255,.10), transparent 55%),
    radial-gradient(820px 520px at 84% 22%, rgba(0,245,200,.08), transparent 60%),
    linear-gradient(180deg, #f5f7ff, #f5f7ff);
}

.overdrivehost-auth{
  padding:44px 0 62px;
}
.overdrivehost-auth__grid{
  display:grid;
  grid-template-columns: 1fr 420px;
  gap:18px;
  align-items:start;
}

.overdrivehost-authCard{
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:16px;
  padding:20px 20px 18px;
  box-shadow:0 18px 48px rgba(0,0,0,.07);
}

.overdrivehost-authCard__head{
  margin-bottom:14px;
}
.overdrivehost-authCard__brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.overdrivehost-authCard__brandText{
  font-weight:650;
  letter-spacing:.14px;
  color:#000;
}
.overdrivehost-authCard__title{
  margin:0 0 6px;
  font-size:24px;
  line-height:1.15;
  letter-spacing:.12px;
  color:#000;
  font-weight:700;
}
.overdrivehost-authCard__sub{
  margin:0;
  color:rgba(0,0,0,.68);
  font-weight:400;
  line-height:1.45;
}

.overdrivehost-authForm{
  display:grid;
  gap:12px;
}

.overdrivehost-field{
  display:grid;
  gap:7px;
}
.overdrivehost-label{
  font-size:13px;
  font-weight:650;
  letter-spacing:.10px;
  color:rgba(0,0,0,.82);
}
.overdrivehost-input{
  height:46px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.12);
  background:linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.00));
  outline:none;
  font-size:14px;
  color:#000;
  transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.overdrivehost-input::placeholder{
  color:rgba(0,0,0,.45);
}
.overdrivehost-input:focus{
  border-color:rgba(181,22,26,.38);
  box-shadow:0 0 0 4px rgba(181,22,26,.12);
}

.overdrivehost-authRow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:2px;
  flex-wrap:wrap;
}

.overdrivehost-check{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:13px;
  color:rgba(0,0,0,.72);
  font-weight:400;
  cursor:pointer;
}
.overdrivehost-check input{
  width:16px;height:16px;
  accent-color: var(--overdrivehost-accent);
}

.overdrivehost-authLink{
  color:rgba(0,0,0,.72);
  text-decoration:none;
  font-weight:500;
  letter-spacing:.08px;
}
.overdrivehost-authLink:hover{
  color:#000;
  text-decoration:underline;
}

.overdrivehost-authBtn{
  width:100%;
  height:46px;
  border-radius:12px;
}

.overdrivehost-authMeta{
  margin-top:4px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
  color:rgba(0,0,0,.68);
  font-size:13px;
}

.overdrivehost-alert{
  border-radius:14px;
  padding:12px 12px 11px;
  border:1px solid rgba(0,0,0,.10);
  margin:12px 0 12px;
  box-shadow:0 14px 34px rgba(0,0,0,.06);
}
.overdrivehost-alert__title{
  font-weight:700;
  letter-spacing:.10px;
  margin-bottom:6px;
}
.overdrivehost-alert__list{
  margin:0;
  padding-left:18px;
  color:rgba(0,0,0,.78);
}
.overdrivehost-alert--error{
  background:linear-gradient(180deg, rgba(181,22,26,.08), rgba(181,22,26,.03));
  border-color:rgba(181,22,26,.20);
}
.overdrivehost-alert--ok{
  background:linear-gradient(180deg, rgba(0,245,200,.10), rgba(0,245,200,.04));
  border-color:rgba(0,245,200,.22);
}

.overdrivehost-authAside__panel{
  border-radius:16px;
  overflow:hidden;
  padding:18px 18px 16px;
  color:#fff;
  border:1px solid rgba(0,0,0,.10);
  box-shadow:0 18px 54px rgba(0,0,0,.10);
  background:
    radial-gradient(420px 220px at 12% 30%, rgba(0,245,200,.22), transparent 60%),
    radial-gradient(420px 240px at 86% 64%, rgba(42,107,255,.30), transparent 62%),
    linear-gradient(135deg, #071a45, #0a2aa6);
  position:relative;
}
.overdrivehost-authAside__panel::before{
  content:"";
  position:absolute;
  inset:-40px;
  opacity:.55;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='900' height='420' viewBox='0 0 900 420'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='1' y2='1'%3E%3Cstop offset='0' stop-color='%23ffffff' stop-opacity='.16'/%3E%3Cstop offset='1' stop-color='%23ffffff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M-40 310 C 170 250, 310 360, 540 300 C 700 255, 790 210, 960 240' fill='none' stroke='url(%23g)' stroke-width='2'/%3E%3Ccircle cx='720' cy='120' r='92' fill='rgba(255,255,255,.10)'/%3E%3Ccircle cx='720' cy='120' r='60' fill='rgba(255,255,255,.06)'/%3E%3C/svg%3E");
  background-size:cover;
  background-position:center;
  pointer-events:none;
}
.overdrivehost-authAside__panel > *{position:relative;z-index:1}

.overdrivehost-authAside__kicker{
  font-size:12px;
  letter-spacing:.18px;
  font-weight:650;
  opacity:.90;
}
.overdrivehost-authAside__title{
  margin-top:6px;
  font-size:20px;
  font-weight:750;
  letter-spacing:.12px;
}
.overdrivehost-authAside__text{
  margin:8px 0 12px;
  font-size:13px;
  line-height:1.45;
  opacity:.92;
}
.overdrivehost-authAside__list{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
  color:rgba(255,255,255,.90);
  font-weight:400;
  line-height:1.45;
}
.overdrivehost-authAside__list li{
  position:relative;
  padding-left:22px;
}
.overdrivehost-authAside__list li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:rgba(0,245,200,.95);
  font-weight:700;
}
.overdrivehost-authAside__note{
  margin-top:12px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.82);
  font-size:12px;
  line-height:1.4;
}

/* =========================
   PRODUCTS
   ========================= */
.overdrivehost-products{
  padding:34px 0 28px;
  background:#fff;
}
.overdrivehost-products__grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:18px;
}
.overdrivehost-card{
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:14px;
  padding:18px 18px 16px;
  box-shadow:0 14px 36px rgba(0,0,0,.06);
}
.overdrivehost-card__kicker{
  display:flex;
  gap:8px;
  align-items:center;
  margin-bottom:10px;
}
.overdrivehost-chip{
  display:inline-flex;
  align-items:center;
  height:24px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:500;
  letter-spacing:.10px;
  border:1px solid rgba(0,0,0,.12);
  background:rgba(0,0,0,.04);
  color:rgba(0,0,0,.78);
}
.overdrivehost-chip--teal{
  border-color:rgba(0,180,120,.25);
  background:rgba(0,180,120,.10);
  color:#0a5a3e;
}
.overdrivehost-chip--violet{
  border-color:rgba(130,80,255,.22);
  background:rgba(130,80,255,.10);
  color:#2a2a72;
}
.overdrivehost-chip--blue{
  border-color:rgba(0,0,0,.12);
  background:rgba(0,0,0,.04);
  color:rgba(0,0,0,.78);
}
.overdrivehost-card__title{
  margin:0 0 6px;
  font-size:22px;
  line-height:1.15;
  letter-spacing:.1px;
  color:#000;
  font-weight:600;
}
.overdrivehost-card__lead{
  margin:0 0 12px;
  color:rgba(0,0,0,.68);
  font-weight:400;
  line-height:1.45;
}
.overdrivehost-card__list{
  margin:0 0 14px;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
  color:rgba(0,0,0,.78);
  font-weight:400;
}
.overdrivehost-card__list li{
  position:relative;
  padding-left:22px;
}
.overdrivehost-card__list li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--overdrivehost-accent);
  font-weight:600;
}
.overdrivehost-card__price{
  margin:0 0 14px;
  color:rgba(0,0,0,.78);
  font-weight:400;
}
.overdrivehost-card__price span{font-weight:600;color:#000}

/* =========================================================
   AJOUT CSS : PARTIE HEBERGEMENT WEB (hebergement-web.php)
   ========================================================= */
.overdrivehost-hosting{
  background:
    radial-gradient(880px 360px at 18% 20%, rgba(42,107,255,.06), transparent 58%),
    radial-gradient(820px 360px at 84% 26%, rgba(0,245,200,.05), transparent 60%),
    linear-gradient(180deg, #ffffff, #ffffff);
  border-top:1px solid rgba(0,0,0,.06);
  position:relative;
}

.overdrivehost-hosting__head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}

.overdrivehost-hosting__titleWrap{
  max-width:760px;
}

.overdrivehost-hosting__title{
  margin:0 0 6px;
  font-size:22px;
  line-height:1.15;
  letter-spacing:.10px;
  color:#000;
  font-weight:700;
}

.overdrivehost-hosting__sub{
  margin:0;
  color:rgba(0,0,0,.68);
  font-weight:400;
  line-height:1.45;
}

.overdrivehost-hostingToggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  height:44px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.10);
  background:linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.00));
  color:#000;
  cursor:pointer;
  font-weight:650;
  letter-spacing:.10px;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
  box-shadow:0 12px 30px rgba(0,0,0,.06);
  white-space:nowrap;
}
.overdrivehost-hostingToggle:hover{
  transform:translateY(-1px);
  background:linear-gradient(180deg, rgba(0,0,0,.03), rgba(0,0,0,.00));
  box-shadow:0 14px 36px rgba(0,0,0,.08);
}
.overdrivehost-hostingToggle:focus-visible{
  outline:2px solid rgba(181,22,26,.35);
  outline-offset:3px;
}

.overdrivehost-hostingToggle__icon{
  width:12px;
  height:12px;
  display:inline-block;
  border-right:2px solid rgba(0,0,0,.70);
  border-bottom:2px solid rgba(0,0,0,.70);
  transform:rotate(45deg);
  margin-top:-2px;
  transition:transform .18s ease;
}
.overdrivehost-hosting.is-open .overdrivehost-hostingToggle__icon{
  transform:rotate(225deg);
  margin-top:2px;
}

/* Box offres hébergement : structure pro */
.overdrivehost-offer{
  display:flex;
  flex-direction:column;
  gap:12px;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
  background:
    radial-gradient(520px 260px at 10% 0%, rgba(42,107,255,.05), transparent 62%),
    radial-gradient(520px 260px at 90% 0%, rgba(0,245,200,.04), transparent 62%),
    linear-gradient(180deg, rgba(0,0,0,.00), rgba(0,0,0,.00));
}

@media (hover:hover){
  .overdrivehost-offer:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 54px rgba(0,0,0,.08);
    border-color:rgba(0,0,0,.14);
  }
}

.overdrivehost-offer__top{
  padding-bottom:2px;
}

.overdrivehost-offer__body{
  flex:1 1 auto;
}

.overdrivehost-offer__foot{
  padding-top:2px;
  border-top:1px solid rgba(0,0,0,.08);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.overdrivehost-offer__cta{
  height:44px;
}

.overdrivehost-offer__highlights{
  margin:0 0 6px;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
  color:rgba(0,0,0,.78);
}
.overdrivehost-offer__highlights li{
  position:relative;
  padding-left:22px;
}
.overdrivehost-offer__highlights li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--overdrivehost-accent);
  font-weight:700;
}

/* Détails repliés/dépliés (les 3 box en même temps) */
.overdrivehost-offer__details{
  margin-top:12px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.10);
  background:
    radial-gradient(560px 180px at 20% 30%, rgba(42,107,255,.06), transparent 58%),
    linear-gradient(180deg, rgba(0,0,0,.015), rgba(0,0,0,.00));
  padding:12px 12px 10px;
  box-shadow:0 14px 34px rgba(0,0,0,.05);
  display:none; /* caché par défaut */
}
.overdrivehost-hosting.is-open .overdrivehost-offer__details{
  display:block;
}

.overdrivehost-offer__detailsTitle{
  font-size:12px;
  letter-spacing:.18px;
  font-weight:750;
  color:rgba(0,0,0,.72);
  margin-bottom:10px;
  text-transform:uppercase;
}

.overdrivehost-offer__features{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}

.overdrivehost-feature{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:rgba(0,0,0,.78);
  line-height:1.35;
}
.overdrivehost-feature::before{
  content:"✓";
  width:18px;
  height:18px;
  border-radius:6px;
  display:inline-grid;
  place-items:center;
  font-weight:900;
  font-size:12px;
  margin-top:1px;
  background:rgba(0,180,120,.10);
  border:1px solid rgba(0,180,120,.22);
  color:#0a5a3e;
}
.overdrivehost-feature--no::before{
  content:"✕";
  background:rgba(181,22,26,.08);
  border:1px solid rgba(181,22,26,.22);
  color:var(--overdrivehost-accent);
}

.overdrivehost-feature__label{
  display:inline-block;
}

.overdrivehost-offer__note{
  margin:10px 0 0;
  color:rgba(0,0,0,.68);
  font-size:13px;
  line-height:1.45;
}

/* Mise en avant (WEB PRO) */
.overdrivehost-offer--featured{
  border-color:rgba(181,22,26,.22);
  box-shadow:0 18px 54px rgba(181,22,26,.08), 0 14px 36px rgba(0,0,0,.06);
  position:relative;
}
.overdrivehost-offer--featured::after{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:14px;
  pointer-events:none;
  box-shadow:inset 0 0 0 1px rgba(181,22,26,.18);
}

/* =========================================================
   FIN AJOUT CSS : PARTIE HEBERGEMENT WEB
   ========================================================= */

/* =========================
   DOMAIN HERO
   ========================= */
.overdrivehost-domainhero{
  padding:40px 0 42px;
  background:linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.00));
  border-top:1px solid rgba(0,0,0,.06);
}
.overdrivehost-domainhero__form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:12px;
  padding:10px;
  box-shadow:0 18px 46px rgba(0,0,0,.06);
}
.overdrivehost-domainhero__form input{
  height:44px;
  border:0;
  outline:none;
  padding:0 14px;
  font-size:16px;
  font-weight:400;
  color:#000;
}
.overdrivehost-domainhero__form input::placeholder{
  color:rgba(0,0,0,.45);
  font-style:italic;
  font-weight:400;
}
.overdrivehost-domainhero__links{
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  font-weight:400;
}
.overdrivehost-domainhero__links a{
  color:rgba(0,0,0,.70);
  text-decoration:none;
}
.overdrivehost-domainhero__links a:hover{text-decoration:underline;color:#000}

.overdrivehost-tlds{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:16px;
}
.overdrivehost-tld{
  background:#fff;
  border:1px solid rgba(0,0,0,.10);
  border-radius:12px;
  padding:16px 14px;
  text-align:center;
  box-shadow:0 14px 34px rgba(0,0,0,.05);
}
.overdrivehost-tld__ext{
  font-weight:600;
  font-size:22px;
  color:#000;
  letter-spacing:.2px;
}
.overdrivehost-tld__price{
  margin-top:6px;
  font-weight:600;
  font-size:26px;
  color:var(--overdrivehost-accent);
}
.overdrivehost-tld__meta{
  margin-top:6px;
  font-weight:400;
  color:rgba(0,0,0,.65);
  line-height:1.25;
}
.overdrivehost-tld__meta span{
  display:inline-block;
  margin-top:3px;
  font-weight:400;
  color:rgba(0,0,0,.55);
}

/* =========================
   FOOTER
   ========================= */
.overdrivehost-footer{
  background:linear-gradient(180deg, #111216 0%, #0c0d10 100%);
  color:#ffffff;
  border-top:1px solid rgba(255,255,255,.10);
}
.overdrivehost-footer__grid{
  padding:36px 0 26px;
  display:grid;
  grid-template-columns:1.25fr 1fr 1fr 1fr 1.35fr;
  gap:22px;
  align-items:start;
}
.overdrivehost-footer__brand .overdrivehost-footer__logo{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.overdrivehost-footer__name{
  font-weight:600;
  letter-spacing:.2px;
  color:#fff;
}
.overdrivehost-footer__desc{
  margin:0;
  color:rgba(255,255,255,.80);
  font-weight:400;
  line-height:1.5;
}
.overdrivehost-footer__col h3{
  margin:0 0 10px;
  font-size:14px;
  letter-spacing:.2px;
  font-weight:600;
  color:#fff;
}
.overdrivehost-footer__col a{
  display:block;
  text-decoration:none;
  color:rgba(255,255,255,.78);
  font-weight:400;
  padding:6px 0;
}
.overdrivehost-footer__col a:hover{
  color:#fff;
  text-decoration:underline;
}
.overdrivehost-footer__newsletter p{
  margin:0 0 10px;
  color:rgba(255,255,255,.78);
  font-weight:400;
  line-height:1.45;
}
.overdrivehost-footer__form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  margin:10px 0 10px;
}
.overdrivehost-footer__form input{
  height:44px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:#fff;
  padding:0 12px;
  outline:none;
  font-weight:400;
}
.overdrivehost-footer__form input::placeholder{
  color:rgba(255,255,255,.55);
}
.overdrivehost-footer__newsletter small{
  color:rgba(255,255,255,.60);
  font-weight:400;
  line-height:1.35;
  display:block;
}
.overdrivehost-footer__bottom{
  border-top:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.22);
}
.overdrivehost-footer__bottom-inner{
  padding:14px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
}
.overdrivehost-footer__legal{
  color:rgba(255,255,255,.75);
  font-weight:400;
}
.overdrivehost-footer__links{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.overdrivehost-footer__links a{
  color:rgba(255,255,255,.75);
  text-decoration:none;
  font-weight:400;
}
.overdrivehost-footer__links a:hover{
  color:#fff;
  text-decoration:underline;
}

/* =========================
   RESPONSIVE
   ========================= */
@media (max-width:980px){
  .overdrivehost-container{width:min(var(--overdrivehost-container),calc(100% - 28px))}
  .overdrivehost-topbar__inner{grid-template-columns:auto 1fr auto;gap:12px;height:64px}
  .overdrivehost-topbar__search{width:100%}
  .overdrivehost-topbar__link,.overdrivehost-topbar__sep,.overdrivehost-topbar__lang{display:none}
  .overdrivehost-topbar__toggle{display:inline-flex;align-items:center;justify-content:center}

  .overdrivehost-header__inner{height:auto;padding:10px 0}

  .overdrivehost-nav{
    display:none;
    border:1px solid rgba(0,0,0,.10);
    border-radius:12px;
    overflow:hidden;
    background:#fff;
    position:static; /* ok */
  }
  .overdrivehost-nav.is-open{display:block}

  .overdrivehost-nav__list{
    flex-direction:column;
  }
  .overdrivehost-nav__item{
    flex:none;
    position:relative; /* en mobile accordéon, on peut rester “normal” */
  }
  .overdrivehost-nav__item + .overdrivehost-nav__item{
    border-left:0;
    border-top:1px solid rgba(0,0,0,.08);
  }
  .overdrivehost-nav__item--right{
    flex:none;
    margin-left:0;
  }
  .overdrivehost-nav__link,
  .overdrivehost-nav__trigger{
    justify-content:space-between;
    padding:14px 14px;
    height:auto;
  }
  .overdrivehost-nav__link::after,
  .overdrivehost-nav__trigger::after{display:none}

  /* Mega en mobile : en flux (accordéon) */
  .overdrivehost-mega{
    position:static;
    padding:10px 14px 14px;
    box-shadow:none;
    border-top:1px solid rgba(0,0,0,.08);
    background:linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.00));
  }
  .overdrivehost-mega__inner{
    grid-template-columns:1fr;
    gap:12px;
  }
  .overdrivehost-mega__links{
    min-height:unset;
    flex-wrap:wrap;
  }
  .overdrivehost-mega__link{
    justify-content:flex-start;
    padding:12px 12px;
    flex:1 1 100%;
  }
  .overdrivehost-mega__link + .overdrivehost-mega__link{
    border-left:0;
    border-top:1px solid rgba(0,0,0,.10);
  }

  .overdrivehost-hero{padding:28px 0 70px}
  .overdrivehost-hero__inner{grid-template-columns:1fr;gap:18px;min-height:unset}
  .overdrivehost-hero__visual{justify-items:start}
  .overdrivehost-hero__arrow{display:none}
  .overdrivehost-hero__controls{bottom:18px}
  .overdrivehost-hero__stats{grid-template-columns:1fr;gap:10px}
  .overdrivehost-hero__visualFrame{padding:14px}
  .overdrivehost-hero__float{display:none}

  .overdrivehost-products{padding:26px 0 20px}
  .overdrivehost-products__grid{grid-template-columns:1fr;gap:14px}

  .overdrivehost-domainhero{padding:28px 0 30px}
  .overdrivehost-domainhero__form{grid-template-columns:1fr;gap:10px}
  .overdrivehost-domainhero__links{flex-direction:column;gap:10px}
  .overdrivehost-tlds{grid-template-columns:1fr 1fr;gap:12px}

  .overdrivehost-footer__grid{
    grid-template-columns:1fr;
    gap:16px;
    padding:26px 0 18px;
  }
  .overdrivehost-footer__form{grid-template-columns:1fr;gap:10px}

  /* Auth responsive */
  .overdrivehost-auth{padding:28px 0 40px}
  .overdrivehost-auth__grid{grid-template-columns:1fr}

  /* =========================
     AJOUT CSS : PARTIE HEBERGEMENT WEB (responsive)
     ========================= */
  .overdrivehost-hosting__head{
    flex-direction:column;
    align-items:flex-start;
  }
  .overdrivehost-hostingToggle{
    width:100%;
    justify-content:space-between;
  }
}

@media (max-width:520px){
  .overdrivehost-brandname{display:none}
  .overdrivehost-tlds{grid-template-columns:1fr}
  .overdrivehost-brandlogo{height:32px} /* AUGMENTÉ (avant: 24px) */
}
