:root{--navy:#1f4386;--navy-deep:#13295b;--sky:#57bae5;--sky-mid:#b9e3f6;--sky-soft:#e6f5fc;--lemon:#ffe27a;--lemon-deep:#d8b53f;--paper:#f6fbfe;--ink:#1d2940;--muted:#5d6a82;--line:#dcebf4;--white:#fff;--radius:24px;--radius-sm:14px;--shadow:0 1px 2px #13295b0d, 0 18px 40px -22px #13295b59;--display:"Bricolage Grotesque", system-ui, -apple-system, "Segoe UI", sans-serif;--serif:var(--display);--sans:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--wrap:1200px;--spring:cubic-bezier(.34, 1.56, .64, 1);--ease:cubic-bezier(.2, .8, .2, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:var(--navy)}a:hover{color:var(--navy-deep)}h1,h2,h3,h4{font-family:var(--display);color:var(--navy-deep);letter-spacing:-.03em;text-wrap:balance;margin:0 0 .5em;font-weight:800;line-height:1.02}h1{font-size:clamp(2.7rem,6.4vw,5rem)}h2{font-size:clamp(2.1rem,4.4vw,3.4rem)}h3{letter-spacing:-.02em;font-size:1.5rem;line-height:1.15}p{margin:0 0 1em}.wrap{width:min(100% - 32px, var(--wrap));margin-inline:auto}.section{padding-block:clamp(64px,9vw,112px);position:relative}.section>.wrap{z-index:1;position:relative}.bubbles--soft{opacity:.6}.section--tint{background:var(--sky-soft)}.section--navy{background:var(--navy-deep);color:#dfe8f7}.section--navy h2,.section--navy h3{color:var(--white)}.hl{white-space:nowrap;z-index:0;position:relative}.hl:after{content:"";background:var(--lemon);z-index:-1;border-radius:6px;height:.38em;position:absolute;bottom:.06em;left:-4px;right:-4px;transform:rotate(-1.5deg)}.section--navy .hl:after,.on-navy .hl:after{background:var(--sky);opacity:.55}.eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--navy);background:var(--white);border:1.5px solid var(--line);border-radius:999px;margin-bottom:18px;padding:6px 14px;font-size:.78rem;font-weight:700;display:inline-block}.section--tint .eyebrow{border-color:var(--sky-mid)}.section--navy .eyebrow{color:var(--navy-deep);background:var(--sky);border-color:var(--sky)}.lead{color:var(--muted);max-width:60ch;font-size:1.18rem}.section-head{max-width:760px;margin-bottom:48px}.section-head.center{text-align:center;margin-inline:auto}.section-head.center .lead{margin-inline:auto}.btn{min-height:52px;font-family:var(--sans);cursor:pointer;transition:transform .35s var(--spring), box-shadow .3s ease, background .2s ease;border:2px solid #0000;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:14px 26px;font-size:1rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.btn--primary{background:var(--navy-deep);color:var(--white);box-shadow:0 6px 0 var(--sky)}.btn--primary:hover{color:var(--white);box-shadow:0 9px 0 var(--sky);transform:translateY(-3px)}.btn--primary:active{box-shadow:0 2px 0 var(--sky);transform:translateY(3px)}.btn--sky{background:var(--lemon);color:var(--navy-deep);box-shadow:0 6px 0 var(--lemon-deep)}.btn--sky:hover{color:var(--navy-deep);box-shadow:0 9px 0 var(--lemon-deep);transform:translateY(-3px)}.btn--sky:active{box-shadow:0 2px 0 var(--lemon-deep);transform:translateY(3px)}.btn--ghost{background:var(--white);color:var(--navy-deep);border-color:var(--navy-deep)}.btn--ghost:hover{color:var(--navy-deep);transform:translateY(-3px)rotate(-1deg)}.btn--ghost-light{color:var(--white);border-color:#ffffff8c}.btn--ghost-light:hover{color:var(--white);background:#ffffff1a;transform:translateY(-3px)}.btn-row{flex-wrap:wrap;gap:14px;display:flex}.grid{gap:20px;display:grid}@media (width>=720px){.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.grid--4{grid-template-columns:repeat(4,1fr)}}.card{background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px}.split{align-items:center;gap:40px;display:grid}@media (width>=900px){.split{grid-template-columns:1fr 1fr;gap:72px}.split--reverse>:first-child{order:2}}.photo{border:6px solid var(--white);box-shadow:var(--shadow);border-radius:28px;overflow:hidden}.photo img{object-fit:cover;width:100%;height:100%}.checklist{gap:12px;margin:0;padding:0;list-style:none;display:grid}.checklist li{align-items:flex-start;gap:12px;font-weight:600;display:flex}.checklist li:before{content:"";background:var(--sky) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E") center / 14px no-repeat;border-radius:50%;flex:none;width:26px;height:26px;margin-top:1px}.prose{max-width:70ch}.prose h2{margin-top:1.4em;font-size:2rem}.prose h3{margin-top:1.2em;font-size:1.4rem}.prose ul,.prose ol{padding-left:1.3em}.prose li{margin-bottom:.4em}.prose img{border-radius:var(--radius-sm);margin-block:1.5em}.bubbles{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.bubbles span{background:radial-gradient(circle at 30% 28%,#fffffff2 0 12%,#b9e3f68c 13% 60%,#57bae540 100%);border:1.5px solid #57bae559;border-radius:50%;animation:linear infinite bubble-rise;position:absolute;bottom:-120px}@keyframes bubble-rise{0%{opacity:0;transform:translateY(0)translate(0)}10%{opacity:1}50%{transform:translateY(-55vh)translate(22px)}to{opacity:0;transform:translateY(-115vh)translate(-10px)}}.js .reveal{opacity:0;transition:opacity .8s var(--ease), transform .8s var(--spring);transform:translateY(28px)scale(.98)}.js .reveal.in{opacity:1;transform:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:3px solid var(--navy);outline-offset:3px;border-radius:4px}.section--navy :focus-visible,.on-navy :focus-visible{outline-color:var(--lemon)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.js .reveal{opacity:1;transform:none}.bubbles{display:none}}
