.video-band{position:relative;max-width:1400px;margin:clamp(44px,6vw,70px) auto 0;padding-inline:clamp(20px,6vw,100px)}
.video-band .ph{position:relative;height:clamp(300px,38vw,560px);overflow:hidden}
.video-band img{width:100%;height:100%;object-fit:cover}
.video-band .play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.video-band .play{flex-direction:column;gap:14px}
.video-band .play span.c{width:78px;height:78px;border-radius:50%;background:rgba(163,137,122,.85);display:grid;place-content:center}
.video-band .play b{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#fff}
.video-band .play .m{width:22px;height:22px;color:#fff}
.season{padding-block:var(--gap)}
.season h2{font-family:var(--display);font-weight:300;text-align:center;font-size:clamp(36px,5vw,64px);text-transform:uppercase}
.season .txt{max-width:820px;margin:26px auto 0;text-align:center;color:#736862;font-size:15px}
.sgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:clamp(46px,6vw,70px)}
.sgrid figure{height:clamp(240px,26vw,420px);overflow:hidden}
.sgrid img{width:100%;height:100%;object-fit:cover;transition:.5s}
.sgrid figure:hover img{transform:scale(1.04)}
.sgrid.four{grid-template-columns:repeat(4,1fr)}
.sgrid figure:nth-child(2){transform:translateY(50px)}
@media(max-width:820px){.sgrid,.sgrid.four{grid-template-columns:repeat(2,1fr)}.sgrid figure:nth-child(2){transform:none}}
@media(max-width:520px){.sgrid,.sgrid.four{grid-template-columns:1fr}}
.meet{position:relative;min-height:249px;display:flex;align-items:center;overflow:hidden;color:#fff}
.meet .bg{position:absolute;inset:0;background:url('../img/banner_meet.jpg') center/cover no-repeat}
.meet .grad{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.10) 100%)}
.meet .meet-in{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:30px;width:100%;padding:44px clamp(24px,4vw,60px)}
.meet h3{font-weight:700;font-size:19px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px}
.meet p{font-size:15px;color:rgba(255,255,255,.86);max-width:640px}
@media(max-width:1200px){.meet{min-height:0}.meet .meet-in{flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:28px;padding:48px 40px}.meet .meet-in > div{width:100%}.meet h3{font-size:19px}.meet p{font-size:18px;line-height:26px;max-width:640px;margin-inline:auto}}
@media(max-width:760px){.meet .meet-in{gap:24px;padding:36px 24px}.meet p{max-width:none}}
.map{background:var(--cream);padding-top:var(--gap)}
.map .head{text-align:center;max-width:843px;margin:0 auto}
.map .head h2{font-family:var(--display);font-weight:300;font-size:clamp(36px,5.2vw,72px);line-height:1.06;text-transform:uppercase}
.map .head p{margin-top:28px;color:#736862;font-size:16px}
.legend{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 32px;margin:46px 0 34px}
.legend span{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.04em;color:#736862}
.legend i{width:28px;height:3px;border-radius:2px;flex:none}
.legend i.dot{width:12px;height:12px;border-radius:50%}
/* Figma: the map runs the full 1600 frame, so break it out of .wrap's padding */
.map-img{margin-top:64px;width:100vw;margin-left:calc(50% - 50vw)}
.map-img img{width:100%;display:block}

/* mobile tier (page) */
@media(max-width:1200px){
  .video-band{margin-top:40px}
  .video-band .ph{height:clamp(220px,52vw,420px)}
  .season{padding-block:72px}
  .season h2{font-size:clamp(26px,6vw,46px)}
  .season .txt{font-size:17px;line-height:26px}
  .sgrid{margin-top:36px;gap:12px}
  .sgrid figure{height:clamp(180px,42vw,320px)}
  .sgrid figure:nth-child(2){transform:none}
  .map{padding-top:72px}
  .map .head h2{font-size:clamp(26px,6vw,46px)}
}
