/* Échos Santé — 10 ans (2016-2026). Toutes les animations respectent « réduire les animations ». */

.brand-wrap{display:flex;align-items:center;gap:14px;min-width:0}

/* Sceau « 10 » */
.anniv-seal{display:block;overflow:visible}
.anniv-seal-bg{fill:var(--deep)}
.anniv-seal-ring{transform-origin:50px 50px;animation:anniv-spin 18s linear infinite}
.anniv-seal-text{font:700 9.6px/1 var(--body);letter-spacing:1.6px;fill:var(--lime)}
.anniv-seal-num{font:800 38px/1 var(--display);letter-spacing:-2px;fill:#fff}
@keyframes anniv-spin{to{transform:rotate(360deg)}}

/* Badge près du logo */
.anniv-badge{position:relative;display:inline-flex;flex:0 0 auto;border-radius:50%;text-decoration:none;animation:anniv-pop .9s .2s cubic-bezier(.2,.9,.25,1.3) both}
.anniv-badge:after{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--lime);opacity:0;animation:anniv-pulse 2.8s 1.2s ease-out infinite}
.anniv-badge:hover .anniv-seal-ring{animation-duration:4s}
@keyframes anniv-pop{from{transform:scale(.2) rotate(-90deg);opacity:0}to{transform:none;opacity:1}}
@keyframes anniv-pulse{0%{transform:scale(.9);opacity:.8}70%,100%{transform:scale(1.35);opacity:0}}

/* Bandeau */
.anniv-bar{position:relative;overflow:hidden;background:linear-gradient(90deg,#d6ff73,#eaffb0 30%,#d6ff73 55%,#b9ec4a);background-size:220% 100%;color:#0b2a1d;animation:anniv-shine 9s ease-in-out infinite}
.anniv-bar-inner{display:flex;align-items:center;gap:14px;min-height:40px;padding:6px 0;font-size:13px;font-weight:600}
.anniv-bar p{margin:0;flex:1;line-height:1.4}
.anniv-bar a{flex:0 0 auto;padding:5px 12px;border-radius:100px;background:#073c2b;color:#d6ff73;font-size:12px;font-weight:700;text-decoration:none}
.anniv-bar-ten{flex:0 0 auto;display:grid;place-content:center;width:30px;height:30px;border-radius:50%;background:#073c2b;color:#fff;font:800 13px/1 var(--display);letter-spacing:-.5px}
.anniv-bar-close{flex:0 0 auto;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#0b2a1d;font-size:13px;cursor:pointer}
.anniv-bar-close:hover{background:#0b2a1d1a}
@keyframes anniv-shine{0%,100%{background-position:0 0}50%{background-position:100% 0}}

/* Section de l’accueil */
.anniv-section{position:relative;overflow:hidden;margin:70px 0;padding:46px 44px 40px;border-radius:var(--radius,22px);background:radial-gradient(90% 120% at 100% 0%,#d6ff7333 0,transparent 55%),linear-gradient(150deg,#0b4d37 0%,var(--deep) 50%,#04241a 100%);color:#eaf4e4}
.anniv-section:before{content:'2016';position:absolute;left:-10px;bottom:-60px;font:800 220px/1 var(--display);letter-spacing:-12px;color:#ffffff07;pointer-events:none}
.anniv-section:after{content:'2026';position:absolute;right:-10px;top:-70px;font:800 220px/1 var(--display);letter-spacing:-12px;color:#d6ff730d;pointer-events:none}
.anniv-head{position:relative;display:grid;grid-template-columns:150px 1fr;gap:36px;align-items:center}
.anniv-section .eyebrow{color:var(--lime)}
.anniv-section h2{margin:0;color:#fff;font-size:clamp(32px,4vw,50px);line-height:1.05;letter-spacing:-1.6px}
.anniv-section h2 em{color:var(--lime);font-style:normal}
.anniv-text{max-width:620px;margin:16px 0 0!important;color:#cfe3c8!important;font-size:15px!important;line-height:1.7}
.anniv-section .button{margin-top:20px}
.anniv-seal-lg .anniv-seal-bg{fill:#ffffff10;stroke:#d6ff7355;stroke-width:1}
.anniv-seal-lg .anniv-seal-num{font-size:44px}
.anniv-stats{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:1px;margin:34px 0 0;border-radius:16px;overflow:hidden;background:#ffffff1f}
.anniv-stats>div{padding:18px 20px;background:#063626}
.anniv-stats b{display:block;font:800 38px/1 var(--display);letter-spacing:-1.2px;color:var(--lime);font-variant-numeric:tabular-nums}
.anniv-stats span{display:block;margin-top:6px;font-size:12px;color:#b8d4b0}
.anniv-timeline{position:relative;list-style:none;margin:44px 8px 6px;padding:0;height:86px}
.anniv-timeline:before{content:'';position:absolute;left:0;right:0;top:20px;height:2px;background:#ffffff2a}
.anniv-timeline:after{content:'';position:absolute;left:0;top:20px;height:2px;width:100%;background:var(--lime);transform-origin:left;transform:scaleX(0);transition:transform 1.8s cubic-bezier(.3,.7,.2,1)}
.anniv-timeline li{position:absolute;left:var(--at);top:0;width:160px;transform:translateX(-50%);text-align:center;opacity:0;transition:opacity .5s calc(.3s + var(--i) * .25s),transform .5s calc(.3s + var(--i) * .25s)}
.anniv-timeline li:first-child{transform:none;text-align:left;margin-left:-6px}
.anniv-timeline li:last-child{transform:translateX(-100%);text-align:right;margin-left:6px}
.anniv-timeline li:before{content:'';display:block;width:14px;height:14px;margin:13px auto 10px;border-radius:50%;background:var(--deep);border:3px solid var(--lime)}
.anniv-timeline li:first-child:before{margin-left:0}.anniv-timeline li:last-child:before{margin-right:0}
.anniv-timeline b{display:block;font:800 18px/1 var(--display);color:#fff}
.anniv-timeline span{display:block;margin-top:4px;font-size:12px;line-height:1.35;color:#cfe3c8}
.anniv-section.in-view .anniv-timeline:after,.anniv-section:not(.reveal) .anniv-timeline:after{transform:scaleX(1)}
.anniv-section.in-view .anniv-timeline li,.anniv-section:not(.reveal) .anniv-timeline li{opacity:1}

/* Confettis */
.anniv-confetti{position:fixed;inset:0;z-index:99999;pointer-events:none}

body.dark .anniv-seal-bg{fill:#0a2419}
@media(max-width:900px){.anniv-badge svg{width:44px;height:44px}}
@media(max-width:800px){
 .anniv-section{padding:32px 24px}
 .anniv-head{grid-template-columns:1fr;gap:18px}
 .anniv-big svg{width:96px;height:96px}
 .anniv-timeline{height:auto;margin:30px 0 0;padding-left:22px}
 .anniv-timeline:before,.anniv-timeline:after{left:6px;right:auto;top:0;bottom:0;width:2px;height:auto}
 .anniv-timeline:after{transform:scaleY(0);transform-origin:top}
 .anniv-section.in-view .anniv-timeline:after{transform:scaleY(1)}
 .anniv-timeline li,.anniv-timeline li:first-child,.anniv-timeline li:last-child{position:relative;left:auto;width:auto;transform:none;text-align:left;margin:0 0 18px}
 .anniv-timeline li:before,.anniv-timeline li:first-child:before,.anniv-timeline li:last-child:before{position:absolute;left:-22px;top:2px;margin:0}
}
@media(max-width:560px){
 .anniv-badge{display:none}
 .brand-wrap{gap:8px}
 .anniv-bar-inner{font-size:11.5px;gap:10px}
 .anniv-bar a{display:none}
 .anniv-stats b{font-size:30px}
}
@media(prefers-reduced-motion:reduce){
 .anniv-seal-ring,.anniv-badge,.anniv-badge:after,.anniv-bar{animation:none!important}
 .anniv-timeline:after,.anniv-timeline li{transition:none!important}
}
@media print{.anniv-bar,.anniv-badge,.anniv-section,.anniv-confetti{display:none!important}}
