.travel-banner{padding-top:30px}
.banner-stage{position:relative;height:500px;border-radius:0;overflow:hidden;background:#172e35}
.banner-slide{position:absolute;inset:0;isolation:isolate}
.banner-slide:not([hidden]){animation:banner-reveal .65s ease-out both}
.banner-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%;z-index:-2}
.banner-slide:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,24,30,.73),rgba(9,24,30,.25) 55%,rgba(9,24,30,.04)),linear-gradient(0deg,rgba(9,24,30,.3),transparent 35%)}
.banner-copy{position:absolute;left:6%;top:50%;transform:translateY(-50%);max-width:62%;color:#fff;padding-bottom:20px}
.banner-title{font-size:46px;font-weight:700;line-height:1.3;letter-spacing:-1.5px;text-wrap:balance;color:#fff}
.banner-copy p{color:rgba(255,255,255,.9);font-size:16px;line-height:1.75;letter-spacing:-.02em;margin-top:24px;max-width:360px}
.banner-link{color:#fff;font-size:14px;font-weight:700;margin-top:30px;padding:11px 0 8px;border-bottom:1px solid rgba(255,255,255,.7)}
.banner-link:hover{border-color:#fff}
.banner-japan .banner-image{object-position:50% 48%}
.banner-bali .banner-image{object-position:50% 52%}
.banner-paris .banner-image{object-position:50% 50%}
.banner-dots{display:flex;position:absolute;bottom:18px;left:50%;transform:translateX(-50%);z-index:2;gap:1px}
.banner-dot{width:32px;height:36px;padding:0;display:grid;place-items:center}
.banner-dot span{display:block;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.45);transition:background .2s,transform .2s}
.banner-dot[aria-pressed=true] span{background:#fff;border-color:#fff;transform:scale(1.25)}
.banner-dot:hover span{background:#fff}

@keyframes banner-reveal{from{opacity:0}to{opacity:1}}
@media(max-width:1050px){html.touch-layout .banner-stage{height:430px}html.touch-layout .banner-title{font-size:44px}html.touch-layout .banner-copy p{font-size:14px;max-width:290px}}
@media(max-width:760px){html.touch-layout .travel-banner{padding-top:18px}html.touch-layout .banner-stage{height:460px;border-radius:0}html.touch-layout .banner-copy{left:26px;right:26px;top:auto;bottom:80px;transform:none;max-width:none;padding:0}html.touch-layout .banner-title{font-size:36px;line-height:1.25}html.touch-layout .banner-copy p{font-size:14px;margin-top:17px;max-width:270px}html.touch-layout .banner-link{font-size:13px;margin-top:22px}html.touch-layout .banner-slide:after{background:linear-gradient(0deg,rgba(9,24,30,.82),rgba(9,24,30,.24) 75%,rgba(9,24,30,.08))}html.touch-layout .banner-image{object-position:65% 50%}html.touch-layout .banner-dots{bottom:17px}html.touch-layout .banner-japan .banner-image{object-position:60% 50%}html.touch-layout .banner-paris .banner-image{object-position:62% 50%}}
@media(prefers-reduced-motion:reduce){.banner-slide:not([hidden]){animation:none}.banner-dot span{transition:none}}

/* Featured lecture: full banner on desktop, readable event information on phones. */
.banner-lecture{background:#e5f3fa}.banner-lecture:after{display:none}.lecture-banner-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.lecture-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lecture-mobile-copy{display:none}.lecture-actions{position:absolute;right:24px;top:24px;display:flex;gap:8px}.lecture-actions a{padding:11px 17px;background:#173c66;color:#fff;font-size:13px;font-weight:650;border:1px solid #173c66}.lecture-actions a+a{color:#173c66;background:#edf6fb}.stage-lecture .banner-dot span{background:#a1b6c9;border-color:#a1b6c9}.stage-lecture .banner-dot[aria-pressed=true] span{background:#173c66;border-color:#173c66}@media(max-width:760px){html.touch-layout .banner-stage.stage-lecture{background:#e5f3fa}html.touch-layout .banner-lecture .lecture-banner-image{display:none}html.touch-layout .lecture-mobile-copy{display:block;padding:28px 24px;color:#173c66}html.touch-layout .lecture-speaker{font-size:13px;font-weight:650;margin:0 0 15px}html.touch-layout .lecture-mobile-title{font-size:30px;font-weight:700;line-height:1.32;letter-spacing:-.8px;margin:0 0 22px}html.touch-layout .lecture-mobile-copy dl{margin:0;display:grid;gap:13px}html.touch-layout .lecture-mobile-copy dl>div{display:grid;grid-template-columns:37px minmax(0,1fr);gap:12px;font-size:13px;line-height:1.65}html.touch-layout .lecture-mobile-copy dt{font-weight:700}html.touch-layout .lecture-mobile-copy dd{margin:0;overflow-wrap:anywhere}html.touch-layout .lecture-mobile-copy dd a{color:inherit}html.touch-layout .lecture-actions{left:24px;right:24px;top:auto;bottom:48px}html.touch-layout .lecture-actions a{flex:1;text-align:center;font-size:13px;padding:11px 8px}html.touch-layout .stage-lecture .banner-dots{bottom:9px}}


.stage-lecture .banner-dots{left:50%;bottom:12px;transform:translateX(-50%)}

/* Use the same stage dimensions as every existing travel slide. */
@media(max-width:760px){html.touch-layout .lecture-mobile-copy{padding:16px 20px}html.touch-layout .lecture-speaker{font-size:11px;line-height:1.3;margin:0 0 7px}html.touch-layout .lecture-mobile-title{font-size:24px;line-height:1.2;margin:0 0 10px;letter-spacing:-.5px}html.touch-layout .lecture-mobile-copy dl{gap:4px}html.touch-layout .lecture-mobile-copy dl>div{grid-template-columns:29px minmax(0,1fr);gap:8px;font-size:12px;line-height:1.5}html.touch-layout .lecture-actions{left:20px;right:20px;bottom:44px}html.touch-layout .lecture-actions a{font-size:12px;padding:7px 8px}html.touch-layout .stage-lecture .banner-dots{bottom:3px}}
