
/* V38 — quality target 9/10 */
.v17-header nav{display:flex;align-items:center}
.v17-nav{display:flex;align-items:center}
.solutions-menu,.solutions-trigger{height:44px}
.solutions-trigger{justify-content:center;vertical-align:middle}
.footer-share{display:inline-flex;align-items:center;min-height:44px;margin-top:8px;padding:8px 0;border:0;background:none;color:#aaa;font:inherit;cursor:pointer}
.footer-share:hover,.footer-share:focus-visible{color:#ffd45a}
.footer-bottom{justify-content:space-between;align-items:center}
.footer-bottom a{color:#aaa}.footer-bottom a:hover{color:#ffd45a}
.privacy-check{display:flex!important;gap:10px;align-items:flex-start;margin:4px 0 8px;color:#b8b8c0;font-size:13px;line-height:1.5}
.privacy-check input{width:18px;height:18px;min-width:18px;margin-top:2px;accent-color:#ffd45a}
.privacy-check a{color:#ffd45a;text-decoration:underline;text-underline-offset:3px}
.local-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:30px 0}
.local-grid a{display:flex;flex-direction:column;gap:10px;min-height:145px;padding:24px;border:1px solid #303038;border-radius:20px;background:linear-gradient(145deg,#101014,#09090b);transition:.25s}
.local-grid a:hover{transform:translateY(-3px);border-color:#ffd45a80}
.local-grid b{font:700 24px Syne;color:#fff}.local-grid span{color:#aaa;line-height:1.55}
.local-cta{margin-top:10px}
.mobile-first-case .mock{display:flex;align-items:center;justify-content:center;gap:56px;padding:26px}
.mobile-first-case .bmtpi-backdrop{position:relative;display:flex;flex-direction:column;justify-content:center;width:min(52%,420px);height:220px;padding:30px;border:1px solid #3a1b20;border-radius:22px;background:radial-gradient(circle at 70% 25%,#e81b2d24,transparent 42%),linear-gradient(145deg,#121216,#08090b);box-shadow:0 25px 55px #0009}
.mobile-first-case .bmtpi-backdrop span{font:800 clamp(42px,6vw,76px) Syne;letter-spacing:-.06em;color:#fff}
.mobile-first-case .bmtpi-backdrop small{margin-top:8px;color:#e81b2d;font-size:11px;letter-spacing:.22em}
.realisations-section .project-bmtpi .phone{position:relative;left:auto;bottom:auto;transform:none;flex:none}
.giant-word{max-width:94vw;white-space:nowrap;text-align:center}
.journey-step{max-width:min(420px,calc(100vw - 64px))}
.journey-step h3{overflow-wrap:anywhere}
.word-2,.word-3{font-size:clamp(54px,9vw,138px)!important}
:where(a,button,input,textarea,summary):focus-visible{outline:3px solid #ffd45a;outline-offset:4px}
.legal-page{max-width:980px}.legal-page>a:first-child{display:inline-block;margin-bottom:40px}
.legal-card{margin:30px 0;padding:clamp(22px,4vw,42px);border:1px solid #303038;border-radius:24px;background:#0b0b0e}
.legal-card h2{margin:28px 0 10px;font:700 22px Syne;color:#fff}.legal-card h2:first-child{margin-top:0}
.legal-card p{color:#b8b8c0;line-height:1.75}.legal-card a{color:#ffd45a;text-decoration:underline;text-underline-offset:3px}
.simple-header{position:sticky;top:0;z-index:20;background:#050507e8;border-bottom:1px solid #1d1d22;backdrop-filter:blur(16px)}
.simple-nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.simple-nav img{width:170px;height:auto}.local-hero{padding-top:110px}
.local-point{min-height:120px;padding:24px;border:1px solid #303038;border-radius:20px;background:#0b0b0e;display:flex;align-items:end}
.local-point b{font:700 20px Syne}
@media(max-width:980px){
  .local-grid{grid-template-columns:1fr}
  .mobile-first-case .mock{gap:20px;padding:16px}
  .mobile-first-case .bmtpi-backdrop{width:58%;height:180px;padding:20px}
}
@media(max-width:620px){
  .mobile-first-case .bmtpi-backdrop{display:none}
  .mobile-first-case .mock{padding:0}
  .footer-bottom{align-items:flex-start}
  .simple-nav .btn{font-size:12px;padding:10px 12px}.simple-nav img{width:145px}
}


/* V39 — univers interactif prioritaire */
html:not(.motion-static) .universe-sticky::before{
  content:"";position:absolute;z-index:0;right:-6vw;top:10vh;width:min(58vw,820px);aspect-ratio:1;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 35% 28%,rgba(255,213,90,.22),rgba(255,184,50,.06) 34%,rgba(255,11,120,.09) 59%,transparent 71%);
  filter:blur(10px);opacity:.42;
}
html:not(.motion-static) #universe-canvas{opacity:1;transition:opacity .45s ease}
/* V41 — partage visible sur desktop */
.desktop-share{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 15px;margin-left:auto;margin-right:10px;border:1px solid #3a3a42;border-radius:999px;background:#0b0b0e;color:#d7d7dc;font:600 13px Syne;cursor:pointer;transition:.2s}
.desktop-share:hover,.desktop-share:focus-visible{border-color:#ffd45a;color:#ffd45a;background:#121216}
@media(max-width:980px){.desktop-share{display:none}}


/* V44 — logo GIF dans le cartouche du header */
.header-actions{display:flex;align-items:center;gap:12px;margin-left:auto}
.header-gif-badge{display:flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:54px;padding:8px 12px;border-radius:18px;border:1px solid rgba(255,212,90,.28);background:linear-gradient(145deg,rgba(12,12,14,.98),rgba(8,8,10,.94));box-shadow:0 10px 30px rgba(0,0,0,.32),inset 0 0 0 1px rgba(255,255,255,.03);overflow:hidden}
.header-gif-badge img{display:block;width:178px;max-width:100%;height:auto;object-fit:contain}
.simple-actions{display:flex;align-items:center;gap:14px;margin-left:auto}
.simple-actions .header-gif-badge{min-height:52px;padding:7px 11px}
.simple-actions .header-gif-badge img{width:170px}
@media(max-width:1150px) and (min-width:981px){.header-gif-badge img{width:152px}.simple-actions .header-gif-badge img{width:148px}}
@media(max-width:980px){.header-actions{gap:10px}.header-gif-badge{padding:7px 10px;border-radius:16px;min-height:50px}.header-gif-badge img{width:146px}.simple-actions .btn{display:none}.simple-actions .header-gif-badge img{width:146px}}
@media(max-width:540px){.header-gif-badge{padding:6px 9px;border-radius:14px}.header-gif-badge img{width:118px}.simple-actions .header-gif-badge img{width:118px}}

/* V48 — ancien logo fixe restauré */
.header-gif-badge{display:none!important}

/* V50 — profondeur éditoriale des pages locales */
.local-longcopy{max-width:980px;line-height:1.85}
.local-grid-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.local-depth .local-point{min-height:120px;display:flex;align-items:flex-end}
@media(max-width:980px){.local-grid-five{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.local-grid-five{grid-template-columns:1fr}.local-depth .local-point{min-height:auto}}

/* V52 — loader réel synchronisé au chargement de l'univers */
html.loader-lock,html.loader-lock body{overflow:hidden!important}
.pom-loader{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:#050507;opacity:1;visibility:visible;transition:opacity .55s ease,visibility .55s ease}
.pom-loader::before{content:"";position:absolute;inset:-25%;background:radial-gradient(circle at 35% 45%,rgba(255,48,122,.10),transparent 28%),radial-gradient(circle at 66% 52%,rgba(255,205,74,.11),transparent 30%);filter:blur(28px);animation:pomLoaderAura 3.4s ease-in-out infinite alternate;pointer-events:none}
.pom-loader__inner{position:relative;width:min(520px,82vw);text-align:center}
.pom-loader__logo{display:block;width:min(310px,68vw);height:auto;margin:0 auto 34px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(255,211,83,.15))}
.pom-loader__meta{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:12px}.pom-loader__meta span{font:600 10px/1.2 Inter,sans-serif;letter-spacing:.28em;color:#8e8e97;text-align:left}.pom-loader__meta strong{font:800 clamp(27px,6vw,48px)/.9 Syne,sans-serif;color:#ffd45a;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.pom-loader__track{height:2px;background:rgba(255,255,255,.11);overflow:hidden;position:relative}.pom-loader__track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#ff347d 0%,#ffd45a 68%,#fff3b8 100%);box-shadow:0 0 18px rgba(255,212,90,.75);transition:width .22s ease}
.pom-loader p{margin:13px 0 0;text-align:left;color:#66666f;font:500 11px/1.5 Inter,sans-serif;letter-spacing:.05em}
html.loader-ready .pom-loader{opacity:0;visibility:hidden;pointer-events:none}
html.loader-ready body{overflow:auto}
@keyframes pomLoaderAura{from{transform:translate3d(-1%,0,0) scale(.98);opacity:.7}to{transform:translate3d(1%,1%,0) scale(1.04);opacity:1}}
@media(max-width:600px){.pom-loader__inner{width:84vw}.pom-loader__logo{width:min(270px,72vw);margin-bottom:30px}.pom-loader__meta span{letter-spacing:.2em;font-size:9px}}
@media(prefers-reduced-motion:reduce){.pom-loader::before{animation:none}.pom-loader,.pom-loader__track i{transition-duration:.15s}}


/* V53 — bouton Partager toujours visible dans le header */
.header-share{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 15px;border:1px solid rgba(255,212,90,.42);border-radius:999px;background:rgba(10,10,13,.9);color:#ffd45a;font:700 12px Syne,Inter,sans-serif;cursor:pointer;white-space:nowrap;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.header-share:hover,.header-share:focus-visible{transform:translateY(-1px);border-color:#ffd45a;background:rgba(255,212,90,.08);box-shadow:0 0 24px rgba(255,212,90,.12)}
.header-share-icon{font-size:17px;line-height:1;transform:translateY(-1px)}
@media(max-width:980px){.header-share{min-width:48px;width:48px;height:48px;padding:0;border-radius:16px}.header-share-text{display:none}.header-share-icon{font-size:21px}.header-actions{gap:8px}}
@media(max-width:430px){.header-share{min-width:44px;width:44px;height:44px;border-radius:14px}.header-share-icon{font-size:19px}}

/* V54 — confiance, conversion et chargement du globe non bloquant */
html.loader-lock,html.loader-lock body{overflow:auto!important}
.pom-loader{display:none!important}
.globe-loader{position:absolute;z-index:8;right:clamp(18px,4vw,60px);bottom:clamp(18px,5vh,48px);width:min(300px,42vw);padding:13px 14px;border:1px solid rgba(255,212,90,.2);border-radius:14px;background:rgba(6,6,9,.72);backdrop-filter:blur(12px);box-shadow:0 16px 40px rgba(0,0,0,.35);transition:opacity .35s ease,transform .35s ease;pointer-events:none}
.globe-loader.is-ready{opacity:0;transform:translateY(7px)}
.globe-loader__meta{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:8px}.globe-loader__meta span{font:600 9px/1.3 Inter,sans-serif;letter-spacing:.08em;color:#aaa}.globe-loader__meta strong{font:800 14px/1 Inter,sans-serif;color:#ffd45a;font-variant-numeric:tabular-nums}.globe-loader__track{height:2px;background:rgba(255,255,255,.1);overflow:hidden}.globe-loader__track i{display:block;width:0;height:100%;background:linear-gradient(90deg,#ff397f,#ffd45a);box-shadow:0 0 12px rgba(255,212,90,.55);transition:width .2s ease}
.trust-strip{position:relative;z-index:5;background:#070709;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);padding:18px 0}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#1b1b20;border:1px solid #1b1b20;border-radius:18px;overflow:hidden}.trust-grid>div{background:#0b0b0e;padding:16px 18px;display:grid;gap:5px}.trust-grid b{font:700 12px/1.2 Syne,sans-serif;color:#f2f2f4}.trust-grid span{font-size:11px;color:#898992}
.project-proof{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 2px}.project-proof>span{font-size:10px;line-height:1.35;padding:7px 8px;border:1px solid rgba(255,255,255,.08);border-radius:9px;color:#aaa;background:rgba(255,255,255,.025)}.project-proof b{color:#ddd}.project-proof .live-dot{color:#92e9b8;border-color:rgba(66,213,139,.18);background:rgba(66,213,139,.06)}.project-proof .live-dot:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#42d58b;margin-right:6px}.project-proof .project-status{color:#ffd877;border-color:rgba(255,212,90,.2);background:rgba(255,212,90,.06)}
.deliverables-section{background:#070709;border-top:1px solid #17171c;border-bottom:1px solid #17171c}.deliver-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:34px}.deliver-grid article{padding:24px;border:1px solid #202026;border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.012))}.deliver-grid b{color:#ff397f;font-size:10px;letter-spacing:.16em}.deliver-grid h3{font:700 19px Syne;margin:24px 0 9px}.deliver-grid p{margin:0;color:#94949d;line-height:1.65;font-size:13px}.pricing-clarity{max-width:900px;margin:24px auto 0;padding:18px 20px;border:1px solid rgba(255,212,90,.2);border-radius:16px;background:rgba(255,212,90,.04)}.pricing-clarity p{margin:0;color:#aaa;line-height:1.65;font-size:12px}.pricing-clarity p+p{margin-top:6px}.pricing-clarity b{color:#ffd45a}.contact-trust{display:grid;gap:9px;margin-top:24px}.contact-trust span{font-size:12px;color:#b8b8bf}.privacy-check{grid-column:1/-1}.contact-layout form select{width:100%;background:#0b0b10;color:#fff;border:1px solid #26262f;border-radius:11px;padding:11px 12px;outline:none}.contact-layout form select:focus{border-color:rgba(255,212,90,.6);box-shadow:0 0 0 3px rgba(255,212,90,.08)}.footer-siret{display:block;color:#6e6e77;margin-top:8px;font-size:10px}
@media(max-width:900px){.trust-grid,.deliver-grid{grid-template-columns:1fr 1fr}.globe-loader{right:16px;bottom:18px;width:min(260px,68vw)}}
@media(max-width:560px){.trust-grid,.deliver-grid{grid-template-columns:1fr}.globe-loader{left:16px;right:16px;width:auto;bottom:14px}.project-proof{display:grid}.project-proof>span{width:100%}}


/* V57 — pomme-planète : vidéo pilotée par le scroll (remplace le globe Three.js) */
#universe-frames{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;pointer-events:none;background:#030304 url("assets/pomme/poster-mobile.webp") 62% 50%/auto 100% no-repeat}
html:not(.motion-static) .universe-sticky::before{opacity:.18}
.journey-step{left:max(30px,calc((100vw - 1220px)/2));right:auto}
.impact-ring{left:66%}
.motion-static #universe-frames{display:none}
.motion-static .universe-sticky{background:linear-gradient(90deg,#030304 0%,rgba(3,3,4,.92) 38%,rgba(3,3,4,.35) 62%,rgba(3,3,4,0) 80%),#030304 url("assets/pomme/final-desktop.webp") 100% 50%/auto 100% no-repeat}
@media (min-width:761px){.motion-static .hero-copy{margin-left:max(30px,calc((100vw - 1220px)/2));width:min(600px,48vw)}}
@media (max-aspect-ratio:1/1){
  #universe-frames{background:#030304 url("assets/pomme/poster-mobile.webp") 50% 100%/cover no-repeat}
  .vignette{background:linear-gradient(180deg,rgba(3,3,4,.92) 0%,rgba(3,3,4,.62) 30%,rgba(3,3,4,.08) 52%,transparent 70%)}
  .impact-ring{left:50%;top:66%;width:min(560px,88vw)}
}
@media (max-width:760px){
  .journey-step{left:16px;right:16px;top:92px;transform:none;width:auto;max-width:none;padding:20px}
  .journey-step .num{font-size:64px}
  .giant-word{top:66%}
  .motion-static .universe-sticky{background:#030304 url("assets/pomme/final-mobile.webp") 50% 100%/100% auto no-repeat;padding-bottom:110vw}
}

/* V58 — ouverture logo : pas d'assombrissement sur la moitié droite (logo blanc net) */
@media (min-aspect-ratio:1/1){
  .vignette{background:linear-gradient(90deg,rgba(3,3,4,.94) 0%,rgba(3,3,4,.72) 27%,rgba(3,3,4,.12) 46%,rgba(3,3,4,0) 56%)}
  html:not(.motion-static) .universe-sticky::before{opacity:0}
}

/* V59 — fluidité : pas de flou de fond recalculé à chaque image, uniquement opacité/transform animés */
html:not(.motion-static) .journey-step{backdrop-filter:none;-webkit-backdrop-filter:none;
  background:linear-gradient(135deg,rgba(28,22,30,.93),rgba(14,12,16,.9)) padding-box,linear-gradient(135deg,rgba(255,213,90,.65),rgba(255,11,120,.35),rgba(255,255,255,.05)) border-box;
  will-change:opacity,translate,scale;visibility:hidden}
html:not(.motion-static) .journey-step:before{filter:none}
html:not(.motion-static) .giant-word{will-change:opacity,scale;visibility:hidden}
.hero-copy{will-change:opacity,translate}
.scroll-progress{height:100%;transform-origin:top;transform:scaleY(0)}
.universe-sticky{contain:paint}

/* V60 — course de scroll plus longue pour le hero (rythme par chapitres dans pomme-journey.js) */
html:not(.motion-static) .universe-journey{height:640vh}

/* V62 — satellites dessinés en direct au-dessus de la séquence d'images */
#universe-sats{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;pointer-events:none;mix-blend-mode:screen}
.motion-static #universe-sats{display:none}

/* V69 — fluidité sur téléphone : l'en-tête ne recalcule plus un flou au-dessus de l'animation à chaque image
   (son fond est déjà presque opaque, la différence ne se voit pas) */
@media (pointer:coarse){
  html:not(.motion-static) header{backdrop-filter:none;-webkit-backdrop-filter:none}
}
