/* Design tokens and element defaults, translated from the legacy build's
   compiled stylesheet. The two :root blocks are kept in their original order:
   the heimr/switsbake theme block first, then the site's overrides (the site
   stylesheet loaded last in the legacy build and re-declares some tokens).

   Note: the --oma-page__space--* tokens and --oma-grid__width are NOT declared
   here — the vendored oma-site/oma-grid components inject them at runtime,
   exactly like the legacy site. */
@layer default {
  /* Theme tokens */
  :root {
    --card__shadow: 0 9px 10px #0003;
    --card__min-size: 250px;
    --corner__size: 3px;
    --color__background--main: #f3f3f3;
    --color__background--transparent: var(--color__transparent-white);
    --color__transparent-white: hsla(0, 0%, 100%, 0.9);
    --color__font: #222;
    --color__font--bright: #fff;
    --color__font--grey: #999;
    --color__font--light-grey: #d4d4d4;
    --color__font--highlight: #fff;
    --color__font--heading-bright-card: #c1ad9a;
    --color__font--heading-theme: #5f2561;
    --color__white: #fff;
    --font__family: 'Roboto', sans-serif;
    --font__family--emphasize: 'Roboto Slab', sans-serif;
    --font__line-height: 1.5;
    --font__line-height-heading: 1.4;
    --font__size--medium: 0.875rem;
    --font__size--small: 0.75rem;
    --font__size--large-heading: 2.75rem;
    --font__weight: 400;
    --font__weight--heading: 600;
    --font__weight--light: 300;
    --height__header: 6.25rem;
    --space__large: 8.125rem;
    --space__medium: 3rem;
    --space__section: var(--oma-page__space--small);
    --space__small: 1.25rem;
    --space__very-small: 0.5rem;
  }

  /* Site overrides (loaded after the theme in the legacy build) */
  :root {
    --color__border: var(--color__theme);
    --color__font--heading-bright-card: #9e8874;
    --color__font--heading-theme: #0f1010;
    --color__font-bright: #efefef;
    --color__footer: rgba(15, 15, 16, 0.95);
    --color__theme: #2b2b2b;
    --color__transparent-black: rgba(0, 0, 0, 0.9);
    --font__size--small-heading: 1.25rem;
    --font__size--medium-heading: 2.3125rem;
    --font__weight-heading: 400;
    --page__margin: var(--oma-page__space--small);
  }

  html {
    box-sizing: border-box;
    height: 100vh;
  }

  body {
    min-height: 100%;
  }

  *,
  :after,
  :before {
    box-sizing: inherit;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin: 0;
  }

  p {
    margin: 0 0 var(--oma-page__space--small) 0;
  }

  p:last-child {
    margin-bottom: 0;
  }

  body {
    background-color: var(--color__background--main);
    font-family: var(--font__family);
    font-weight: var(--font__weight);
    line-height: var(--font__line-height);
    position: relative;
  }

  /* Breakpoint classes are set on <html> by the vendored oma-grid component.
     The theme sets --page__margin on body (which wins over the html-level site
     rules below for everything inside body), the site sets it on the root. */
  .size-900 body {
    --page__margin: var(--oma-page__space--large);
  }

  .size-1200 body {
    --page__margin: 0;
  }

  .size-900 {
    --page__margin: var(--oma-page__space--medium);
  }

  .size-1200 {
    --page__margin: 0;
  }
}
