:root { color-scheme: dark; --aqua:#39d3df; --ink:#052e37; --white:#f8ffff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; min-height:100vh; color:var(--white); font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; background:#063c46; }
body::before { content:""; position:fixed; inset:0; z-index:-2; background:url("assets/summer-master.png") center 22%/cover no-repeat; filter:blur(22px) saturate(1.08); transform:scale(1.08); }
body::after { content:""; position:fixed; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(2,35,43,.3),#053b46 64%,#032b34); }
.topbar { width:min(1120px,calc(100% - 36px)); height:72px; margin:auto; display:flex; align-items:center; justify-content:space-between; }
.brand { color:white; font-weight:850; letter-spacing:-.03em; text-decoration:none; }
.brand span { color:var(--aqua); }
.legal { color:rgba(255,255,255,.72); font-size:14px; text-decoration:none; }
.event-nav { display:flex; gap:18px; }
.shell { width:min(1120px,calc(100% - 36px)); margin:18px auto 90px; display:grid; grid-template-columns:minmax(300px, .82fr) minmax(340px, 1.18fr); gap:clamp(32px,6vw,86px); align-items:center; }
.slideshow { width:min(100%,480px); margin:auto; position:relative; border-radius:30px; background:#0b5863; box-shadow:0 30px 80px rgba(0,0,0,.38); border:1px solid rgba(255,255,255,.18); touch-action:pan-y; }
.slides { position:relative; aspect-ratio:9/16; overflow:hidden; border-radius:29px; }
.slide { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transform:scale(1.025); transition:opacity .8s ease, transform 4.8s ease; }
.slide.is-active { opacity:1; transform:scale(1); z-index:1; }
.dots { position:absolute; z-index:3; left:50%; bottom:18px; transform:translateX(-50%); display:flex; gap:9px; padding:8px 11px; border-radius:999px; background:rgba(0,35,42,.36); backdrop-filter:blur(8px); }
.dot { width:9px; height:9px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.48); cursor:pointer; transition:width .25s ease, background .25s ease; }
.dot.is-active { width:25px; border-radius:6px; background:white; }
.eyebrow { display:inline-flex; align-items:center; gap:9px; color:#bdf9ff; font-weight:800; font-size:13px; letter-spacing:.14em; text-transform:uppercase; }
.eyebrow::before { content:""; width:28px; height:2px; background:var(--aqua); }
h1 { margin:18px 0 20px; max-width:650px; font-size:clamp(48px,7vw,92px); line-height:.94; letter-spacing:-.055em; }
.intro { max-width:650px; color:rgba(245,255,255,.85); font-size:clamp(18px,2.2vw,25px); line-height:1.55; }
.meta { display:flex; flex-wrap:wrap; gap:10px; margin:28px 0; }
.pill { padding:9px 13px; border:1px solid rgba(255,255,255,.2); border-radius:999px; background:rgba(255,255,255,.09); color:#eaffff; font-size:13px; font-weight:700; }
.cta { display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:0 24px; border-radius:16px; background:var(--white); color:var(--ink); font-weight:800; text-decoration:none; box-shadow:0 12px 26px rgba(0,0,0,.18); }
.small { margin-top:18px; color:rgba(255,255,255,.58); font-size:13px; }
footer { padding:26px; text-align:center; color:rgba(255,255,255,.6); font-size:13px; }
footer a { color:inherit; }
@media (max-width:780px) { .topbar{height:62px}.shell{grid-template-columns:1fr;margin-top:8px}.copy{grid-row:1;text-align:center}.eyebrow{justify-content:center}.intro{margin-inline:auto}.meta{justify-content:center}.slideshow{width:min(100%,420px)}h1{margin-inline:auto}.small{text-align:center} }
@media (prefers-reduced-motion:reduce) { .slide { transition:none; transform:none; } }
