:root{--blue:#0048be;--ink:#171b25;--muted:#737983;--yellow:#ffdc00;--pale:#f4f6f9;--paper-scroll:0px;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;color:var(--ink);background:#fff;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--blue);outline-offset:6px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}p{line-height:1.55}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.blue{color:var(--blue)}.muted{color:var(--muted)}.skip-link{position:fixed;left:20px;top:-80px;background:white;padding:14px;z-index:100}.skip-link:focus{top:14px}.site-header{height:76px;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.88);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid #171b250c}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:750;letter-spacing:-1px}.brand img{border-radius:8px}.nav-links{display:flex;align-items:center;gap:32px;font-size:13px}.nav-links>a:first-child:hover{color:var(--blue)}.button{display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:52px;padding:15px 25px;border-radius:30px;background:var(--blue);color:white;font-size:15px;font-weight:550;transition:background .2s,transform .2s}.button:hover{background:#003999;transform:translateY(-2px)}.button-small{min-height:36px;padding:9px 17px;font-size:12px;gap:15px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:11px;font-weight:700;line-height:1.6}.yellow-dash{display:inline-block;width:23px;height:5px;background:var(--yellow);vertical-align:middle;margin-right:8px}.hero{position:relative;display:grid;grid-template-columns:1.06fr 1fr;align-items:center;gap:30px;min-height:calc(100svh - 76px);padding-top:56px;padding-bottom:96px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(58px,6.55vw,94px);letter-spacing:-.065em;line-height:1.025;margin-top:27px;font-weight:700}.intro{font-size:19px;color:#626875;margin-top:27px;letter-spacing:-.3px}.hero-actions{display:flex;gap:23px;align-items:center;margin-top:32px;flex-wrap:wrap}.text-link{color:var(--blue);font-size:14px;font-weight:550;background:none;border:0;padding:5px 0;display:inline-flex;align-items:center;gap:12px}.text-link:hover{text-decoration:underline;text-underline-offset:5px}.hero-art{position:relative;padding:20px 12px 0 20px;isolation:isolate}.paper-halo{position:absolute;inset:1% -9% 0 -14%;background:radial-gradient(ellipse,#e6ecf8 0%,#f4f6fa 40%,#fff0 70%);z-index:-1}.hero-paper{transform:translateY(var(--paper-scroll)) rotate(-5deg);filter:drop-shadow(0 20px 20px #14284a22);will-change:transform}.hero-paper img{width:100%}.hero-art figcaption{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:34px;color:#737983;font-size:11px;letter-spacing:.5px}.sample-dot{width:6px;height:6px;border-radius:50%;background:var(--blue)}.scroll-cue{position:absolute;bottom:28px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;color:#6f7480;font-size:11px;letter-spacing:.5px;border-top:1px solid #e9ebee;padding-top:19px}.scroll-cue>span:last-child{font-size:20px;color:var(--ink)}.sample-section{background:var(--pale);padding:110px 0 45px;overflow:hidden}.section-heading{margin-bottom:75px}.section-heading>.eyebrow{color:var(--blue)}h2{font-size:clamp(42px,5vw,68px);line-height:1.06;letter-spacing:-.05em;font-weight:650}.section-heading h2{margin:20px 0 25px}.section-heading>p:last-child{font-size:21px;color:#69707c;letter-spacing:-.4px}.sample-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;align-items:start}.sample-notes{position:sticky;top:120px;padding-top:35px}.note{margin-bottom:38px}.note-number{font-size:11px;color:var(--blue);letter-spacing:1px;font-weight:650;display:inline-block;margin-bottom:14px;border-bottom:2px solid var(--yellow);padding-bottom:6px}.note h3{font-size:21px;letter-spacing:-.65px;margin-bottom:10px;line-height:1.2}.note p{font-size:15px;color:#69707c}.large-sample{min-width:0}.sample-image-button{position:relative;display:block;width:100%;background:transparent;border:0;padding:0;filter:drop-shadow(0 15px 20px #182e4920);transition:transform .35s}.sample-image-button:hover{transform:translateY(-5px)}.sample-image-button img{width:100%}.expand-badge{position:absolute;right:22px;bottom:40px;border:1px solid #e6eaf1;border-radius:50%;background:white;box-shadow:0 3px 20px #17284015;color:var(--blue);display:grid;place-items:center;width:44px;height:44px;font-size:23px}.large-sample figcaption{font-size:11px;color:#727985;line-height:1.65;text-align:center;margin-top:23px}.sample-transcript{margin:50px 0 0;border-top:1px solid #dfe3e9;border-bottom:1px solid #dfe3e9;font-size:13px;color:#5d6572}.sample-transcript summary{padding:18px 0;cursor:pointer}.schedule-content{padding:5px 0 25px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:490px;text-align:left;margin-top:20px}caption{text-align:left;margin-bottom:12px}th,td{padding:12px;border-bottom:1px solid #dfe3e9}th{color:var(--ink)}.sample-disclaimer{font-size:11px;color:#727985;margin-top:24px}.swim-section{position:relative;min-height:650px;height:78svh;max-height:950px;color:white;display:flex;align-items:flex-end;overflow:hidden}.swim-photo{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 53%}.swim-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,#02122a9c 100%)}.swim-copy{position:relative;padding:80px 0}.swim-copy .eyebrow{color:#f8e961;margin-bottom:20px}.swim-copy h2{font-size:clamp(43px,5.3vw,76px)}.closing{text-align:center;padding:115px 0 100px}.closing>img{margin:0 auto 25px;border-radius:15px}.closing .eyebrow{color:var(--blue)}.closing h2{margin:23px 0 34px;font-size:clamp(40px,4.8vw,64px)}.app-address{font-size:12px;color:var(--muted);margin-top:16px}.site-footer{border-top:1px solid #e9ebee;padding-block:28px;display:flex;align-items:center;gap:30px;font-size:12px;color:#737983}.site-footer .brand{color:var(--ink);font-size:19px}.site-footer>a:last-child{margin-left:auto}.site-footer>a:last-child:hover{text-decoration:underline}.reveal{transition:opacity .8s ease,transform .8s cubic-bezier(.2,.65,.3,1)}.reveal.is-waiting{opacity:0;transform:translateY(28px)}
@media(min-width:1600px){.hero{min-height:850px}.hero-art{padding-left:10px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.hero{gap:20px}.hero h1{font-size:clamp(55px,7.4vw,78px)}.hero .eyebrow{font-size:9px;letter-spacing:1px}.intro{font-size:17px}.hero-actions{gap:14px}.hero-actions .button{padding:14px 20px}.hero-art{padding-left:5px;padding-right:0}.sample-layout{grid-template-columns:210px minmax(0,1fr);gap:40px}.note h3{font-size:19px}.note p{font-size:14px}.sample-notes{padding-top:0}}
@media(max-width:700px){html{scroll-padding-top:85px}.wrap{width:calc(100% - 40px)}.site-header{height:64px}.brand{font-size:21px}.brand img{width:32px;height:32px}.nav-links{gap:16px}.sample-nav{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding-top:48px;padding-bottom:84px;gap:34px}.hero-copy{text-align:center}.hero .eyebrow{font-size:9px;letter-spacing:1.25px}.hero h1{font-size:clamp(46px,14vw,86px);margin-top:22px}.intro{margin-top:22px;font-size:17px}.hero-actions{justify-content:center;gap:18px;margin-top:25px}.hero-actions .button{font-size:13px;min-height:46px;gap:14px}.text-link{font-size:13px}.hero-art{width:83%;max-width:430px;margin:0 auto;padding:15px 0 0}.hero-paper{transform:rotate(-4deg);will-change:auto}.hero-art figcaption{margin-top:27px;font-size:10px}.scroll-cue{bottom:20px;font-size:10px;padding-top:14px}.sample-section{padding-top:65px}.section-heading{margin-bottom:40px}.section-heading h2{font-size:46px}.section-heading>p:last-child{font-size:18px}.sample-layout{grid-template-columns:1fr;gap:35px}.sample-notes{position:static;display:grid;grid-template-columns:1fr;gap:23px}.note{margin:0;display:grid;grid-template-columns:28px 1fr;column-gap:16px}.note-number{grid-row:1/3;align-self:start;margin-top:2px}.note h3{font-size:21px;margin-bottom:6px}.note p{font-size:15px;max-width:370px}.expand-link{justify-self:start}.large-sample{margin:0 -7px}.expand-badge{bottom:30px;right:15px}.sample-transcript{margin-top:32px}.sample-disclaimer{font-size:10px}.swim-section{height:620px;min-height:0}.swim-photo{object-position:51% center}.swim-copy{padding:50px 0}.swim-copy .eyebrow{font-size:9px;letter-spacing:1.1px}.swim-copy h2{font-size:43px}.closing{padding:75px 0 65px}.closing h2{font-size:42px}.closing .eyebrow{font-size:9px}.site-footer{flex-wrap:wrap;gap:13px}.site-footer p{order:3;flex-basis:100%;font-size:11px}.site-footer>a:last-child{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.hero-paper{transform:rotate(-5deg);will-change:auto}.reveal.is-waiting{opacity:1;transform:none}}

/* Keep the original app download experience alongside meet plans. */
.swim-description{font-size:20px;line-height:1.5;max-width:580px;margin-top:24px;text-wrap:pretty}.download-section{display:flex;justify-content:space-between;align-items:center;gap:55px;padding-block:85px;border-bottom:1px solid #e9ebee}.download-copy .eyebrow{color:var(--blue)}.download-copy h2{font-size:clamp(36px,4vw,54px);margin:20px 0}.download-copy>p:last-of-type{color:#69707c;font-size:18px}.store-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:27px}.store-links a{border-radius:10px;overflow:hidden;transition:transform .2s}.store-links a:hover{transform:translateY(-3px)}.store-links img{width:auto;height:52px}.download-qr{flex-shrink:0;text-align:center;padding:24px;background:var(--pale);border-radius:20px}.download-qr figcaption{font-size:12px;color:#69707c;margin-top:14px}@media(max-width:700px){.swim-description{font-size:17px;max-width:350px}.download-section{padding-block:60px}.download-qr{display:none}.store-links{gap:12px}.store-links img{height:44px}.download-copy>p:last-of-type{font-size:16px}}@media(hover:none) and (pointer:coarse){.download-qr{display:none}}
