/* =====================================================================
   Fuldskærms-hero på forsiden ("Terminal/Fabrik"-udgaven).
   Dæmpet (halvmættet) baggrundsbillede der dækker ~90% af viewporten, hvid scrim
   så teksten står i mørk skovgrøn, og toppen af sektion 01 titter frem
   i bunden som scroll-affordance. Billedet fader rent ud i hvidt
   (ingen kantlinje). Aktiveres via body.hero-full, som layout.php
   sætter server-side på forsiden.
   ===================================================================== */

body.hero-full .hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: min(90svh, 60rem);
  padding-block: var(--space-6);
}

/* Ingen streg under billedet: også sektion 01's topkant undertrykkes,
   så billedet fader rent ud i det hvide */
body.hero-full .hero + .section { border-top: 0; }

/* Baggrundsbilledet som eget lag, så grayscale-filteret kan ligge på det.
   Billede: Stockholms stadsbiblioteks rotunde — Unsplash 2JIvboGLeho
   (Unsplash-licens: fri kommerciel brug, ingen kreditering påkrævet). */
body.hero-full .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: url("/assets/img/hero-library.jpg") center / cover no-repeat;
  filter: grayscale(.55) contrast(1.02);
}

/* Hvid scrim: tæt i venstre side hvor teksten står, luftig mod højre */
body.hero-full .hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(ellipse 60% 70% at 100% 100%,
      rgba(255, 255, 255, .92) 0%,
      rgba(255, 255, 255, .55) 45%,
      rgba(255, 255, 255, 0) 75%),
    linear-gradient(to right,
      rgba(255, 255, 255, .94) 0%,
      rgba(255, 255, 255, .82) 42%,
      rgba(255, 255, 255, .45) 70%,
      rgba(255, 255, 255, .22) 100%),
    linear-gradient(to top,
      rgba(255, 255, 255, .96) 0%,
      rgba(255, 255, 255, .55) 12%,
      rgba(255, 255, 255, 0) 32%);
}

/* Én kolonne: teksten bærer det hele, lodret centreret af flex'en */
body.hero-full .hero__inner {
  display: block;
  position: static;
}
body.hero-full .hero__text {
  margin-top: 0;
  max-width: 34em;
}
body.hero-full .hero__subhead,
body.hero-full .hero__note { max-width: 30em; }

/* Mobil: biblioteket skal stå TYDELIGT — derfor kun en let global scrim,
   og læsbarheden sikres i stedet af et blødt hvidt "lys" bag selve
   tekstblokken (fjer-kantet radial, så det ikke ligner en boks).
   Bund-fade'en beholdes i fuld styrke, så billedet ender rent i hvidt */
@media (max-width: 760px) {
  body.hero-full .hero { min-height: 82svh; }
  body.hero-full .hero::after {
    background:
      linear-gradient(to top,
        rgba(255, 255, 255, .96) 0%,
        rgba(255, 255, 255, .55) 14%,
        rgba(255, 255, 255, 0) 34%),
      linear-gradient(to bottom,
        rgba(255, 255, 255, .55) 0%,
        rgba(255, 255, 255, .32) 55%,
        rgba(255, 255, 255, .22) 100%);
  }
  body.hero-full .hero__text { position: relative; }
  body.hero-full .hero__text::before {
    content: "";
    position: absolute;
    inset: -2.25rem -1.5rem;
    z-index: -1;
    background: radial-gradient(ellipse 100% 100% at 50% 50%,
      rgba(255, 255, 255, .84) 40%,
      rgba(255, 255, 255, .62) 68%,
      rgba(255, 255, 255, 0) 100%);
  }
}
