/* Hero-tittelen er LCP-elementet; byggsikt.css deklarerer Euclid Flex med
   font-display: block, som holder tittelen usynlig til 126 KB font er lastet.
   Samme fil, samme vekt — kun display-strategien byttes, og bare på studiesidene. */
@font-face {
  font-family: "Euclid Flex";
  src: url("../../fonts/EuclidFlex-Medium-WebXL.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

.research-paper-page {
  --research-navy: #102d45;
  --research-navy-deep: #0b1d2b;
  --research-blue: #2e6f91;
  --research-teal: #3f857e;
  --research-brass: #b9782f;
  --research-brass-ink: #855619;
  --research-rust: #9a4d35;
  --research-paper: #f5f0e6;
  --research-paper-deep: #e9e1d4;
  --research-ink: #171815;
  --research-muted: #625e55;
  --research-line: rgba(16, 45, 69, 0.18);
  --research-grid: rgba(232, 240, 243, 0.1);
  --sans: "Euclid Circular B", Arial, sans-serif;
  font-synthesis: weight;
}

.research-paper-page .site-main {
  overflow: clip;
}

.research-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  align-items: end;
  min-height: 760px;
  overflow: hidden;
  color: #f7f1e7;
  background:
    radial-gradient(circle at 78% 26%, rgba(63, 133, 126, 0.23), transparent 32%),
    linear-gradient(135deg, var(--research-navy-deep), #143b56 64%, #102b3d);
}

.research-hero::before {
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image:
    linear-gradient(var(--research-grid) 1px, transparent 1px),
    linear-gradient(90deg, var(--research-grid) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(90deg, transparent 1%, #000 46%, #000 100%);
  content: "";
}

.research-hero::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(7, 21, 31, 0.92) 0%, rgba(7, 21, 31, 0.76) 48%, rgba(7, 21, 31, 0.08) 84%);
  content: "";
}

.research-hero__content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr);
  gap: clamp(48px, 7vw, 120px);
  align-items: end;
  width: min(100%, 1820px);
  margin: 0 auto;
  padding: 150px 28px 76px;
}

.research-hero__copy {
  display: grid;
  gap: 26px;
  min-width: 0;
}

.research-hero .blog-kicker {
  color: rgba(247, 241, 231, 0.72);
}

.research-hero h1 {
  max-width: 12.6ch;
  margin: 0;
  color: #f7f1e7;
  font-family: var(--display);
  font-size: clamp(3.5rem, 6.1vw, 6.9rem);
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 0.9;
  text-wrap: balance;
}

.research-hero__lead {
  max-width: 720px;
  margin: 0;
  padding-top: 20px;
  border-top: 1px solid rgba(247, 241, 231, 0.38);
  color: rgba(247, 241, 231, 0.88);
  font-family: var(--text);
  font-size: 1.08rem;
  line-height: 1.72;
}

.research-hero__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  color: rgba(247, 241, 231, 0.64);
  font-family: var(--caption);
  font-size: 0.7rem;
  font-weight: 650;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.research-hero__meta a {
  color: inherit;
  text-decoration-color: rgba(247, 241, 231, 0.48);
  text-underline-offset: 0.22em;
}

.research-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.research-hero__actions a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 11px 15px;
  border: 1px solid rgba(247, 241, 231, 0.38);
  color: #f7f1e7;
  font-family: var(--caption);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.2;
  text-decoration: none;
}

.research-hero__actions a:hover,
.research-hero__actions a:focus-visible {
  border-color: #d7aa67;
  background: rgba(247, 241, 231, 0.09);
}

.research-hero__instrument {
  align-self: stretch;
  display: grid;
  align-content: end;
  min-width: 0;
}

.research-hero__instrument svg {
  display: block;
  width: 100%;
  height: auto;
  color: #f7f1e7;
}

.research-hero__instrument figcaption {
  margin-top: 12px;
  color: rgba(247, 241, 231, 0.64);
  font-family: var(--caption);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-align: right;
  text-transform: uppercase;
}

.research-mobile-toc {
  display: none;
}

.research-verdict {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 0 0 34px;
  background: var(--research-line);
  border: 1px solid var(--research-line);
}

.research-verdict article {
  display: grid;
  gap: 10px;
  padding: 24px;
  background: #f8f4ec;
}

.research-verdict span {
  color: var(--research-blue);
  font-family: var(--caption);
  font-size: 0.68rem;
  font-weight: 750;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.research-verdict strong {
  color: var(--research-navy);
  font-family: var(--sans);
  font-size: 1.06rem;
  line-height: 1.36;
}

.research-verdict p {
  margin: 0;
  color: var(--research-muted);
  font-family: var(--text);
  font-size: 0.92rem;
  line-height: 1.62;
}

.research-paper-page .blog-article-intro {
  grid-template-columns: minmax(170px, 0.24fr) minmax(0, 0.64fr) minmax(280px, 0.38fr);
}

.research-paper-page .blog-article-intro__copy p {
  font-size: clamp(1.85rem, 2.6vw, 2.7rem);
}

.research-status-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  margin: 0;
  background: var(--research-line);
  border-top: 1px solid var(--research-line);
  border-bottom: 1px solid var(--research-line);
}

.research-status-strip div {
  display: grid;
  align-content: start;
  gap: 8px;
  min-height: 150px;
  padding: 24px 22px;
  background: var(--research-paper);
}

.research-status-strip span {
  color: var(--research-muted);
  font-family: var(--caption);
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.35;
  text-transform: uppercase;
}

.research-status-strip strong {
  color: var(--research-navy);
  font-family: var(--display);
  font-size: clamp(1.8rem, 2.5vw, 2.6rem);
  font-weight: 500;
  line-height: 1;
}

.research-status-strip small {
  color: var(--research-muted);
  font-family: var(--text);
  font-size: 0.84rem;
  line-height: 1.45;
}

.research-paper-page .blog-article-layout {
  grid-template-columns: minmax(190px, 0.22fr) minmax(0, 880px) minmax(80px, 0.12fr);
  gap: clamp(42px, 5vw, 78px);
}

.research-paper-page .blog-article__section h2 {
  max-width: 760px;
}

.research-paper-page .blog-article__section p,
.research-paper-page .blog-article__section li {
  max-width: 780px;
}

.research-abstract {
  display: grid;
  gap: 20px;
  margin: 0 0 62px;
  padding: 32px;
  color: #f7f1e7;
  background: var(--research-navy);
}

.research-abstract__label,
.research-note__label,
.research-figure__eyebrow {
  color: #275e7c;
  font-family: var(--caption);
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-transform: uppercase;
}

.research-abstract__label {
  color: #c5d9e2;
}

.research-abstract p {
  margin: 0;
  color: rgba(247, 241, 231, 0.9);
  font-family: var(--text);
  font-size: 1.06rem;
  line-height: 1.78;
}

.research-abstract__keywords {
  padding-top: 16px;
  border-top: 1px solid rgba(247, 241, 231, 0.2);
  color: rgba(247, 241, 231, 0.68);
  font-family: var(--caption);
  font-size: 0.72rem;
  line-height: 1.6;
}

.research-figure {
  width: min(1040px, calc(100vw - 56px));
  margin: 26px 0 34px;
  padding: 26px;
  background: #eee7da;
  border: 1px solid var(--research-line);
}

.research-figure--wide {
  width: min(1120px, calc(100vw - 56px));
}

.research-figure__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: end;
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--research-line);
}

.research-figure__head h3 {
  max-width: 620px;
  margin: 5px 0 0;
  color: var(--research-ink);
  font-family: var(--sans);
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.32;
}

.research-figure__head > span:last-child {
  color: var(--research-muted);
  font-family: var(--caption);
  font-size: 0.66rem;
  font-weight: 650;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.research-figure svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.research-figure figcaption {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--research-line);
  color: var(--research-muted);
  font-family: var(--text);
  font-size: 0.86rem;
  line-height: 1.58;
}

.research-svg text {
  fill: var(--research-ink);
  font-family: var(--sans);
}

.research-svg .axis,
.research-svg .axis-label,
.research-svg .small {
  fill: var(--research-muted);
  font-family: var(--caption);
  font-size: 12px;
}

.research-svg .value {
  fill: var(--research-navy);
  font-family: var(--caption);
  font-size: 13px;
  font-weight: 700;
}

.research-svg .grid-line {
  stroke: rgba(16, 45, 69, 0.14);
  stroke-width: 1;
}

.research-svg .axis-line {
  stroke: rgba(16, 45, 69, 0.5);
  stroke-width: 1;
}

.research-svg .candidate {
  fill: var(--research-teal);
  stroke: var(--research-teal);
}

.research-svg .reference {
  fill: var(--research-blue);
  stroke: var(--research-blue);
}

.research-svg .warning {
  fill: var(--research-rust);
  stroke: var(--research-rust);
}

.research-svg .neutral {
  fill: var(--research-muted);
  stroke: var(--research-muted);
}

.research-svg .ci {
  stroke-width: 3;
  stroke-linecap: round;
}

.research-svg .ci-cap {
  stroke-width: 1.5;
}

.research-timeline {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0;
  margin-top: 4px;
}

.research-timeline article {
  position: relative;
  display: grid;
  align-content: start;
  gap: 8px;
  min-height: 176px;
  padding: 20px 18px 18px;
  border-top: 2px solid var(--research-navy);
}

.research-timeline article::before {
  position: absolute;
  top: -7px;
  left: 18px;
  width: 12px;
  height: 12px;
  background: var(--research-paper-deep);
  border: 2px solid var(--research-navy);
  border-radius: 50%;
  content: "";
}

.research-timeline article:nth-child(3) {
  color: #f7f1e7;
  background: var(--research-navy);
}

.research-timeline article:nth-child(3)::before {
  background: var(--research-brass);
  border-color: #f7f1e7;
}

.research-timeline span {
  color: var(--research-muted);
  font-family: var(--caption);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.research-timeline article:nth-child(3) span,
.research-timeline article:nth-child(3) p {
  color: rgba(247, 241, 231, 0.74);
}

.research-timeline strong {
  color: inherit;
  font-family: var(--sans);
  font-size: 0.95rem;
  font-weight: 500;
  line-height: 1.34;
}

.research-timeline p {
  margin: 0;
  color: var(--research-muted);
  font-family: var(--text);
  font-size: 0.82rem;
  line-height: 1.48;
}

.research-control-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--research-line);
  border: 1px solid var(--research-line);
}

.research-control-grid article {
  display: grid;
  align-content: start;
  gap: 9px;
  min-height: 190px;
  padding: 22px;
  background: var(--research-paper);
}

.research-control-grid span {
  color: var(--research-brass-ink);
  font-family: var(--caption);
  font-size: 0.64rem;
  font-weight: 750;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.research-control-grid strong {
  color: var(--research-navy);
  font-family: var(--sans);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
}

.research-control-grid p {
  margin: 0;
  color: var(--research-muted);
  font-family: var(--text);
  font-size: 0.84rem;
  line-height: 1.52;
}

.research-note {
  display: grid;
  gap: 12px;
  margin: 20px 0 12px;
  padding: 24px;
  border-left: 4px solid var(--research-brass);
  background: rgba(185, 120, 47, 0.08);
}

.research-note--critical {
  border-left-color: var(--research-rust);
  background: rgba(154, 77, 53, 0.08);
}

.research-note h3 {
  margin: 0;
  color: var(--research-navy);
  font-family: var(--sans);
  font-size: 1.05rem;
  font-weight: 500;
}

.research-note p {
  margin: 0;
  color: var(--research-ink);
  font-family: var(--text);
  font-size: 0.96rem;
  line-height: 1.68;
}

.research-equation {
  margin: 12px 0;
  padding: 20px 22px;
  overflow-x: auto;
  color: #f7f1e7;
  font-family: var(--caption);
  font-size: clamp(0.84rem, 1.6vw, 1rem);
  line-height: 1.62;
  background: var(--research-navy-deep);
}

.research-equation code {
  color: inherit;
}

.research-definition-list {
  display: grid;
  grid-template-columns: minmax(170px, 0.34fr) minmax(0, 1fr);
  margin: 16px 0 8px;
  border-top: 1px solid var(--research-line);
}

.research-definition-list dt,
.research-definition-list dd {
  margin: 0;
  padding: 15px 0;
  border-bottom: 1px solid var(--research-line);
}

.research-definition-list dt {
  padding-right: 22px;
  color: var(--research-navy);
  font-family: var(--caption);
  font-size: 0.72rem;
  font-weight: 750;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.research-definition-list dd {
  color: var(--research-ink);
  font-family: var(--text);
  font-size: 0.94rem;
  line-height: 1.58;
}

.research-references {
  counter-reset: references;
}

.research-references li {
  padding-left: 42px !important;
  counter-increment: references;
}

.research-references li::before {
  top: 0 !important;
  display: inline !important;
  width: auto !important;
  height: auto !important;
  color: var(--research-navy) !important;
  font-family: var(--caption) !important;
  font-size: 0.72rem !important;
  font-weight: 750 !important;
  background: transparent !important;
  content: "[" counter(references) "]" !important;
}

.research-audit-footer {
  display: grid;
  gap: 18px;
  padding: 30px;
  color: rgba(247, 241, 231, 0.82);
  background: var(--research-navy-deep);
}

.research-audit-footer h2 {
  margin: 0;
  color: #f7f1e7;
  font-family: var(--sans);
  font-size: 1.2rem;
  font-weight: 500;
}

.research-audit-footer p {
  margin: 0;
  color: rgba(247, 241, 231, 0.76);
  font-size: 0.9rem;
  line-height: 1.62;
}

.research-audit-footer code {
  overflow-wrap: anywhere;
  color: #d1e4ea;
}

/* byggsikt.css sine artikkelregler vinner spesifisitet over .research-audit-footer p;
   sidenavnet i selektoren sikrer at lys tekst faktisk gjelder på det mørke feltet. */
.research-paper-page .research-audit-footer p {
  color: rgba(247, 241, 231, 0.78);
}

.research-paper-page .research-audit-footer a {
  color: #9fd3c8;
}

@media (max-width: 1080px) {
  .research-hero__content {
    grid-template-columns: 1fr;
  }

  .research-hero__instrument {
    max-width: 680px;
  }

  .research-paper-page .blog-article-layout {
    grid-template-columns: 1fr;
  }

  .research-paper-page .blog-article-toc {
    position: static;
  }

  .research-figure,
  .research-figure--wide {
    width: 100%;
  }
}


@media (max-width: 760px) {

  .research-hero {
    min-height: 660px;
  }

  .research-hero__content {
    gap: 34px;
    padding: 132px 18px 54px;
  }

  .research-hero__actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .research-hero__actions a {
    justify-content: center;
  }

  .research-hero h1 {
    font-size: clamp(2.8rem, 13vw, 4.4rem);
  }

  .research-paper-page .blog-article-intro,
  .research-status-strip,
  .research-control-grid,
  .research-verdict {
    grid-template-columns: 1fr;
  }

  .research-mobile-toc {
    display: block;
    padding-top: 24px;
    padding-bottom: 0;
  }

  .research-mobile-toc details {
    border: 1px solid var(--research-line);
    background: #f8f4ec;
  }

  .research-mobile-toc summary {
    min-height: 48px;
    padding: 14px 16px;
    color: var(--research-navy);
    font-family: var(--caption);
    font-size: 0.78rem;
    font-weight: 750;
    letter-spacing: 0.06em;
    cursor: pointer;
    text-transform: uppercase;
  }

  .research-mobile-toc details > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid var(--research-line);
  }

  .research-mobile-toc a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 14px;
    border-right: 1px solid var(--research-line);
    border-bottom: 1px solid var(--research-line);
    color: var(--research-navy);
    font-family: var(--caption);
    font-size: 0.76rem;
    font-weight: 650;
    text-decoration: none;
  }

  .research-timeline {
    grid-template-columns: 1fr;
  }

  .research-timeline article {
    min-height: 0;
    border-top: 0;
    border-left: 2px solid var(--research-navy);
  }

  .research-timeline article::before {
    top: 20px;
    left: -7px;
  }

  .research-figure {
    width: 100%;
    padding: 18px;
  }

  .research-figure__head {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .research-definition-list {
    grid-template-columns: 1fr;
  }

  .research-definition-list dt {
    padding-bottom: 4px;
    border-bottom: 0;
  }

  .research-definition-list dd {
    padding-top: 4px;
  }
}

@media (max-width: 480px) {
  .research-hero h1 {
    max-width: 10ch;
    font-size: 2.85rem;
    line-height: 0.96;
    overflow-wrap: normal;
  }

  .research-hero__instrument {
    display: none;
  }

  .research-abstract,
  .research-audit-footer {
    padding: 22px;
  }

  .research-figure {
    padding: 14px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .research-paper-page *,
  .research-paper-page *::before,
  .research-paper-page *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

@media print {
  .research-paper-page .site-header,
  .research-paper-page .blog-article-toc {
    display: none !important;
  }

  .research-hero {
    min-height: 0;
    color: #111;
    background: #fff;
  }

  .research-hero::before,
  .research-hero::after,
  .research-hero__instrument {
    display: none;
  }

  .research-hero h1,
  .research-hero__lead,
  .research-hero__meta,
  .research-hero .blog-kicker {
    color: #111;
  }

  .research-hero__content,
  .research-paper-page .blog-article-layout {
    display: block;
    padding: 24px 0;
  }

  .research-figure {
    width: 100%;
    break-inside: avoid;
  }
}

/* Keep the mobile hero rows stable while the preloaded Euclid faces resolve. */
@media (max-width: 480px) {
  .research-hero h1 {
    max-width: 15ch;
  }

  .research-hero__lead {
    min-height: 230px;
  }

  .research-hero__meta {
    min-height: 93px;
  }
}

/* Dyplenkbarhet: ankere lander med luft under ev. faste elementer. */
.blog-article__section[id], .research-abstract[id] { scroll-margin-top: 96px; }

/* Engelsk abstract: samme form som sammendraget, dempet ramme. */
.research-abstract--en { border: 1px dashed rgba(247, 241, 231, 0.3); opacity: .96; }
.research-abstract--en > summary {
  display: grid;
  gap: 8px;
  min-height: 44px;
  cursor: pointer;
  list-style: none;
}
.research-abstract--en > summary::-webkit-details-marker { display: none; }
.research-abstract--en > summary span {
  color: #c5d9e2;
  font-family: var(--caption);
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.research-abstract--en > summary strong { color: #f7f1e7; font-family: var(--sans); font-size: 1.05rem; }
.research-abstract--en > summary strong::after { margin-left: 0.55em; content: "+"; }
.research-abstract--en[open] > summary strong::after { content: "−"; }
.research-abstract--en .research-abstract__content { display: grid; gap: 20px; padding-top: 22px; border-top: 1px solid rgba(247, 241, 231, 0.2); }
.research-abstract--en .research-abstract__content > a { color: #b9e3da; font-family: var(--caption); font-weight: 700; }

/* Sitering, versjon og erklæringer */
.research-cite__block { margin-top: 26px; }
.research-cite__block h3 { margin-bottom: 10px; }
.research-cite__text { border-left: 3px solid var(--research-teal, #75b8ae); padding: 10px 16px; background: rgba(117, 184, 174, 0.07); }
.research-cite__bibtex { margin-top: 12px; padding: 16px 18px; overflow-x: auto; border-radius: 10px; background: rgba(11, 16, 48, 0.85); color: #f7f1e7; font-size: 0.82rem; line-height: 1.5; }
.research-cite__bibtex code { font-family: ui-monospace, 'Cascadia Code', Consolas, monospace; }
@media print { .research-cite__bibtex { background: #fff; color: #111; border: 1px solid #999; } }

/* Related reading (2026-09-07): the shared five-card row from rad-article.css is kept as designed. Only the card title is
   allowed to shrink between 761 and 1777 px so long Norwegian words (tvangsoppløsning, Håndverkertilbud) never get
   clipped by the neighbouring card in the three- or five-column rows; at 1778 px and wider it is the shared 2rem. Scoped to this publication. */
@media(min-width:761px){.rad-article-page .blog-related-card strong{font-size:clamp(1.5rem,1.8vw,2rem);overflow-wrap:break-word}}

/* Between 761 and 1320 px the shared grid drops to three columns and five cards would leave one empty cell; the row is
   tiled 3 + 2 instead (row 1: three cards over 2/6 each, row 2: two cards over 3/6 each). Assumes exactly five cards. */
@media(min-width:761px) and (max-width:1320px){.rad-article-page .blog-related .blog-related__grid{grid-template-columns:repeat(6,minmax(0,1fr))}.rad-article-page .blog-related .blog-related-card{grid-column:span 2}.rad-article-page .blog-related .blog-related-card:nth-child(4),.rad-article-page .blog-related .blog-related-card:nth-child(5){grid-column:span 3}}
