:root{--color-lagoon:#2a9d9f;--color-lagoon-ink:#1b6f71;--color-lagoon-soft:#d5ece9;--color-ocean:#0f3d56;--color-ocean-deep:#0a2a3c;--color-mangrove:#3f5d3a;--color-mangrove-soft:#dfe6d6;--color-sand:#e8dcc4;--color-sand-light:#f3ecdd;--color-offwhite:#faf7f1;--color-terracotta:#b8603e;--color-terracotta-ink:#9a4a2b;--color-ink:#1d2a30;--color-ink-soft:#4a5a61;--color-line:#e2d9c8;--font-display:var(--font-fraunces,Georgia), Georgia, "Times New Roman", serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:1.0625rem;--text-lg:1.25rem;--text-xl:clamp(1.5rem, 1.1rem + 1.6vw, 2.125rem);--text-2xl:clamp(2rem, 1.3rem + 3vw, 3.25rem);--text-3xl:clamp(2.75rem, 1.5rem + 6vw, 5.5rem);--text-4xl:clamp(3.75rem, 1rem + 11vw, 9.5rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4.5rem;--space-9:7rem;--radius:14px;--radius-sm:8px;--shadow:0 1px 2px #0f3d560f, 0 8px 24px #0f3d5614;--measure:66ch;--container:74rem}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-ink);background:var(--color-offwhite);text-rendering:optimizelegibility;margin:0;line-height:1.65}h1,h2,h3,h4{font-family:var(--font-display);color:var(--color-ocean);letter-spacing:-.01em;margin:0 0 var(--space-4);text-wrap:balance;font-weight:400;line-height:1.12}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-lg);font-weight:500}p{margin:0 0 var(--space-4);text-wrap:pretty}a{color:var(--color-ocean);text-underline-offset:3px}img,svg{max-width:100%;height:auto;display:block}.container{width:min(100% - 2rem, var(--container));margin-inline:auto}.prose{max-width:var(--measure)}.lead{font-size:var(--text-lg);color:var(--color-ink-soft);max-width:58ch}.eyebrow{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;color:var(--color-terracotta-ink);margin-bottom:var(--space-3);font-weight:600;display:inline-block}.section{padding-block:var(--space-8)}@media (width>=48rem){.section{padding-block:var(--space-9)}}.section-head{max-width:44rem;margin-bottom:var(--space-7)}.btn{align-items:center;gap:var(--space-2);min-height:48px;padding:var(--space-3) var(--space-5);font:600 var(--text-sm)/1 var(--font-body);cursor:pointer;border:1.5px solid #0000;border-radius:999px;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s;display:inline-flex}.btn-primary{background:var(--color-ocean);color:var(--color-offwhite)}.btn-primary:hover{background:var(--color-ocean-deep)}.btn-ghost{color:var(--color-ocean);background:0 0;border-color:currentColor}.btn-ghost:hover{background:var(--color-ocean);color:var(--color-offwhite);border-color:var(--color-ocean)}.btn-light{background:var(--color-offwhite);color:var(--color-ocean)}.btn-light:hover{background:var(--color-sand)}.badge{font-size:var(--text-xs);letter-spacing:.04em;background:var(--color-sand-light);color:var(--color-ink-soft);border:1px solid var(--color-line);border-radius:999px;padding:.15rem .6rem;font-weight:600;display:inline-block}.skip-link{background:var(--color-ocean);color:#fff;padding:var(--space-2) var(--space-4);z-index:20;position:absolute;top:0;left:-999px}.skip-link:focus{left:var(--space-4)}:focus-visible{outline:3px solid var(--color-terracotta);outline-offset:3px;border-radius:4px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}@keyframes reveal{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal{animation-name:reveal;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range:entry cover 22%}}}@media (prefers-reduced-motion:no-preference){@view-transition{navigation:auto}}::view-transition-group(*){animation-duration:.5s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}::view-transition-group(root){animation-duration:.3s}::view-transition-old(*),::view-transition-new(*){object-fit:cover;height:100%}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
