/* =========================================================================
   BASE — reset, grunnelementer, typografi og gjennomgående småklasser.
   ========================================================================= */
*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
    margin: 0;
    font-family: var(--font-body);
    color: var(--text);
    background: var(--bg);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

h1, h2, h3, h4 { font-family: var(--font-head); line-height: 1.12; margin: 0 0 .4em; letter-spacing: -.02em; }
h1 { font-size: clamp(2rem, 4.5vw, 3.3rem); }
h2 { font-size: clamp(1.6rem, 3vw, 2.3rem); }
p  { margin: 0 0 1rem; }
a  { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }

/* ---------- Layout-hjelpere ---------- */
.container { width: min(100% - 2.5rem, var(--maxw)); margin-inline: auto; }
.narrow { width: min(100% - 2.5rem, 640px); }
.muted { color: var(--muted); }
.section { padding-block: clamp(3rem, 7vw, 6rem); }
.section-alt { background: color-mix(in oklab, var(--primary) 7%, var(--bg)); }
.section-head { text-align: center; margin-bottom: 2.5rem; }
.eyebrow { display: inline-block; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
    font-size: .78rem; color: var(--accent); margin-bottom: .8rem; }
