/* Interações EPSA: cápsula viva interna, profundidade contida e direção nas setas. */
.epsa-surface{position:relative;isolation:isolate}
.epsa-action{position:relative;isolation:isolate}
:is(.button,.header-enroll,.editorial-link).epsa-action{--epsa-action-capsule:color-mix(in srgb,currentColor 13%,transparent);overflow:hidden}
:is(.button,.header-enroll,.editorial-link).epsa-action:before{content:"";position:absolute;z-index:-1;right:7px;top:50%;width:2.8rem;height:70%;border-radius:48% 42% 52% 44% / 44% 52% 43% 55%;background:var(--epsa-action-capsule);pointer-events:none;transform:translateY(-50%) scale(.76) rotate(4deg);transform-origin:right center;transition:width .52s cubic-bezier(.2,.8,.2,1),height .52s cubic-bezier(.2,.8,.2,1),border-radius .52s cubic-bezier(.2,.8,.2,1),transform .52s cubic-bezier(.2,.8,.2,1)}
:is(.button,.header-enroll,.editorial-link).epsa-action:is(:hover,:focus-visible):before{width:calc(100% - 14px);height:calc(100% - 14px);border-radius:14px 18px 15px 20px / 17px 14px 19px 15px;transform:translateY(-50%) scale(1) rotate(0)}
:is(.button,.header-enroll,.editorial-link).epsa-action>*{position:relative;z-index:1}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .epsa-surface{transition:transform .55s cubic-bezier(.2,.8,.2,1),box-shadow .45s;transform:perspective(1200px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}
 .portal-page .epsa-surface.epsa-tracking{box-shadow:0 24px 52px -28px #17171445,0 10px 35px -30px #e0000d40;transform:perspective(1200px) translateY(-4px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition-duration:.18s,.45s}
 .epsa-surface .number{transition:transform .5s cubic-bezier(.2,.8,.2,1),border-radius .5s,box-shadow .5s}
 .epsa-surface.epsa-tracking .number{transform:translateY(-3px) rotate(-4deg);border-radius:20px;box-shadow:0 12px 22px -14px #c3000b40}
 .epsa-action>.header-arrow,.epsa-action.button>span[aria-hidden],.epsa-action.editorial-link>span,.portal-page .segment .epsa-action>span{transition:transform .35s cubic-bezier(.2,.8,.2,1);transform:translate(var(--magnet-x,0px),var(--magnet-y,0px))}
 .epsa-action:hover>.header-arrow,.epsa-action.button:hover>span[aria-hidden],.epsa-action.editorial-link:hover>span{transform:translate(calc(var(--magnet-x,0px) + 2px),calc(var(--magnet-y,0px) - 2px))}
}
@media(prefers-reduced-motion:reduce){.epsa-surface,.epsa-action,.epsa-surface .number,.epsa-action>span{transition:none!important;transform:none!important}:is(.button,.header-enroll,.editorial-link).epsa-action:before{transition:none!important}}

/* Seção de segmentos: chamada serena e conteúdo que responde ao hover do card inteiro. */
@media(prefers-reduced-motion:no-preference){
 .segments-section .epsa-copy-visible>.eyebrow{animation:epsa-copy-arrive .65s cubic-bezier(.2,.8,.2,1) both}
 .segments-section .epsa-copy-visible>h2{animation:epsa-copy-arrive .8s .08s cubic-bezier(.2,.8,.2,1) both}
 .segments-section .epsa-copy-visible>p{animation:epsa-copy-arrive .8s .16s cubic-bezier(.2,.8,.2,1) both}
}
@keyframes epsa-copy-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .segments-section .segment>.mini,.segments-section .segment>h3,.segments-section .segment>p:not(.mini){transition:transform .55s cubic-bezier(.2,.8,.2,1),color .35s}
 .segments-section .segment>.mini{transition-delay:.02s}.segments-section .segment>h3{transition-delay:.04s}.segments-section .segment>p:not(.mini){transition-delay:.07s}
 .segments-section .segment:hover>.mini{transform:translateX(3px)}
 .segments-section .segment:hover>h3{transform:translateX(5px);color:var(--bordo,#c3000b)}
 .segments-section .segment:hover>p:not(.mini){transform:translateX(3px)}
 .segments-section .segment:hover>.text-link{background:var(--red);color:#fff}
 .segments-section .segment:hover>.text-link>span{background:#ffffff20}
 .segments-section .segment .text-link{transition:background .35s,color .35s,box-shadow .35s}
 .segments-section .segment:hover>.text-link{box-shadow:0 8px 18px -14px #c3000b80}
}
@media(prefers-reduced-motion:reduce){.segments-section .section-heading>*{animation:none!important}.segments-section .segment>*{transition:none!important}}
