
:root{--ink:#101a20;--red:#cc332d;--paper:#f6f7f5;--muted:#5c6469}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px}a{color:inherit;text-decoration:none}a,button,input,select{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #df9c49;outline-offset:5px}.skip{position:absolute;top:-90px}.skip:focus{top:12px;left:12px;z-index:10;background:white;padding:12px}header{max-width:1440px;margin:auto;height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 6%}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:22px;line-height:1.05;letter-spacing:1px}.brand small{display:block;font-size:12px;letter-spacing:3px;margin-top:5px}.mark{border:2px solid var(--red);color:var(--red);font-size:40px;line-height:.8;display:flex;flex-direction:column;align-items:center;padding:6px 8px}.mark span{font-size:10px;margin-top:4px;letter-spacing:3px}nav{display:flex;align-items:center;gap:38px;font-size:14px;font-weight:600}.button{background:var(--red);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:19px 25px;font:700 16px 'DM Sans',sans-serif;border:0;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#a82723;transform:translateY(-2px)}.button span{font-size:22px;font-weight:400}.button.small{padding:12px 20px;font-size:14px}.hero{background:var(--ink);color:white;position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:630px}.hero-copy{padding:62px 9% 65px 12%;position:relative;z-index:1}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:700;display:flex;align-items:center;gap:12px;line-height:1.5}.eyebrow span{width:24px;height:2px;background:var(--red)}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',sans-serif;font-weight:700;letter-spacing:-.6px;margin:0}h1{font-size:clamp(58px,6.1vw,90px);line-height:.98;margin:27px 0}em{font-style:normal;color:#ef6258}.intro{font-size:18px;line-height:1.65;max-width:375px;color:#cbd0d3;margin-bottom:30px}.micro{font-size:12px;color:#acb6bd;margin-top:18px}.hero-photo{position:relative;background:#35404a;background-size:cover;background-position:center;min-height:500px}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101a2030,transparent),linear-gradient(0deg,#101a20e8,transparent 60%)}.photo-caption{position:absolute;bottom:61px;left:8%;z-index:1}.photo-caption span{font-size:11px;letter-spacing:2px}.photo-caption strong{display:block;font-family:'Barlow Condensed',sans-serif;font-size:30px;margin-top:9px}.hero-number{position:absolute;right:25px;top:24px;color:#ffffffb0;z-index:2;font-size:11px;letter-spacing:2px}.values{display:flex;align-items:center;justify-content:center;gap:5vw;background:var(--red);color:white;padding:24px 6%;font-size:12px;letter-spacing:2px;font-weight:700}.values b{font-weight:400;color:#ffb2ab}.programs{padding:86px 6% 90px;max-width:1440px;margin:auto}.section-top{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:38px}.red{color:var(--red)}h2{font-size:clamp(42px,4.4vw,62px);line-height:1.05}.section-top>p{max-width:400px;color:var(--muted);line-height:1.7;margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{padding:30px;background:white;border:1px solid #dfe3e2;display:flex;flex-direction:column;transition:transform .2s}.card:hover{transform:translateY(-5px)}.card-no{font-size:11px;letter-spacing:2px;color:var(--muted);font-weight:700}.card h3{font-size:34px;line-height:1.1;margin-top:27px}.card p{color:var(--muted);line-height:1.7;font-size:15px;margin:18px 0 35px}.card-link{font-size:14px;font-weight:700;display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:20px;border-top:1px solid #dfe3e2}.card-link b{font-size:23px;color:var(--red)}.card.accent{background:#e9eeed}.contact{padding:75px 10%;background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact>div>p:not(.eyebrow){max-width:350px;line-height:1.8;color:#bbc5cb;margin-top:25px}.contact-detail{margin-top:40px;font-size:14px;color:#bbc5cb;line-height:2}.contact-detail a{font-size:23px;color:white;font-weight:600}form{background:white;color:var(--ink);padding:32px}.form-top h3{font-size:31px}.form-top p{font-size:14px;color:var(--muted);margin:8px 0 25px}label{display:block;font-size:14px;font-weight:600;margin:17px 0 8px}input,select{width:100%;border:1px solid #c9d0d3;background:#fbfcfb;border-radius:0;font:16px 'DM Sans',sans-serif;padding:13px;color:var(--ink);min-height:48px}input:focus,select:focus{outline:2px solid var(--red);outline-offset:2px}form .button{width:100%;margin-top:23px}.form-note{font-size:12px;color:#626a70;line-height:1.6;margin-bottom:0}#status{font-size:14px;line-height:1.5}#status:empty{display:none}footer{display:flex;justify-content:space-between;align-items:center;padding:30px 6%;font-size:12px;gap:20px;color:var(--muted)}.footer-brand{font-weight:700;letter-spacing:1px;color:var(--ink)}@media(min-width:1600px){.hero-copy{padding-left:max(12%,calc((100vw - 1260px)/2))}}@media(max-width:800px){header{height:86px;padding:0 5%}nav>a:first-child{display:none}.brand{font-size:17px}.brand small{font-size:10px;letter-spacing:2px}.mark{font-size:30px}.button.small{font-size:12px;padding:12px;gap:10px}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 7%}h1{font-size:70px}.hero-photo{min-height:350px}.photo-caption{bottom:30px;left:7%}.hero-number{display:none}.values{gap:14px;flex-wrap:wrap;font-size:10px;letter-spacing:1px;padding:20px 5%}.programs{padding:55px 6%}.section-top{display:block}.section-top>p{margin-top:24px}.cards{grid-template-columns:1fr}.card{padding:27px}.card h3{margin-top:18px}.contact{grid-template-columns:1fr;padding:50px 6%;gap:35px}form{padding:25px}footer{flex-wrap:wrap;line-height:1.6}footer>span{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.hero-photo{background-image:url("hero.jpg");background-position:48% center}.independent{font-size:13px!important}textarea{width:100%;padding:13px;border:1px solid #c9d0d3;background:#fbfcfb;font:16px "DM Sans",sans-serif;resize:vertical}.optional{font-weight:400;color:var(--muted)}.consent{display:flex;align-items:start;gap:10px;font-size:12px;line-height:1.6;font-weight:400}.consent input{width:18px;min-height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--red)}.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}button:disabled{opacity:.6;cursor:wait}.contact{align-items:start}

.hero-photo{background-image:none;overflow:hidden}.hero-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% center}.hero-copy{padding-top:50px;padding-bottom:50px}h1{font-size:clamp(52px,5.6vw,82px);line-height:1.02}.adult-hero-link{display:inline-block;font-size:14px;color:#cbd0d3;border-bottom:1px solid #69757d;margin-top:6px;padding-bottom:4px}.micro{font-size:13px}.kids-action{display:flex;align-items:center;gap:25px;margin-top:30px}.kids-action p{color:var(--muted);font-size:14px}.kids-cards .card p{margin-bottom:0;font-size:16px}.parent-guide{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding:60px 8%;background:#e8eeec}.parent-guide>div>p:last-child{line-height:1.8;max-width:420px;color:var(--muted)}.parent-guide ol{padding-left:25px;margin:0}.parent-guide li{padding:10px 0 15px 10px}.parent-guide li::marker{color:var(--red);font-weight:700}.parent-guide li p{line-height:1.7;color:var(--muted);margin:8px 0 0}.adults{display:grid;grid-template-columns:.8fr 1fr;gap:7%;align-items:center;padding:70px 8%;max-width:1440px;margin:auto}.adults img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.adults p:not(.eyebrow){color:var(--muted);line-height:1.8}.text-link{display:inline-flex;gap:30px;align-items:center;color:var(--red);font-weight:700;border-bottom:1px solid;padding:8px 0}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:7%;max-width:1440px;margin:auto;padding:0 8% 70px}.faq details{border-top:1px solid #cbd3d2;padding:20px 0}.faq details:last-child{border-bottom:1px solid #cbd3d2}.faq summary{font-weight:600;cursor:pointer;line-height:1.5}.faq details p{color:var(--muted);line-height:1.8;margin:14px 0 0}.faq summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}.contact h2{font-size:clamp(40px,4vw,60px)}.form-top p{line-height:1.6}.hero .intro{max-width:430px}.photo-caption strong{font-size:28px}.consent{font-size:14px}.form-note{font-size:13px}textarea:focus-visible{outline:2px solid var(--red);outline-offset:2px}
@media(max-width:800px){nav>a:not(.button){display:none}.hero-copy{padding:38px 7%}h1{font-size:clamp(44px,10.5vw,70px)}.hero-photo{min-height:320px}.kids-action{display:block}.parent-guide,.adults,.faq{grid-template-columns:1fr;padding:45px 6%;gap:25px}.adults{padding-bottom:25px}.faq{padding-top:25px}.parent-guide ol{padding-left:20px}.photo-caption{max-width:86%}.photo-caption strong{font-size:25px}.hero .intro{font-size:17px}.brand{flex-shrink:0}nav{gap:0}.button.small{padding:12px 10px}.kids-cards{gap:15px}}

/* Reading pages share the main site's typography and colours. */
.inline-link{text-decoration:underline;text-underline-offset:4px;color:var(--red)}header nav{gap:24px}footer nav{gap:22px;font-size:13px}.breadcrumbs{max-width:1200px;margin:0 auto;padding:25px 6%;font-size:13px}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:12px;list-style:none;margin:0;padding:0}.breadcrumbs li+li:before{content:'/';margin-right:12px;color:#7b8589}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.breadcrumbs [aria-current]{color:var(--muted)}.article-intro{padding:38px 8% 55px;max-width:1280px;margin:auto}.article-intro h1{font-size:clamp(44px,5.5vw,72px);line-height:1.05;max-width:1000px;margin:24px 0}.article-intro h1 em{color:var(--red)}.article-lead{max-width:770px;font-size:19px;line-height:1.8;color:var(--muted)}.article-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:7%;max-width:1280px;margin:auto;padding:0 8% 70px;align-items:start}.reading section{margin-bottom:42px}.reading h2,.guide-aside h2{font-size:36px;line-height:1.15}.reading p,.reading li{line-height:1.85;color:var(--muted)}.reading li{margin:10px 0}.reading strong{color:var(--ink)}.reading ul,.reading ol{padding-left:24px}.guide-aside{background:#e8eeec;border-top:4px solid var(--red);padding:28px}.guide-aside ol{padding-left:20px;font-size:15px;line-height:1.8}.guide-aside li{margin:12px 0}.guide-aside .button{font-size:14px;padding:16px;gap:15px}.guide-aside>p:last-child{font-size:13px;line-height:1.7;color:var(--muted)}.comparison-wrap{overflow-x:auto}.guide-table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.7}.guide-table caption{text-align:left;margin:12px 0;font-weight:700}.guide-table th,.guide-table td{padding:15px;text-align:left;border:1px solid #cbd3d2;vertical-align:top}.guide-table thead{background:var(--ink);color:white}.guide-table tbody th{min-width:110px}.guide-table tbody{background:white}.about-reading{max-width:920px;margin:auto;padding:0 8% 40px}.steps-list li{padding-left:8px;margin:22px 0}.steps-list li::marker{color:var(--red);font-weight:700}.steps-list p{margin:5px 0}.article-cta{background:var(--ink);color:white;padding:55px 8%;display:flex;gap:35px;justify-content:space-between;align-items:center}.article-cta h2{font-size:42px}.article-cta p:not(.eyebrow){color:#cbd0d3;line-height:1.7;max-width:650px}.article-cta .button{flex-shrink:0}.article-page footer{border-top:1px solid #dfe3e2}
@media(max-width:800px){header{height:auto;min-height:100px;flex-wrap:wrap;gap:18px;padding:18px 5%}header nav{width:100%;gap:18px;justify-content:space-between;flex-wrap:wrap}header nav>a:not(.button),header nav>a:first-child{display:inline-block}header nav .button{margin-left:auto}footer nav>a:not(.button),footer nav>a:first-child{display:inline-block}footer nav{flex-wrap:wrap;gap:18px}.breadcrumbs{padding:20px 6%}.article-intro{padding:20px 6% 30px}.article-lead{font-size:17px}.article-layout{grid-template-columns:1fr;padding:0 6% 40px;gap:10px}.reading h2{font-size:32px}.article-cta{padding:40px 6%;display:block}.article-cta .button{margin-top:15px}.about-reading{padding:0 6% 20px}}
