
:root{--ink:#082b43;--muted:#566b7c;--paper:#f7fafc;--lime:#8de5eb;--line:#d7e3eb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}button,a,input{font:inherit}a{color:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #168fab;outline-offset:5px}nav{height:90px;display:flex;justify-content:space-between;align-items:center;max-width:1320px;margin:auto;padding:0 40px;gap:30px}.brand{text-decoration:none;font-weight:800;font-size:19px;letter-spacing:-.7px;display:flex;align-items:center;gap:12px}.mark{width:32px;height:32px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-weight:400;font-size:25px}.brand small{font-size:10px;letter-spacing:3px;display:block;font-weight:500}.links{display:flex;gap:30px;font-size:13px}.links a{text-decoration:none}.nav-cta{border:1px solid var(--ink);padding:11px 20px;border-radius:4px;text-decoration:none;font-size:13px}.menu{display:none;background:transparent;border:1px solid var(--line);padding:8px 12px}.shell{max-width:1320px;padding:0 40px;margin:auto}.hero{padding:58px 0 68px;display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:45px}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:700;display:flex;align-items:center;gap:10px}.eyebrow:before{content:'';width:8px;height:8px;border-radius:50%;background:#168fab}h1{font-size:clamp(48px,5.7vw,79px);line-height:1.03;letter-spacing:-4px;font-weight:500;margin:25px 0}h1 em{font-family:Georgia,serif;font-weight:400}p{margin:0 0 20px}.lede{max-width:450px;color:var(--muted);font-size:17px}.buttons{display:flex;gap:16px;flex-wrap:wrap;margin:30px 0}.btn{padding:14px 23px;text-decoration:none;border-radius:4px;border:1px solid var(--ink);background:var(--ink);color:white;display:inline-flex;align-items:center;gap:20px;font-weight:600;font-size:13px}.btn.secondary{background:transparent;color:var(--ink)}.note{font-size:12px;color:var(--muted)}.visual{position:relative;background:#0c334e;min-height:530px;border-radius:5px;overflow:hidden;color:white}.visual svg{position:absolute;width:100%;height:100%;inset:0}.visual-label{position:absolute;top:28px;left:28px;font-size:10px;letter-spacing:2px}.visual-bottom{position:absolute;left:28px;right:28px;bottom:26px;display:flex;align-items:flex-end;justify-content:space-between}.visual-bottom strong{font-family:Georgia,serif;font-size:29px;font-weight:400;line-height:1.2}.coordinates{font-size:10px;letter-spacing:2px;color:#c1d5b8}.discipline{position:absolute;top:38%;left:33%;width:42%;padding:24px;background:var(--paper);color:var(--ink);transform:rotate(-7deg);box-shadow:0 15px 50px #0003}.discipline .tiny{font-size:9px;letter-spacing:2px}.discipline strong{display:block;font-size:25px;line-height:1.3;letter-spacing:-1px;margin:14px 0}.discipline-line{height:1px;background:var(--line);margin:20px 0 10px}.discipline span{font-size:10px}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:23px 0;font-size:11px;text-transform:uppercase;letter-spacing:2px}.section{padding:90px 0}.heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:40px}h2{font-size:clamp(34px,4vw,51px);font-weight:500;line-height:1.1;letter-spacing:-2px;margin:14px 0 0}.heading p{max-width:370px;font-size:14px;color:var(--muted);margin:0}.plan{border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:5px;overflow:hidden}.plan-art{background:#e5f3f8;display:grid;place-items:center;position:relative;padding:65px}.cover{background:var(--ink);color:white;padding:36px 30px;width:230px;min-height:290px;transform:rotate(-5deg);box-shadow:15px 15px 0 #b8dfe8}.cover .micro{font-size:9px;letter-spacing:2px}.cover h3{font-size:33px;font-weight:500;line-height:1.1;letter-spacing:-1px;margin:65px 0 40px}.cover .bars{display:flex;gap:5px}.bars i{height:5px;width:45px;background:var(--lime)}.plan-copy{padding:46px}.badge{display:inline-block;background:#e5f4f7;padding:5px 10px;font-size:10px;letter-spacing:1px;text-transform:uppercase;border-radius:3px}.plan h3{font-size:29px;line-height:1.2;letter-spacing:-1px;font-weight:500;margin:22px 0 18px}.plan-copy p{color:var(--muted);font-size:14px}.features{list-style:none;padding:0;margin:25px 0}.features li{font-size:13px;border-bottom:1px solid var(--line);padding:10px 0;display:flex;gap:12px}.features li:before{content:'↗';color:#168fab}.plan-price{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:28px}.price{font-size:27px;font-weight:500}.price small{display:block;font-size:10px;color:var(--muted);font-weight:400}.approach{background:var(--ink);color:var(--paper)}.approach .eyebrow{color:var(--lime)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:55px}.step{border-top:1px solid #567389;padding-top:22px}.step .num{font-size:11px;color:var(--lime)}.step h3{font-size:24px;font-weight:400;letter-spacing:-.5px;margin:23px 0 14px}.step p{font-size:14px;color:#ccdde9}.sample{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.sample p{color:var(--muted);font-size:15px;max-width:390px;margin-top:22px}.sample-board{border:1px solid var(--line);border-radius:5px;background:white;padding:25px}.tabs{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:22px}.tabs button{background:transparent;border:1px solid var(--line);padding:9px 12px;border-radius:3px;font-size:11px}.tabs button[aria-selected=true]{background:var(--ink);color:white;border-color:var(--ink)}.sample-row{display:grid;grid-template-columns:45px 1fr 70px;gap:12px;padding:13px 0;border-top:1px solid var(--line);font-size:12px}.sample-row .day{color:var(--muted)}.sample-row .type{text-align:right;color:var(--muted)}.sample-caption{font-size:10px;color:var(--muted);margin-top:14px}.about{border-top:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.about p{font-size:17px;color:var(--muted);max-width:600px;margin-top:15px}.quote{font-family:Georgia,serif;font-size:34px;line-height:1.3;color:var(--ink)!important}.faq{max-width:850px;margin:auto}.faq h2{margin-bottom:35px}details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-size:16px;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+'}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);margin:15px 35px 0 0}.closing{background:var(--lime);padding:55px 45px;border-radius:5px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin:20px 0 65px}.closing h2{margin:0;max-width:650px;font-size:42px}footer{border-top:1px solid var(--line);padding:28px 0 35px;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:11px;color:var(--muted)}footer a{text-decoration:none}dialog{border:0;border-radius:6px;padding:35px;max-width:520px;width:calc(100% - 32px);background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #0004}dialog::backdrop{background:#152a23aa}dialog h2{font-size:31px;margin:12px 0 20px}dialog p,dialog li{font-size:14px;color:var(--muted)}.dialog-top{display:flex;justify-content:space-between;align-items:center}.close{border:1px solid var(--line);background:transparent;padding:5px 12px;font-size:20px;border-radius:3px}.dialog-foot{padding-top:18px;border-top:1px solid var(--line);margin-top:22px}.reveal{animation:rise .7s ease-out}@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:850px){nav{padding:0 22px;height:75px}.shell{padding:0 22px}.hero{grid-template-columns:1fr;gap:32px;padding-top:30px}h1{letter-spacing:-2.7px;max-width:620px}.visual{min-height:420px}.heading{align-items:start;flex-direction:column;gap:20px}.plan{grid-template-columns:1fr}.plan-art{padding:45px}.sample,.about{grid-template-columns:1fr;gap:35px}.steps{gap:25px}.links{gap:17px}.nav-cta{display:none}.section{padding:65px 0}.strip{letter-spacing:1px;font-size:9px}.closing{padding:35px 25px}.closing h2{font-size:33px}}
@media(max-width:550px){.menu{display:block}.links{display:none;position:absolute;top:74px;left:0;right:0;padding:20px 24px;background:var(--paper);border-bottom:1px solid var(--line);z-index:5}.links.open{display:flex;flex-direction:column}.brand{font-size:16px}.steps{grid-template-columns:1fr;gap:30px}.plan-copy{padding:28px}.plan-price{align-items:start;flex-direction:column}.strip{flex-wrap:wrap;justify-content:center;gap:12px 25px}.visual{min-height:390px}.discipline{left:29%;width:53%;padding:20px}.closing{flex-direction:column;align-items:start}footer{flex-direction:column;align-items:start}.sample-board{padding:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{animation:none}}

header{background:#fff;border-bottom:1px solid var(--line)}nav{height:100px;gap:20px}.brand-logo{width:260px;height:78px;overflow:hidden;display:block;flex-shrink:0}.brand-logo img{width:100%;display:block;margin-top:-3px}.links{gap:22px}.links a[aria-current=page]{color:#087d9b;font-weight:700}.links a:hover{text-decoration:underline;text-underline-offset:6px}.nav-cta{white-space:nowrap}.skip{position:absolute;top:-100px;left:20px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}h1{font-weight:750;letter-spacing:-2.7px;font-size:clamp(43px,5.3vw,73px)}h1 .accent{color:#087d9b}.visual .discipline{background:white}.coordinates{color:#b9dfe9}.compact-mark{display:inline-block;width:72px;height:64px;overflow:hidden;background:white;flex-shrink:0}.compact-mark img{display:block;width:72px;margin-top:-2px}.about-mark{width:145px;height:126px;margin-bottom:20px}.about-mark img{width:145px;margin-top:-5px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card-grid.two{grid-template-columns:repeat(2,1fr)}.card{background:#fff;border:1px solid var(--line);border-radius:5px;padding:30px;display:flex;flex-direction:column;align-items:start}.card h3{font-size:25px;line-height:1.15;letter-spacing:-.7px;font-weight:500;margin:20px 0 15px}.card p{font-size:14px;color:var(--muted)}.card .btn{margin-top:auto}.card .features{width:100%;margin-top:0}.page-intro{padding:65px 0 45px;max-width:850px}.page-intro h1{font-size:clamp(40px,5vw,64px);margin-bottom:25px}.page-intro .lede{max-width:700px}.section.compact{padding:45px 0 65px}.status{background:#e8f4f8;padding:18px 22px;border-left:3px solid #087d9b;font-size:14px;margin-bottom:30px}.status p:last-child{margin:0}.table-wrap{overflow-x:auto;margin:30px 0}table{border-collapse:collapse;width:100%;background:white;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:18px;vertical-align:top}th{background:#e8f4f8}.distance{font-size:13px;letter-spacing:.3px;color:var(--muted);margin:12px 0 22px}.inline-link{font-size:14px;font-weight:600;text-underline-offset:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}label{display:block;font-size:14px;font-weight:600}select,input,textarea{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #8ba4b5;background:white;color:var(--ink);border-radius:4px;font:inherit}textarea{min-height:100px;resize:vertical}.wide{grid-column:1/-1}.journey{border:1px solid var(--line);background:white;padding:32px;border-radius:5px}.journey h2{margin-bottom:25px}.journey-result{margin-top:25px;padding:24px;background:#e8f4f8}.journey-result h3{margin-top:0}.resource-tag{font-size:11px;letter-spacing:1.5px;color:#087d9b;font-weight:700}.resource-detail{font-size:14px;color:var(--muted)}.resource-detail summary{font-size:14px;color:var(--ink)}footer .brand{gap:15px;font-size:14px}footer .footer-links{display:flex;gap:20px;flex-wrap:wrap}.section p:last-child{margin-bottom:0}.about h2{margin-bottom:25px}.closing .btn{flex-shrink:0}button:hover,.btn:hover{filter:brightness(.94)}[hidden]{display:none!important}
@media(max-width:1100px){nav{padding:0 24px}.brand-logo{width:220px;height:66px}.links{gap:16px;font-size:12px}.nav-cta{display:none}.card{padding:24px}}
@media(max-width:850px){.card-grid{grid-template-columns:1fr}.card-grid.two{grid-template-columns:1fr 1fr}.brand-logo{width:210px;height:63px}.links{gap:13px}.hero{padding-top:40px}.page-intro{padding-top:45px}.closing h2{font-size:32px}}
@media(max-width:700px){nav{height:85px}.menu{display:block}.links{display:none;position:absolute;top:84px;left:0;right:0;padding:22px;background:white;border-bottom:1px solid var(--line);z-index:5}.links.open{display:flex;flex-direction:column;gap:20px;font-size:15px}.card-grid.two,.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.journey{padding:22px}.closing{flex-direction:column;align-items:start}.visual{min-height:430px}h1{letter-spacing:-1.7px}.section{padding:65px 0}footer{align-items:start;flex-direction:column}.brand-logo{width:220px;height:66px}}
.brand-logo img,.compact-mark img{height:auto}
.discipline{top:23%}
@media(max-width:700px){.visual{min-height:470px}.discipline{top:19%}}

.week-day{display:grid;grid-template-columns:140px 1fr;gap:24px;padding:24px 0;border-top:1px solid var(--line)}.week-day h3,.week-day h4{margin:0 0 10px}.week-day h3{font-size:18px;color:#087d9b}.week-day h4{font-size:18px}.week-day p{max-width:780px;color:var(--muted)}.print-notes{display:none}#before-start,#pool-safety,#checkin{margin-bottom:24px}.sample-sources{font-size:14px}.sample-sources h2{font-size:28px;margin-bottom:20px}@media(max-width:550px){.week-day{grid-template-columns:1fr;gap:5px}}@media print{@page{margin:16mm}header,footer,.skip,.no-print{display:none!important}body{background:white;color:black;font-size:11pt}.shell{max-width:none;padding:0}.page-intro,.section.compact{padding:12px 0}.page-intro h1{font-size:30pt;letter-spacing:-1px}.page-intro .lede{font-size:12pt}h2{font-size:19pt;letter-spacing:-.5px}h3,h4{break-after:avoid}.week-day{break-inside:avoid;padding:12px 0;grid-template-columns:90px 1fr;gap:16px}.week-day h3,.week-day h4{font-size:12pt;color:black}.week-day p{color:black}.heading{margin-bottom:15px}.print-notes{display:block}.sample-sources{font-size:10pt}.sample-sources a{color:black}a[href]::after{content:none}.reveal{animation:none}}
