/* identity-v3.css */
/* ════════════ DESIGN TOKENS (prototype Google AI Studio) ════════════ */
:root{
  --primary:#111111;--accent:#0071e3;--accent-light:#eff4ff;--surface:#fff;--surface-alt:#f5f5f7;
  --body-bg:#fcfcfd;--on-surface:#1d1d1f;--muted:#86868b;--gold:#D4AF37;--star:#FABB05;--ink:#0A0F1C;
  --radius-xl:1.5rem;--radius-2xl:2rem;--maxw:1000px;--px:clamp(1rem,4vw,2rem);
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:80px;}
body{
  margin:0;font-family:"Hanken Grotesk",ui-sans-serif,system-ui,sans-serif;color:var(--on-surface);
  background-color:var(--body-bg);
  background-image:radial-gradient(at 0% 0%,rgba(0,113,227,.03) 0%,transparent 50%),radial-gradient(at 100% 100%,rgba(0,113,227,.03) 0%,transparent 50%);
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;
}
a{color:inherit;}
img{max-width:100%;display:block;}
::selection{background:rgba(0,113,227,.10);color:var(--accent);}
.section{max-width:var(--maxw);margin:0 auto;padding-left:var(--px);padding-right:var(--px);}
.divider{display:block;width:48px;height:4px;border-radius:9999px;margin:0 auto 1rem;background:linear-gradient(90deg,transparent,rgba(0,113,227,.8),transparent);}
.sec-head{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:2rem;}
.sec-head h2{font-size:clamp(1.875rem,3vw,2.25rem);font-weight:700;letter-spacing:-0.03em;color:var(--primary);margin:0 0 .75rem;}
.sec-head p{font-size:15px;color:var(--muted);font-weight:500;max-width:38rem;margin:0;line-height:1.6;}
@media(min-width:768px){.sec-head{margin-bottom:3rem;}}
.mb-sec{margin-bottom:3rem;}
@media(min-width:768px){.mb-sec{margin-bottom:4rem;}}

/* ════════════ NAVIGATION ════════════ */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(255,255,255,.80);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.05);}
.nav-inner{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;max-width:1100px;margin:0 auto;}
@media(min-width:768px){.nav-inner{padding:.75rem 2rem;}}
.nav-logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;transition:opacity .2s;}
.nav-logo:hover{opacity:.7;}
.nav-logo span{font-weight:700;color:var(--primary);letter-spacing:-0.02em;font-size:18px;}
.nav-links{display:none;align-items:center;gap:1.5rem;}
.nav-links a{font-size:13px;font-weight:600;color:var(--muted);text-decoration:none;transition:color .2s;}
.nav-links a:hover{color:var(--primary);}
.nav-cta{background:var(--primary);color:#fff !important;font-size:12px;font-weight:600;padding:.5rem 1rem;border-radius:9999px;text-decoration:none;transition:background .2s;white-space:nowrap;}
.nav-cta:hover{background:rgba(0,0,0,.8);}
.nav-cta-desktop{display:none;}
.nav-burger{display:inline-flex;background:none;border:none;cursor:pointer;padding:.5rem;color:var(--primary);}
.nav-mobile{display:none;background:#fff;border-bottom:1px solid rgba(0,0,0,.05);box-shadow:0 8px 20px rgba(0,0,0,.06);}
.nav-mobile.open{display:block;}
.nav-mobile-inner{display:flex;flex-direction:column;padding:1rem;gap:.25rem;}
.nav-mobile-inner a{font-size:15px;font-weight:600;color:var(--primary);text-decoration:none;padding:.5rem 1rem;border-radius:.5rem;}
.nav-mobile-inner a:hover{background:#f7f7f8;}
.nav-mobile-inner .nav-cta{text-align:center;color:#fff;padding:.75rem;margin-top:.5rem;border-radius:.75rem;font-size:15px;}
@media(min-width:768px){.nav-links{display:flex;}.nav-cta-desktop{display:inline-block;}.nav-burger{display:none;}.nav-mobile{display:none !important;}}

/* ════════════ HERO ════════════ */
.hero{position:relative;margin-top:57px;min-height:clamp(440px,58vh,560px);overflow:hidden;display:flex;background:var(--ink);}
.hero-bg{position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--ink);}
.hero-bg video,.hero-bg img.hero-poster{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);min-width:100%;min-height:100%;width:auto;height:auto;object-fit:cover;}
.hero-scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(10,14,28,.08) 0%,rgba(10,14,28,0) 42%,rgba(10,14,28,.16) 100%);}
.hero-wash{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(95deg,rgba(10,14,28,.66) 0%,rgba(10,14,28,.40) 22%,rgba(10,14,28,.15) 44%,transparent 62%);}
.hero-inner{position:relative;z-index:2;width:100%;max-width:1180px;margin:0 auto;display:flex;align-items:center;padding:clamp(1.4rem,3vw,2.4rem) var(--px);}
.hero-panel{max-width:640px;}
.hero-eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-weight:700;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#bcd6ff;margin-bottom:1rem;text-shadow:0 1px 12px rgba(0,0,0,.7);}
.hero-eyebrow .dot{width:7px;height:7px;border-radius:50%;background:#3b82f6;box-shadow:0 0 12px #3b82f6;}
/* Titre générique des pages WP (mentions, etc.) — conservé tel quel */
.hero-h1{font-size:clamp(2.25rem,5vw,3.75rem);font-weight:700;line-height:1.1;letter-spacing:-0.02em;color:var(--primary);margin:0 0 1.25rem;}
.hero-h1 .accent{color:var(--accent);}
/* Surcharge du titre UNIQUEMENT dans le hero vidéo de l'accueil */
.hero .hero-h1{font-size:clamp(1.6rem,3vw,2.5rem);font-weight:800;line-height:1.12;letter-spacing:-.025em;color:#fff;margin:0;text-shadow:0 2px 30px rgba(0,0,0,.8),0 1px 4px rgba(0,0,0,.7);}
.hero .hero-h1 .l1{white-space:nowrap;}
.hero .hero-h1 .accent{color:#8ebbff;}
.hero-desc{font-size:clamp(.97rem,1.3vw,1.1rem);color:#fff;font-weight:600;line-height:1.55;max-width:46ch;margin:.9rem 0 0;text-shadow:0 1px 2px rgba(0,0,0,.95),0 2px 16px rgba(0,0,0,.75);}
.hero-desc .hero-aud{color:#fff;font-weight:700;}
.hero-cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.5rem;}
.btn-accent{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:1rem 2.1rem;background:linear-gradient(135deg,#0071e3 0%,#2563eb 100%);color:#fff;border-radius:9999px;font-size:15px;font-weight:700;letter-spacing:.01em;text-decoration:none;box-shadow:0 8px 22px rgba(37,99,235,.30),inset 0 1px 0 rgba(255,255,255,.18);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;}
.btn-accent:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(37,99,235,.42),inset 0 1px 0 rgba(255,255,255,.22);filter:brightness(1.04);color:#fff;}
.btn-accent:active{transform:translateY(0);box-shadow:0 5px 16px rgba(37,99,235,.32),inset 0 1px 0 rgba(255,255,255,.18);}
.btn-accent svg{transition:transform .2s;}
.btn-accent:hover svg{transform:translateX(2px);}
.hero-trust{display:flex;align-items:center;gap:.6rem;margin-top:1.35rem;}
.hero-stars{color:var(--star);letter-spacing:2px;font-size:15px;text-shadow:0 1px 10px rgba(0,0,0,.6);}
.hero-trust-label{font-size:13.5px;color:#fff;font-weight:500;text-shadow:0 1px 12px rgba(0,0,0,.7);}
@media(prefers-reduced-motion:reduce){.hero-bg video{display:none;}}
@media(max-width:720px){
  .hero{display:block;background:var(--body-bg);min-height:0;overflow:visible;padding:0 0 1.75rem;}
  .hero-bg{position:relative;inset:auto;width:100%;aspect-ratio:16/9;overflow:hidden;display:block;}
  .hero-bg video,.hero-bg img.hero-poster{position:absolute;inset:0;top:0;left:0;transform:none;width:100%;height:100%;object-fit:cover;}
  .hero-scrim,.hero-wash{display:none;}
  .hero-inner{position:static;display:block;max-width:600px;margin:0 auto;padding:1.6rem var(--px) 0;}
  .hero-panel{max-width:100%;text-align:center;}
  .hero-eyebrow{color:var(--accent);text-shadow:none;justify-content:center;}
  .hero-eyebrow .dot{background:var(--accent);box-shadow:none;}
  .hero .hero-h1{color:var(--primary);text-shadow:none;font-size:clamp(1.55rem,7vw,2rem);}
  .hero .hero-h1 .l1{white-space:normal;}
  .hero .hero-h1 .accent{color:var(--accent);}
  .hero-desc{color:var(--muted);text-shadow:none;margin:.85rem auto 0;max-width:42ch;}
  .hero-desc .hero-aud{color:var(--on-surface);}
  .hero-cta-row{justify-content:center;}
  .hero-trust{justify-content:center;}
  .hero-stars{text-shadow:none;}
  .hero-trust-label{color:#55565c;text-shadow:none;}
}
.hero-features{max-width:1180px;margin:1.5rem auto 0;padding:0 var(--px);position:relative;z-index:5;}
@media(min-width:768px){.hero-features{margin-top:2.5rem;}}
.features{background:rgba(255,255,255,.90);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:1.5rem;box-shadow:0 8px 30px rgba(0,0,0,.06);border:1px solid rgba(0,0,0,.05);overflow:hidden;width:100%;}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));}
.step{display:flex;align-items:center;justify-content:flex-start;gap:1rem;padding:1.25rem 1.5rem;border-right:1px solid rgba(0,0,0,.05);transition:background .2s ease;}
.step:hover{background:rgba(0,0,0,.025);}
.step:last-child{border-right:none;}
.step-icon{width:44px;height:44px;border-radius:50%;background:var(--accent-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
@media(min-width:768px){.step-icon{width:48px;height:48px;}}
.step-title{font-size:13px;font-weight:700;color:var(--primary);display:block;margin-bottom:2px;letter-spacing:-0.01em;}
.step-sub{font-size:12px;color:var(--muted);font-weight:500;}
@media(min-width:768px){.step-title{font-size:14px;}.step-sub{font-size:13px;}}
@media(max-width:767px){.features-grid{grid-template-columns:1fr;}.step{flex-direction:column;text-align:center;gap:.6rem;border-right:none;border-bottom:1px solid rgba(0,0,0,.05);}.step:last-child{border-bottom:none;}}
.br-md{display:none;}
@media(min-width:768px){.br-md{display:inline;}}

/* ════════════ CARTES SERVICES ════════════ */
.card-solid{background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px rgba(0,0,0,.02),0 1px 2px rgba(0,0,0,.02);transition:box-shadow .2s ease,border-color .2s ease;}
.card-solid:hover{box-shadow:0 8px 24px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.02);border-color:rgba(0,0,0,.08);}
.services-grid{display:grid;grid-template-columns:1fr;gap:1rem;}
@media(min-width:768px){.services-grid{grid-template-columns:repeat(3,1fr);}}
.service-card{border-radius:1rem;padding:2rem;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:hidden;}
.service-card::before{content:'';position:absolute;inset-inline:0;top:0;height:3px;opacity:0;transition:opacity .3s;background:linear-gradient(90deg,transparent,rgba(0,113,227,.4),transparent);}
.service-card:hover::before{opacity:1;}
.service-icon{width:56px;height:56px;border-radius:50%;background:rgba(0,113,227,.05);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;transition:transform .3s,background .3s;}
.service-card:hover .service-icon{transform:scale(1.1);background:rgba(0,113,227,.10);}
.service-card h3{font-size:15px;font-weight:700;letter-spacing:-0.01em;color:var(--primary);margin:0 0 .5rem;}
.service-card p{color:var(--muted);font-size:13px;line-height:1.6;font-weight:500;margin:0;}

/* ════════════ CARROUSELS ════════════ */
.carousel{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1rem;margin-inline:calc(-1*var(--px));padding-inline:var(--px);cursor:grab;scrollbar-width:none;-ms-overflow-style:none;}
.carousel::-webkit-scrollbar{display:none;}
.carousel.grabbing{cursor:grabbing;user-select:none;}
.reel{scroll-snap-align:start;flex-shrink:0;width:240px;}
@media(min-width:640px){.reel{width:280px;}}
@media(min-width:768px){.reel{width:300px;}}
.reel-thumb{aspect-ratio:16/9;background:#f0f0f0;border-radius:.75rem;overflow:hidden;position:relative;border:1px solid rgba(0,0,0,.05);margin-bottom:.75rem;box-shadow:0 1px 2px rgba(0,0,0,.04);cursor:pointer;}
.reel-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s;pointer-events:none;}
.reel:hover .reel-thumb img{transform:scale(1.05);}
.reel-overlay{position:absolute;inset:0;background:rgba(0,0,0,.20);display:flex;align-items:center;justify-content:center;transition:background .3s;}
.reel:hover .reel-overlay{background:rgba(0,0,0,.10);}
.reel-play{width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.9);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.15);transition:transform .3s;}
.reel:hover .reel-play{transform:scale(1.1);}
.reel h4{font-size:14px;font-weight:700;color:var(--primary);margin:0;padding:0 .25rem;}
.carousel-controls{display:flex;flex-direction:column;align-items:center;margin-top:1.5rem;gap:1rem;}
.carousel-arrows{display:flex;align-items:center;gap:1rem;}
.carousel-arrows button{background:none;border:none;cursor:pointer;color:rgba(0,0,0,.2);padding:.5rem;display:flex;transition:color .2s;-webkit-tap-highlight-color:transparent;}
.carousel-arrows button:hover{color:var(--accent);}
.carousel-arrows button:focus,.carousel-arrows button:active{background:none!important;background-color:transparent!important;box-shadow:none!important;outline:none!important;}
.carousel-arrows button:focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px;border-radius:8px;}
.progress-track{width:80px;height:4px;background:rgba(0,0,0,.05);border-radius:9999px;position:relative;overflow:hidden;flex-shrink:0;}
.progress-thumb{position:absolute;top:0;height:100%;width:25%;background:rgba(0,113,227,.4);border-radius:9999px;transition:left .2s ease-out;}
.btn-dark{background:var(--primary);color:#fff;padding:.75rem 1.5rem;border-radius:9999px;font-size:14px;font-weight:700;text-decoration:none;box-shadow:0 1px 2px rgba(0,0,0,.06);transition:transform .15s,background .15s;display:inline-block;}
.btn-dark:hover{background:rgba(0,0,0,.9);transform:scale(1.05);color:#fff;}
/* Témoignages */
.testi-carousel{display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,1fr);gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1rem;margin-inline:calc(-1*var(--px));padding-inline:var(--px);cursor:grab;scrollbar-width:none;}
.testi-carousel::-webkit-scrollbar{display:none;}
.testi-carousel.grabbing{cursor:grabbing;user-select:none;}
.testi-card{scroll-snap-align:start;flex-shrink:0;width:85vw;border-radius:1rem;padding:1rem;display:flex;gap:1rem;align-items:center;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px rgba(0,0,0,.02),0 1px 2px rgba(0,0,0,.02);transition:box-shadow .2s ease,border-color .2s ease;cursor:pointer;}
@media(min-width:640px){.testi-card{width:320px;}}
.testi-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.04),0 2px 4px rgba(0,0,0,.02);border-color:rgba(0,0,0,.09);}
.testi-photo{width:72px;height:108px;border-radius:.75rem;background:#f0f0f0;flex-shrink:0;position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.05);box-shadow:0 1px 2px rgba(0,0,0,.04);}
.testi-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .5s;pointer-events:none;}
.testi-card:hover .testi-photo img{transform:scale(1.1);}
.testi-photo .play-mini{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.2);transition:opacity .3s;z-index:2;}
.testi-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s;z-index:1;pointer-events:none;}
.testi-card:hover .testi-video{opacity:1;}
.testi-card:hover .play-mini{opacity:0;}
.testi-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;}
.testi-lightbox video{max-width:100%;max-height:88vh;border-radius:1rem;box-shadow:0 20px 60px rgba(0,0,0,.4);background:#000;}
.testi-lightbox img{max-width:100%;max-height:88vh;border-radius:1rem;box-shadow:0 20px 60px rgba(0,0,0,.4);}
.testi-lightbox .lb-close{position:absolute;top:1rem;right:1rem;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.testi-lightbox .lb-close:hover{background:rgba(255,255,255,.28);}
.reel-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;}
.reel-lightbox .rl-frame{position:relative;width:min(900px,94vw);aspect-ratio:16/9;border-radius:1rem;overflow:hidden;background:#000;box-shadow:0 20px 60px rgba(0,0,0,.4);}
.reel-lightbox iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.reel-lightbox .lb-close{position:absolute;top:1rem;right:1rem;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.reel-lightbox .lb-close:hover{background:rgba(255,255,255,.28);}
.testi-stars{display:flex;gap:2px;margin-bottom:.5rem;}
.testi-quote{font-size:12.5px;color:var(--on-surface);font-weight:600;line-height:1.4;margin:0 0 .75rem;}
.testi-name{font-size:13px;font-weight:700;color:var(--primary);margin:0 0 2px;}
.testi-role{font-size:10px;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin:0;}

/* ════════════ PRICING (design maquette, converti en bleu) ════════════ */
.pricing-section{max-width:1280px;}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;align-items:start;margin:0 auto;max-width:1060px;}
@media(max-width:1099px){.pricing-grid{grid-template-columns:1fr;max-width:440px;}}
.pack{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:28px;padding:1.85rem 1.55rem 1.55rem;box-shadow:0 1px 2px rgba(0,0,0,.04),0 14px 32px rgba(0,0,0,.055);transition:transform .25s ease,box-shadow .25s ease;}
.pack:hover{box-shadow:0 1px 2px rgba(0,0,0,.05),0 18px 40px rgba(0,0,0,.09);}
.pack.popular{background:linear-gradient(180deg,#eff4ff,#f7faff 58%,#fff);border:1.5px solid rgba(0,113,227,.5);box-shadow:0 1px 2px rgba(0,113,227,.10),0 20px 46px rgba(0,113,227,.18);}
.pack.popular:hover{box-shadow:0 1px 2px rgba(0,113,227,.12),0 28px 58px rgba(0,113,227,.24);}
@media(min-width:1100px){.pricing-grid .pack.popular{z-index:2;}.pricing-grid .pack.popular:hover{transform:translateY(-4px);}}
.pack-badge{position:absolute;top:-14px;left:50%;transform:translateX(-50%);display:inline-flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,#0071e3,#2563eb);color:#fff;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:.45rem 1.05rem;border-radius:999px;box-shadow:0 8px 20px rgba(0,113,227,.42);white-space:nowrap;z-index:5;}
.pack-icon{display:flex;justify-content:center;color:#0071e3;margin-bottom:.75rem;}
.pack-icon svg{display:block;width:30px;height:30px;}
.pack h3{text-align:center;font-size:1.4rem;font-weight:700;letter-spacing:-.01em;margin:0 0 .5rem;color:#1d1d1f;}
.price-block{text-align:center;margin:0 0 .7rem;}
.price-line{display:flex;align-items:baseline;justify-content:center;gap:.55rem;}
.price{font-size:2.2rem;font-weight:700;letter-spacing:-.03em;line-height:1;color:#0071e3;}
.pack.popular .price{color:#2563eb;}
.orig{position:relative;font-size:1.15rem;font-weight:600;color:#6f6b80;text-decoration:none;}
.orig::after{content:'';position:absolute;left:-2px;right:-2px;top:50%;transform:translateY(-50%);height:1.5px;background:#9b97ac;border-radius:2px;}
.pricing-grid .pack:nth-child(2) .orig{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-weight:500;letter-spacing:.01em;}
.save{display:inline-block;margin-top:.5rem;font-size:12.5px;font-weight:700;color:#047857;background:#ecfdf5;border:1px solid rgba(16,185,129,.22);padding:4px 11px;border-radius:999px;letter-spacing:.01em;}
.pack .tagline{text-align:center;font-size:15px;font-weight:500;line-height:1.5;color:#86868b;margin:0 auto 1rem;max-width:34ch;min-height:3em;}
.pack-hr{height:1px;background:rgba(0,0,0,.08);margin:0 0 1rem;}
.feat-list{list-style:none;padding:0;margin:0 0 1rem;display:flex;flex-direction:column;gap:.7rem;}
.feat-list li{display:flex;align-items:flex-start;gap:.65rem;font-size:15px;font-weight:500;color:#4b4b55;line-height:1.45;}
.feat-list li svg{flex-shrink:0;margin-top:3px;color:#0071e3;}
.feat-list li.feat-plus svg{color:#16a34a;}
.feat-list li.feat-plus{font-weight:600;color:#1d1d1f;}
.pack.popular .feat-list li{font-weight:600;color:#1d1d1f;}
.info-i{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;border:1px solid currentColor;font-size:12px;font-style:normal;font-weight:700;line-height:1;margin-left:5px;cursor:pointer;position:relative;opacity:.7;vertical-align:middle;color:#0071e3;}
.info-i:hover,.info-i.open{opacity:1;outline:none;}
.info-pop{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);width:280px;max-width:74vw;background:#22242a;color:#fff;font-size:13px;font-weight:500;line-height:1.6;letter-spacing:0;text-transform:none;text-align:left;padding:.9rem 1rem;border-radius:.7rem;box-shadow:0 14px 34px rgba(0,0,0,.34);opacity:0;visibility:hidden;transition:opacity .15s;z-index:50;pointer-events:none;}
.info-pop a{color:#9ecbff;text-decoration:underline;}
.info-pop::after{content:'';position:absolute;top:100%;left:50%;transform:translateX(-50%);border:6px solid transparent;border-top-color:#22242a;}
.info-i:hover .info-pop{opacity:1;visibility:visible;}
.info-i.open .info-pop{opacity:1;visibility:visible;pointer-events:auto;}
.toggle-details{display:flex;align-items:center;justify-content:center;gap:.4rem;width:fit-content;background:none;border:none;cursor:pointer;font-family:inherit;font-size:14px;font-weight:700;color:#0071e3;padding:0;margin:auto auto 1rem;transition:color .2s;}
.toggle-details:hover{color:#2563eb;}
.toggle-details svg{transition:transform .42s cubic-bezier(.4,0,.2,1);}
.toggle-details.open svg{transform:rotate(180deg);}
.pack-details{display:grid;grid-template-rows:0fr;transition:grid-template-rows .42s cubic-bezier(.4,0,.2,1);}
.pack-details.open{grid-template-rows:1fr;}
.pack-details-inner{overflow:hidden;min-height:0;}
.pack-details .pd-list{list-style:none;padding:.35rem 0 1.1rem;margin:0;display:flex;flex-direction:column;gap:.8rem;opacity:0;transform:translateY(-4px);transition:opacity .3s ease .08s,transform .3s ease .08s;}
.pack-details.open .pd-list{opacity:1;transform:none;}
.pack-details .pd-list li{display:flex;align-items:flex-start;gap:.6rem;font-size:14px;font-weight:500;color:#4b4b55;line-height:1.55;}
.pack-details .pd-list li svg{flex-shrink:0;margin-top:3px;color:#0071e3;}
.stock{display:flex;align-items:center;justify-content:center;gap:.45rem;white-space:nowrap;margin:0 0 .7rem;}
.stock-meter{position:relative;flex:0 0 auto;width:46px;height:5px;border-radius:999px;background:rgba(0,0,0,.10);overflow:hidden;}
.stock-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;}
.stock-label{font-size:12px;font-weight:700;letter-spacing:.01em;}
.stock-label b{font-size:13.5px;font-weight:800;}
.pack-cta{display:flex;align-items:center;justify-content:center;width:100%;padding:.95rem;border-radius:14px;font-size:14.5px;font-weight:700;text-decoration:none;border:1.5px solid rgba(0,113,227,.35);color:#2563eb;background:#fff;transition:background .2s,border-color .2s,transform .12s;}
.pack-cta:hover{background:rgba(0,113,227,.07);border-color:rgba(0,113,227,.55);}
.pack-cta:active{transform:scale(.985);}
.pack.popular .pack-cta{background:linear-gradient(135deg,#0071e3,#2563eb);color:#fff;border:none;box-shadow:0 10px 24px rgba(0,113,227,.32);}
.pack.popular .pack-cta:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);}
.toggle-details,.info-i{-webkit-tap-highlight-color:transparent;}
.toggle-details:focus,.toggle-details:active,.info-i:focus,.info-i:active{background:none!important;background-color:transparent!important;box-shadow:none!important;outline:none!important;}
.pack-cta:focus{outline:none!important;box-shadow:none!important;}
.pack.popular .pack-cta:focus{box-shadow:0 10px 24px rgba(0,113,227,.32)!important;}
.pack-cta:focus-visible,.toggle-details:focus-visible,.info-i:focus-visible{outline:2px solid #0071e3!important;outline-offset:2px;border-radius:8px;}
/* Neutralise tout liseré/fond de focus système (souris) sur les boutons du site, focus clavier discret en bleu */
button:focus:not(:focus-visible){outline:none;}
/* Onglets packs (mobile/tablette uniquement) : un seul pack affiché à la fois */
.pack-tabs{display:none;}
@media(max-width:1099px){
  .pack-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;max-width:440px;margin:0 auto 1.5rem;}
  .pack-tab{flex:1 1 calc(50% - .5rem);min-width:0;padding:.7rem .5rem;border:1.5px solid rgba(0,0,0,.12);background:#fff;border-radius:12px;font-family:inherit;font-size:14px;font-weight:700;color:#1d1d1f;cursor:pointer;transition:background .2s,border-color .2s,color .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent;}
  .pack-tab:focus{outline:none;}
  .pack-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}
  .pack-tab.active{background:linear-gradient(135deg,#0071e3,#2563eb);border-color:transparent;color:#fff;box-shadow:0 8px 20px rgba(0,113,227,.28);}
  .pack-tab svg{width:13px;height:13px;vertical-align:-2px;margin-right:5px;}
  .pack-tab-vip{border-color:rgba(0,113,227,.55);color:#0071e3;box-shadow:0 2px 10px rgba(0,113,227,.10);}
  .pack-tab.active svg{color:#fff;}
  .pricing-grid{margin-top:.5rem;}
  .pricing-grid .pack{display:none;}
  .pricing-grid .pack.show{display:flex;}
}
@media(min-width:1100px){.pack-tabs{display:none!important;}}

/* ════════════ FAQ ════════════ */
.faq-section{max-width:700px;}
.faq-list{display:flex;flex-direction:column;gap:.75rem;}
details.faq-item{border-radius:.75rem;overflow:hidden;background:#fff;border:1px solid rgba(0,0,0,.06);box-shadow:0 2px 8px rgba(0,0,0,.02);}
details.faq-item summary{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;font-weight:700;font-size:14px;cursor:pointer;list-style:none;color:var(--primary);gap:1rem;}
details.faq-item summary::-webkit-details-marker{display:none;}
details.faq-item summary svg{color:var(--muted);transition:transform .25s;flex-shrink:0;}
details.faq-item[open] summary svg{transform:rotate(45deg);}
details.faq-item[open]{overflow:visible;}
.faq-answer{padding:0 1.25rem 1.25rem;font-size:13px;color:var(--muted)!important;font-weight:500;line-height:1.7;display:block!important;max-height:none!important;overflow:visible!important;-webkit-line-clamp:unset!important;-webkit-box-orient:initial!important;white-space:normal!important;}

/* ════════════ CONTACT + FOOTER ════════════ */
.contact-card{border-radius:1.5rem;overflow:hidden;background:#fff;box-shadow:0 8px 30px rgba(0,0,0,.06);border:1px solid rgba(0,0,0,.05);}
@media(min-width:768px){.contact-card{border-radius:2rem;}}
.contact-grid{display:grid;grid-template-columns:1fr;}
@media(min-width:768px){.contact-grid{grid-template-columns:1fr 1fr;}}
.contact-left{padding:2rem;border-bottom:1px solid rgba(0,0,0,.05);background:linear-gradient(135deg,#fcfcfd,#f9fafb);}
@media(min-width:768px){.contact-left{padding:3rem;border-bottom:none;border-right:1px solid rgba(0,0,0,.05);}}
.contact-head{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;}
.contact-photo{width:64px;height:64px;border-radius:50%;object-fit:cover;box-shadow:0 1px 2px rgba(0,0,0,.06);border:1px solid rgba(0,0,0,.05);cursor:zoom-in;transition:transform .2s;}
.contact-photo:hover{transform:scale(1.06);}
.contact-head h3{font-size:1.25rem;font-weight:700;letter-spacing:-0.01em;color:var(--primary);margin:0;}
.contact-head .role{font-size:13px;color:var(--accent);font-weight:700;margin:2px 0 0;text-transform:uppercase;letter-spacing:.03em;}
.contact-left p{font-size:15px;color:var(--muted);line-height:1.7;font-weight:500;margin:0;}
.contact-right{padding:2rem;display:flex;flex-direction:column;justify-content:center;text-align:center;background:#fff;}
@media(min-width:768px){.contact-right{padding:3rem;text-align:left;}}
.contact-right .divider{margin:0 auto 1.5rem;}
@media(min-width:768px){.contact-right .divider{margin:0 0 1.5rem;}}
.contact-right h2{font-size:clamp(1.875rem,3vw,2.25rem);font-weight:700;letter-spacing:-0.03em;color:var(--primary);margin:0 0 1rem;line-height:1.1;}
.contact-right p{font-size:15px;color:var(--muted);font-weight:500;margin:0 0 2rem;}
.footer-bar{width:100%;padding:2rem 0;border-top:1px solid rgba(0,0,0,.05);background:#fff;margin-top:4rem;}
.footer-inner{max-width:1000px;margin:0 auto;padding:0 var(--px);display:flex;flex-direction:column;align-items:center;gap:1.5rem;}
@media(min-width:768px){.footer-inner{flex-direction:row;justify-content:space-between;}}
.footer-logo{display:flex;align-items:center;gap:.5rem;}
.footer-logo span{font-weight:700;color:var(--primary);font-size:14px;letter-spacing:-0.01em;}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;}
.footer-links a{font-size:11px;font-weight:700;letter-spacing:.03em;color:var(--muted);text-decoration:none;transition:color .2s;}
.footer-links a:hover{color:var(--primary);}
.footer-copy{font-size:11px;color:var(--muted);font-weight:500;}

/* proposition-v2.css */
/* Header, hero, bouton et étoiles : styles d’origine dans identity-base.css. */
html{scroll-padding-top:85px}
button,input,textarea{font:inherit}
button{cursor:pointer}
[hidden]{display:none!important}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #0071e3;outline-offset:4px}
.nav-logo svg{flex-shrink:0}
.hero-trust{flex-wrap:wrap}
@media(min-width:721px){.hero-panel{max-width:760px}}
.hero-bg{background-image:url('https://cinemaxprod.fr/wp-content/uploads/2025/05/Bande-demo-exemple.png.webp');background-size:cover;background-position:center}
.btn-accent{border:0;cursor:pointer}
.btn-accent:disabled{opacity:.6;cursor:default}
.process{display:grid;grid-template-columns:repeat(3,1fr);max-width:1280px;margin:auto;padding:30px 5%;gap:28px;border-bottom:1px solid #e4e7ec}
.process>div{display:flex;gap:16px;align-items:center}
.number{font-size:13px;color:var(--accent);font-weight:650}
.process p{margin:0;display:grid;gap:6px;font-size:13px;line-height:1.4}
.process strong{font-weight:650}
.process p>span{font-size:12px;color:#626771}
.content{max-width:1180px;padding:58px var(--px);margin:auto;scroll-margin-top:10px}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}
.section-title h2{font-size:32px;letter-spacing:-1px;margin:0 0 8px;font-weight:700}
.section-title p{color:#626771;font-size:14px;margin:0}
.section-title>a{font-size:13px;color:var(--accent);text-underline-offset:4px}
.reels{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.reel{background:none;border:0;padding:0;text-align:left;min-width:0;color:var(--on-surface)}
.reel-photo{position:relative;background:var(--ink);aspect-ratio:16/10;overflow:hidden;border-radius:12px}
.reel img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s}
.reel:hover img{transform:scale(1.025)}
.play{position:absolute;right:14px;bottom:14px;color:white;font-size:12px;letter-spacing:1px;background:#0a0f1ce6;padding:10px 13px;border-radius:999px}
.reel h3{font-size:14px;font-weight:600;margin:12px 0 0}
.contact{display:grid;grid-template-columns:1fr 1fr;column-gap:72px;row-gap:20px;border-top:1px solid #e5e8ef;padding-top:64px;padding-bottom:70px;align-items:start}
.contact-copy{grid-column:1;grid-row:1}
.contact-form-panel{grid-column:2;grid-row:1 / span 2}
.contact h2{font-size:36px;letter-spacing:-1.1px;line-height:1.15;margin:0 0 20px;font-weight:750;max-width:430px}
.contact-copy>p{font-size:15px;line-height:1.7;max-width:430px;margin:0 0 24px}
.contact-reassurance{list-style:none;padding:0;margin:0 0 30px;display:grid;gap:10px;font-size:13px;color:#626771}
.contact-reassurance li:before{content:'✓';color:var(--accent);font-weight:700;margin-right:10px}
.contact-alternatives{grid-column:1;grid-row:2;border-top:1px solid #e5e8ef;padding-top:14px;max-width:430px}
.contact-alternatives p{font-size:13px;line-height:1.8;margin:12px 0;color:#626771}
.contact-alternatives a{color:var(--accent);text-underline-offset:3px;overflow-wrap:anywhere}
.preview-notice{font-size:12px;color:#626771;margin:0 0 24px;line-height:1.5}
.field{display:grid;gap:9px;margin-bottom:20px}
.field label{font-size:14px;font-weight:650}
.field label span{font-size:12px;font-weight:400;color:#626771;margin-left:4px}
.field input,.field textarea{display:block;width:100%;min-width:0;padding:13px 15px;border:1px solid #d7dce5;border-radius:12px;background:#fff;color:var(--on-surface);font-size:16px;line-height:1.5}
.field textarea{resize:vertical;min-height:125px}
.form-status{font-size:13px;color:#55565c;line-height:1.6;margin:14px 0 0;min-height:0}
.form-status:empty{margin:0}
footer{text-align:center;font-size:12px;color:#626771;padding:25px var(--px);border-top:1px solid #e5e8ef}
dialog{border:0;border-radius:12px;background:#080b10;color:#fff;max-width:960px;width:90vw;padding:16px}
dialog::backdrop{background:#050a15d9}
dialog>button{display:block;margin:0 0 14px auto;color:#fff;border:1px solid #777;border-radius:999px;background:transparent;padding:10px 18px}
dialog iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
@media(max-width:1000px) and (min-width:768px){.nav-links{gap:1rem}.nav-inner{padding-left:1rem;padding-right:1rem}}
@media(max-width:767px) and (min-width:721px){.hero .hero-h1 .l1{white-space:normal}}
@media(max-width:720px){
  .hero{display:flex;flex-direction:column;padding-bottom:0}
  .hero-inner{order:0;padding:1.6rem var(--px) 1.65rem}
  .hero-bg{order:1}
  .hero .hero-h1{font-size:clamp(1.55rem,7vw,2rem)}
  .hero-desc{color:#75757b}
  .hero-trust{row-gap:5px}
  .process{padding:24px 22px;gap:15px;grid-template-columns:1fr}
  .process>div{align-items:start;gap:15px}
  .process p{display:flex;flex-wrap:wrap;gap:5px 12px}
  .process strong{min-width:65px}
  .process p>span{max-width:220px}
  .content{padding:40px 22px}
  .section-title{align-items:start;flex-direction:column;gap:15px}
  .section-title h2{font-size:28px}
  .reels{grid-template-columns:1fr;gap:26px}
  .contact{display:flex;flex-direction:column;gap:20px;padding-top:38px}
  .contact-copy{display:contents}
  .contact h2{order:0;font-size:31px;max-width:400px;margin:0}
  .contact-copy>p{order:1;font-size:14px;margin:0}
  .contact-form-panel{order:2;width:100%}
  .contact-reassurance{order:3;grid-template-columns:1fr;gap:8px;margin:0}
  .contact-alternatives{order:4;width:100%;margin-top:4px}
  .contact .btn-accent{width:100%}
  .preview-notice{margin-bottom:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* proposition-v3.css */
.problems-section{padding-top:40px;margin-bottom:70px;max-width:1100px}
.problems-section .sec-head{margin-bottom:28px}
.editorial-proposal{display:inline-block;font-size:11px;color:#626771;letter-spacing:.06em;margin-bottom:14px}
.problem-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:stretch}
.problem-list{display:flex;flex-direction:column;gap:10px}
.problem-item{border:1px solid #e5e8ef;border-radius:16px;background:#fff;overflow:hidden}
.problem-item.is-active{border-color:#80b4f4;box-shadow:0 5px 18px #0071e30a}
.problem-item h3{margin:0}
.problem-item button{display:grid;grid-template-columns:1fr auto;gap:8px 20px;align-items:center;width:100%;padding:22px;text-align:left;background:none;border:0;color:var(--primary)}
.problem-number{grid-column:1;font-size:11px;color:var(--accent);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.problem-title{grid-column:1;font-size:18px;line-height:1.35;font-weight:700;letter-spacing:-.02em}
.problem-plus{grid-row:1 / span 2;grid-column:2;font-size:23px;color:#77808d;font-weight:400}
.problem-body{padding:0 22px 22px}
.problem-body p{font-size:14px;color:#626771;line-height:1.65;margin:0}
.problem-solution{padding:24px;background:linear-gradient(145deg,#f1f6ff,#fff);border:1px solid #e0e8f5;border-radius:24px;display:flex;flex-direction:column;justify-content:center;min-width:0}
.solution-eyebrow{font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);margin-bottom:15px}
.problem-solution h3{font-size:27px;line-height:1.15;letter-spacing:-.03em;margin:0 0 14px;color:var(--primary)}
.problem-solution p{font-size:14px;line-height:1.6;color:#626771;margin:0 0 20px}
.solution-film{position:relative;display:block;border:0;padding:0;width:100%;aspect-ratio:16/9;max-height:180px;border-radius:12px;overflow:hidden;background:var(--ink);margin-top:auto}
.solution-film img{display:block;width:100%;height:100%;object-fit:cover}
.solution-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#fffffff2;color:#111;font-size:16px;padding-left:3px;box-shadow:0 3px 18px #0002}
.problem-solution .solution-caption{font-size:12px;color:#626771;margin:10px 0 0}
#portfolio,#temoignages,#services,#pricing,#faq,#a-propos{scroll-margin-top:92px}
#portfolio .reel-thumb{display:block;padding:0;width:100%;font:inherit}
#portfolio .reel h3{font-size:14px;font-weight:700;margin:0;padding:0 .25rem}
.testi-photo{display:block;padding:0;cursor:pointer;color:inherit}
.testi-photo .play-mini{opacity:1!important}
.testi-video{display:none}
.carousel-controls button{min-width:40px;min-height:40px;color:#77808d}
.carousel-controls button:disabled{opacity:.3;cursor:default}
.carousel,.testi-carousel{touch-action:pan-x pan-y;overscroll-behavior-x:contain}
.carousel.grabbing,.testi-carousel.grabbing{scroll-snap-type:none;scroll-behavior:auto}
.faq-answer{color:#626771!important}
.pack-details[hidden]{display:none!important}
.pack-tab[aria-pressed="true"]{font-weight:700}
.pack{min-width:0}
.portrait-trigger{border:0;background:none;padding:0;flex-shrink:0;cursor:zoom-in;border-radius:50%}
.portrait-trigger .contact-photo{display:block}
.footer-bar{margin-top:1rem}
dialog video{display:block;max-width:100%;max-height:76vh;margin:auto;background:#000;border-radius:10px}
dialog img{display:block;max-width:100%;max-height:76vh;margin:auto;object-fit:contain;border-radius:10px}
dialog:has(video),dialog:has(img){width:fit-content;max-width:94vw}
@media(max-width:720px){
  .problems-section{padding-top:38px;margin-bottom:45px}
  .problem-layout{grid-template-columns:1fr;gap:20px}
  .problems-section .sec-head h2{font-size:27px;line-height:1.15}
  .problem-item button{padding:18px;gap:7px 14px}
  .problem-title{font-size:17px}
  .problem-body{padding:0 18px 18px}
  .problem-solution{padding:22px;border-radius:20px}
  .problem-solution h3{font-size:25px}
  .problem-solution .solution-film{max-height:220px}
  .testi-card{width:min(85vw,330px)}
  .contact-head{flex-wrap:wrap}
}

/* proposition-v4.css */
/* V4 : parcours visuel et interactions proposés pour validation. */
.story-section{max-width:1180px;margin:60px auto 70px;scroll-margin-top:10px}
#portfolio,#temoignages,#services,#pricing,#faq,#a-propos{scroll-margin-top:10px}
.story-section .sec-head{margin-bottom:36px}
.story-overline,.contact-eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);display:block;margin-bottom:14px}
.story-section h2{max-width:680px;font-size:clamp(28px,3.4vw,40px);line-height:1.12;letter-spacing:-1.4px}
.story-track{--step-progress:0;--story-height:510px}
.story-sticky{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:65px;align-items:start}
.story-rail{list-style:none;margin:0 0 26px;padding:0;min-height:370px}
.story-step{position:relative;padding-bottom:25px}
.story-step:last-child{padding-bottom:0}
.story-step button{width:100%;display:grid;grid-template-columns:42px 1fr;gap:17px;align-items:center;text-align:left;border:0;padding:0;color:var(--primary);background:transparent}
.story-step small{display:block;color:var(--accent);font-size:12px;font-weight:700;margin-bottom:5px}
.story-step strong{display:block;font-size:19px;line-height:1.3;letter-spacing:-.35px;font-weight:700}
.story-node{width:42px;height:42px;border:1.5px solid #d0d8e3;border-radius:50%;display:grid;place-items:center;background:#fcfcfd;color:#7c8794;position:relative;z-index:1;transition:background .3s,border-color .3s,color .3s}
.story-node svg{width:21px;height:21px}
.story-step.is-current .story-node{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 3px 15px #0071e326}
.story-step.is-current .story-node:after{content:'';position:absolute;inset:-2px;border:1px solid var(--accent);border-radius:50%;animation:story-wave 2.6s ease-out infinite}
.story-step.is-past .story-node{border-color:#99bde9;color:var(--accent)}
.story-detail{display:grid;grid-template-rows:0fr;margin-left:59px;transition:grid-template-rows .45s cubic-bezier(.2,0,0,1)}
.story-detail p{overflow:hidden;font-size:14px;line-height:1.65;color:#626771;margin:0;opacity:0;transition:opacity .3s}
.story-step.is-current .story-detail{grid-template-rows:1fr}
.story-step.is-current .story-detail p{opacity:1;padding-top:11px}
.story-line{position:absolute;left:20px;top:48px;bottom:6px;width:2px;background:#e1e6ee;overflow:hidden}
.story-line b{display:block;width:100%;height:0;background:var(--accent)}
.story-step.is-current .story-line b{height:calc(var(--step-progress)*100%)}
.story-step.is-past .story-line b{height:100%;background:#94bce9}
.story-contact{font-size:13px!important;padding:14px 22px!important}
.story-contact span{margin-left:14px}
.story-stage{background:radial-gradient(ellipse at 90% 0%,#226bbb80,transparent 65%),linear-gradient(145deg,#152f50,#0b1829 85%);border-radius:24px;padding:20px;box-shadow:0 24px 50px -25px #132c4a66;min-width:0;overflow:hidden;color:#fff}
.story-scenes{height:255px;position:relative;display:grid}
.story-scene{grid-area:1/1;position:relative;opacity:0;visibility:hidden;transition:opacity .42s,transform .42s;transform:translateY(10px);min-width:0}
.story-scene.is-current{opacity:1;visibility:visible;transform:none}
.story-before,.story-after{position:absolute;inset:0 0 25px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;opacity:0}
.is-current .story-before{animation:story-before 8s ease-in-out infinite}
.is-current .story-after{animation:story-after 8s ease-in-out infinite}
.scene-caption{font-size:11px;color:#d0deef;letter-spacing:.02em;text-align:center}
.script-sheet{width:190px;padding:20px 24px 15px;border-radius:5px;background:#fbfbfa;color:#182a40;box-shadow:8px 8px 0 #ffffff12;transform:rotate(-4deg);display:flex;flex-direction:column;gap:10px}
.script-sheet>span:first-child{font-size:9px;letter-spacing:.15em;color:#69829c}
.script-sheet>b{font-family:monospace;font-size:12px}
.script-sheet>i{height:3px;background:#b9c4d1;display:block;border-radius:1px}
.script-sheet>i:nth-of-type(2){width:82%}.script-sheet>i:nth-of-type(4){width:65%}
.script-annotation{font-size:10px;font-style:italic;color:var(--accent);padding-top:8px}
.cinema-frame{position:relative;aspect-ratio:16/9;width:93%;border-radius:10px;overflow:hidden;box-shadow:0 12px 30px #0005;background:#000}
.cinema-frame img{display:block;width:100%;height:100%;object-fit:cover}
.frame-corner{position:absolute;left:13px;top:12px;color:#fff;font-size:7px;letter-spacing:.14em}
.frame-label{position:absolute;bottom:0;left:0;right:0;padding:24px 13px 12px;font-size:13px;font-weight:600;background:linear-gradient(transparent,#000b)}
.old-film{border:1px solid #ffffff36;border-radius:13px;background:#ffffff0a;width:78%;padding:18px;display:grid;gap:13px;text-align:center}
.old-film>span{font-size:9px;letter-spacing:.1em;color:#b2c3d9}.old-film>b{font-size:13px;font-weight:500}
.empty-frame{height:78px;background:#ffffff08;border:1px dashed #ffffff36;border-radius:7px;display:grid;place-items:center}.empty-frame svg{width:42px;color:#7a94b3}
.film-strips{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;min-height:150px}.film-strips img{width:28%;height:130px;object-fit:cover;border-radius:8px;box-shadow:0 10px 20px #0004;transform:rotate(-7deg)}
.film-strips img:nth-child(2){height:170px;transform:none;z-index:1}.film-strips img:last-child{transform:rotate(7deg)}
.scattered{width:85%;height:150px;position:relative}.scattered span{position:absolute;padding:13px 19px;background:#ffffff0b;border:1px solid #ffffff26;border-radius:8px;font-size:13px;box-shadow:0 8px 15px #0002}
.scattered span:nth-child(1){left:4%;top:6%;transform:rotate(-9deg)}.scattered span:nth-child(2){right:1%;top:9%;transform:rotate(7deg)}.scattered span:nth-child(3){left:0;top:57%;transform:rotate(4deg)}.scattered span:nth-child(4){right:0;top:67%;transform:rotate(-5deg)}
.director{display:flex;align-items:center;gap:13px}.director img{width:52px;height:52px;object-fit:cover;border-radius:50%;border:2px solid #ffffff4d}.director b{display:block;font-size:18px}.director span{display:block;margin-top:4px;font-size:11px;color:#c5d6e9}
.production-path{display:grid;width:74%;gap:10px}.production-path>span{display:flex;align-items:center;gap:10px;font-size:12px;padding:9px 14px;border-radius:8px;background:#ffffff0a;border:1px solid #ffffff1a}.production-path b{color:#7fd6ba;font-size:12px}
.story-solutions{display:grid}
.story-solution{grid-area:1/1;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .42s,transform .42s,visibility .42s;background:#ffffff09;border:1px solid #ffffff1c;border-radius:15px;padding:20px}
.story-solution.is-current{opacity:1;visibility:visible;transform:none}
.story-solution>span{font-size:11px;color:#9fdbd1;font-weight:600}
.story-solution h3{font-size:23px;line-height:1.18;letter-spacing:-.5px;color:white;margin:9px 0 12px}
.story-solution p{font-size:13px;line-height:1.65;color:#ced9e6;margin:0}
.story-pause{position:absolute;bottom:15px;right:0;z-index:2;width:30px;height:30px;padding:7px;background:#ffffff13;border:1px solid #ffffff40;color:white;border-radius:50%;display:grid;place-items:center}.story-pause svg{width:13px;height:13px}
.story-track.is-paused .story-node:after,.story-track.is-paused .story-before,.story-track.is-paused .story-after{animation-play-state:paused}
@keyframes story-wave{from{transform:scale(1);opacity:.5}to{transform:scale(1.65);opacity:0}}
@keyframes story-before{0%,30%{opacity:1;transform:none}40%,90%{opacity:0;transform:translateY(-8px)}100%{opacity:1;transform:none}}
@keyframes story-after{0%,30%{opacity:0;transform:translateY(8px)}42%,87%{opacity:1;transform:none}98%,100%{opacity:0;transform:translateY(8px)}}
/* Même lecture guidée que la référence : un module fixé, trois chapitres au défilement. */
@media(min-width:1000px) and (min-height:640px){.story-track{height:300svh}.story-sticky{position:sticky;top:max(100px,calc((100svh - var(--story-height))/2 + 20px))}}
/* Les services passent d’une rangée de cartes à un argumentaire éditorial. Textes conservés. */
#services{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:40px;margin-bottom:85px;align-items:start}
#services .sec-head{align-items:start;text-align:left;margin:0}#services .sec-head h2{font-size:30px;line-height:1.15}#services .sec-head p{font-size:14px;line-height:1.75}
#services .services-grid{grid-template-columns:1fr;gap:0}
#services .service-card{background:none;border:0;border-bottom:1px solid #e1e6ed;border-radius:0;box-shadow:none;padding:20px 0;display:grid;grid-template-columns:42px 1fr;gap:5px 16px;text-align:left;align-items:start}
#services .service-card:first-child{padding-top:0}#services .service-card:before{display:none}#services .service-icon{grid-row:1/span 2;width:42px;height:42px;margin:0;border-radius:12px}#services .service-card h3{margin:0}#services .service-card p{font-size:13px}
/* Un seul espace de prise de contact, deux chemins alternatifs discrets. */
.contact.content{max-width:1120px;margin-bottom:30px;gap:30px 65px;padding-top:65px}
.contact h2{font-size:42px;line-height:1.08;letter-spacing:-1.6px;margin-bottom:18px}
.contact-form-panel{padding:27px;border:1px solid #dce5ef;border-radius:20px;background:#fff;box-shadow:0 10px 40px #18345106}
.contact-alternatives{border:0;padding:0;max-width:none;display:grid;gap:10px;align-self:start}
.contact-choice{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:13px 16px;border:1px solid #dfe6ee;border-radius:14px;background:#fff;text-decoration:none;transition:background .2s,border-color .2s}
.contact-choice:hover{background:#f2f7fd;border-color:#a4c8ee}
.choice-icon{width:42px;height:42px;background:#f0f6fd;color:var(--accent);border-radius:12px;display:grid;place-items:center;transform:rotate(-5deg)}.choice-icon svg{width:29px;height:29px}.contact-choice:nth-child(2) .choice-icon{transform:rotate(5deg)}
.contact-choice strong{display:block;font-size:13px;color:var(--primary);font-weight:650}.contact-choice small{display:block;font-size:11px;color:#687482;margin-top:4px}.choice-arrow{color:var(--accent);font-size:19px}
.contact-reassurance{gap:8px;margin-bottom:0}.contact-reassurance li{font-size:12px}
.contact-form-panel .preview-notice{font-size:10px;margin-bottom:20px;padding:9px 11px;background:#f3f6f9;border-radius:7px}
.contact-form-panel .field label{font-size:13px}.contact-form-panel input::placeholder,.contact-form-panel textarea::placeholder{font-size:13px;color:#7a8592;opacity:1}
.contact-form-panel .field input,.contact-form-panel .field textarea{background:#fbfcfe;border-color:#dce3ec;border-radius:10px}
.contact-form-panel .btn-accent{width:100%;display:flex;justify-content:center;align-items:center;gap:20px}
.contact-form-panel .field textarea{min-height:130px}
@media(max-width:999px){.story-sticky{gap:30px;grid-template-columns:1fr 1fr}.story-stage{padding:16px}.story-step strong{font-size:17px}.story-detail p{font-size:13px}.story-rail{min-height:390px}.story-solution{padding:18px}.story-solution h3{font-size:21px}.story-scenes{height:235px}.story-contact{font-size:12px!important}.story-track{height:auto}}
@media(max-width:720px){
 .story-section{margin:40px auto 52px}.story-section .sec-head{margin-bottom:28px}.story-section h2{font-size:28px;letter-spacing:-.9px}.story-sticky{grid-template-columns:1fr;gap:24px}.story-rail{min-height:0;margin-bottom:0}.story-step{padding-bottom:20px}.story-step strong{font-size:17px}.story-step small{font-size:11px}.story-detail p{font-size:13px}.story-contact{display:none!important}.story-stage{border-radius:20px;padding:16px}.story-scenes{height:240px}.story-solution h3{font-size:23px}.story-solution p{font-size:13px}.story-overline{font-size:10px}.story-solution{padding:18px}
 #services{grid-template-columns:1fr;gap:28px;margin-top:35px;margin-bottom:50px}#services .sec-head h2{font-size:27px}.contact.content{padding-top:40px;gap:22px;margin-bottom:0}.contact h2{font-size:35px;letter-spacing:-1.2px}.contact-eyebrow{order:-1;font-size:10px;margin:0}.contact-form-panel{padding:20px}.contact-alternatives{gap:10px;margin:0}.contact-choice{padding:12px 14px}.contact-reassurance{display:flex;flex-wrap:wrap;gap:8px 15px}.contact-reassurance li{font-size:11px}.contact-copy>p{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.story-track{height:auto!important}.story-sticky{position:static}.story-node:after{animation:none!important}.story-before{display:none}.story-after{animation:none!important;opacity:1}.story-pause{display:none}.story-scene,.story-detail,.story-solution{transition:none}}

/* proposition-v5.css */
/* V5 : progression exclusivement liée à la lecture, sans minuterie. */
.journey{max-width:1180px;margin:60px auto 75px;scroll-margin-top:10px}
.journey .sec-head{margin-bottom:38px}
.journey h2{font-size:clamp(28px,3.4vw,40px);line-height:1.12;letter-spacing:-1.4px}
.journey-overline{display:block;font-size:11px;color:var(--accent);font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
.journey-track{--rail-start:20px;--rail-length:0px;--rail-progress:0;--panel-height:450px;--pinned-top:100px}
.journey-sticky{position:relative}
.journey-list{list-style:none;margin:0;padding:0;position:relative;z-index:1}
.journey-line{position:absolute;z-index:0;left:17px;top:var(--rail-start);height:var(--rail-length);width:2px;background:#dfe7f0}
.journey-line b{display:block;width:100%;height:calc(var(--rail-progress)*100%);background:var(--accent)}
.journey-chapter{margin:0 0 35px;min-width:0}
.journey-chapter:last-child{margin-bottom:0}
.journey-copy h3{margin:0}
.journey-trigger{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:18px;background:none;border:0;padding:0;width:100%;text-align:left;color:var(--primary);font-size:20px;font-weight:700;letter-spacing:-.35px;line-height:1.3}
.journey-marker{display:grid;place-items:center;align-self:start;height:38px;width:36px;background:var(--body-bg);font-size:20px;letter-spacing:-.8px;font-weight:600;color:#94a3b7;font-variant-numeric:tabular-nums}
.journey-chapter.is-current .journey-marker,.journey-chapter.is-past .journey-marker{color:var(--accent)}
.journey-copy>p{margin:8px 0 0 54px;font-size:14px;line-height:1.65;color:#626771}
.journey-panel{margin:20px 0 0 54px;background:radial-gradient(ellipse at 100% 0,#226bbb55,transparent 75%),#11243b;padding:17px;border-radius:20px;box-shadow:0 22px 45px -28px #173a6470;overflow:hidden;min-width:0;color:#fff}
.journey-art{height:240px;border-radius:11px;position:relative;overflow:hidden;background:#0b192a}
.journey-answer{padding:20px 4px 4px}
.journey-answer>span{color:#a0c5e9;font-size:10px;font-weight:650;letter-spacing:.07em;text-transform:uppercase}
.journey-answer h4{font-size:24px;line-height:1.15;letter-spacing:-.6px;margin:9px 0 12px;color:#fff}
.journey-answer p{font-size:13px;line-height:1.65;color:#d0dbe9;margin:0}
.journey-director{display:flex;flex-direction:column;justify-content:center;gap:32px;padding:22px;background:radial-gradient(ellipse at 10% 0,#2f67a65c,transparent 80%),#182f4c}
.journey-person{display:flex;align-items:center;justify-content:center;gap:18px}
.journey-person img{width:90px;height:90px;border-radius:50%;object-fit:cover;object-position:center;border:3px solid #ffffff38;box-shadow:0 8px 25px #0002}
.journey-person strong{display:block;font-size:24px;font-weight:650;letter-spacing:-.6px}
.journey-person span{display:block;font-size:12px;color:#c8d8eb;margin-top:8px;max-width:160px;line-height:1.5}
.journey-method{display:flex;align-items:center;justify-content:center;gap:12px}
.journey-method>span{display:grid;justify-items:center;gap:6px;color:#eef5ff;font-size:11px}
.journey-method b{font-size:10px;font-weight:500;color:#99c4f4;letter-spacing:.08em}
.journey-method i{height:1px;width:32px;background:#ffffff36}
.journey-first-scene>img{display:block;width:100%;height:100%;object-fit:cover}
.journey-film-label{position:absolute;inset:auto 0 0;padding:26px 16px 13px;background:linear-gradient(transparent,#020b17d9);color:white;font-size:12px;font-weight:600;z-index:1}
.journey-script{position:absolute;top:17px;left:17px;background:#fcfcf9ed;border-radius:5px;padding:14px;width:117px;box-shadow:0 6px 16px #0002;transform:rotate(-5deg);display:grid;gap:8px;color:#293b50;z-index:1}
.journey-script small{font-size:7px;letter-spacing:.13em;color:#6f8da9}.journey-script b{font-size:10px}.journey-script i{height:2px;background:#c6d1dc;border-radius:2px}.journey-script i:last-child{width:60%}
.journey-roles{display:grid;grid-template-columns:1.5fr 1fr;gap:5px}
.journey-roles>img,.journey-roles>div img{width:100%;height:100%;object-fit:cover;min-height:0}
.journey-roles>div{display:grid;grid-template-rows:1fr 1fr;gap:5px;min-height:0}
.journey-contact{font-size:13px!important;padding:14px 22px!important;margin:24px 0 0 54px}
.journey-contact span{margin-left:12px}
/* Activé par la géométrie réelle : le panneau doit tenir sous le menu. */
.journey.is-pinned .journey-track{height:240svh}
.journey.is-pinned .journey-sticky{position:sticky;top:var(--pinned-top);min-height:var(--panel-height)}
.journey.is-pinned .journey-copy{width:42%}
.journey.is-pinned .journey-chapter{margin-bottom:26px}
.journey.is-pinned .journey-panel{position:absolute;top:0;right:0;width:51%;margin:0;opacity:0;visibility:hidden;pointer-events:none}
.journey.is-pinned .journey-chapter.is-current .journey-panel{opacity:1;visibility:visible;pointer-events:auto}
.journey.is-pinned .journey-copy>p{color:#858c96}
.journey.is-pinned .journey-chapter.is-current .journey-copy>p{color:#626771}
@media(min-width:721px){.journey:not(.is-pinned) .journey-panel{max-width:620px}.journey:not(.is-pinned) .journey-chapter{margin-bottom:45px}}
@media(max-width:720px){
 .journey{margin:40px auto 50px}.journey h2{font-size:28px;letter-spacing:-.9px}.journey .sec-head{margin-bottom:26px}.journey-overline{font-size:10px}
 .journey-trigger{grid-template-columns:30px 1fr;gap:12px;font-size:18px;line-height:1.3}.journey-marker{width:30px;height:34px;font-size:18px}.journey-line{left:14px}
 .journey-copy>p{margin:8px 0 0 42px;font-size:13px;line-height:1.6}
 .journey-panel{margin:15px 0 0 42px;padding:11px;border-radius:15px;box-shadow:0 16px 30px -23px #19395770}
 .journey-art{height:155px;border-radius:8px}.journey-answer{padding:15px 3px 4px}.journey-answer>span{font-size:8px;letter-spacing:.05em}.journey-answer h4{font-size:20px;letter-spacing:-.45px;line-height:1.2;margin:7px 0 9px}.journey-answer p{font-size:12px;line-height:1.65}
 .journey-chapter{margin-bottom:32px}.journey-contact{margin-left:42px;font-size:12px!important;padding:13px 18px!important}
 .journey-director{padding:15px;gap:18px}.journey-person{gap:12px}.journey-person img{width:58px;height:58px;border-width:2px}.journey-person strong{font-size:20px}.journey-person span{font-size:9px;max-width:130px;margin-top:4px}.journey-method{gap:8px}.journey-method i{width:18px}.journey-method>span{font-size:9px;gap:4px}.journey-method b{font-size:8px}
 .journey-film-label{font-size:10px;padding:22px 10px 10px}.journey-script{padding:10px;gap:6px;width:90px;top:10px;left:10px}.journey-script b{font-size:8px}.journey-script small{font-size:6px}
}
@media(max-width:360px){.journey-trigger{font-size:17px}.journey-panel{margin-left:35px}.journey-copy>p{margin-left:42px}.journey-person img{width:48px;height:48px}.journey-director{padding:11px}.journey-person span{max-width:120px}.journey-method{gap:6px}.journey-method i{width:12px}}
@media(prefers-reduced-motion:reduce){.journey *{transition:none!important;animation:none!important}}

/* proposition-v6.css */
/* Une seule réponse courte et un seul média par blocage. */
.journey-compact .journey-panel{display:grid;grid-template-columns:140px minmax(0,1fr);gap:22px;align-items:center;padding:16px;background:#fff;border:1px solid #dce7f2;border-radius:17px;box-shadow:0 12px 32px -24px #19395750;color:var(--primary)}
.journey-compact .journey-thumb{display:block;width:140px;height:160px;object-fit:cover;object-position:center;border-radius:10px;min-width:0}
.journey-compact .journey-portrait{object-position:50% 35%}
.journey-compact .journey-answer{padding:0;min-width:0}
.journey-compact .journey-answer h4{margin:0;color:var(--accent);font-size:26px;line-height:1.2;letter-spacing:-.6px;font-weight:700;text-wrap:balance}
.journey-compact .journey-chapter{margin-bottom:24px}
.journey-compact.is-pinned .journey-chapter{margin-bottom:22px}
.journey-compact.is-pinned .journey-chapter:last-child{margin-bottom:0}
.journey-compact.is-pinned .journey-track{height:calc(var(--panel-height) + clamp(360px,65svh,560px))}
.journey-compact.is-pinned .journey-panel{transition:opacity .14s ease,transform .14s ease;transform:translateY(5px)}
.journey-compact.is-pinned .journey-chapter.is-current .journey-panel{transform:none}
@media(min-width:721px){.journey-compact:not(.is-pinned) .journey-chapter{margin-bottom:30px}.journey-compact:not(.is-pinned) .journey-chapter:last-child{margin-bottom:0}}
@media(max-width:720px){
 .journey-compact .sec-head{margin-bottom:24px}
 .journey-compact .journey-panel{grid-template-columns:78px minmax(0,1fr);padding:10px;gap:12px;margin:10px 0 0 42px;border-radius:12px;box-shadow:0 6px 20px -17px #19395750;min-height:100px}
 .journey-compact .journey-thumb{width:78px;height:78px;border-radius:7px}
 .journey-compact .journey-answer h4{font-size:17px;line-height:1.25;letter-spacing:-.2px;text-wrap:pretty}
 .journey-compact .journey-chapter{margin-bottom:23px}
 .journey-compact .journey-chapter:last-child{margin-bottom:0}
 .journey-compact .journey-contact{margin-top:20px}
}
@media(max-width:360px){.journey-compact .journey-panel{margin-left:35px;grid-template-columns:68px minmax(0,1fr);gap:10px;min-height:90px}.journey-compact .journey-thumb{width:68px;height:68px}}

/* proposition-v9.css */
/* Petites scènes d'interface : aucune image, aucun mouvement automatique. */
.journey-motion.journey-compact .journey-panel{display:flex;flex-direction:column;gap:16px;padding:24px 28px;background:#f5f8fc;border:0;border-radius:16px;box-shadow:none;min-height:252px}
.journey-motion .journey-illustration{--p:var(--art-progress,1);position:relative;isolation:isolate;width:100%;height:158px;flex:none;overflow:hidden}
.journey-motion.journey-compact .journey-answer{width:100%;text-align:center}
.journey-motion.journey-compact .journey-answer h4{color:var(--primary);font-size:23px;line-height:1.25;letter-spacing:-.5px}
.journey-motion .motion-path{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 8px}
.path-line{position:absolute;top:66px;left:12%;right:12%;height:2px;background:#dbe5ef;z-index:-1}
.path-line i{display:block;height:100%;background:var(--accent);transform:scaleX(var(--p));transform-origin:left}
.path-stop{--step:clamp(0,calc((var(--p) - .05)*3),1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;min-width:0;width:30%;padding:14px 4px 12px;background:#fff;border:1px solid #dbe5ef;border-radius:10px;transform:translateY(calc((1 - var(--step))*10px));font-size:14px;line-height:1;font-weight:600;color:var(--primary)}
.path-stop-2{--step:clamp(0,calc((var(--p) - .3)*3),1)}
.path-stop-3{--step:clamp(0,calc((var(--p) - .6)*3),1)}
.path-tick{position:relative;width:30px;height:30px;display:grid;place-items:center;background:#ecf2f9;border-radius:5px;color:var(--accent)}
.path-tick::before{content:attr(data-step);font-size:14px;opacity:calc(1 - var(--step))}
.path-tick svg{position:absolute;display:block;width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:28;stroke-dashoffset:calc((1 - var(--step))*28);opacity:var(--step)}
.motion-film{display:flex;align-items:center;justify-content:center}
.film-script{position:absolute;left:calc(17% + var(--p)*10%);top:27px;width:65px;height:90px;background:#fff;border:1px solid #ccd9e8;border-radius:5px;padding:15px 10px;display:grid;align-content:start;gap:10px;transform:translateX(calc(var(--p)*28px)) rotate(calc(-8deg + var(--p)*8deg));opacity:calc(1 - var(--p)*.85);z-index:-1}
.film-script i{display:block;height:2px;background:#a7bad1;width:100%}.film-script i:nth-child(2n){width:65%}
.film-player{position:relative;width:210px;height:132px;padding:7px 7px 23px;background:#fff;border:1px solid #cbd9e8;border-radius:9px;transform:translateX(calc((1 - var(--p))*32px));overflow:hidden}
.film-picture{position:relative;overflow:hidden;width:100%;height:100%;border-radius:4px;background:linear-gradient(115deg,#dde8f5 0 50%,#aec6e2 50%);opacity:var(--p);clip-path:inset(0 calc((1 - var(--p))*100%) 0 0)}
.film-person{position:absolute;bottom:-15px;width:75px;height:66px;background:#547ba7;border-radius:50% 50% 0 0;transform:translateY(calc((1 - var(--p))*22px))}
.film-person::before{content:"";position:absolute;top:-25px;left:24px;width:28px;height:35px;border-radius:45% 45% 42% 42%;background:inherit}
.person-left{left:-10px;background:#233f60;transform:translateY(calc((1 - var(--p))*22px)) rotate(-8deg)}
.person-right{right:0;background:#527cab;transform:translateY(calc((1 - var(--p))*22px)) rotate(9deg)}
.film-play{position:absolute;left:50%;top:43%;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;transform:translate(-50%,-50%);color:var(--accent);opacity:var(--p)}
.film-play svg{width:19px;height:19px;fill:currentColor}
.film-timeline{position:absolute;bottom:9px;left:8px;right:8px;display:flex;gap:3px;height:6px;background:#edf2f8;border-radius:2px;overflow:hidden}
.film-timeline i{flex:1;background:#93b7df;transform:scaleX(var(--p));transform-origin:left}.film-timeline i:nth-child(2){flex:1.6;background:#326daa}.film-timeline i:last-child{background:#bdd1e8}
.motion-focus{display:flex;align-items:center;justify-content:center}
.focus-card{position:absolute;top:17px;width:104px;height:123px;border:1px solid #d0deed;border-radius:8px;background:#e4edf7;overflow:hidden}
.focus-back-left{transform:translateX(calc(-70px + var(--p)*8px)) rotate(calc(-14deg + var(--p)*7deg));opacity:calc(.8 - var(--p)*.35)}
.focus-back-right{transform:translateX(calc(70px - var(--p)*8px)) rotate(calc(14deg - var(--p)*7deg));opacity:calc(.8 - var(--p)*.35)}
.focus-main{border-color:var(--accent);background:#c7dbef;transform:scale(calc(.85 + var(--p)*.15));z-index:1}
.focus-person{position:absolute;left:50%;bottom:-15px;width:88px;height:77px;border-radius:48% 48% 0 0;background:#9eb7d3;transform:translateX(-50%)}
.focus-person::before{content:"";position:absolute;top:-32px;left:29px;width:31px;height:39px;border-radius:45%;background:inherit}
.focus-main .focus-person{background:#326da9;transform:translateX(-50%) translateY(calc((1 - var(--p))*15px))}
.focus-corner{position:absolute;width:13px;height:13px;border:solid var(--accent);opacity:var(--p);--inset:calc(7px + (1 - var(--p))*20px)}
.corner-tl{top:var(--inset);left:var(--inset);border-width:2px 0 0 2px}.corner-tr{top:var(--inset);right:var(--inset);border-width:2px 2px 0 0}.corner-bl{bottom:var(--inset);left:var(--inset);border-width:0 0 2px 2px}.corner-br{bottom:var(--inset);right:var(--inset);border-width:0 2px 2px 0}
@media(max-width:720px){
 .journey-motion.journey-compact .journey-panel{display:grid;grid-template-columns:104px minmax(0,1fr);padding:12px;gap:12px;min-height:106px;border-radius:10px}
 .journey-motion .journey-illustration{height:82px}
 .journey-motion.journey-compact .journey-answer{text-align:left}
 .journey-motion.journey-compact .journey-answer h4{font-size:17px;line-height:1.25;letter-spacing:-.2px;text-wrap:pretty}
 .journey-motion .motion-path{flex-direction:column;gap:4px;padding:0;justify-content:center}
 .path-stop{flex-direction:row;justify-content:flex-start;width:100%;gap:6px;padding:4px 6px;font-size:13px;border-radius:5px;transform:translateX(calc((1 - var(--step))*4px))}
 .path-tick{width:16px;height:16px;flex:none;border-radius:3px}.path-tick svg{width:14px;height:14px}.path-tick::before{font-size:11px}
 .path-line{left:14px;right:auto;top:8px;height:66px;width:2px}.path-line i{transform:scaleY(var(--p));transform-origin:top}
 .film-script{width:34px;height:52px;top:16px;left:0;padding:8px 6px;gap:7px}
 .film-player{width:98px;height:70px;padding:4px 4px 14px;border-radius:6px;transform:translateX(calc((1 - var(--p))*8px))}
 .film-timeline{height:4px;bottom:5px;left:5px;right:5px;gap:2px}.film-picture{border-radius:2px}
 .film-person{width:44px;height:39px;bottom:-8px}.film-person::before{width:17px;height:21px;top:-16px;left:14px}.person-left{left:-5px}
 .film-play{width:22px;height:22px}.film-play svg{width:15px;height:15px}
 .focus-card{top:7px;width:54px;height:68px;border-radius:5px}
 .focus-back-left{transform:translateX(calc(-28px + var(--p)*4px)) rotate(calc(-14deg + var(--p)*7deg))}.focus-back-right{transform:translateX(calc(28px - var(--p)*4px)) rotate(calc(14deg - var(--p)*7deg))}
 .focus-person{width:53px;height:47px;bottom:-9px}.focus-person::before{width:19px;height:24px;top:-20px;left:18px}
 .focus-corner{width:9px;height:9px;--inset:calc(4px + (1 - var(--p))*10px)}
}
@media(max-width:360px){.journey-motion.journey-compact .journey-panel{grid-template-columns:94px minmax(0,1fr);gap:10px;padding:10px}}
@media(prefers-reduced-motion:reduce){.journey-motion .journey-illustration{--p:1!important}}

/* proposition-v10.css */
/* Finitions de la direction V9 approuvée. Le défilement reste l'unique horloge. */
.journey-motion .journey-illustration{--settle:calc(var(--p)*var(--p)*(3 - 2*var(--p)))}
.journey-motion .path-stop{border-color:color-mix(in srgb,var(--accent) calc(var(--step)*24%),#dbe5ef)}
.journey-motion .path-tick{
  background:color-mix(in srgb,var(--accent) calc(var(--step)*100%),#ecf2f9);
  color:color-mix(in srgb,#fff calc(var(--step)*100%),var(--accent));
  transform:scale(calc(.9 + var(--step)*.1));
}
.journey-motion .film-timeline i{--clip:clamp(0,calc(var(--p)*3),1);transform:scaleX(var(--clip))}
.journey-motion .film-timeline i:nth-child(2){flex:1;--clip:clamp(0,calc(var(--p)*3 - 1),1)}
.journey-motion .film-timeline i:nth-child(3){--clip:clamp(0,calc(var(--p)*3 - 2),1)}
.journey-motion .film-timeline::after{content:"";position:absolute;top:0;bottom:0;left:calc(var(--p)*(100% - 2px));width:2px;background:#163c65}
.journey-motion .film-play{transform:translate(-50%,-50%) scale(calc(.8 + var(--settle)*.2))}
.journey-motion .focus-main{border-color:color-mix(in srgb,var(--accent) calc(var(--settle)*100%),#a5bed9)}
.journey-motion .focus-corner{--inset:calc(7px + (1 - var(--settle))*20px);opacity:var(--settle)}
@media(max-width:720px){.journey-motion .focus-corner{--inset:calc(4px + (1 - var(--settle))*10px)}}

/* about-v11.css */
/* Un portrait réel, le texte existant et un appel compact vers le contact. */
#a-propos.about-v11{max-width:1120px;margin-top:56px;margin-bottom:68px}
#a-propos .about-layout{display:grid;grid-template-columns:clamp(240px,22vw,280px) minmax(0,1fr);grid-template-areas:"portrait heading" "portrait copy";column-gap:clamp(30px,4vw,56px);row-gap:16px;align-items:start}
#a-propos .about-portrait{grid-area:portrait;width:100%;max-width:280px;align-self:start;border:0;border-radius:18px;padding:0;background:none;overflow:hidden;cursor:zoom-in}
#a-propos .about-portrait .contact-photo{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border:0;border-radius:18px;box-shadow:none;transform:none;transition:none}
#a-propos .about-heading{grid-area:heading;min-width:0}
#a-propos .about-heading h2{margin:0;color:var(--primary);font-size:clamp(28px,3vw,36px);font-weight:700;line-height:1.12;letter-spacing:-1px}
#a-propos .about-role{margin:10px 0 0;font-size:15px;font-weight:600;line-height:1.4;color:var(--accent)}
#a-propos .about-copy{grid-area:copy;min-width:0;max-width:67ch}
#a-propos .about-copy>p{margin:0;font-size:15px;line-height:1.8;color:#505967}
#a-propos .about-copy>.about-journey{margin-top:18px}
#a-propos .about-journey a{display:inline-block;color:var(--accent);font-size:14px;font-weight:600;line-height:1.5;text-decoration:none;text-underline-offset:4px}
#a-propos .about-journey a:hover{text-decoration:underline}
#a-propos .about-invite{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;margin-top:32px;padding:24px 28px;background:#f5f8fc;border:1px solid #e0e8f1;border-radius:18px}
#a-propos .about-invite h3{margin:0 0 7px;color:var(--primary);font-size:22px;font-weight:700;line-height:1.2;letter-spacing:-.5px}
#a-propos .about-invite p{max-width:58ch;margin:0;font-size:14px;line-height:1.6;color:#505967}
#a-propos .about-invite .btn-dark{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:13px 23px;font-size:14px;line-height:1.3;white-space:nowrap}
#a-propos .about-portrait:focus-visible,#a-propos .about-journey a:focus-visible,#a-propos .about-invite .btn-dark:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:720px){
  #a-propos.about-v11{margin-top:40px;margin-bottom:44px}
  #a-propos .about-layout{grid-template-columns:108px minmax(0,1fr);grid-template-areas:"portrait heading" "copy copy";column-gap:18px;row-gap:22px;align-items:center}
  #a-propos .about-portrait{width:108px;border-radius:16px}
  #a-propos .about-portrait .contact-photo{border-radius:16px}
  #a-propos .about-heading h2{font-size:26px;line-height:1.12;letter-spacing:-.7px}
  #a-propos .about-role{margin-top:8px;font-size:14px}
  #a-propos .about-copy>p{font-size:14px;line-height:1.75}
  #a-propos .about-copy>.about-journey{margin-top:16px}
  #a-propos .about-invite{grid-template-columns:1fr;gap:16px;margin-top:26px;padding:20px;border-radius:16px}
  #a-propos .about-invite h3{font-size:21px;line-height:1.2}
  #a-propos .about-invite p{font-size:14px;line-height:1.65}
  #a-propos .about-invite .btn-dark{justify-self:start}
}
@media(max-width:360px){
  #a-propos .about-layout{grid-template-columns:104px minmax(0,1fr);column-gap:14px}
  #a-propos .about-portrait{width:104px}
  #a-propos .about-heading h2{font-size:24px}
  #a-propos .about-role{font-size:13px}
  #a-propos .about-invite{padding:18px}
}

/* proposition-v11.css */
/* Revue de la page complète : identité existante, modules plus lisibles. */
.skip-link{position:fixed;left:16px;top:12px;z-index:200;background:#111;color:#fff;padding:12px 18px;border-radius:8px;transform:translateY(-180%);text-decoration:none}
.skip-link:focus{transform:none}
#portfolio,#temoignages{max-width:1180px}
#portfolio{margin-top:54px}
#portfolio .reel{width:clamp(260px,calc((100vw - 160px)/3),350px)}
#portfolio .reel-thumb{border-radius:14px}
#portfolio .reel h3{padding:0 2px;font-size:15px}
#portfolio .carousel-controls,#temoignages .carousel-controls{flex-direction:row;justify-content:space-between;gap:20px;margin-top:20px;flex-wrap:wrap}
#temoignages .testi-carousel{grid-template-rows:1fr;align-items:stretch}
#temoignages .testi-card{width:350px;padding:20px;gap:18px;border-radius:16px;align-items:flex-start;box-shadow:none}
#temoignages .testi-photo{width:72px;height:108px}
#temoignages .testi-quote{font-size:14px;font-weight:500;line-height:1.55;margin-bottom:16px}
#temoignages .testi-name{font-size:14px}
#temoignages .testi-role{font-size:10px}
#services{max-width:1120px;gap:64px;margin-top:52px;margin-bottom:76px}
#services .sec-head h2{font-size:32px;line-height:1.18}
#services .sec-head p{color:#626771}
#services .service-card{padding:22px 0}
#services .service-card h3{font-size:16px}
#services .service-card p{font-size:14px;color:#626771;line-height:1.6}
#pricing{max-width:1240px;margin-bottom:76px}
#pricing .pricing-grid{gap:18px;align-items:stretch}
#pricing .pack{padding:28px 24px 24px;border-width:1.5px;border-radius:20px;box-shadow:0 12px 30px -22px #173d6840}
#pricing .pack.popular{box-shadow:0 12px 30px -20px #0071e34d}
#pricing .pack-icon{margin-bottom:12px}
#pricing .pack h3{font-size:24px;line-height:1.25;margin-bottom:12px}
#pricing .price{font-size:38px}
#pricing .price-line{gap:10px}
#pricing .pack .tagline{font-size:14.5px;color:#626771;min-height:4.5em;line-height:1.5;margin-bottom:20px}
#pricing .feat-list{flex:1;gap:12px;margin-bottom:20px}
#pricing .feat-list li{font-size:14px;line-height:1.55}
#pricing .toggle-details{margin:4px auto 18px}
#pricing .pack-details .pd-list li{font-size:14px;line-height:1.55}
#pricing .pack-cta{min-height:50px;height:50px;padding:0 12px;border-radius:12px;line-height:1.3}
#pricing .pack-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-width:480px;margin:0 auto 28px}
#pricing .pack-tab{padding:12px 5px;font-size:13px;border-radius:10px}
@media(min-width:960px){
 #pricing .pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1160px}
 #pricing .pricing-grid .pack{display:flex}
 #pricing .pack-tabs{display:none!important}
}
@media(min-width:1200px){#pricing .pack .tagline{min-height:3em}}
@media(max-width:959px){
 #pricing .pricing-grid{grid-template-columns:1fr;max-width:480px}
 #pricing .pack .tagline{min-height:0}
}
#faq{max-width:1120px;display:grid;grid-template-columns:minmax(220px,1fr) minmax(0,1.8fr);gap:64px;align-items:start;margin-bottom:76px}
#faq .sec-head{align-items:flex-start;text-align:left;margin:0}
#faq .divider{margin-left:0}
#faq .sec-head h2{font-size:34px;line-height:1.15}
#faq .faq-list{gap:12px}
#faq .faq-item{border-radius:12px;box-shadow:none}
#faq .faq-item summary{min-height:64px;font-size:15px;line-height:1.45;padding:20px}
#faq .faq-item[open]{border-color:#b4cdeb}
#faq .faq-answer{font-size:14px;line-height:1.7;padding:0 20px 20px}
.selected-pack{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:22px;background:#eff5fd;border:1px solid #d5e5f8;border-radius:10px;color:#17446f}
.selected-pack small{display:block;font-size:11px;margin-bottom:3px;color:#527191}
.selected-pack strong{font-size:14px;line-height:1.4}
.selected-pack button{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:8px;border:0;background:transparent;color:#315c86;border-radius:7px}
.selected-pack button:hover{background:#dceafa}
.selected-pack svg{display:block;width:20px;height:20px}
.footer-inner{max-width:1180px;gap:24px;flex-wrap:wrap}
.footer-links{gap:16px 20px}
.footer-links a{font-size:12px;color:#626771}
@media(max-width:720px){
 #portfolio{margin-top:36px}
 #portfolio .reel{width:min(82vw,330px)}
 #portfolio .carousel-controls,#temoignages .carousel-controls{justify-content:center;gap:14px}
 #temoignages .testi-card{width:min(86vw,330px);padding:16px;gap:14px}
 #temoignages .testi-photo{width:64px;height:96px}
 #temoignages .testi-quote{font-size:14px;line-height:1.5}
 #services{gap:28px;margin-top:38px;margin-bottom:52px}
 #services .sec-head h2{font-size:27px}
 #services .service-card h3{font-size:15px}
 #pricing{margin-bottom:50px}
 #pricing .pack{padding:26px 22px 22px}
 #pricing .pack h3{font-size:23px}
 #pricing .pack-badge{font-size:10px;top:-12px}
 #faq{grid-template-columns:1fr;gap:26px;margin-bottom:46px}
 #faq .sec-head{align-items:center;text-align:center}
 #faq .divider{margin-left:auto}
 #faq .sec-head h2{font-size:28px}
 #faq .faq-item summary{font-size:14px;padding:18px}
 #faq .faq-answer{font-size:14px;padding:0 18px 18px}
 .footer-bar{margin-top:20px;padding:28px 0}
}

.testi-photo .testi-portrait{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.testi-card:has(.testi-portrait):hover .play-mini{opacity:1}


/* carousels-v11.css */
/* Ajustements demandés après V11 : pistes bornées, commandes symétriques. */
#portfolio,#temoignages{
  --carousel-gap:16px;
  --carousel-arrow-size:44px;
  max-width:1180px;
  min-width:0;
}
#portfolio .carousel,#temoignages .testi-carousel{
  min-width:0;
  width:100%;
  margin-inline:0;
  padding:4px 0 6px;
  gap:var(--carousel-gap);
  scroll-padding-inline:0;
  scroll-snap-type:x mandatory;
  overflow-x:auto;
  overflow-y:hidden;
}
#portfolio .reel,#temoignages .testi-card{scroll-snap-align:start;min-width:0}
#portfolio .carousel.grabbing,#temoignages .testi-carousel.grabbing{scroll-snap-type:none;scroll-behavior:auto}
#portfolio .reel{width:auto;flex:0 0 calc((100% - var(--carousel-gap))/2)}
#temoignages .testi-carousel{
  grid-template-rows:1fr;
  grid-auto-columns:calc((100% - var(--carousel-gap))/2);
}
#temoignages .testi-card{width:auto;height:100%;align-items:flex-start}
#temoignages .testi-card>div{min-width:0}
#portfolio .reel-thumb{margin-bottom:12px}
#portfolio .reel h3{padding:0 2px;line-height:1.45}
#portfolio .carousel-controls,#temoignages .carousel-controls{
  justify-content:center;
  align-items:center;
  gap:18px;
  margin-top:16px;
}
#portfolio .carousel-arrows,#temoignages .carousel-arrows{gap:16px;justify-content:center}
#portfolio .carousel-arrows button,#temoignages .carousel-arrows button{
  display:grid;
  place-items:center;
  width:var(--carousel-arrow-size);
  height:var(--carousel-arrow-size);
  min-width:var(--carousel-arrow-size);
  min-height:var(--carousel-arrow-size);
  flex:none;
  padding:0;
  color:#4b5868;
  border:1px solid #e1e6ed;
  border-radius:50%;
  background:#fff;
  transition:color .18s ease,border-color .18s ease,background .18s ease;
}
#portfolio .carousel-arrows button:hover:not(:disabled),#temoignages .carousel-arrows button:hover:not(:disabled){color:var(--accent);border-color:#a8c8ef;background:#eff5fd}
#portfolio .carousel-arrows button:disabled,#temoignages .carousel-arrows button:disabled{opacity:.3;cursor:default}
#portfolio .carousel-arrows button:focus-visible,#temoignages .carousel-arrows button:focus-visible{outline:2px solid var(--accent)!important;outline-offset:3px}
#portfolio .progress-track,#temoignages .progress-track{width:100px;background:#e8edf3}
#portfolio .progress-thumb,#temoignages .progress-thumb{background:var(--accent);transition:left .16s linear}
#portfolio .carousel:focus-visible,#temoignages .testi-carousel:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:4px}
/* Les deux flèches occupent les mêmes colonnes ; leur position suit la piste. */
@media(min-width:721px){
  #portfolio,#temoignages{
    display:grid;
    grid-template-columns:var(--carousel-arrow-size) minmax(0,1fr) var(--carousel-arrow-size);
    column-gap:12px;
  }
  #portfolio>.sec-head,#temoignages>.sec-head{grid-column:1/-1;grid-row:1}
  #portfolio>.carousel,#temoignages>.testi-carousel{grid-column:2;grid-row:2}
  #portfolio>.carousel-controls,#temoignages>.carousel-controls,
  #portfolio .carousel-arrows,#temoignages .carousel-arrows{display:contents}
  #portfolio [data-carousel],#temoignages [data-carousel]{grid-row:2;align-self:center;transform:translateY(var(--carousel-arrow-shift,0px))}
  #portfolio [data-dir="left"],#temoignages [data-dir="left"]{grid-column:1}
  #portfolio [data-dir="right"],#temoignages [data-dir="right"]{grid-column:3}
  #portfolio .progress-track,#temoignages .progress-track{grid-column:2;grid-row:3;justify-self:center;margin-top:16px}
  #portfolio .carousel-controls>.btn-dark{grid-column:1/-1;grid-row:4;justify-self:center;margin-top:24px}
}
@media(min-width:1100px){
  #portfolio .reel{flex-basis:calc((100% - 2*var(--carousel-gap))/3)}
  #temoignages .testi-carousel{grid-auto-columns:calc((100% - 2*var(--carousel-gap))/3)}
}
/* Sur téléphone, conserver toute la largeur de lecture et les commandes au centre. */
@media(max-width:720px){
  #portfolio .carousel,#temoignages .testi-carousel{padding-bottom:5px}
  #portfolio .reel{width:auto;flex-basis:100%}
  #temoignages .testi-carousel{grid-auto-columns:100%}
  #temoignages .testi-card{width:auto;padding:18px;gap:14px}
  #temoignages .testi-photo{width:64px;height:96px}
  #portfolio .carousel-controls,#temoignages .carousel-controls{flex-direction:column;gap:20px;margin-top:16px}
  #portfolio .carousel-controls>.btn-dark{margin:0}
}
@media(max-width:359px){
  #temoignages .testi-card{padding:15px;gap:12px}
  #temoignages .testi-photo{width:56px;height:84px}
}
@media(prefers-reduced-motion:reduce){
  #portfolio .progress-thumb,#temoignages .progress-thumb{transition:none}
}

/* problems-flow-v11.css */
/* V11 ajustée : un seul cadre de lecture, titre compris, sans bloquer la page. */
#problemes{max-width:1180px;margin:64px auto;scroll-margin-top:0}
#problemes .sec-head{margin:0 0 32px}
#problemes .journey-layout{position:relative;min-width:0}
#problemes .journey-track{height:auto}
#problemes .journey-sticky{position:relative;min-height:0}
#problemes .journey-line{left:17px}
#problemes .journey-trigger{min-height:44px;border-radius:8px;transition:color .16s ease}
#problemes .journey-trigger:hover{color:var(--accent)}
#problemes .journey-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
#problemes .journey-chapter.is-current .journey-trigger{color:var(--accent)}
#problemes .journey-marker{background:var(--body-bg);transition:color .16s ease}
#problemes.is-pinned .journey-track{height:calc(var(--frame-height) + var(--scroll-travel))}
#problemes.is-pinned .journey-sticky{position:sticky;top:var(--pinned-top);min-height:var(--frame-height)}
#problemes.is-pinned .journey-layout{min-height:var(--layout-height)}
#problemes.is-pinned .journey-copy{width:44%}
#problemes.is-pinned .journey-panel{top:0;width:50%;min-height:252px}
#problemes.is-pinned .journey-panel{transform:translateY(10px);transition:opacity .28s ease,transform .32s cubic-bezier(.2,0,0,1),visibility 0s linear .28s}
#problemes.is-pinned .journey-chapter.is-past .journey-panel{transform:translateY(-10px)}
#problemes.is-pinned .journey-chapter.is-current .journey-panel{transform:none;transition-delay:0s}
#problemes.is-pinned .journey-contact{margin-top:24px}
#problemes .journey-panel{transition:opacity .16s ease,transform .16s ease}
#services{max-width:1180px;margin-top:64px}
/* Le bloc suivant reste visible sous le récit, au lieu d’être repoussé par sa piste. */
.journey-sequence.is-linked{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;position:relative;max-width:1180px;margin:64px auto 76px;min-height:calc(var(--frame-height) + var(--scroll-travel) + var(--follow-gap) + var(--follow-height))}
.journey-sequence.is-linked #problemes{grid-area:1/1;align-self:start;width:100%;margin:0}
.journey-sequence.is-linked #services{grid-area:1/1;align-self:start;position:sticky;top:calc(var(--pinned-top) + var(--frame-height) + var(--follow-gap));width:100%;height:auto;margin:calc(var(--frame-height) + var(--follow-gap)) auto 0}
@media(min-width:721px){
 #problemes:not(.is-pinned) .journey-chapter{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:36px;align-items:center;margin-bottom:24px}
 #problemes:not(.is-pinned) .journey-panel{position:relative;width:auto;max-width:none;margin:0;min-height:224px}
 #problemes:not(.is-pinned) .journey-contact{margin-top:28px}
}
@media(max-width:720px){
 #problemes{margin:48px auto;scroll-margin-top:0}
 #problemes .sec-head{margin-bottom:28px}
 #problemes .journey-line{left:14px}
 #problemes .journey-trigger{min-height:44px}
 #problemes .journey-panel{margin-top:12px}
 #services{margin-top:48px}
}
@media(prefers-reduced-motion:reduce){#problemes *{transition:none!important}}

/* journey-design-v11.css */
/* V11 ajustée : hiérarchie et confiance, sans changer la course de lecture. */
#problemes .journey-overline{color:#35648e;letter-spacing:.1em}
#problemes #problems-title{color:var(--primary);text-wrap:balance}
#problemes .journey-trigger{
  color:#536172;
  transition:color .2s ease;
}
#problemes .journey-trigger:hover{color:#005fbe}
#problemes .journey-trigger>span:last-child{font-weight:700}
#problemes .journey-chapter.is-current .journey-trigger{color:#123c67}
#problemes .journey-chapter.is-current .journey-trigger>span:last-child{font-weight:700}
#problemes .journey-marker{
  color:#718096;
  background:var(--body-bg);
  border-radius:6px;
  font-weight:650;
  transition:color .2s ease,background .2s ease,box-shadow .2s ease;
}
#problemes .journey-chapter.is-current .journey-marker{
  color:#fff;
  background:var(--accent);
  box-shadow:0 4px 12px -5px #0071e37a;
}
#problemes .journey-chapter.is-past .journey-marker{color:#005ebc;background:#edf5fe}
#problemes .journey-line{background:#d6e3f1;border-radius:3px}
#problemes .journey-line b{
  border-radius:3px;
  background:linear-gradient(180deg,#67a9ed,var(--accent));
  box-shadow:0 0 0 2px #0071e308;
}
#problemes.journey-motion.journey-compact .journey-panel{
  background:#fff;
  border:1px solid #d8e5f3;
  border-radius:18px;
  box-shadow:0 14px 34px -27px #173d6880,inset 0 3px 0 #e9f3ff;
}
#problemes .journey-illustration{
  background:#f4f8fd;
  border:1px solid #e7eef7;
  border-radius:10px;
}
#problemes.journey-motion.journey-compact .journey-answer h4{
  color:#143b60;
  font-weight:700;
  line-height:1.3;
  letter-spacing:-.45px;
  text-wrap:balance;
}
#problemes .path-stop{color:#173d65;border-color:#d4e2f2;box-shadow:0 4px 10px -8px #254e7b66}
#problemes .film-player{border-color:#b9cfe7;box-shadow:0 8px 18px -14px #173d6870}
#problemes .film-script{border-color:#c8d9eb}
#problemes .focus-main{box-shadow:0 6px 14px -10px #173d6870}
/* Les services gardent leurs contenus et leur géométrie ; le ton visuel se prolonge. */
#services .sec-head h2{color:var(--primary);text-wrap:balance}
#services .sec-head p,#services .service-card p{color:#536172}
#services .service-card{border-color:#dce6f1;box-shadow:0 10px 24px -24px #173d6860}
#services .service-card h3{color:#173d65}
/* Deux sections distinctes sur PC : les services ont leur propre bandeau. */
@media(min-width:1000px){
  .journey-sequence #services{
    padding-top:24px;
    padding-bottom:24px;
    background:#f0f5fb;
    border:1px solid #d4e1ef;
    border-top:3px solid #c6dcf2;
    border-radius:18px;
  }
}
@media(max-width:720px){
  #problemes .journey-trigger>span:last-child{font-weight:700}
  #problemes .journey-chapter.is-current .journey-trigger>span:last-child{font-weight:700}
  #problemes.journey-motion.journey-compact .journey-panel{
    border-radius:12px;
    box-shadow:0 8px 20px -20px #173d6880,inset 0 2px 0 #e9f3ff;
  }
  #problemes .journey-illustration{border-radius:7px}
  #problemes.journey-motion.journey-compact .journey-answer h4{line-height:1.3;letter-spacing:-.2px;text-wrap:pretty}
}
@media(prefers-reduced-motion:reduce){
  #problemes .journey-trigger,#problemes .journey-marker{transition:none}
}
@media(max-width:360px){
  #problemes .journey-answer h4{hyphens:auto;overflow-wrap:anywhere}
}

/* budget-scene-v11.css */
/* Mini-scène budget : le défilement pose la carte, sans minuterie. */
#problemes .motion-budget{
  --budget-p:var(--art-progress,1);
  --budget-settle:calc(var(--budget-p)*var(--budget-p)*(3 - 2*var(--budget-p)));
  display:flex;
  align-items:center;
  justify-content:center;
}
#problemes .motion-budget .budget-sheet{
  position:relative;
  width:196px;
  height:116px;
  flex:none;
  background:#fff;
  border:1.5px solid #8eb6e2;
  border-radius:9px;
  box-shadow:0 10px 22px -18px #173d6870;
  transform:translateY(calc((1 - var(--budget-settle))*12px)) rotate(calc((1 - var(--budget-settle))*-4deg));
}
#problemes .motion-budget .budget-script{
  position:absolute;
  top:17px;
  left:18px;
  width:76px;
  display:grid;
  gap:7px;
}
#problemes .motion-budget .budget-script i{
  display:block;
  height:3px;
  border-radius:2px;
  background:#a7bfd9;
  transform:scaleX(clamp(.35,calc(var(--budget-p)*1.4),1));
  transform-origin:left;
}
#problemes .motion-budget .budget-script i:nth-child(2){width:75%}
#problemes .motion-budget .budget-script i:nth-child(3){width:50%}
#problemes .motion-budget .budget-price{
  position:absolute;
  right:17px;
  bottom:14px;
  color:#0064c9;
  font-size:34px;
  line-height:1;
  letter-spacing:-1px;
  font-weight:750;
  white-space:nowrap;
  transform:translateY(calc((1 - var(--budget-settle))*5px));
}
#problemes .motion-budget .budget-price span{font-size:.76em;letter-spacing:0}
@media(max-width:720px){
  #problemes .motion-budget .budget-sheet{width:90px;height:66px;border-radius:6px;transform:translateY(calc((1 - var(--budget-settle))*5px)) rotate(calc((1 - var(--budget-settle))*-3deg))}
  #problemes .motion-budget .budget-script{top:9px;left:10px;width:37px;gap:4px}
  #problemes .motion-budget .budget-script i{height:2px}
  #problemes .motion-budget .budget-price{right:9px;bottom:8px;font-size:23px;letter-spacing:-.7px;transform:none}
}
@media(prefers-reduced-motion:reduce){
  #problemes .motion-budget{--budget-p:1}
}

/* checks-motion-v11.css */
/* Trois coches successives : le défilement est leur seule horloge. */
#problemes .motion-path{--checks:clamp(0,var(--check-progress,0),1)}
#problemes .motion-path .path-stop{
  --step:clamp(0,calc(var(--checks)*3),1);
  --pop:calc(var(--step)*(1 - var(--step))*4);
  border-color:color-mix(in srgb,var(--accent) calc(var(--step)*55%),#d4e2f2);
  transform:translateY(calc((1 - var(--step))*6px));
}
#problemes .motion-path .path-stop-2{--step:clamp(0,calc(var(--checks)*3 - 1),1)}
#problemes .motion-path .path-stop-3{--step:clamp(0,calc(var(--checks)*3 - 2),1)}
#problemes .motion-path .path-tick{
  background:color-mix(in srgb,var(--accent) calc(var(--step)*100%),#e9f0f8);
  color:color-mix(in srgb,#fff calc(var(--step)*100%),var(--accent));
  transform:scale(calc(.92 + var(--step)*.08 + var(--pop)*.16));
}
#problemes .motion-path .path-tick::before{opacity:calc(1 - var(--step))}
#problemes .motion-path .path-tick svg{
  stroke-width:2.6;
  stroke-dasharray:28;
  stroke-dashoffset:calc((1 - var(--step))*28);
  opacity:clamp(0,calc(var(--step)*2),1);
}
#problemes .motion-path .path-line i{transform:scaleX(var(--checks));transform-origin:left}
#problemes .motion-path .path-stop,
#problemes .motion-path .path-tick,
#problemes .motion-path .path-tick svg,
#problemes .motion-path .path-line i{animation:none;transition:none}
@media(max-width:720px){
  #problemes .motion-path{padding:0;gap:4px;justify-content:center}
  #problemes .motion-path .path-stop{
    flex:none;
    padding:3px 6px;
    height:24px;
    font-size:13px;
    line-height:1;
    transform:none;
  }
  #problemes .motion-path .path-tick{width:16px;height:16px}
  #problemes .motion-path .path-line i{transform:scaleY(var(--checks));transform-origin:top}
}
@media(prefers-reduced-motion:reduce){#problemes .motion-path{--checks:1}}

/* corrections-v12.css */
/* Ajustements demandés après publication. */
#portfolio .carousel-controls > .btn-dark{white-space:nowrap;max-width:100%;text-align:center}
#problemes .journey-current-price{white-space:nowrap}
#problemes .journey-original-price{display:block;margin-top:8px;font-size:.58em;font-weight:500;line-height:1.4;letter-spacing:0;color:#626771}
#problemes .journey-original-price s{white-space:nowrap;text-decoration-thickness:1px}
@media(max-width:720px){
  #main h2{text-align:center}
  #main .sec-head{align-items:center;text-align:center}
  #main .sec-head .divider{margin-left:auto;margin-right:auto}
  #contact .contact-copy h2{margin-left:auto;margin-right:auto}
}

.cmxr-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#wpadminbar~.nav{top:32px}@media(max-width:782px){#wpadminbar~.nav{top:46px}}
