/* Doctalks 2027 · edição especial CCM Group 25 anos */
.std-tag{display:inline-block;font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:#fff;border:1px solid rgba(255,255,255,.6);padding:5px 12px;margin-bottom:14px}
.std-kicker{display:block;font-size:12px;letter-spacing:5px;text-transform:uppercase;color:#fff;opacity:.85;margin-bottom:4px}
#home .std-title{font-size:52px;line-height:1;letter-spacing:-1px}
.std-date{font-size:30px;line-height:1.05;font-weight:800;color:#fff;margin:12px 0 4px;letter-spacing:-.5px}
.std-date small{display:block;font-size:14px;font-weight:300;letter-spacing:1px;margin-top:8px;opacity:.9}
.std-lead{color:#fff;font-size:15px;line-height:24px;font-weight:300;max-width:480px;margin:14px 0 0}
.std-countdown{display:flex;gap:8px;margin-top:20px}
.std-countdown div{flex:1;max-width:72px;border:1px solid rgba(255,255,255,.35);padding:8px 4px;text-align:center;color:#fff}
.std-countdown b{display:block;font-size:20px;line-height:1;font-weight:800}
.std-countdown span{display:block;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;margin-top:4px;opacity:.8}
.std-ccm25{width:170px;max-width:100%;height:auto}
.std-initiative{display:flex;align-items:center;gap:16px;margin-top:24px}
#home .std-box{padding-top:45px;padding-bottom:45px}
.std-hero-btns{margin-top:22px}
.std-hero-btns .btn{margin-top:0!important}
.std-ccm25-lg{max-width:460px;width:100%;height:auto}
@media (max-width:575px){.std-tag{letter-spacing:1.5px;font-size:10px;padding:5px 10px}.std-kicker{letter-spacing:4px}.std-lead{font-size:14px;line-height:22px}.std-hero-btns .btn{display:block;width:100%;margin:10px 0 0!important}#home .std-title{font-size:40px}.std-date{font-size:26px}.std-countdown b{font-size:18px}}

/* bloco "em breve" (programação) */
.std-soon{text-align:center}
.std-soon .std-kicker{color:#d61329;opacity:1}
.std-soon-date{font-size:54px;line-height:1;font-weight:800;color:#232323;letter-spacing:-1.5px;margin:10px 0 8px}
.std-soon-city{font-size:16px;letter-spacing:1px;color:#6f6f6f}
.std-soon-title{font-size:22px;font-weight:600;color:#232323;margin:45px 0 12px}
.std-soon p{max-width:560px;margin:0 auto}
.std-countdown.is-dark{justify-content:center}
.std-countdown.is-dark div{border-color:#dcdcdc;color:#232323}
.std-soon .btn{margin:35px 5px 0}
.std-soon .btn-deep-pink{background:#d61329;border-color:#d61329;color:#fff}
.std-soon .btn-deep-pink:hover{background:transparent;color:#d61329}

@media (max-width:575px){.std-soon-date{font-size:36px}.std-soon .btn{display:block;width:100%;margin:12px 0 0}}

/* rodapé */
.std-footer-logo{width:210px;max-width:100%;height:auto}
.std-footer-std{color:#8a8a8a}
.std-footer-std span{color:#fff;letter-spacing:2px;text-transform:uppercase;font-size:11px;margin-right:6px}
.std-menu-logo{width:270px;max-width:100%;height:auto}

/* seção 25 anos */
.std-25{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#f7f7f7 100%)}
.std-25:before{content:"";position:absolute;width:720px;height:720px;left:-260px;top:-260px;border-radius:50%;background:radial-gradient(circle,rgba(214,19,41,.09) 0%,rgba(214,19,41,0) 70%);pointer-events:none}
.std-25 .container{position:relative}
.std-25-logo img{width:100%;max-width:460px;height:auto}
.std-25-kicker{display:inline-block;font-size:12px;letter-spacing:4px;text-transform:uppercase;color:#d61329;margin-bottom:18px;padding-left:34px;position:relative}
.std-25-kicker:before{content:"";position:absolute;left:0;top:50%;width:24px;height:1px;background:#d61329}
.std-25-title{font-size:44px;line-height:1.12;font-weight:700;color:#232323;letter-spacing:-1px;margin-bottom:26px}
.std-25-title em{font-style:normal;color:#d61329}
.std-25-num{color:#d61329;display:inline-block;min-width:1.15em}
.std-25-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.std-25-pills span{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:#232323;border:1px solid #dedede;border-radius:30px;padding:7px 16px;background:#fff}
.std-25-pills span:first-child{background:#d61329;border-color:#d61329;color:#fff}

/* linha do tempo (estado final por padrão; animação só com .std-anim) */
.std-tl{list-style:none;padding:0;margin:90px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;position:relative}
.std-tl:before,.std-tl:after{content:"";position:absolute;left:0;right:0;top:8px;height:2px;background:#e6e6e6}
.std-tl:after{background:#d61329;transform-origin:left center}
.std-tl li{position:relative;padding-top:44px}
.std-tl-dot{position:absolute;top:0;left:0;width:18px;height:18px;border-radius:50%;background:#d61329;border:2px solid #d61329;z-index:1}
.std-tl strong{display:block;font-size:42px;font-weight:800;color:#232323;line-height:1;margin-bottom:12px;letter-spacing:-1px}
.std-tl p{font-size:14px;line-height:22px;margin:0}
.std-tl-card{background:#d61329;color:#fff;padding:24px 24px 26px;margin-top:-10px;box-shadow:0 18px 40px -18px rgba(214,19,41,.55)}
.std-tl-card strong,.std-tl-card p{color:#fff}
.std-tl-label{display:block;font-size:10px;letter-spacing:2.5px;text-transform:uppercase;opacity:.85;margin-bottom:8px}
.std-tl .is-now .std-tl-dot{animation:stdPulse 2.2s ease-out 2.4s infinite}
@keyframes stdPulse{0%{box-shadow:0 0 0 0 rgba(214,19,41,.5)}70%{box-shadow:0 0 0 16px rgba(214,19,41,0)}100%{box-shadow:0 0 0 0 rgba(214,19,41,0)}}

/* animações ao rolar */
.std-anim .std-reveal{opacity:0;transform:translateY(26px);transition:opacity .9s ease var(--d,0s),transform .9s cubic-bezier(.2,.7,.2,1) var(--d,0s)}
.std-anim .std-reveal.is-in{opacity:1;transform:none}
.std-anim .std-tl:after{transform:scaleX(0);transition:transform 1.8s cubic-bezier(.65,0,.35,1) .2s}
.std-anim .std-tl-dot{transform:scale(0);background:#fff;transition:transform .45s cubic-bezier(.3,1.6,.5,1) calc(var(--i,0)*.45s + .3s),background .3s calc(var(--i,0)*.45s + .3s)}
.std-anim .std-tl li>strong,.std-anim .std-tl li>p,.std-anim .std-tl-card{opacity:0;transform:translateY(18px);transition:opacity .7s ease calc(var(--i,0)*.45s + .45s),transform .7s cubic-bezier(.2,.7,.2,1) calc(var(--i,0)*.45s + .45s)}
.std-anim .std-tl.is-in:after{transform:scaleX(1)}
.std-anim .std-tl.is-in .std-tl-dot{transform:scale(1);background:#d61329}
.std-anim .std-tl.is-in li>strong,.std-anim .std-tl.is-in li>p,.std-anim .std-tl.is-in .std-tl-card{opacity:1;transform:none}

@media (max-width:991px){
.std-25-title{font-size:34px}
.std-tl{grid-template-columns:1fr;gap:34px;margin-top:60px;padding-left:40px;text-align:left}
.std-tl:before,.std-tl:after{left:8px;right:auto;top:0;bottom:0;width:2px;height:auto}
.std-tl:after{transform-origin:center top}
.std-anim .std-tl:after{transform:scaleY(0)}
.std-anim .std-tl.is-in:after{transform:scaleY(1)}
.std-tl li{padding-top:0}
.std-tl-dot{left:-40px;top:4px}
.std-tl-card{margin-top:0}
.std-25-pills{justify-content:center}
}
@media (max-width:575px){.std-25-title{font-size:28px}.std-tl strong{font-size:34px}}
@media (prefers-reduced-motion:reduce){.std-tl .is-now .std-tl-dot{animation:none}}
