/* Native banner rails; category and partner scrolling stay independent. */
.bn-track{display:flex;align-items:stretch;gap:0;width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-snap-stop:normal;scroll-behavior:auto;overscroll-behavior-x:contain;touch-action:pan-x pan-y pinch-zoom;scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-user-select:none;user-select:none}
.bn-track::-webkit-scrollbar{display:none}.bn-track:focus-visible{outline:2px solid #4dffff;outline-offset:-3px}.bn-slide{position:relative;flex:0 0 100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:normal;overflow:hidden}.bn-slide img{-webkit-user-drag:none;pointer-events:none}.bn-pagination{position:absolute;z-index:4;display:flex;gap:0;align-items:center}.bn-dot{display:grid;place-items:center;width:32px;height:32px;padding:0;border-radius:7px;background:transparent}.bn-dot span{width:6px;height:6px;border-radius:9px;background:#a2b2ad;transition:width .2s,background-color .2s}.bn-dot[aria-current="true"] span{width:24px;background:#4dffff}.bn-arrows{position:absolute;z-index:4;right:20px;bottom:52px;display:flex;gap:7px}.bn-arrow{width:34px;height:34px;display:grid;place-items:center;border:1px solid #ffffff33;border-radius:8px;background:#101919aa;color:#dcf5ed}.bn-arrow .icon{width:17px;height:17px}
.hero.bn-home{display:block}.bn-home>.bn-track{min-height:inherit}.bn-home .bn-slide{min-height:inherit;display:flex;align-items:center}.bn-home .bn-pagination{left:35px;bottom:6px}.bn-home .bn-title{font-size:clamp(32px,3.05vw,49px);line-height:1.23;letter-spacing:-1.5px;margin:0 0 14px;font-weight:850}.bn-home .bn-title em{font-style:normal;color:#4dffff}.bn-slide:not(.is-active) .hero-art,.bn-home:not(.is-in-view) .hero-art{animation-play-state:paused;will-change:auto}
.auth-guest-actions,.auth-member-actions{display:flex;align-items:center;gap:inherit}.member-preview-pill{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border:1px solid #356d63;border-radius:7px;color:#b6eee0;background:#1e3530;font-size:12px;font-weight:700;white-space:nowrap}.member-preview-pill .icon{width:17px;height:17px}
body[data-auth-state="member-preview"] .breadcrumb{display:none}body[data-auth-state="member-preview"] .hero.bn-home{min-height:245px}body[data-auth-state="member-preview"] .bn-home .hero-copy{padding:27px 38px 43px}body[data-auth-state="member-preview"] .bn-home .bn-title{font-size:35px;margin-bottom:10px}body[data-auth-state="member-preview"] .bn-home .hero-copy p{margin-bottom:16px}body[data-auth-state="member-preview"] [data-session-secondary]{display:none}
.account-banner.account-banner-carousel{padding:0;min-height:146px}.account-banner-carousel>.bn-track{min-height:inherit}.account-banner-slide{min-height:inherit;padding:20px 28px 35px}.account-banner-slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:73% 46%;opacity:.75}.account-banner-copy h3{font-size:21px;line-height:1.25;letter-spacing:-.4px;margin:8px 0;font-weight:800}.account-banner-carousel .bn-pagination{left:20px;bottom:0}.account-banner-carousel .bn-dot{width:26px;height:26px}.account-banner-carousel .bn-dot[aria-current="true"] span{width:19px}.account-banner-carousel .bn-dot span{width:5px;height:5px}.account-banner-carousel .account-close{z-index:5}
@media(hover:hover) and (pointer:fine){.bn-arrow:hover{border-color:#4dffff99;background:#294b43}.bn-dot:hover span{background:#cbfff4}}
@media(max-width:1020px){.bn-home .bn-title{font-size:34px}}
@media(max-width:760px){
 .bn-home .bn-title{font-size:32px;line-height:1.27;letter-spacing:-1.3px;margin-bottom:10px}.bn-home .bn-pagination{left:15px;bottom:4px}.bn-arrows{display:none}.member-preview-pill{padding:7px 8px;font-size:11px;gap:5px}.member-preview-pill .icon{width:15px;height:15px}.top-right .auth-member-actions .btn{font-size:13px}
 body[data-auth-state="member-preview"] .hero.bn-home{min-height:225px}body[data-auth-state="member-preview"] .bn-home .hero-copy{padding:22px 23px 39px}body[data-auth-state="member-preview"] .bn-home .bn-title{font-size:27px;line-height:1.2;margin-bottom:9px}body[data-auth-state="member-preview"] .bn-home .hero-copy p{font-size:12px;line-height:1.5;margin-bottom:12px;max-width:220px}body[data-auth-state="member-preview"] .bn-home .hero-cta{flex-direction:row}body[data-auth-state="member-preview"] .bn-home .hero-cta .btn{font-size:13px;min-height:38px;padding-inline:16px}
 .account-banner.account-banner-carousel{min-height:140px}.account-banner-slide{padding:18px 20px 32px;padding-top:calc(18px + env(safe-area-inset-top,0px))}.account-banner-carousel .bn-pagination{left:13px}
}
@media(max-height:480px){.account-banner.account-banner-carousel{min-height:106px}.account-banner-slide{padding-block:13px 25px}.account-banner-copy h3{font-size:19px;margin:6px 0}.account-banner-copy h3 br{display:none}.account-banner-copy p{display:none}}
@media(prefers-reduced-motion:reduce){.bn-track{scroll-behavior:auto!important}.bn-dot span{transition:none}}
/* Keep shading inside each scroll plane so it never covers the banner copy. */
.hero.bn-home::after,.account-banner-carousel::after{display:none}
.bn-home .bn-slide::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#1c1c1c 0%,#1c1c1cf0 23%,#1c1c1c40 55%,transparent 77%);pointer-events:none}.bn-home .hero-copy{z-index:2}
.account-banner-slide::after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#172a28 0%,#172a28ee 32%,#172a2833 75%);pointer-events:none}.account-banner-slide .account-banner-copy{z-index:1}
@media(max-width:760px){.bn-home .bn-slide::after{background:linear-gradient(90deg,#1c1c1cee,#1c1c1c98 42%,transparent 85%),linear-gradient(0deg,#1c1c1c99,transparent 50%)}}

/* A separate compact campaign rail appears only in the member preview. */
.member-bn{position:relative;margin:0 0 8px}
.member-bn-window{position:relative;aspect-ratio:2.18/1;min-height:150px;max-height:240px;overflow:hidden;border-radius:12px;background:#131c1c;isolation:isolate}
.member-bn-window>.bn-track{position:absolute;inset:0;height:100%;scroll-snap-type:x mandatory;overflow-anchor:none}
.member-bn-slide{display:flex;align-items:center;height:100%;contain:paint;background:#111c1c}
.member-bn-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% 50%;pointer-events:none}
.member-bn-slide::after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,#101a1bea 0%,#101a1bc4 25%,#101a1b28 60%,transparent 78%);pointer-events:none}
.member-bn-copy{position:relative;z-index:1;width:66%;padding:26px 34px;color:#f5fafa}
.member-bn-kicker{display:flex;align-items:center;gap:10px;color:#9de9db;font-size:12px;font-weight:650;line-height:1.4;margin:0 0 10px}
.member-bn-kicker>span{padding:2px 6px;border:1px solid #95c6b540;border-radius:4px;color:#b4c8c0;font-size:10px;font-weight:500}
.member-bn-copy h2{font-size:clamp(26px,3vw,40px);font-weight:800;letter-spacing:-.6px;line-height:1.25;margin:0 0 9px}
.member-bn-copy p{font-size:14px;line-height:1.6;color:#c3d1cc;margin:0 0 18px}
.member-bn-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:40px;padding:0 17px;background:linear-gradient(120deg,#00ddb8,#58eaf1);border:1px solid #83f2e270;border-radius:7px;color:#10201f;font-size:14px;font-weight:750;line-height:1.3}
.member-bn-action .icon{width:17px;height:17px}
.member-bn>.bn-pagination{position:relative;inset:auto;justify-content:center;min-height:40px;margin-top:2px}
.member-bn>.bn-arrows{right:0;bottom:2px}
@media(hover:hover) and (pointer:fine){.member-bn-action:hover{box-shadow:0 3px 16px #00eeff30;filter:brightness(1.08)}}
@media(max-width:760px){
 .member-bn{margin-top:0;margin-bottom:0}
 .member-bn-window{max-height:204px;border-radius:10px}
 .member-bn-copy{padding:14px 16px}
 .member-bn-kicker{font-size:10px;gap:7px;margin-bottom:6px}.member-bn-kicker>span{font-size:8px;padding:1px 4px}
 .member-bn-copy h2{font-size:clamp(20px,5.5vw,25px);letter-spacing:-.5px;margin-bottom:6px}
 .member-bn-copy p{font-size:11.5px;line-height:1.5;margin-bottom:10px}
 .member-bn-action{font-size:12px;min-height:33px;padding-inline:12px;gap:7px}.member-bn-action .icon{width:14px;height:14px}
 .member-bn>.bn-pagination{min-height:34px;margin-top:1px}.member-bn .bn-dot{height:32px;width:30px}
}
@media(max-width:360px){.member-bn-copy{padding:13px 14px}.member-bn-copy h2{font-size:20px}.member-bn-copy p{font-size:11px}.member-bn-kicker{margin-bottom:5px}}

/* Desktop campaign rails show three complete cards; smaller screens keep one. */
@media(min-width:1100px){
 .member-bn-window{aspect-ratio:6.54/1;min-height:160px;max-height:none;background:transparent;overflow:hidden}
 .member-bn-window>.bn-track{gap:16px}
 .member-bn-slide{flex:0 0 calc((100% - 32px)/3);border-radius:12px;isolation:isolate}
 .member-bn-copy{width:76%;padding:18px 20px}
 .member-bn-kicker{font-size:10px;gap:6px;margin-bottom:8px}
 .member-bn-kicker>span{font-size:8px}
 .member-bn-copy h2{font-size:clamp(19px,1.55vw,28px);margin-bottom:7px}
 .member-bn-copy p{font-size:11px;line-height:1.5;margin-bottom:12px}
 .member-bn-action{font-size:12px;min-height:33px;padding-inline:12px;gap:6px}
 .member-bn-art{object-position:65% 50%}

}
.bn-dot[hidden],.bn-arrow[hidden]{display:none}
