/* base.css — tokens, reset, typography, layout primitives.
   Shared across every visitor-facing surface. Section-specific styles live
   inline in their host page. */

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
    --black: #0a0a0a;
    --dark: #121212;
    --ink: #f7f1e8;
    --muted: rgba(255, 255, 255, .58);
    --muted2: rgba(255, 255, 255, .36);
    --orange: #00c4d8;
    --orange2: #2adaf0;
    --line: rgba(255, 255, 255, .08);
    --panel: rgba(255, 255, 255, .04);
    --green: #2ca669;
    --blue: #63a5ff;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'DM Sans', sans-serif;
    background: radial-gradient(circle at top right, rgba(0, 196, 216, .15), transparent 30%), var(--black);
    color: #fff;
    line-height: 1.65;
    overflow-x: hidden;
}

a {
    text-decoration: none;
    color: inherit;
}

h1,
h2,
h3,
h4 {
    font-family: 'Bebas Neue', sans-serif;
    letter-spacing: 1px;
    font-weight: 400;
}

.page {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 34px;
}

.hidden {
    display: none !important;
}

.muted {
    color: var(--muted);
}

.divider {
    height: 1px;
    background: var(--line);
}

@media (max-width: 980px) {
    .page {
        padding: 0 22px;
    }
}