:root{--blue:#0089b2;--yellow:#ffd84d;--black:#111;--white:#fff;--pad:clamp(18px,4vw,64px)}
.event-card__image{position:relative}
.event-card__status{position:absolute;top:10px;right:10px;padding:7px 10px;color:#111;background:var(--yellow);border:1px solid #111;border-radius:99px;font-size:.72rem;font-weight:700;letter-spacing:normal;line-height:1;text-transform:none;box-shadow:0 3px 0 rgba(0,0,0,.16)}
.events-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);min-height:calc(100svh - 72px);background:#fff}
.events-hero__copy{display:flex;align-items:flex-start;justify-content:center;padding:clamp(55px,8vw,120px) var(--pad);flex-direction:column}
.events-hero h1{max-width:780px;margin:0;font-size:clamp(4.3rem,8vw,8.5rem);font-weight:500;letter-spacing:-.065em;line-height:.82}
.events-hero p{max-width:620px;margin:32px 0;font-size:1.05rem;line-height:1.65}
.events-hero__copy>div{display:flex;flex-wrap:wrap;gap:10px}
.event-button{display:inline-flex;min-height:50px;padding:0 19px;align-items:center;justify-content:center;color:#111;background:#fff;border:2px solid #111;border-radius:12px;font-size:1rem;font-weight:600}
.event-button.primary{color:#fff;background:var(--blue);border-color:var(--blue-text)}
.events-hero__media{min-height:580px;overflow:hidden}
.events-hero__media img{width:100%;height:100%;object-fit:cover}
.event-service{display:grid;grid-template-columns:repeat(4,1fr);background:var(--yellow)}
.event-service p{margin:0;padding:22px;text-align:center;border-right:2px solid #111;font-size:1rem;font-weight:500}
.event-service p:last-child{border:0}
.favorites,.event-catalogue{padding:clamp(65px,9vw,120px) var(--pad)}
.favorites{background:#fff}
.events-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;max-width:1550px;margin:0 auto 32px}
.events-heading h2{margin:0;font-size:clamp(2.7rem,5vw,5rem);font-weight:500;letter-spacing:-.05em}
.events-heading p{max-width:390px;margin:0;font-size:1rem;line-height:1.55}
.favorite-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(15px,2vw,28px);max-width:1550px;margin:auto}
.favorite-grid article{position:relative;aspect-ratio:1.25;overflow:hidden;border-radius:18px}
.favorite-grid img{width:100%;height:100%;object-fit:cover;transition:.35s}
.favorite-grid h3{position:absolute;right:0;bottom:0;left:0;margin:0;padding:50px 18px 18px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.8));font-size:1.15rem;font-weight:500}
.favorite-grid article:hover img{transform:scale(1.035)}
.event-catalogue{background:#f3f7f8}
.event-filters{display:flex;gap:8px;max-width:1550px;margin:0 auto 25px;overflow-x:auto;padding-bottom:2px}
.event-filters button{flex:0 0 auto;padding:10px 14px;color:#111;background:#fff;border:1px solid #111;border-radius:99px;font-size:.95rem}
.event-filters button.is-active{color:#fff;background:var(--blue);border-color:var(--blue-text)}
.event-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(12px,1.5vw,22px);max-width:1550px;margin:auto}
.event-card.is-hidden{display:none}
.event-card__image{aspect-ratio:1;overflow:hidden;background:#fff;border-radius:14px}
.event-card img{width:100%;height:100%;padding:5%;object-fit:contain;transition:.3s}
.event-card:hover img{transform:scale(1.04)}
.event-card h3{margin:11px 2px 3px;font-size:1rem;font-weight:500;line-height:1.15}
.event-card p{margin:0 2px;color:var(--blue-text);font-size:.92rem;text-transform:capitalize}
.event-book{display:flex;align-items:center;justify-content:space-between;gap:45px;padding:clamp(60px,8vw,105px) var(--pad);color:#fff;background:var(--blue)}
.event-book h2{max-width:800px;margin:0;font-size:clamp(3rem,6vw,6rem);font-weight:500;letter-spacing:-.055em;line-height:.9}
.event-book p{max-width:680px;font-size:1.05rem;line-height:1.6}
.event-book>div:last-child{display:flex;min-width:235px;flex-direction:column;gap:10px}
.event-book .primary{color:#111;background:var(--yellow);border-color:var(--yellow)}
.event-book .event-button:not(.primary){color:#fff;background:transparent;border-color:#fff}
@media(max-width:1100px){.events-hero{grid-template-columns:1fr}
.events-hero__media{height:62vw;min-height:440px;grid-row:1}
.events-hero__copy{grid-row:2}
.event-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:760px){.events-hero{min-height:0}
.events-hero__media{height:70vw;min-height:300px}
.events-hero__copy{padding:45px 18px 55px}
.events-hero h1{font-size:clamp(4rem,18vw,6rem)}
.events-hero p{font-size:1rem}
.event-service{grid-template-columns:1fr 1fr}
.event-service p{border-bottom:2px solid #111}
.event-service p:nth-child(2){border-right:0}
.event-service p:nth-child(3),.event-service p:nth-child(4){border-bottom:0}
.favorites,.event-catalogue{padding:55px 14px}
.events-heading{align-items:flex-start;flex-direction:column;gap:10px}
.events-heading h2{font-size:3rem}
.favorite-grid{grid-template-columns:1fr 1fr;gap:10px}
.favorite-grid article{aspect-ratio:1}
.favorite-grid h3{padding:35px 11px 11px;font-size:1rem}
.event-grid{grid-template-columns:repeat(2,1fr);gap:20px 10px}
.event-card h3{font-size:.98rem}
.event-book{align-items:flex-start;flex-direction:column;padding:55px 18px}
.event-book h2{font-size:3.3rem}
.event-book>div:last-child{width:100%}
}
.events-hero{position:relative;display:block;min-height:calc(100svh - 72px);overflow:hidden;color:#fff;background:#111}
.events-hero__media{position:absolute;inset:0;min-height:0}
.events-hero__media img{padding:0;object-fit:cover}
.events-hero__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.48) 48%,rgba(0,0,0,.08) 100%)}
.events-hero__copy{position:relative;z-index:2;min-height:calc(100svh - 72px);max-width:900px;padding:clamp(70px,10vw,145px) var(--pad)}
.events-hero h1{font-size:clamp(5rem,10vw,10rem);line-height:.78}
.events-hero p{max-width:560px;font-size:1.15rem}
.events-hero .event-button:not(.primary){color:#111;background:#fff;border-color:#fff}
.hero-scroll{position:absolute;z-index:2;right:var(--pad);bottom:30px;color:#fff;font-size:.98rem}
.game-ticker{overflow:hidden;padding:16px 0;color:#111;background:var(--yellow);border-block:2px solid #111}
.game-ticker>div{display:flex;width:max-content;align-items:center;gap:24px;animation:eventTicker 24s linear infinite}
.game-ticker span{font-size:1.05rem;font-weight:600;letter-spacing:normal}
.game-ticker b{color:var(--blue-text);font-size:.92rem}
@keyframes eventTicker{to{transform:translateX(-50%)}
}
.favorites{padding-block:clamp(75px,10vw,145px)}
.favorites .events-heading h2{max-width:950px}
.favorite-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:170px}
.favorite-grid article{aspect-ratio:auto}
.favorite-grid article:nth-child(1){grid-column:span 7;grid-row:span 2}
.favorite-grid article:nth-child(2){grid-column:span 5;grid-row:span 3}
.favorite-grid article:nth-child(3){grid-column:span 4;grid-row:span 2}
.favorite-grid article:nth-child(4){grid-column:span 3;grid-row:span 2}
.favorite-grid article:nth-child(5){grid-column:span 6;grid-row:span 2}
.favorite-grid article:nth-child(6){grid-column:span 6;grid-row:span 2}
.favorite-grid h3{font-size:1.25rem}
.event-catalogue{background:#fff}
.event-card__image{background:#e9f7fa}
.event-card:nth-child(3n+2) .event-card__image{background:#fff8dc}
.event-card:nth-child(3n+3) .event-card__image{background:#fff;border:1px solid rgba(0,137,178,.2)}
.will-reveal{opacity:0;transform:translateY(22px);transition:opacity .55s ease,transform .55s ease}
.will-reveal.is-visible{opacity:1;transform:none}
@media(max-width:760px){.events-hero{min-height:720px}
.events-hero__media{position:absolute;height:auto;min-height:0}
.events-hero__copy{min-height:720px;padding:85px 18px 90px}
.events-hero h1{font-size:clamp(4.7rem,21vw,7rem)}
.events-hero__shade{background:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,.15))}
.hero-scroll{right:18px}
.game-ticker span{font-size:1rem}
.favorite-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto}
.favorite-grid article,.favorite-grid article:nth-child(n){grid-column:span 1;grid-row:span 1;aspect-ratio:1}
.favorite-grid article:first-child{grid-column:1/-1;aspect-ratio:1.45}
.favorite-grid h3{font-size:1rem}
}
@media(prefers-reduced-motion:reduce){.game-ticker>div{animation:none}
.will-reveal{opacity:1;transform:none}
}
.events-hero__media{display:grid;background:#111;place-items:center}
.events-hero__media img{width:100%;height:100%;object-fit:contain}
.event-service{position:relative;padding:34px var(--pad);background:#fff}
.event-service:before{position:absolute;top:50%;right:calc(var(--pad) + 7%);left:calc(var(--pad) + 7%);height:3px;background:var(--blue);content:""}
.event-service p{position:relative;z-index:1;display:grid;gap:10px;padding:0;background:#fff;border:0;font-size:1rem;place-items:center}
.event-service p:before{display:block;width:18px;height:18px;background:var(--yellow);border:4px solid var(--blue);border-radius:50%;content:""}
.favorites{padding-block:clamp(55px,7vw,90px)}
.favorite-grid{max-width:1180px;grid-auto-rows:110px}
.favorite-grid article{background:#111}
.favorite-grid img{padding:0;object-fit:contain}
.favorite-grid h3{font-size:1rem}
.event-card{cursor:pointer}
.event-card:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}
.event-modal-backdrop{position:fixed;z-index:69;inset:0;background:rgba(0,0,0,.62);opacity:0;pointer-events:none;transition:.3s}
.event-modal-backdrop.is-visible{opacity:1;pointer-events:auto}
.event-modal{position:fixed;z-index:70;inset:clamp(10px,4vw,55px);display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;background:#fff;border-radius:22px;opacity:0;pointer-events:none;transform:translateY(16px) scale(.985);transition:.3s}
.event-modal.is-open{opacity:1;pointer-events:auto;transform:none}
.event-modal__close{position:absolute;z-index:2;top:16px;right:16px;width:42px;height:42px;background:var(--yellow);border:0;border-radius:50%;font-size:1.5rem}
.event-modal__media{display:grid;min-height:0;padding:7%;background:#e9f7fa;place-items:center}
.event-modal__media img{width:100%;height:100%;object-fit:contain}
.event-modal__copy{display:flex;justify-content:center;padding:clamp(40px,6vw,85px);flex-direction:column}
.event-modal__copy>p{margin:0 0 8px;color:var(--blue-text);font-size:.92rem;font-weight:600;text-transform:none}
.event-modal__copy h2{margin:0;font-size:clamp(2.8rem,5vw,5.5rem);font-weight:500;letter-spacing:-.055em;line-height:.9}
.event-modal__copy>div{margin:22px 0;color:#47565b;font-size:1rem;line-height:1.65}
.event-modal__copy>a{display:inline-flex;width:max-content;min-height:50px;padding:0 18px;align-items:center;color:#fff;background:var(--blue);border-radius:12px;font-weight:600}
@media(max-width:760px){.event-service{display:flex;padding:28px 20px;flex-direction:column;gap:0}
.event-service:before{top:38px;bottom:38px;left:29px;width:3px;height:auto}
.event-service p{display:flex;width:100%;gap:16px;padding:12px 0;text-align:left;justify-content:flex-start}
.event-service p:before{flex:0 0 18px}
.favorite-grid{grid-auto-rows:auto}
.favorite-grid article,.favorite-grid article:nth-child(n){aspect-ratio:1.2}
.event-modal{inset:6px;display:block;overflow:auto}
.event-modal__media{height:42vh;padding:8%}
.event-modal__copy{padding:28px 20px 45px}
.event-modal__copy h2{font-size:2.7rem}
.event-modal__copy>div{font-size:1rem}
}
.event-service:before{display:none}
.event-service p:not(:last-child):after{position:absolute;top:3px;left:calc(50% + 30px);width:calc(100% - 60px);color:var(--blue-text);content:"- - - →";font-size:1rem;font-weight:600;letter-spacing:normal;white-space:nowrap}
@media(max-width:760px){.event-service p:not(:last-child):after{top:auto;bottom:-12px;left:8px;width:18px;height:22px;color:var(--blue-text);content:"⋮\A↓";font-size:1rem;line-height:.65;letter-spacing:0;text-align:center;white-space:pre}
}
.events-hero__media{background:var(--blue)}
.favorite-grid article{background:#fff;border:1px solid rgba(0,137,178,.18)}
.event-service{display:grid;grid-template-columns:1fr 70px 1fr 70px 1fr 70px 1fr;align-items:center;padding:32px var(--pad);background:#fff}
.timeline-step{display:grid;gap:10px;text-align:center;place-items:center}
.timeline-step>span{display:block;width:18px;height:18px;background:var(--yellow);border:4px solid var(--blue);border-radius:50%}
.timeline-step p{display:block!important;width:auto!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;text-align:center!important}
.timeline-step p:before,.timeline-step p:after{display:none!important}
.timeline-arrow{position:relative;display:block;width:100%;height:2px;border-top:3px dashed var(--blue)}
.timeline-arrow:after{position:absolute;top:-8px;right:-1px;width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:11px solid var(--blue);content:""}
@media(max-width:760px){.event-service{display:grid;grid-template-columns:1fr;padding:28px 22px}
.timeline-step{display:grid;grid-template-columns:24px 1fr;gap:13px;text-align:left}
.timeline-step p{text-align:left!important}
.timeline-arrow{width:2px;height:34px;margin:3px 0 3px 8px;border-top:0;border-left:3px dashed var(--blue)}
.timeline-arrow:after{top:auto;right:auto;bottom:-1px;left:-7px;border-top:11px solid var(--blue);border-right:7px solid transparent;border-bottom:0;border-left:7px solid transparent}
}
.favorite-grid{display:block;max-width:980px;columns:3;column-gap:12px}
.favorite-grid article,.favorite-grid article:nth-child(n){display:inline-block;width:100%;margin:0 0 12px;overflow:hidden;background:transparent;border:0;aspect-ratio:auto;break-inside:avoid}
.favorite-grid img{display:block;width:100%;height:auto;max-height:none;object-fit:initial}
.favorite-grid h3{font-size:1rem}
@media(max-width:700px){.favorite-grid{max-width:540px;columns:2;column-gap:9px}
.favorite-grid article,.favorite-grid article:nth-child(n){margin-bottom:9px;aspect-ratio:auto}
.favorite-grid h3{font-size:.98rem}
}
.favorite-grid{display:grid;max-width:980px;grid-template-columns:repeat(12,1fr);grid-auto-rows:90px;gap:10px;columns:auto}
.favorite-grid article,.favorite-grid article:nth-child(n){display:block;width:auto;margin:0;background:var(--blue);border:0;aspect-ratio:auto}
.favorite-grid article:nth-child(even){background:var(--yellow)}
.favorite-grid article:nth-child(1){grid-column:span 7;grid-row:span 2}
.favorite-grid article:nth-child(2){grid-column:span 5;grid-row:span 3}
.favorite-grid article:nth-child(3){grid-column:span 4;grid-row:span 2}
.favorite-grid article:nth-child(4){grid-column:span 3;grid-row:span 2}
.favorite-grid article:nth-child(5){grid-column:span 6;grid-row:span 2}
.favorite-grid article:nth-child(6){grid-column:span 6;grid-row:span 2}
.favorite-grid img{width:100%;height:100%;padding:0;object-fit:contain}
.favorite-grid h3{font-size:1rem}
@media(max-width:700px){.favorite-grid{display:grid;max-width:540px;grid-template-columns:1fr 1fr;grid-auto-rows:145px;gap:8px;columns:auto}
.favorite-grid article,.favorite-grid article:nth-child(n){grid-column:span 1;grid-row:span 1;width:auto;margin:0;aspect-ratio:auto}
.favorite-grid article:first-child{grid-column:1/-1;grid-row:span 2}
.favorite-grid h3{font-size:.98rem}
}
.favorite-grid{display:block;max-width:1050px;columns:3;column-gap:14px}
.favorite-grid article,.favorite-grid article:nth-child(n){display:inline-block;width:100%;margin:0 0 20px;background:transparent;border:0;aspect-ratio:auto;break-inside:avoid}
.favorite-grid img{display:block;width:100%;height:auto;padding:0;object-fit:initial;border-radius:16px}
.favorite-grid h3{position:static;margin:8px 5px 0;padding:0;color:#111;background:none;font-size:1rem;font-weight:500}
@media(max-width:700px){.favorite-grid{display:block;max-width:560px;columns:2;column-gap:9px}
.favorite-grid article,.favorite-grid article:nth-child(n){display:inline-block;width:100%;margin:0 0 15px;aspect-ratio:auto}
.favorite-grid img{height:auto;border-radius:12px}
.favorite-grid h3{font-size:.98rem}
}
.events-hero__media img{display:block;width:100%;height:100%;object-fit:contain!important;object-position:50% 50%!important}
.favorite-grid{display:block;max-width:1450px;columns:5;column-gap:12px}
.favorite-grid article,.favorite-grid article:nth-child(n){display:inline-block;width:100%;margin:0 0 16px;vertical-align:top;break-inside:avoid-column;page-break-inside:avoid}
.favorite-grid img{width:100%;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center}
.favorite-grid h3{margin-top:7px;font-size:.98rem}
@media(max-width:1150px){.favorite-grid{columns:4}
}
@media(max-width:850px){.favorite-grid{columns:3}
}
@media(max-width:600px){.favorite-grid{columns:2;column-gap:9px}
.favorite-grid article,.favorite-grid article:nth-child(n){margin-bottom:14px}
}
.events-hero__media{position:absolute!important;inset:0!important;overflow:hidden;background:var(--blue)}
.events-hero__media img{position:absolute!important;top:50%!important;left:50%!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;transform:translate(-50%,-50%)!important}
.events-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);min-height:calc(100svh - 72px);color:#fff;background:linear-gradient(110deg,#062b36,#0089b2)}
.events-hero__shade{display:none}
.events-hero__copy{grid-column:1;grid-row:1;min-height:calc(100svh - 72px);max-width:none;padding:clamp(60px,7vw,105px) clamp(22px,4vw,64px)}
.events-hero h1{font-size:clamp(4.7rem,7.4vw,7.5rem);line-height:.82}
.events-hero__media{position:relative!important;inset:auto!important;grid-column:2;grid-row:1;min-height:calc(100svh - 72px);background:transparent}
.events-hero__media img{position:absolute!important;top:50%!important;left:50%!important;width:92%!important;height:86%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;transform:translate(-50%,-50%)!important}
.hero-scroll{right:25px}
@media(max-width:950px){.events-hero{grid-template-columns:1fr;min-height:0}
.events-hero__media{grid-column:1;grid-row:1;width:100%;height:min(70vw,560px);min-height:340px}
.events-hero__media img{width:100%!important;height:100%!important}
.events-hero__copy{grid-column:1;grid-row:2;min-height:0;padding:50px 20px 75px}
.events-hero h1{font-size:clamp(4.2rem,15vw,6.5rem)}
.hero-scroll{bottom:22px}
}
.favorites{scroll-margin-top:90px}
.favorites .events-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,390px);align-items:end}
.favorites .events-heading h2{max-width:760px;font-size:clamp(2.8rem,4.5vw,4.7rem);line-height:.95}
.favorite-grid{width:100%;max-width:1550px;columns:5;column-fill:balance}
@media(max-width:760px){.favorites{scroll-margin-top:72px}
.favorites .events-heading{display:block}
.favorites .events-heading h2{font-size:2.8rem}
.favorites .events-heading p{margin-top:12px}
}
/* Full-bleed event hero: the video is the background, centered in its frame. */
.events-hero{position:relative;display:block;min-height:calc(100svh - 72px);overflow:hidden;color:#fff;background:#111}
.events-hero__media{position:absolute!important;inset:0!important;width:100%;height:100%;min-height:0;background:#111}
.events-hero__media img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center center!important;transform:none!important}
.events-hero__shade{display:block;position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.28))}
.events-hero__copy{position:relative;z-index:2;display:flex;grid-column:auto;grid-row:auto;min-height:calc(100svh - 72px);max-width:900px;padding:clamp(70px,9vw,130px) var(--pad)}
@media(max-width:760px){.events-hero{min-height:720px}
.events-hero__media{position:absolute!important;height:100%;min-height:0;background:#111}
.events-hero__copy{min-height:720px;padding:80px 18px 90px}
.events-hero__shade{background:linear-gradient(0deg,rgba(0,0,0,.82),rgba(0,0,0,.12))}
}
/* Preserve the full video frame and match the six-tile reference masonry. */
.events-hero__media{background:#0089b2}
.events-hero__media img{object-fit:contain!important;object-position:center center!important}
.favorite-grid{display:block!important;width:100%;max-width:1550px!important;columns:3!important;column-gap:22px!important;column-fill:balance!important}
.favorite-grid article,.favorite-grid article:nth-child(n){display:inline-block!important;width:100%!important;margin:0 0 22px!important;break-inside:avoid!important;vertical-align:top!important}
@media(max-width:700px){.favorite-grid{columns:2!important;column-gap:10px!important}
.favorite-grid article,.favorite-grid article:nth-child(n){margin-bottom:15px!important}
}
/* More compact Crowd Favourites presentation. */
.favorites{padding:clamp(42px,5.5vw,72px) var(--pad)}
.favorites .events-heading{max-width:1120px;margin-bottom:24px}
.favorites .events-heading h2{font-size:clamp(2.5rem,3.8vw,4rem)}
.favorite-grid{max-width:1120px!important;column-gap:16px!important}
.favorite-grid article,.favorite-grid article:nth-child(n){margin-bottom:16px!important}
.favorite-grid img{border-radius:13px}
@media(max-width:700px){.favorites{padding:42px 14px}
.favorites .events-heading h2{font-size:2.45rem}
.favorite-grid{column-gap:9px!important}
.favorite-grid article,.favorite-grid article:nth-child(n){margin-bottom:13px!important}
}
/* Multi-image game galleries inside the detail overlay. */
.event-modal__media{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:14px}
.event-modal__media>[data-event-image]{min-width:0;min-height:0}
.event-modal__thumbs{display:flex;width:100%;gap:8px;padding:3px;overflow-x:auto;justify-content:center}
.event-modal__thumbs[hidden]{display:none}
.event-modal__thumbs button{flex:0 0 62px;width:62px;height:62px;padding:4px;overflow:hidden;background:#fff;border:2px solid transparent;border-radius:10px;cursor:pointer}
.event-modal__thumbs button.is-active{border-color:var(--blue-text)}
.event-modal__thumbs img{display:block;width:100%;height:100%;padding:0;object-fit:cover;border-radius:6px}
@media(max-width:760px){.event-modal__media{height:48vh;padding:6%;gap:9px}
.event-modal__thumbs{justify-content:flex-start}
.event-modal__thumbs button{flex-basis:52px;width:52px;height:52px}
}
.event-modal__description{position:relative;max-height:230px;padding-right:10px;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:var(--blue-text) rgba(0,137,178,.12);scrollbar-width:thin}
.event-modal__description::-webkit-scrollbar{width:7px}
.event-modal__description::-webkit-scrollbar-track{background:rgba(0,137,178,.12);border-radius:99px}
.event-modal__description::-webkit-scrollbar-thumb{background:var(--blue);border-radius:99px}
.event-modal__description p{margin:0 0 12px;line-height:1.55}
@media(max-width:760px){.event-modal__description{max-height:210px}
}
/* Mobile timeline: a quiet, readable list. */
@media(max-width:760px){
  .event-service{display:block;padding:10px 20px;background:#fff;overflow:visible}

  .timeline-step{display:block;min-height:0;padding:17px 2px;text-align:left;border-bottom:1px solid rgba(0,137,178,.22)}

  .timeline-step:last-child{border-bottom:0}

  .timeline-step>span{display:none}

  .timeline-step p{max-width:none;margin:0;color:#111;font-size:1rem;line-height:1.35;text-align:left!important}

  .timeline-arrow{display:none}

}
/* On phones the media itself fills the hero—no colored or black letterbox. */
@media(max-width:760px){.events-hero__media{background:transparent!important}
.events-hero__media img{width:100%!important;height:100%!important;object-fit:cover!important}
}
/* Simple, consistent directional cue without a text-character arrow. */
.hero-scroll{display:inline-flex;align-items:center;gap:10px}
.hero-scroll span{position:relative;display:block;width:16px;height:16px;border:1.5px solid currentColor;border-radius:50%}
.hero-scroll span:before{position:absolute;top:3px;left:7px;width:1.5px;height:7px;background:currentColor;content:""}
.hero-scroll span:after{position:absolute;bottom:3px;left:5px;width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;content:"";transform:rotate(45deg)}
/* Alternating event journey, inspired by the supplied timeline reference. */
.experience{overflow:hidden;padding:clamp(70px,9vw,125px) var(--pad);background:#fff}
.experience__heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 30px;max-width:1500px;margin:0 auto 70px}
.experience__heading h2{margin:0;font-size:clamp(3rem,5.7vw,6rem);font-weight:500;letter-spacing:-.055em;line-height:.9}
.experience__heading>span{max-width:270px;color:#5d6c71;font-size:1rem;line-height:1.45}
.experience__track{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:minmax(190px,auto) 42px minmax(190px,auto);max-width:1500px;margin:auto}
.experience__track:before{position:relative;grid-row:2;grid-column:1/-1;align-self:center;height:2px;background:rgba(17,17,17,.22);content:"";transform:scaleX(0);transform-origin:left;transition:transform 1s cubic-bezier(.2,.8,.2,1)}
.experience__track.is-ready:before{transform:scaleX(1)}
.experience-step{position:relative;grid-row:1;align-self:end;padding:0 9px 27px;opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
.experience-step:nth-child(even){grid-row:3;align-self:start;padding-top:27px;padding-bottom:0;transform:translateY(-18px)}
.experience__track.is-ready .experience-step{opacity:1;transform:none}
.experience__track.is-ready .experience-step:nth-child(1){transition-delay:.1s}
.experience__track.is-ready .experience-step:nth-child(2){transition-delay:.22s}
.experience__track.is-ready .experience-step:nth-child(3){transition-delay:.34s}
.experience__track.is-ready .experience-step:nth-child(4){transition-delay:.46s}
.experience__track.is-ready .experience-step:nth-child(5){transition-delay:.58s}
.experience-step:after{position:absolute;bottom:-7px;left:50%;width:14px;height:14px;background:var(--yellow);border:4px solid var(--blue);border-radius:50%;content:"";transform:translateX(-50%);transition:transform .2s,background .2s}
.experience-step:nth-child(even):after{top:-7px;bottom:auto}
.experience-step:before{position:absolute;bottom:0;left:50%;width:1px;height:27px;background:rgba(17,17,17,.35);content:""}
.experience-step:nth-child(even):before{top:0;bottom:auto}
.experience-step button{display:flex;width:100%;min-height:54px;align-items:center;gap:10px;padding:7px 14px 7px 7px;color:#fff;background:var(--blue);border:0;border-radius:999px;text-align:left;transition:transform .2s,box-shadow .2s,background .2s}
.experience-step:nth-child(even) button{color:#111;background:var(--yellow)}
.experience-step button:hover,.experience-step button:focus-visible{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,137,178,.18);outline:0}
.experience-step button>span{display:grid;flex:0 0 40px;width:40px;height:40px;color:#111;background:#fff;border-radius:50%;font-size:.92rem;font-weight:600;place-items:center}
.experience-step button strong{font-size:1rem;font-weight:500;line-height:1.1}
.experience-step>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .32s ease}
.experience-step>div p{min-height:0;margin:0;padding:0 8px;overflow:hidden;color:#536268;font-size:.95rem;line-height:1.45;transition:padding .32s ease}
.experience-step.is-open>div{grid-template-rows:1fr}
.experience-step.is-open>div p{padding-top:12px}
.experience-step.is-open:after{background:#fff;transform:translateX(-50%) scale(1.25)}
.experience__hint{margin:25px auto 0;color:#536268;font-size:.92rem;text-align:center}
@media(max-width:900px){.experience__track{grid-template-rows:175px 42px 175px}
.experience-step button{align-items:flex-start;min-height:65px;flex-direction:column;border-radius:18px}
.experience-step button>span{flex-basis:30px;width:30px;height:30px}
.experience-step button strong{font-size:.95rem}
}
@media(max-width:700px){.experience{padding:60px 18px}
.experience__heading{display:block;margin-bottom:35px}
.experience__heading h2{font-size:3.3rem}
.experience__heading>span{display:block;margin-top:15px}
.experience__track{display:grid;grid-template-columns:36px 1fr;grid-template-rows:none;gap:9px 0}
.experience__track:before{position:absolute;top:0;right:auto;bottom:0;left:15px;width:2px;height:auto;transform:scaleY(0);transform-origin:top}
.experience__track.is-ready:before{transform:scaleY(1)}
.experience-step,.experience-step:nth-child(even){grid-column:2;grid-row:auto;align-self:auto;padding:0 0 0 13px;transform:translateX(18px)}
.experience__track.is-ready .experience-step{transform:none}
.experience-step:before,.experience-step:nth-child(even):before{display:none}
.experience-step:after,.experience-step:nth-child(even):after{top:22px;right:auto;bottom:auto;left:-21px}
.experience-step button,.experience-step:nth-child(even) button{align-items:center;min-height:54px;flex-direction:row;padding:7px 14px 7px 7px;border-radius:999px}
.experience-step button>span{flex-basis:40px;width:40px;height:40px}
.experience-step button strong{font-size:1rem}
.experience-step>div p{font-size:.98rem}
.experience__hint{text-align:left;margin-left:49px}
}
/* The Gamezone Experience: six core reasons clients choose us. */
.experience__heading{display:block;max-width:1180px;margin:0 auto 34px;text-align:center}
.experience__heading h2{color:var(--blue-text);font-size:clamp(2.7rem,4.5vw,4.7rem);line-height:.95}
.experience__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1180px;margin:auto;perspective:1000px}
.experience-card{display:flex;min-height:260px;align-items:center;justify-content:center;padding:clamp(28px,3vw,48px);color:#fff;background:#303030;border:0;border-radius:0;flex-direction:column;text-align:center;opacity:0;transform:translateY(28px) scale(.97);transition:opacity .55s ease,transform .35s cubic-bezier(.2,.8,.2,1),filter .25s ease,box-shadow .25s ease}
.experience-card:nth-child(2){background:#ed168c}
.experience-card:nth-child(3){background:#11a7ad}
.experience-card:nth-child(4){background:#c5a100}
.experience-card:nth-child(5){background:#304a7f}
.experience-card:nth-child(6){background:#452047}
.experience__grid.is-ready .experience-card{opacity:1;transform:none}
.experience__grid.is-ready .experience-card:nth-child(2){transition-delay:.08s}
.experience__grid.is-ready .experience-card:nth-child(3){transition-delay:.16s}
.experience__grid.is-ready .experience-card:nth-child(4){transition-delay:.24s}
.experience__grid.is-ready .experience-card:nth-child(5){transition-delay:.32s}
.experience__grid.is-ready .experience-card:nth-child(6){transition-delay:.4s}
.experience-card strong{font-size:clamp(1.2rem,1.8vw,1.75rem);font-weight:600;line-height:1;text-transform:none}
.experience-card span{max-width:340px;margin-top:13px;font-size:1rem;line-height:1.45;opacity:.86}
.experience-card:hover,.experience-card:focus-visible,.experience-card.is-selected{z-index:2;outline:0;transform:translateY(-8px) rotateX(2deg);filter:saturate(1.12);box-shadow:0 20px 38px rgba(17,17,17,.2)}
.experience-card.is-selected span{opacity:1}
.experience__grid:has(.experience-card.is-selected) .experience-card:not(.is-selected){filter:saturate(.55);opacity:.7}
@media(max-width:850px){.experience__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.experience-card{min-height:235px}
}
@media(max-width:560px){.experience{padding:58px 14px}
.experience__heading{margin-bottom:25px;text-align:left}
.experience__heading h2{font-size:3.15rem}
.experience__grid{grid-template-columns:1fr;gap:9px}
.experience-card{min-height:210px;padding:32px 25px}
.experience-card strong{font-size:1.5rem}
.experience-card span{font-size:1rem}
.experience-card:hover,.experience-card:focus-visible,.experience-card.is-selected{transform:translateY(-4px)}
}
/* Final experience layout: benefit content on an alternating timeline. */
.experience__track{grid-template-columns:repeat(6,minmax(0,1fr))}
.experience-step:nth-child(1){grid-column:1}
.experience-step:nth-child(2){grid-column:2}
.experience-step:nth-child(3){grid-column:3}
.experience-step:nth-child(4){grid-column:4}
.experience-step:nth-child(5){grid-column:5}
.experience-step:nth-child(6){grid-column:6}
.experience-step>div{grid-template-rows:1fr}
.experience-step>div p,.experience-step.is-open>div p{padding-top:12px}
.experience__track.is-ready .experience-step:nth-child(6){transition-delay:.7s}
.experience-step.is-open button{transform:translateY(-4px);box-shadow:0 12px 28px rgba(0,137,178,.22)}
.experience__track:has(.experience-step.is-open) .experience-step:not(.is-open){opacity:.58}
@media(max-width:900px){.experience__track{display:grid;grid-template-columns:36px 1fr;grid-template-rows:none;gap:12px 0}
.experience__track:before{position:absolute;top:0;right:auto;bottom:0;left:15px;width:2px;height:auto;transform:scaleY(0);transform-origin:top}
.experience__track.is-ready:before{transform:scaleY(1)}
.experience-step,.experience-step:nth-child(n){grid-column:2!important;grid-row:auto;align-self:auto;padding:0 0 0 13px;transform:translateX(18px)}
.experience__track.is-ready .experience-step{transform:none}
.experience-step:before,.experience-step:nth-child(even):before{display:none}
.experience-step:after,.experience-step:nth-child(even):after{top:22px;right:auto;bottom:auto;left:-21px}
.experience-step button,.experience-step:nth-child(even) button{align-items:center;min-height:54px;flex-direction:row;padding:7px 14px 7px 7px;border-radius:999px}
.experience-step button>span{flex-basis:40px;width:40px;height:40px}
.experience-step button strong{font-size:1rem}
.experience-step>div p{max-width:640px;padding:10px 10px 6px;font-size:.98rem}
}
/* Ready-made event packages. */
.game-packages{padding:clamp(65px,8vw,110px) var(--pad);background:#fff8dc}
.game-packages .events-heading{margin-bottom:30px}
.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1500px;margin:auto}
.package-card{display:flex;min-width:0;padding:24px;background:#fff;border:1px solid rgba(17,17,17,.14);border-radius:18px;flex-direction:column;box-shadow:0 8px 0 rgba(17,17,17,.04)}
.package-card--featured{color:#fff;background:var(--blue);border-color:var(--blue-text)}
.package-card--custom{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:35px;min-height:190px;color:#111;background:var(--yellow);border-color:#111}
.package-card--custom h3{margin:0;font-size:clamp(2rem,4vw,4rem);font-weight:500;letter-spacing:-.045em;line-height:.95}
.package-card--custom p{max-width:720px;min-height:0;margin:14px 0 0;color:#39484d;font-size:1rem;line-height:1.5}
.package-custom__actions{display:flex;min-width:230px;flex-direction:column;gap:8px}
.package-custom__actions a{display:inline-flex;min-height:48px;padding:0 18px;align-items:center;justify-content:center;color:#fff;background:var(--blue);border:2px solid var(--blue);border-radius:12px;font-size:.95rem;font-weight:600}
.package-custom__actions a:last-child{color:#111;background:transparent;border-color:#111}
.package-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.package-card__top h3{max-width:270px;margin:0;font-size:1.35rem;font-weight:500;line-height:1.05}
.package-card__top>strong{flex:0 0 auto;color:var(--blue-text);font-size:1.15rem;font-weight:600}
.package-card--featured .package-card__top>strong{color:var(--yellow)}
.package-card>p{min-height:3.9em;margin:15px 0;color:#536268;font-size:.98rem;line-height:1.5}
.package-card--featured>p{color:rgba(255,255,255,.82)}
.package-coordinator{width:max-content;margin-bottom:16px;padding:7px 10px;color:#111;background:var(--yellow);border-radius:999px;font-size:.87rem;font-weight:600}
.package-coordinator--none{color:#536268;background:#edf2f3}
.package-card details{margin-top:auto;border-top:1px solid rgba(17,17,17,.13);border-bottom:1px solid rgba(17,17,17,.13)}
.package-card--featured details{border-color:rgba(255,255,255,.25)}
.package-card summary{position:relative;padding:14px 30px 14px 0;cursor:pointer;font-size:.95rem;font-weight:600;list-style:none}
.package-card summary::-webkit-details-marker{display:none}
.package-card summary:before,.package-card summary:after{position:absolute;top:50%;right:5px;width:12px;height:2px;background:currentColor;content:"";transition:transform .2s}
.package-card summary:after{transform:rotate(90deg)}
.package-card details[open] summary:after{transform:rotate(0)}
.package-card ul{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;margin:0;padding:0 0 16px;list-style:none}
.package-card li{position:relative;padding-left:12px;color:#536268;font-size:.92rem;line-height:1.3}
.package-card li:before{position:absolute;top:.48em;left:0;width:5px;height:5px;background:var(--blue);border-radius:50%;content:""}
.package-card--featured li{color:rgba(255,255,255,.84)}
.package-card--featured li:before{background:var(--yellow)}
.package-totals{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:15px;font-size:.92rem}
.package-totals span{color:#536268}
.package-card--featured .package-totals span{color:rgba(255,255,255,.72)}
.package-totals>strong{color:var(--blue-text);font-size:.98rem}
.package-card--featured .package-totals>strong{color:var(--yellow)}
.package-note{display:flex;width:max-content;max-width:min(100%,760px);margin:18px auto 0;padding:11px 16px;background:#fff;border:1px solid rgba(17,17,17,.13);border-radius:12px}
.package-note p{margin:0;color:#536268;font-size:.95rem;line-height:1.4}
.package-note a{color:var(--blue-text);font-weight:600;text-decoration:underline;text-underline-offset:2px}
@media(max-width:1050px){.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){.game-packages{padding:55px 14px 34px}
.package-grid{grid-template-columns:1fr;gap:10px}
.package-card{padding:20px}
.package-card>p{min-height:0}
.package-card ul{grid-template-columns:1fr}
.package-card--custom{grid-column:auto;grid-template-columns:1fr;gap:24px}
.package-custom__actions{min-width:0}
.package-note{width:fit-content;max-width:100%;margin-top:14px;padding:10px 13px;border-radius:10px}
.package-note p{font-size:.92rem}
}
/* Compact package rail: compare by swiping instead of scrolling through a tall grid. */
.package-grid{display:flex;gap:14px;max-width:1500px;padding:3px 2px 18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-color:var(--blue-text) rgba(0,137,178,.12);scrollbar-width:thin}
.package-grid::-webkit-scrollbar{height:7px}
.package-grid::-webkit-scrollbar-track{background:rgba(0,137,178,.12);border-radius:99px}
.package-grid::-webkit-scrollbar-thumb{background:var(--blue);border-radius:99px}
.package-card{flex:0 0 min(370px,calc(100vw - 40px));min-height:310px;scroll-snap-align:start}
.package-card--custom{display:flex;flex:0 0 min(470px,calc(100vw - 40px));align-items:stretch;justify-content:space-between;gap:24px;min-height:310px;flex-direction:column}
.package-card--custom h3{font-size:clamp(2rem,3vw,3.2rem)}
.package-custom__actions{margin-top:auto}
@media(max-width:650px){.package-grid{gap:10px;margin-right:-14px;padding-right:14px}
.package-card,.package-card--custom{flex-basis:calc(100vw - 42px);min-height:0}
.package-card--custom{display:flex}
}
/* Keep the catalogue and Gamezone Experience visually connected. */
.event-catalogue{padding-bottom:clamp(35px,4vw,58px)}
.experience{padding-top:clamp(28px,3.5vw,52px)}
@media(max-width:700px){.event-catalogue{padding-bottom:30px}
.experience{padding-top:28px}
}
/* Comfortable reading scale and clear CTA hierarchy. */
.event-book h2{margin:0 0 26px}
.event-book p{margin:0;font-size:1.12rem;line-height:1.65}
.experience-step>div p{font-size:1rem;line-height:1.55}
.package-card>p,.package-card--custom p{font-size:1rem;line-height:1.58}
.package-card li{font-size:.98rem;line-height:1.45}
.package-card summary{font-size:1rem}
.package-note p{font-size:1rem}
@media(max-width:700px){.event-book h2{margin-bottom:22px}
.event-book p{font-size:1rem}
.experience-step>div p{font-size:1rem}
.package-card>p,.package-card--custom p{font-size:1rem}
.package-card li{font-size:.98rem}
}
/* Hero copy sits on dark media and must never inherit a dark page heading. */
.events-hero h1,.events-hero p{color:#fff}


/* Interactive custom-package estimator. */
.package-custom__actions button{display:inline-flex;min-height:48px;padding:0 18px;align-items:center;justify-content:center;color:#fff;background:var(--blue);border:2px solid var(--blue);border-radius:12px;font:600 .95rem Fredoka,sans-serif;cursor:pointer}

.package-builder{grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr)}

.package-builder__catalog{min-width:0;padding:clamp(34px,4vw,64px);overflow:auto;background:#e9f7fa}

.package-builder__catalog>p,.package-builder__summary p{margin:0 0 7px;color:var(--blue-text);font-size:.92rem;font-weight:600}

.package-builder__catalog h2{margin:0 0 22px;font-size:clamp(2.5rem,4vw,4.8rem);font-weight:500;letter-spacing:-.05em;line-height:.92}

.package-builder__search{display:block;margin-bottom:16px}
.package-builder__search input{width:100%;min-height:48px;padding:0 16px;background:#fff;border:1px solid rgba(17,17,17,.2);border-radius:12px;font:inherit}

.package-builder__games{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}

.package-builder__game{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:8px;color:#111;background:#fff;border:2px solid transparent;border-radius:13px;text-align:left;cursor:pointer}

.package-builder__game:hover,.package-builder__game:focus-visible{border-color:var(--blue)}
.package-builder__game.is-selected{background:#fff8dc;border-color:var(--blue)}

.package-builder__game img{width:54px;height:54px;object-fit:contain;background:#f5f7f7;border-radius:8px}
.package-builder__game span{min-width:0;font-size:.92rem;font-weight:500;line-height:1.15}
.package-builder__game strong{color:var(--blue-text);font-size:.9rem;white-space:nowrap}
.package-builder__game i{display:grid;width:23px;height:23px;color:#fff;background:#d9e2e4;border-radius:50%;font-style:normal;place-items:center}
.package-builder__game.is-selected i{background:var(--blue)}

.package-builder__summary{display:flex;min-height:0;padding:clamp(40px,4vw,64px) clamp(24px,3vw,48px);flex-direction:column;justify-content:space-between;gap:28px;overflow:auto;background:#fff}

.package-builder__summary h3{margin:0 0 18px;font-size:1.55rem;font-weight:500}
.package-builder__summary ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.package-builder__summary li{display:flex;justify-content:space-between;gap:12px;padding-bottom:7px;color:#47565b;border-bottom:1px solid #e4e9ea;font-size:.92rem}
.package-builder__summary li.is-empty{display:block;border:0}
.package-builder__summary li button{padding:0;color:#8b3333;background:none;border:0;cursor:pointer}

.package-builder__total{display:grid;gap:9px;padding-top:20px;border-top:2px solid #111}
.package-builder__total>span{font-size:.92rem}
.package-builder__total>strong{color:var(--blue-text);font-size:2.2rem}
.package-builder__total small{color:#68767a;line-height:1.4}
.package-builder__total a{display:flex;min-height:50px;margin-top:7px;align-items:center;justify-content:center;color:#fff;background:var(--blue);border-radius:12px;font-weight:600;text-align:center}
.package-builder__total a[aria-disabled=true]{opacity:.45;pointer-events:none}

.package-builder__empty{color:#536268}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:900px){.package-builder{display:block;overflow:auto}
.package-builder__catalog{overflow:visible}
.package-builder__summary{overflow:visible}
.package-builder__games{grid-template-columns:1fr 1fr}
}

@media(max-width:600px){.package-builder__catalog{padding:52px 14px 24px}
.package-builder__summary{padding:26px 14px 36px}
.package-builder__games{grid-template-columns:1fr}
.package-builder__game{grid-template-columns:48px minmax(0,1fr) auto}
.package-builder__game img{width:48px;height:48px}
}

.package-builder__estimate{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;color:#fff;background:var(--blue);border:2px solid var(--blue);border-radius:12px;font:600 1rem Fredoka,sans-serif;cursor:pointer}
.package-builder__estimate:disabled{opacity:.45;cursor:not-allowed}
.package-builder__result{display:grid;gap:9px;padding-top:18px}
.package-builder__result[hidden]{display:none}
.package-builder__result>span{font-size:.92rem}
.package-builder__result>strong{color:var(--blue-text);font-size:2.2rem}
.package-builder__result small{color:#68767a;line-height:1.4}
.package-builder__result a{display:flex;min-height:50px;margin-top:7px;align-items:center;justify-content:center;color:#fff;background:var(--blue);border-radius:12px;font-weight:600;text-align:center}
