*{box-sizing:border-box}body{margin:0;color:#34305b;background:#e6fbff;font-family:ui-rounded,'Trebuchet MS',sans-serif}button,a{ -webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible{outline:4px solid #552983;outline-offset:5px}.shell{max-width:1600px;margin:auto}header{display:flex;align-items:center;justify-content:space-between;padding:18px 4%;gap:15px;background:#fff8fddb}.brand{font-weight:900;color:#bc357d;font-size:22px;text-decoration:none}.brand span{color:#087cba}nav{display:flex;gap:10px}nav button{border:2px solid #f5badd;background:#fff;border-radius:24px;padding:11px 18px;color:#733566;font-weight:bold}.hero{position:relative;min-height:590px;height:min(65vw,690px);background:#9ee9fc url('assets/pool-party.webp') center 62%/cover;isolation:isolate;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(#ffffff20,transparent 60%,#d4faff 100%);z-index:-1}.hero-copy{text-align:center;padding:24px 18px;position:relative}.eyebrow{display:inline-block;background:#fffffff0;border:2px solid #ffcfec;border-radius:30px;padding:9px 18px;color:#704267;font-weight:bold;font-size:13px;letter-spacing:1px}h1{margin:14px 0 0;font-size:clamp(62px,8.5vw,118px);line-height:.89;letter-spacing:-5px;font-weight:1000;color:#fb78bc;-webkit-text-stroke:2px white;text-shadow:0 5px 0 #bd3f8a,0 9px 14px #4b6b8d60}h1 small{display:inline-block;font-size:.34em;letter-spacing:-1px;color:white;-webkit-text-stroke:0;text-shadow:0 3px #267ec0;margin:0 8px;vertical-align:middle}h1 span{color:#46ccfa;text-shadow:0 5px 0 #167fba,0 9px 14px #4b6b8d60}.start{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);text-align:center;width:max-content;max-width:92%}.primary{display:inline-block;border:3px solid white;background:linear-gradient(#ff99d3,#ee4ca6);color:#fff;text-shadow:0 2px #ba397d;box-shadow:0 5px 0 #ba3981,0 10px 25px #68409b40;text-decoration:none;padding:17px 38px;border-radius:40px;font-size:23px;font-weight:900}.start p{margin:14px 0 0;font-size:14px;font-weight:bold;background:#ffffffed;border-radius:25px;padding:8px 18px}.activities{position:relative;padding:0 4% 30px;margin-top:-3px}.section-title{text-align:center;margin:10px 0 23px;font-size:26px}.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.card{position:relative;display:flex;align-items:center;flex-direction:column;justify-content:space-between;min-height:195px;text-align:center;border:3px solid white;border-radius:30px;padding:16px 10px 18px;background:linear-gradient(#fff5,var(--card));box-shadow:0 5px 0 var(--edge),0 9px 15px #628db024;text-decoration:none;font-weight:900;color:#493463;transition:transform .15s}.card:hover{transform:translateY(-4px)}.card .icon{font-size:52px;line-height:1.25;filter:drop-shadow(0 4px 2px #ffffff80)}.card strong{font-size:18px;line-height:1.1;max-width:145px}.card small{font-size:11px;letter-spacing:.5px;border-radius:20px;background:#fffc;padding:4px 9px;margin-top:8px}.pink{--card:#ffb2dc;--edge:#e68cbf}.blue{--card:#a4e7ff;--edge:#66c5e6}.purple{--card:#d6baff;--edge:#b29bdd}.mint{--card:#a0efde;--edge:#6bcbb7}.gold{--card:#ffe49e;--edge:#e8c56b}.bottom{margin:30px auto 0;text-align:center;max-width:720px;line-height:1.6}.bottom p{font-size:14px;color:#536578}.bottom a{font-weight:bold;color:#69428b}.quiet .hero{background-image:none;background:linear-gradient(#fbe9f6,#d4faff)}.quiet .card .icon{opacity:.6}.quiet h1{text-shadow:none;-webkit-text-stroke:0;color:#b53d7b}.quiet h1 span{color:#087fb2;text-shadow:none}footer{text-align:center;padding:12px 20px 25px;color:#627889;font-size:12px}dialog{border:3px solid #f6b6dc;border-radius:30px;padding:30px;max-width:500px;width:calc(100% - 36px);color:#34305b;background:#fffaff;box-shadow:0 20px 80px #43395740}dialog::backdrop{background:#34305b75}dialog h2{font-size:27px;margin:18px 0}dialog p{line-height:1.65}dialog button{border:0;background:#e7d9f6;padding:12px 20px;border-radius:22px;font-weight:bold;color:#503064}.close{float:right}dialog a{display:inline-block;margin:12px 0;color:#a7256f;font-weight:bold} @media(max-width:1000px){.cards{grid-template-columns:repeat(3,1fr)}.hero{height:630px;background-position:center}.card{min-height:165px}.card .icon{font-size:42px}}@media(max-width:600px){header{padding:14px 16px}.brand{font-size:18px}nav{gap:6px}nav button{font-size:12px;padding:10px}.hero{height:560px;min-height:0;background-position:48% center}.hero-copy{padding-top:25px}h1{font-size:65px;letter-spacing:-3px;line-height:1}.eyebrow{font-size:10px;padding:8px 12px}.start{bottom:20px}.primary{font-size:20px;padding:15px 30px}.start p{font-size:12px}.cards{grid-template-columns:repeat(2,1fr);gap:15px}.activities{padding:10px 18px 25px}.section-title{font-size:23px}.card strong{font-size:17px}.bottom{margin-top:28px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.card .icon{height:100px;display:grid;place-items:center}.card .icon img{width:100px;height:100px}.card{min-height:224px}@media(max-width:600px){.card .icon img{width:90px;height:90px}.card .icon{height:96px}.card{min-height:210px}}
h1.logo-title{margin:12px auto 0;line-height:0;-webkit-text-stroke:0;text-shadow:none;max-width:650px}h1.logo-title img{display:block;width:100%;height:auto;max-height:350px;object-fit:contain;filter:drop-shadow(0 5px 8px #326d9850)}.hero-copy{padding-top:22px}.quiet h1.logo-title img{filter:none}@media(max-width:600px){h1.logo-title{margin-top:20px;max-width:96%}h1.logo-title img{max-height:270px}.hero-copy{padding-left:12px;padding-right:12px}}
.brand-logo img{display:block;width:128px;height:76px;object-fit:contain}.brand-logo{line-height:0}header:has(.brand-logo){padding-top:6px;padding-bottom:6px}@media(max-width:600px){.brand-logo img{width:100px;height:62px}}

/* Keep the title in the open sky above the swimmers. */
.hero-copy{padding:12px 18px 0}h1.logo-title{width:325px;max-width:42%;margin:0 auto}h1.logo-title img{width:100%;height:auto;max-height:175px;object-fit:contain}@media(max-width:600px){.hero-copy{padding:10px 12px 0}h1.logo-title{width:240px;max-width:65%;margin:0 auto}h1.logo-title img{max-height:135px}}
