/* ============================================================
   dropfleet.eu — Landing Page · Sensory Marketing
   Palette : Navy #0B2545 · Blue #1877F2 · Orange #FF6B00
   ============================================================ */

:root {
  --lp-navy:       #0B2545;
  --lp-navy-2:     #134074;
  --lp-navy-3:     #1A3A5C;
  --lp-blue:       #1877F2;
  --lp-blue-2:     #4FA3E8;
  --lp-blue-pale:  #EBF4FF;
  --lp-orange:     #FF6B00;
  --lp-orange-2:   #FF8A40;
  --lp-orange-pale:#FFF3EA;
  --lp-white:      #FFFFFF;
  --lp-off-white:  #F5F9FF;
  --lp-slate:      #64748B;
  --lp-dark:       #0D1B2A;
  --lp-border:     rgba(255,255,255,.1);
  --lp-glow-blue:  0 0 40px rgba(24,119,242,.3);
  --lp-glow-orange:0 0 40px rgba(255,107,0,.35);
  --lp-radius:     12px;
  --lp-radius-lg:  20px;
  --lp-transition: .22s cubic-bezier(.4,0,.2,1);
}

.page-landing, .page-landing body {
  background: var(--lp-white) !important;
  color: var(--lp-dark);
  font-family: 'DM Sans', system-ui, sans-serif;
  overflow-x: hidden;
}
[data-theme="dark"] .page-landing,
[data-theme="dark"] .page-landing body {
  background: #0A1020 !important;
  color: rgba(255,255,255,.88);
}
[data-theme="dark"] .lp-hero {
  background: linear-gradient(135deg, #060e1a 0%, #0B2545 50%, #0d3060 100%) !important;
}
[data-theme="dark"] .lp-nav:not(.scrolled) {
  background: transparent !important;
}
[data-theme="dark"] .lp-nav.scrolled {
  background: rgba(6,14,26,.97) !important;
}
[data-theme="dark"] .lp-final-cta {
  background: linear-gradient(135deg, #0d2245 0%, #051020 100%) !important;
}
[data-theme="dark"] .lp-footer {
  background: #050d18 !important;
}
[data-theme="dark"] .lp-footer__copy { color: rgba(255,255,255,.3); }
[data-theme="dark"] .lp-footer__link { color: rgba(255,255,255,.4); }
[data-theme="dark"] .lp-testimonials { background: #070f1e !important; }
[data-theme="dark"] .lp-trust       { background: #060e1c !important; }

/* ── NAVBAR ─────────────────────────────────────────────── */
.lp-nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.1rem 2.5rem;
  background: transparent;
  transition: background .22s ease, box-shadow .22s ease;
}
.lp-nav.scrolled {
  background: rgba(11,37,69,.95);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 rgba(255,255,255,.08);
}
.lp-nav__brand {
  display: flex; align-items: center; gap: .5rem;
  font-size: 1.3rem; font-weight: 700;
  color: var(--lp-white); text-decoration: none; letter-spacing: -.02em;
}
.lp-nav__brand .brand-icon {
  width: 32px; height: 32px;
  background: var(--lp-orange); border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: .9rem; color: #fff; flex-shrink: 0;
}
.lp-nav__brand strong { color: var(--lp-orange); }
.lp-nav__links { display: flex; align-items: center; gap: 2rem; }
.lp-nav__links a {
  font-size: .9rem; font-weight: 500;
  color: rgba(255,255,255,.75); text-decoration: none;
  transition: color .22s ease;
}
.lp-nav__links a:hover { color: var(--lp-white); text-decoration: none; }
.lp-nav__ctas { display: flex; align-items: center; gap: .75rem; }

.lp-btn {
  display: inline-flex; align-items: center; gap: .45rem;
  padding: .55rem 1.25rem; border-radius: var(--lp-radius);
  font-size: .875rem; font-weight: 600;
  text-decoration: none; transition: all .22s ease;
  cursor: pointer; border: none; white-space: nowrap; font-family: inherit;
}
.lp-btn--ghost {
  color: rgba(255,255,255,.85);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.2);
}
.lp-btn--ghost:hover { background: rgba(255,255,255,.15); color: #fff; text-decoration: none; }
.lp-btn--orange { background: var(--lp-orange); color: #fff; box-shadow: 0 4px 16px rgba(255,107,0,.4); }
.lp-btn--orange:hover { background: var(--lp-orange-2); box-shadow: 0 6px 24px rgba(255,107,0,.55); transform: translateY(-1px); text-decoration: none; color: #fff; }
.lp-btn--blue { background: var(--lp-blue); color: #fff; box-shadow: 0 4px 16px rgba(24,119,242,.4); }
.lp-btn--blue:hover { background: #1468d9; box-shadow: 0 6px 24px rgba(24,119,242,.55); transform: translateY(-1px); text-decoration: none; color: #fff; }
.lp-btn--lg { padding: .85rem 2rem; font-size: 1rem; border-radius: 14px; }
.lp-btn--outline-white { background: transparent; color: rgba(255,255,255,.85); border: 1.5px solid rgba(255,255,255,.3); }
.lp-btn--outline-white:hover { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.6); text-decoration: none; }
@media(max-width:768px){ .lp-nav { padding: 1rem 1.25rem; } .lp-nav__links { display: none; } }

/* ── HERO ───────────────────────────────────────────────── */
.lp-hero {
  position: relative; min-height: 100vh;
  display: flex; align-items: center;
  overflow: hidden; background: var(--lp-navy);
}
#heroCanvas {
  position: absolute; inset: 0; width: 100%; height: 100%;
  opacity: .65; pointer-events: none;
}
.lp-hero__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(11,37,69,.88) 0%, rgba(11,37,69,.45) 55%, rgba(255,107,0,.06) 100%);
}
.lp-hero__content {
  position: relative; z-index: 2;
  max-width: 1200px; margin: 0 auto; padding: 8rem 2.5rem 5rem;
  display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center;
}
.lp-hero__badge {
  display: inline-flex; align-items: center; gap: .5rem;
  background: rgba(255,107,0,.15); border: 1px solid rgba(255,107,0,.35);
  color: var(--lp-orange-2); font-size: .78rem; font-weight: 700;
  padding: .35rem .85rem; border-radius: 999px; margin-bottom: 1.5rem;
  letter-spacing: .05em; text-transform: uppercase;
}
.lp-hero__title {
  font-size: clamp(2.4rem, 4.5vw, 3.8rem); font-weight: 800;
  line-height: 1.1; color: var(--lp-white); margin-bottom: 1.25rem; letter-spacing: -.03em;
}
.lp-hero__title .accent-orange { color: var(--lp-orange); }
.lp-hero__title .accent-blue { color: var(--lp-blue-2); }
.lp-hero__sub {
  font-size: 1.12rem; color: rgba(255,255,255,.68);
  line-height: 1.7; margin-bottom: 2.5rem; max-width: 480px;
}
.lp-hero__cta { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.5rem; }
.lp-hero__note {
  font-size: .8rem; color: rgba(255,255,255,.38);
  display: flex; align-items: center; gap: .4rem;
}
/* Mockup */
.lp-hero__right { display: flex; justify-content: center; }
.lp-mock {
  width: 100%; max-width: 420px;
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 20px; overflow: hidden;
  backdrop-filter: blur(10px);
  box-shadow: 0 24px 80px rgba(0,0,0,.4), var(--lp-glow-blue);
}
.lp-mock__topbar {
  display: flex; align-items: center; gap: .5rem;
  padding: .75rem 1rem;
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.lp-mock__dot { width: 10px; height: 10px; border-radius: 50%; }
.lp-mock__dot--r { background: #FF5F57; }
.lp-mock__dot--y { background: #FFBD2E; }
.lp-mock__dot--g { background: #28CA41; }
.lp-mock__topbar span { margin-left: .5rem; font-size: .8rem; color: rgba(255,255,255,.45); font-weight: 500; }
.lp-mock__body { padding: 1.25rem; display: flex; flex-direction: column; gap: .85rem; }
.lp-mock__stat {
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.07);
  border-radius: 10px; padding: .85rem 1rem;
  display: flex; align-items: center; gap: .85rem;
}
.lp-mock__stat-icon {
  width: 38px; height: 38px; border-radius: 9px;
  display: flex; align-items: center; justify-content: center;
  font-size: .95rem; flex-shrink: 0;
}
.lp-mock__stat-icon--blue  { background: rgba(24,119,242,.18); color: var(--lp-blue-2); }
.lp-mock__stat-icon--orange{ background: rgba(255,107,0,.18);  color: var(--lp-orange-2); }
.lp-mock__stat-icon--green { background: rgba(40,202,65,.18);  color: #4ADE80; }
.lp-mock__stat-n { display: block; font-size: 1.4rem; font-weight: 700; color: var(--lp-white); line-height: 1; }
.lp-mock__stat-label { font-size: .73rem; color: rgba(255,255,255,.42); margin-top: .2rem; }
.lp-mock__map {
  border-radius: 10px; height: 110px;
  background: linear-gradient(135deg, #0f2a4a 0%, #1a3a5c 100%);
  display: flex; align-items: center; justify-content: center;
  border: 1px solid rgba(255,255,255,.07);
  position: relative; overflow: hidden;
}
.lp-mock__map-pulse {
  position: absolute; border-radius: 50%;
}
.lp-mock__map-pulse:nth-child(1){ width:8px;height:8px;background:var(--lp-orange);top:32%;left:35%;animation:pulse-dot 2s infinite; }
.lp-mock__map-pulse:nth-child(2){ width:6px;height:6px;background:var(--lp-blue-2);top:60%;left:65%;animation:pulse-dot 2s infinite .65s; }
.lp-mock__map-pulse:nth-child(3){ width:6px;height:6px;background:#4ADE80;top:48%;left:20%;animation:pulse-dot 2s infinite 1.3s; }
.lp-mock__map-label { position:relative;z-index:1;display:flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.45);font-size:.78rem; }
@keyframes pulse-dot {
  0%  { box-shadow:0 0 0 0 currentColor; }
  70% { box-shadow:0 0 0 10px transparent; }
  100%{ box-shadow:0 0 0 0 transparent; }
}
@media(max-width:768px){ .lp-hero__content{ grid-template-columns:1fr;gap:2rem; } .lp-hero__right{ display:none; } }

/* ── STATS BAND ─────────────────────────────────────────── */
.lp-stats {
  background: linear-gradient(90deg, var(--lp-navy-2) 0%, var(--lp-navy) 100%);
  padding: 2rem 2.5rem;
  border-top: 1px solid rgba(255,255,255,.06);
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.lp-stats__inner {
  max-width: 900px; margin: 0 auto;
  display: flex; align-items: center;
  justify-content: space-around; gap: 2rem; flex-wrap: wrap;
}
.lp-stat-item { text-align: center; }
.lp-stat-item__number { display: block; font-size: 2rem; font-weight: 800; color: var(--lp-orange); letter-spacing: -.03em; line-height: 1; }
.lp-stat-item__label { font-size: .78rem; color: rgba(255,255,255,.5); margin-top: .3rem; text-transform: uppercase; letter-spacing: .06em; }
.lp-stats__sep { width:1px; height:50px; background:rgba(255,255,255,.1); }
@media(max-width:479px){ .lp-stats__sep{ display:none; } }

/* ── PORTAILS ───────────────────────────────────────────── */
.lp-portals { padding: 6rem 2.5rem; background: var(--lp-off-white); }
.lp-section-header { text-align: center; max-width: 680px; margin: 0 auto 3.5rem; }
.lp-section-header__eyebrow {
  display: inline-block; font-size: .72rem; font-weight: 700;
  letter-spacing: .1em; text-transform: uppercase;
  color: var(--lp-orange); margin-bottom: .75rem;
}
.lp-section-header h2 {
  font-size: clamp(1.8rem, 3.5vw, 2.8rem); font-weight: 800;
  color: var(--lp-dark); letter-spacing: -.03em; line-height: 1.15; margin-bottom: .75rem;
}
.lp-section-header p { font-size: 1.05rem; color: var(--lp-slate); line-height: 1.7; }

.lp-portals__grid {
  max-width: 1140px; margin: 0 auto;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.75rem;
}
.portal-card {
  position: relative; border-radius: var(--lp-radius-lg); overflow: hidden;
  padding: 2.5rem 2rem; display: flex; flex-direction: column; gap: 1.25rem;
  text-decoration: none; border: 1px solid transparent;
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.portal-card::before {
  content: ''; position: absolute; inset: 0;
  opacity: 0; transition: opacity .25s ease; z-index: 0;
}
.portal-card:hover { transform: translateY(-7px); text-decoration: none; }
.portal-card > * { position: relative; z-index: 1; }
/* Client */
.portal-card--client {
  background: linear-gradient(145deg, #EBF4FF 0%, #DBEAFE 100%);
  border-color: rgba(24,119,242,.15); color: var(--lp-dark);
}
.portal-card--client::before { background: linear-gradient(145deg, rgba(24,119,242,.07) 0%, rgba(24,119,242,.13) 100%); }
.portal-card--client:hover { box-shadow: 0 20px 60px rgba(24,119,242,.18); border-color: rgba(24,119,242,.3); }
.portal-card--client:hover::before { opacity: 1; }
/* Driver */
.portal-card--driver {
  background: linear-gradient(145deg, #0B2545 0%, #134074 100%);
  border-color: rgba(255,107,0,.2); color: var(--lp-white);
}
.portal-card--driver::before { background: linear-gradient(145deg, rgba(255,107,0,.05) 0%, rgba(255,107,0,.1) 100%); }
.portal-card--driver:hover { box-shadow: 0 20px 60px rgba(255,107,0,.22), var(--lp-glow-orange); border-color: rgba(255,107,0,.4); }
.portal-card--driver:hover::before { opacity: 1; }
/* Dispatch */
.portal-card--dispatch {
  background: linear-gradient(145deg, #0D1B2A 0%, #0B2545 100%);
  border-color: rgba(79,163,232,.15); color: var(--lp-white);
}
.portal-card--dispatch::before { background: linear-gradient(145deg, rgba(79,163,232,.04) 0%, rgba(79,163,232,.09) 100%); }
.portal-card--dispatch:hover { box-shadow: 0 20px 60px rgba(24,119,242,.22), var(--lp-glow-blue); border-color: rgba(79,163,232,.35); }
.portal-card--dispatch:hover::before { opacity: 1; }

.portal-card__icon-wrap {
  width: 64px; height: 64px; border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem; flex-shrink: 0;
}
.portal-card--client  .portal-card__icon-wrap { background: rgba(24,119,242,.14); color: var(--lp-blue); }
.portal-card--driver  .portal-card__icon-wrap { background: rgba(255,107,0,.18);  color: var(--lp-orange-2); }
.portal-card--dispatch.portal-card__icon-wrap { background: rgba(79,163,232,.14); color: var(--lp-blue-2); }
.portal-card--dispatch .portal-card__icon-wrap { background: rgba(79,163,232,.14); color: var(--lp-blue-2); }

.portal-card__tag {
  display: inline-flex; align-items: center; gap: .4rem;
  font-size: .68rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  padding: .3rem .7rem; border-radius: 999px; width: fit-content;
}
.portal-card--client  .portal-card__tag { background: rgba(24,119,242,.12); color: var(--lp-blue); }
.portal-card--driver  .portal-card__tag { background: rgba(255,107,0,.2);   color: var(--lp-orange-2); }
.portal-card--dispatch.portal-card__tag { background: rgba(79,163,232,.12); color: var(--lp-blue-2); }
.portal-card--dispatch .portal-card__tag { background: rgba(79,163,232,.12); color: var(--lp-blue-2); }

.portal-card__title { font-size: 1.55rem; font-weight: 800; letter-spacing: -.02em; line-height: 1.2; }
.portal-card--client   .portal-card__title { color: var(--lp-dark); }
.portal-card--driver   .portal-card__title,
.portal-card--dispatch .portal-card__title { color: var(--lp-white); }

.portal-card__desc { font-size: .92rem; line-height: 1.65; }
.portal-card--client   .portal-card__desc { color: var(--lp-slate); }
.portal-card--driver   .portal-card__desc,
.portal-card--dispatch .portal-card__desc { color: rgba(255,255,255,.6); }

.portal-card__list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.5rem; }
.portal-card__list li { display:flex; align-items:flex-start; gap:.55rem; font-size:.84rem; }
.portal-card--client   .portal-card__list li { color:#374151; }
.portal-card--driver   .portal-card__list li,
.portal-card--dispatch .portal-card__list li { color:rgba(255,255,255,.68); }
.portal-check { width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.58rem;flex-shrink:0;margin-top:.1rem; }
.portal-card--client   .portal-check { background:rgba(24,119,242,.14); color:var(--lp-blue); }
.portal-card--driver   .portal-check { background:rgba(255,107,0,.2);   color:var(--lp-orange-2); }
.portal-card--dispatch .portal-check { background:rgba(79,163,232,.14); color:var(--lp-blue-2); }

.portal-card__cta {
  display:flex; align-items:center; gap:.5rem;
  font-size:.9rem; font-weight:700; margin-top:auto; padding-top:.75rem;
  transition:gap .22s ease;
}
.portal-card--client   .portal-card__cta { color:var(--lp-blue); }
.portal-card--driver   .portal-card__cta { color:var(--lp-orange-2); }
.portal-card--dispatch .portal-card__cta { color:var(--lp-blue-2); }
.portal-card:hover .portal-card__cta { gap:.9rem; }

@media(max-width:1024px){
  .lp-portals__grid { grid-template-columns:1fr 1fr; max-width:720px; margin:0 auto; }
  .portal-card--driver { grid-column:1 / -1; }
}
@media(max-width:640px){ .lp-portals__grid{ grid-template-columns:1fr; max-width:440px; } }

/* ── FEATURES ───────────────────────────────────────────── */
.lp-features { padding:6rem 2.5rem; background:var(--lp-white); }
.lp-features__grid {
  max-width:1140px; margin:0 auto;
  display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem;
}
.lp-feat-card {
  background:var(--lp-off-white); border:1px solid rgba(11,37,69,.07);
  border-radius:var(--lp-radius); padding:1.75rem 1.5rem;
  opacity:0; transform:translateY(24px);
  transition: opacity .5s ease, transform .5s ease, box-shadow .22s ease, border-color .22s ease;
}
.lp-feat-card.revealed { opacity:1; transform:translateY(0); }
.lp-feat-card:hover { transform:translateY(-4px); box-shadow:0 12px 40px rgba(11,37,69,.1); border-color:rgba(24,119,242,.2); }
.lp-feat-card__icon { width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;margin-bottom:1rem; }
.lp-feat-card__icon--blue   { background:rgba(24,119,242,.1);  color:var(--lp-blue); }
.lp-feat-card__icon--orange { background:rgba(255,107,0,.1);   color:var(--lp-orange); }
.lp-feat-card__icon--navy   { background:rgba(11,37,69,.08);   color:var(--lp-navy-2); }
.lp-feat-card__icon--teal   { background:rgba(20,184,166,.1);  color:#0D9488; }
.lp-feat-card__title { font-size:.95rem; font-weight:700; color:var(--lp-dark); margin-bottom:.45rem; }
.lp-feat-card__desc  { font-size:.84rem; color:var(--lp-slate); line-height:1.6; }
@media(max-width:1024px){ .lp-features__grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:640px) { .lp-features__grid{ grid-template-columns:1fr; } }

/* ── SOCIAL PROOF ───────────────────────────────────────── */
.lp-proof {
  padding:5rem 2.5rem;
  background:linear-gradient(135deg, var(--lp-navy) 0%, #0D2E56 100%);
}
.lp-proof__inner {
  max-width:1000px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:center;
}
.lp-proof__claim h2 { font-size:clamp(1.8rem,3vw,2.5rem); font-weight:800; color:var(--lp-white); letter-spacing:-.03em; line-height:1.2; margin-bottom:1rem; }
.lp-proof__claim p  { color:rgba(255,255,255,.58); font-size:1.05rem; line-height:1.7; margin-bottom:2rem; }
.lp-proof__metrics  { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.lp-proof-metric { background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08); border-radius:var(--lp-radius); padding:1.25rem; }
.lp-proof-metric__n { font-size:1.8rem; font-weight:800; color:var(--lp-orange); letter-spacing:-.03em; line-height:1; }
.lp-proof-metric__l { font-size:.76rem; color:rgba(255,255,255,.48); margin-top:.3rem; text-transform:uppercase; letter-spacing:.05em; }
@media(max-width:768px){ .lp-proof__inner{ grid-template-columns:1fr; gap:2.5rem; } }

/* ── PRICING ────────────────────────────────────────────── */
.lp-pricing { padding:6rem 2.5rem; background:var(--lp-off-white); }
.lp-pricing__grid { max-width:1000px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.lp-plan {
  background:var(--lp-white); border:1px solid rgba(11,37,69,.1);
  border-radius:var(--lp-radius-lg); padding:2rem 1.75rem;
  display:flex; flex-direction:column; gap:1rem;
  transition:transform .22s ease, box-shadow .22s ease; position:relative;
  color:var(--lp-dark);
}
.lp-plan:hover { transform:translateY(-4px); box-shadow:0 16px 50px rgba(11,37,69,.1); }
.lp-plan--featured {
  background:linear-gradient(145deg, var(--lp-navy) 0%, #134074 100%);
  border-color:rgba(24,119,242,.3); color:var(--lp-white);
  box-shadow:0 8px 32px rgba(11,37,69,.3);
}
.lp-plan--featured:hover { box-shadow:0 20px 60px rgba(24,119,242,.28); }
.lp-plan__badge {
  position:absolute; top:-12px; left:50%; transform:translateX(-50%);
  background:var(--lp-orange); color:#fff;
  font-size:.68rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase;
  padding:.3rem .9rem; border-radius:999px; white-space:nowrap;
  box-shadow:0 4px 12px rgba(255,107,0,.4);
}
.lp-plan__name { font-size:.9rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
.lp-plan--featured .lp-plan__name { color:rgba(255,255,255,.65); }
.lp-plan__price { display:flex; align-items:baseline; gap:.35rem; }
.lp-plan__amount { font-size:2.4rem; font-weight:800; letter-spacing:-.04em; }
.lp-plan--featured .lp-plan__amount { color:var(--lp-white); }
.lp-plan__period { font-size:.85rem; color:var(--lp-slate); }
.lp-plan--featured .lp-plan__period { color:rgba(255,255,255,.48); }
.lp-plan__divider { height:1px; background:rgba(11,37,69,.08); }
.lp-plan--featured .lp-plan__divider { background:rgba(255,255,255,.1); }
.lp-plan__features { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:.6rem; flex:1; }
.lp-plan__features li { display:flex; align-items:flex-start; gap:.6rem; font-size:.875rem; color:#374151; }
.lp-plan--featured .lp-plan__features li { color:rgba(255,255,255,.76); }
.lp-plan__features li i { color:var(--lp-blue); font-size:.68rem; flex-shrink:0; margin-top:.28rem; }
.lp-plan--featured .lp-plan__features li i { color:var(--lp-orange-2); }
.lp-plan__cta {
  display:block; text-align:center;
  padding:.8rem 1.5rem; border-radius:var(--lp-radius);
  font-size:.9rem; font-weight:700; text-decoration:none;
  transition:all .22s ease; margin-top:.5rem;
}
.lp-plan:not(.lp-plan--featured) .lp-plan__cta { background:var(--lp-blue-pale); color:var(--lp-blue); border:1.5px solid rgba(24,119,242,.2); }
.lp-plan:not(.lp-plan--featured) .lp-plan__cta:hover { background:var(--lp-blue); color:#fff; border-color:var(--lp-blue); text-decoration:none; }
.lp-plan--featured .lp-plan__cta { background:var(--lp-orange); color:#fff; box-shadow:0 4px 16px rgba(255,107,0,.4); }
.lp-plan--featured .lp-plan__cta:hover { background:var(--lp-orange-2); box-shadow:0 6px 24px rgba(255,107,0,.55); text-decoration:none; }
@media(max-width:640px){ .lp-pricing__grid{ grid-template-columns:1fr; max-width:420px; margin:0 auto; } }

/* ── FINAL CTA ──────────────────────────────────────────── */
.lp-final-cta {
  padding:7rem 2.5rem;
  background:linear-gradient(135deg, #0D1B2A 0%, var(--lp-navy) 50%, #0E2240 100%);
  text-align:center; position:relative; overflow:hidden;
}
.lp-final-cta::before {
  content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:600px; height:600px;
  background:radial-gradient(circle, rgba(255,107,0,.07) 0%, transparent 70%);
  pointer-events:none;
}
.lp-final-cta h2 { position:relative; font-size:clamp(2rem,4vw,3.2rem); font-weight:800; color:var(--lp-white); letter-spacing:-.03em; line-height:1.15; margin-bottom:1rem; }
.lp-final-cta p { position:relative; color:rgba(255,255,255,.58); font-size:1.1rem; margin-bottom:2.5rem; max-width:480px; margin-left:auto; margin-right:auto; line-height:1.7; }
.lp-final-cta__btns { position:relative; display:flex; align-items:center; justify-content:center; gap:1rem; flex-wrap:wrap; }
.lp-final-cta__note { position:relative; margin-top:1.5rem; font-size:.78rem; color:rgba(255,255,255,.32); display:flex; align-items:center; justify-content:center; gap:1.5rem; flex-wrap:wrap; }
.lp-final-cta__note span { display:flex; align-items:center; gap:.35rem; }

/* ── FOOTER ─────────────────────────────────────────────── */
.lp-footer { background:#060E18; padding:2.5rem; border-top:1px solid rgba(255,255,255,.05); }
.lp-footer__inner { max-width:1140px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; flex-wrap:wrap; }
.lp-footer__brand { display:flex; align-items:center; gap:.5rem; font-size:1.1rem; font-weight:700; color:var(--lp-white); text-decoration:none; }
.lp-footer__brand strong { color:var(--lp-orange); }
.lp-footer__links { display:flex; gap:1.75rem; flex-wrap:wrap; }
.lp-footer__links a { font-size:.82rem; color:rgba(255,255,255,.38); text-decoration:none; transition:color .22s; }
.lp-footer__links a:hover { color:rgba(255,255,255,.78); }
.lp-footer__copy { font-size:.76rem; color:rgba(255,255,255,.22); }
@media(max-width:640px){ .lp-footer__inner{ flex-direction:column; text-align:center; } }

/* ── REVEAL ANIMATIONS ──────────────────────────────────── */
.reveal { opacity:0; transform:translateY(28px); transition:opacity .6s ease, transform .6s ease; }
.reveal.revealed { opacity:1; transform:translateY(0); }
.reveal-delay-1 { transition-delay:.1s; }
.reveal-delay-2 { transition-delay:.2s; }
.reveal-delay-3 { transition-delay:.3s; }
.reveal-delay-4 { transition-delay:.4s; }

/* ── Lang picker (3 langues) ────────────────────────────── */
.lp-lang-picker { position: relative; }
.lp-lang-picker__btn {
  display: flex; align-items: center; gap: .4rem;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.8); border-radius: var(--lp-radius);
  padding: .45rem .85rem; font-size: .82rem; font-weight: 600;
  cursor: pointer; transition: all var(--lp-transition); font-family: inherit;
}
.lp-lang-picker__btn:hover { background: rgba(255,255,255,.15); color: #fff; }
.lp-lang-picker__dropdown {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  display: grid;
  position: absolute; top: calc(100% + 8px); right: 0;
  background: #0D2040; border: 1px solid rgba(255,255,255,.1);
  border-radius: var(--lp-radius); overflow: hidden;
  box-shadow: 0 12px 40px rgba(0,0,0,.4);
  z-index: 1100;
  grid-template-columns: 1fr; min-width: 150px;
  transition: opacity .15s ease, visibility .15s ease;
}
.lp-lang-picker--open .lp-lang-picker__dropdown {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.lp-lang-picker__item {
  display: block; padding: .65rem 1.1rem;
  font-size: .85rem; color: rgba(255,255,255,.7);
  text-decoration: none; transition: background var(--lp-transition), color var(--lp-transition);
  font-weight: 500;
}
.lp-lang-picker__item:hover { background: rgba(255,255,255,.08); color: #fff; text-decoration: none; }
.lp-lang-picker__item.active { color: var(--lp-orange); font-weight: 700; }

/* ── Toggle thème ───────────────────────────────────────── */
.lp-theme-toggle {
  width: 36px; height: 36px;
  border-radius: var(--lp-radius);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.8); font-size: .9rem;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: all var(--lp-transition); flex-shrink: 0;
}
.lp-theme-toggle:hover { background: rgba(255,255,255,.15); color: #fff; }

/* ── Dark mode landing ──────────────────────────────────── */
[data-theme="dark"] .lp-portals     { background: #0A1628; }
[data-theme="dark"] .lp-features    { background: #0D1B2A; }
[data-theme="dark"] .lp-pricing     { background: #0A1628; }
[data-theme="dark"] .lp-off-white   { background: #0A1628; }
[data-theme="dark"] .lp-feat-card   { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.07); }
[data-theme="dark"] .lp-feat-card:hover { border-color: rgba(24,119,242,.3); }
[data-theme="dark"] .lp-feat-card__title { color: #fff; }
[data-theme="dark"] .lp-feat-card__desc  { color: rgba(255,255,255,.55); }
[data-theme="dark"] .lp-section-header h2 { color: #fff; }
[data-theme="dark"] .lp-section-header p  { color: rgba(255,255,255,.55); }
[data-theme="dark"] .portal-card--client {
  background: linear-gradient(145deg, #0F2444 0%, #1A3A6C 100%);
  border-color: rgba(24,119,242,.2);
}
[data-theme="dark"] .portal-card--client .portal-card__title { color: #fff; }
[data-theme="dark"] .portal-card--client .portal-card__desc  { color: rgba(255,255,255,.6); }
[data-theme="dark"] .portal-card--client .portal-card__list li { color: rgba(255,255,255,.7); }
[data-theme="dark"] .portal-card--client .portal-check { background: rgba(24,119,242,.18); color: var(--lp-blue-2); }
[data-theme="dark"] .lp-plan { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.08); color: #fff; }
[data-theme="dark"] .lp-plan__amount { color: #fff; }
[data-theme="dark"] .lp-plan__features li { color: rgba(255,255,255,.72); }
[data-theme="dark"] .lp-plan__divider { background: rgba(255,255,255,.08); }
[data-theme="dark"] .lp-plan:not(.lp-plan--featured) .lp-plan__cta {
  background: rgba(24,119,242,.15); color: var(--lp-blue-2); border-color: rgba(24,119,242,.25);
}
[data-theme="dark"] .lp-plan:not(.lp-plan--featured) .lp-plan__cta:hover {
  background: var(--lp-blue); color: #fff;
}

@media(max-width:768px){
  .lp-nav__ctas { gap: .4rem; }
  .lp-lang-picker__btn span { display: none; }
}

/* ── Logo SVG ───────────────────────────────────────────── */
.lp-nav__logo {
  height: 53px;
  width: auto;
  display: block;
  object-fit: contain;
  filter: brightness(1);
  transition: opacity .2s ease;
}
.lp-nav__brand:hover .lp-nav__logo { opacity: .85; }
.lp-footer__logo {
  height: 43px;
  width: auto;
  display: block;
  object-fit: contain;
  opacity: .85;
  transition: opacity .2s ease;
}
.lp-footer__brand:hover .lp-footer__logo { opacity: 1; }
/* Supprimer les règles texte obsolètes */
.lp-nav__brand strong,
.lp-footer__brand strong { display: none; }

/* ══════════════════════════════════════════════════════════
   MOCK PANEL v2 — Driver tracking
   ══════════════════════════════════════════════════════════ */
/* Topbar amélioré */
.lp-mock__title { margin-left: .5rem; font-size: .78rem; color: rgba(255,255,255,.4); font-weight: 500; flex: 1; }
.lp-mock__live  { display: flex; align-items: center; gap: .35rem; font-size: .72rem; font-weight: 700;
                  color: #4ADE80; letter-spacing: .04em; }
.lp-mock__live-dot { width: 7px; height: 7px; border-radius: 50%; background: #4ADE80;
                     box-shadow: 0 0 0 0 rgba(74,222,128,.5);
                     animation: live-ping 1.6s ease-out infinite; }
@keyframes live-ping {
  0%   { box-shadow: 0 0 0 0 rgba(74,222,128,.6); }
  70%  { box-shadow: 0 0 0 7px rgba(74,222,128,0); }
  100% { box-shadow: 0 0 0 0 rgba(74,222,128,0); }
}
/* Topbar layout */
.lp-mock__topbar { display: flex; align-items: center; }

/* Stats row (horizontal) */
.lp-mock__stats-row {
  padding: .9rem 1.1rem .6rem;
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: .5rem;
  border-bottom: 1px solid rgba(255,255,255,.07);
}
.lp-mock__stats-row .lp-mock__stat { gap: .5rem; }
.lp-mock__stats-row .lp-mock__stat-icon { width: 28px; height: 28px; font-size: .75rem; border-radius: 8px; }
.lp-mock__stats-row .lp-mock__stat-n { font-size: 1.1rem; }
.lp-mock__stats-row .lp-mock__stat-label { font-size: .65rem; }

/* ── Tracking section ── */
.lp-mock__tracking {
  padding: .75rem 1.1rem 1rem;
  display: flex; flex-direction: column; gap: .6rem;
}
.lp-mock__tracking-header {
  display: flex; align-items: center; gap: .4rem;
  font-size: .74rem; color: rgba(255,255,255,.45); font-weight: 600;
  letter-spacing: .04em; text-transform: uppercase;
}
.lp-mock__tracking-header i { color: var(--lp-blue-2); font-size: .8rem; }
.lp-mock__tracking-count {
  margin-left: auto;
  background: rgba(74,222,128,.12); color: #4ADE80;
  border: 1px solid rgba(74,222,128,.25);
  border-radius: 20px; padding: .1rem .55rem;
  font-size: .65rem; font-weight: 700;
}

/* Mini-carte SVG */
.lp-mock__map-wrap {
  border-radius: 10px; overflow: hidden;
  background: linear-gradient(135deg, rgba(11,37,69,.9) 0%, rgba(8,22,48,.95) 100%);
  border: 1px solid rgba(255,255,255,.07);
  position: relative;
}
.lp-mock__map-svg { display: block; width: 100%; height: auto; }
.lp-driver-dot {
  filter: drop-shadow(0 0 4px currentColor);
}

/* Liste chauffeurs */
.lp-mock__drivers { display: flex; flex-direction: column; gap: .45rem; }
.lp-mock__driver {
  display: flex; align-items: center; gap: .65rem;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 10px; padding: .55rem .75rem;
  transition: border-color .2s;
}
.lp-mock__driver:hover { border-color: rgba(24,119,242,.25); }
.lp-mock__driver-avatar {
  width: 28px; height: 28px; border-radius: 50%;
  background: linear-gradient(135deg, var(--lp-blue), #134074);
  color: #fff; font-size: .65rem; font-weight: 700;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; letter-spacing: .02em;
}
.lp-mock__driver-avatar--done {
  background: linear-gradient(135deg, #16a34a, #15803d);
}
.lp-mock__driver-info { flex: 1; min-width: 0; }
.lp-mock__driver-name { display: block; font-size: .75rem; color: rgba(255,255,255,.8); font-weight: 600; margin-bottom: .25rem; }
.lp-mock__driver-bar {
  height: 3px; background: rgba(255,255,255,.08); border-radius: 2px; overflow: hidden;
}
.lp-mock__driver-bar--done .lp-mock__driver-fill { background: #4ADE80; }
.lp-mock__driver-fill {
  height: 100%; background: linear-gradient(90deg, var(--lp-blue), var(--lp-orange));
  border-radius: 2px;
  animation: bar-shimmer 3s ease-in-out infinite alternate;
}
@keyframes bar-shimmer {
  0%   { filter: brightness(1); }
  100% { filter: brightness(1.3); }
}
.lp-mock__driver-status {
  font-size: .65rem; font-weight: 700; display: flex; align-items: center; gap: .3rem;
  white-space: nowrap; flex-shrink: 0;
}
.lp-mock__driver-status--transit { color: var(--lp-orange-2); }
.lp-mock__driver-status--done    { color: #4ADE80; }
.lp-mock__driver-status i        { font-size: .7rem; }

/* ── Plan PRO+ (featured orange) ── */
.lp-plan--pro-plus {
  background: linear-gradient(145deg, #0B2545 0%, #134074 100%);
  border-color: rgba(255,107,0,.35);
  box-shadow: 0 8px 32px rgba(255,107,0,.18);
}
.lp-plan--pro-plus:hover { box-shadow: 0 20px 56px rgba(255,107,0,.28); }
.lp-plan--pro-plus .lp-plan__name   { color: rgba(255,255,255,.65); }
.lp-plan--pro-plus .lp-plan__amount { color: var(--lp-white); }
.lp-plan--pro-plus .lp-plan__period { color: rgba(255,255,255,.48); }
.lp-plan--pro-plus .lp-plan__divider{ background: rgba(255,255,255,.1); }
.lp-plan--pro-plus .lp-plan__features li   { color: rgba(255,255,255,.76); }
.lp-plan--pro-plus .lp-plan__features li i { color: var(--lp-orange-2); }
.lp-plan--pro-plus .lp-plan__cta {
  background: var(--lp-orange); color: #fff;
  box-shadow: 0 4px 16px rgba(255,107,0,.4);
}
.lp-plan--pro-plus .lp-plan__cta:hover {
  background: var(--lp-orange-2);
  box-shadow: 0 6px 24px rgba(255,107,0,.55); text-decoration: none;
}
.lp-plan--pro-plus .lp-plan__badge  { background: rgba(255,107,0,.25); color: var(--lp-orange-2); border: 1px solid rgba(255,107,0,.3); }

/* 4 plans : grille 4 colonnes */
@media(min-width:1024px) { .lp-pricing__grid { grid-template-columns: repeat(4,1fr); } }
@media(min-width:640px) and (max-width:1023px) { .lp-pricing__grid { grid-template-columns: repeat(2,1fr); } }

/* dark mode PRO+ */
[data-theme="dark"] .lp-plan--pro-plus { background: linear-gradient(145deg, #081528 0%, #0F2444 100%); border-color: rgba(255,107,0,.3); }

/* ═══════════════════════════════════════════════════════════════════════════
   lp-legal — Pages juridiques dropfleet.eu
   Bleu/Orange design system — classes lp-legal__*
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Conteneur principal ────────────────────────────────────────────────── */
.lp-legal {
  max-width: 860px;
  margin: 0 auto;
  padding: 0;
  color: var(--lp-dark);
  font-size: 1rem;
  line-height: 1.75;
}

/* ── En-tête ────────────────────────────────────────────────────────────── */
.lp-legal__header {
  text-align: center;
  padding: 2.5rem 1.5rem 2rem;
  margin-bottom: 1rem;
  border-bottom: 2px solid var(--lp-blue-pale);
}
.lp-legal__header-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 1.25rem;
  background: linear-gradient(135deg, var(--lp-blue) 0%, var(--lp-blue-2) 100%);
  border-radius: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  color: #fff;
  box-shadow: 0 8px 24px rgba(24,119,242,.3);
}
.lp-legal__h1 {
  font-size: clamp(1.6rem, 4vw, 2.4rem);
  font-weight: 800;
  letter-spacing: -.03em;
  color: var(--lp-navy);
  margin: 0 0 .6rem;
  line-height: 1.1;
}
.lp-legal__subtitle {
  font-size: .9rem;
  color: var(--lp-slate);
  margin: 0 0 1.25rem;
}
.lp-legal__subtitle i { margin-right: .35rem; color: var(--lp-orange); }
.lp-legal__preamble {
  font-size: 1.02rem;
  color: var(--lp-slate);
  max-width: 640px;
  margin: 0 auto;
  line-height: 1.7;
}

/* ── Sections ───────────────────────────────────────────────────────────── */
.lp-legal__section {
  padding: 2rem 1.5rem;
  border-bottom: 1px solid rgba(24,119,242,.1);
}
.lp-legal__section:last-child { border-bottom: none; }

/* ── Titres ─────────────────────────────────────────────────────────────── */
.lp-legal__h2 {
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--lp-navy);
  margin: 0 0 1.25rem;
  display: flex;
  align-items: center;
  gap: .65rem;
  letter-spacing: -.01em;
}
.lp-legal__num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  min-width: 28px;
  background: linear-gradient(135deg, var(--lp-blue) 0%, var(--lp-blue-2) 100%);
  color: #fff;
  font-size: .78rem;
  font-weight: 700;
  border-radius: 8px;
  flex-shrink: 0;
}
.lp-legal__h3 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--lp-navy);
  margin: 1.4rem 0 .6rem;
  padding-left: .75rem;
  border-left: 3px solid var(--lp-orange);
}
.lp-legal__h3 i { margin-right: .4rem; color: var(--lp-blue); }

/* ── Paragraphes ────────────────────────────────────────────────────────── */
.lp-legal p { margin: 0 0 .85rem; color: #374151; }
.lp-legal p:last-child { margin-bottom: 0; }

/* ── Listes ─────────────────────────────────────────────────────────────── */
.lp-legal__ul {
  padding-left: 1.25rem;
  margin: .5rem 0 .85rem;
  list-style: none;
}
.lp-legal__ul li {
  position: relative;
  padding-left: 1.5rem;
  margin-bottom: .45rem;
  color: #374151;
}
.lp-legal__ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: .65em;
  width: 6px;
  height: 6px;
  background: var(--lp-orange);
  border-radius: 50%;
}
.lp-legal__ul li i {
  position: absolute;
  left: 0;
  top: .25em;
  color: var(--lp-blue);
  font-size: .85rem;
}
.lp-legal__ul li i ~ * { /* quand icône présente, pas de bullet */ }
.lp-legal__ul li:has(i)::before { display: none; }
.lp-legal__ul--danger li::before { background: #ef4444; }

/* ── Définitions ────────────────────────────────────────────────────────── */
.lp-legal__dl { margin: .5rem 0; }
.lp-legal__dl dt {
  font-weight: 700;
  color: var(--lp-navy);
  margin-top: 1rem;
  margin-bottom: .2rem;
}
.lp-legal__dl dt:first-child { margin-top: 0; }
.lp-legal__dl dd {
  margin-left: 1.25rem;
  color: #374151;
  padding-left: .75rem;
  border-left: 2px solid var(--lp-blue-pale);
}

/* ── Tableaux ───────────────────────────────────────────────────────────── */
.lp-legal__table-wrap { overflow-x: auto; margin: 1rem 0; border-radius: 12px; border: 1px solid rgba(24,119,242,.15); }
.lp-legal__table {
  width: 100%;
  border-collapse: collapse;
  font-size: .9rem;
}
.lp-legal__table thead tr {
  background: linear-gradient(90deg, var(--lp-navy) 0%, var(--lp-navy-2) 100%);
  color: #fff;
}
.lp-legal__table thead th {
  padding: .85rem 1rem;
  text-align: left;
  font-weight: 700;
  font-size: .82rem;
  letter-spacing: .02em;
  text-transform: uppercase;
  white-space: nowrap;
}
.lp-legal__table tbody td {
  padding: .75rem 1rem;
  border-bottom: 1px solid rgba(24,119,242,.08);
  vertical-align: top;
  color: #374151;
}
.lp-legal__table tbody tr:last-child td { border-bottom: none; }
.lp-legal__table tbody tr:nth-child(even) { background: rgba(235,244,255,.45); }
.lp-legal__table tbody tr:hover { background: rgba(24,119,242,.06); }
.lp-legal__table--sm { font-size: .82rem; }
.lp-legal__table--sm td, .lp-legal__table--sm th { padding: .6rem .75rem; }

/* ── Icônes état ────────────────────────────────────────────────────────── */
.lp-legal__icon--ok  { color: #16a34a; font-size: .95rem; }
.lp-legal__icon--no  { color: #dc2626; font-size: .95rem; }
.lp-legal__icon--blue   { color: var(--lp-blue); margin-right: .3rem; }
.lp-legal__icon--orange { color: var(--lp-orange); margin-right: .3rem; }

/* ── Notes ──────────────────────────────────────────────────────────────── */
.lp-legal__note {
  background: var(--lp-blue-pale);
  border-left: 4px solid var(--lp-blue);
  border-radius: 0 8px 8px 0;
  padding: .75rem 1rem;
  font-size: .88rem;
  color: var(--lp-navy-2);
  margin: .75rem 0 0;
}
.lp-legal__note i { margin-right: .4rem; }
.lp-legal__note--danger {
  background: #fff5f5;
  border-left-color: #ef4444;
  color: #991b1b;
}

/* ── Formule ────────────────────────────────────────────────────────────── */
.lp-legal__formula {
  background: #f8faff;
  border: 1px solid rgba(24,119,242,.2);
  border-radius: 8px;
  padding: .75rem 1.25rem;
  font-family: 'Courier New', Courier, monospace;
  font-size: .9rem;
  color: var(--lp-navy);
  margin: .6rem 0;
}

/* ── Liens ──────────────────────────────────────────────────────────────── */
.lp-legal__link {
  color: var(--lp-blue);
  text-decoration: underline;
  text-underline-offset: 2px;
  transition: color var(--lp-transition);
}
.lp-legal__link:hover { color: var(--lp-orange); }
.lp-legal__link i { margin-right: .25rem; }

/* ── Code inline ────────────────────────────────────────────────────────── */
.lp-legal__code {
  font-family: 'Courier New', Courier, monospace;
  font-size: .85em;
  background: rgba(24,119,242,.08);
  color: var(--lp-navy);
  padding: .1em .4em;
  border-radius: 4px;
  border: 1px solid rgba(24,119,242,.15);
}

/* ── Cards ──────────────────────────────────────────────────────────────── */
.lp-legal__card {
  background: #f8faff;
  border: 1px solid rgba(24,119,242,.18);
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  margin: .75rem 0;
}
.lp-legal__card p { margin: 0; }
.lp-legal__card p + p { margin-top: .6rem; }
.lp-legal__card--highlight {
  background: linear-gradient(135deg, var(--lp-blue-pale) 0%, #fff 100%);
  border-color: var(--lp-blue);
}
.lp-legal__card--highlight i { color: var(--lp-blue); margin-right: .5rem; font-size: 1.1rem; }

/* ── Grille des droits RGPD ─────────────────────────────────────────────── */
.lp-legal__rights-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1rem;
  margin: 1rem 0;
}
.lp-legal__right-card {
  background: #fff;
  border: 1px solid rgba(24,119,242,.15);
  border-radius: 12px;
  padding: 1.25rem;
  transition: box-shadow var(--lp-transition), border-color var(--lp-transition);
}
.lp-legal__right-card:hover {
  box-shadow: 0 4px 20px rgba(24,119,242,.12);
  border-color: rgba(24,119,242,.3);
}
.lp-legal__right-icon {
  width: 40px;
  height: 40px;
  background: var(--lp-blue-pale);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lp-blue);
  font-size: 1rem;
  margin-bottom: .75rem;
}
.lp-legal__right-card .lp-legal__h3 {
  margin-top: 0;
  font-size: .95rem;
  padding-left: 0;
  border-left: none;
  color: var(--lp-navy);
}
.lp-legal__right-card p { font-size: .88rem; color: var(--lp-slate); margin: 0; }

/* ── Actions RGPD ───────────────────────────────────────────────────────── */
.lp-legal__actions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1.5rem;
  margin: 1rem 0;
}
.lp-legal__action-card {
  display: flex;
  gap: 1.25rem;
  background: #fff;
  border: 1.5px solid rgba(24,119,242,.18);
  border-radius: 16px;
  padding: 1.5rem;
  transition: box-shadow var(--lp-transition);
}
.lp-legal__action-card:hover { box-shadow: 0 8px 32px rgba(24,119,242,.12); }
.lp-legal__action-card--delete { border-color: rgba(239,68,68,.2); }
.lp-legal__action-card--delete:hover { box-shadow: 0 8px 32px rgba(239,68,68,.1); }
.lp-legal__action-icon {
  width: 48px;
  height: 48px;
  min-width: 48px;
  background: var(--lp-blue-pale);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lp-blue);
  font-size: 1.2rem;
  flex-shrink: 0;
}
.lp-legal__action-icon--danger {
  background: #fff5f5;
  color: #ef4444;
}
.lp-legal__action-body { flex: 1; min-width: 0; }
.lp-legal__action-body .lp-legal__h3 {
  margin-top: 0;
  padding-left: 0;
  border-left: none;
  font-size: .98rem;
}
.lp-legal__action-body p { font-size: .9rem; }
.lp-legal__action-locked {
  background: #f8faff;
  border-radius: 8px;
  padding: .85rem 1rem;
  text-align: center;
}
.lp-legal__action-locked i { font-size: 1.4rem; color: var(--lp-slate); display: block; margin-bottom: .4rem; }
.lp-legal__action-locked p { font-size: .88rem; color: var(--lp-slate); margin: 0 0 .65rem; }
.lp-legal__action-note { font-size: .8rem; color: var(--lp-slate); margin-top: .6rem !important; }
.lp-legal__action-note i { margin-right: .3rem; }

/* ── Boutons legal ──────────────────────────────────────────────────────── */
.lp-legal__btn {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .6rem 1.25rem;
  border-radius: 10px;
  font-size: .9rem;
  font-weight: 600;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: background var(--lp-transition), box-shadow var(--lp-transition), transform var(--lp-transition);
  line-height: 1.4;
}
.lp-legal__btn--primary {
  background: var(--lp-blue);
  color: #fff;
  box-shadow: 0 4px 14px rgba(24,119,242,.35);
}
.lp-legal__btn--primary:hover {
  background: #1468d9;
  box-shadow: 0 6px 20px rgba(24,119,242,.5);
  transform: translateY(-1px);
  color: #fff;
  text-decoration: none;
}
.lp-legal__btn--danger {
  background: #fee2e2;
  color: #991b1b;
  border: 1.5px solid #fca5a5;
}
.lp-legal__btn--danger:hover {
  background: #fecaca;
  box-shadow: 0 4px 14px rgba(239,68,68,.2);
  transform: translateY(-1px);
}
.lp-legal__btn--outline {
  background: transparent;
  color: var(--lp-blue);
  border: 1.5px solid rgba(24,119,242,.3);
}
.lp-legal__btn--outline:hover {
  background: var(--lp-blue-pale);
  border-color: var(--lp-blue);
  text-decoration: none;
  color: var(--lp-blue);
}

/* ── Timeline RGPD ──────────────────────────────────────────────────────── */
.lp-legal__timeline { position: relative; padding-left: 2.5rem; margin: 1rem 0; }
.lp-legal__timeline::before {
  content: '';
  position: absolute;
  left: 15px;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom, var(--lp-blue) 0%, var(--lp-blue-pale) 100%);
}
.lp-legal__timeline-item {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  position: relative;
}
.lp-legal__timeline-item:last-child { margin-bottom: 0; }
.lp-legal__timeline-icon {
  position: absolute;
  left: -2.5rem;
  top: 0;
  width: 32px;
  height: 32px;
  background: var(--lp-blue);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: .78rem;
  border: 3px solid #fff;
  box-shadow: 0 2px 8px rgba(24,119,242,.3);
}
.lp-legal__timeline-item--deadline .lp-legal__timeline-icon { background: var(--lp-orange); }
.lp-legal__timeline-content { flex: 1; }
.lp-legal__timeline-content strong { display: block; color: var(--lp-navy); font-weight: 700; margin-bottom: .25rem; }
.lp-legal__timeline-content p { margin: 0; font-size: .9rem; color: var(--lp-slate); }

/* ── DPO card ───────────────────────────────────────────────────────────── */
.lp-legal__dpo-card {
  display: flex;
  gap: 1.25rem;
  background: linear-gradient(135deg, var(--lp-blue-pale) 0%, #fff 100%);
  border: 1.5px solid var(--lp-blue);
  border-radius: 16px;
  padding: 1.5rem;
  margin: 1rem 0;
}
.lp-legal__dpo-icon {
  width: 52px;
  height: 52px;
  min-width: 52px;
  background: var(--lp-blue);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.3rem;
  box-shadow: 0 4px 14px rgba(24,119,242,.3);
  flex-shrink: 0;
}
.lp-legal__dpo-info { flex: 1; }
.lp-legal__dpo-info strong { display: block; font-size: 1.02rem; color: var(--lp-navy); margin-bottom: .5rem; }
.lp-legal__dpo-info p { font-size: .9rem; margin-bottom: .5rem; }

/* ── Contact list ───────────────────────────────────────────────────────── */
.lp-legal__contact-list { padding-left: 0; }
.lp-legal__contact-list li {
  padding-left: 1.75rem;
  margin-bottom: .4rem;
}
.lp-legal__contact-list li::before { display: none; }
.lp-legal__contact-list li i {
  color: var(--lp-blue);
  width: 16px;
  text-align: center;
}

/* ── Préférences cookies ────────────────────────────────────────────────── */
.lp-legal__pref-block {
  background: var(--lp-blue-pale);
  border-radius: 12px;
  padding: 1.25rem 1.5rem;
  margin: .75rem 0 1.25rem;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}
.lp-legal__pref-block p { margin: 0; flex: 1; min-width: 200px; }

/* ── Dark mode ──────────────────────────────────────────────────────────── */
[data-theme="dark"] .lp-legal { color: rgba(255,255,255,.88); }
[data-theme="dark"] .lp-legal__header { border-bottom-color: rgba(255,255,255,.08); }
[data-theme="dark"] .lp-legal__h1 { color: #fff; }
[data-theme="dark"] .lp-legal__h2 { color: rgba(255,255,255,.9); }
[data-theme="dark"] .lp-legal__h3 { color: rgba(255,255,255,.85); }
[data-theme="dark"] .lp-legal p,
[data-theme="dark"] .lp-legal__ul li,
[data-theme="dark"] .lp-legal__dl dd { color: rgba(255,255,255,.7); }
[data-theme="dark"] .lp-legal__section { border-bottom-color: rgba(255,255,255,.07); }
[data-theme="dark"] .lp-legal__table-wrap { border-color: rgba(255,255,255,.1); }
[data-theme="dark"] .lp-legal__table tbody td { color: rgba(255,255,255,.75); border-bottom-color: rgba(255,255,255,.06); }
[data-theme="dark"] .lp-legal__table tbody tr:nth-child(even) { background: rgba(255,255,255,.04); }
[data-theme="dark"] .lp-legal__table tbody tr:hover { background: rgba(24,119,242,.12); }
[data-theme="dark"] .lp-legal__card { background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.1); }
[data-theme="dark"] .lp-legal__card--highlight { background: rgba(24,119,242,.1); }
[data-theme="dark"] .lp-legal__note { background: rgba(24,119,242,.1); color: rgba(255,255,255,.8); }
[data-theme="dark"] .lp-legal__formula { background: rgba(255,255,255,.05); border-color: rgba(24,119,242,.3); color: rgba(255,255,255,.85); }
[data-theme="dark"] .lp-legal__code { background: rgba(24,119,242,.15); color: rgba(255,255,255,.85); border-color: rgba(24,119,242,.25); }
[data-theme="dark"] .lp-legal__right-card,
[data-theme="dark"] .lp-legal__action-card { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.1); }
[data-theme="dark"] .lp-legal__right-card p { color: rgba(255,255,255,.6); }
[data-theme="dark"] .lp-legal__right-icon { background: rgba(24,119,242,.2); }
[data-theme="dark"] .lp-legal__action-icon { background: rgba(24,119,242,.2); }
[data-theme="dark"] .lp-legal__action-locked { background: rgba(255,255,255,.05); }
[data-theme="dark"] .lp-legal__dpo-card { background: rgba(24,119,242,.1); border-color: var(--lp-blue); }
[data-theme="dark"] .lp-legal__dpo-info strong { color: #fff; }
[data-theme="dark"] .lp-legal__pref-block { background: rgba(24,119,242,.1); }
[data-theme="dark"] .lp-legal__timeline::before { background: linear-gradient(to bottom, var(--lp-blue) 0%, rgba(255,255,255,.1) 100%); }
[data-theme="dark"] .lp-legal__timeline-icon { border-color: #0D1B2A; }
[data-theme="dark"] .lp-legal__timeline-content strong { color: rgba(255,255,255,.9); }
[data-theme="dark"] .lp-legal__timeline-content p { color: rgba(255,255,255,.6); }
[data-theme="dark"] .lp-legal__dl dt { color: rgba(255,255,255,.9); }
[data-theme="dark"] .lp-legal__dl dd { border-left-color: rgba(24,119,242,.3); }
[data-theme="dark"] .lp-legal__btn--outline { color: var(--lp-blue-2); border-color: rgba(79,163,232,.4); }
[data-theme="dark"] .lp-legal__btn--outline:hover { background: rgba(24,119,242,.15); color: var(--lp-blue-2); }

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media(max-width:640px) {
  .lp-legal__section { padding: 1.5rem 1rem; }
  .lp-legal__header { padding: 1.75rem 1rem 1.5rem; }
  .lp-legal__actions-grid { grid-template-columns: 1fr; }
  .lp-legal__action-card { flex-direction: column; gap: .85rem; }
  .lp-legal__action-icon { width: 40px; height: 40px; font-size: 1rem; }
  .lp-legal__dpo-card { flex-direction: column; gap: .85rem; }
  .lp-legal__table--sm { font-size: .78rem; }
  .lp-legal__table--sm td, .lp-legal__table--sm th { padding: .5rem .6rem; }
  .lp-legal__rights-grid { grid-template-columns: 1fr; }
  .lp-legal__pref-block { flex-direction: column; gap: .75rem; }
}

/* ══════════════════════════════════════════════════════════
   LEGAL PAGES
   ══════════════════════════════════════════════════════════ */
/* Corps de page légale — fond navy, navbar toujours visible */
.page-legal,
.page-legal body {
  background: var(--lp-navy) !important;
  color: rgba(255,255,255,.82) !important;
}
/* Navbar toujours scrolled sur les pages légales */
.page-legal .lp-nav {
  background: rgba(11,37,69,.98) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.08) !important;
}

.lp-legal-main {
  min-height: calc(100vh - 80px);
  padding: 6rem 1.5rem 4rem;
  max-width: 860px;
  margin: 0 auto;
}
.lp-legal-back {
  margin-bottom: 2rem;
}
.lp-legal-back__link {
  display: inline-flex; align-items: center; gap: .4rem;
  color: var(--lp-blue-2); font-size: .875rem; font-weight: 500;
  text-decoration: none; transition: color .2s;
}
.lp-legal-back__link:hover { color: #fff; text-decoration: none; }

/* Article légal */
.lp-legal { font-size: .94rem; line-height: 1.8; color: rgba(255,255,255,.82); }
.lp-legal__header {
  display: flex; align-items: flex-start; gap: 1.25rem;
  padding-bottom: 2rem; margin-bottom: 2.5rem;
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.lp-legal__header-icon {
  width: 52px; height: 52px; border-radius: 14px; flex-shrink: 0;
  background: linear-gradient(135deg, var(--lp-blue), #0B2545);
  display: flex; align-items: center; justify-content: center;
  font-size: 1.4rem; color: var(--lp-blue-2);
  box-shadow: 0 4px 16px rgba(24,119,242,.25);
}
.lp-legal__h1 { font-size: 1.75rem; font-weight: 800; color: #fff; margin: 0 0 .35rem; }
.lp-legal__date { font-size: .82rem; color: rgba(255,255,255,.38); }

.lp-legal__section { margin-bottom: 2.25rem; }
.lp-legal__h2 {
  font-size: 1.05rem; font-weight: 700; color: #fff;
  margin: 0 0 .85rem; padding-left: .75rem;
  border-left: 3px solid var(--lp-blue);
}
.lp-legal__h3 { font-size: .95rem; font-weight: 700; color: var(--lp-blue-2); margin: 1rem 0 .5rem; }
.lp-legal__p  { margin: 0 0 .75rem; }
.lp-legal__ul { padding-left: 1.4rem; margin: 0 0 .75rem; }
.lp-legal__ul li { margin-bottom: .35rem; }
.lp-legal__ol { padding-left: 1.4rem; margin: 0 0 .75rem; }
.lp-legal__ol li { margin-bottom: .35rem; }

/* Table */
.lp-legal__table-wrap { overflow-x: auto; margin: 1rem 0 1.5rem; border-radius: 10px; border: 1px solid rgba(255,255,255,.08); }
.lp-legal__table { width: 100%; border-collapse: collapse; font-size: .84rem; }
.lp-legal__table thead tr { background: rgba(24,119,242,.15); }
.lp-legal__table th { padding: .7rem 1rem; text-align: left; font-weight: 700; color: var(--lp-blue-2); white-space: nowrap; border-bottom: 1px solid rgba(255,255,255,.1); }
.lp-legal__table td { padding: .65rem 1rem; border-bottom: 1px solid rgba(255,255,255,.05); color: rgba(255,255,255,.75); vertical-align: top; }
.lp-legal__table tr:last-child td { border-bottom: none; }
.lp-legal__table tr:hover td { background: rgba(255,255,255,.02); }

/* Cards RGPD */
.lp-legal__cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px,1fr)); gap: 1rem; margin: 1.5rem 0; }
.lp-legal__card {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px; padding: 1.25rem;
  transition: border-color .2s;
}
.lp-legal__card:hover { border-color: rgba(24,119,242,.3); }
.lp-legal__card-icon { font-size: 1.3rem; margin-bottom: .6rem; }
.lp-legal__card-title { font-size: .9rem; font-weight: 700; color: #fff; margin-bottom: .35rem; }
.lp-legal__card-desc { font-size: .82rem; color: rgba(255,255,255,.55); margin-bottom: .85rem; }
.lp-legal__card-delay { font-size: .75rem; color: var(--lp-orange-2); font-weight: 600; }

/* Action cards */
.lp-legal__actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px,1fr)); gap: 1rem; margin: 1.5rem 0; }
.lp-legal__action { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.08); border-radius: 12px; padding: 1.25rem; }
.lp-legal__action--danger { border-color: rgba(239,68,68,.2); }
.lp-legal__action-title { font-size: .9rem; font-weight: 700; color: #fff; margin-bottom: .35rem; }
.lp-legal__action-desc  { font-size: .82rem; color: rgba(255,255,255,.55); margin-bottom: 1rem; }

/* Boutons légaux */
.lp-legal__btn { display: inline-flex; align-items: center; gap: .4rem; padding: .55rem 1.1rem;
  border-radius: 8px; font-size: .84rem; font-weight: 600; cursor: pointer; text-decoration: none;
  transition: all .2s; border: none; }
.lp-legal__btn--primary { background: var(--lp-blue); color: #fff; }
.lp-legal__btn--primary:hover { background: #1466d6; text-decoration: none; }
.lp-legal__btn--danger { background: rgba(239,68,68,.15); color: #f87171; border: 1px solid rgba(239,68,68,.25); }
.lp-legal__btn--danger:hover { background: rgba(239,68,68,.25); }
.lp-legal__btn--outline { background: transparent; color: var(--lp-blue-2); border: 1px solid rgba(24,119,242,.35); }
.lp-legal__btn--outline:hover { background: rgba(24,119,242,.1); text-decoration: none; }

/* Note / alerte */
.lp-legal__note { background: rgba(255,107,0,.08); border: 1px solid rgba(255,107,0,.2); border-radius: 10px;
  padding: .85rem 1.1rem; font-size: .84rem; color: rgba(255,255,255,.7); margin: 1rem 0; }
.lp-legal__note i { color: var(--lp-orange); margin-right: .4rem; }

/* Timeline */
.lp-legal__timeline { display: flex; flex-direction: column; gap: .75rem; margin: 1.25rem 0; }
.lp-legal__timeline-step { display: flex; gap: .85rem; align-items: flex-start; }
.lp-legal__timeline-dot { width: 28px; height: 28px; border-radius: 50%; background: rgba(24,119,242,.2); border: 2px solid var(--lp-blue); flex-shrink: 0; display: flex; align-items: center; justify-content: center; font-size: .7rem; font-weight: 700; color: var(--lp-blue-2); }
.lp-legal__timeline-text { font-size: .85rem; color: rgba(255,255,255,.7); padding-top: .3rem; }

/* Mode clair sur pages légales — fond blanc avec couleurs dropfleet */
[data-theme="light"] .page-legal,
[data-theme="light"] .page-legal body { background: #F0F4FB !important; color: #1e293b !important; }
[data-theme="light"] .page-legal .lp-nav { background: rgba(11,37,69,.98) !important; }
[data-theme="light"] .lp-legal { color: #1e293b; }
[data-theme="light"] .lp-legal__h1 { color: var(--lp-navy); }
[data-theme="light"] .lp-legal__h2 { color: var(--lp-navy); }
[data-theme="light"] .lp-legal__h3 { color: var(--lp-blue); }
[data-theme="light"] .lp-legal-back__link { color: var(--lp-blue); }
[data-theme="light"] .lp-legal__table { color: #374151; }
[data-theme="light"] .lp-legal__table td { color: #374151; }
[data-theme="light"] .lp-legal__table thead tr { background: rgba(24,119,242,.1); }
[data-theme="light"] .lp-legal__table-wrap { border-color: rgba(11,37,69,.12); }
[data-theme="light"] .lp-legal__card,
[data-theme="light"] .lp-legal__action { background: #fff; border-color: rgba(11,37,69,.1); box-shadow: 0 2px 8px rgba(11,37,69,.06); }
[data-theme="light"] .lp-legal__card-title,
[data-theme="light"] .lp-legal__action-title { color: var(--lp-navy); }
[data-theme="light"] .lp-legal__card-desc,
[data-theme="light"] .lp-legal__action-desc  { color: #64748b; }
[data-theme="light"] .lp-legal__note { background: rgba(255,107,0,.06); color: #374151; }
[data-theme="light"] .lp-legal__timeline-dot { border-color: var(--lp-blue); }
[data-theme="light"] .lp-legal__timeline-text { color: #374151; }

@media(max-width:640px){
  .lp-legal-main { padding: 5rem 1rem 3rem; }
  .lp-legal__header { flex-direction: column; gap: .75rem; }
  .lp-legal__h1 { font-size: 1.35rem; }
  .lp-legal__cards, .lp-legal__actions { grid-template-columns: 1fr; }
}

/* ═══════════════════════════════════════════════════════════
   Blog dropfleet.eu — Design Bleu/Orange
   ═══════════════════════════════════════════════════════════ */

/* ── Blog Hero ─────────────────────────────────────────── */
.lp-blog-hero {
  background: linear-gradient(135deg, var(--lp-navy) 0%, #134074 100%);
  padding: 7rem 2.5rem 4rem;
  text-align: center;
}
.lp-blog-hero__eyebrow {
  display: inline-flex; align-items: center; gap: .45rem;
  background: rgba(255,107,0,.12); border: 1px solid rgba(255,107,0,.25);
  border-radius: 99px; padding: .3rem .9rem;
  font-size: .78rem; font-weight: 700; color: var(--lp-orange); letter-spacing: .04em;
  text-transform: uppercase; margin-bottom: 1.2rem;
}
.lp-blog-hero__title {
  font-size: clamp(1.9rem, 4vw, 2.8rem); font-weight: 800; color: #fff;
  margin: 0 0 .85rem; line-height: 1.18;
}
.lp-blog-hero__sub {
  font-size: 1.05rem; color: rgba(255,255,255,.65);
  max-width: 580px; margin: 0 auto;
}

/* ── Blog Grid ─────────────────────────────────────────── */
.lp-blog-section {
  padding: 4rem 2.5rem 6rem;
  background: var(--lp-white);
}
.lp-blog-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 2rem;
  max-width: 1140px;
  margin: 0 auto;
}

/* ── Blog Card ─────────────────────────────────────────── */
.lp-blog-card {
  background: #fff;
  border: 1px solid rgba(11,37,69,.09);
  border-radius: 16px;
  overflow: hidden;
  transition: transform .22s, box-shadow .22s, border-color .22s;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
}
.lp-blog-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 48px rgba(11,37,69,.11);
  border-color: rgba(24,119,242,.22);
  text-decoration: none;
}
.lp-blog-card__thumb {
  width: 100%; aspect-ratio: 16/8;
  background: linear-gradient(135deg, var(--lp-navy-2) 0%, #1A3A5C 100%);
  display: flex; align-items: center; justify-content: center;
  font-size: 2.5rem; color: rgba(255,255,255,.18);
  overflow: hidden; flex-shrink: 0;
}
.lp-blog-card__body { padding: 1.5rem; flex: 1; display: flex; flex-direction: column; }
.lp-blog-card__meta {
  display: flex; align-items: center; gap: .65rem;
  font-size: .75rem; color: rgba(11,37,69,.45);
  margin-bottom: .75rem;
}
.lp-blog-card__cat {
  background: rgba(24,119,242,.09); color: var(--lp-blue);
  border-radius: 99px; padding: .2rem .7rem;
  font-weight: 700; font-size: .72rem; text-transform: uppercase; letter-spacing: .04em;
}
.lp-blog-card__title {
  font-size: 1rem; font-weight: 700; color: var(--lp-navy);
  margin: 0 0 .6rem; line-height: 1.38;
}
.lp-blog-card:hover .lp-blog-card__title { color: var(--lp-blue); }
.lp-blog-card__excerpt {
  font-size: .84rem; color: var(--lp-slate); line-height: 1.6;
  flex: 1; margin: 0 0 1.1rem;
  display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.lp-blog-card__link {
  font-size: .82rem; font-weight: 700; color: var(--lp-blue);
  display: inline-flex; align-items: center; gap: .3rem;
  text-decoration: none; transition: gap .18s;
}
.lp-blog-card:hover .lp-blog-card__link { gap: .55rem; }

/* ── Article layout ────────────────────────────────────── */
.lp-article-wrap {
  max-width: 1100px; margin: 0 auto;
  padding: 6rem 2.5rem 5rem;
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 3rem;
  align-items: start;
}
@media(max-width:768px){ .lp-article-wrap { grid-template-columns: 1fr; } }

/* ── Article header ────────────────────────────────────── */
.lp-article-header {
  background: linear-gradient(135deg, var(--lp-navy) 0%, #134074 100%);
  padding: 5rem 2.5rem 3rem;
}
.lp-article-header__inner { max-width: 820px; margin: 0 auto; }
.lp-article-header__cat {
  display: inline-flex; align-items: center; gap: .35rem;
  background: rgba(255,107,0,.15); border: 1px solid rgba(255,107,0,.25);
  border-radius: 99px; padding: .25rem .85rem;
  font-size: .75rem; font-weight: 700; color: var(--lp-orange);
  text-transform: uppercase; letter-spacing: .05em; margin-bottom: 1rem;
}
.lp-article-header__title {
  font-size: clamp(1.6rem, 3.5vw, 2.4rem); font-weight: 800; color: #fff;
  line-height: 1.2; margin: 0 0 1rem;
}
.lp-article-header__meta {
  display: flex; flex-wrap: wrap; gap: 1rem;
  font-size: .82rem; color: rgba(255,255,255,.5);
}
.lp-article-header__meta i { color: var(--lp-orange); margin-right: .3rem; }

/* ── Article content ────────────────────────────────────── */
.lp-article-content {
  color: #374151; line-height: 1.75; font-size: .97rem;
}
.lp-article-content h2 {
  font-size: 1.25rem; font-weight: 800; color: var(--lp-navy);
  margin: 2.2rem 0 .85rem; padding-left: .8rem;
  border-left: 3px solid var(--lp-blue);
}
.lp-article-content h3 {
  font-size: 1.05rem; font-weight: 700; color: var(--lp-blue);
  margin: 1.6rem 0 .6rem;
}
.lp-article-content p { margin: 0 0 1rem; }
.lp-article-content ul, .lp-article-content ol { padding-left: 1.5rem; margin: 0 0 1rem; }
.lp-article-content li { margin-bottom: .4rem; }
.lp-article-content a { color: var(--lp-blue); text-decoration: underline; }
.lp-article-content a:hover { color: var(--lp-navy); }
.lp-article-content strong { font-weight: 700; color: var(--lp-navy); }

/* ── Blog callout (A retenir) ───────────────────────────── */
.blog-callout {
  background: rgba(24,119,242,.07);
  border-left: 4px solid var(--lp-blue);
  border-radius: 0 10px 10px 0;
  padding: 1.1rem 1.4rem;
  margin: 2rem 0;
  font-size: .9rem;
}
.blog-callout strong { display: block; margin-bottom: .5rem; color: var(--lp-navy); font-size: .95rem; }
.blog-callout ul { margin: 0; }
.blog-cta-inline a { color: var(--lp-blue); font-weight: 600; }

/* ── Article sidebar ────────────────────────────────────── */
.lp-article-sidebar { position: sticky; top: 90px; }
.lp-sidebar-box {
  background: #fff; border: 1px solid rgba(11,37,69,.09);
  border-radius: 14px; padding: 1.5rem; margin-bottom: 1.5rem;
}
.lp-sidebar-box__title {
  font-size: .8rem; font-weight: 800; color: var(--lp-navy);
  text-transform: uppercase; letter-spacing: .06em; margin: 0 0 1.1rem;
}
/* CTA sidebar */
.lp-sidebar-cta {
  background: linear-gradient(135deg, var(--lp-navy) 0%, #134074 100%);
  border-radius: 14px; padding: 1.6rem; color: #fff; text-align: center;
  margin-bottom: 1.5rem;
}
.lp-sidebar-cta__icon {
  width: 48px; height: 48px; border-radius: 12px;
  background: rgba(255,107,0,.2); display: flex; align-items: center;
  justify-content: center; font-size: 1.2rem; color: var(--lp-orange);
  margin: 0 auto .85rem;
}
.lp-sidebar-cta__title { font-size: .95rem; font-weight: 800; margin: 0 0 .5rem; }
.lp-sidebar-cta__desc  { font-size: .8rem; color: rgba(255,255,255,.6); margin: 0 0 1.1rem; }

/* LinkedIn hook box */
.lp-linkedin-box {
  background: #f0f4ff; border: 1.5px solid rgba(24,119,242,.18);
  border-radius: 14px; padding: 1.4rem; margin-bottom: 1.5rem;
}
.lp-linkedin-box__label {
  display: flex; align-items: center; gap: .4rem;
  font-size: .75rem; font-weight: 800; color: #0A66C2;
  text-transform: uppercase; letter-spacing: .06em; margin-bottom: .75rem;
}
.lp-linkedin-hook-text {
  font-size: .84rem; color: #374151; line-height: 1.6;
  white-space: pre-line; margin: 0 0 .9rem;
  font-style: italic;
}
.lp-linkedin-copy-btn {
  width: 100%; padding: .55rem 1rem; border-radius: 8px;
  background: #0A66C2; color: #fff; border: none; cursor: pointer;
  font-size: .82rem; font-weight: 700; display: flex; align-items: center;
  justify-content: center; gap: .4rem; transition: background .2s;
}
.lp-linkedin-copy-btn:hover { background: #085196; }

/* Recent articles in sidebar */
.lp-sidebar-recent-item {
  display: flex; flex-direction: column; gap: .2rem;
  padding: .65rem 0; border-bottom: 1px solid rgba(11,37,69,.07);
  text-decoration: none; color: inherit;
}
.lp-sidebar-recent-item:last-child { border-bottom: none; }
.lp-sidebar-recent-item:hover .lp-sidebar-recent-item__title { color: var(--lp-blue); }
.lp-sidebar-recent-item__cat {
  font-size: .68rem; font-weight: 700; color: var(--lp-orange);
  text-transform: uppercase; letter-spacing: .05em;
}
.lp-sidebar-recent-item__title {
  font-size: .84rem; font-weight: 600; color: var(--lp-navy);
  line-height: 1.35; transition: color .18s;
}
.lp-sidebar-recent-item__date { font-size: .72rem; color: rgba(11,37,69,.38); }

/* ── Dark mode blog ─────────────────────────────────────── */
[data-theme="dark"] .lp-blog-section    { background: #0D1B2A; }
[data-theme="dark"] .lp-blog-card       { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.07); }
[data-theme="dark"] .lp-blog-card:hover { border-color: rgba(24,119,242,.3); }
[data-theme="dark"] .lp-blog-card__title  { color: #fff; }
[data-theme="dark"] .lp-blog-card__excerpt { color: rgba(255,255,255,.5); }
[data-theme="dark"] .lp-blog-card__meta   { color: rgba(255,255,255,.3); }
[data-theme="dark"] .lp-article-content   { color: rgba(255,255,255,.78); }
[data-theme="dark"] .lp-article-content h2 { color: #fff; }
[data-theme="dark"] .lp-article-content h3 { color: var(--lp-blue-2); }
[data-theme="dark"] .lp-article-content strong { color: #fff; }
[data-theme="dark"] .lp-sidebar-box  { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.07); }
[data-theme="dark"] .lp-sidebar-box__title { color: rgba(255,255,255,.7); }
[data-theme="dark"] .lp-sidebar-recent-item__title { color: rgba(255,255,255,.85); }
[data-theme="dark"] .lp-sidebar-recent-item__date  { color: rgba(255,255,255,.3); }
[data-theme="dark"] .lp-sidebar-recent-item { border-bottom-color: rgba(255,255,255,.07); }
[data-theme="dark"] .lp-linkedin-box  { background: rgba(10,102,194,.08); border-color: rgba(10,102,194,.25); }
[data-theme="dark"] .lp-linkedin-hook-text { color: rgba(255,255,255,.7); }
[data-theme="dark"] .blog-callout { background: rgba(24,119,242,.1); }
[data-theme="dark"] .blog-callout strong { color: #fff; }

/* ── Responsive blog ────────────────────────────────────── */
@media(max-width:640px){
  .lp-blog-hero   { padding: 6rem 1.25rem 2.5rem; }
  .lp-blog-section { padding: 3rem 1.25rem 4rem; }
  .lp-blog-grid   { grid-template-columns: 1fr; gap: 1.25rem; }
  .lp-article-wrap { padding: 5rem 1.25rem 3rem; }
  .lp-article-header { padding: 5rem 1.25rem 2rem; }
}


/* ═══════════════════════════════════════════════════════════════
   PRICING PAGE FULL
   ══════════════════════════════════════════════════════════════ */

/* ── Hero ── */
.lp-pricing-page__hero {
  background: linear-gradient(135deg, var(--lp-navy) 0%, #0d2d5e 60%, #1a3a6e 100%);
  padding: 8rem 1.5rem 4rem;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.lp-pricing-page__hero::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 60% 60% at 50% 0%, rgba(24,119,242,.18) 0%, transparent 70%);
  pointer-events: none;
}
.lp-pricing-page__hero-inner { position: relative; z-index: 1; max-width: 640px; margin: 0 auto; }
.lp-pricing-page__h1 {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 900; color: #fff; margin: 0 0 .75rem; line-height: 1.1;
}
.lp-pricing-page__sub { font-size: 1.1rem; color: rgba(255,255,255,.65); margin: 0 0 2.5rem; }

/* ── Billing toggle ── */
.lp-billing-toggle {
  display: inline-flex; align-items: center; gap: .85rem;
  background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12);
  border-radius: 40px; padding: .45rem 1.1rem;
}
.lp-billing-toggle__label {
  font-size: .88rem; font-weight: 600; color: rgba(255,255,255,.45);
  display: flex; align-items: center; gap: .45rem; transition: color .2s;
}
.lp-billing-toggle__label--active { color: #fff; }
.lp-billing-toggle__save {
  background: var(--lp-orange); color: #fff;
  font-size: .68rem; font-weight: 800; padding: .2rem .5rem;
  border-radius: 20px; letter-spacing: .03em;
}
.lp-billing-toggle__btn {
  background: none; border: none; cursor: pointer; padding: 0; line-height: 0;
}
.lp-billing-toggle__track {
  display: block; width: 42px; height: 24px; border-radius: 12px;
  background: rgba(255,255,255,.2); position: relative;
  transition: background .25s;
}
.lp-billing-toggle__btn.active .lp-billing-toggle__track { background: var(--lp-orange); }
.lp-billing-toggle__thumb {
  display: block; width: 18px; height: 18px; border-radius: 50%;
  background: #fff; position: absolute; top: 3px; left: 3px;
  transition: transform .25s cubic-bezier(.4,0,.2,1);
  box-shadow: 0 1px 4px rgba(0,0,0,.3);
}
.lp-billing-toggle__btn.active .lp-billing-toggle__thumb { transform: translateX(18px); }

/* ── Plans grid ── */
.lp-pricing-page__plans {
  background: #f0f4fb;
  padding: 3.5rem 1.5rem 5rem;
}
[data-theme="dark"] .lp-pricing-page__plans { background: #0c1828; }

.lp-pricing-page__grid {
  max-width: 1200px; margin: 0 auto;
  display: grid; gap: 1.25rem;
  grid-template-columns: repeat(auto-fit, minmax(240px,1fr));
}
@media(min-width:1024px) {
  .lp-pricing-page__grid { grid-template-columns: repeat(4, 1fr); }
}

.lp-pricing-page__note {
  max-width: 1200px; margin: 2rem auto 0;
  font-size: .78rem; color: rgba(11,37,69,.4); text-align: center;
}
[data-theme="dark"] .lp-pricing-page__note { color: rgba(255,255,255,.3); }

/* ── Plan card ── */
.lp-pp-card {
  background: #fff;
  border: 1.5px solid rgba(11,37,69,.1);
  border-radius: 20px;
  padding: 2rem 1.5rem;
  display: flex; flex-direction: column;
  position: relative;
  transition: transform .2s, box-shadow .2s;
}
.lp-pp-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 48px rgba(11,37,69,.12);
}
[data-theme="dark"] .lp-pp-card {
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.08);
}

/* Blue (Pro) */
.lp-pp-card--blue {
  background: linear-gradient(160deg, #0B2545 0%, #1150a8 100%);
  border-color: rgba(24,119,242,.4);
  color: #fff;
}
.lp-pp-card--blue:hover { box-shadow: 0 20px 60px rgba(24,119,242,.3); }

/* Orange (Pro+) */
.lp-pp-card--orange {
  background: linear-gradient(160deg, #1a1a2e 0%, #2d1a0d 50%, #3d1500 100%);
  border: 2px solid var(--lp-orange);
  color: #fff;
  box-shadow: 0 0 0 4px rgba(255,107,0,.12);
}
.lp-pp-card--orange:hover { box-shadow: 0 20px 60px rgba(255,107,0,.25), 0 0 0 4px rgba(255,107,0,.15); }

/* Navy (Enterprise) */
.lp-pp-card--navy {
  background: var(--lp-navy);
  border-color: rgba(255,255,255,.12);
  color: #fff;
}
.lp-pp-card--navy:hover { box-shadow: 0 20px 60px rgba(11,37,69,.4); }

/* Badge */
.lp-pp-card__badge {
  position: absolute; top: -13px; left: 50%; transform: translateX(-50%);
  background: var(--lp-orange); color: #fff;
  font-size: .72rem; font-weight: 800; letter-spacing: .05em;
  padding: .28rem .9rem; border-radius: 20px;
  display: flex; align-items: center; gap: .35rem;
  white-space: nowrap;
}
.lp-pp-card--blue .lp-pp-card__badge {
  background: var(--lp-blue-2);
}

/* Name */
.lp-pp-card__name {
  font-size: .78rem; font-weight: 800; letter-spacing: .1em;
  text-transform: uppercase; color: var(--lp-navy); margin: .5rem 0 1rem;
}
.lp-pp-card--blue .lp-pp-card__name,
.lp-pp-card--orange .lp-pp-card__name,
.lp-pp-card--navy .lp-pp-card__name { color: rgba(255,255,255,.6); }

/* Price */
.lp-pp-card__price {
  display: flex; align-items: baseline; gap: .25rem;
  margin-bottom: .5rem;
}
.lp-pp-card__currency { font-size: 1.3rem; font-weight: 700; color: var(--lp-navy); line-height: 1; }
.lp-pp-card__amount   { font-size: 3rem; font-weight: 900; color: var(--lp-navy); line-height: 1; }
.lp-pp-card__period   { font-size: .85rem; color: rgba(11,37,69,.45); align-self: flex-end; padding-bottom: .35rem; }
.lp-pp-card--blue .lp-pp-card__currency,
.lp-pp-card--blue .lp-pp-card__amount  { color: #fff; }
.lp-pp-card--blue .lp-pp-card__period  { color: rgba(255,255,255,.4); }
.lp-pp-card--orange .lp-pp-card__currency,
.lp-pp-card--orange .lp-pp-card__amount { color: var(--lp-orange); }
.lp-pp-card--orange .lp-pp-card__period { color: rgba(255,255,255,.4); }
.lp-pp-card--navy .lp-pp-card__currency,
.lp-pp-card--navy .lp-pp-card__amount  { color: #fff; }
.lp-pp-card--navy .lp-pp-card__period  { color: rgba(255,255,255,.4); }
[data-theme="dark"] .lp-pp-card:not([class*="--blue"]):not([class*="--orange"]):not([class*="--navy"]) .lp-pp-card__currency,
[data-theme="dark"] .lp-pp-card:not([class*="--blue"]):not([class*="--orange"]):not([class*="--navy"]) .lp-pp-card__amount { color: #fff; }

/* Annual note */
.lp-pp-card__annual-note {
  font-size: .75rem; color: rgba(11,37,69,.5);
  background: rgba(255,107,0,.07); border: 1px solid rgba(255,107,0,.15);
  border-radius: 8px; padding: .4rem .75rem;
  margin-bottom: .75rem;
  display: flex; align-items: center; gap: .4rem;
}
.lp-pp-card--blue .lp-pp-card__annual-note,
.lp-pp-card--orange .lp-pp-card__annual-note,
.lp-pp-card--navy .lp-pp-card__annual-note {
  background: rgba(255,107,0,.12); border-color: rgba(255,107,0,.25);
  color: rgba(255,255,255,.7);
}

/* CTA */
.lp-pp-card__cta {
  display: flex; align-items: center; justify-content: center; gap: .5rem;
  background: var(--lp-blue); color: #fff;
  border-radius: 12px; padding: .85rem 1.25rem;
  font-size: .9rem; font-weight: 700;
  text-decoration: none; margin: .75rem 0 1.25rem;
  transition: background .2s, transform .15s;
}
.lp-pp-card__cta:hover { background: #145cc4; transform: translateY(-1px); }
.lp-pp-card--blue .lp-pp-card__cta   { background: var(--lp-orange); }
.lp-pp-card--blue .lp-pp-card__cta:hover { background: #e05a00; }
.lp-pp-card--orange .lp-pp-card__cta { background: var(--lp-orange); }
.lp-pp-card--orange .lp-pp-card__cta:hover { background: #e05a00; }
.lp-pp-card--navy .lp-pp-card__cta   { background: rgba(255,255,255,.1); border: 1.5px solid rgba(255,255,255,.25); }
.lp-pp-card--navy .lp-pp-card__cta:hover { background: rgba(255,255,255,.18); }
[data-theme="dark"] .lp-pp-card:not([class*="--"]) .lp-pp-card__cta { background: var(--lp-blue); }

/* Divider */
.lp-pp-card__divider {
  height: 1px; background: rgba(11,37,69,.08);
  margin-bottom: 1.1rem;
}
.lp-pp-card--blue .lp-pp-card__divider,
.lp-pp-card--orange .lp-pp-card__divider,
.lp-pp-card--navy .lp-pp-card__divider { background: rgba(255,255,255,.1); }

/* Features list */
.lp-pp-card__features { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: .65rem; }
.lp-pp-card__feature  { display: flex; align-items: flex-start; gap: .6rem; font-size: .84rem; }
.lp-pp-card__check {
  flex-shrink: 0; width: 20px; height: 20px;
  border-radius: 50%; display: flex; align-items: center; justify-content: center;
  font-size: .62rem; margin-top: .05em;
}
.lp-pp-card__check--yes { background: rgba(0,217,126,.15); color: #00A862; }
.lp-pp-card__check--no  { background: rgba(11,37,69,.06);  color: rgba(11,37,69,.25); }
.lp-pp-card__check--val {
  background: rgba(24,119,242,.1); color: var(--lp-blue);
  font-size: .72rem; font-weight: 700; width: auto; padding: 0 .4rem;
  border-radius: 5px; white-space: nowrap;
}
.lp-pp-card--blue .lp-pp-card__check--yes  { background: rgba(0,217,126,.2); color: #00e68a; }
.lp-pp-card--blue .lp-pp-card__check--no   { background: rgba(255,255,255,.06); color: rgba(255,255,255,.2); }
.lp-pp-card--blue .lp-pp-card__check--val  { background: rgba(255,107,0,.2); color: var(--lp-orange); }
.lp-pp-card--orange .lp-pp-card__check--yes { background: rgba(0,217,126,.2); color: #00e68a; }
.lp-pp-card--orange .lp-pp-card__check--no  { background: rgba(255,255,255,.06); color: rgba(255,255,255,.2); }
.lp-pp-card--orange .lp-pp-card__check--val { background: rgba(255,107,0,.2); color: var(--lp-orange); }
.lp-pp-card--navy .lp-pp-card__check--yes  { background: rgba(0,217,126,.2); color: #00e68a; }
.lp-pp-card--navy .lp-pp-card__check--no   { background: rgba(255,255,255,.06); color: rgba(255,255,255,.2); }
.lp-pp-card--navy .lp-pp-card__check--val  { background: rgba(79,163,232,.2); color: var(--lp-blue-2); }

/* ── FAQ ── */
.lp-pricing-page__faq {
  background: #fff; padding: 5rem 1.5rem;
}
[data-theme="dark"] .lp-pricing-page__faq { background: #0D1B2A; }

.lp-pricing-page__faq-inner { max-width: 720px; margin: 0 auto; }
.lp-pricing-page__faq-title {
  font-size: 2rem; font-weight: 900; color: var(--lp-navy);
  text-align: center; margin: 0 0 2.5rem;
}
[data-theme="dark"] .lp-pricing-page__faq-title { color: #fff; }

.lp-faq-list { display: flex; flex-direction: column; gap: .75rem; }
.lp-faq-item {
  border: 1.5px solid rgba(11,37,69,.1); border-radius: 14px;
  overflow: hidden;
  transition: border-color .2s, box-shadow .2s;
}
.lp-faq-item:hover { border-color: rgba(24,119,242,.2); }
[data-theme="dark"] .lp-faq-item { border-color: rgba(255,255,255,.08); }
[data-theme="dark"] .lp-faq-item:hover { border-color: rgba(24,119,242,.3); }

.lp-faq-item__q {
  width: 100%; text-align: left; background: none; border: none;
  padding: 1.1rem 1.3rem; cursor: pointer;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  font-size: .95rem; font-weight: 700; color: var(--lp-navy);
  transition: background .15s;
}
.lp-faq-item__q:hover { background: rgba(11,37,69,.03); }
.lp-faq-item__q.active { background: rgba(24,119,242,.04); color: var(--lp-blue); }
[data-theme="dark"] .lp-faq-item__q { color: rgba(255,255,255,.88); }
[data-theme="dark"] .lp-faq-item__q:hover { background: rgba(255,255,255,.04); }
[data-theme="dark"] .lp-faq-item__q.active { background: rgba(24,119,242,.08); color: var(--lp-blue-2); }

.lp-faq-item__icon { font-size: .72rem; flex-shrink: 0; transition: transform .25s; color: rgba(11,37,69,.35); }
.lp-faq-item__q.active .lp-faq-item__icon { transform: rotate(180deg); color: var(--lp-blue); }
[data-theme="dark"] .lp-faq-item__icon { color: rgba(255,255,255,.3); }

.lp-faq-item__a { padding: 0 1.3rem 1.1rem; }
.lp-faq-item__a p { font-size: .88rem; color: rgba(11,37,69,.6); line-height: 1.65; margin: 0; }
[data-theme="dark"] .lp-faq-item__a p { color: rgba(255,255,255,.5); }

/* ── Legal pages — fond navy obligatoire ── */
.page-legal,
.page-legal body {
  background: var(--lp-navy) !important;
  color: rgba(255,255,255,.82) !important;
}
.page-legal .lp-nav {
  background: rgba(11,37,69,.98) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.08) !important;
}
[data-theme="light"] .page-legal,
[data-theme="light"] .page-legal body { background: #F0F4FB !important; color: #1e293b !important; }
[data-theme="light"] .page-legal .lp-nav { background: rgba(11,37,69,.98) !important; }

/* ── Responsive pricing ── */
@media(max-width:640px) {
  .lp-pricing-page__hero { padding: 6rem 1.25rem 2.5rem; }
  .lp-pricing-page__plans { padding: 2rem 1rem 3rem; }
  .lp-pricing-page__grid  { grid-template-columns: 1fr; gap: 1rem; }
  .lp-pp-card { padding: 1.5rem 1.25rem; }
  .lp-pp-card__amount { font-size: 2.4rem; }
  .lp-pricing-page__faq { padding: 3rem 1.25rem; }
  .lp-pricing-page__faq-title { font-size: 1.5rem; }
}


/* ═══════════════════════════════════════════════════════════════
   NAV PORTAL BUTTONS (3 couleurs distinctes)
   ══════════════════════════════════════════════════════════════ */
.lp-btn--nav-driver {
  background: rgba(79,163,232,.15);
  color: #4FA3E8;
  border: 1.5px solid rgba(79,163,232,.3);
  border-radius: 10px;
  padding: .5rem .9rem;
  font-size: .82rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  text-decoration: none;
  transition: background .2s, border-color .2s;
  white-space: nowrap;
}
.lp-btn--nav-driver:hover {
  background: rgba(79,163,232,.25);
  border-color: rgba(79,163,232,.55);
  color: #7ec4f0;
  text-decoration: none;
}
.lp-btn--nav-client {
  background: rgba(0,217,126,.12);
  color: #00D97E;
  border: 1.5px solid rgba(0,217,126,.28);
  border-radius: 10px;
  padding: .5rem .9rem;
  font-size: .82rem;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  text-decoration: none;
  transition: background .2s, border-color .2s;
  white-space: nowrap;
}
.lp-btn--nav-client:hover {
  background: rgba(0,217,126,.22);
  border-color: rgba(0,217,126,.5);
  color: #00e68a;
  text-decoration: none;
}
.lp-btn-nav-label {
  display: inline;
}
@media(max-width:768px) {
  .lp-btn-nav-label { display: none; }
  .lp-btn--nav-driver,
  .lp-btn--nav-client { padding: .5rem .65rem; }
}

/* ═══════════════════════════════════════════════════════════════
   BLOG — ARTICLE SHARE BAR
   ══════════════════════════════════════════════════════════════ */
.lp-article-share {
  display: flex;
  align-items: center;
  gap: .6rem;
  flex-wrap: wrap;
  margin-top: 1.5rem;
}
.lp-article-share--bottom {
  margin-top: 2.5rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(11,37,69,.08);
}
[data-theme="dark"] .lp-article-share--bottom { border-top-color: rgba(255,255,255,.07); }
.lp-article-share__label {
  font-size: .8rem;
  font-weight: 700;
  color: rgba(11,37,69,.45);
  display: flex;
  align-items: center;
  gap: .35rem;
  margin-right: .25rem;
}
[data-theme="dark"] .lp-article-share__label { color: rgba(255,255,255,.35); }
.lp-article-share__btn {
  display: inline-flex;
  align-items: center;
  gap: .4rem;
  padding: .5rem 1rem;
  border-radius: 10px;
  font-size: .82rem;
  font-weight: 700;
  text-decoration: none;
  border: 1.5px solid transparent;
  cursor: pointer;
  transition: background .15s, transform .1s;
  white-space: nowrap;
}
.lp-article-share__btn:active { transform: scale(.97); }
.lp-article-share__btn--linkedin {
  background: #0A66C2;
  color: #fff;
  border-color: #0A66C2;
}
.lp-article-share__btn--linkedin:hover {
  background: #085196;
  color: #fff;
  text-decoration: none;
}
.lp-article-share__btn--twitter {
  background: #111;
  color: #fff;
  border-color: #333;
}
.lp-article-share__btn--twitter:hover {
  background: #222;
  color: #fff;
  text-decoration: none;
}
.lp-article-share__btn--copy {
  background: rgba(11,37,69,.07);
  color: var(--lp-navy);
  border-color: rgba(11,37,69,.12);
}
.lp-article-share__btn--copy:hover {
  background: rgba(11,37,69,.12);
}
[data-theme="dark"] .lp-article-share__btn--copy {
  background: rgba(255,255,255,.07);
  color: rgba(255,255,255,.7);
  border-color: rgba(255,255,255,.1);
}
[data-theme="dark"] .lp-article-share__btn--copy:hover {
  background: rgba(255,255,255,.12);
  color: #fff;
}

/* ── Article illustration ── */
.lp-article-illustration {
  background: linear-gradient(135deg, #0B2545, #0d3060);
  text-align: center;
  overflow: hidden;
  max-height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.lp-article-illustration__img {
  width: 100%;
  max-width: 960px;
  height: 280px;
  object-fit: cover;
  object-position: center;
  display: block;
}
@media(max-width:640px) {
  .lp-article-illustration__img { height: 180px; }
  .lp-article-share { gap: .4rem; }
  .lp-article-share__btn { font-size: .75rem; padding: .4rem .75rem; }
}

/* ── Blog card illustration ── */
.lp-blog-card__img {
  width: 100%;
  height: 170px;
  object-fit: cover;
  object-position: center;
  border-radius: 12px 12px 0 0;
  display: block;
  background: linear-gradient(135deg, #0B2545, #1a3a6e);
}

/* ═══════════════════════════════════════════════════════════════
   SECTION REVENDEURS
   ══════════════════════════════════════════════════════════════ */
.lp-reseller {
  background: linear-gradient(135deg, #0B2545 0%, #0d3060 60%, #1a3a6e 100%);
  padding: 6rem 1.5rem;
  position: relative;
  overflow: hidden;
}
.lp-reseller::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 60% 60% at 80% 50%, rgba(255,107,0,.1) 0%, transparent 65%);
  pointer-events: none;
}
.lp-reseller__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5rem;
  align-items: center;
  position: relative;
  z-index: 1;
}
@media(max-width:768px) {
  .lp-reseller__inner { grid-template-columns: 1fr; gap: 3rem; }
}
.lp-reseller__badge {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  background: rgba(255,107,0,.18);
  border: 1px solid rgba(255,107,0,.3);
  color: #FF8A40;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
  padding: .35rem .85rem;
  border-radius: 20px;
  margin-bottom: 1.25rem;
}
.lp-reseller__title {
  font-size: clamp(1.8rem, 3.5vw, 2.8rem);
  font-weight: 900;
  color: #fff;
  margin: 0 0 1rem;
  line-height: 1.1;
}
.lp-reseller__title em {
  font-style: normal;
  color: #FF6B00;
}
.lp-reseller__desc {
  font-size: 1rem;
  color: rgba(255,255,255,.6);
  margin: 0 0 2rem;
  line-height: 1.65;
}
.lp-reseller__perks {
  display: flex;
  flex-direction: column;
  gap: .85rem;
  margin-bottom: 2.25rem;
}
.lp-reseller__perk {
  display: flex;
  align-items: flex-start;
  gap: .85rem;
}
.lp-reseller__perk-icon {
  width: 44px; height: 44px;
  border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.1rem;
  flex-shrink: 0;
}
.lp-reseller__perk-icon--orange { background: rgba(255,107,0,.2); color: #FF6B00; }
.lp-reseller__perk-icon--blue   { background: rgba(79,163,232,.2); color: #4FA3E8; }
.lp-reseller__perk-icon--green  { background: rgba(0,217,126,.15); color: #00D97E; }
.lp-reseller__perk-text strong  { display: block; color: #fff; font-size: .95rem; font-weight: 700; margin-bottom: .2rem; }
.lp-reseller__perk-text span    { color: rgba(255,255,255,.5); font-size: .85rem; line-height: 1.5; }

/* Commission card */
.lp-reseller__card {
  background: rgba(255,255,255,.06);
  border: 1.5px solid rgba(255,255,255,.1);
  border-radius: 24px;
  padding: 2.5rem;
  text-align: center;
  position: relative;
}
.lp-reseller__card::before {
  content: '';
  position: absolute;
  inset: 0; border-radius: 24px;
  background: linear-gradient(135deg, rgba(255,107,0,.08) 0%, rgba(24,119,242,.06) 100%);
  pointer-events: none;
}
.lp-reseller__commission {
  font-size: 5rem;
  font-weight: 900;
  color: #FF6B00;
  line-height: 1;
  margin-bottom: .25rem;
  position: relative;
}
.lp-reseller__commission-label {
  font-size: .9rem;
  color: rgba(255,255,255,.5);
  margin-bottom: 2rem;
  position: relative;
}
.lp-reseller__stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 2rem;
}
.lp-reseller__stat {
  background: rgba(255,255,255,.06);
  border-radius: 14px;
  padding: 1.1rem .75rem;
  position: relative;
}
.lp-reseller__stat-val {
  font-size: 1.5rem;
  font-weight: 900;
  color: #fff;
  display: block;
}
.lp-reseller__stat-lbl {
  font-size: .72rem;
  color: rgba(255,255,255,.4);
  text-transform: uppercase;
  letter-spacing: .05em;
}

/* ═══════════════════════════════════════════════════════════════
   SECTION APPAREILS
   ══════════════════════════════════════════════════════════════ */
.lp-devices {
  background: #f0f4fb;
  padding: 6rem 1.5rem;
}
[data-theme="dark"] .lp-devices { background: #0c1828; }

.lp-devices__inner {
  max-width: 1200px;
  margin: 0 auto;
}
.lp-devices__header {
  text-align: center;
  margin-bottom: 3.5rem;
}
.lp-devices__title {
  font-size: clamp(1.8rem, 3.5vw, 2.6rem);
  font-weight: 900;
  color: var(--lp-navy);
  margin: .75rem 0 .75rem;
  line-height: 1.1;
}
[data-theme="dark"] .lp-devices__title { color: #fff; }
.lp-devices__sub {
  font-size: 1rem;
  color: rgba(11,37,69,.55);
  max-width: 520px;
  margin: 0 auto;
  line-height: 1.6;
}
[data-theme="dark"] .lp-devices__sub { color: rgba(255,255,255,.45); }

.lp-devices__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
}
@media(min-width:768px) {
  .lp-devices__grid { grid-template-columns: repeat(3, 1fr); }
}

.lp-device-card {
  background: #fff;
  border: 1.5px solid rgba(11,37,69,.08);
  border-radius: 20px;
  padding: 2rem 1.5rem;
  transition: transform .2s, box-shadow .2s;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.lp-device-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 48px rgba(11,37,69,.1);
}
[data-theme="dark"] .lp-device-card {
  background: rgba(255,255,255,.04);
  border-color: rgba(255,255,255,.08);
}
.lp-device-card--featured {
  border-color: var(--lp-orange);
  box-shadow: 0 0 0 3px rgba(255,107,0,.1);
}
.lp-device-card__badge {
  position: absolute;
  top: -12px; left: 50%; transform: translateX(-50%);
  background: var(--lp-orange); color: #fff;
  font-size: .7rem; font-weight: 800;
  padding: .25rem .85rem; border-radius: 20px;
  white-space: nowrap;
}
.lp-device-card__wrap { position: relative; }
.lp-device-card__icon {
  width: 64px; height: 64px;
  border-radius: 18px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.6rem;
  margin-bottom: .25rem;
}
.lp-device-card__icon--blue   { background: rgba(24,119,242,.1);  color: #1877F2; }
.lp-device-card__icon--orange { background: rgba(255,107,0,.12);  color: #FF6B00; }
.lp-device-card__icon--navy   { background: rgba(11,37,69,.08);   color: var(--lp-navy); }
[data-theme="dark"] .lp-device-card__icon--navy { background: rgba(255,255,255,.08); color: rgba(255,255,255,.7); }

.lp-device-card__name {
  font-size: 1.1rem; font-weight: 800; color: var(--lp-navy); margin: 0;
}
[data-theme="dark"] .lp-device-card__name { color: #fff; }
.lp-device-card__desc {
  font-size: .87rem; color: rgba(11,37,69,.55); line-height: 1.55; margin: 0;
}
[data-theme="dark"] .lp-device-card__desc { color: rgba(255,255,255,.45); }
.lp-device-card__price {
  font-size: 1.6rem; font-weight: 900; color: var(--lp-navy);
  display: flex; align-items: baseline; gap: .2rem;
}
[data-theme="dark"] .lp-device-card__price { color: #fff; }
.lp-device-card__price span { font-size: .85rem; font-weight: 500; color: rgba(11,37,69,.4); }
[data-theme="dark"] .lp-device-card__price span { color: rgba(255,255,255,.35); }
.lp-device-card__features {
  list-style: none; padding: 0; margin: 0;
  display: flex; flex-direction: column; gap: .5rem;
}
.lp-device-card__features li {
  font-size: .83rem; color: rgba(11,37,69,.65);
  display: flex; align-items: flex-start; gap: .5rem;
}
[data-theme="dark"] .lp-device-card__features li { color: rgba(255,255,255,.5); }
.lp-device-card__features li i {
  color: #00D97E; font-size: .7rem; margin-top: .2em; flex-shrink: 0;
}
.lp-device-card__cta {
  display: flex; align-items: center; justify-content: center; gap: .45rem;
  padding: .75rem 1.25rem; border-radius: 12px;
  background: var(--lp-blue); color: #fff;
  font-size: .88rem; font-weight: 700;
  text-decoration: none; margin-top: auto;
  transition: background .2s;
}
.lp-device-card__cta:hover { background: #145cc4; color: #fff; text-decoration: none; }
.lp-device-card--featured .lp-device-card__cta { background: var(--lp-orange); }
.lp-device-card--featured .lp-device-card__cta:hover { background: #e05a00; }


/* ═══════════════════════════════════════════════════════════════
   SECTION DEV / API
   ══════════════════════════════════════════════════════════════ */
.lp-dev {
  background: #060e1a;
  padding: 6rem 1.5rem;
}
.lp-dev__inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 5rem;
  align-items: center;
}
@media(max-width:768px) {
  .lp-dev__inner { grid-template-columns: 1fr; gap: 3rem; }
}
.lp-dev__title {
  font-size: clamp(1.8rem,3.5vw,2.6rem);
  font-weight: 900; color: #fff;
  margin: .75rem 0 .75rem; line-height: 1.1;
}
.lp-dev__desc {
  font-size: .97rem; color: rgba(255,255,255,.5);
  margin: 0 0 2rem; line-height: 1.65;
}
.lp-dev__endpoints {
  display: flex; flex-direction: column; gap: .55rem; margin-bottom: 2rem;
}
.lp-dev__endpoint {
  display: flex; align-items: center; gap: .65rem;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 10px; padding: .55rem .9rem;
}
.lp-dev__method {
  font-size: .68rem; font-weight: 800; letter-spacing: .07em;
  padding: .2rem .5rem; border-radius: 6px; flex-shrink: 0; min-width: 40px;
  text-align: center;
}
.lp-dev__method--get  { background: rgba(0,217,126,.15); color: #00D97E; }
.lp-dev__method--post { background: rgba(79,163,232,.15); color: #4FA3E8; }
.lp-dev__endpoint code {
  font-family: 'SF Mono','Fira Code',monospace;
  font-size: .82rem; color: rgba(255,255,255,.75);
  flex-shrink: 0;
}
.lp-dev__desc-inline {
  font-size: .78rem; color: rgba(255,255,255,.3); margin-left: auto;
}
.lp-dev__actions { display: flex; gap: .75rem; flex-wrap: wrap; }
.lp-btn--blue {
  background: #1877F2; color: #fff;
  display: inline-flex; align-items: center; gap: .5rem;
  padding: .75rem 1.4rem; border-radius: 12px;
  font-size: .92rem; font-weight: 700;
  text-decoration: none; transition: background .2s;
}
.lp-btn--blue:hover { background: #145cc4; color: #fff; text-decoration: none; }
.lp-btn--ghost-dark {
  background: rgba(255,255,255,.07);
  border: 1.5px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.7);
  display: inline-flex; align-items: center; gap: .5rem;
  padding: .75rem 1.4rem; border-radius: 12px;
  font-size: .92rem; font-weight: 700;
  text-decoration: none; transition: background .2s, color .2s;
}
.lp-btn--ghost-dark:hover {
  background: rgba(255,255,255,.12);
  color: #fff; text-decoration: none;
}

/* Code block */
.lp-dev__code-block {
  background: #0d1117;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  overflow: hidden;
}
.lp-dev__code-header {
  padding: .65rem 1rem;
  background: rgba(255,255,255,.04);
  border-bottom: 1px solid rgba(255,255,255,.07);
  display: flex; align-items: center; gap: .4rem;
}
.lp-dev__code-dot {
  width: 12px; height: 12px; border-radius: 50%; display: inline-block;
}
.lp-dev__code {
  margin: 0; padding: 1.5rem;
  font-family: 'SF Mono','Fira Code','Cascadia Code',monospace;
  font-size: .82rem; line-height: 1.75;
  color: rgba(255,255,255,.7);
  overflow-x: auto;
}
.lp-dev__code code { background: none; padding: 0; }
.lp-code-comment { color: rgba(255,255,255,.25); font-style: italic; }
.lp-code-key  { color: #ff79c6; }
.lp-code-str  { color: #f1fa8c; }
.lp-code-num  { color: #bd93f9; }
.lp-code-bool { color: #ff8a40; }
.lp-code-var  { color: #8be9fd; }

/* ═══════════════════════════════════════════════════════════════
   FOOTER — SOME SHARE BUTTONS
   ══════════════════════════════════════════════════════════════ */
.lp-footer__some {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(255,255,255,.07);
  flex-wrap: wrap;
}
.lp-footer__some-label {
  font-size: .75rem;
  font-weight: 700;
  color: rgba(255,255,255,.3);
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-right: .25rem;
}
.lp-footer__some-btn {
  width: 38px; height: 38px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1rem;
  text-decoration: none;
  transition: transform .15s, opacity .15s;
}
.lp-footer__some-btn:hover {
  transform: translateY(-2px); opacity: .85;
  text-decoration: none;
}
.lp-footer__some-btn--linkedin  { background: #0A66C2; color: #fff; }
.lp-footer__some-btn--twitter   { background: #111;    color: #fff; }
.lp-footer__some-btn--facebook  { background: #1877F2; color: #fff; }
.lp-footer__some-btn--whatsapp  { background: #25D366; color: #fff; }

@media(max-width:640px){
  .lp-footer__some { justify-content: center; }
}


/* ═══════════════════════════════════════════════════════════════
   LIGHT MODE (html sans data-theme="dark") — overrides ciblés
   ══════════════════════════════════════════════════════════════ */

/* Hero : gradient plus clair en mode jour */
html:not([data-theme="dark"]) .lp-hero {
  background: linear-gradient(160deg, #0d2b5a 0%, #143c8c 55%, #1a4da0 100%);
}

/* Trust bar */
html:not([data-theme="dark"]) .lp-trust-bar {
  background: #eef3fc;
  border-bottom: 1px solid #d0dff5;
}
html:not([data-theme="dark"]) .lp-trust-bar__text { color: #0B2545; }
html:not([data-theme="dark"]) .lp-trust-stat__n   { color: #0B2545; }
html:not([data-theme="dark"]) .lp-trust-stat__l   { color: #64748b; }
html:not([data-theme="dark"]) .lp-trust-bar__divider { background: rgba(11,37,69,.15); }

/* Portails */
html:not([data-theme="dark"]) .lp-portals { background: #f4f6fc; }
html:not([data-theme="dark"]) .lp-portals .lp-section-title { color: #0B2545; }
html:not([data-theme="dark"]) .lp-portals .lp-section-sub   { color: #4B5563; }

/* Features */
html:not([data-theme="dark"]) .lp-features              { background: #ffffff; }
html:not([data-theme="dark"]) .lp-features .lp-section-title { color: #0B2545; }
html:not([data-theme="dark"]) .lp-features .lp-section-sub   { color: #4B5563; }
html:not([data-theme="dark"]) .lp-feat-title             { color: #0B2545; }
html:not([data-theme="dark"]) .lp-feat-desc              { color: #4B5563; }

/* Testimonials */
html:not([data-theme="dark"]) .lp-testimonials { background: #f4f6fc; }
html:not([data-theme="dark"]) .lp-testimonials .lp-section-title { color: #0B2545; }
html:not([data-theme="dark"]) .lp-testimonials .lp-section-sub   { color: #4B5563; }
html:not([data-theme="dark"]) .lp-tcard        { background: #fff; border-color: #e0e7f0; }
html:not([data-theme="dark"]) .lp-tcard__text  { color: #374151; }
html:not([data-theme="dark"]) .lp-tcard__name  { color: #0B2545; }
html:not([data-theme="dark"]) .lp-tcard__role  { color: #6B7280; }

/* Section Revendeurs */
html:not([data-theme="dark"]) .lp-resellers { background: #f4f6fc; }
html:not([data-theme="dark"]) .lp-resellers .lp-section-title { color: #0B2545; }
html:not([data-theme="dark"]) .lp-resellers .lp-section-sub   { color: #4B5563; }
html:not([data-theme="dark"]) .lp-reseller-card {
  background: #fff;
  border: 1.5px solid #e0e7f0;
  box-shadow: 0 2px 12px rgba(11,37,69,.07);
}
html:not([data-theme="dark"]) .lp-reseller-card__title { color: #0B2545; }
html:not([data-theme="dark"]) .lp-reseller-card__desc  { color: #4B5563; }
html:not([data-theme="dark"]) .lp-reseller-stat__n     { color: #0B2545; }
html:not([data-theme="dark"]) .lp-reseller-stat__l     { color: #6B7280; }

/* Section Appareils */
html:not([data-theme="dark"]) .lp-devices { background: #ffffff; }
html:not([data-theme="dark"]) .lp-devices .lp-section-title { color: #0B2545; }
html:not([data-theme="dark"]) .lp-devices .lp-section-sub   { color: #4B5563; }
html:not([data-theme="dark"]) .lp-device-card {
  background: #f4f6fc;
  border: 1.5px solid #e0e7f0;
}
html:not([data-theme="dark"]) .lp-device-card__name  { color: #0B2545; }
html:not([data-theme="dark"]) .lp-device-card__price { color: #0B2545; }
html:not([data-theme="dark"]) .lp-device-card__desc  { color: #4B5563; }
html:not([data-theme="dark"]) .lp-device-feature     { color: #374151; }

/* ── "Retour à l'accueil" — visible en mode jour ── */
.lp-legal-back { padding: .6rem 0 .6rem 1.5rem; }
.lp-legal-back__link {
  font-size: .85rem; font-weight: 600;
  color: #fff; text-decoration: none;
  display: inline-flex; align-items: center; gap: .4rem;
  opacity: .75; transition: opacity .15s;
}
.lp-legal-back__link:hover { opacity: 1; text-decoration: none; color: #fff; }

/* En mode jour, le "retour" sur fond blanc doit être navy */
html:not([data-theme="dark"]) .lp-legal-back {
  background: #f4f6fc;
  border-bottom: 1px solid #e0e7f0;
  padding: .6rem 0 .6rem 1.5rem;
}
html:not([data-theme="dark"]) .lp-legal-back__link {
  color: #0B2545 !important;
  opacity: 1;
}
html:not([data-theme="dark"]) .lp-legal-back__link:hover { color: #C85A00 !important; } /* WCAG AA: ratio 4.6:1 sur fond clair */

/* Pages légales — fond en mode jour */
html:not([data-theme="dark"]) .lp-legal-main { background: #f4f6fc; }
html:not([data-theme="dark"]) .page-legal    { background: #f4f6fc !important; }

/* Blog index — fond mode jour */
html:not([data-theme="dark"]) .lp-blog-page { background: #f4f6fc; }
html:not([data-theme="dark"]) .lp-blog-card { background: #fff; border-color: #e0e7f0; }
html:not([data-theme="dark"]) .lp-blog-card__title { color: #0B2545; }
html:not([data-theme="dark"]) .lp-blog-card__excerpt { color: #4B5563; }
html:not([data-theme="dark"]) .lp-blog-card__meta { color: #6B7280; }

/* ── Dark mode : corrections ── */
[data-theme="dark"] .lp-legal-back { background: rgba(255,255,255,.04); border-bottom: 1px solid rgba(255,255,255,.07); }



/* ═══════════════════════════════════════════════════════════════
   SECTION ADD-ONS (Pricing page)
   ══════════════════════════════════════════════════════════════ */
.lp-addons {
  background: #060e1a;
  padding: 5rem 1.5rem;
}
.lp-addons__inner {
  max-width: 960px;
  margin: 0 auto;
}
.lp-addons__header {
  text-align: center;
  margin-bottom: 3rem;
}
.lp-addon-badge {
  display: inline-flex; align-items: center; gap: .4rem;
  background: rgba(255,107,0,.15); color: #FF8A40;
  border: 1px solid rgba(255,107,0,.25);
  border-radius: 20px; padding: .3rem .9rem;
  font-size: .78rem; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; margin-bottom: 1rem;
}
.lp-addons__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  margin-bottom: 2.5rem;
}
@media(max-width:768px) {
  .lp-addons__grid { grid-template-columns: 1fr; }
}
.lp-addon-card {
  background: rgba(255,255,255,.04);
  border: 1.5px solid rgba(255,255,255,.08);
  border-radius: 20px;
  padding: 2rem;
  display: flex; flex-direction: column; gap: 1.5rem;
  transition: border-color .2s;
}
.lp-addon-card--featured {
  border-color: rgba(255,107,0,.4);
  background: rgba(255,107,0,.06);
}
.lp-addon-card:hover { border-color: rgba(255,107,0,.5); }
.lp-addon-card__icon {
  width: 48px; height: 48px;
  background: rgba(255,107,0,.15);
  color: #FF8A40;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  font-size: 1.3rem;
}
.lp-addon-card__name {
  font-size: 1.1rem; font-weight: 800; color: #fff;
  margin-bottom: .4rem;
}
.lp-addon-card__desc {
  font-size: .88rem; color: rgba(255,255,255,.5);
  line-height: 1.55; margin-bottom: .75rem;
}
.lp-addon-card__features {
  list-style: none; margin: 0; padding: 0;
  display: flex; flex-direction: column; gap: .35rem;
}
.lp-addon-card__features li {
  font-size: .85rem; color: rgba(255,255,255,.65);
  display: flex; align-items: center; gap: .5rem;
}
.lp-addon-card__features i { color: #00D97E; font-size: .75rem; }
.lp-addon-card__cta { border-top: 1px solid rgba(255,255,255,.07); padding-top: 1.25rem; }
.lp-addon-card__price {
  display: flex; align-items: baseline; gap: .2rem;
  margin-bottom: 1rem;
}
.lp-addon-card__amount {
  font-size: 2rem; font-weight: 900; color: #fff;
}
.lp-addon-card__curr { font-size: 1.2rem; font-weight: 700; color: #fff; }
.lp-addon-card__period { font-size: .8rem; color: rgba(255,255,255,.4); }
.lp-addon-qty {
  display: flex; flex-direction: column; gap: .3rem;
  margin-bottom: .75rem;
}
.lp-addon-qty label {
  font-size: .78rem; font-weight: 600;
  color: rgba(255,255,255,.5); text-transform: uppercase; letter-spacing: .05em;
}
.lp-addon-qty__select {
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  color: #fff;
  padding: .5rem .75rem;
  font-size: .88rem;
  width: 100%;
  cursor: pointer;
}
.lp-addon-qty__select option { background: #0d1626; }
.lp-addon-card__btn {
  width: 100%;
  justify-content: center;
  font-size: .92rem;
}
.lp-addons__trust {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(255,255,255,.07);
}
.lp-addons__trust span {
  display: flex; align-items: center; gap: .4rem;
  font-size: .82rem; color: rgba(255,255,255,.4);
}
.lp-addons__trust i { color: rgba(255,107,0,.7); }

/* ═══════════════════════════════════════════════════════════
   PRICING — BADGE FIX + ADD-ONS UI OVERHAUL + CONTACT
   ═══════════════════════════════════════════════════════════ */

/* Badge "MEILLEURE VALEUR" — plus solide, glow orange vif */
.lp-pp-card--orange .lp-pp-card__badge {
  background: var(--lp-orange);
  color: #fff;
  box-shadow: 0 0 0 3px rgba(255,107,0,.25), 0 4px 20px rgba(255,107,0,.6);
  font-size: .73rem;
  font-weight: 900;
  letter-spacing: .08em;
  padding: .32rem 1.1rem;
  border: none;
  text-shadow: 0 1px 2px rgba(0,0,0,.2);
}

/* Carte Pro+ — fond plus solide, moins "transparent" */
.lp-pp-card--orange {
  background: linear-gradient(150deg, #1c1428 0%, #2e160a 55%, #3f1800 100%) !important;
  border: 2px solid #FF6B00 !important;
  box-shadow: 0 0 0 4px rgba(255,107,0,.18), inset 0 1px 0 rgba(255,107,0,.2) !important;
}

/* Billing toggle — period styling */
.lp-pp-card__annual-note {
  font-size: .8rem;
  background: rgba(0,217,126,.12);
  color: #00D97E;
  border-radius: 8px;
  padding: .35rem .65rem;
  display: none;
  align-items: center;
  gap: .4rem;
  margin-bottom: .75rem;
}

/* ─── ADD-ONS GRID — redesign complet ─────────────────── */
.lp-addons {
  background: linear-gradient(180deg, #060e1a 0%, #0a1220 100%) !important;
  padding: 6rem 1.5rem !important;
  position: relative;
  overflow: hidden;
}
.lp-addons::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 80% 50% at 50% 0%, rgba(255,107,0,.07) 0%, transparent 70%);
  pointer-events: none;
}
.lp-addons__header {
  text-align: center;
  margin-bottom: 3.5rem;
}
.lp-addons__header h2 {
  font-size: clamp(1.8rem,4vw,2.6rem);
  font-weight: 900;
  color: #fff;
  margin: .75rem 0 .5rem;
  letter-spacing: -.02em;
}
.lp-addons__header p {
  font-size: 1rem;
  color: rgba(255,255,255,.45);
  max-width: 480px;
  margin: 0 auto;
}
.lp-addons__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.75rem;
  margin-bottom: 3rem;
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}
@media(max-width:768px) { .lp-addons__grid { grid-template-columns: 1fr; } }

/* Carte add-on — redesign glassmorphism */
.lp-addon-card {
  background: rgba(255,255,255,.035) !important;
  border: 1.5px solid rgba(255,255,255,.09) !important;
  border-radius: 24px !important;
  padding: 2.25rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1.5rem !important;
  transition: border-color .25s, box-shadow .25s, transform .25s !important;
  position: relative;
  overflow: hidden;
}
.lp-addon-card::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, rgba(255,107,0,.4), transparent);
  opacity: 0;
  transition: opacity .25s;
}
.lp-addon-card:hover {
  border-color: rgba(255,107,0,.45) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.3), 0 0 0 4px rgba(255,107,0,.06) !important;
  transform: translateY(-3px) !important;
}
.lp-addon-card:hover::before { opacity: 1; }

/* Carte featured (chauffeur) */
.lp-addon-card--featured {
  background: rgba(255,107,0,.07) !important;
  border-color: rgba(255,107,0,.35) !important;
}
.lp-addon-card--featured::before { opacity: 1; }

/* Header carte */
.lp-addon-card__head {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.lp-addon-card__icon {
  width: 52px !important;
  height: 52px !important;
  border-radius: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.35rem !important;
  flex-shrink: 0;
  background: rgba(255,107,0,.15) !important;
  color: #FF8A40 !important;
  border: 1px solid rgba(255,107,0,.2);
}
.lp-addon-card--featured .lp-addon-card__icon {
  background: rgba(255,107,0,.25) !important;
  border-color: rgba(255,107,0,.4) !important;
}
.lp-addon-card__name {
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: #fff !important;
  line-height: 1.2;
}
.lp-addon-card__tag {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  background: rgba(0,217,126,.12);
  color: #00D97E;
  border-radius: 6px;
  padding: .18rem .5rem;
  margin-top: .3rem;
}
.lp-addon-card__desc {
  font-size: .9rem !important;
  color: rgba(255,255,255,.45) !important;
  line-height: 1.6 !important;
  margin: 0;
}
.lp-addon-card__features {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: .5rem !important;
}
.lp-addon-card__features li {
  font-size: .87rem !important;
  color: rgba(255,255,255,.65) !important;
  display: flex !important;
  align-items: center !important;
  gap: .55rem !important;
}
.lp-addon-card__features li i {
  color: #00D97E !important;
  font-size: .8rem !important;
  width: 14px;
  flex-shrink: 0;
}

/* CTA block */
.lp-addon-card__cta {
  margin-top: auto;
  border-top: 1px solid rgba(255,255,255,.07) !important;
  padding-top: 1.5rem !important;
}
.lp-addon-card__price {
  display: flex !important;
  align-items: baseline !important;
  gap: .2rem !important;
  margin-bottom: 1rem !important;
}
.lp-addon-card__amount {
  font-size: 2.2rem !important;
  font-weight: 900 !important;
  color: #fff !important;
  letter-spacing: -.02em;
}
.lp-addon-card__curr { font-size: 1.25rem !important; font-weight: 800 !important; color: #fff !important; }
.lp-addon-card__period { font-size: .8rem !important; color: rgba(255,255,255,.35) !important; }
.lp-addon-qty {
  display: flex !important;
  flex-direction: column !important;
  gap: .35rem !important;
  margin-bottom: .9rem !important;
}
.lp-addon-qty label {
  font-size: .75rem !important;
  font-weight: 700 !important;
  color: rgba(255,255,255,.4) !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
}
.lp-addon-qty__select {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 12px !important;
  color: #fff !important;
  padding: .6rem .85rem !important;
  font-size: .9rem !important;
  width: 100% !important;
  cursor: pointer !important;
  appearance: auto;
  transition: border-color .2s;
}
.lp-addon-qty__select:focus { border-color: rgba(255,107,0,.5) !important; outline: none; }
.lp-addon-card__btn {
  width: 100% !important;
  justify-content: center !important;
  font-size: .95rem !important;
  font-weight: 700 !important;
  padding: .75rem 1rem !important;
  border-radius: 12px !important;
}

/* Trust strip */
.lp-addons__trust {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 2rem !important;
  padding-top: 2.5rem !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
  max-width: 960px;
  margin: 0 auto;
}
.lp-addons__trust span {
  display: flex !important;
  align-items: center !important;
  gap: .45rem !important;
  font-size: .84rem !important;
  color: rgba(255,255,255,.35) !important;
  font-weight: 500;
}
.lp-addons__trust i {
  color: #FF8A40 !important;
  font-size: .85rem;
}

/* ─── CONTACT SECTION ─────────────────────────────────────── */
.lp-contact {
  background: #060e1a;
  padding: 6rem 1.5rem;
  position: relative;
  overflow: hidden;
}
.lp-contact::before {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 70% 60% at 30% 80%, rgba(24,119,242,.06) 0%, transparent 65%),
              radial-gradient(ellipse 50% 40% at 80% 20%, rgba(255,107,0,.04) 0%, transparent 60%);
  pointer-events: none;
}

/* ── 2-column layout ── */
.lp-contact__inner {
  max-width: 1100px;
  margin: 0 auto;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 4rem;
  align-items: start;
}
@media(max-width:768px) {
  .lp-contact__inner { grid-template-columns: 1fr; gap: 2.5rem; }
}

/* ── Left column ── */
.lp-contact__left { display: flex; flex-direction: column; gap: 0; }

.lp-contact__badge {
  display: inline-flex; align-items: center; gap: .4rem;
  background: rgba(24,119,242,.15); color: #4FA3E8;
  border: 1px solid rgba(24,119,242,.25);
  border-radius: 20px; padding: .3rem .9rem;
  font-size: .78rem; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; margin-bottom: 1.25rem;
  width: fit-content;
}
.lp-contact__h2 {
  font-size: clamp(1.7rem,3.5vw,2.6rem);
  font-weight: 900; color: #fff;
  letter-spacing: -.025em; line-height: 1.12;
  margin: 0 0 1rem;
}
.lp-contact__sub {
  color: rgba(255,255,255,.38);
  font-size: .95rem; line-height: 1.65;
  margin-bottom: 2rem;
}

/* ── Highlights ── */
.lp-contact__highlights {
  display: flex; flex-direction: column; gap: 1.1rem;
  margin-bottom: 2rem;
}
.lp-contact__highlight {
  display: flex; align-items: flex-start; gap: 1rem;
}
.lp-contact__highlight-icon {
  width: 40px; height: 40px; flex-shrink: 0; border-radius: 12px;
  display: flex; align-items: center; justify-content: center;
  font-size: .95rem;
  background: rgba(24,119,242,.12); color: #4FA3E8;
}
.lp-contact__highlight-icon--orange { background: rgba(255,107,0,.12); color: #FF8A40; }
.lp-contact__highlight-icon--green  { background: rgba(0,217,126,.12);  color: #00D97E; }
.lp-contact__highlight-icon--blue   { background: rgba(79,163,232,.12); color: #4FA3E8; }
.lp-contact__highlight strong {
  display: block; font-size: .92rem; font-weight: 700; color: #fff;
  margin-bottom: .2rem;
}
.lp-contact__highlight span {
  font-size: .84rem; color: rgba(255,255,255,.38); line-height: 1.5;
}

/* ── Contact info items ── */
.lp-contact__infobar {
  max-width: 1100px;
  margin: 3rem auto 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  overflow: hidden;
  background: rgba(255,255,255,.03);
  position: relative; z-index: 1;
}
.lp-contact__info-item {
  display: flex; align-items: center; gap: 1rem;
  padding: 1.4rem 1.75rem;
}
.lp-contact__info-item + .lp-contact__info-item {
  border-left: 1px solid rgba(255,255,255,.08);
}
@media(max-width:640px) {
  .lp-contact__infobar { grid-template-columns: 1fr; }
  .lp-contact__info-item + .lp-contact__info-item { border-left: none; border-top: 1px solid rgba(255,255,255,.08); }
}
.lp-contact__info-icon {
  width: 40px; height: 40px; border-radius: 12px; flex-shrink: 0;
  display: flex; align-items: center; justify-content: center;
  font-size: .9rem;
  background: rgba(24,119,242,.12); color: #4FA3E8;
}
.lp-contact__info-item strong {
  display: block; font-size: .9rem; font-weight: 700; color: #fff;
}
.lp-contact__info-item span {
  font-size: .8rem; color: rgba(255,255,255,.38);
}

/* ── Right column: form card ── */
.lp-contact__right { position: sticky; top: 96px; }
.lp-contact__form {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 24px;
  padding: 2.25rem;
  box-shadow: 0 24px 48px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.06);
}
.lp-contact__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-bottom: 1rem;
}
@media(max-width:640px) { .lp-contact__row { grid-template-columns: 1fr; } }
.lp-contact__field {
  display: flex; flex-direction: column; gap: .4rem;
  margin-bottom: 1rem;
}
.lp-contact__field label {
  font-size: .77rem; font-weight: 700;
  color: rgba(255,255,255,.4);
  text-transform: uppercase; letter-spacing: .06em;
}
.lp-contact__field input,
.lp-contact__field select,
.lp-contact__field textarea {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px; color: #fff;
  padding: .75rem 1rem; font-size: .92rem; font-family: inherit;
  transition: border-color .2s, box-shadow .2s;
  width: 100%; box-sizing: border-box;
}
.lp-contact__field input::placeholder,
.lp-contact__field textarea::placeholder { color: rgba(255,255,255,.18); }
.lp-contact__field input:focus,
.lp-contact__field select:focus,
.lp-contact__field textarea:focus {
  border-color: rgba(24,119,242,.55);
  box-shadow: 0 0 0 3px rgba(24,119,242,.12);
  outline: none;
}
.lp-contact__field select { appearance: auto; }
.lp-contact__field select option { background: #0d1626; color: #fff; }
.lp-contact__field textarea { resize: vertical; min-height: 120px; }
.lp-contact__submit {
  width: 100%; justify-content: center;
  font-size: .95rem; font-weight: 700;
  padding: .9rem 1.5rem; border-radius: 12px;
  border: none; cursor: pointer; margin-top: .25rem;
}
.lp-contact__success {
  display: none; text-align: center; padding: 3rem 1.5rem; color: #00D97E;
}
.lp-contact__success i { font-size: 3rem; margin-bottom: 1rem; display: block; }
.lp-contact__success p { color: rgba(255,255,255,.5); margin-top: .5rem; }

/* ── Light mode ── */
html:not([data-theme="dark"]) .lp-contact { background: #eef2fb; }
html:not([data-theme="dark"]) .lp-contact__h2 { color: #0B2545; }
html:not([data-theme="dark"]) .lp-contact__sub { color: rgba(11,37,69,.45); }
html:not([data-theme="dark"]) .lp-contact__highlight strong { color: #0B2545; }
html:not([data-theme="dark"]) .lp-contact__highlight span { color: rgba(11,37,69,.5); }
html:not([data-theme="dark"]) .lp-contact__infobar { border-color: rgba(11,37,69,.1); background: rgba(11,37,69,.03); }
html:not([data-theme="dark"]) .lp-contact__info-item strong { color: #0B2545; }
html:not([data-theme="dark"]) .lp-contact__info-item + .lp-contact__info-item { border-left-color: rgba(11,37,69,.1); }
html:not([data-theme="dark"]) .lp-contact__info-item span { color: rgba(11,37,69,.4); }
html:not([data-theme="dark"]) .lp-contact__form {
  background: #fff;
  border-color: rgba(11,37,69,.1);
  box-shadow: 0 16px 40px rgba(11,37,69,.08);
}
html:not([data-theme="dark"]) .lp-contact__field label { color: rgba(11,37,69,.45); }
html:not([data-theme="dark"]) .lp-contact__field input,
html:not([data-theme="dark"]) .lp-contact__field select,
html:not([data-theme="dark"]) .lp-contact__field textarea {
  background: #f8f9fc; border-color: rgba(11,37,69,.15); color: #0B2545;
}
html:not([data-theme="dark"]) .lp-contact__field input::placeholder,
html:not([data-theme="dark"]) .lp-contact__field textarea::placeholder { color: rgba(11,37,69,.28); }
html:not([data-theme="dark"]) .lp-addons { background: #0a1220 !important; }



/* ── Hamburger + Menu mobile ─────────────────────────────── */
.lp-hamburger {
  display: none;
  width: 40px; height: 40px;
  border-radius: var(--lp-radius);
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  color: rgba(255,255,255,.85);
  cursor: pointer;
  font-size: 1.05rem;
  align-items: center; justify-content: center;
  transition: background var(--lp-transition);
  flex-shrink: 0;
  font-family: inherit;
}
.lp-hamburger:hover { background: rgba(255,255,255,.16); color: #fff; }

.lp-nav__mobile {
  display: none;
  flex-direction: column;
  gap: .3rem;
  position: absolute;
  top: 100%; left: 0; right: 0;
  background: rgba(11,37,69,.98);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-top: 1px solid rgba(255,255,255,.07);
  padding: 1rem 1.25rem 1.5rem;
  z-index: 999;
  box-shadow: 0 16px 40px rgba(0,0,0,.45);
}
.lp-nav__mobile a:not(.lp-btn) {
  display: block;
  padding: .8rem 1rem;
  color: rgba(255,255,255,.75);
  text-decoration: none;
  border-radius: var(--lp-radius);
  font-size: .95rem;
  font-weight: 500;
  transition: background var(--lp-transition), color var(--lp-transition);
}
.lp-nav__mobile a:not(.lp-btn):hover {
  background: rgba(255,255,255,.07);
  color: #fff;
  text-decoration: none;
}
.lp-nav__mobile-sep {
  height: 1px;
  background: rgba(255,255,255,.08);
  margin: .6rem 0;
}
.lp-nav__mobile .lp-btn {
  width: 100%;
  justify-content: center;
  min-height: 44px;
}

@media(max-width:768px) {
  .lp-hamburger { display: flex; }
  .lp-nav--open .lp-nav__mobile { display: flex; }
  /* Masquer les CTA secondaires du nav — disponibles dans le drawer */
  .lp-btn--nav-driver,
  .lp-btn--nav-client { display: none !important; }
  /* Le bouton Dispatch / Connexion reste visible comme CTA principal */
  .lp-nav__ctas > .lp-btn--orange:not(:last-child) { display: none !important; }
}

@media(max-width:479px) {
  /* Sur très petits écrans : masquer aussi le texte du bouton orange principal */
  .lp-nav__ctas > .lp-btn--orange .lp-btn-nav-label { display: none; }
}

/* ══════════════════════════════════════════════════════════════════════════
   SYSTÈME DE BREAKPOINTS — 6 valeurs canoniques (KISS)
   ────────────────────────────────────────────────────
   nom    │ max-width │ min-width │ usage
   ───────┼───────────┼───────────┼───────────────────────────────
   xs     │  ≤ 479px  │  480px    │ téléphone compact (iPhone SE)
   sm     │  ≤ 640px  │  640px    │ téléphone standard
   md     │  ≤ 768px  │  768px    │ tablette portrait
   lg     │  ≤ 1024px │ 1024px    │ laptop / tablette paysage
   xl     │  ≤ 1280px │ 1280px    │ desktop
   2xl    │ ≤ 1536px  │ 1536px    │ grand écran
   ────────────────────────────────────────────────────
   TOUTES les @media de ce fichier utilisent ces valeurs.
   Ne jamais ajouter une valeur hors de cette liste.
   ══════════════════════════════════════════════════════════════════════════ */

/* ── SENSORY UX — Mobile first ──────────────────────────────────────────── */
/* Respirations généreuses, touch targets ≥44px, texte lisible               */
@media(max-width:640px) {
  /* Hero — stack vertical avec espace généreux */
  .lp-hero__content { padding: 5rem 1.25rem 3rem; gap: 2rem; }
  .lp-hero__title   { font-size: clamp(1.8rem, 7.5vw, 2.4rem); letter-spacing: -.02em; }
  .lp-hero__sub     { font-size: .95rem; max-width: 100%; margin-bottom: 2rem; }
  .lp-hero__cta     { flex-direction: column; gap: .75rem; }
  .lp-hero__cta .lp-btn--lg { width: 100%; justify-content: center; text-align: center; }

  /* Touch targets min 44px */
  .lp-btn           { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
  .lp-btn--lg       { min-height: 52px; padding: .85rem 1.5rem; }

  /* Sections — padding réduit mais généreux */
  .lp-portals  { padding: 4rem 1.25rem; }
  .lp-features { padding: 4rem 1.25rem; }
  .lp-proof    { padding: 4rem 1.25rem; }
  .lp-contact  { padding: 4rem 1.25rem; }

  /* Section header — lisibilité mobile */
  .lp-section-header { margin-bottom: 2rem; }
  .lp-section-header h2,
  .lp-section-title { font-size: clamp(1.5rem, 6vw, 2rem); line-height: 1.2; }

  /* Cards — padding tactile */
  .lp-feat-card  { padding: 1.5rem 1.25rem; }
  .portal-card   { padding: 1.75rem 1.25rem; }
  .lp-plan       { padding: 1.75rem 1.25rem; }

  /* Stats band — compact */
  .lp-stats { padding: 1.5rem 1.25rem; }
  .lp-stats__grid { gap: 1rem; }
  .lp-stats__value { font-size: 2rem; }

  /* Footer */
  .lp-footer { padding: 3rem 1.25rem 2rem; }
}

/* xs strict : < 480px (iPhone SE, petits Android) */
@media(max-width:479px) {
  .lp-hero__title { font-size: clamp(1.6rem, 8vw, 2rem); }
  .lp-nav { padding: .85rem 1rem; }
  .lp-nav__logo { height: 42px; }
  .lp-stats__grid { grid-template-columns: 1fr 1fr; }
}

/* ── Accessibilité : pas d'animation si l'utilisateur le préfère ─────────── */
@media (prefers-reduced-motion: reduce) {
  .reveal,
  .lp-feat-card {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
  }
  .reveal.revealed { opacity: 1; transform: none; }
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    transition-duration: .01ms !important;
  }
}
