/* ==========================================================================
   eesier design system — RESET & BASE
   --------------------------------------------------------------------------
   Modern, opinionated reset. Establishes a predictable baseline so every
   component renders the same way regardless of the consuming browser.
   ========================================================================== */


/* BOX SIZING */

*,
*::before,
*::after {
    box-sizing: border-box;
}


/* MARGIN & PADDING — RESET ON CORE ELEMENTS */

html,
body,
h1, h2, h3, h4, h5, h6,
p,
ul, ol, li,
figure,
blockquote,
dl, dd {
    margin: 0;
    padding: 0;
}


/* HTML BASE */

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
}


/* BODY BASE
   Light mesh gradient background — every page on the site shares this
   surface. Components on the page assume LIGHT background unless they
   explicitly opt into a .e-section--dark surface. */

body {
    font-family: var(--e-font-family);
    font-size:   var(--e-font-size-md);
    font-weight: var(--e-font-weight-normal);
    line-height: var(--e-leading-normal);
    color: var(--e-color-ink);
    background:
        radial-gradient(1200px 500px at 10% 5%,  rgba(79, 190, 254, 0.10), transparent 55%),
        radial-gradient(900px 480px at 95% 2%,   rgba(28, 145, 228, 0.12), transparent 50%),
        radial-gradient(1000px 600px at 85% 50%, rgba(79, 190, 254, 0.08), transparent 50%),
        radial-gradient(800px 500px at 5% 60%,   rgba(28, 145, 228, 0.06), transparent 45%),
        radial-gradient(900px 520px at 50% 100%, rgba(255, 111, 60, 0.06), transparent 45%),
        var(--e-color-surface);
    background-attachment: fixed;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}


/* MEDIA */

img,
picture,
svg,
video,
canvas {
    display: block;
    max-width: 100%;
    height: auto;
}


/* FORMS — INHERIT FONT */

input,
button,
textarea,
select {
    font: inherit;
    color: inherit;
}


/* LISTS — REMOVE DEFAULT STYLING */

ul,
ol {
    list-style: none;
}


/* LINKS */

a {
    color: inherit;
    text-decoration: none;
}


/* SELECTION */

::selection {
    background: rgba(79, 190, 254, 0.25);
    color: var(--e-color-ink);
}


/* MAIN — HOST FOR PAGE CONTENT */

main {
    overflow: hidden;
}
