/* ============================================================
   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;
}

/* ── 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:900px){ .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:500px){ .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:600px) { .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:800px){ .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:900px){ .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 {
  display: none;
  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: 200;
  grid-template-columns: 1fr; min-width: 130px;
}
.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: 44px;
  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: 36px;
  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(max-width:1023px) and (min-width:600px) { .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
   ══════════════════════════════════════════════════════════ */
.page-legal body,
.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; }

/* Dark mode (hérite du thème landing) */
[data-theme="light"] .lp-legal-main { color: #1e293b; }
[data-theme="light"] .lp-legal { color: #374151; }
[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__card,
[data-theme="light"] .lp-legal__action { background: #fff; border-color: rgba(11,37,69,.1); }
[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__table { color: #374151; }
[data-theme="light"] .lp-legal__table td { color: #374151; }
[data-theme="light"] .lp-legal__table-wrap { border-color: rgba(11,37,69,.1); }
[data-theme="light"] .lp-legal__note { background: rgba(255,107,0,.06); }
[data-theme="light"] .lp-legal__back__link { color: var(--lp-blue); }
[data-theme="light"] .lp-legal-back__link  { 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:900px){ .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; }
}
