/* Vannrett rulling på smal skjerm. Målt 2026-09-08 i Chrome på 500 px: landingen lot seg
   rulle 10 px sidelengs (scrollWidth 510 mot 500), uten at ETT eneste element målte forbi
   kanten -- det klassiske «siden vagger» på mobil.

   Årsaken er at `vendor/scrollcraft.css` setter `overflow-x: clip` på body, mens html står
   på `visible`. `clip` propagerer ikke til visningsporten slik `hidden` gjør, så klippet
   gjaldt body og ikke rullingen. Motoren er vendored og skal aldri redigeres, så regelen
   hører her, i det delte gulvet som lastes etter den.

   Kun x-aksen: `overflow-y` må forbli `visible`, ellers dør den scroll-drevne fortellingen.
   Verifisert etterpå at vertikal rulling fortsatt går (0 -> 668 av 7 810 px). */
html { overflow-x: clip; }

/* ============================================================================
   Offentlig gulv — delt av landing, tillit, status, support, personvern og vilkår.

   Lastes ETTER lys.css, trust.css og vendor/scrollcraft.css. Gjør to ting:
   1. Mapper scroll-craft-tokenene (--sc-*) til lys-verdenens farger og fonter, så
      scrollcraft.css sitt typografigulv (størrelse, sporing, glatting, markering)
      gjelder likt på alle offentlige sider.
   2. Retter tillitssidenes beholdere og målestokk inn mot landingens: samme bredde,
      samme overskrifter, samme rom (radius, kant, skygge), løpende tekst rett på
      veggen, og to stille gullflekker i grunnen. Ingen lyskaster her; den hører
      landingen og ventelista til.
   ========================================================================== */
:root {
  --sc-canvas: var(--kalk);
  --sc-surface: var(--kalk-lys);
  --sc-ink: var(--kull);
  --sc-ink-soft: var(--kull-myk);
  --sc-accent: var(--sol-blekk);
  --sc-accent-ink: var(--kalk-lys);
  --sc-font-display: var(--font-display);
  --sc-font-text: var(--font-sans);
  --sc-font-mono: var(--font-mono);
  --sc-shadow-color: 38 17% 13%;
  --sc-maxw: 72rem;
}
body { color: var(--kull); }
::selection { background: var(--sol-glod); color: var(--kull); }
.mono { font-family: var(--font-mono); font-variant-numeric: tabular-nums lining-nums; }
.lys-btn, .public-brand { text-decoration: none; }

/* ---- Tillitssidene: samme målestokk som landingen ----------------------------- */
.public-page { position: relative; }
.public-page::before, .public-page::after {
  content: ""; position: absolute; z-index: -1; pointer-events: none; border-radius: 50%;
  background: radial-gradient(closest-side, rgba(236, 202, 130, 0.42), rgba(236, 202, 130, 0.16) 45%, transparent 100%);
}
.public-page::before { width: 46vw; height: 46vw; left: 62%; top: 4rem; margin-left: -23vw; }
.public-page::after  { width: 36vw; height: 36vw; left: 12%; top: 40%; margin-left: -18vw; }
.public-main { width: auto; max-width: var(--sc-maxw); margin-inline: auto; padding: clamp(4rem, 10vh, 7rem) var(--sc-gutter) clamp(4rem, 10vh, 7rem); }
.public-hero { max-width: none; margin-bottom: clamp(3rem, 8vh, 5rem); }
.public-hero h1 {
  font-size: clamp(2.2rem, 1.2rem + 3.2vw, 3.9rem); line-height: 1.04; letter-spacing: -0.025em;
  max-width: 22ch; margin: 0 0 1.4rem; text-wrap: balance;
}
.public-hero p:not(.public-eyebrow) { max-width: 52ch; font-size: 1.12rem; line-height: 1.6; color: var(--kull-myk); text-wrap: pretty; }
.public-section { margin-top: clamp(4rem, 10vh, 7rem); }
.section-heading { max-width: none; margin-bottom: 2.2rem; }
.section-heading h2, .status-summary h2, .support-card h2, .public-callout h2 {
  font-size: clamp(1.8rem, 1.2rem + 2vw, 2.8rem); line-height: 1.1; max-width: 24ch; margin: 0 0 0.9rem;
}
.section-heading p:not(.public-eyebrow) { max-width: 52ch; font-size: 1.08rem; color: var(--kull-myk); }
/* Løpende tekst rett på veggen, som på landingen. */
.tekstrom { background: none; border: none; box-shadow: none; padding: 0; border-radius: 0; }
/* Rommene: samme oppskrift som landingens kort. */
.info-card, .support-card, .public-callout, .status-summary, .legal-notice {
  padding: 1.7rem 1.7rem 1.6rem; border-radius: var(--radius-rom); border: 1px solid var(--mortel);
  background: var(--kalk-lys); box-shadow: 0 10px 28px -18px rgba(38, 34, 27, 0.35);
}
.info-card { min-height: 0; }
.info-card h3, .info-card h2 { font-size: 1.22rem; line-height: 1.25; }
.legal-notice { background: var(--kalk-lys); }
.legal-content h2 { font-size: 1.35rem; }
.source-grid { gap: 1.2rem; }
@media (max-width: 760px) {
  .source-grid { grid-template-columns: 1fr; }
  .public-page::before, .public-page::after { width: 80vw; height: 80vw; margin-left: -40vw; }
}
