
:root{
  --bg:#050c15;
  --panel:rgba(5, 15, 31, 0.42);
  --panel-strong:rgba(5, 15, 31, 0.56);
  --panel-soft:rgba(7, 20, 40, 0.28);
  --line:rgba(107, 222, 255, 0.24);
  --line-strong:rgba(107, 222, 255, 0.42);
  --text:#f4f8ff;
  --muted:rgba(232, 242, 255, 0.78);
  --soft:rgba(232, 242, 255, 0.58);
  --cyan:#79ddff;
  --cyan-2:#a4f0ff;
  --gold:#efcb79;
  --shadow-lg:0 28px 80px rgba(0,0,0,.34);
  --shadow-md:0 18px 48px rgba(0,0,0,.28);
  --radius:28px;
  --radius-sm:18px;
  --container:min(1280px, calc(100% - 44px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;
  color:var(--text);
  background:var(--bg);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit}
img{max-width:100%;display:block}
.page{
  position:relative;
  min-height:100vh;
  isolation:isolate;
  background:
    radial-gradient(circle at 50% -4%, rgba(120,225,255,.06), transparent 24%),
    linear-gradient(180deg, rgba(4,9,17,.02) 0%, rgba(4,9,17,.04) 20%, rgba(4,9,17,.10) 44%, rgba(4,9,17,.18) 70%, rgba(4,9,17,.30) 100%);
}
.page::before{
  content:"";
  position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(4,9,17,.10) 0%, rgba(4,9,17,.08) 18%, rgba(4,9,17,.12) 42%, rgba(4,9,17,.24) 72%, rgba(4,9,17,.38) 100%),
    radial-gradient(circle at 50% 0%, rgba(120,225,255,.06), transparent 26%);
}
.page::after{
  content:"";
  position:absolute; left:0; right:0; top:min(60vh, 780px); bottom:0; z-index:-2; pointer-events:none;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 1200'%3E%3Cg fill='none' stroke-linecap='round'%3E%3Cg stroke='%2368dfff' stroke-opacity='.16' stroke-width='2'%3E%3Cpath d='M-20 880 C 180 790, 360 1000, 580 890 S 980 760, 1180 860 S 1450 980, 1640 850'/%3E%3Cpath d='M-10 1010 C 180 930, 350 1080, 570 990 S 980 860, 1200 950 S 1460 1060, 1620 980'/%3E%3Cpath d='M80 1180 C 210 980, 320 840, 420 760 S 700 650, 900 790 S 1180 1080, 1350 1180'/%3E%3Cpath d='M1260 1180 C 1170 980, 1060 860, 940 760 S 700 650, 520 720 S 280 970, 210 1180'/%3E%3Cpath d='M260 1180 C 380 1020, 520 940, 720 920 S 1030 940, 1290 1180'/%3E%3Cpath d='M150 770 C 370 720, 500 680, 730 700 S 1100 760, 1390 700'/%3E%3C/g%3E%3Cg stroke='%23efcb79' stroke-opacity='.08' stroke-width='1.5'%3E%3Cpath d='M60 930 C 230 840, 370 890, 560 830 S 1000 760, 1260 840 S 1460 940, 1580 900'/%3E%3Cpath d='M140 1080 C 340 970, 490 1020, 660 970 S 980 900, 1190 980 S 1440 1110, 1540 1060'/%3E%3C/g%3E%3C/g%3E%3Cg fill='%2368dfff'%3E%3Ccircle cx='220' cy='900' r='4'/%3E%3Ccircle cx='510' cy='850' r='4'/%3E%3Ccircle cx='770' cy='925' r='6'/%3E%3Ccircle cx='1140' cy='860' r='4.5'/%3E%3Ccircle cx='1380' cy='930' r='4'/%3E%3Ccircle cx='425' cy='760' r='5'/%3E%3Ccircle cx='930' cy='780' r='5'/%3E%3Ccircle cx='1180' cy='1030' r='4.5'/%3E%3Ccircle cx='320' cy='1040' r='4.5'/%3E%3C/g%3E%3Cg fill='%23efcb79' fill-opacity='.65'%3E%3Ccircle cx='150' cy='970' r='2.2'/%3E%3Ccircle cx='268' cy='936' r='1.8'/%3E%3Ccircle cx='408' cy='990' r='1.8'/%3E%3Ccircle cx='520' cy='948' r='2'/%3E%3Ccircle cx='646' cy='978' r='1.8'/%3E%3Ccircle cx='732' cy='946' r='2.1'/%3E%3Ccircle cx='864' cy='980' r='1.8'/%3E%3Ccircle cx='980' cy='940' r='1.8'/%3E%3Ccircle cx='1096' cy='972' r='2.1'/%3E%3Ccircle cx='1210' cy='936' r='1.8'/%3E%3Ccircle cx='1336' cy='992' r='1.8'/%3E%3Ccircle cx='1462' cy='956' r='1.8'/%3E%3C/g%3E%3Cg fill='%2368dfff' fill-opacity='.32'%3E%3Cellipse cx='770' cy='925' rx='76' ry='26'/%3E%3Cellipse cx='425' cy='760' rx='42' ry='18'/%3E%3Cellipse cx='1140' cy='860' rx='56' ry='20'/%3E%3C/g%3E%3C/svg%3E"),
    radial-gradient(ellipse at 50% 0%, rgba(79, 182, 255, .18), rgba(79, 182, 255, 0) 45%),
    radial-gradient(circle at 22% 74%, rgba(91, 223, 255, .12), rgba(91, 223, 255, 0) 22%),
    radial-gradient(circle at 72% 84%, rgba(107, 222, 255, .10), rgba(107, 222, 255, 0) 20%),
    radial-gradient(circle at 82% 72%, rgba(239, 203, 121, .08), rgba(239, 203, 121, 0) 14%),
    radial-gradient(circle at 18% 90%, rgba(239, 203, 121, .07), rgba(239, 203, 121, 0) 12%),
    linear-gradient(180deg, rgba(4,9,17,0) 0%, rgba(4,9,17,.10) 10%, rgba(4,9,17,.16) 30%, rgba(4,9,17,.22) 100%);
  background-repeat:no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
  background-size:100% 100%, 100% 60%, 40% 35%, 36% 30%, 24% 20%, 20% 18%, 100% 100%;
  background-position:center top, center top, left 10% top 36%, right 4% top 55%, right 18% top 42%, left 10% top 72%, center top;
  opacity:.96;
}
.bg-wrap{
  position:absolute; inset:0; z-index:-3; overflow:hidden;
}
.bg-image{
  width:100%; height:auto; min-height:100vh; display:block;
  object-fit:contain; object-position:center top;
  transform:translateZ(0);
  image-rendering:auto;
}
.bg-shadow{
  position:absolute; inset:0; z-index:-2;
  background:
    linear-gradient(180deg, rgba(4,9,17,.04) 0%, rgba(4,9,17,.03) 18%, rgba(4,9,17,.10) 44%, rgba(4,9,17,.28) 78%, rgba(4,9,17,.42) 100%),
    radial-gradient(circle at 10% 10%, rgba(110,220,255,.08), transparent 20%),
    radial-gradient(circle at 90% 18%, rgba(110,220,255,.06), transparent 22%);
}
.noise{
  position:fixed; inset:0; pointer-events:none; z-index:40; opacity:.045;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");
}
.container{width:var(--container); margin-inline:auto}
.header{position:sticky; top:16px; z-index:30; padding-top:18px}
.nav{
  min-height:82px; padding:12px 18px; border-radius:999px; border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(6,15,31,.56), rgba(6,15,31,.40));
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  box-shadow:0 12px 36px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
  display:grid; grid-template-columns:auto 1fr auto; gap:20px; align-items:center;
}
.brand{display:inline-flex; align-items:center; gap:14px; text-decoration:none; font-weight:900; letter-spacing:.15em; text-transform:uppercase; font-size:18px}
.brand-mark{position:relative; width:42px; height:42px; border-radius:50%; border:1px solid rgba(121,221,255,.44); box-shadow:0 0 0 1px rgba(255,255,255,.02) inset, 0 0 30px rgba(121,221,255,.12)}
.brand-mark::before{content:""; position:absolute; inset:8px; border-top:1px solid rgba(121,221,255,.46); transform:rotate(26deg)}
.brand-mark::after{content:""; position:absolute; left:50%; top:50%; width:8px; height:8px; border-radius:50%; transform:translate(-50%,-50%); background:#7de1ff; box-shadow:0 0 18px rgba(121,221,255,.9)}
.nav-links{display:flex; justify-content:center; gap:8px; flex-wrap:wrap}
.nav-links a{text-decoration:none; color:rgba(232,242,255,.84); font-weight:700; font-size:15px; padding:11px 16px; border-radius:999px; transition:.18s ease}
.nav-links a[aria-current="page"], .nav-links a:hover{background:rgba(121,221,255,.12); color:#fff}
.btn, button.btn{
  appearance:none; border:none; cursor:pointer; text-decoration:none;
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  min-height:52px; padding:14px 22px; border-radius:999px; font-weight:800;
  border:1px solid rgba(121,221,255,.38); color:#fff;
  background:linear-gradient(135deg, rgba(121,221,255,.22), rgba(12,63,112,.12));
  box-shadow:0 0 0 1px rgba(255,255,255,.04) inset, 0 16px 34px rgba(0,0,0,.18);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.btn:hover, button.btn:hover{transform:translateY(-1px); box-shadow:0 18px 38px rgba(0,0,0,.22); border-color:rgba(121,221,255,.54)}
.btn.secondary{background:rgba(5,15,31,.34); border-color:rgba(255,255,255,.16)}
.btn.small{min-height:42px; padding:11px 16px; font-size:14px}
.menu-toggle{display:none}
main{padding:34px 0 92px}
section{padding:72px 0}
.hero{min-height:840px; display:grid; align-items:center; padding-top:82px}
.hero-grid{display:grid; grid-template-columns:minmax(0, 1.08fr) minmax(320px, .92fr); gap:36px; align-items:center}
.eyebrow{display:inline-flex; align-items:center; gap:10px; padding:10px 14px; border-radius:999px; border:1px solid var(--line); background:rgba(5,15,31,.24); color:rgba(240,247,255,.92); font-size:12px; letter-spacing:.14em; text-transform:uppercase}
.dot{width:9px; height:9px; border-radius:50%; background:var(--cyan); box-shadow:0 0 0 7px rgba(121,221,255,.10), 0 0 20px rgba(121,221,255,.72)}
h1,h2,h3,h4,p{margin:0}
h1{font-size:clamp(56px, 8vw, 108px); line-height:.92; letter-spacing:-.08em; max-width:760px; text-shadow:0 10px 26px rgba(0,0,0,.34)}
h2{font-size:clamp(34px, 4vw, 60px); line-height:.98; letter-spacing:-.055em; text-shadow:0 8px 24px rgba(0,0,0,.28)}
h3{font-size:24px; line-height:1.08; letter-spacing:-.04em}
h4{font-size:17px; line-height:1.2; letter-spacing:-.02em}
.lead{margin-top:24px; max-width:720px; color:var(--muted); font-size:clamp(18px, 2vw, 22px); line-height:1.62; text-shadow:0 6px 18px rgba(0,0,0,.24)}
.mini{margin-top:14px; max-width:640px; color:var(--soft); font-size:15px; line-height:1.65}
.gradient-text{background:linear-gradient(90deg,#fff 0%, #c8f1ff 34%, #79dfff 74%, #efcc7e 100%); -webkit-background-clip:text; background-clip:text; color:transparent}
.actions{display:flex; flex-wrap:wrap; gap:14px; margin-top:34px}
.stats{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:12px; margin-top:28px; max-width:640px}
.stat{padding:14px 16px; border-radius:18px; border:1px solid rgba(255,255,255,.08); background:rgba(4,14,28,.22)}
.stat strong{display:block; font-size:24px; letter-spacing:-.04em; margin-bottom:4px}
.stat span{display:block; font-size:13px; color:var(--soft); line-height:1.45}
.glass, .card, .step, .faq-item, .testimonial, .pricing, .table-card, .form-card{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.38), rgba(6,15,31,.28));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
}
.console{padding:22px; width:min(460px, 100%); justify-self:end}
.console-head{display:flex; justify-content:space-between; gap:14px; align-items:center; margin-bottom:16px; font-size:18px; font-weight:900}
.badge{display:inline-flex; align-items:center; padding:7px 11px; border-radius:999px; border:1px solid rgba(121,221,255,.24); color:#cbf7ff; background:rgba(121,221,255,.08); font-size:12px; letter-spacing:.12em; text-transform:uppercase}
.console-list{display:grid; gap:10px}
.console-item{display:grid; grid-template-columns:24px 1fr; gap:12px; padding:14px; border-radius:18px; border:1px solid rgba(255,255,255,.08); background:rgba(4,14,28,.22)}
.console-item i{display:block; width:24px; height:24px; border-radius:50%; background:radial-gradient(circle, rgba(121,221,255,1), rgba(121,221,255,.12) 58%, transparent 60%); box-shadow:0 0 18px rgba(121,221,255,.28)}
.console-item strong{display:block; font-size:16px; margin-bottom:3px}
.console-item span{display:block; color:rgba(233,243,255,.72); font-size:14px; line-height:1.55}
.section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:22px}
.section-head p{max-width:520px; color:var(--muted); line-height:1.65; font-size:16px}
.grid-3{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px}
.grid-4{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:14px}
.card{padding:24px; min-height:220px}
.card .kicker{display:inline-flex; margin-bottom:38px; color:#87e5ff; letter-spacing:.13em; text-transform:uppercase; font-size:12px}
.card p{margin-top:12px; color:var(--muted); line-height:1.62; font-size:15px}
.card a.inline{margin-top:18px; display:inline-flex; gap:8px; align-items:center; text-decoration:none; font-weight:700; color:#d7f7ff}
.band{padding:22px 24px; display:grid; grid-template-columns:1.2fr .8fr; gap:18px; align-items:center}
.band p{color:var(--muted); line-height:1.6}
.chips{display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end}
.chip{display:inline-flex; padding:10px 12px; border-radius:999px; border:1px solid rgba(121,221,255,.22); background:rgba(121,221,255,.08); font-size:13px; color:#cff7ff}
.split{display:grid; grid-template-columns:.94fr 1.06fr; gap:14px}
.panel{padding:28px}
.panel p{margin-top:14px; color:var(--muted); line-height:1.68; font-size:16px}
.service-list{display:grid; gap:12px}
.service-item{display:flex; justify-content:space-between; gap:16px; align-items:center; padding:16px; border-radius:18px; border:1px solid rgba(255,255,255,.08); background:rgba(4,14,28,.22)}
.service-item small{display:block; margin-top:3px; color:rgba(233,243,255,.72); font-size:14px; line-height:1.5}
.steps{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px}
.step{padding:26px; min-height:260px}
.step .kicker{display:inline-flex; margin-bottom:48px; color:#87e5ff; letter-spacing:.13em; text-transform:uppercase; font-size:12px}
.step p{margin-top:14px; color:var(--muted); line-height:1.62; font-size:15px}
.timeline{display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:14px}
.timeline-item{padding:22px; border-radius:22px; border:1px solid var(--line); background:rgba(4,14,28,.22)}
.timeline-item strong{display:block; font-size:15px; margin-bottom:8px}
.timeline-item p{font-size:14px; line-height:1.58; color:var(--muted)}
.faq{display:grid; gap:12px}
.faq-item{padding:18px 22px}
.faq-item p{margin-top:10px; color:var(--muted); line-height:1.66}
.testimonials{display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px}
.testimonial{padding:22px}
.testimonial p{color:var(--muted); line-height:1.66}
.testimonial strong{display:block; margin-top:18px; font-size:15px}
.cta{padding:42px; display:grid; place-items:center; text-align:center; min-height:340px}
.cta p{max-width:740px; margin:18px auto 30px; color:var(--muted); line-height:1.68; font-size:18px}
.form-card{padding:24px}
.form-grid{display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:12px}
.field{display:grid; gap:8px}
.field.full{grid-column:1/-1}
label{font-size:13px; color:var(--soft); letter-spacing:.02em}
input, textarea, select{
  width:100%; border-radius:16px; border:1px solid rgba(255,255,255,.10); padding:14px 15px;
  background:rgba(4,14,28,.28); color:#fff; font:inherit; outline:none; transition:border-color .16s ease, box-shadow .16s ease;
}
textarea{min-height:130px; resize:vertical}
input:focus, textarea:focus, select:focus{border-color:rgba(121,221,255,.44); box-shadow:0 0 0 3px rgba(121,221,255,.10)}
.form-note{margin-top:12px; color:var(--soft); font-size:13px; line-height:1.5}
.footer{padding:20px 0 48px}
.footer-main{display:grid; grid-template-columns:1.2fr 1fr 1fr 1fr; gap:18px; padding:24px 0; border-top:1px solid rgba(255,255,255,.10)}
.footer p, .footer a{color:rgba(233,243,255,.72); text-decoration:none; line-height:1.62}
.footer h4{font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:#d8f8ff; margin-bottom:12px}
.footer ul{list-style:none; padding:0; margin:0; display:grid; gap:8px}
.footer-bottom{display:flex; justify-content:space-between; gap:20px; padding-top:18px; border-top:1px solid rgba(255,255,255,.08); color:rgba(233,243,255,.56); font-size:13px}
.reveal{opacity:0; transform:translateY(18px); transition:opacity .65s ease, transform .65s ease}
.reveal.visible{opacity:1; transform:none}
@media (max-width: 1080px){
  .hero-grid,.split,.band{grid-template-columns:1fr}
  .grid-4{grid-template-columns:repeat(2, minmax(0,1fr))}
  .grid-3,.testimonials,.timeline,.steps{grid-template-columns:1fr}
  .footer-main{grid-template-columns:1fr 1fr}
  .console{justify-self:start}
}
@media (max-width: 820px){
  :root{--container:min(100% - 24px, 1280px)}
  .header{top:10px; padding-top:12px}
  .nav{border-radius:28px; grid-template-columns:auto auto; padding:12px 14px}
  .nav-links{display:none; position:absolute; left:0; right:0; top:calc(100% + 10px); padding:12px; border-radius:24px; border:1px solid var(--line); background:rgba(6,15,31,.72); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); box-shadow:var(--shadow-md)}
  .nav-links.open{display:grid}
  .nav-links a{padding:12px 14px}
  .menu-toggle{display:inline-flex; justify-self:end; align-items:center; justify-content:center; width:48px; height:48px; border-radius:999px; border:1px solid rgba(121,221,255,.22); background:rgba(121,221,255,.08); color:#fff}
  .nav .btn{display:none}
  h1{font-size:clamp(42px, 14vw, 72px)}
  h2{font-size:clamp(30px, 8vw, 46px)}
  .hero{min-height:auto; padding-top:56px}
  .stats{grid-template-columns:1fr}
  .grid-4,.grid-3{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .footer-main{grid-template-columns:1fr}
  .cta{padding:28px}
}


main, .footer{position:relative; z-index:1}
main::after,
.footer::before{
  content:"";
  position:absolute; left:0; right:0; pointer-events:none;
  background:
    radial-gradient(circle at 18% 38%, rgba(121,221,255,.08), transparent 0 18%),
    radial-gradient(circle at 79% 64%, rgba(121,221,255,.07), transparent 0 16%),
    linear-gradient(90deg, transparent 0%, rgba(121,221,255,.06) 10%, transparent 18%, transparent 82%, rgba(121,221,255,.05) 90%, transparent 100%);
  opacity:.8;
}
main::after{top:38vh; bottom:0; z-index:-1}
.footer::before{top:0; bottom:0; z-index:-1}
section, .footer-main, .footer-bottom{position:relative}
.footer-main, .footer-bottom{background:linear-gradient(180deg, rgba(5,15,31,.10), rgba(5,15,31,.06))}


/* ===== Continuation V2 : fonds subtils entre les sections et en bas ===== */
main{
  background:
    radial-gradient(circle at 18% 26%, rgba(121,221,255,.045), transparent 0 18%),
    radial-gradient(circle at 82% 64%, rgba(121,221,255,.038), transparent 0 16%),
    linear-gradient(180deg, rgba(5,15,31,0) 0%, rgba(5,15,31,.03) 100%);
}
main > section,
.footer{
  position:relative;
  overflow:hidden;
}
main > section > .container,
main > section > *,
.footer > *{
  position:relative;
  z-index:2;
}
main > section:not(.hero)::before,
main > section:not(.hero)::after,
.footer::after{
  content:"";
  position:absolute;
  pointer-events:none;
}
main > section:not(.hero)::before{
  inset:8px 0;
  z-index:0;
  background:
    radial-gradient(circle at 15% 28%, rgba(121,221,255,.10), transparent 0 12%),
    radial-gradient(circle at 78% 72%, rgba(121,221,255,.08), transparent 0 10%),
    radial-gradient(circle at 62% 48%, rgba(239,203,121,.06), transparent 0 8%),
    linear-gradient(90deg, transparent 0%, rgba(121,221,255,.07) 10%, transparent 18%, transparent 82%, rgba(121,221,255,.06) 90%, transparent 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 420'%3E%3Cg fill='none' stroke-linecap='round'%3E%3Cg stroke='%2368dfff' stroke-opacity='.16' stroke-width='2'%3E%3Cpath d='M-40 280 C 150 210, 290 350, 490 280 S 860 180, 1080 250 S 1390 340, 1640 250'/%3E%3Cpath d='M40 360 C 260 290, 420 380, 610 330 S 960 250, 1180 320 S 1450 390, 1620 340'/%3E%3Cpath d='M180 400 C 260 280, 360 220, 460 180 S 690 120, 840 190 S 1120 360, 1260 410'/%3E%3Cpath d='M1310 390 C 1220 300, 1120 240, 1010 190 S 790 135, 610 170 S 370 270, 280 390'/%3E%3C/g%3E%3Cg stroke='%23efcb79' stroke-opacity='.10' stroke-width='1.5'%3E%3Cpath d='M100 320 C 250 260, 420 300, 600 250 S 930 210, 1180 270 S 1450 330, 1570 300'/%3E%3C/g%3E%3C/g%3E%3Cg fill='%2368dfff' fill-opacity='.82'%3E%3Ccircle cx='190' cy='300' r='4'/%3E%3Ccircle cx='430' cy='245' r='4.5'/%3E%3Ccircle cx='750' cy='305' r='5.2'/%3E%3Ccircle cx='980' cy='215' r='4.4'/%3E%3Ccircle cx='1325' cy='335' r='4.2'/%3E%3Ccircle cx='1120' cy='130' r='4.2'/%3E%3C/g%3E%3Cg fill='%23efcb79' fill-opacity='.7'%3E%3Ccircle cx='320' cy='330' r='1.9'/%3E%3Ccircle cx='520' cy='360' r='1.8'/%3E%3Ccircle cx='860' cy='340' r='1.8'/%3E%3Ccircle cx='1090' cy='310' r='2'/%3E%3Ccircle cx='1410' cy='290' r='1.9'/%3E%3C/g%3E%3Cg fill='%2368dfff' fill-opacity='.20'%3E%3Cellipse cx='750' cy='305' rx='62' ry='20'/%3E%3Cellipse cx='1120' cy='130' rx='40' ry='14'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat:no-repeat, no-repeat, no-repeat, no-repeat, no-repeat;
  background-size:28% 68%, 24% 58%, 20% 36%, 100% 100%, 100% 100%;
  background-position:left 0 top 8%, right 2% top 78%, center 55%, center center, center center;
  opacity:.75;
}
main > section:not(.hero)::after{
  left:0;
  right:0;
  bottom:0;
  height:1px;
  z-index:1;
  background:linear-gradient(90deg, transparent 0%, rgba(121,221,255,.18) 12%, rgba(121,221,255,.32) 50%, rgba(121,221,255,.18) 88%, transparent 100%);
}
main > section:nth-of-type(2n):not(.hero)::before{
  background-position:right 4% top 18%, left 3% top 75%, center 42%, center center, center center;
  transform:scaleX(-1);
  opacity:.68;
}
main > section:nth-of-type(3n):not(.hero)::before{
  opacity:.62;
  filter:saturate(1.06);
}
.footer{
  background:
    linear-gradient(180deg, rgba(5,15,31,.08), rgba(5,15,31,.14)),
    radial-gradient(circle at 18% 34%, rgba(121,221,255,.06), transparent 0 18%),
    radial-gradient(circle at 82% 68%, rgba(121,221,255,.05), transparent 0 16%);
}
.footer::before{
  background:
    radial-gradient(circle at 18% 24%, rgba(121,221,255,.10), transparent 0 14%),
    radial-gradient(circle at 84% 70%, rgba(121,221,255,.08), transparent 0 12%),
    linear-gradient(90deg, transparent 0%, rgba(121,221,255,.06) 10%, transparent 18%, transparent 82%, rgba(121,221,255,.05) 90%, transparent 100%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 420'%3E%3Cg fill='none' stroke-linecap='round'%3E%3Cg stroke='%2368dfff' stroke-opacity='.14' stroke-width='2'%3E%3Cpath d='M-10 290 C 180 220, 360 320, 540 265 S 860 190, 1090 250 S 1420 330, 1610 270'/%3E%3Cpath d='M90 380 C 260 300, 430 360, 630 320 S 980 250, 1230 310 S 1480 390, 1600 340'/%3E%3Cpath d='M220 410 C 320 320, 390 250, 500 200 S 760 145, 940 210 S 1190 340, 1320 410'/%3E%3C/g%3E%3Cg fill='%2368dfff' fill-opacity='.78'%3E%3Ccircle cx='250' cy='340' r='4.2'/%3E%3Ccircle cx='520' cy='275' r='4'/%3E%3Ccircle cx='820' cy='330' r='5.2'/%3E%3Ccircle cx='1120' cy='250' r='4'/%3E%3Ccircle cx='1400' cy='320' r='4.2'/%3E%3C/g%3E%3Cg fill='%23efcb79' fill-opacity='.65'%3E%3Ccircle cx='340' cy='360' r='1.8'/%3E%3Ccircle cx='700' cy='350' r='1.8'/%3E%3Ccircle cx='980' cy='330' r='1.8'/%3E%3Ccircle cx='1280' cy='350' r='1.8'/%3E%3C/g%3E%3C/svg%3E");
  background-repeat:no-repeat, no-repeat, no-repeat, no-repeat;
  background-size:30% 76%, 28% 68%, 100% 100%, 100% 100%;
  background-position:left 4% top 12%, right 6% top 76%, center center, center center;
  opacity:.78;
}
.footer::after{
  inset:0;
  z-index:0;
  background:
    radial-gradient(circle at 50% 18%, rgba(104,223,255,.05), transparent 0 18%),
    linear-gradient(180deg, rgba(4,9,17,.02) 0%, rgba(4,9,17,.14) 100%);
}
.footer-main,
.footer-bottom,
.band,
.form-card,
.card,
.timeline-item,
.testimonial,
.faq-item,
.panel,
.cta,
.service-item,
.console-item,
.stat,
.step{
  position:relative;
}
.footer-main::before,
.footer-bottom::before,
.band::before,
.form-card::before,
.card::before,
.timeline-item::before,
.testimonial::before,
.faq-item::before,
.panel::before,
.cta::before,
.service-item::before,
.console-item::before,
.stat::before,
.step::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    linear-gradient(90deg, transparent 0%, rgba(121,221,255,.05) 10%, transparent 22%, transparent 78%, rgba(121,221,255,.04) 90%, transparent 100%),
    radial-gradient(circle at 84% 26%, rgba(121,221,255,.06), transparent 0 18%);
  opacity:.92;
}
@media (max-width: 820px){
  main > section:not(.hero)::before{
    background-size:46% 56%, 40% 48%, 28% 26%, 100% 100%, 100% 100%;
    opacity:.62;
  }
  .footer::before{
    background-size:44% 54%, 40% 50%, 100% 100%, 100% 100%;
    opacity:.7;
  }
}


/* ===== Accueil PRAGMA — contenu commercial concret ===== */
.before-after-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
}
.before-after{
  padding:22px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.38), rgba(6,15,31,.28));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  position:relative;
  overflow:hidden;
}
.before-after::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 86% 18%, rgba(121,221,255,.08), transparent 0 18%),
    linear-gradient(90deg, transparent 0%, rgba(121,221,255,.04) 14%, transparent 26%);
}
.before-after > *{position:relative; z-index:1}
.ba-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#d7f7ff;
  margin-bottom:12px;
}
.ba-row{
  display:grid;
  gap:12px;
}
.ba-box{
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(4,14,28,.22);
}
.ba-box strong{
  display:block;
  margin-bottom:6px;
  font-size:14px;
  color:#ffffff;
}
.ba-box p{
  color:var(--muted);
  line-height:1.58;
  font-size:15px;
}
.pragma-manifesto{
  padding:34px;
  border:1px solid var(--line);
  border-radius:34px;
  background:
    radial-gradient(circle at 12% 16%, rgba(121,221,255,.10), transparent 0 22%),
    radial-gradient(circle at 82% 72%, rgba(239,203,121,.08), transparent 0 18%),
    linear-gradient(180deg, rgba(6,15,31,.42), rgba(6,15,31,.27));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.manifesto-line{
  margin-top:18px;
  font-size:clamp(24px, 3.1vw, 42px);
  line-height:1.12;
  letter-spacing:-.045em;
  max-width:980px;
}
.manifesto-points{
  display:grid;
  grid-template-columns:repeat(5, minmax(0,1fr));
  gap:10px;
  margin-top:24px;
}
.manifesto-points span{
  border:1px solid rgba(121,221,255,.20);
  background:rgba(121,221,255,.07);
  color:#d8f9ff;
  padding:11px 12px;
  border-radius:999px;
  font-size:13px;
  text-align:center;
}
.ecosystem-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
}
.ecosystem-card{
  padding:28px;
  min-height:310px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.40), rgba(6,15,31,.28));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  position:relative;
  overflow:hidden;
}
.ecosystem-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 86% 14%, rgba(121,221,255,.11), transparent 0 19%),
    linear-gradient(90deg, transparent, rgba(121,221,255,.05), transparent);
}
.ecosystem-card > *{position:relative; z-index:1}
.ecosystem-card p{
  margin-top:14px;
  color:var(--muted);
  line-height:1.66;
  font-size:16px;
}
.ecosystem-card .actions{
  margin-top:24px;
}
.audit-list{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:10px;
  margin:24px auto 0;
  max-width:980px;
}
.audit-list span{
  padding:12px 14px;
  border-radius:18px;
  border:1px solid rgba(121,221,255,.18);
  background:rgba(4,14,28,.25);
  color:rgba(232,242,255,.84);
  font-size:14px;
  line-height:1.35;
}
@media (max-width:1080px){
  .manifesto-points{grid-template-columns:repeat(2, minmax(0,1fr))}
  .audit-list{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width:820px){
  .before-after-grid,.ecosystem-grid{grid-template-columns:1fr}
  .manifesto-points,.audit-list{grid-template-columns:1fr}
  .pragma-manifesto,.ecosystem-card,.before-after{padding:22px}
}


/* ===== Accueil PRAGMA — orientation média / PragmaTech.media ===== */
.media-feature{
  padding:34px;
  border:1px solid var(--line);
  border-radius:34px;
  background:
    radial-gradient(circle at 14% 18%, rgba(121,221,255,.12), transparent 0 22%),
    radial-gradient(circle at 88% 70%, rgba(239,203,121,.08), transparent 0 18%),
    linear-gradient(180deg, rgba(6,15,31,.44), rgba(6,15,31,.28));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  position:relative;
  overflow:hidden;
}
.media-feature::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, transparent, rgba(121,221,255,.055), transparent),
    radial-gradient(circle at 50% 20%, rgba(121,221,255,.08), transparent 0 20%);
}
.media-feature > *{position:relative; z-index:1}
.media-line{
  margin-top:18px;
  max-width:1020px;
  font-size:clamp(24px, 3.1vw, 42px);
  line-height:1.12;
  letter-spacing:-.045em;
}
.media-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
  margin-top:26px;
}
.media-block{
  padding:20px;
  min-height:210px;
  border:1px solid rgba(121,221,255,.20);
  border-radius:22px;
  background:rgba(4,14,28,.25);
  position:relative;
  overflow:hidden;
}
.media-block::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 82% 18%, rgba(121,221,255,.10), transparent 0 18%),
    linear-gradient(90deg, transparent 0%, rgba(121,221,255,.045) 18%, transparent 30%);
}
.media-block > *{position:relative; z-index:1}
.media-block span{
  display:inline-flex;
  margin-bottom:28px;
  color:#87e5ff;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:12px;
}
.media-block p{
  margin-top:12px;
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.principles-grid{
  display:grid;
  grid-template-columns:repeat(6, minmax(0,1fr));
  gap:10px;
  margin-top:24px;
}
.principles-grid span{
  border:1px solid rgba(121,221,255,.20);
  background:rgba(121,221,255,.07);
  color:#d8f9ff;
  padding:11px 12px;
  border-radius:999px;
  font-size:13px;
  text-align:center;
}
.bridge-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}
.bridge-card{
  padding:22px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.38), rgba(6,15,31,.26));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  position:relative;
  overflow:hidden;
}
.bridge-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 88% 16%, rgba(121,221,255,.08), transparent 0 18%),
    linear-gradient(90deg, transparent, rgba(121,221,255,.045), transparent);
}
.bridge-card > *{position:relative; z-index:1}
.bridge-card span{
  display:inline-flex;
  margin-bottom:26px;
  color:#87e5ff;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:12px;
}
.bridge-card p{
  margin-top:12px;
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.entry-grid{
  display:grid;
  grid-template-columns:1.2fr .9fr .9fr;
  gap:14px;
}
.entry-card{
  padding:28px;
  min-height:330px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.42), rgba(6,15,31,.28));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  position:relative;
  overflow:hidden;
}
.entry-card.primary{
  background:
    radial-gradient(circle at 82% 16%, rgba(121,221,255,.13), transparent 0 22%),
    linear-gradient(180deg, rgba(6,15,31,.46), rgba(6,15,31,.30));
}
.entry-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 86% 14%, rgba(121,221,255,.10), transparent 0 19%),
    linear-gradient(90deg, transparent, rgba(121,221,255,.05), transparent);
}
.entry-card > *{position:relative; z-index:1}
.entry-card p{
  margin-top:14px;
  color:var(--muted);
  line-height:1.66;
  font-size:16px;
}
.entry-card .actions{
  margin-top:24px;
}
.reader-promise{
  display:grid;
  grid-template-columns:repeat(5, minmax(0,1fr));
  gap:12px;
}
.reader-item{
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(121,221,255,.18);
  background:rgba(4,14,28,.25);
}
.reader-item strong{
  display:block;
  margin-bottom:8px;
  font-size:16px;
}
.reader-item p{
  color:var(--muted);
  font-size:14px;
  line-height:1.55;
}
@media (max-width:1080px){
  .media-grid,.bridge-grid{grid-template-columns:repeat(2, minmax(0,1fr))}
  .principles-grid{grid-template-columns:repeat(3, minmax(0,1fr))}
  .entry-grid{grid-template-columns:1fr}
  .reader-promise{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width:820px){
  .media-grid,.bridge-grid,.reader-promise{grid-template-columns:1fr}
  .principles-grid{grid-template-columns:1fr}
  .media-feature,.entry-card,.bridge-card,.media-block{padding:22px}
}


/* ===== Version finale senior : navigation, média, services détaillés ===== */
.nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
}
.nav-drop-button{
  appearance:none;
  border:0;
  cursor:pointer;
  color:rgba(232,242,255,.84);
  font:inherit;
  font-weight:700;
  font-size:15px;
  padding:11px 16px;
  border-radius:999px;
  background:transparent;
  transition:.18s ease;
}
.nav-drop-button:hover,
.nav-dropdown.open .nav-drop-button,
.nav-dropdown.is-active .nav-drop-button{
  background:rgba(121,221,255,.12);
  color:#fff;
}
.nav-panel{
  position:absolute;
  top:calc(100% + 12px);
  left:50%;
  width:min(520px, calc(100vw - 32px));
  transform:translateX(-50%) translateY(8px);
  padding:12px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(6,15,31,.82), rgba(6,15,31,.66));
  box-shadow:0 22px 70px rgba(0,0,0,.35);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  display:grid;
  gap:10px;
}
.nav-dropdown:hover .nav-panel,
.nav-dropdown.open .nav-panel{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
.nav-panel-item{
  text-decoration:none;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(4,14,28,.28);
  display:grid;
  gap:4px;
}
.nav-panel-item strong{
  font-size:15px;
  color:#fff;
}
.nav-panel-item span{
  color:rgba(232,242,255,.70);
  font-size:13px;
  line-height:1.45;
}
.nav-panel-cta{
  text-decoration:none;
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:44px;
  border-radius:999px;
  border:1px solid rgba(121,221,255,.34);
  background:linear-gradient(135deg, rgba(121,221,255,.18), rgba(12,63,112,.12));
  color:#fff;
  font-weight:800;
}
.section-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#d7f7ff;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:12px;
  margin-bottom:14px;
}
.statement{
  padding:34px;
  border:1px solid var(--line);
  border-radius:34px;
  background:
    radial-gradient(circle at 12% 16%, rgba(121,221,255,.10), transparent 0 22%),
    radial-gradient(circle at 86% 72%, rgba(239,203,121,.08), transparent 0 18%),
    linear-gradient(180deg, rgba(6,15,31,.44), rgba(6,15,31,.28));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.statement .big-line{
  margin-top:12px;
  max-width:1040px;
  font-size:clamp(25px, 3.2vw, 44px);
  line-height:1.10;
  letter-spacing:-.045em;
}
.statement .support{
  margin-top:18px;
  max-width:900px;
  color:var(--muted);
  line-height:1.72;
  font-size:18px;
}
.media-pill-grid,
.principle-grid,
.promise-grid,
.problem-grid,
.deliverable-grid,
.before-after-service,
.service-cards{
  display:grid;
  gap:14px;
}
.media-pill-grid{
  grid-template-columns:repeat(4, minmax(0,1fr));
  margin-top:26px;
}
.principle-grid{
  grid-template-columns:repeat(6, minmax(0,1fr));
  margin-top:24px;
}
.promise-grid{
  grid-template-columns:repeat(6, minmax(0,1fr));
}
.problem-grid{
  grid-template-columns:repeat(4, minmax(0,1fr));
}
.deliverable-grid{
  grid-template-columns:repeat(3, minmax(0,1fr));
}
.before-after-service{
  grid-template-columns:repeat(2, minmax(0,1fr));
}
.service-cards{
  grid-template-columns:repeat(4, minmax(0,1fr));
}
.media-pill,
.principle-grid span,
.promise-card,
.problem-card,
.deliverable-card,
.ba-service-card,
.service-mini-card,
.matrix-card,
.flow-card{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.38), rgba(6,15,31,.26));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  position:relative;
  overflow:hidden;
}
.media-pill,
.promise-card,
.problem-card,
.deliverable-card,
.ba-service-card,
.service-mini-card,
.matrix-card,
.flow-card{
  padding:22px;
}
.media-pill::before,
.promise-card::before,
.problem-card::before,
.deliverable-card::before,
.ba-service-card::before,
.service-mini-card::before,
.matrix-card::before,
.flow-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 86% 18%, rgba(121,221,255,.08), transparent 0 18%),
    linear-gradient(90deg, transparent, rgba(121,221,255,.045), transparent);
}
.media-pill > *,
.promise-card > *,
.problem-card > *,
.deliverable-card > *,
.ba-service-card > *,
.service-mini-card > *,
.matrix-card > *,
.flow-card > *{
  position:relative;
  z-index:1;
}
.media-pill span,
.problem-card span,
.deliverable-card span,
.ba-service-card span,
.service-mini-card span,
.matrix-card span,
.flow-card span{
  display:inline-flex;
  margin-bottom:28px;
  color:#87e5ff;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:12px;
}
.media-pill p,
.promise-card p,
.problem-card p,
.deliverable-card p,
.ba-service-card p,
.service-mini-card p,
.matrix-card p,
.flow-card p{
  margin-top:12px;
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.principle-grid span{
  padding:12px;
  text-align:center;
  color:#d8f9ff;
  border-radius:999px;
  font-size:13px;
  background:rgba(121,221,255,.07);
}
.entry-grid-final{
  display:grid;
  grid-template-columns:1.2fr .9fr .9fr;
  gap:14px;
}
.entry-card-final{
  padding:28px;
  min-height:330px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.42), rgba(6,15,31,.28));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  position:relative;
  overflow:hidden;
}
.entry-card-final.primary{
  background:
    radial-gradient(circle at 82% 16%, rgba(121,221,255,.13), transparent 0 22%),
    linear-gradient(180deg, rgba(6,15,31,.46), rgba(6,15,31,.30));
}
.entry-card-final p{
  margin-top:14px;
  color:var(--muted);
  line-height:1.66;
  font-size:16px;
}
.entry-card-final .actions{
  margin-top:24px;
}
.matrix{
  width:100%;
  border-collapse:separate;
  border-spacing:0 10px;
}
.matrix th{
  text-align:left;
  color:#d7f7ff;
  font-size:13px;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:0 14px 6px;
}
.matrix td{
  color:var(--muted);
  line-height:1.48;
  padding:16px 14px;
  background:rgba(4,14,28,.25);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.matrix td:first-child{
  border-left:1px solid rgba(255,255,255,.08);
  border-radius:16px 0 0 16px;
  color:#fff;
  font-weight:750;
}
.matrix td:last-child{
  border-right:1px solid rgba(255,255,255,.08);
  border-radius:0 16px 16px 0;
}
.signal-bars{
  display:grid;
  gap:12px;
}
.signal-row{
  display:grid;
  grid-template-columns:170px 1fr 64px;
  gap:12px;
  align-items:center;
}
.signal-row strong{
  font-size:14px;
}
.signal-track{
  height:12px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}
.signal-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(121,221,255,.45), rgba(239,203,121,.78));
}
.flow-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}
.form-note strong{
  color:#fff;
}
@media (max-width:1080px){
  .media-pill-grid,
  .problem-grid,
  .service-cards,
  .flow-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  .principle-grid,
  .promise-grid{
    grid-template-columns:repeat(3, minmax(0,1fr));
  }
  .entry-grid-final,
  .deliverable-grid,
  .before-after-service{
    grid-template-columns:1fr;
  }
}
@media (max-width:820px){
  .media-pill-grid,
  .problem-grid,
  .service-cards,
  .flow-grid,
  .principle-grid,
  .promise-grid{
    grid-template-columns:1fr;
  }
  .statement,
  .entry-card-final,
  .media-pill,
  .promise-card,
  .problem-card,
  .deliverable-card,
  .ba-service-card,
  .service-mini-card,
  .matrix-card,
  .flow-card{
    padding:22px;
  }
  .signal-row{
    grid-template-columns:1fr;
    gap:8px;
  }
  .nav-panel{
    position:static;
    width:100%;
    transform:none;
    margin-top:8px;
  }
  .nav-dropdown{
    display:block;
  }
  .nav-dropdown:hover .nav-panel{
    transform:none;
  }
}


/* ===== V2 publication : punchline nav, média dropdown, réseaux sociaux ===== */
.nav{
  grid-template-columns:auto 1fr auto;
}
.nav-punchline{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:9px 13px;
  border-radius:999px;
  border:1px solid rgba(121,221,255,.18);
  background:rgba(121,221,255,.055);
  color:rgba(216,249,255,.86);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.nav-right{
  display:flex;
  align-items:center;
  gap:10px;
  justify-self:end;
}
.social-links{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.social-link{
  width:34px;
  height:34px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  color:#d8f9ff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.02em;
  border:1px solid rgba(121,221,255,.22);
  background:rgba(4,14,28,.28);
  box-shadow:0 0 0 1px rgba(255,255,255,.025) inset;
  transition:.18s ease;
}
.social-link:hover{
  transform:translateY(-1px);
  border-color:rgba(121,221,255,.45);
  background:rgba(121,221,255,.12);
}
.social-link.newsletter{
  width:auto;
  padding:0 12px;
  gap:8px;
}
.nav-panel.media-panel{
  width:min(560px, calc(100vw - 32px));
}
.nav-panel-note{
  padding:12px 14px;
  border-radius:18px;
  border:1px solid rgba(239,203,121,.14);
  background:rgba(239,203,121,.055);
  color:rgba(240,247,255,.76);
  font-size:13px;
  line-height:1.45;
}
.newsletter-band{
  padding:30px;
  border:1px solid var(--line);
  border-radius:34px;
  background:
    radial-gradient(circle at 12% 18%, rgba(121,221,255,.12), transparent 0 21%),
    radial-gradient(circle at 86% 70%, rgba(239,203,121,.08), transparent 0 18%),
    linear-gradient(180deg, rgba(6,15,31,.42), rgba(6,15,31,.28));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:22px;
  align-items:center;
  position:relative;
  overflow:hidden;
}
.newsletter-band::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, transparent, rgba(121,221,255,.055), transparent),
    radial-gradient(circle at 70% 30%, rgba(121,221,255,.08), transparent 0 22%);
}
.newsletter-band > *{position:relative; z-index:1}
.newsletter-band p{
  margin-top:14px;
  color:var(--muted);
  line-height:1.66;
  font-size:16px;
}
.newsletter-actions{
  display:grid;
  gap:12px;
}
.social-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
  padding:18px 20px;
  border-radius:24px;
  border:1px solid rgba(121,221,255,.18);
  background:rgba(4,14,28,.24);
}
.social-strip strong{
  font-size:15px;
}
.social-strip span{
  color:var(--muted);
  font-size:14px;
}
.footer-social{
  margin-top:16px;
}
@media (max-width:1180px){
  .nav-punchline{
    display:none;
  }
}
@media (max-width:820px){
  .nav{
    grid-template-columns:auto auto;
  }
  .nav-right{
    justify-self:end;
  }
  .nav-right .social-links{
    display:none;
  }
  .newsletter-band{
    grid-template-columns:1fr;
    padding:22px;
  }
  .social-strip{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* ===== V3 finale : logos réseaux + punchline repositionnée ===== */
.brand-zone{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:max-content;
}
.brand-zone .brand{
  flex:0 0 auto;
}
.nav-punchline{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:9px 13px;
  border-radius:999px;
  border:1px solid rgba(121,221,255,.18);
  background:rgba(121,221,255,.055);
  color:rgba(216,249,255,.88);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.social-link{
  overflow:hidden;
  padding:0;
  width:34px;
  height:34px;
}
.social-link svg{
  width:100%;
  height:100%;
  display:block;
}
.footer-social .social-link,
.social-strip .social-link{
  width:38px;
  height:38px;
}
.contact-email{
  color:#d8f9ff;
  font-weight:750;
}
@media (max-width:1180px){
  .nav-punchline{
    display:none;
  }
}
@media (max-width:820px){
  .brand-zone{
    gap:10px;
  }
  .nav-right .social-links{
    display:none;
  }
}


/* ===== V4 finale vérifiée : logo officiel, réseaux sans YouTube, liens testés ===== */
.official-logo-mark{
  width:46px;
  height:46px;
  border-radius:50%;
  flex:0 0 auto;
  border:1px solid rgba(121,221,255,.40);
  box-shadow:0 0 0 1px rgba(255,255,255,.04) inset, 0 0 26px rgba(121,221,255,.16);
  background-image:url("https://media.beehiiv.com/cdn-cgi/image/format%3Dauto%2Cfit%3Dscale-down%2Conerror%3Dredirect/uploads/asset/file/f3ebfad1-b8e5-4e64-b3cd-26ab9beed61e/1067fb8d-1eff-4d33-9cf1-1c1b428fcc0c.png");
  background-size:255%;
  background-position:50% 32%;
  background-repeat:no-repeat;
  background-color:#07131f;
}
.footer .official-logo-mark{
  width:40px;
  height:40px;
}
.brand-zone{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:max-content;
}
.brand-zone .brand{
  flex:0 0 auto;
}
.brand .brand-mark{
  display:none;
}
.nav-punchline{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:9px 13px;
  border-radius:999px;
  border:1px solid rgba(121,221,255,.18);
  background:rgba(121,221,255,.055);
  color:rgba(216,249,255,.88);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.social-link{
  overflow:hidden;
  padding:0;
  width:34px;
  height:34px;
}
.social-link svg{
  width:100%;
  height:100%;
  display:block;
}
.footer-social .social-link,
.social-strip .social-link{
  width:38px;
  height:38px;
}
.contact-email{
  color:#d8f9ff;
  font-weight:750;
}
.logo-reminder{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:16px;
  color:rgba(232,242,255,.72);
  font-size:13px;
}
.logo-reminder .official-logo-mark{
  width:34px;
  height:34px;
}
@media (max-width:1180px){
  .nav-punchline{
    display:none;
  }
}
@media (max-width:820px){
  .brand-zone{
    gap:10px;
  }
  .nav-right .social-links{
    display:none;
  }
}


/* ===== V5 finale : offres 3 phases + cas concret données ===== */
.phase-offer-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:14px;
}
.phase-offer{
  padding:26px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.40), rgba(6,15,31,.27));
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  position:relative;
  overflow:hidden;
}
.phase-offer.featured{
  background:
    radial-gradient(circle at 82% 18%, rgba(239,203,121,.10), transparent 0 22%),
    linear-gradient(180deg, rgba(6,15,31,.48), rgba(6,15,31,.30));
}
.phase-offer::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 88% 16%, rgba(121,221,255,.09), transparent 0 18%),
    linear-gradient(90deg, transparent, rgba(121,221,255,.045), transparent);
}
.phase-offer > *{position:relative;z-index:1}
.phase-offer .phase-time{
  display:inline-flex;
  margin:12px 0 22px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(121,221,255,.22);
  background:rgba(121,221,255,.07);
  color:#d8f9ff;
  font-size:12px;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.phase-offer ul,
.concrete-list{
  margin:18px 0 0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.65;
  font-size:15px;
}
.phase-offer li{margin:7px 0}
.price-signal{
  margin-top:18px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
.price-signal span{
  height:9px;
  border-radius:999px;
  background:rgba(255,255,255,.09);
}
.price-signal.level-1 span:nth-child(1),
.price-signal.level-2 span:nth-child(-n+2),
.price-signal.level-3 span{
  background:linear-gradient(90deg, rgba(121,221,255,.54), rgba(239,203,121,.76));
}
.case-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:14px;
}
.case-card{
  padding:24px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.40), rgba(6,15,31,.27));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  position:relative;
  overflow:hidden;
}
.case-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 86% 16%, rgba(121,221,255,.08), transparent 0 18%),
    linear-gradient(90deg, transparent, rgba(121,221,255,.045), transparent);
}
.case-card > *{position:relative;z-index:1}
.invoice-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 9px;
  font-size:14px;
}
.invoice-table th{
  text-align:left;
  color:#d7f7ff;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:0 10px 4px;
}
.invoice-table td{
  color:var(--muted);
  line-height:1.42;
  padding:12px 10px;
  background:rgba(4,14,28,.25);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.invoice-table td:first-child{
  border-left:1px solid rgba(255,255,255,.08);
  border-radius:14px 0 0 14px;
  color:#fff;
  font-weight:750;
}
.invoice-table td:last-child{
  border-right:1px solid rgba(255,255,255,.08);
  border-radius:0 14px 14px 0;
}
.status-badge{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  font-size:12px;
  border:1px solid rgba(121,221,255,.20);
  background:rgba(121,221,255,.07);
  color:#d8f9ff;
  white-space:nowrap;
}
.status-badge.warn{
  border-color:rgba(239,203,121,.24);
  background:rgba(239,203,121,.08);
  color:#ffe3a8;
}
.status-badge.danger{
  border-color:rgba(255,120,120,.24);
  background:rgba(255,120,120,.08);
  color:#ffcccc;
}
.data-bars{
  display:grid;
  gap:12px;
  margin-top:16px;
}
.data-row{
  display:grid;
  grid-template-columns:155px 1fr 44px;
  gap:12px;
  align-items:center;
}
.data-row strong{font-size:14px}
.data-track{
  height:12px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}
.data-fill{
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(121,221,255,.48), rgba(239,203,121,.78));
}
.mini-note{
  margin-top:14px;
  color:var(--soft);
  line-height:1.55;
  font-size:14px;
}
@media (max-width:1080px){
  .phase-offer-grid,
  .case-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:820px){
  .phase-offer,
  .case-card{
    padding:22px;
  }
  .data-row{
    grid-template-columns:1fr;
    gap:8px;
  }
  .invoice-table{
    display:block;
    overflow-x:auto;
  }
}


/* ===== V6 : restauration données plus concrète / livrable opérationnel ===== */
.delivery-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}
.delivery-card,
.output-card,
.folder-card,
.action-card,
.proof-card{
  padding:24px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg, rgba(6,15,31,.40), rgba(6,15,31,.27));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  position:relative;
  overflow:hidden;
}
.delivery-card::before,
.output-card::before,
.folder-card::before,
.action-card::before,
.proof-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 86% 16%, rgba(121,221,255,.08), transparent 0 18%),
    linear-gradient(90deg, transparent, rgba(121,221,255,.045), transparent);
}
.delivery-card > *,
.output-card > *,
.folder-card > *,
.action-card > *,
.proof-card > *{position:relative;z-index:1}
.delivery-card span,
.output-card span,
.folder-card span,
.action-card span,
.proof-card span{
  display:inline-flex;
  margin-bottom:24px;
  color:#87e5ff;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:12px;
}
.delivery-card p,
.output-card p,
.folder-card p,
.action-card p,
.proof-card p{
  margin-top:12px;
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.output-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:14px;
}
.folder-tree{
  margin-top:16px;
  padding:18px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(4,14,28,.28);
  color:rgba(232,242,255,.84);
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:13px;
  line-height:1.75;
  overflow:auto;
}
.action-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:14px;
}
.priority-pill{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:6px 9px;
  border-radius:999px;
  border:1px solid rgba(121,221,255,.22);
  background:rgba(121,221,255,.07);
  color:#d8f9ff;
  font-size:12px;
  white-space:nowrap;
}
.priority-pill.hot{
  border-color:rgba(255,120,120,.28);
  background:rgba(255,120,120,.09);
  color:#ffd1d1;
}
.priority-pill.medium{
  border-color:rgba(239,203,121,.28);
  background:rgba(239,203,121,.09);
  color:#ffe3a8;
}
.priority-pill.ok{
  border-color:rgba(121,221,255,.24);
  background:rgba(121,221,255,.08);
}
.master-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 9px;
  font-size:13px;
}
.master-table th{
  text-align:left;
  color:#d7f7ff;
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:0 8px 4px;
}
.master-table td{
  color:var(--muted);
  line-height:1.38;
  padding:11px 8px;
  background:rgba(4,14,28,.25);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.master-table td:first-child{
  border-left:1px solid rgba(255,255,255,.08);
  border-radius:14px 0 0 14px;
  color:#fff;
  font-weight:750;
}
.master-table td:last-child{
  border-right:1px solid rgba(255,255,255,.08);
  border-radius:0 14px 14px 0;
}
.result-strip{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:10px;
  margin-top:18px;
}
.result-strip div{
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(4,14,28,.24);
}
.result-strip strong{
  display:block;
  font-size:22px;
  letter-spacing:-.04em;
  margin-bottom:4px;
}
.result-strip small{
  color:var(--soft);
  line-height:1.4;
}
.restitution-line{
  margin-top:16px;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(121,221,255,.16);
  background:rgba(121,221,255,.055);
  color:rgba(232,242,255,.82);
  line-height:1.58;
  font-size:15px;
}
@media(max-width:1080px){
  .delivery-grid,
  .action-grid,
  .result-strip{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  .output-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:820px){
  .delivery-grid,
  .action-grid,
  .result-strip{
    grid-template-columns:1fr;
  }
  .delivery-card,
  .output-card,
  .folder-card,
  .action-card,
  .proof-card{
    padding:22px;
  }
  .master-table{
    display:block;
    overflow-x:auto;
  }
}


/* ===== V7 : vrais formulaires Netlify ===== */
.hidden-field{
  display:none !important;
}
.form-card form{
  margin:0;
}
.form-success-note{
  margin-top:18px;
  color:var(--muted);
  line-height:1.6;
  font-size:15px;
}

/* ===== V9 : accueil resserré, page média, nav auto-hide, formulaires premium ===== */
.header{position:fixed!important;top:0!important;left:0;right:0;z-index:80;padding-top:10px!important;transition:transform .28s ease,opacity .28s ease}
body.nav-hidden .header{transform:translateY(-120%);opacity:0;pointer-events:none}
body.at-top .header{transform:translateY(0);opacity:1;pointer-events:auto}
main{padding-top:96px}
.contact-top{min-height:38px;padding:9px 14px;font-size:13px}
select{color:#f4f8ff;background-color:#071321;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,rgba(121,221,255,.9) 50%),linear-gradient(135deg,rgba(121,221,255,.9) 50%,transparent 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:42px}
select option{background:#071321;color:#f4f8ff}
.form-intro{margin-bottom:18px;padding:18px;border-radius:20px;border:1px solid rgba(121,221,255,.18);background:rgba(4,14,28,.26)}
.form-intro strong{display:block;margin-bottom:6px;color:#fff}
.form-intro p{color:var(--muted);line-height:1.62;font-size:15px}
.media-map-grid,.newsletter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.media-card,.newsletter-card{padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(6,15,31,.40),rgba(6,15,31,.27));box-shadow:var(--shadow-md);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:relative;overflow:hidden}
.media-card:before,.newsletter-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 86% 16%,rgba(121,221,255,.08),transparent 0 18%),linear-gradient(90deg,transparent,rgba(121,221,255,.045),transparent)}
.media-card>*,.newsletter-card>*{position:relative;z-index:1}
.media-card span,.newsletter-card span{display:inline-flex;margin-bottom:24px;color:#87e5ff;letter-spacing:.13em;text-transform:uppercase;font-size:12px}
.media-card p,.newsletter-card p{margin-top:12px;color:var(--muted);line-height:1.62;font-size:15px}
.compact-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(max-width:1080px){.media-map-grid,.newsletter-grid,.compact-services-grid{grid-template-columns:1fr}}
@media(max-width:820px){main{padding-top:86px}.contact-top{display:none}}

/* ===== V10 : page média / The Signal ===== */
.signal-rail{display:flex;gap:14px;overflow-x:auto;padding:6px 4px 18px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:rgba(121,221,255,.45) rgba(255,255,255,.08)}
.signal-rail::-webkit-scrollbar{height:10px}.signal-rail::-webkit-scrollbar-track{background:rgba(255,255,255,.07);border-radius:999px}.signal-rail::-webkit-scrollbar-thumb{background:rgba(121,221,255,.45);border-radius:999px}
.signal-card{min-width:min(420px,86vw);max-width:420px;scroll-snap-align:start;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(6,15,31,.44),rgba(6,15,31,.29));box-shadow:var(--shadow-md);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:relative;overflow:hidden}
.signal-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 88% 14%,rgba(121,221,255,.10),transparent 0 18%),linear-gradient(90deg,transparent,rgba(121,221,255,.045),transparent)}
.signal-card>*{position:relative;z-index:1}.signal-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:18px;color:#87e5ff;letter-spacing:.12em;text-transform:uppercase;font-size:12px}.signal-card p{margin-top:12px;color:var(--muted);line-height:1.62;font-size:15px}.signal-card .actions{margin-top:20px}
.media-blueprint{display:grid;grid-template-columns:1fr 1fr;gap:14px}.blueprint-card{padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(6,15,31,.40),rgba(6,15,31,.27));box-shadow:var(--shadow-md);position:relative;overflow:hidden}.blueprint-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 18%,rgba(121,221,255,.08),transparent 0 18%)}.blueprint-card>*{position:relative;z-index:1}.blueprint-list{display:grid;gap:10px;margin-top:16px}.blueprint-list a,.blueprint-list span{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;border:1px solid rgba(121,221,255,.14);background:rgba(4,14,28,.24);color:rgba(232,242,255,.84);text-decoration:none}.blueprint-list small{color:var(--soft)}
.inline-link{color:#d8f9ff;text-decoration:none;border-bottom:1px solid rgba(121,221,255,.35)}.inline-link:hover{border-bottom-color:#d8f9ff}
select{color:#f4f8ff!important;background-color:#071321!important}select option{background:#071321!important;color:#f4f8ff!important}
@media(max-width:980px){.media-blueprint{grid-template-columns:1fr}}

/* ===== V11 : The Signal interne, pages newsletters, sélection premium ===== */
::selection{background:rgba(123,91,255,.34);color:#fff8d7;text-shadow:none}
::-moz-selection{background:rgba(123,91,255,.34);color:#fff8d7;text-shadow:none}
.nav-punchline{background:linear-gradient(90deg,#efcb79 0%,#8f7cff 48%,#79ddff 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;border-color:rgba(143,124,255,.26)!important;box-shadow:0 0 22px rgba(121,221,255,.08);font-weight:900}
.signal-hero-title{letter-spacing:-.075em}.signal-hero-title .line{display:block}.signal-hero-title .accent-gold{background:linear-gradient(90deg,#fff7d2,#efcb79,#79ddff);-webkit-background-clip:text;background-clip:text;color:transparent}.signal-hero-title .accent-void{background:linear-gradient(90deg,#8f7cff,#79ddff,#efcb79);-webkit-background-clip:text;background-clip:text;color:transparent}
.signal-archive-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.editor-plus{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;border:1px solid rgba(239,203,121,.28);background:rgba(239,203,121,.08);color:#fff2c1;text-decoration:none;font-weight:850;box-shadow:0 0 24px rgba(239,203,121,.08)}
.editor-plus strong{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,rgba(239,203,121,.92),rgba(143,124,255,.72));color:#06101d;font-size:18px;line-height:1}
.signal-archive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.signal-archive-card,.article-panel,.editor-panel{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(6,15,31,.44),rgba(6,15,31,.29));box-shadow:var(--shadow-md);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:relative;overflow:hidden}
.signal-archive-card:before,.article-panel:before,.editor-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 12%,rgba(143,124,255,.12),transparent 0 18%),radial-gradient(circle at 12% 88%,rgba(239,203,121,.08),transparent 0 20%),linear-gradient(90deg,transparent,rgba(121,221,255,.045),transparent)}
.signal-archive-card>*,.article-panel>*,.editor-panel>*{position:relative;z-index:1}
.signal-archive-card .meta,.article-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:18px;color:#87e5ff;letter-spacing:.12em;text-transform:uppercase;font-size:12px}
.signal-archive-card p,.article-panel p,.editor-panel p{color:var(--muted);line-height:1.68;font-size:16px}
.article-layout{display:grid;grid-template-columns:1fr .42fr;gap:14px}.article-panel h2{margin-top:28px;margin-bottom:12px}.article-panel ul{color:var(--muted);line-height:1.7;padding-left:20px}.article-side{display:grid;gap:14px;align-content:start}
.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.editor-panel textarea{min-height:220px}.generated-code{width:100%;min-height:320px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55}
@media(max-width:1080px){.signal-archive-grid,.article-layout,.editor-grid{grid-template-columns:1fr}}

/* ===== V12 : média simple, épisodes en mosaïque, newsletters internes complètes ===== */
.nav-punchline{
  background:linear-gradient(90deg,#efcb79 0%,#8f7cff 45%,#79ddff 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  border:1px solid rgba(143,124,255,.22);
  box-shadow:0 0 22px rgba(121,221,255,.08);
  font-weight:900;
}
.nav-links > a.media-direct{
  display:inline-flex;
  align-items:center;
}
::selection{background:rgba(123,91,255,.32);color:#fff8d7;text-shadow:none}
::-moz-selection{background:rgba(123,91,255,.32);color:#fff8d7;text-shadow:none}
.signal-hero-title{letter-spacing:-.075em}
.signal-hero-title .line{display:block}
.signal-hero-title .accent-gold{
  background:linear-gradient(90deg,#fff7d2,#efcb79,#79ddff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.signal-hero-title .accent-void{
  background:linear-gradient(90deg,#8f7cff,#79ddff,#efcb79);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.episode-launch{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  margin-bottom:16px;
}
.episode-window{
  border:1px solid var(--line);
  border-radius:32px;
  background:linear-gradient(180deg,rgba(6,15,31,.44),rgba(6,15,31,.26));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  padding:18px;
  position:relative;
  overflow:hidden;
}
.episode-window::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 85% 8%,rgba(143,124,255,.14),transparent 0 24%),
    radial-gradient(circle at 10% 92%,rgba(239,203,121,.10),transparent 0 24%),
    linear-gradient(90deg,transparent,rgba(121,221,255,.045),transparent);
}
.episode-window > *{position:relative;z-index:1}
.episode-scroll{
  max-height:520px;
  overflow:auto;
  padding:4px 6px 10px;
  scrollbar-width:thin;
  scrollbar-color:rgba(121,221,255,.55) rgba(255,255,255,.08);
}
.episode-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.episode-tile{
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
  padding:24px;
  border-radius:26px;
  border:1px solid rgba(121,221,255,.16);
  background:linear-gradient(180deg,rgba(4,14,28,.42),rgba(4,14,28,.26));
  text-decoration:none;
  color:inherit;
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.episode-tile:hover{
  transform:translateY(-3px);
  border-color:rgba(239,203,121,.42);
  background:linear-gradient(180deg,rgba(10,25,48,.58),rgba(4,14,28,.34));
}
.episode-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}
.episode-tile p{
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.episode-tile strong{
  color:#fff2c1;
}
.editor-plus{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:999px;
  border:1px solid rgba(239,203,121,.28);
  background:rgba(239,203,121,.08);
  color:#fff2c1;
  text-decoration:none;
  font-weight:850;
}
.editor-plus strong{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:linear-gradient(135deg,rgba(239,203,121,.92),rgba(143,124,255,.72));
  color:#06101d;
  font-size:18px;
}
.article-panel,.editor-panel{
  padding:28px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(6,15,31,.44),rgba(6,15,31,.29));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  position:relative;
  overflow:hidden;
}
.article-panel::before,.editor-panel::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 90% 12%,rgba(143,124,255,.12),transparent 0 18%),
    radial-gradient(circle at 12% 88%,rgba(239,203,121,.08),transparent 0 20%),
    linear-gradient(90deg,transparent,rgba(121,221,255,.045),transparent);
}
.article-panel > *,.editor-panel > *{position:relative;z-index:1}
.article-panel h2{margin-top:30px;margin-bottom:12px}
.article-panel p,.article-panel li,.editor-panel p{
  color:var(--muted);
  line-height:1.74;
  font-size:17px;
}
.article-panel blockquote{
  margin:24px 0;
  padding:20px 22px;
  border-left:4px solid #efcb79;
  border-radius:18px;
  background:rgba(239,203,121,.08);
  color:#fff2c1;
  font-size:20px;
  font-weight:850;
}
.article-meta{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-bottom:18px;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}
.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.editor-panel textarea{min-height:220px}
.generated-code{width:100%;min-height:320px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.55}
@media(max-width:980px){
  .episode-grid,.editor-grid{grid-template-columns:1fr}
}

/* ===== V13 : nettoyage premium, slogan navbar, épisodes compacts ===== */
.nav{
  grid-template-columns:auto auto 1fr auto !important;
  column-gap:18px !important;
}
.brand-zone{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
}
.nav-punchline{
  display:inline-flex !important;
  align-items:center;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  border:1px solid rgba(143,124,255,.26) !important;
  background:rgba(8,18,34,.26) !important;
  background-image:linear-gradient(90deg,#efcb79 0%,#8f7cff 48%,#79ddff 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  box-shadow:0 0 20px rgba(121,221,255,.08);
  font-weight:900;
  font-size:13px;
  letter-spacing:.03em;
  text-transform:none !important;
  white-space:nowrap;
}
.nav-links{
  justify-content:flex-start !important;
}
@media(max-width:1080px){
  .nav{
    grid-template-columns:auto 1fr auto !important;
  }
  .nav-punchline{display:none !important}
}

h1{
  letter-spacing:-.055em !important;
  line-height:.96 !important;
  text-wrap:balance;
}
.gradient-text{
  background:linear-gradient(90deg,#dffaff 0%,#79ddff 42%,#efcb79 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  filter:none !important;
}

.home-choice-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:26px;
  max-width:850px;
}
.home-choice{
  display:block;
  padding:24px;
  border-radius:26px;
  border:1px solid rgba(121,221,255,.20);
  background:linear-gradient(180deg,rgba(6,15,31,.46),rgba(6,15,31,.28));
  color:inherit;
  text-decoration:none;
  box-shadow:var(--shadow-md);
  position:relative;
  overflow:hidden;
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.home-choice::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 88% 14%,rgba(121,221,255,.10),transparent 0 20%),
    radial-gradient(circle at 10% 92%,rgba(239,203,121,.08),transparent 0 22%);
}
.home-choice>*{position:relative;z-index:1}
.home-choice:hover{
  transform:translateY(-3px);
  border-color:rgba(239,203,121,.42);
  background:linear-gradient(180deg,rgba(10,25,48,.58),rgba(6,15,31,.34));
}
.home-choice strong{
  display:block;
  font-size:26px;
  line-height:1.05;
  margin-bottom:10px;
}
.home-choice span{
  color:var(--muted);
  line-height:1.6;
}
.home-choice .tag{
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
  margin-bottom:18px;
}
@media(max-width:820px){
  .home-choice-grid{grid-template-columns:1fr}
}

.media-hero-compact .hero{
  min-height:auto !important;
  padding-top:46px !important;
  padding-bottom:36px !important;
}
.media-hero-compact .hero-grid{
  grid-template-columns:1fr !important;
  max-width:980px;
}
.media-hero-compact .hero h1{
  max-width:1050px !important;
}

.signal-article main{
  padding-top:88px !important;
}
.signal-article .hero{
  min-height:auto !important;
  padding-top:22px !important;
  padding-bottom:12px !important;
}
.signal-article .hero-grid{
  grid-template-columns:1fr !important;
  gap:14px !important;
}
.signal-article .hero h1{
  font-size:clamp(46px,6.4vw,82px) !important;
  max-width:1040px !important;
}
.signal-article .lead{
  max-width:900px;
}
.signal-article .actions{
  margin-top:18px;
}
.signal-article section.container.reveal{
  margin-top:8px !important;
}
.signal-article .article-panel{
  margin-top:0 !important;
}

.episode-window{
  border:1px solid var(--line);
  border-radius:32px;
  background:linear-gradient(180deg,rgba(6,15,31,.44),rgba(6,15,31,.26));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  padding:18px;
  position:relative;
  overflow:hidden;
}
.episode-window::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 85% 8%,rgba(143,124,255,.14),transparent 0 24%),
    radial-gradient(circle at 10% 92%,rgba(239,203,121,.10),transparent 0 24%),
    linear-gradient(90deg,transparent,rgba(121,221,255,.045),transparent);
}
.episode-window>*{position:relative;z-index:1}
.episode-scroll{
  max-height:560px;
  overflow:auto;
  padding:4px 6px 10px;
  scrollbar-width:thin;
  scrollbar-color:rgba(121,221,255,.55) rgba(255,255,255,.08);
}
.episode-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.episode-tile{
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:18px;
  padding:24px;
  border-radius:26px;
  border:1px solid rgba(121,221,255,.16);
  background:linear-gradient(180deg,rgba(4,14,28,.42),rgba(4,14,28,.26));
  text-decoration:none;
  color:inherit;
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.episode-tile:hover{
  transform:translateY(-3px);
  border-color:rgba(239,203,121,.42);
  background:linear-gradient(180deg,rgba(10,25,48,.58),rgba(4,14,28,.34));
}
.episode-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}
.episode-tile p{
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.episode-tile strong{
  color:#fff2c1;
}
@media(max-width:980px){
  .episode-grid{grid-template-columns:1fr}
}

.admin-only-note{
  display:none !important;
}


/* ===== V14 : slogan navbar + navigation épisodes + espace signal réduit ===== */
.nav-punchline{
  text-transform:none !important;
  font-size:13px !important;
  letter-spacing:.02em !important;
}
.signal-article main{
  padding-top: 10px !important;
}
.signal-article .hero{
  min-height: auto !important;
  padding-top: 18px !important;
  padding-bottom: 10px !important;
}
.signal-article .hero-grid{
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}
.signal-article section{padding: 18px 0 40px !important;}
.signal-article .lead{margin-top: 12px !important;}
.signal-article .actions{margin-top: 16px !important;}
.signal-article .article-panel{
  margin-top: 0 !important;
  padding-top: 20px !important;
}
.signal-article .article-panel > :first-child{margin-top:0 !important;}
.signal-article .article-panel p,
.signal-article .article-panel ul,
.signal-article .article-panel ol,
.signal-article .article-panel blockquote,
.signal-article .article-panel hr,
.signal-article .article-panel h2,
.signal-article .article-panel h3{
  max-width: 860px;
}
.episode-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin: 14px 0 22px;
}
.episode-nav.bottom{margin: 28px 0 0; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.08);}
.episode-nav-center{flex: 1 1 auto; display:flex; justify-content:center;}
.episode-nav-side{display:flex; gap:12px; flex: 1 1 220px;}
.episode-nav-side.right{justify-content:flex-end;}
.episode-nav .btn[aria-disabled="true"]{
  opacity:.35;
  pointer-events:none;
}
@media (max-width: 820px){
  .episode-nav{display:grid; grid-template-columns:1fr;}
  .episode-nav-side,.episode-nav-side.right,.episode-nav-center{justify-content:stretch;}
  .episode-nav .btn{width:100%;}
}


/* ===== V15 : punchline visible + sélecteur d'épisodes + espacement newsletter ajusté ===== */
.nav-punchline{
  display:inline-flex !important;
  align-items:center;
  white-space:nowrap;
  flex:0 1 auto;
  max-width: 360px;
  overflow:hidden;
  text-overflow:ellipsis;
}
.brand-zone{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  min-width:0;
}
.nav{
  grid-template-columns:auto auto 1fr auto !important;
  column-gap:16px !important;
}
@media (max-width: 1180px){
  .nav-punchline{
    font-size:12px !important;
    padding:6px 10px !important;
    max-width: 300px;
  }
  .nav{column-gap:12px !important;}
  .nav-right .social-links{gap:6px !important;}
}
@media (max-width: 980px){
  .nav{
    grid-template-columns:auto auto 1fr auto !important;
    align-items:center !important;
  }
  .nav-punchline{
    display:inline-flex !important;
    font-size:11px !important;
    max-width: 230px;
    padding:5px 9px !important;
  }
  .nav-right .contact-top{display:none !important;}
  .nav-right .social-links{gap:4px !important;}
}
@media (max-width: 900px){
  .nav-punchline{display:none !important;}
}

.signal-article main{padding-top: 12px !important;}
.signal-article .hero{
  min-height:auto !important;
  padding-top: 26px !important;
  padding-bottom: 18px !important;
}
.signal-article .hero-grid{gap: 14px !important;}
.signal-article section{padding: 26px 0 42px !important;}
.signal-article .lead{margin-top: 14px !important;}
.signal-article .article-panel{
  margin-top: 6px !important;
  padding-top: 24px !important;
}

.episode-picker{
  position:relative;
}
.episode-picker summary{
  list-style:none;
}
.episode-picker summary::-webkit-details-marker{display:none;}
.episode-picker-panel{
  position:absolute;
  top:calc(100% + 10px);
  left:50%;
  transform:translateX(-50%);
  width:min(340px, 92vw);
  padding:14px;
  border-radius:22px;
  border:1px solid rgba(121,221,255,.16);
  background:linear-gradient(180deg, rgba(8,19,36,.92), rgba(5,14,28,.94));
  box-shadow:0 18px 48px rgba(0,0,0,.42);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  z-index:30;
}
.episode-picker-grid{
  display:grid;
  gap:10px;
  max-height:340px;
  overflow:auto;
  padding-right:4px;
}
.episode-picker-item{
  display:grid;
  gap:4px;
  text-decoration:none;
  color:#e8f2ff;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(4,14,28,.36);
  transition:transform .16s ease, border-color .16s ease, background .16s ease;
}
.episode-picker-item:hover{
  transform:translateY(-2px);
  border-color:rgba(239,203,121,.34);
  background:rgba(10,25,48,.56);
}
.episode-picker-item small{
  color:#87e5ff;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.episode-picker-item span{color:var(--muted); font-size:14px; line-height:1.45;}
.episode-picker-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
  color:#fff2c1;
  font-weight:800;
}
.episode-picker-close{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.03);
  color:#fff;
  cursor:pointer;
}
.episode-picker[open] .btn{
  border-color:rgba(239,203,121,.34);
  box-shadow:0 0 0 1px rgba(239,203,121,.16), 0 10px 26px rgba(0,0,0,.28);
}
.episode-picker-placeholder{
  color:var(--soft);
  font-size:13px;
  line-height:1.5;
  margin-top:8px;
}
@media (max-width:820px){
  .episode-picker-panel{left:0; right:0; transform:none; width:auto;}
}

/* ===== V15 final tweak : punchline visible + espacement newsletter équilibré ===== */
.nav{
  grid-template-columns:auto auto 1fr auto !important;
  align-items:center !important;
  column-gap:18px !important;
}
.brand-zone{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  min-width:0 !important;
}
.brand-zone .brand{
  flex:0 0 auto !important;
}
.nav-punchline{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  margin:0 !important;
  padding:0 !important;
  min-height:auto !important;
  border:none !important;
  background:none !important;
  box-shadow:none !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  max-width:none !important;
  font-size:14px !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
  text-transform:none !important;
  background-image:linear-gradient(90deg,#efcb79 0%, #9b7bff 46%, #79ddff 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.nav-links{
  justify-self:start !important;
}
@media (max-width: 1280px){
  .nav-punchline{font-size:13px !important;}
}
@media (max-width: 1120px){
  .nav{
    grid-template-columns:auto auto 1fr auto !important;
    column-gap:14px !important;
  }
  .nav-punchline{font-size:12px !important;}
}
@media (max-width: 980px){
  .nav-punchline{
    display:inline-flex !important;
    font-size:11px !important;
    white-space:normal !important;
    max-width:210px !important;
    line-height:1.15 !important;
  }
}
@media (max-width: 860px){
  .nav-punchline{display:none !important;}
}

.signal-article main{
  padding-top:14px !important;
}
.signal-article .hero{
  min-height:auto !important;
  padding-top:28px !important;
  padding-bottom:20px !important;
}
.signal-article .hero-grid{
  grid-template-columns:1fr !important;
  gap:16px !important;
}
.signal-article section{
  padding:30px 0 44px !important;
}
.signal-article .lead{
  margin-top:14px !important;
}
.signal-article .actions{
  margin-top:18px !important;
}
.signal-article .article-panel{
  margin-top:12px !important;
  padding-top:26px !important;
}
.signal-article .article-panel > :first-child{
  margin-top:0 !important;
}
.episode-nav.top{
  margin:18px 0 24px !important;
}
.episode-nav.bottom{
  margin:30px 0 0 !important;
}


/* ===== V16 : finition média / newsletters ===== */

/* Header légèrement plus fin, slogan plus visible */
.header .nav{
  min-height: 82px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
.brand .official-logo-mark,
.brand .logo-mark,
.brand svg,
.brand img{
  width: 52px !important;
  height: 52px !important;
}
.nav-punchline{
  font-size: 15.5px !important;
  line-height: 1.12 !important;
  font-weight: 950 !important;
  letter-spacing: .01em !important;
  white-space: nowrap !important;
}
.nav a,
.nav button{
  line-height: 1.1 !important;
}
.social-links a{
  width: 42px !important;
  height: 42px !important;
}
.contact-top{
  min-height: 44px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}
@media (max-width: 1180px){
  .nav-punchline{font-size:13.5px !important;}
}
@media (max-width: 980px){
  .nav-punchline{display:none !important;}
}

/* Page média : titre distinct du slogan, plus dense, mosaïque remontée */
.media-page main{
  padding-top: 92px !important;
}
.media-page .hero{
  min-height: auto !important;
  padding-top: 34px !important;
  padding-bottom: 24px !important;
}
.media-page .hero-grid{
  grid-template-columns: 1fr !important;
  max-width: 1050px;
}
.media-page .signal-hero-title{
  font-size: clamp(54px, 7vw, 104px) !important;
  line-height: .94 !important;
}
.media-page #episodes{
  padding-top: 20px !important;
}
.media-page .episode-launch{
  margin-bottom: 14px !important;
}
.media-intro-copy{
  max-width: 980px;
  margin: 0 0 18px;
  color: var(--muted);
  font-size: clamp(17px, 1.55vw, 22px);
  line-height: 1.65;
}
.media-intro-copy strong{
  color: #fff2c1;
}
.media-intro-copy a{
  color: #d8f9ff;
  text-decoration: none;
  border-bottom: 1px solid rgba(121,221,255,.35);
}

/* Pages newsletters : titre sous la bannière, espace équilibré, fond plus propre */
.signal-article main{
  padding-top: 96px !important;
}
.signal-article .hero{
  min-height: auto !important;
  padding-top: 44px !important;
  padding-bottom: 22px !important;
  background: transparent !important;
}
.signal-article .hero-grid{
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}
.signal-article .hero h1{
  font-size: clamp(46px, 6.2vw, 92px) !important;
  line-height: .96 !important;
  max-width: 1080px !important;
  margin-top: 4px !important;
}
.signal-article .lead{
  max-width: 900px !important;
  margin-top: 14px !important;
  font-size: clamp(18px, 1.45vw, 24px) !important;
}
.signal-article section.container.reveal{
  padding-top: 24px !important;
}
.signal-article .article-panel{
  margin-top: 0 !important;
}
.signal-article .episode-nav.top{
  margin: 22px 0 18px !important;
}
.signal-article .episode-nav.bottom{
  margin: 30px 0 0 !important;
}

/* Bulle de choix d'épisodes : visible au-dessus du contenu, premium */
.episode-picker{
  position: relative;
  display: inline-flex;
  justify-content: center;
  overflow: visible !important;
  z-index: 40;
}
.episode-picker > summary{
  list-style: none;
  cursor: pointer;
}
.episode-picker > summary::-webkit-details-marker{
  display:none;
}
.episode-picker-menu{
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  transform: translateX(-50%);
  width: min(560px, 92vw);
  max-height: 360px;
  overflow: auto;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 14px;
  border-radius: 24px;
  border: 1px solid rgba(121,221,255,.28);
  background: rgba(4, 14, 28, .96);
  box-shadow: 0 28px 80px rgba(0,0,0,.55), 0 0 42px rgba(121,221,255,.12);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  opacity: 0;
  pointer-events: none;
  translate: 0 -6px;
  transition: opacity .18s ease, translate .18s ease;
  z-index: 999;
}
.episode-picker[open] .episode-picker-menu{
  opacity: 1;
  pointer-events: auto;
  translate: 0 0;
}
.episode-picker-menu a{
  display: block;
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(121,221,255,.14);
  background: rgba(255,255,255,.035);
  color: inherit;
  text-decoration: none;
}
.episode-picker-menu a:hover{
  border-color: rgba(239,203,121,.42);
  background: rgba(239,203,121,.075);
}
.episode-picker-menu span{
  display:block;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:11px;
  margin-bottom:6px;
}
.episode-picker-menu strong{
  display:block;
  color:#f8fbff;
  line-height:1.2;
}
.episode-picker-menu small{
  display:block;
  color:var(--muted);
  margin-top:5px;
  line-height:1.35;
}
@media(max-width:720px){
  .episode-picker-menu{
    grid-template-columns:1fr;
  }
}


/* ===== V17 : bannière compacte + newsletters sans décrochage visuel ===== */
.header{
  top: 8px !important;
  padding-top: 6px !important;
}
.header .nav,
.nav{
  min-height: 58px !important;
  padding: 7px 14px !important;
  border-radius: 999px !important;
  grid-template-columns: auto 1fr auto !important;
  column-gap: 14px !important;
  align-items: center !important;
}
.brand-zone{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-width:0 !important;
}
.brand{
  gap: 10px !important;
}
.brand .official-logo-mark,
.brand .logo-mark,
.brand svg,
.brand img{
  width: 38px !important;
  height: 38px !important;
}
.brand span:last-child{
  font-size: 20px !important;
  letter-spacing: .16em !important;
}
.nav-punchline{
  display:inline-flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:linear-gradient(90deg,#efcb79 0%, #b791ff 45%, #79ddff 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  box-shadow:none !important;
  font-size:16px !important;
  font-weight:950 !important;
  line-height:1.05 !important;
  letter-spacing:.005em !important;
  white-space:nowrap !important;
}
.nav-links{
  justify-self:start !important;
  display:flex !important;
  align-items:center !important;
  gap: 10px !important;
}
.nav-links > a,
.nav-drop-button{
  padding: 10px 14px !important;
  min-height: 38px !important;
}
.nav-right{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap: 8px !important;
  flex-wrap: nowrap !important;
}
.social-links{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  gap: 5px !important;
  flex-wrap: nowrap !important;
}
.social-link,
.social-links a{
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
}
.social-link svg,
.social-links a svg{
  width: 30px !important;
  height: 30px !important;
}
.contact-top{
  min-height: 36px !important;
  padding: 8px 14px !important;
  font-size: 13px !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
}
@media(max-width: 1120px){
  .header .nav,.nav{column-gap:10px !important; padding-inline:12px !important;}
  .brand span:last-child{font-size:18px !important; letter-spacing:.13em !important;}
  .nav-punchline{font-size:14px !important;}
  .nav-links{gap:6px !important;}
  .nav-links > a,.nav-drop-button{padding:9px 10px !important;}
  .contact-top{padding:8px 10px !important;}
  .social-link,.social-links a,.social-link svg,.social-links a svg{width:28px !important;height:28px !important;min-width:28px !important;min-height:28px !important;}
}
@media(max-width: 980px){
  .nav-punchline{font-size:13px !important; max-width:210px !important; white-space:normal !important;}
}
@media(max-width: 880px){
  .nav-punchline{display:none !important;}
}

/* Page Média */
.media-page main{
  padding-top: 34px !important;
}
.media-page .hero{
  min-height: auto !important;
  padding-top: 34px !important;
  padding-bottom: 18px !important;
  background: transparent !important;
}
.media-page .hero-grid{
  grid-template-columns: 1fr !important;
  max-width: 1060px !important;
}
.media-page .signal-hero-title{
  font-size: clamp(50px, 7vw, 94px) !important;
  line-height: .95 !important;
}
.media-page #episodes{
  padding-top: 16px !important;
}
.media-page .episode-launch{
  margin-bottom: 10px !important;
}
.media-intro-copy{
  max-width: 980px !important;
  margin: 0 0 18px !important;
  font-size: clamp(18px, 1.55vw, 23px) !important;
  line-height: 1.6 !important;
  font-weight: 750 !important;
  background: linear-gradient(90deg, #edfaff 0%, #d8c8ff 42%, #ffe0a6 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  text-shadow: 0 0 22px rgba(121,221,255,.08) !important;
}
.media-intro-copy strong{
  color: inherit !important;
}

/* Pages Signal : plus de gros bloc vide, nav juste au-dessus de la newsletter */
body.signal-article main{
  padding-top: 30px !important;
}
.signal-title-section{
  min-height: 0 !important;
  padding: 34px 0 12px !important;
  background: transparent !important;
}
.signal-title-section .signal-hero-title{
  font-size: clamp(44px, 6.3vw, 86px) !important;
  line-height: .96 !important;
  max-width: 1080px !important;
  margin: 0 !important;
}
.signal-title-section .lead{
  margin-top: 14px !important;
  max-width: 940px !important;
  font-size: clamp(18px, 1.45vw, 24px) !important;
}
.signal-read-section{
  padding: 14px 0 58px !important;
  overflow: visible !important;
  background: transparent !important;
}
.signal-read-section.container,
.signal-read-section .container,
.episode-nav,
.episode-nav-center,
.episode-picker{
  overflow: visible !important;
}
.signal-read-section .article-panel{
  margin-top: 0 !important;
}
.episode-nav.top{
  margin: 0 0 14px !important;
}
.episode-nav.bottom{
  margin: 28px 0 0 !important;
}
.episode-nav{
  position: relative !important;
  z-index: 500 !important;
}
.episode-nav-side{
  display:flex !important;
  flex: 1 1 240px !important;
}
.episode-nav-side.left{
  justify-content:flex-start !important;
}
.episode-nav-side.right{
  justify-content:flex-end !important;
}
.episode-nav-center{
  display:flex !important;
  justify-content:center !important;
  flex: 1 1 240px !important;
}
.episode-picker{
  position: relative !important;
  z-index: 900 !important;
}
.episode-picker-menu{
  z-index: 9999 !important;
  top: calc(100% + 12px) !important;
  background: rgba(4,14,28,.98) !important;
  border: 1px solid rgba(121,221,255,.34) !important;
  box-shadow: 0 30px 90px rgba(0,0,0,.66), 0 0 50px rgba(121,221,255,.16) !important;
}
.episode-picker[open] .episode-picker-menu{
  opacity: 1 !important;
  pointer-events: auto !important;
  visibility: visible !important;
}
.article-panel{
  overflow: visible !important;
}


/* ===== V18 : alignement final navbar + lisibilité média + navigation épisodes ===== */
/* Bannière compacte : une seule ligne, sans bouton Accueil */
.header{
  top: 8px !important;
  padding-top: 0 !important;
}
.header .nav,
.nav{
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  min-height:54px !important;
  padding:6px 14px !important;
  border-radius:999px !important;
  grid-template-columns:none !important;
  flex-wrap:nowrap !important;
}
.brand-zone{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  min-width:0 !important;
  flex:0 1 auto !important;
}
.brand{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  flex:0 0 auto !important;
}
.brand .official-logo-mark,
.brand .logo-mark,
.brand svg,
.brand img{
  width:36px !important;
  height:36px !important;
}
.brand span:last-child{
  font-size:19px !important;
  letter-spacing:.15em !important;
}
.nav-punchline{
  display:inline-flex !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:linear-gradient(90deg,#efcb79 0%, #b791ff 45%, #79ddff 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  box-shadow:none !important;
  font-size:16.5px !important;
  font-weight:950 !important;
  line-height:1.05 !important;
  letter-spacing:.005em !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
}
.nav-links{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  flex:0 0 auto !important;
  flex-wrap:nowrap !important;
  margin-left:4px !important;
}
.nav-links > a,
.nav-drop-button{
  padding:9px 14px !important;
  min-height:36px !important;
  white-space:nowrap !important;
}
.nav-right{
  margin-left:auto !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:7px !important;
  flex-wrap:nowrap !important;
  min-width:0 !important;
}
.social-links{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:5px !important;
  flex-wrap:nowrap !important;
}
.social-link,
.social-links a,
.social-link svg,
.social-links a svg{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  min-height:30px !important;
}
.contact-top{
  min-height:34px !important;
  padding:7px 12px !important;
  font-size:13px !important;
  line-height:1.05 !important;
  white-space:nowrap !important;
}
@media(max-width:1180px){
  .header .nav,.nav{gap:10px !important; padding-inline:12px !important;}
  .brand span:last-child{font-size:17px !important; letter-spacing:.12em !important;}
  .nav-punchline{font-size:14px !important;}
  .nav-links{gap:6px !important;}
  .nav-links > a,.nav-drop-button{padding:8px 10px !important;}
  .contact-top{padding:7px 10px !important;}
  .social-link,.social-links a,.social-link svg,.social-links a svg{width:27px !important;height:27px !important;min-width:27px !important;min-height:27px !important;}
}
@media(max-width:960px){
  .nav-punchline{display:none !important;}
  .contact-top{display:none !important;}
}
@media(max-width:720px){
  .header .nav,.nav{min-height:52px !important; gap:8px !important; padding:6px 10px !important;}
  .brand span:last-child{font-size:15px !important;}
  .social-links{display:none !important;}
  .nav-links > a,.nav-drop-button{font-size:13px !important; padding:8px 9px !important;}
}

/* Liens textuels : cliquables mais sans soulignement visuel */
.inline-link,
a.inline-link,
.lead a,
.section-head a{
  text-decoration:none !important;
  border-bottom:0 !important;
  box-shadow:none !important;
}
.inline-link:hover,
a.inline-link:hover,
.lead a:hover,
.section-head a:hover{
  text-decoration:none !important;
  border-bottom:0 !important;
  filter:brightness(1.12);
}

/* Page Média : titre visible, phrase plus lisible sur fond lumineux */
.media-page main{
  padding-top:76px !important;
}
.media-page .hero{
  min-height:auto !important;
  padding-top:26px !important;
  padding-bottom:18px !important;
  background:transparent !important;
}
.media-page .signal-hero-title{
  font-size:clamp(48px,6.5vw,88px) !important;
  line-height:.96 !important;
}
.media-page #episodes{
  padding-top:10px !important;
}
.media-page .episode-launch{
  margin-bottom:8px !important;
}
.media-intro-copy{
  max-width:1040px !important;
  margin:0 0 16px !important;
  padding:16px 18px !important;
  border-radius:22px !important;
  border:1px solid rgba(121,221,255,.18) !important;
  background:linear-gradient(180deg,rgba(3,12,24,.58),rgba(3,12,24,.34)) !important;
  color:#dff7ff !important;
  font-size:clamp(17px,1.45vw,21px) !important;
  line-height:1.58 !important;
  font-weight:760 !important;
  text-shadow:0 2px 18px rgba(0,0,0,.42) !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
}
.media-intro-copy strong{
  background:linear-gradient(90deg,#efcb79,#b791ff,#79ddff) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  font-weight:950 !important;
}
.media-intro-copy a{
  text-decoration:none !important;
  border-bottom:0 !important;
}

/* Pages Signal : titre plus bas, nav juste au-dessus de la carte, sans découpe de fond */
body.signal-article main{
  padding-top:82px !important;
}
.signal-title-section{
  min-height:0 !important;
  padding:18px 0 8px !important;
  background:transparent !important;
  overflow:visible !important;
}
.signal-title-section::before,
.signal-title-section::after,
.signal-read-section::before,
.signal-read-section::after{
  display:none !important;
  content:none !important;
}
.signal-title-section .signal-hero-title{
  font-size:clamp(42px,5.9vw,82px) !important;
  line-height:.98 !important;
  max-width:1080px !important;
  margin:0 !important;
}
.signal-title-section .lead{
  margin-top:12px !important;
  max-width:940px !important;
  font-size:clamp(19px,1.55vw,25px) !important;
  color:#e6f6ff !important;
  text-shadow:0 2px 18px rgba(0,0,0,.55),0 0 18px rgba(121,221,255,.18) !important;
  font-weight:750 !important;
}
.signal-read-section{
  padding:12px 0 58px !important;
  overflow:visible !important;
  background:transparent !important;
  position:relative !important;
  z-index:20 !important;
}
.signal-read-section .article-panel{
  margin-top:0 !important;
  position:relative !important;
  z-index:1 !important;
}
.episode-nav.top{
  margin:0 0 12px !important;
}
.episode-nav.bottom{
  margin:28px 0 0 !important;
}
.episode-nav{
  position:relative !important;
  z-index:20000 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
}
.episode-nav-side{
  display:flex !important;
  flex:1 1 240px !important;
}
.episode-nav-side.left{justify-content:flex-start !important;}
.episode-nav-side.right{justify-content:flex-end !important;}
.episode-nav-center{
  display:flex !important;
  justify-content:center !important;
  flex:1 1 240px !important;
  overflow:visible !important;
  position:relative !important;
  z-index:20001 !important;
}
.episode-picker{
  position:relative !important;
  z-index:30000 !important;
  overflow:visible !important;
}
.episode-picker-menu{
  width:min(420px,88vw) !important;
  max-height:320px !important;
  overflow-y:auto !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
  z-index:999999 !important;
  top:calc(100% + 10px) !important;
  background:rgba(4,14,28,.985) !important;
  border:1px solid rgba(121,221,255,.36) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.72),0 0 60px rgba(121,221,255,.18) !important;
}
.episode-picker[open] .episode-picker-menu{
  opacity:1 !important;
  pointer-events:auto !important;
  visibility:visible !important;
  translate:0 0 !important;
}
.page,.container,.signal-read-section,.episode-nav,.episode-nav-center,.episode-picker{
  overflow:visible !important;
}
@media(max-width:720px){
  body.signal-article main{padding-top:70px !important;}
  .signal-title-section{padding-top:14px !important;}
  .episode-nav{display:grid !important; grid-template-columns:1fr !important;}
  .episode-nav-side,.episode-nav-side.left,.episode-nav-side.right,.episode-nav-center{justify-content:stretch !important; flex:auto !important;}
  .episode-nav .btn,.episode-picker,.episode-picker summary{width:100% !important;}
  .episode-picker-menu{left:0 !important; transform:none !important; width:100% !important;}
}


/* ===== V19 : lissage final fond / responsive / lisibilité ===== */

/* Fond unifié : évite les ruptures de teinte entre sections */
html,
body{
  background:#050c15 !important;
  min-height:100% !important;
}
body{
  overscroll-behavior-y:none;
}
.page{
  background:
    radial-gradient(circle at 50% -8%, rgba(121,221,255,.075), transparent 30%),
    linear-gradient(180deg, rgba(4,9,17,.08) 0%, rgba(4,9,17,.13) 36%, rgba(4,9,17,.22) 100%) !important;
}
.page::before{
  position:fixed !important;
  inset:0 !important;
  z-index:-2 !important;
  background:
    linear-gradient(180deg, rgba(3,8,15,.18) 0%, rgba(3,8,15,.12) 36%, rgba(3,8,15,.24) 100%),
    radial-gradient(circle at 18% 14%, rgba(143,124,255,.12), transparent 26%),
    radial-gradient(circle at 82% 12%, rgba(121,221,255,.10), transparent 28%),
    radial-gradient(circle at 50% 92%, rgba(239,203,121,.055), transparent 26%) !important;
}
.page::after{
  position:fixed !important;
  inset:0 !important;
  top:0 !important;
  bottom:0 !important;
  opacity:.72 !important;
  mix-blend-mode:screen;
  pointer-events:none !important;
}
.bg-wrap{
  position:fixed !important;
  inset:0 !important;
  z-index:-4 !important;
  overflow:hidden !important;
  background:#050c15 !important;
}
.bg-image{
  width:100vw !important;
  height:100vh !important;
  min-height:100vh !important;
  object-fit:cover !important;
  object-position:center top !important;
  opacity:.94 !important;
}
.bg-shadow{
  position:fixed !important;
  inset:0 !important;
  background:
    linear-gradient(180deg, rgba(4,9,17,.20) 0%, rgba(4,9,17,.16) 36%, rgba(4,9,17,.28) 100%),
    radial-gradient(circle at 12% 14%, rgba(110,220,255,.07), transparent 26%),
    radial-gradient(circle at 88% 18%, rgba(143,124,255,.07), transparent 28%) !important;
}
main,
section,
.hero,
.signal-title-section,
.signal-read-section,
.media-page .hero,
.signal-article .hero{
  background:transparent !important;
}
section::before,
section::after,
.hero::before,
.hero::after,
.signal-title-section::before,
.signal-title-section::after,
.signal-read-section::before,
.signal-read-section::after{
  display:none !important;
}

/* Cartes et blocs : on supprime les voiles pâles et on garde un verre sombre constant */
.glass,
.form-card,
.article-panel,
.media-card,
.newsletter-card,
.entry-card-final,
.episode-window,
.output-card,
.delivery-card,
.folder-card,
.action-card,
.proof-card,
.case-card,
.matrix-card{
  background:linear-gradient(180deg, rgba(5,15,31,.58), rgba(5,15,31,.38)) !important;
  border-color:rgba(121,221,255,.18) !important;
  box-shadow:0 18px 52px rgba(0,0,0,.32) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
}
.article-panel::before,
.media-card::before,
.newsletter-card::before,
.entry-card-final::before,
.episode-window::before,
.form-card::before,
.glass::before{
  background:
    radial-gradient(circle at 88% 14%, rgba(121,221,255,.075), transparent 0 19%),
    radial-gradient(circle at 12% 88%, rgba(239,203,121,.055), transparent 0 22%),
    linear-gradient(90deg, transparent, rgba(121,221,255,.025), transparent) !important;
}

/* Texte média : plus précis, plus lisible, sans rectangle pâle */
.media-intro-copy{
  max-width:1060px !important;
  margin:0 0 18px !important;
  padding:18px 20px !important;
  border-radius:24px !important;
  border:1px solid rgba(121,221,255,.20) !important;
  background:linear-gradient(135deg, rgba(5,15,31,.70), rgba(8,19,36,.46)) !important;
  color:#e8f7ff !important;
  font-size:clamp(17px,1.38vw,21px) !important;
  line-height:1.62 !important;
  font-weight:740 !important;
  text-shadow:0 2px 18px rgba(0,0,0,.46) !important;
}
.media-intro-copy strong{
  background:linear-gradient(90deg,#efcb79,#b891ff,#79ddff) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
  font-weight:950 !important;
}

/* Header constant entre desktop/tablette/mobile */
.header{
  background:linear-gradient(180deg, rgba(3,10,20,.78), rgba(3,10,20,.44)) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
}
.header .nav,
.nav{
  min-height:56px !important;
  align-items:center !important;
}
.nav-punchline{
  white-space:nowrap !important;
}
.social-links{
  flex-wrap:nowrap !important;
}

/* Pages Signal : espace propre, ni trop collé ni trop vide */
body.signal-article main{
  padding-top:84px !important;
}
.signal-title-section{
  padding-top:34px !important;
  padding-bottom:12px !important;
}
.signal-read-section{
  padding-top:22px !important;
  padding-bottom:58px !important;
}
.signal-read-section .article-panel{
  margin-top:8px !important;
}
.episode-nav.top{
  margin:0 0 16px !important;
}
.episode-nav.bottom{
  margin:30px 0 0 !important;
}

/* Bulle de choix : toujours au premier plan */
.episode-picker,
.episode-nav,
.episode-nav-center{
  overflow:visible !important;
  z-index:99990 !important;
}
.episode-picker-menu{
  z-index:999999 !important;
  background:rgba(4,14,28,.988) !important;
  border:1px solid rgba(121,221,255,.36) !important;
  box-shadow:0 34px 90px rgba(0,0,0,.74), 0 0 60px rgba(121,221,255,.18) !important;
}

/* Responsive stable */
@media(max-width:1100px){
  .nav-punchline{
    font-size:12.5px !important;
    max-width:260px !important;
    white-space:normal !important;
    line-height:1.12 !important;
  }
}
@media(max-width:860px){
  .nav-punchline{display:none !important;}
  body.signal-article main,
  .media-page main{padding-top:70px !important;}
  .signal-title-section{padding-top:24px !important;}
  .signal-read-section{padding-top:18px !important;}
  .episode-nav{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .episode-nav-side,
  .episode-nav-side.left,
  .episode-nav-side.right,
  .episode-nav-center{
    justify-content:stretch !important;
    flex:auto !important;
  }
  .episode-nav .btn,
  .episode-picker,
  .episode-picker summary{
    width:100% !important;
  }
  .episode-picker-menu{
    left:0 !important;
    transform:none !important;
    width:100% !important;
    grid-template-columns:1fr !important;
  }
}
@media(max-width:560px){
  .container{width:min(100% - 24px, 1280px) !important;}
  h1,.signal-hero-title{
    font-size:clamp(40px, 14vw, 58px) !important;
    line-height:1 !important;
  }
  .lead{font-size:17px !important;}
  .article-panel{padding:22px !important;}
  .media-intro-copy{font-size:16px !important; padding:16px !important;}
}


/* ===== V20 : corrections interaction épisodes + restauration données concrète ===== */

/* liens texte cliquables sans soulignement visuel superflu */
.inline-link,
.article-panel a,
.media-intro-copy a,
.section-head a{
  text-decoration:none !important;
  border-bottom:none !important;
}

/* Permet aux bulles de choix d'épisodes de passer au-dessus des blocs */
.signal-article,
.signal-article .page,
.signal-article main,
.signal-article section,
.signal-article .container,
.signal-article .signal-read-section,
.signal-article .article-panel{
  overflow:visible !important;
}

.episode-nav{
  position:relative !important;
  z-index:50000 !important;
  overflow:visible !important;
}

.episode-nav.top{
  z-index:60000 !important;
}

.episode-nav.bottom{
  z-index:90000 !important;
}

.episode-picker{
  position:relative !important;
  z-index:100000 !important;
  overflow:visible !important;
}

.episode-picker-menu{
  z-index:100001 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  grid-template-columns:1fr !important;
  max-height:360px !important;
}

/* La bulle du bouton du bas s'ouvre vers le haut pour ne pas passer sous le footer */
.episode-nav.bottom .episode-picker-menu{
  top:auto !important;
  bottom:calc(100% + 12px) !important;
}

/* Clic plus fiable sur chaque épisode */
.episode-picker-menu a{
  position:relative !important;
  z-index:100002 !important;
  pointer-events:auto !important;
  cursor:pointer !important;
}

/* Page restauration : cartes plus lisibles */
.ops-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.ops-card{
  padding:24px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(6,15,31,.42),rgba(6,15,31,.27));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  position:relative;
  overflow:hidden;
}

.ops-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 88% 16%,rgba(121,221,255,.08),transparent 0 18%),
    radial-gradient(circle at 12% 88%,rgba(239,203,121,.075),transparent 0 20%);
}

.ops-card>*{position:relative;z-index:1}

.ops-card span{
  display:inline-flex;
  margin-bottom:18px;
  color:#87e5ff;
  letter-spacing:.13em;
  text-transform:uppercase;
  font-size:12px;
}

.ops-card p,
.ops-card li{
  color:var(--muted);
  line-height:1.6;
  font-size:15px;
}

.ops-card ul{
  padding-left:18px;
  margin-top:12px;
}

.delivery-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:18px;
}

.delivery-strip div{
  padding:15px;
  border-radius:18px;
  border:1px solid rgba(121,221,255,.14);
  background:rgba(4,14,28,.25);
}

.delivery-strip strong{
  display:block;
  color:#fff2c1;
  font-size:17px;
  margin-bottom:5px;
}

.delivery-strip small{
  color:var(--soft);
  line-height:1.4;
}

.case-flow{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:12px;
  margin-top:16px;
}

.case-flow div{
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(4,14,28,.25);
  padding:14px;
}

.case-flow strong{
  color:#d8f9ff;
  display:block;
  margin-bottom:7px;
}

@media(max-width:1080px){
  .ops-grid,
  .delivery-strip,
  .case-flow{
    grid-template-columns:1fr;
  }
}


/* ===== V21 : finition premium maîtrisée + offre Dossiers exploitables ===== */

/* Détails premium sobres : liserés or/bleu/violet, sans surcharge */
.home-choice,
.media-card,
.newsletter-card,
.entry-card-final,
.ops-card,
.action-card,
.folder-card,
.form-card,
.glass.cta,
.article-panel{
  border-color:rgba(239,203,121,.17) !important;
}

.home-choice::after,
.media-card::after,
.entry-card-final::after,
.ops-card::after,
.folder-card::after,
.action-card::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(239,203,121,.62), rgba(121,221,255,.38), transparent);
  opacity:.78;
  pointer-events:none;
}

.home-choice,
.media-card,
.entry-card-final,
.ops-card,
.folder-card,
.action-card{
  position:relative;
  overflow:hidden;
  box-shadow:
    0 18px 70px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.035) !important;
}

.btn{
  box-shadow:
    0 14px 34px rgba(121,221,255,.10),
    inset 0 1px 0 rgba(255,255,255,.12);
}

.btn.secondary{
  border-color:rgba(239,203,121,.22) !important;
}

/* Page service dossiers : offre plus forte et plus vendable */
.dossier-hero-grid{
  display:grid;
  grid-template-columns:1fr .48fr;
  gap:18px;
  align-items:stretch;
}

.dossier-proof{
  padding:24px;
  border-radius:28px;
  border:1px solid rgba(239,203,121,.20);
  background:
    radial-gradient(circle at 80% 10%, rgba(239,203,121,.10), transparent 0 24%),
    linear-gradient(180deg,rgba(6,15,31,.45),rgba(6,15,31,.28));
  box-shadow:var(--shadow-md);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}

.dossier-proof h3{
  margin-bottom:12px;
}

.dossier-proof ul{
  padding-left:18px;
  color:var(--muted);
  line-height:1.65;
}

.offer-pack{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

.offer-pack-card{
  padding:22px;
  border-radius:24px;
  border:1px solid rgba(121,221,255,.15);
  background:
    radial-gradient(circle at 88% 12%, rgba(121,221,255,.08), transparent 0 22%),
    linear-gradient(180deg,rgba(6,15,31,.42),rgba(6,15,31,.26));
  box-shadow:var(--shadow-md);
  position:relative;
  overflow:hidden;
}

.offer-pack-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg, transparent, rgba(239,203,121,.045), transparent);
}

.offer-pack-card > *{
  position:relative;
  z-index:1;
}

.offer-pack-card span{
  display:inline-flex;
  margin-bottom:16px;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}

.offer-pack-card h3{
  margin-bottom:10px;
}

.offer-pack-card p,
.offer-pack-card li{
  color:var(--muted);
  line-height:1.6;
  font-size:15px;
}

.before-after{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.before-after-card{
  padding:26px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(6,15,31,.42),rgba(6,15,31,.26));
  box-shadow:var(--shadow-md);
}

.before-after-card.after{
  border-color:rgba(239,203,121,.25);
  background:
    radial-gradient(circle at 90% 10%,rgba(239,203,121,.10),transparent 0 24%),
    linear-gradient(180deg,rgba(6,15,31,.46),rgba(6,15,31,.28));
}

.before-after-card h3{
  margin-bottom:14px;
}

.before-after-card ul{
  color:var(--muted);
  line-height:1.68;
  padding-left:20px;
}

.persona-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.persona-card{
  padding:20px;
  border-radius:22px;
  border:1px solid rgba(121,221,255,.13);
  background:rgba(4,14,28,.26);
}

.persona-card strong{
  display:block;
  color:#fff2c1;
  margin-bottom:6px;
}

.persona-card p{
  color:var(--muted);
  line-height:1.55;
  font-size:15px;
}

.service-separation-note{
  margin-top:18px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(143,124,255,.20);
  background:rgba(143,124,255,.075);
  color:var(--muted);
  line-height:1.62;
}

.service-separation-note strong{
  color:#fff;
}

@media(max-width:1100px){
  .dossier-hero-grid,
  .offer-pack,
  .before-after,
  .persona-grid{
    grid-template-columns:1fr;
  }
}


/* ===== V22 : services complémentaires + finition offre ===== */
.services-grid-trio{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.services-grid-trio .entry-card-final{
  min-height:100%;
}
.service-difference{
  margin-top:18px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(143,124,255,.22);
  background:linear-gradient(180deg,rgba(143,124,255,.085),rgba(4,14,28,.18));
  color:var(--muted);
  line-height:1.62;
}
.service-difference strong{color:#fff;}
.message-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.message-card{
  padding:24px;
  border:1px solid rgba(239,203,121,.20);
  border-radius:var(--radius);
  background:
    radial-gradient(circle at 88% 10%,rgba(239,203,121,.10),transparent 0 22%),
    linear-gradient(180deg,rgba(6,15,31,.44),rgba(6,15,31,.28));
  box-shadow:var(--shadow-md);
  position:relative;
  overflow:hidden;
}
.message-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(121,221,255,.04),transparent);
}
.message-card > *{position:relative;z-index:1;}
.message-card span{
  display:inline-flex;
  margin-bottom:16px;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}
.message-card p{
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.message-card .mail-template{
  margin-top:14px;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(4,14,28,.38);
  color:#eef7ff;
  line-height:1.6;
  font-size:14.5px;
}
.mail-service-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.mail-card{
  padding:22px;
  border:1px solid rgba(121,221,255,.16);
  border-radius:24px;
  background:
    radial-gradient(circle at 90% 12%,rgba(121,221,255,.09),transparent 0 22%),
    linear-gradient(180deg,rgba(6,15,31,.43),rgba(6,15,31,.27));
  box-shadow:var(--shadow-md);
  position:relative;
  overflow:hidden;
}
.mail-card::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(239,203,121,.55),rgba(121,221,255,.36),transparent);
}
.mail-card span{
  display:inline-flex;
  margin-bottom:14px;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}
.mail-card p,.mail-card li{
  color:var(--muted);
  line-height:1.58;
  font-size:15px;
}
.mail-card ul{padding-left:18px;}
.service-map{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.service-map-card{
  padding:22px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(4,14,28,.27);
}
.service-map-card strong{
  display:block;
  color:#fff2c1;
  margin-bottom:8px;
}
.service-map-card p{
  color:var(--muted);
  line-height:1.58;
  font-size:15px;
}
@media(max-width:1100px){
  .services-grid-trio,
  .message-grid,
  .mail-service-grid,
  .service-map{
    grid-template-columns:1fr;
  }
}


/* ===== V23 : offres clarifiées + pages plus compactes ===== */
.services-grid-trio{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.services-grid-trio .entry-card-final{min-height:100%;}
.compact-scope{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.scope-pill{
  padding:16px;
  border:1px solid rgba(121,221,255,.14);
  border-radius:20px;
  background:
    radial-gradient(circle at 90% 10%,rgba(121,221,255,.075),transparent 0 22%),
    rgba(4,14,28,.24);
}
.scope-pill strong{
  display:block;
  color:#fff2c1;
  margin-bottom:6px;
}
.scope-pill span{
  color:var(--muted);
  line-height:1.45;
  font-size:14.5px;
}
.service-decision{
  margin-top:18px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(143,124,255,.22);
  background:linear-gradient(180deg,rgba(143,124,255,.08),rgba(4,14,28,.18));
  color:var(--muted);
  line-height:1.62;
}
.service-decision strong{color:#fff;}
.message-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.message-card{
  padding:24px;
  border:1px solid rgba(239,203,121,.20);
  border-radius:var(--radius);
  background:
    radial-gradient(circle at 88% 10%,rgba(239,203,121,.10),transparent 0 22%),
    linear-gradient(180deg,rgba(6,15,31,.44),rgba(6,15,31,.28));
  box-shadow:var(--shadow-md);
  position:relative;
  overflow:hidden;
}
.message-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(121,221,255,.04),transparent);
}
.message-card>*{position:relative;z-index:1;}
.message-card span{
  display:inline-flex;
  margin-bottom:16px;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}
.message-card p{
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.message-card .mail-template{
  margin-top:14px;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(4,14,28,.40);
  color:#eef7ff;
  line-height:1.62;
  font-size:14.5px;
}
.pack-simple-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}
.pack-simple{
  padding:18px;
  border:1px solid rgba(239,203,121,.18);
  border-radius:22px;
  background:
    radial-gradient(circle at 88% 12%,rgba(239,203,121,.07),transparent 0 22%),
    rgba(4,14,28,.25);
}
.pack-simple strong{
  display:block;
  color:#fff2c1;
  margin-bottom:7px;
}
.pack-simple span{
  color:var(--muted);
  line-height:1.45;
  font-size:14.5px;
}
.redirect-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.redirect-card{
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(121,221,255,.13);
  background:rgba(4,14,28,.23);
}
.redirect-card p{
  color:var(--muted);
  line-height:1.5;
  margin-bottom:12px;
  font-size:14.5px;
}
.mail-intake{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.mail-intake-card{
  padding:22px;
  border-radius:24px;
  border:1px solid rgba(121,221,255,.15);
  background:
    radial-gradient(circle at 90% 12%,rgba(121,221,255,.08),transparent 0 22%),
    linear-gradient(180deg,rgba(6,15,31,.42),rgba(6,15,31,.25));
}
.mail-intake-card strong{
  display:block;
  color:#fff2c1;
  margin-bottom:8px;
}
.mail-intake-card p,.mail-intake-card li{
  color:var(--muted);
  line-height:1.58;
  font-size:15px;
}
.mail-intake-card ul{padding-left:18px;}
@media(max-width:1100px){
  .services-grid-trio,
  .compact-scope,
  .message-grid,
  .pack-simple-grid,
  .redirect-strip,
  .mail-intake{
    grid-template-columns:1fr;
  }
}


/* ===== V24 : tarifs + suivi + liserés or maîtrisés ===== */

/* slogan plus visible, sans agrandir le header */
.nav-punchline{
  display:inline-flex !important;
  align-items:center !important;
  padding:8px 13px 9px !important;
  border:1px solid rgba(239,203,121,.42) !important;
  border-radius:999px !important;
  background:
    linear-gradient(180deg,rgba(239,203,121,.075),rgba(4,14,28,.12)),
    linear-gradient(90deg,#efcb79 0%,#a88cff 48%,#79ddff 100%) !important;
  -webkit-background-clip:padding-box,text !important;
  background-clip:padding-box,text !important;
  color:transparent !important;
  font-size:16px !important;
  line-height:1.26 !important;
  font-weight:950 !important;
  letter-spacing:.005em !important;
  overflow:visible !important;
  box-shadow:0 0 18px rgba(239,203,121,.10), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
@media(max-width:1180px){.nav-punchline{font-size:14px !important;padding:7px 10px 8px !important;}}
@media(max-width:980px){.nav-punchline{display:none !important;}}

/* liserés or subtils globaux */
.home-choice,
.media-card,
.entry-card-final,
.episode-tile,
.article-panel,
.form-card,
.glass,
.ops-card,
.scope-pill,
.pack-simple,
.message-card,
.offer-pack-card,
.mail-intake-card,
.redirect-card,
.pricing-card,
.follow-card{
  border-color:rgba(239,203,121,.22) !important;
  box-shadow:
    0 18px 70px rgba(0,0,0,.23),
    inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.home-choice::after,
.media-card::after,
.entry-card-final::after,
.episode-tile::after,
.ops-card::after,
.scope-pill::after,
.pack-simple::after,
.message-card::after,
.offer-pack-card::after,
.mail-intake-card::after,
.redirect-card::after,
.pricing-card::after,
.follow-card::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(239,203,121,.64),rgba(121,221,255,.34),transparent);
  opacity:.78;
  pointer-events:none;
}
.scope-pill,
.pack-simple,
.redirect-card,
.pricing-card,
.follow-card{
  position:relative;
  overflow:hidden;
}

/* tarifs */
.pricing-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}
.pricing-card{
  padding:26px;
  border-radius:28px;
  border:1px solid rgba(239,203,121,.22);
  background:
    radial-gradient(circle at 88% 12%,rgba(239,203,121,.10),transparent 0 24%),
    linear-gradient(180deg,rgba(6,15,31,.46),rgba(6,15,31,.28));
  position:relative;
}
.pricing-card .price-tag{
  display:inline-flex;
  color:#06101d;
  background:linear-gradient(90deg,#efcb79,#79ddff);
  border-radius:999px;
  padding:8px 11px;
  font-weight:900;
  margin:12px 0 16px;
}
.pricing-card ul{
  color:var(--muted);
  line-height:1.64;
  padding-left:18px;
}
.pricing-note{
  margin-top:16px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(143,124,255,.22);
  background:rgba(143,124,255,.075);
  color:var(--muted);
  line-height:1.62;
}
.pricing-note strong{color:#fff;}

/* suivi dossier */
.follow-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.follow-card{
  padding:20px;
  border-radius:24px;
  border:1px solid rgba(121,221,255,.16);
  background:
    radial-gradient(circle at 90% 12%,rgba(121,221,255,.08),transparent 0 24%),
    rgba(4,14,28,.25);
}
.follow-card strong{
  display:block;
  color:#fff2c1;
  margin-bottom:8px;
}
.follow-card p{
  color:var(--muted);
  line-height:1.56;
  font-size:15px;
}

/* signature discrète */
.signature-line{
  border:1px solid rgba(239,203,121,.18);
  background:linear-gradient(180deg,rgba(239,203,121,.055),rgba(4,14,28,.08));
}
.signature-strip{
  margin-top:22px;
  padding:18px 20px;
  border-radius:26px;
  border:1px solid rgba(239,203,121,.18);
  background:
    radial-gradient(circle at 82% 18%,rgba(143,124,255,.10),transparent 0 20%),
    rgba(4,14,28,.22);
  color:#fff2c1;
  line-height:1.6;
  font-weight:760;
}

/* micro-redirections */
.redirect-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.redirect-card{
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(121,221,255,.13);
  background:rgba(4,14,28,.23);
}
.redirect-card p{
  color:var(--muted);
  line-height:1.5;
  margin-bottom:12px;
  font-size:14.5px;
}

@media(max-width:1100px){
  .pricing-grid,
  .follow-grid,
  .redirect-strip{
    grid-template-columns:1fr;
  }
}


/* ===== V25 : allègement services + mini-ruban + or/violet néant ===== */

/* Slogan header : or/violet néant, lisible sans gonfler la bannière */
.nav-punchline{
  display:inline-flex !important;
  align-items:center !important;
  padding:7px 12px 8px !important;
  border:1px solid rgba(239,203,121,.36) !important;
  border-radius:999px !important;
  background:
    linear-gradient(180deg,rgba(239,203,121,.055),rgba(91,68,168,.055)),
    linear-gradient(90deg,#f1cb76 0%,#8c72ff 48%,#83e6ff 100%) !important;
  -webkit-background-clip:padding-box,text !important;
  background-clip:padding-box,text !important;
  color:transparent !important;
  font-size:15.5px !important;
  line-height:1.26 !important;
  font-weight:950 !important;
  letter-spacing:.005em !important;
  overflow:visible !important;
  box-shadow:
    0 0 18px rgba(239,203,121,.10),
    0 0 24px rgba(130,104,255,.08),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}

/* Mini-ruban contexte */
.context-ribbon-wrap{
  position:sticky;
  top:110px;
  z-index:26;
  pointer-events:none;
  margin-top:8px;
}
.context-ribbon{
  width:max-content;
  max-width:100%;
  min-height:30px;
  padding:7px 14px;
  border-radius:999px;
  border:1px solid rgba(239,203,121,.28);
  background:
    radial-gradient(circle at 15% 50%,rgba(239,203,121,.10),transparent 0 48%),
    linear-gradient(90deg,rgba(5,13,27,.78),rgba(28,18,71,.66),rgba(5,13,27,.78));
  color:#fff2c1;
  font-size:12px;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
  box-shadow:
    0 14px 35px rgba(0,0,0,.25),
    0 0 24px rgba(128,91,255,.10);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  pointer-events:auto;
}
.context-ribbon span{
  background:linear-gradient(90deg,#f2d38d,#b8a6ff,#8fe8ff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
@media(max-width:980px){
  .nav-punchline{display:none !important;}
  .context-ribbon-wrap{top:86px;}
  .context-ribbon{font-size:11px; max-width:calc(100vw - 34px); white-space:normal;}
}

/* Or + violet néant : détails plus riches mais contenus */
.home-choice,
.media-card,
.entry-card-final,
.episode-tile,
.article-panel,
.form-card,
.glass,
.ops-card,
.scope-pill,
.pack-simple,
.message-card,
.offer-pack-card,
.mail-intake-card,
.redirect-card,
.pricing-card,
.service-price-card,
.follow-card{
  border-color:rgba(239,203,121,.20) !important;
  box-shadow:
    0 18px 64px rgba(0,0,0,.22),
    0 0 36px rgba(104,84,219,.045),
    inset 0 1px 0 rgba(255,255,255,.035) !important;
}
.home-choice::after,
.media-card::after,
.entry-card-final::after,
.episode-tile::after,
.ops-card::after,
.scope-pill::after,
.pack-simple::after,
.message-card::after,
.offer-pack-card::after,
.mail-intake-card::after,
.redirect-card::after,
.pricing-card::after,
.service-price-card::after,
.follow-card::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(239,203,121,.62),rgba(124,95,255,.38),rgba(121,221,255,.28),transparent);
  opacity:.82;
  pointer-events:none;
}
.scope-pill,
.pack-simple,
.redirect-card,
.service-price-card,
.follow-card{
  position:relative;
  overflow:hidden;
}

/* Tarifs page service : une seule offre centrée */
.service-price-wrap{
  display:grid;
  grid-template-columns:minmax(0, 760px);
  justify-content:center;
}
.service-price-card{
  padding:26px;
  border-radius:28px;
  border:1px solid rgba(239,203,121,.22);
  background:
    radial-gradient(circle at 86% 10%,rgba(239,203,121,.10),transparent 0 24%),
    radial-gradient(circle at 12% 88%,rgba(130,104,255,.10),transparent 0 28%),
    linear-gradient(180deg,rgba(6,15,31,.48),rgba(6,15,31,.28));
  position:relative;
}
.service-price-card .price-tag,
.pricing-card .price-tag{
  display:inline-flex;
  color:#06101d;
  background:linear-gradient(90deg,#efcb79,#b9a7ff,#79ddff);
  border-radius:999px;
  padding:8px 11px;
  font-weight:900;
  margin:12px 0 16px;
}
.service-price-card ul{
  color:var(--muted);
  line-height:1.64;
  padding-left:18px;
}
.service-price-card .fine{
  color:var(--soft);
  font-size:14px;
  line-height:1.55;
  margin-top:12px;
}

/* Sections allégées */
.compact-scope{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.scope-pill{
  padding:15px;
  border:1px solid rgba(121,221,255,.14);
  border-radius:20px;
  background:
    radial-gradient(circle at 90% 10%,rgba(121,221,255,.07),transparent 0 22%),
    radial-gradient(circle at 12% 90%,rgba(139,105,255,.07),transparent 0 24%),
    rgba(4,14,28,.24);
}
.scope-pill strong{
  display:block;
  color:#fff2c1;
  margin-bottom:6px;
}
.scope-pill span{
  color:var(--muted);
  line-height:1.45;
  font-size:14.5px;
}
.follow-inline{
  margin-top:16px;
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(239,203,121,.18);
  background:linear-gradient(90deg,rgba(239,203,121,.055),rgba(96,74,199,.070),rgba(4,14,28,.18));
  color:var(--muted);
  line-height:1.6;
}
.follow-inline strong{color:#fff2c1;}

.message-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.message-card{
  padding:24px;
  border:1px solid rgba(239,203,121,.20);
  border-radius:var(--radius);
  background:
    radial-gradient(circle at 88% 10%,rgba(239,203,121,.10),transparent 0 22%),
    radial-gradient(circle at 10% 95%,rgba(127,92,255,.08),transparent 0 26%),
    linear-gradient(180deg,rgba(6,15,31,.44),rgba(6,15,31,.28));
  position:relative;
  overflow:hidden;
}
.message-card span{
  display:inline-flex;
  margin-bottom:16px;
  color:#87e5ff;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:12px;
}
.message-card p{
  color:var(--muted);
  line-height:1.62;
  font-size:15px;
}
.message-card .mail-template{
  margin-top:14px;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(4,14,28,.40);
  color:#eef7ff;
  line-height:1.62;
  font-size:14.5px;
}

.redirect-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.redirect-card{
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(121,221,255,.13);
  background:
    radial-gradient(circle at 92% 8%,rgba(121,221,255,.06),transparent 0 24%),
    rgba(4,14,28,.23);
}
.redirect-card p{
  color:var(--muted);
  line-height:1.5;
  margin-bottom:12px;
  font-size:14.5px;
}

@media(max-width:1100px){
  .compact-scope,
  .message-grid,
  .redirect-strip{
    grid-template-columns:1fr;
  }
}


/* ===== V26 : demande dropdown + ruban droite + CTA multicolore + punchline accueil ===== */

/* Bannière : place pour Demander */
.nav{
  gap:14px !important;
}
.nav-links{
  gap:6px !important;
}
.nav-drop-button,
.nav-links a{
  font-size:14px !important;
  padding:10px 13px !important;
}
.nav-punchline{
  padding:6px 10px 7px !important;
  font-size:13.8px !important;
  line-height:1.22 !important;
  border-color:rgba(239,203,121,.34) !important;
  box-shadow:
    0 0 14px rgba(239,203,121,.08),
    0 0 18px rgba(130,104,255,.07),
    inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.request-dropdown .nav-request-button{
  border:1px solid rgba(239,203,121,.34) !important;
  background:
    linear-gradient(90deg,rgba(239,203,121,.10),rgba(130,104,255,.10),rgba(121,221,255,.08)) !important;
  color:#fff !important;
}
.request-panel{
  width:min(470px, calc(100vw - 32px)) !important;
  border-color:rgba(239,203,121,.22) !important;
}
.nav-dropdown{z-index:90}
.nav-dropdown:hover .nav-panel,
.nav-dropdown.open .nav-panel{
  z-index:99;
}

/* Mini-ruban contexte : à droite, plus petit */
.context-ribbon-wrap{
  position:sticky !important;
  top:104px !important;
  z-index:26 !important;
  pointer-events:none !important;
  margin-top:6px !important;
}
.context-ribbon-wrap .container{
  display:flex !important;
  justify-content:flex-end !important;
}
.context-ribbon{
  width:auto !important;
  max-width:min(420px, calc(100vw - 34px)) !important;
  min-height:25px !important;
  padding:5px 11px !important;
  border-radius:999px !important;
  font-size:10.7px !important;
  letter-spacing:.045em !important;
  border-color:rgba(239,203,121,.24) !important;
  opacity:.92 !important;
}
@media(max-width:980px){
  .context-ribbon-wrap{top:82px !important;}
  .context-ribbon-wrap .container{justify-content:center !important;}
  .context-ribbon{font-size:10px !important; padding:5px 9px !important; opacity:.88 !important;}
}

/* CTA premium : effet multicolore appliqué aux actions importantes */
.btn.action-premium,
.form-card button.btn[type="submit"],
.nav-request-button,
.service-price-card .btn,
.pricing-card .btn{
  border-color:rgba(239,203,121,.42) !important;
  background:
    radial-gradient(circle at 85% 20%,rgba(121,221,255,.20),transparent 0 32%),
    linear-gradient(90deg,rgba(239,203,121,.28),rgba(130,104,255,.24),rgba(121,221,255,.20)) !important;
  box-shadow:
    0 16px 40px rgba(0,0,0,.22),
    0 0 28px rgba(130,104,255,.10),
    inset 0 1px 0 rgba(255,255,255,.11) !important;
}
.btn.action-premium:hover,
.form-card button.btn[type="submit"]:hover,
.nav-request-button:hover{
  border-color:rgba(239,203,121,.62) !important;
}

/* Punchline accueil */
.pragma-punchline-section{
  padding-top:0 !important;
  padding-bottom:12px !important;
}
.pragma-punchline{
  max-width:1040px;
  margin:0 auto;
  padding:26px 30px;
  border-radius:32px;
  border:1px solid rgba(239,203,121,.24);
  background:
    radial-gradient(circle at 14% 50%,rgba(239,203,121,.10),transparent 0 28%),
    radial-gradient(circle at 88% 30%,rgba(121,221,255,.10),transparent 0 30%),
    linear-gradient(120deg,rgba(4,14,28,.48),rgba(91,68,168,.16),rgba(4,14,28,.44));
  box-shadow:
    0 24px 70px rgba(0,0,0,.24),
    0 0 46px rgba(130,104,255,.075),
    inset 0 1px 0 rgba(255,255,255,.05);
  position:relative;
  overflow:hidden;
}
.pragma-punchline::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent,rgba(239,203,121,.08),rgba(130,104,255,.09),transparent);
  pointer-events:none;
}
.pragma-punchline strong{
  position:relative;
  z-index:1;
  display:block;
  font-size:clamp(21px,2.15vw,32px);
  line-height:1.22;
  color:#fff;
  letter-spacing:-.02em;
}
.pragma-punchline strong span{
  background:linear-gradient(90deg,#f1d38d,#bda8ff,#8ee8ff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.pragma-punchline small{
  position:relative;
  z-index:1;
  display:block;
  margin-top:10px;
  color:rgba(232,242,255,.72);
  line-height:1.55;
  font-size:15px;
}

/* Contrôle responsive header */
@media(max-width:1220px){
  .nav-punchline{font-size:12.3px !important; padding:5px 8px 6px !important;}
  .social-links a{width:36px !important; height:36px !important;}
  .nav-right{gap:7px !important;}
}
@media(max-width:1060px){
  .contact-top{display:none !important;}
}


/* ===== V27 : dropdown exclusif + microcopy pro + CTA nuancés ===== */

/* Les dropdowns principaux s'ouvrent uniquement via JS .open : évite les bulles qui se chevauchent */
.nav-dropdown:not(.open) .nav-panel{
  opacity:0 !important;
  transform:translateY(10px) !important;
  pointer-events:none !important;
  visibility:hidden !important;
}
.nav-dropdown.open .nav-panel{
  opacity:1 !important;
  transform:translateY(0) !important;
  pointer-events:auto !important;
  visibility:visible !important;
  z-index:120 !important;
}
.nav-dropdown:hover .nav-panel{
  opacity:0 !important;
  transform:translateY(10px) !important;
  pointer-events:none !important;
  visibility:hidden !important;
}
.nav-dropdown.open:hover .nav-panel{
  opacity:1 !important;
  transform:translateY(0) !important;
  pointer-events:auto !important;
  visibility:visible !important;
}
.nav-drop-button{
  cursor:pointer !important;
}

/* Bouton Formulaires : professionnel, compact, CTA principal */
.nav-request-button{
  font-weight:900 !important;
  letter-spacing:.01em !important;
  border-color:rgba(239,203,121,.48) !important;
  background:
    radial-gradient(circle at 85% 20%,rgba(121,221,255,.18),transparent 0 32%),
    linear-gradient(90deg,rgba(239,203,121,.26),rgba(125,96,255,.25),rgba(121,221,255,.18)) !important;
}
.request-panel{
  right:0 !important;
  left:auto !important;
  width:min(500px, calc(100vw - 32px)) !important;
}

/* CTA nuancés : or / violet néant / bleu signal */
.cta-gold,
a[href*="restauration-donnees"].btn,
a[href*="services-assistantes"].btn{
  border-color:rgba(239,203,121,.36) !important;
  background:
    radial-gradient(circle at 88% 18%,rgba(239,203,121,.18),transparent 0 32%),
    linear-gradient(90deg,rgba(239,203,121,.19),rgba(125,96,255,.13),rgba(4,14,28,.18)) !important;
}
.cta-violet,
a[href*="boite-mail-actionnable"].btn{
  border-color:rgba(155,128,255,.34) !important;
  background:
    radial-gradient(circle at 85% 18%,rgba(155,128,255,.20),transparent 0 34%),
    linear-gradient(90deg,rgba(94,76,190,.18),rgba(239,203,121,.09),rgba(4,14,28,.18)) !important;
}
.cta-blue,
a[href*="media.html"].btn,
a[href*="signal"].btn{
  border-color:rgba(121,221,255,.30) !important;
  background:
    radial-gradient(circle at 86% 18%,rgba(121,221,255,.18),transparent 0 34%),
    linear-gradient(90deg,rgba(121,221,255,.14),rgba(94,76,190,.12),rgba(4,14,28,.20)) !important;
}
.form-card button.btn[type="submit"],
.btn.action-premium{
  border-color:rgba(239,203,121,.50) !important;
  background:
    radial-gradient(circle at 86% 22%,rgba(121,221,255,.22),transparent 0 32%),
    linear-gradient(90deg,rgba(239,203,121,.30),rgba(130,104,255,.25),rgba(121,221,255,.20)) !important;
}

/* Encadrés de redirection : nuances moins répétitives */
.redirect-card:nth-child(1){
  background:
    radial-gradient(circle at 92% 8%,rgba(239,203,121,.08),transparent 0 24%),
    rgba(4,14,28,.23) !important;
}
.redirect-card:nth-child(2){
  background:
    radial-gradient(circle at 92% 8%,rgba(139,105,255,.09),transparent 0 24%),
    rgba(4,14,28,.23) !important;
}
.redirect-card:nth-child(3){
  background:
    radial-gradient(circle at 92% 8%,rgba(121,221,255,.08),transparent 0 24%),
    rgba(4,14,28,.23) !important;
}

/* Mini-ruban déjà validé : sécurité de placement */
.context-ribbon-wrap .container{
  justify-content:flex-end !important;
}
.context-ribbon{
  font-size:10.5px !important;
  padding:5px 10px !important;
}

/* Header responsive : évite les débordements avec Formulaires */
@media(max-width:1260px){
  .nav-punchline{font-size:12.2px !important; padding:5px 8px 6px !important;}
  .nav-drop-button,.nav-links a{font-size:13px !important; padding:9px 10px !important;}
}
@media(max-width:1120px){
  .nav-punchline{display:none !important;}
}


/* ===== V28 FINAL : slogan restauré et vérification publication ===== */
.nav-punchline{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
  padding:6px 10px 7px !important;
  border:1px solid rgba(239,203,121,.48) !important;
  border-radius:999px !important;
  font-size:13.2px !important;
  line-height:1.28 !important;
  font-weight:950 !important;
  letter-spacing:.002em !important;
  overflow:visible !important;
  background:
    linear-gradient(180deg,rgba(239,203,121,.075),rgba(91,68,168,.065)),
    linear-gradient(90deg,#f4d487 0%,#b9a2ff 50%,#88e7ff 100%) !important;
  -webkit-background-clip:padding-box,text !important;
  background-clip:padding-box,text !important;
  color:transparent !important;
  box-shadow:0 0 16px rgba(239,203,121,.12),0 0 22px rgba(130,104,255,.08),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
@media(min-width:1061px){.nav-punchline{display:inline-flex !important;}}
@media(max-width:1060px){.nav-punchline{display:none !important;}}
.nav-dropdown:not(.open) .nav-panel{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transform:translateY(10px) !important;}
.nav-dropdown.open .nav-panel{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:translateY(0) !important;z-index:150 !important;}
.nav-dropdown:hover .nav-panel{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transform:translateY(10px) !important;}
.nav-dropdown.open:hover .nav-panel{opacity:1 !important;visibility:visible !important;pointer-events:auto !important;transform:translateY(0) !important;}
.nav{gap:12px !important;}
.nav-links{gap:6px !important;}
.nav-drop-button,.nav-links a{font-size:13.5px !important;padding:9px 11px !important;}
.request-panel{right:0 !important;left:auto !important;width:min(500px, calc(100vw - 32px)) !important;}
.contact-email{word-break:break-word;}


/* ===== V29 FINAL : slogan bandeau restauré façon V25/V26 ===== */
.header .brand-zone{
  min-width:0 !important;
  flex:0 1 auto !important;
}
.header .nav-punchline{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
  margin-left:12px !important;
  padding:7px 12px 8px !important;
  border:1px solid rgba(239,203,121,.46) !important;
  border-radius:999px !important;
  font-size:14px !important;
  line-height:1.25 !important;
  font-weight:950 !important;
  letter-spacing:.004em !important;
  overflow:visible !important;
  color:#f7d78e !important;
  background:
    radial-gradient(circle at 12% 50%,rgba(239,203,121,.16),transparent 0 42%),
    radial-gradient(circle at 88% 50%,rgba(121,221,255,.12),transparent 0 42%),
    linear-gradient(90deg,rgba(239,203,121,.10),rgba(135,105,255,.10),rgba(121,221,255,.08)) !important;
  box-shadow:
    0 0 18px rgba(239,203,121,.14),
    0 0 24px rgba(130,104,255,.09),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  text-shadow:
    0 0 10px rgba(239,203,121,.24),
    0 0 18px rgba(130,104,255,.12) !important;
}

/* Accent multicolore discret sur les mots du slogan via dégradé compatible */
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .header .nav-punchline{
    background:
      linear-gradient(180deg,rgba(239,203,121,.075),rgba(91,68,168,.070)),
      linear-gradient(90deg,#f3d184 0%,#b99cff 52%,#87e7ff 100%) !important;
    -webkit-background-clip:padding-box,text !important;
    background-clip:padding-box,text !important;
    -webkit-text-fill-color:transparent !important;
    color:transparent !important;
  }
}

/* Le slogan reste visible sur desktop et tablette large. Sur petit écran, on le masque pour ne pas casser le menu. */
@media(min-width:981px){
  .header .nav-punchline{
    display:inline-flex !important;
  }
}
@media(max-width:1180px){
  .header .nav-punchline{
    font-size:12.6px !important;
    padding:6px 9px 7px !important;
    margin-left:8px !important;
  }
}
@media(max-width:980px){
  .header .nav-punchline{
    display:none !important;
  }
}


/* ===== V30 FINAL : dropdown hover exclusif + titres Signal LED ===== */

/* Menus principaux : une seule bulle visible, pilotée par JS */
.nav-dropdown:not(.open) .nav-panel{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(10px) !important;
}
.nav-dropdown.open .nav-panel{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
  z-index:190 !important;
}
.nav-dropdown:hover .nav-panel{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(10px) !important;
}
.nav-dropdown.open:hover .nav-panel{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

/* Sécurité calque : Formulaires et Nos services ne doivent jamais se passer dessus */
.nav-dropdown,
.nav-panel{
  isolation:isolate;
}
.nav-dropdown.open{
  z-index:200 !important;
}

/* Titres des épisodes : effet Signal LED / tapis roulant */
.episode-tile h3{
  display:inline-block;
  position:relative;
  overflow:visible;
  background:
    linear-gradient(
      90deg,
      #f5d78b 0%,
      #f5d78b 14%,
      #b69cff 28%,
      #7ee8ff 42%,
      #ffffff 50%,
      #7ee8ff 58%,
      #b69cff 72%,
      #f5d78b 86%,
      #f5d78b 100%
    );
  background-size:260% 100%;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
  -webkit-text-fill-color:transparent;
  animation:signalTitleLedFlow 4.8s linear infinite;
  text-shadow:
    0 0 12px rgba(239,203,121,.16),
    0 0 18px rgba(132,104,255,.10),
    0 0 20px rgba(121,221,255,.10);
}
.episode-tile h3::after{
  content:"";
  position:absolute;
  left:-12%;
  top:50%;
  width:34%;
  height:2px;
  transform:translateY(-50%);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent);
  filter:blur(.4px);
  opacity:.34;
  animation:signalTitleSweep 3.2s ease-in-out infinite;
  pointer-events:none;
}
.episode-grid .episode-tile:nth-child(1) h3{animation-delay:0s;}
.episode-grid .episode-tile:nth-child(2) h3{animation-delay:.45s;}
.episode-grid .episode-tile:nth-child(3) h3{animation-delay:.9s;}
.episode-grid .episode-tile:nth-child(4) h3{animation-delay:1.35s;}
.episode-grid .episode-tile:nth-child(1) h3::after{animation-delay:.1s;}
.episode-grid .episode-tile:nth-child(2) h3::after{animation-delay:.55s;}
.episode-grid .episode-tile:nth-child(3) h3::after{animation-delay:1s;}
.episode-grid .episode-tile:nth-child(4) h3::after{animation-delay:1.45s;}

@keyframes signalTitleLedFlow{
  0%{background-position:0% 50%; filter:brightness(1);}
  40%{filter:brightness(1.12);}
  50%{filter:brightness(1.28);}
  60%{filter:brightness(1.10);}
  100%{background-position:260% 50%; filter:brightness(1);}
}
@keyframes signalTitleSweep{
  0%{left:-20%; opacity:0;}
  18%{opacity:.32;}
  50%{opacity:.58;}
  82%{opacity:.22;}
  100%{left:88%; opacity:0;}
}

/* Respect accessibilité : pas d’animation si l’utilisateur demande moins de mouvement */
@media (prefers-reduced-motion: reduce){
  .episode-tile h3,
  .episode-tile h3::after{
    animation:none !important;
  }
}


/* ===== V31 FINAL : sécurité visuelle menus 0,5 s ===== */
.nav-dropdown:not(.open) .nav-panel{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(10px) !important;
}
.nav-dropdown.open .nav-panel{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
  z-index:220 !important;
}
.nav-dropdown:hover .nav-panel{
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
  transform:translateY(10px) !important;
}
.nav-dropdown.open:hover .nav-panel{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}
.nav-dropdown.open{
  z-index:230 !important;
}


/* ===== V32 FINAL : bulle Nos services alignée vers la gauche, sans texte coupé ===== */

/* Le panneau Nos services se cale par son bord droit sous le bouton : il s'ouvre donc vers la gauche. */
.nav-dropdown[data-menu="services"] .nav-panel{
  left:auto !important;
  right:0 !important;
  width:min(470px, calc(100vw - 32px)) !important;
  max-width:calc(100vw - 32px) !important;
  transform-origin:top right !important;
  overflow:hidden !important;
}

/* Même sécurité pour Formulaires, déjà logique côté droit. */
.nav-dropdown[data-menu="forms"] .nav-panel,
.request-panel{
  left:auto !important;
  right:0 !important;
  width:min(500px, calc(100vw - 32px)) !important;
  max-width:calc(100vw - 32px) !important;
  transform-origin:top right !important;
  overflow:hidden !important;
}

/* Le texte des items doit revenir à la ligne au lieu de sortir de la bulle. */
.nav-panel,
.nav-panel-item,
.nav-panel-item strong,
.nav-panel-item span{
  box-sizing:border-box !important;
  max-width:100% !important;
}

.nav-panel-item{
  white-space:normal !important;
  overflow:hidden !important;
}

.nav-panel-item strong,
.nav-panel-item span{
  display:block !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
  line-height:1.35 !important;
}

/* Le CTA de bas de bulle reste centré et jamais coupé. */
.nav-panel-cta{
  white-space:normal !important;
  text-align:center !important;
  max-width:100% !important;
}

/* Sur écran étroit, les bulles restent dans le viewport. */
@media(max-width:760px){
  .nav-dropdown[data-menu="services"] .nav-panel,
  .nav-dropdown[data-menu="forms"] .nav-panel,
  .request-panel{
    position:fixed !important;
    left:16px !important;
    right:16px !important;
    top:88px !important;
    width:auto !important;
    max-width:none !important;
  }
}


/* Newsletter Beehiiv */
.newsletter-section{scroll-margin-top:110px;margin-top:44px;margin-bottom:44px}
.newsletter-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);gap:28px;align-items:center;padding:34px;border:1px solid rgba(96,165,250,.22);box-shadow:0 24px 80px rgba(0,0,0,.28)}
.newsletter-copy h2{margin:8px 0 10px;font-size:clamp(2rem,4vw,3.4rem);line-height:.98}
.newsletter-copy p{max-width:640px;color:var(--muted)}
.newsletter-form-wrap{min-height:170px;border-radius:24px;padding:18px;background:rgba(4,11,22,.42);border:1px solid rgba(255,255,255,.08)}
.subscribe-top{white-space:nowrap}
@media (max-width:900px){.newsletter-card{grid-template-columns:1fr;padding:24px}.newsletter-form-wrap{padding:12px}.subscribe-top{display:inline-flex}}
