* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--mamma-cream);
    color: var(--mamma-black);
    font-family: var(--font-body);
    overflow-x: hidden;
}
body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    opacity: .16;
    z-index: 999;
    background-image: radial-gradient(rgba(17,17,17,.32) .55px, transparent .55px);
    background-size: 5px 5px;
    mix-blend-mode: multiply;
}
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.section-shell { width: min(var(--content-width), calc(100% - 72px)); margin: 0 auto; }
.eyebrow {
    margin: 0 0 15px;
    color: var(--mamma-red);
    font: 800 .82rem/1 var(--font-heading);
    letter-spacing: .18em;
    text-transform: uppercase;
}
h1,h2,h3,p { margin-top: 0; }
h2 {
    margin-bottom: 20px;
    font: 900 clamp(4rem, 8vw, 8.5rem)/.78 var(--font-heading);
    letter-spacing: -.035em;
    text-transform: uppercase;
}
.red { color: var(--mamma-red); }
