*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);background:var(--cream);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul{list-style:none}
button{font:inherit;cursor:pointer;background:none;border:none;color:inherit}
input,select,textarea{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:-.01em;line-height:1.1}
h1{font-size:clamp(2.4rem,5vw,4.2rem)}
h2{font-size:clamp(1.9rem,3.4vw,2.8rem)}
h3{font-size:clamp(1.3rem,2vw,1.6rem)}
h4{font-size:1.05rem}
p{color:var(--muted)}
.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--space-4)}
.section{padding-block:var(--space-8)}
.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);background:var(--teal-50);border:1px solid rgba(21,153,175,.25);padding:.5em 1em;border-radius:var(--radius-pill)}
.eyebrow::before{content:'✦'}
.eyebrow.on-dark{color:#8fe0e9;background:rgba(21,153,175,.14);border-color:rgba(143,224,233,.25)}
.eyebrow.on-teal{color:var(--white);background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.4)}
.eyebrow.on-teal::before{color:var(--white)}
.section-head.on-teal p{color:rgba(255,255,255,.88)}
.section-head{max-width:640px;margin-inline:auto;text-align:center;margin-bottom:var(--space-6)}
.section-head p{margin-top:var(--space-3);font-size:1.05rem}
.on-dark{color:var(--white)}
.on-dark p{color:#a9c2cc}
.u-center{text-align:center}
.u-grid{display:grid;gap:var(--space-4)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
::selection{background:var(--teal);color:var(--white)}
