/* Shared home/category Banner bundle. Kept separate so taxonomy pages do not load the full home bundle. */
.ep-banner{position:relative;width:100%;height:var(--ep-banner-height);min-height:160px;overflow:hidden;background:linear-gradient(135deg,#171b2b,#5058a9);isolation:isolate}.ep-banner--contained{width:min(1380px,calc(100% - 40px));margin:22px auto 0;border-radius:var(--ep-radius);box-shadow:0 20px 55px rgba(18,24,46,.12)}.ep-banner__frame,.ep-banner__visual,.ep-banner__slides,.ep-banner__slide{position:absolute;inset:0}.ep-banner__slide{display:block;opacity:0;visibility:hidden;overflow:hidden;transition:opacity .7s ease,transform .8s ease;pointer-events:none}.ep-banner__slide.is-active{opacity:1;visibility:visible;transform:none;pointer-events:auto;z-index:2}.ep-banner--transition-slide .ep-banner__slide{transform:translateX(100%)}.ep-banner--transition-slide .ep-banner__slide.is-before{transform:translateX(-100%)}.ep-banner--transition-slide .ep-banner__slide.is-active{transform:translateX(0)}.ep-banner--transition-zoom .ep-banner__slide{transform:scale(1.045)}.ep-banner--transition-zoom .ep-banner__slide.is-active{transform:scale(1)}.ep-banner__image,.ep-banner__video{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.ep-banner--position-top .ep-banner__image,.ep-banner--position-top .ep-banner__video{object-position:center top}.ep-banner--position-bottom .ep-banner__image,.ep-banner--position-bottom .ep-banner__video{object-position:center bottom}.ep-banner__shade{position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,rgba(8,12,24,var(--ep-banner-overlay)),rgba(8,12,24,calc(var(--ep-banner-overlay) * .72)) 55%,rgba(8,12,24,calc(var(--ep-banner-overlay) * .45)))}.ep-banner--no-media .ep-banner__shade{background:radial-gradient(circle at 78% 25%,rgba(112,94,255,.42),transparent 36%),linear-gradient(135deg,#151a2b,#384185)}.ep-banner__content{position:relative;z-index:5;height:100%;display:flex;align-items:center;pointer-events:none}.ep-banner__copy{width:min(860px,88%);margin:0 auto;text-align:center;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.24);pointer-events:auto}.ep-banner__copy h1{margin:0;font-size:var(--ep-banner-title-size,64px);line-height:1.08;letter-spacing:-.03em;color:#fff}.ep-banner--category .ep-banner__copy h1{font-size:var(--ep-banner-title-size,25px)}.ep-banner__copy p{max-width:760px;margin:16px auto 0;font-size:var(--ep-banner-subtitle-size,20px);line-height:1.65;color:rgba(255,255,255,.88)}.ep-banner-search{display:grid;grid-template-columns:132px minmax(0,1fr) auto;align-items:center;width:min(780px,100%);margin:28px auto 0;padding:6px;border:1px solid rgba(255,255,255,.26);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 18px 42px rgba(11,17,34,.2);text-shadow:none;backdrop-filter:blur(14px)}.ep-banner-search select,.ep-banner-search input{height:48px;border:0!important;box-shadow:none!important;background:transparent!important;color:#202431;font:inherit}.ep-banner-search select{padding:0 12px;border-right:1px solid #e2e6ef!important;border-radius:0!important;font-size:14px;font-weight:700}.ep-banner-search input{min-width:0;padding:0 15px;font-size:15px}.ep-banner-search button{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:48px;padding:0 22px;border:0;border-radius:13px;color:#fff;font-weight:800;cursor:pointer}.ep-banner-search button svg{width:18px;height:18px}.ep-banner__dots{position:absolute;z-index:6;left:50%;bottom:18px;display:flex;gap:7px;transform:translateX(-50%)}.ep-banner__dots button{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:rgba(255,255,255,.48);box-shadow:0 1px 5px rgba(0,0,0,.18);cursor:pointer;transition:width .2s ease,background .2s ease}.ep-banner__dots button.is-active{width:26px;background:#fff}@media (max-width:760px){.ep-banner{height:min(var(--ep-banner-height),520px)}.ep-banner--contained{width:calc(100% - 24px);margin-top:12px}.ep-banner__copy{width:92%}.ep-banner__copy h1{font-size:min(var(--ep-banner-title-size,42px),42px)}.ep-banner__copy p{font-size:min(var(--ep-banner-subtitle-size,16px),16px);margin-top:11px}.ep-banner-search{grid-template-columns:105px 1fr;margin-top:20px;padding:5px}.ep-banner-search button{grid-column:1/3;width:100%;height:43px}.ep-banner-search select,.ep-banner-search input{height:43px}.ep-banner-search select{font-size:12px;padding:0 7px}.ep-banner-search input{font-size:13px;padding:0 9px}}@media (prefers-reduced-motion:reduce){.ep-banner__slide{transition:none!important}.ep-banner--transition-zoom .ep-banner__slide{transform:none!important}}.ep-banner--draggable .ep-banner__image,.ep-banner--draggable .ep-banner__video{-webkit-user-drag:none;user-select:none;-webkit-user-select:none}.ep-banner-search--glass{background:rgba(255,255,255,.18)!important;border-color:rgba(255,255,255,.42)!important;box-shadow:0 18px 44px rgba(6,12,28,.24)!important;backdrop-filter:blur(18px) saturate(135%);-webkit-backdrop-filter:blur(18px) saturate(135%)}.ep-banner-search--glass select,.ep-banner-search--glass input{color:#fff!important}.ep-banner-search--glass select{border-right-color:rgba(255,255,255,.3)!important}.ep-banner-search--glass input::placeholder{color:rgba(255,255,255,.76)}.ep-banner-search--glass select option{color:#202431;background:#fff}.ep-banner-search--outline{background:rgba(0,0,0,.08)!important;border:1.5px solid rgba(255,255,255,.72)!important;box-shadow:0 10px 32px rgba(0,0,0,.12)!important;backdrop-filter:none!important}.ep-banner-search--outline select,.ep-banner-search--outline input{color:#fff!important}.ep-banner-search--outline select{border-right-color:rgba(255,255,255,.3)!important}.ep-banner-search--outline input::placeholder{color:rgba(255,255,255,.78)}.ep-banner-search--outline select option{color:#202431;background:#fff}.ep-banner-search--small{width:min(560px,100%);grid-template-columns:112px minmax(0,1fr) auto;padding:4px;border-radius:14px}.ep-banner-search--small select,.ep-banner-search--small input,.ep-banner-search--small button{height:40px}.ep-banner-search--small button{padding:0 16px;border-radius:10px}.ep-banner-search--medium{width:min(680px,100%);grid-template-columns:124px minmax(0,1fr) auto;padding:5px;border-radius:16px}.ep-banner-search--medium select,.ep-banner-search--medium input,.ep-banner-search--medium button{height:45px}.ep-banner-search--large{width:min(820px,100%);grid-template-columns:138px minmax(0,1fr) auto;padding:7px;border-radius:19px}.ep-banner-search--large select,.ep-banner-search--large input,.ep-banner-search--large button{height:52px}.ep-banner-search--large input{font-size:16px}.ep-banner--transition-page .ep-banner__slides{perspective:1500px;transform-style:preserve-3d}.ep-banner--transition-page .ep-banner__slide{transform-origin:left center;transform:rotateY(72deg) scale(.985);backface-visibility:hidden;transition:opacity .62s ease,transform .72s cubic-bezier(.22,.7,.18,1)}.ep-banner--transition-page .ep-banner__slide.is-before{transform-origin:right center;transform:rotateY(-72deg) scale(.985)}.ep-banner--transition-page .ep-banner__slide.is-active{transform:rotateY(0) scale(1)}.ep-banner--draggable.is-dragging .ep-banner__slide{transition:none!important}.ep-banner--draggable .ep-banner__slides{will-change:transform}.ep-banner__slide.is-drag-preview{pointer-events:none!important}@media (max-width:720px){.ep-banner-search--small,.ep-banner-search--medium,.ep-banner-search--large{width:min(100%,620px);grid-template-columns:98px 1fr;padding:5px}.ep-banner-search--small button,.ep-banner-search--medium button,.ep-banner-search--large button{grid-column:1/3;width:100%;height:42px}.ep-banner-search--large select,.ep-banner-search--large input{height:44px}}@media (prefers-reduced-motion:reduce){.ep-banner--transition-page .ep-banner__slide{transform:none!important}}.ep-banner--draggable.is-dragging{background:transparent}.ep-banner--draggable.is-dragging .ep-banner__slide.is-drag-preview{visibility:visible!important;opacity:1!important}.ep-banner--draggable.is-dragging .ep-banner__slide.is-drag-neighbor{background:transparent}.ep-banner-search button{background:var(--ep-accent)!important;background-image:none!important;box-shadow:0 8px 20px color-mix(in srgb,var(--ep-accent) 24%,transparent);transition:transform .16s ease,background .16s ease}.ep-banner-search button:hover{background:color-mix(in srgb,var(--ep-accent) 88%,#000)!important;transform:translateY(-1px)}.ep-banner--edge-fade,.ep-banner--edge-fade_line{background:transparent}.ep-banner--edge-fade .ep-banner__visual,.ep-banner--edge-fade_line .ep-banner__visual{-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}.ep-banner--edge-fade.ep-banner--fade-soft .ep-banner__visual,.ep-banner--edge-fade_line.ep-banner--fade-soft .ep-banner__visual{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 82%,rgba(0,0,0,.68) 91%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 82%,rgba(0,0,0,.68) 91%,transparent 100%)}.ep-banner--edge-fade.ep-banner--fade-standard .ep-banner__visual,.ep-banner--edge-fade_line.ep-banner--fade-standard .ep-banner__visual{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.82) 78%,rgba(0,0,0,.36) 91%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 68%,rgba(0,0,0,.82) 78%,rgba(0,0,0,.36) 91%,transparent 100%)}.ep-banner--edge-fade.ep-banner--fade-strong .ep-banner__visual,.ep-banner--edge-fade_line.ep-banner--fade-strong .ep-banner__visual{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 54%,rgba(0,0,0,.70) 70%,rgba(0,0,0,.24) 87%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 54%,rgba(0,0,0,.70) 70%,rgba(0,0,0,.24) 87%,transparent 100%)}.ep-banner--edge-line::after,.ep-banner--edge-fade_line::after{content:"";position:absolute;z-index:8;left:0;right:0;bottom:0;height:var(--ep-banner-line-width,1px);pointer-events:none;background:var(--ep-banner-line-color,var(--ep-line));box-shadow:0 0 10px color-mix(in srgb,var(--ep-banner-line-color,var(--ep-line)) 18%,transparent)}.ep-banner--line-theme{--ep-banner-line-color:var(--ep-line)}.ep-banner--line-accent{--ep-banner-line-color:var(--ep-accent)}.ep-banner--edge-none::after{display:none}@media (max-width:720px){.ep-banner--edge-fade.ep-banner--fade-standard .ep-banner__visual,.ep-banner--edge-fade_line.ep-banner--fade-standard .ep-banner__visual{-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 74%,rgba(0,0,0,.55) 90%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 74%,rgba(0,0,0,.55) 90%,transparent 100%)}}.ep-banner--draggable .ep-banner__slides{cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}.ep-banner--draggable.is-pointer-down .ep-banner__slides,.ep-banner--draggable.is-dragging .ep-banner__slides{cursor:grabbing}.ep-banner--draggable.is-dragging .ep-banner__slide,.ep-banner--draggable.is-settling .ep-banner__slide{will-change:transform,opacity;backface-visibility:hidden;-webkit-backface-visibility:hidden}.ep-banner--draggable.is-settling{pointer-events:none}@media (prefers-reduced-motion:reduce){.ep-banner--draggable.is-settling .ep-banner__slide{transition-duration:.01ms!important}}@media (max-width:760px){.ep-banner{height:var(--ep-banner-mobile-height,300px);min-height:120px;width:calc(100% - (var(--ep-banner-mobile-inset,12px) * 2));margin-left:auto;margin-right:auto;border-radius:var(--ep-banner-mobile-radius,16px);overflow:hidden}.ep-banner--contained{width:calc(100% - (var(--ep-banner-mobile-inset,12px) * 2))}.ep-banner--home .ep-banner__image,.ep-banner--home .ep-banner__video{object-position:var(--ep-banner-position-x,50%) var(--ep-banner-position-y,50%)!important}.ep-banner--category .ep-banner__image,.ep-banner--category .ep-banner__video,.ep-banner--category.ep-banner--position-top .ep-banner__image,.ep-banner--category.ep-banner--position-top .ep-banner__video,.ep-banner--category.ep-banner--position-bottom .ep-banner__image,.ep-banner--category.ep-banner--position-bottom .ep-banner__video{object-position:var(--ep-banner-mobile-position-x,50%) var(--ep-banner-mobile-position-y,50%)!important}.ep-banner__copy{width:min(92%,620px)}.ep-banner__dots{bottom:12px}}.ep-banner-search button{background-image:none!important}.ep-banner--home .ep-banner__image,.ep-banner--home .ep-banner__video,.ep-banner--home.ep-banner--position-top .ep-banner__image,.ep-banner--home.ep-banner--position-top .ep-banner__video,.ep-banner--home.ep-banner--position-bottom .ep-banner__image,.ep-banner--home.ep-banner--position-bottom .ep-banner__video{object-position:var(--ep-banner-position-x,50%) var(--ep-banner-position-y,50%)!important}.ep-banner--category.ep-banner--title-bottom-left .ep-banner__content,.ep-banner--category.ep-banner--title-bottom-center .ep-banner__content,.ep-banner--category.ep-banner--title-bottom-right .ep-banner__content{align-items:flex-end;padding-bottom:46px}.ep-banner--category.ep-banner--title-bottom-left .ep-banner__copy{margin-left:0;margin-right:auto;text-align:left}.ep-banner--category.ep-banner--title-bottom-left .ep-banner__copy p{margin-left:0;margin-right:0}.ep-banner--category.ep-banner--title-bottom-center .ep-banner__copy{margin-left:auto;margin-right:auto;text-align:center}.ep-banner--category.ep-banner--title-bottom-right .ep-banner__copy{margin-left:auto;margin-right:0;text-align:right}.ep-banner--category.ep-banner--title-bottom-right .ep-banner__copy p{margin-left:auto;margin-right:0}@media (max-width:600px){.ep-banner--category.ep-banner--title-bottom-left .ep-banner__content,.ep-banner--category.ep-banner--title-bottom-center .ep-banner__content,.ep-banner--category.ep-banner--title-bottom-right .ep-banner__content{padding-bottom:34px}}.ep-banner--mode-color{background:transparent}.ep-banner--mode-color .ep-banner__visual{background:var(--ep-banner-solid,#fff)}.ep-banner--mode-color .ep-banner__shade{background:transparent}.ep-banner--mode-color.ep-banner--no-media .ep-banner__shade{background:transparent}.ep-banner--solid-light .ep-banner__copy{color:#1f2430;text-shadow:none}.ep-banner--solid-light .ep-banner__copy h1{color:#1f2430}.ep-banner--solid-light .ep-banner__copy p{color:rgba(31,36,48,.72)}.ep-banner-discovery{width:min(820px,100%);display:grid;gap:9px;margin:11px auto 0}.ep-banner-discovery__types,.ep-banner-discovery__hot{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px}.ep-banner-discovery__type,.ep-banner-discovery__hot a{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:999px;text-decoration:none;font-size:12px;font-weight:750;transition:transform .16s ease,background .16s ease,color .16s ease}.ep-banner-discovery__type{background:color-mix(in srgb,var(--ep-card) 72%,transparent);border:1px solid color-mix(in srgb,var(--ep-line) 78%,transparent);color:var(--ep-text);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.ep-banner-discovery__type:hover{color:var(--ep-accent);background:color-mix(in srgb,var(--ep-accent) 10%,var(--ep-card));transform:translateY(-1px)}.ep-banner-discovery__hot{font-size:12px;color:var(--ep-muted)}.ep-banner-discovery__hot>span{font-weight:800}.ep-banner-discovery__hot a{min-height:0;padding:2px 4px;color:inherit}.ep-banner-discovery__hot a:hover{color:var(--ep-accent)}.ep-banner--has-media .ep-banner-discovery__type{background:rgba(10,15,28,.28);border-color:rgba(255,255,255,.24);color:#fff}.ep-banner--has-media .ep-banner-discovery__hot,.ep-banner--has-media .ep-banner-discovery__hot a{color:rgba(255,255,255,.82)}.ep-banner--has-media .ep-banner-discovery__hot a:hover{color:#fff}@media (max-width:760px){.ep-banner-discovery{width:100%}.ep-banner-discovery__types{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px;scrollbar-width:none}.ep-banner-discovery__types::-webkit-scrollbar{display:none}.ep-banner-discovery__type{white-space:nowrap}}

/* v0.5.51.152 — banner copy must keep deliberate contrast. Global light-theme
 * heading rules use !important, so explicitly protect the banner title. */
html[data-ep-theme="light"] .ep-banner:not(.ep-banner--solid-light) .ep-banner__copy h1{color:#fff!important;text-shadow:0 2px 18px rgba(3,8,20,.34),0 1px 3px rgba(3,8,20,.34)!important;font-weight:780}
html[data-ep-theme="light"] .ep-banner.ep-banner--solid-light .ep-banner__copy h1{color:#1f2430!important;text-shadow:none!important}

/* v0.5.51.163 — category text shade follows the title position, so the control has a visible, predictable effect. */
.ep-banner--category.ep-banner--has-media.ep-banner--title-bottom-left .ep-banner__shade{
  background:linear-gradient(90deg,rgba(8,12,24,var(--ep-banner-overlay)) 0%,rgba(8,12,24,calc(var(--ep-banner-overlay) * .82)) 36%,rgba(8,12,24,calc(var(--ep-banner-overlay) * .28)) 72%,rgba(8,12,24,0) 100%),linear-gradient(0deg,rgba(8,12,24,calc(var(--ep-banner-overlay) * .62)) 0%,rgba(8,12,24,0) 58%);
}
.ep-banner--category.ep-banner--has-media.ep-banner--title-bottom-right .ep-banner__shade{
  background:linear-gradient(270deg,rgba(8,12,24,var(--ep-banner-overlay)) 0%,rgba(8,12,24,calc(var(--ep-banner-overlay) * .82)) 36%,rgba(8,12,24,calc(var(--ep-banner-overlay) * .28)) 72%,rgba(8,12,24,0) 100%),linear-gradient(0deg,rgba(8,12,24,calc(var(--ep-banner-overlay) * .62)) 0%,rgba(8,12,24,0) 58%);
}
.ep-banner--category.ep-banner--has-media.ep-banner--title-bottom-center .ep-banner__shade{
  background:radial-gradient(ellipse 58% 68% at 50% 100%,rgba(8,12,24,var(--ep-banner-overlay)) 0%,rgba(8,12,24,calc(var(--ep-banner-overlay) * .62)) 42%,rgba(8,12,24,0) 100%),linear-gradient(0deg,rgba(8,12,24,calc(var(--ep-banner-overlay) * .42)) 0%,rgba(8,12,24,0) 62%);
}
