* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: 'Manrope', sans-serif;
    color: var(--ink);
    background: var(--white);
    line-height: 1.6;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.section { padding: 110px 0; }
.eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--green-700);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.eyebrow::before {
    content: '';
    width: 26px;
    height: 2px;
    background: currentColor;
}
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { line-height: 1.08; }
h1 { font-size: clamp(3rem, 6vw, 6.2rem); letter-spacing: -.055em; }
h2 { font-size: clamp(2.3rem, 4vw, 4.5rem); letter-spacing: -.045em; }
h3 { font-size: 1.35rem; }
p { color: var(--muted); }
.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .75s ease, transform .75s ease;
}
.reveal.is-visible { opacity: 1; transform: translateY(0); }
