/* Pastilles & modules des héros (fond marine) · contact (.ahz-sat/.ahz-core), FAQ (.ahq-card), Atlas Club (.ac-hero-stat), accueil (.hero-chip), services (.hub-feat).
   Additif : verre à bordure dégradée qui s'allume, lumière au pointeur (--mx/--my par atlas-hero-chips-premium.js), icône qui se soulève avec anneau, reflet qui traverse, flottement décalé, apparition en cascade. Le texte reste blanc/lisible. */
:root{--hcp-ease:cubic-bezier(.22,1,.36,1)}
@keyframes hcpBob{0%,100%{translate:0 0}50%{translate:0 -4px}}
@keyframes hcpSheen{0%,70%{left:-45%;opacity:0}74%{opacity:1}100%{left:140%;opacity:0}}
@keyframes hcpRing{0%{transform:scale(.85);opacity:0}30%{opacity:.8}100%{transform:scale(1.45);opacity:0}}
@keyframes hcpShine{to{background-position:-200% 0}}
/* ── pastille générique ── */
.ac-hero-stat,.hero-chip,.hub-feat{position:relative}
.ahz-sat{position:absolute}
.ahz-sat,.ac-hero-stat,.hero-chip,.hub-feat{isolation:isolate;overflow:hidden;border:1px solid transparent!important;background:linear-gradient(rgba(12,24,64,.78),rgba(10,20,54,.7)) padding-box,linear-gradient(135deg,rgba(147,197,253,.45),rgba(255,255,255,.06) 50%,rgba(255,150,80,.28)) border-box!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 18px 40px -22px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.1)!important;transition:transform .45s var(--hcp-ease),box-shadow .45s,background .45s!important}
.ahz-sat:hover,.ac-hero-stat:hover,.hero-chip:hover,.hub-feat:hover{transform:translateY(-4px)!important;background:linear-gradient(rgba(16,32,80,.86),rgba(12,24,64,.8)) padding-box,linear-gradient(135deg,rgba(147,197,253,.95),rgba(255,255,255,.22) 50%,rgba(255,150,80,.8)) border-box!important;box-shadow:0 28px 56px -24px rgba(37,99,235,.6),inset 0 1px 0 rgba(255,255,255,.16)!important}
/* lumière au pointeur */
.ahz-sat::before,.ac-hero-stat::before,.hero-chip::before,.hub-feat::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;opacity:0;transition:opacity .45s;background:radial-gradient(160px circle at var(--mx,50%) var(--my,50%),rgba(147,197,253,.22),rgba(255,150,80,.05) 50%,transparent 72%)}
.ahz-sat:hover::before,.ac-hero-stat:hover::before,.hero-chip:hover::before,.hub-feat:hover::before{opacity:1}
/* reflet qui traverse (auto, décalé) */
.ahz-sat::after,.ac-hero-stat::after,.hero-chip::after,.hub-feat::after{content:'';position:absolute;z-index:0;top:-30%;bottom:-30%;left:-45%;width:36%;pointer-events:none;background:linear-gradient(100deg,transparent,rgba(190,215,255,.16),transparent);transform:skewX(-18deg);animation:hcpSheen 9s var(--hcp-ease) infinite}
.ahz-sat.s2::after,.ac-hero-stat:nth-child(2)::after,.hero-chip:nth-child(2)::after,.hub-feat:nth-child(2)::after{animation-delay:1.4s}
.ahz-sat.s3::after,.ac-hero-stat:nth-child(3)::after,.hero-chip:nth-child(3)::after,.hub-feat:nth-child(3)::after{animation-delay:2.8s}
.ahz-sat>*,.ac-hero-stat>*,.hero-chip>*,.hub-feat>*{position:relative;z-index:1}
/* icônes : anneau qui pulse, soulèvement au survol */
.ac-stat-ic,.hc-ico,.hub-feat-ico{position:relative;transition:transform .45s var(--hcp-ease),box-shadow .45s,background .45s!important}
.ac-stat-ic::before,.hc-ico::before,.hub-feat-ico::before{content:'';position:absolute;inset:-4px;border-radius:inherit;border:1px solid rgba(147,197,253,.45);opacity:0;animation:hcpRing 3.2s ease-in-out infinite;pointer-events:none}
.ac-hero-stat:nth-child(2) .ac-stat-ic::before,.hero-chip:nth-child(2) .hc-ico::before,.hub-feat:nth-child(2) .hub-feat-ico::before{animation-delay:1.05s}
.ac-hero-stat:nth-child(3) .ac-stat-ic::before,.hero-chip:nth-child(3) .hc-ico::before,.hub-feat:nth-child(3) .hub-feat-ico::before{animation-delay:2.1s}
.ac-hero-stat:hover .ac-stat-ic,.hero-chip:hover .hc-ico,.hub-feat:hover .hub-feat-ico{transform:translateY(-2px) rotate(-6deg) scale(1.08)!important}
.ahz-sat svg{transition:transform .45s var(--hcp-ease),filter .45s}
.ahz-sat:hover svg{transform:translateY(-1px) rotate(-8deg) scale(1.06);filter:drop-shadow(0 0 6px currentColor)}
/* texte : titre qui s'éclaire */
.hero-chip:hover .hc-txt strong,.hub-feat:hover .hub-feat-text,.ac-hero-stat:hover .ac-stat-tx b{color:#fff;text-shadow:0 0 14px rgba(147,197,253,.32)}
.ac-stat-tx b,.hc-txt strong,.hub-feat-text{transition:text-shadow .4s,color .4s}
/* ── Contact · cœur 24 h : bordure dégradée, halo qui respire, chiffre qui brille ── */
.ahz-core{border-color:transparent!important;background:linear-gradient(158deg,rgba(21,42,100,.95),rgba(8,18,52,.94)) padding-box,linear-gradient(135deg,rgba(147,197,253,.6),rgba(255,255,255,.08) 50%,rgba(255,150,80,.4)) border-box!important;animation:hcpCore 6s ease-in-out infinite}
@keyframes hcpCore{0%,100%{box-shadow:0 34px 74px -32px rgba(0,0,0,.92),0 0 0 0 rgba(96,165,250,.0),inset 0 1px 0 rgba(255,255,255,.1)}50%{box-shadow:0 34px 74px -32px rgba(0,0,0,.92),0 0 60px -10px rgba(96,165,250,.45),inset 0 1px 0 rgba(255,255,255,.14)}}
.ahz-core b{color:#fff;background:linear-gradient(90deg,#fff,#bfdbfe 45%,#fff 55%,#ffd2b3);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:hcpShine 6s linear infinite}
.ahz-sat{animation:hcpBob 6s ease-in-out infinite;translate:0 0}.ahz-sat.s2{animation-delay:-2s}.ahz-sat.s3{animation-delay:-4s}
.ahz-sat.warm::before{background:radial-gradient(160px circle at var(--mx,50%) var(--my,50%),rgba(253,186,116,.24),transparent 72%)}
.ahz-sat.cy::before{background:radial-gradient(160px circle at var(--mx,50%) var(--my,50%),rgba(103,232,249,.22),transparent 72%)}
/* ── FAQ · pile de cartes : bordure dégradée cyan, lumière au pointeur, tag qui pulse, flèche animée ── */
.ahq-card{border-color:transparent!important;background:linear-gradient(160deg,rgba(15,30,76,.96),rgba(9,19,52,.95)) padding-box,linear-gradient(135deg,rgba(103,232,249,.55),rgba(255,255,255,.08) 50%,rgba(96,165,250,.45)) border-box!important}
a.ahq-card.is-front:hover{background:linear-gradient(160deg,rgba(18,36,90,.98),rgba(11,23,62,.96)) padding-box,linear-gradient(135deg,rgba(103,232,249,.95),rgba(255,255,255,.22) 50%,rgba(96,165,250,.85)) border-box!important;transform:translateY(-4px)}
.ahq-card::before{content:'';position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .45s;background:radial-gradient(260px circle at var(--mx,50%) var(--my,50%),rgba(103,232,249,.16),transparent 70%)}
a.ahq-card.is-front:hover::before{opacity:1}
.ahq-card>*{position:relative;z-index:1}
.ahq-tag{position:relative;animation:hcpTagPulse 3s ease-in-out infinite}
@keyframes hcpTagPulse{0%,100%{box-shadow:0 0 0 0 rgba(103,232,249,.35)}50%{box-shadow:0 0 0 6px rgba(103,232,249,0)}}
.ahq-open{position:relative}
.ahq-open::after{content:'';position:absolute;left:0;bottom:-4px;height:1.5px;width:100%;border-radius:2px;background:linear-gradient(90deg,#67e8f9,#60a5fa);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--hcp-ease)}
a.ahq-card.is-front:hover .ahq-open::after{transform:scaleX(1)}
.ahq-open svg{animation:hcpArrow 2.4s ease-in-out infinite}
@keyframes hcpArrow{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}
.ahq-stack::before,.ahq-stack::after{border-color:transparent!important;background:linear-gradient(rgba(11,24,64,.55),rgba(11,24,64,.55)) padding-box,linear-gradient(135deg,rgba(103,232,249,.25),rgba(255,255,255,.04) 50%,rgba(96,165,250,.2)) border-box!important}
.ahq-bars i{box-shadow:0 0 0 0 rgba(96,165,250,0);transition:box-shadow .4s}
.ahq-bars i::after{box-shadow:0 0 10px rgba(103,232,249,.8)}
/* ── Atlas Club · barre de stats ── */
.ac-hero-stats{position:relative;gap:14px!important;padding:6px;border-radius:24px;background:linear-gradient(rgba(10,20,54,.55),rgba(10,20,54,.55)) padding-box,linear-gradient(135deg,rgba(147,197,253,.28),rgba(255,255,255,.04) 50%,rgba(124,92,255,.28)) border-box;border:1px solid transparent;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.ac-hero-stats::before{content:'';position:absolute;z-index:-1;inset:-30px;border-radius:40px;pointer-events:none;background:radial-gradient(ellipse at 20% 50%,rgba(37,99,235,.18),transparent 55%),radial-gradient(ellipse at 85% 50%,rgba(124,92,255,.14),transparent 55%);filter:blur(24px);animation:hcpGlow 9s ease-in-out infinite}
@keyframes hcpGlow{0%,100%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}
.ac-hero-stat{flex:1;min-width:190px;display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:18px;animation:hcpBob 7s ease-in-out infinite}
.ac-hero-stat:nth-child(2){animation-delay:-2.3s}.ac-hero-stat:nth-child(3){animation-delay:-4.6s}
.ac-hero-stat:nth-child(2)::before{background:radial-gradient(160px circle at var(--mx,50%) var(--my,50%),rgba(34,211,238,.22),transparent 72%)}
.ac-hero-stat:nth-child(3)::before{background:radial-gradient(160px circle at var(--mx,50%) var(--my,50%),rgba(167,139,250,.22),transparent 72%)}
.ac-hero-stat:nth-child(3):hover{background:linear-gradient(rgba(16,32,80,.86),rgba(12,24,64,.8)) padding-box,linear-gradient(135deg,rgba(167,139,250,.95),rgba(255,255,255,.22) 50%,rgba(96,165,250,.8)) border-box!important}
.ac-hero-stat:nth-child(2):hover{background:linear-gradient(rgba(16,32,80,.86),rgba(12,24,64,.8)) padding-box,linear-gradient(135deg,rgba(103,232,249,.95),rgba(255,255,255,.22) 50%,rgba(96,165,250,.8)) border-box!important}
/* ── accueil / services : flottement décalé ── */
.hero-chip,.hub-feat{animation:hcpBob 7s ease-in-out infinite!important}
.hero-chip:nth-child(2),.hub-feat:nth-child(2){animation-delay:-2.3s!important}.hero-chip:nth-child(3),.hub-feat:nth-child(3){animation-delay:-4.6s!important}
/* ── accessibilité / mobile ── */
@media(hover:none){.ahz-sat::before,.ac-hero-stat::before,.hero-chip::before,.hub-feat::before,.ahq-card::before{display:none}.ahz-sat,.ac-hero-stat,.hero-chip,.hub-feat{backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(max-width:620px){.ac-hero-stats{padding:4px;gap:8px!important}.ac-hero-stat{min-width:0;padding:12px 14px}}
@media(prefers-reduced-motion:reduce){.ahz-sat,.ac-hero-stat,.hero-chip,.hub-feat,.ahz-sat::after,.ac-hero-stat::after,.hero-chip::after,.hub-feat::after,.ac-stat-ic::before,.hc-ico::before,.hub-feat-ico::before,.ahz-core,.ahz-core b,.ahq-tag,.ahq-open svg,.ac-hero-stats::before{animation:none!important}.ahz-sat:hover,.ac-hero-stat:hover,.hero-chip:hover,.hub-feat:hover,a.ahq-card.is-front:hover{transform:none!important}}
