/*
 * Startside reference visual contract. This large stylesheet is retained verbatim because its selector order
 * controls the approved reader-facing composition; split it only with visual regression coverage.
 */
/*
 * Image 1 reference composition for Startside. Overblik reuses its editorial
 * language through separately scoped rules below.
 */
:root {
  --bp-reader-frame-gutter: clamp(24px, 1.5vw, 38px);
  --bp-desktop-frame-max: 1280px;
}

/* Local Big Picture publication search. */
.site-search-popover { position:fixed; z-index:1000; width:min(260px,calc(100vw - 24px)); background:transparent; }
.site-search-popover-form { width:100%; }
.site-search-popover-form label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
.site-search-popover-control,.site-search-form > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.site-search-popover-control input,.site-search-form input { min-width:0; height:42px; padding:0 10px; border:1px solid var(--bp-green-border); border-radius:3px; background:var(--bp-surface); color:var(--bp-ink); }
.site-search-popover-control button,.site-search-form button { min-width:42px; border:1px solid var(--bp-news-green); border-radius:3px; background:var(--bp-news-green); color:#fff; font-weight:800; cursor:pointer; }
.site-search-popover-control button svg,.mob-search-btn svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-width:1.8; }
.site-search-popover-results { max-height:min(510px,70vh); margin-top:8px; overflow-y:auto; border:1px solid var(--bp-grey); border-radius:4px; background:var(--bp-surface); box-shadow:0 12px 28px rgb(7 31 50 / 14%); }
.site-search-popover-list { padding:0 14px; }
.site-search-popover-status,.site-search-popover-more { display:block; width:100%; box-sizing:border-box; padding:14px; border:0; color:var(--muted); background:var(--bp-surface); font-size:12px; text-align:left; }
.site-search-popover-more { border-top:1px solid var(--bp-grey); color:var(--bp-news-green); font-weight:800; cursor:pointer; }
.site-search-page { width:min(920px,100%); margin:0 auto 72px; padding-top:34px; }
.site-search-heading { padding-bottom:26px; border-bottom:1px solid var(--bp-grey); }
.site-search-kicker,.site-search-meta,.site-search-open { color:var(--bp-news-green); font-size:10px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.site-search-heading .page-title { margin:0 0 10px; color:var(--bp-ink); font-family:"Emona",Georgia,serif; font-size:clamp(34px,5vw,52px); }
.site-search-heading > p:last-child,.site-search-snippet,.site-search-empty,.site-search-loading { color:var(--muted); }
.site-search-form { margin:28px 0 32px; }.site-search-form label { display:block; margin-bottom:7px; font-size:10px; font-weight:800; text-transform:uppercase; }.site-search-form button { min-width:92px; }
.site-search-list { border-top:1px solid var(--bp-grey); }.site-search-result { display:grid; gap:8px; padding:21px 4px; border-bottom:1px solid var(--bp-grey); color:inherit; text-decoration:none; }.site-search-result:hover strong,.site-search-result:focus-visible strong { color:var(--bp-news-green); }.site-search-meta { display:flex; justify-content:space-between; gap:14px; }.site-search-result strong { color:var(--bp-ink); font:700 19px/1.2 "Emona",Georgia,serif; }.site-search-match { background:transparent; color:var(--bp-ink); font-weight:850; }.site-search-snippet { font-size:13px; line-height:1.55; }.site-search-result--compact { gap:5px; padding:14px 0; }.site-search-result--compact strong,.site-search-result--compact .site-search-snippet { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }.site-search-empty,.site-search-loading { padding:34px 0; border-top:1px solid var(--bp-grey); }
@media (max-width:900px) { .site-search-popover { width:min(200px,calc(100vw - 24px)); }.site-search-page { padding-top:24px; } }

body.startside-editorial {
  --bp-heading-font: "Emona", Georgia, "Times New Roman", serif;
  --bp-body-font: "Aptos", Arial, sans-serif;
  background: var(--bp-surface);
  color: var(--bp-black);
  font-family: var(--bp-body-font);
}

body.startside-editorial #app,
body.startside-editorial header,
body.startside-editorial .mob-header,
body.startside-editorial main {
  background: var(--bp-surface) !important;
}

body.startside-editorial header {
  border-bottom: 0;
  box-shadow: none;
}

body.startside-editorial .subnav-bar {
  background: var(--bp-surface);
}

body.startside-editorial .subnav-bar:not(:empty) {
  border-top: 1px solid var(--bp-grey);
}

body.startside-editorial .nav-wrap {
  box-sizing: border-box;
  width: calc(100% - 78px);
  margin: 0 auto;
  padding: 0;
}

body.startside-editorial .nav-row,
body.startside-editorial .nav-scroll {
  min-height: 88px;
}

body.startside-editorial .nav-row {
  position: relative;
}

body.startside-editorial .logo {
  position: absolute;
  z-index: 2;
  top: 43px;
  left: 0;
  display: block;
  width: 145px;
  height: 82px;
  margin: 0;
  overflow: visible;
}

body.startside-editorial .logo .brand-wordmark {
  display: flex;
  min-height: 0;
  color: var(--bp-ink);
  font-family: var(--bp-heading-font);
  font-weight: 700;
  letter-spacing: -0.055em;
  line-height: 0.71;
  text-transform: none;
}

body.startside-editorial .logo .brand-wordmark span:first-child,
body.startside-editorial .logo .brand-wordmark span:last-child {
  font-size: 40px;
  font-weight: 700;
  letter-spacing: -0.055em;
  line-height: 0.71;
}

body.startside-editorial .logo::after {
  position: absolute;
  top: 64px;
  left: 2px;
  display: block;
  margin: 0;
  color: var(--bp-ink);
  content: "Maj Invest";
  font-family: var(--bp-heading-font);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1;
}

body.startside-editorial .nav-scroll {
  width: 100%;
  flex: 1 1 auto;
}

body.startside-editorial .nav-scroll > nav {
  gap: 49px;
  margin-left: 426px;
  padding: 0;
}

body.startside-editorial .nav-scroll > nav button,
body.startside-editorial .nav-group-btn {
  padding: 8px 0 6px;
  border-bottom: 2px solid transparent;
  color: var(--bp-ink);
  font-family: var(--bp-body-font);
  font-size: 12px;
  font-weight: 700;
}

body.startside-editorial .nav-scroll > nav button:hover,
body.startside-editorial .nav-scroll > nav button.active,
body.startside-editorial .nav-group-btn:hover,
body.startside-editorial .nav-group-btn.active {
  border-bottom-color: var(--bp-red);
  color: var(--bp-ink);
}

body.startside-editorial .bp-header-search {
  position: relative;
  z-index: 3;
  width: 28px;
  height: 28px;
  margin-left: auto;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--bp-ink);
}

body.startside-editorial .bp-header-search:hover {
  color: var(--teal);
}

body.startside-editorial .bp-header-search svg {
  width: 21px;
  height: 21px;
  stroke-width: 1.7;
}

body.startside-editorial main {
  box-sizing: border-box;
  width: calc(100% - 78px);
  max-width: none;
  margin: 0 auto;
  padding: 0 0 38px;
}

body.startside-editorial .bp-home {
  padding-top: 0;
}

body.startside-editorial .bp-home button,
body.startside-editorial .bp-home a {
  font-family: var(--bp-body-font);
}

body.startside-editorial .bp-hero {
  grid-template-columns: minmax(0, 34.2%) minmax(0, 65.8%);
  height: auto;
  min-height: 335px;
  align-items: stretch;
  background: var(--bp-surface);
  overflow: visible;
}

body.startside-editorial .bp-hero-copy {
  justify-content: center;
  padding: 46px 28px 38px 0;
  position: relative;
  z-index: 3;
  background: var(--bp-surface);
}

body.startside-editorial .bp-hero-kicker {
  margin: 0 0 16px;
  color: var(--bp-red);
  font-family: var(--bp-body-font);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0;
}

body.startside-editorial .bp-hero h1 {
  max-width: 430px;
  margin: 0;
  overflow: visible;
  color: var(--bp-ink);
  font-family: var(--bp-heading-font);
  font-size: clamp(42px, 3.55vw, 54px);
  font-weight: 700;
  letter-spacing: -0.05em;
  line-height: 1.02;
  text-wrap: balance;
}

body.startside-editorial .bp-hero-meta {
  margin-top: 12px;
  color: var(--bp-green);
  font-family: var(--bp-body-font);
  font-size: 10px;
  font-weight: 800;
}

body.startside-editorial .bp-hero-summary {
  display: block;
  max-width: 414px;
  margin: 10px 0 0;
  overflow: visible;
  color: var(--bp-black);
  font-family: var(--bp-body-font);
  font-size: 14px;
  line-height: 1.28;
}

body.startside-editorial .bp-hero-source {
  margin-top: 10px;
  color: var(--teal);
  font-family: var(--bp-body-font);
  font-size: 11px;
  font-weight: 800;
}

body.startside-editorial .bp-hero-actions {
  gap: 18px;
  margin-top: 14px;
}

body.startside-editorial .bp-hero-action {
  min-height: 35px;
  padding: 0 16px;
  border: 1px solid var(--bp-ink);
  border-radius: 4px;
  background: var(--bp-surface);
  color: var(--bp-ink);
  font-size: 12px;
  font-weight: 700;
}

body.startside-editorial .bp-hero-action--primary {
  border-color: var(--bp-red);
  background: var(--bp-red);
  color: var(--bp-surface);
}

body.startside-editorial .bp-hero-action:hover,
body.startside-editorial .bp-hero-action--primary:hover {
  border-color: var(--teal-mid);
  background: var(--teal-mid);
  color: var(--bp-surface);
}

body.startside-editorial .bp-hero-visual {
  position: relative;
  align-self: start;
  justify-self: stretch;
  width: 100%;
  height: auto;
  min-height: 0;
  margin-left: 0;
  overflow: visible;
  background: var(--bp-surface);
  z-index: 1;
}

/* The image owns the right column. This is the compact reference fade: it
 * starts at the image edge while preserving the complete source artwork. */
body.startside-editorial .bp-hero-visual::after {
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 0;
  width: clamp(84px, 12vw, 170px);
  pointer-events: none;
  background: linear-gradient(90deg, #fff 0%, rgba(255, 255, 255, .96) 24%, rgba(255, 255, 255, .68) 54%, rgba(255, 255, 255, 0) 100%);
  content: "";
}

body.startside-editorial .bp-hero-visual img {
  display: block;
  width: 100%;
  height: auto;
  min-height: 0;
  /* Preserve the marketing illustration's natural 3:1 geometry. */
  object-fit: contain;
  object-position: center bottom;
  filter: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
  transform: none !important;
}

/* The complete source image stays in its own right-hand column without
 * bleeding beneath the text or distorting the marketing illustration. */
@media (min-width: 901px) {
  body.startside-editorial .bp-hero-copy {
    justify-content: flex-end;
    padding-bottom: 0;
  }

  /* Keep the marketing image in the established right-hand column. The compact
   * Wake-Up Call above lets its natural 3:1 height share the CTA baseline. */
  body.startside-editorial .bp-hero-visual {
    align-self: end;
    justify-self: stretch;
    width: 100%;
    height: auto;
    min-height: 0;
    aspect-ratio: auto;
  }

  body.startside-editorial #app .nav-scroll > nav button,
  body.startside-editorial #app .nav-group-btn { font-size: 13px; }
}

body.startside-editorial .bp-topic-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 36px;
  margin-top: 20px;
}

body.startside-editorial .bp-topic-card {
  /* Matches the reference cards: the illustration occupies just under half
   * of a compact, landscape card instead of sitting in a tall container. */
  aspect-ratio: 225 / 174;
  height: auto;
  min-height: 0;
  padding: 0;
  border-color: var(--bp-grey);
  border-radius: 4px;
  background: var(--bp-surface);
  box-shadow: none;
}

body.startside-editorial .bp-topic-card:hover {
  border-color: var(--teal);
  box-shadow: 0 5px 16px rgb(3 74 126 / 12%);
}

body.startside-editorial .bp-topic-visual {
  width: 100%;
  height: 49.4%;
  flex: 0 0 49.4%;
  filter: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
  transform: none !important;
  object-fit: cover;
  object-position: center;
}

body.startside-editorial .bp-topic-visual--stocks,
body.startside-editorial .bp-topic-visual--macro,
body.startside-editorial .bp-topic-visual--housing,
body.startside-editorial .bp-topic-visual--thinktank {
  /* All four illustration canvases meet the lower edge of their shared field. */
  object-position: center bottom;
}

/* The macro and housing artwork share clipped fields with a common boundary
 * above their topic labels. The macro artwork keeps its natural crop; only
 * the house needs an internal offset because its motif sits higher in source. */
body.startside-editorial .bp-topic-visual-frame--macro,
body.startside-editorial .bp-topic-visual-frame--housing {
  display: block;
  width: 100%;
  height: 49.4%;
  flex: 0 0 49.4%;
  overflow: hidden;
}

body.startside-editorial .bp-topic-visual-frame--macro .bp-topic-visual--macro,
body.startside-editorial .bp-topic-visual-frame--housing .bp-topic-visual--housing {
  display: block;
  width: 100%;
  height: 100%;
  flex: none;
  transform-origin: center bottom;
}

/* Keep the house on the original desktop baseline used by the topic cards.
 * A percentage offset pushes the illustration visibly too far down. */
body.startside-editorial .bp-topic-visual-frame--housing .bp-topic-visual--housing {
  transform: translateY(28px) scale(1.55) !important;
}

body.startside-editorial .bp-topic-kicker {
  margin: 12px 14px 7px;
  color: var(--bp-ink);
  font-family: var(--bp-body-font);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0;
}

body.startside-editorial .bp-topic-card h2 {
  margin: 0 14px;
  color: var(--bp-ink);
  font-family: var(--bp-heading-font);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -0.025em;
  line-height: 1.04;
}

body.startside-editorial .bp-topic-card p {
  display: block;
  margin: 8px 14px 0;
  overflow: visible;
  color: var(--bp-black);
  font-family: var(--bp-body-font);
  font-size: 11px;
  line-height: 1.28;
  -webkit-line-clamp: unset;
}

body.startside-editorial .bp-topic-arrow {
  position: absolute;
  right: 14px;
  bottom: 14px;
  width: 26px;
  height: 26px;
  margin: 0;
  border-radius: 3px;
  background: var(--bp-ink);
  color: var(--bp-surface);
  font-size: 17px;
}

body.startside-editorial .bp-bottom-grid {
  grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr) minmax(0, 1.61fr);
  grid-auto-rows: 286px;
  gap: 20px;
  margin-top: 16px;
}

body.startside-editorial .bp-panel,
body.startside-editorial .bp-market-panel {
  height: 286px;
  min-height: 0;
  padding: 14px;
  border-color: var(--bp-grey);
  border-radius: 4px;
  background: var(--bp-surface);
}

body.startside-editorial .bp-panel-heading {
  margin-bottom: 11px;
}

body.startside-editorial .bp-panel-heading h2,
body.startside-editorial .bp-analysis-panel .bp-panel-heading h2,
body.startside-editorial .bp-market-panel .bp-panel-heading h2 {
  color: var(--bp-red);
  font-family: var(--bp-body-font);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0;
}

body.startside-editorial .bp-analysis-lead {
  height: 188px;
  grid-template-columns: 42% minmax(0, 1fr);
  gap: 13px;
}

body.startside-editorial .bp-analysis-image-link {
  height: 188px;
  background: var(--bp-sky);
}

body.startside-editorial .bp-analysis-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  filter: none !important;
  mask-image: none !important;
  -webkit-mask-image: none !important;
  transform: none !important;
}

body.startside-editorial .bp-analysis-title {
  display: block;
  overflow: visible;
  color: var(--bp-ink);
  font-family: var(--bp-heading-font);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.03;
  -webkit-line-clamp: unset;
}

body.startside-editorial .bp-analysis-panel .bp-panel-heading h2 {
  text-transform: uppercase;
}

body.startside-editorial .bp-analysis-excerpt {
  margin-top: 9px;
  color: var(--bp-black);
  font-family: var(--bp-body-font);
  font-size: 11px;
  line-height: 1.33;
}

body.startside-editorial .bp-newsletter-list {
  height: 181px;
}

body.startside-editorial .bp-news-coverage {
  margin: 0 0 8px;
  color: var(--bp-black);
  font-family: var(--bp-body-font);
  font-size: 9px;
  font-weight: 700;
  line-height: 1.3;
}

/* The trade illustration is a decorative backdrop; current, attributable
 * news cards remain the primary content in this panel. */
body.startside-editorial .bp-newsletter-panel--trade {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}

body.startside-editorial .bp-newsletter-panel--trade > :not(.bp-newsletter-trade-visual) {
  position: relative;
  z-index: 1;
}

body.startside-editorial .bp-newsletter-trade-visual {
  position: absolute;
  z-index: 0;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  opacity: .13;
  object-fit: cover;
  object-position: center;
}

body.startside-editorial .bp-newsletter-story {
  grid-template-columns: 51px minmax(0, 1fr);
  gap: 9px;
  min-height: 56px;
  padding: 5px 0;
  border-color: var(--bp-grey);
}

body.startside-editorial .bp-newsletter-thumb-wrap {
  width: 51px;
  height: 48px;
  background: var(--bp-sky);
}

body.startside-editorial .bp-newsletter-thumb-wrap--brand {
  display: grid;
  place-items: center;
  background: var(--surface);
  color: var(--dark-moss);
}

body.startside-editorial .bp-newsletter-thumb-wrap--brand .news-brand-wordmark {
  display: flex;
  flex-direction: column;
  color: inherit;
  font-family: var(--bp-heading-font);
  font-size: 10px;
  font-weight: 700;
  line-height: .78;
  letter-spacing: -.08em;
}

body.startside-editorial .bp-newsletter-meta {
  color: var(--bp-black);
  font-family: var(--bp-body-font);
  font-size: 8px;
  font-weight: 800;
}

body.startside-editorial .bp-newsletter-story strong {
  color: var(--bp-ink);
  font-family: var(--bp-body-font);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.16;
}

body.startside-editorial .bp-newsletter-story {
  width: 100%;
  border-right: 0;
  border-left: 0;
  background: transparent;
  font-family: inherit;
  text-align: left;
  cursor: pointer;
}

body.startside-editorial .bp-newsletter-story:focus-visible,
body.startside-editorial .bp-hero-source:focus-visible {
  outline: 2px solid var(--teal);
  outline-offset: 3px;
}

body.startside-editorial .bp-hero-source {
  padding: 0;
  border: 0;
  background: transparent;
  font-family: inherit;
  cursor: pointer;
}

body.startside-editorial .bp-news-open,
body.startside-editorial .bp-market-link--header {
  color: var(--bp-ink);
  font-family: var(--bp-body-font);
  font-size: 10px;
  font-weight: 800;
}

body.startside-editorial .bp-market-panel {
  overflow: hidden;
}

body.startside-editorial .bp-market-panel .bp-panel-heading {
  margin-bottom: 7px;
}

body.startside-editorial .bp-market-table .sh-idx-item {
  grid-template-columns: 18px minmax(0, 1fr) 96px 52px 80px;
  column-gap: 7px;
  height: 20px !important;
  border-top-color: transparent !important;
}

body.startside-editorial .bp-market-table .bp-market-icon {
  color: var(--teal);
}

body.startside-editorial .bp-market-table .sh-idx-lbl,
body.startside-editorial .bp-market-table .bp-market-spot,
body.startside-editorial .bp-market-table .sh-idx-chg {
  color: var(--bp-ink);
  font-family: var(--bp-body-font);
  font-size: 10px !important;
  font-weight: 600;
}

body.startside-editorial .bp-market-label-mobile,
body.startside-editorial .bp-market-spot-mobile {
  display: none;
}

/* The daily move is a first-class table column, not a chart-only signal. */
body.startside-editorial .bp-market-table .sh-idx-chg {
  display: block !important;
  grid-column: 4 !important;
  min-width: 0;
  visibility: visible !important;
  opacity: 1 !important;
  font-variant-numeric: tabular-nums;
}

body.startside-editorial .bp-market-table .bp-market-change-value {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  /* Legacy .sh-all-metrics rules hide metric text to make room for arrows. */
  font-size: inherit !important;
  line-height: inherit !important;
}

body.startside-editorial .bp-market-footnote-marker {
  margin-left: 1px;
  font-size: .65em;
  line-height: 0;
  vertical-align: super;
}

body.startside-editorial .bp-market-table .bp-market-change {
  display: block !important;
  grid-column: 4 !important;
  min-width: 0 !important;
  overflow: visible !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: var(--bp-ink);
  font-family: var(--bp-body-font);
  font-size: 10px !important;
  font-weight: 700;
  line-height: 1.1;
  text-align: right;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}

body.startside-editorial .bp-market-table .bp-market-change .metric-up { color: var(--bp-green) !important; }
body.startside-editorial .bp-market-table .bp-market-change .metric-down { color: var(--bp-red) !important; }
body.startside-editorial .bp-market-table .bp-market-change .metric-neutral { color: #666666 !important; }

body.startside-editorial .bp-market-spark-slot,
body.startside-editorial .bp-market-spark {
  width: 80px;
}

body.startside-editorial .bp-market-table .sh-idx-chg .metric-up { color: var(--bp-green) !important; }
body.startside-editorial .bp-market-table .sh-idx-chg .metric-down { color: var(--bp-red) !important; }
body.startside-editorial .bp-market-table .metric-up::before,
body.startside-editorial .bp-market-table .metric-down::before { content: none !important; margin: 0; }
body.startside-editorial .bp-market-spark--up { stroke: var(--bp-green); }
body.startside-editorial .bp-market-spark--down { stroke: var(--bp-red); }
body.startside-editorial .bp-market-note { color: #666666; font-family: var(--bp-body-font); font-size: 8px; }
body.startside-editorial .bp-market-note #bp-market-updated { display: block; }
body.startside-editorial .bp-market-note #bp-market-period-note { display: block; margin-top: 3px; }
body.startside-editorial .bp-market-note-line { display: block; }

body.startside-editorial :focus-visible {
  outline: 2px solid var(--teal);
  outline-offset: 3px;
}

@media (max-width: 1100px) {
  body.startside-editorial .nav-wrap,
  body.startside-editorial main { width: min(100% - 48px, 1000px); }
  body.startside-editorial .nav-scroll > nav { gap: 25px; margin-left: 210px; }
  body.startside-editorial .logo { top: 21px; }
  body.startside-editorial .bp-hero { grid-template-columns: minmax(0, 42%) minmax(0, 58%); }
  body.startside-editorial .bp-topic-grid { gap: 16px; }
  body.startside-editorial .bp-bottom-grid { gap: 14px; }
  /* Keep the full market reading sequence visible in the app frame: name,
   * latest observation, daily movement, then its colour-matched course line. */
  body.startside-editorial .bp-market-table .sh-idx-item {
    grid-template-columns: 14px minmax(0, 1fr) 54px 46px 58px;
    column-gap: 4px;
  }
  body.startside-editorial .bp-market-table .sh-idx-lbl,
  body.startside-editorial .bp-market-table .bp-market-spot,
  body.startside-editorial .bp-market-table .sh-idx-chg { font-size: 10px !important; }
  body.startside-editorial .bp-market-spark-slot,
  body.startside-editorial .bp-market-spark { display: block; width: 58px; }
}

@media (max-width: 900px) {
  body.startside-editorial .nav-wrap,
  body.startside-editorial main { width: calc(100% - 32px); }
  body.startside-editorial .bp-hero { height: auto; min-height: 0; grid-template-columns: 1fr; overflow: visible; }
  body.startside-editorial .bp-hero-copy { min-height: 400px; padding: 42px 24px 36px; }
  body.startside-editorial .bp-hero-visual,
  body.startside-editorial .bp-hero-visual img { min-height: 260px; height: 260px; }
  body.startside-editorial .bp-topic-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 14px; }
  body.startside-editorial .bp-topic-card { height: 230px; min-height: 230px; }
  body.startside-editorial .bp-bottom-grid { grid-template-columns: 1fr; grid-auto-rows: auto; gap: 14px; margin-top: 14px; }
  body.startside-editorial .bp-panel,
  body.startside-editorial .bp-market-panel { height: auto; min-height: 250px; }
}

@media (max-width: 650px) {
  body.startside-editorial .mob-header { border-bottom: 0; }
  body.startside-editorial .mob-logo .brand-wordmark { color: var(--bp-ink); font-family: var(--bp-heading-font); text-transform: none; }
  body.startside-editorial .bp-topic-grid { grid-template-columns: 1fr; }
  body.startside-editorial .bp-topic-card { height: 252px; min-height: 252px; }
  body.startside-editorial .bp-topic-visual { height: 124px; flex-basis: 124px; }
  body.startside-editorial .bp-analysis-lead { height: auto; min-height: 190px; grid-template-columns: 42% minmax(0, 1fr); }
  body.startside-editorial .bp-analysis-image-link { height: auto; min-height: 190px; }
  body.startside-editorial .bp-market-panel { overflow: hidden; }
  body.startside-editorial .bp-market-table { min-width: 0; }
}

/* Phone view keeps every market on one line, with concise labels and values. */
@media (max-width: 600px) {
  body.startside-editorial .bp-market-table .sh-idx-item {
    grid-template-columns: 14px minmax(0, 1fr) 56px 44px 54px;
    column-gap: 3px;
    height: 23px !important;
  }
  body.startside-editorial .bp-market-table .sh-idx-lbl,
  body.startside-editorial .bp-market-table .bp-market-spot,
  body.startside-editorial .bp-market-table .bp-market-change {
    font-size: 10px !important;
  }
  body.startside-editorial .bp-market-label-full,
  body.startside-editorial .bp-market-spot-full {
    display: none;
  }
  body.startside-editorial .bp-market-label-mobile,
  body.startside-editorial .bp-market-spot-mobile {
    display: inline;
  }
  body.startside-editorial .bp-market-table .sh-idx-lbl,
  body.startside-editorial .bp-market-table .bp-market-spot {
    overflow: visible !important;
    text-overflow: clip;
  }
  body.startside-editorial .bp-market-spark-slot,
  body.startside-editorial .bp-market-spark { width: 54px; }
}

@media (prefers-reduced-motion: reduce) {
  body.startside-editorial .bp-topic-card,
  body.startside-editorial .bp-hero-action { transition: none; }
}

/* Overblik uses the same editorial system as Startside while retaining its
 * data-dense dashboards and source catalogue. */
body.overblik-editorial {
  --bp-red: #e41000;
  --bp-sky: #e6e6e6;
  --bp-blue: #000000;
  --bp-ink: #09152c;
  --bp-green: var(--bp-news-green);
  --bp-grey: #e6e6e6;
  --bp-surface: #ffffff;
  --bg: var(--bp-surface);
  --bg-2: var(--bp-surface);
  --surface: var(--bp-surface);
  --surface-2: #f7f7f5;
  --border: var(--bp-grey);
  --border-input: var(--bp-green-border);
  --dark-moss: var(--bp-ink);
  --teal: var(--bp-news-green);
  --teal-mid: var(--bp-green-dark);
  --teal-dim: var(--bp-green-soft);
  --teal-border: var(--bp-green-border);
  --teal-hover: #e2f5ea;
  --text: var(--bp-ink);
  --text-2: #26394a;
  --muted: #52616b;
  --muted-2: #71808a;
  --focus-ring: var(--bp-green-dark);
  background: var(--bp-surface);
  color: var(--bp-ink);
  font-family: "Aptos", Arial, sans-serif;
}

body.overblik-editorial #app,
body.overblik-editorial header,
body.overblik-editorial .mob-header,
body.overblik-editorial #main {
  background: var(--bp-surface) !important;
}

body.overblik-editorial header { border-bottom: 0; box-shadow: none; }
body.overblik-editorial .subnav-bar { background: var(--bp-surface); }
body.overblik-editorial .subnav-bar:not(:empty) { border-top: 1px solid var(--bp-grey); }
body.overblik-editorial .nav-wrap { box-sizing: border-box; width: calc(100% - 78px); margin: 0 auto; padding: 0; }
body.overblik-editorial .nav-row,
body.overblik-editorial .nav-scroll { min-height: 64px; }
body.overblik-editorial .nav-row { position: relative; }
body.overblik-editorial .logo { position: absolute; z-index: 2; top: 12px; left: 0; display: block; width: 104px; height: 42px; margin: 0; overflow: visible; }
body.overblik-editorial .logo .brand-wordmark { display: flex; min-height: 0; color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; font-weight: 700; letter-spacing: -.055em; line-height: .71; text-transform: none; }
body.overblik-editorial .logo .brand-wordmark span:first-child,
body.overblik-editorial .logo .brand-wordmark span:last-child { font-size: 27px; font-weight: 700; letter-spacing: -.055em; line-height: .71; }
body.overblik-editorial .logo .brand-wordmark span:first-child { font-size: 26px; }
body.overblik-editorial .logo::after { position: absolute; top: 34px; left: 2px; display: block; margin: 0; color: var(--bp-ink); content: "Maj Invest"; font-family: "Emona", Georgia, "Times New Roman", serif; font-size: 8px; font-weight: 700; line-height: 1; }
body.overblik-editorial .nav-scroll { width: 100%; flex: 1 1 auto; }
body.overblik-editorial .nav-scroll > nav { gap: 30px; margin-left: 180px; padding: 0; }
body.overblik-editorial .nav-scroll > nav button,
body.overblik-editorial .nav-group-btn { padding: 8px 0 6px; border-bottom: 2px solid transparent; color: var(--bp-ink); font-family: inherit; font-size: 11px; font-weight: 700; }
body.overblik-editorial .nav-scroll > nav button:hover,
body.overblik-editorial .nav-scroll > nav button.active,
body.overblik-editorial .nav-group-btn:hover,
body.overblik-editorial .nav-group-btn.active { border-bottom-color: var(--bp-red); color: var(--bp-ink); }
body.overblik-editorial .bp-header-search { position: relative; z-index: 3; width: 28px; height: 28px; margin-left: auto; padding: 0; border: 0; background: transparent; color: var(--bp-ink); }
body.overblik-editorial .bp-header-search:hover { color: var(--teal); }
body.overblik-editorial .bp-header-search svg { width: 21px; height: 21px; stroke-width: 1.7; }
body.overblik-editorial #main { box-sizing: border-box; width: min(1120px, calc(100% - 78px)); max-width: none; margin: 0 auto; padding: 0 0 42px; }

body.overblik-editorial .bp-catalogue { max-width: none; margin: 0 auto 42px; }
body.overblik-editorial .bp-intro { grid-template-columns: 64px minmax(0,1fr) auto; gap: 16px; margin-top: 16px; padding: 16px 0 18px; border-color: var(--bp-grey); }
body.overblik-editorial .bp-monogram { width: 64px; height: 78px; }
body.overblik-editorial .bp-intro h1,
body.overblik-editorial .bp-section-heading h2,
body.overblik-editorial .bp-source-title,
body.overblik-editorial .bp-player-context h2 { color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; }
body.overblik-editorial .bp-source-kicker,
body.overblik-editorial .bp-source-link,
body.overblik-editorial .bp-chat-cta,
body.overblik-editorial .bp-more,
body.overblik-editorial .bp-less { color: var(--teal); }
body.overblik-editorial .bp-catalogue-section {
  position: relative;
  margin-top: 40px !important;
  padding: 30px 0 38px !important;
  border-top: 1px solid #d8e8de !important;
  background: var(--bp-surface);
  box-shadow: 0 0 0 100vmax var(--bp-surface);
  clip-path: inset(0 -100vmax);
}
body.overblik-editorial .bp-catalogue-section#bp-ugeskrifter { margin-top: 0 !important; }
body.overblik-editorial .bp-section-introduction .bp-ugeskrift-editorial-title {
  margin: 0 0 5px;
  color: var(--bp-ink);
  font: 700 28px/1.08 "Emona", Georgia, "Times New Roman", serif;
}
@media (min-width: 901px) {
  body.overblik-editorial .bp-intro {
    grid-template-columns: 108px minmax(0, 1fr) auto;
    align-items: stretch;
    min-height: 170px;
    padding: 12px 0;
  }
  body.overblik-editorial .bp-monogram { width: 96px; height: 136px; align-self: center; }
  body.overblik-editorial .bp-monogram img { height: 100%; object-fit: cover; object-position: center top; }
  body.overblik-editorial .bp-intro > div:nth-child(2) { align-self: start; padding-top: 8px; }
  body.overblik-editorial .bp-intro-navigation { align-self: stretch; justify-content: center; margin-right: min(38vw, 600px); }
}
@media (max-width: 900px) {
  body.overblik-editorial .bp-intro .bp-updated { display: block; }
}
body.overblik-editorial .bp-editorial-copy,
body.overblik-editorial .bp-player-layout,
body.overblik-editorial .bp-visual-stage { border-color: var(--bp-grey); border-radius: 4px; box-shadow: none; }
body.overblik-editorial .bp-editorial-copy .bp-source-list,
body.overblik-editorial .bp-editorial-copy .bp-source-list > div:not(:last-child) .bp-source-row { border-color: var(--bp-grey); }
body.overblik-editorial .bp-source-open--external { position: relative; display: block; color: inherit; text-decoration: none; }
body.overblik-editorial .bp-source-open--external:hover,
body.overblik-editorial .bp-source-open--external:focus-visible { background: var(--bp-green-soft); }
body.overblik-editorial .bp-source-open--external:hover .bp-source-title,
body.overblik-editorial .bp-source-open--external:focus-visible .bp-source-title { color: var(--teal); }
body.overblik-editorial .bp-source-open--unavailable { cursor: not-allowed; opacity: .62; }
body.overblik-editorial .bp-source-external { position: absolute; right: 0; top: 50%; color: var(--teal); font-size: 14px; transform: translateY(-50%); }
@media (min-width: 901px) {
  /* The app view keeps its existing relaxed reading layout. Web readers get a
   * denser catalogue without reintroducing the removed marketing hero. */
  body.overblik-editorial .bp-catalogue-section { margin-top: 40px !important; padding-top: 30px !important; }
  body.overblik-editorial .bp-catalogue-section#bp-ugeskrifter { margin-top: 0 !important; padding-top: 30px !important; }
  body.overblik-editorial .bp-section-introduction { margin: 8px 0 22px; }
  body.overblik-editorial .bp-editorial-copy .bp-source-row,
  body.overblik-editorial .bp-editorial-copy .bp-source-open { min-height: 82px; }
}
body.overblik-editorial .subnav-bar { padding: 0; border-bottom: 1px solid var(--bp-grey); }
body.overblik-editorial .subnav-inner { box-sizing: border-box; width: min(1120px, calc(100% - 78px)); min-height: 42px; margin: 0 auto; padding: 0; }
body.overblik-editorial .sub-btn { padding: 12px 16px 10px; border-bottom: 3px solid transparent; color: var(--bp-ink); font-size: 11px; font-weight: 700; letter-spacing: .015em; opacity: .72; }
body.overblik-editorial .sub-btn:hover { color: var(--teal); border-bottom-color: var(--bp-green-border); opacity: 1; }
body.overblik-editorial .sub-btn.active { color: var(--teal); border-bottom-color: var(--teal); opacity: 1; }

body.overblik-editorial .bp-dashboard-head,
body.overblik-editorial .overblik-page-intro { margin: 22px 0 16px; padding: 0 0 14px; border-bottom: 1px solid var(--bp-grey); }
body.overblik-editorial .bp-dashboard-eyebrow { color: var(--bp-red); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
body.overblik-editorial .bp-dashboard-head .page-title,
body.overblik-editorial .overblik-page-intro .page-title { margin: 0 0 8px; color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; font-size: clamp(34px, 4.2vw, 52px); font-weight: 700; letter-spacing: -.045em; line-height: 1; }
body.overblik-editorial .bp-dashboard-sub,
body.overblik-editorial .overblik-page-intro .page-sub { max-width: 620px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.5; }
body.overblik-editorial .bp-periods { display: flex; gap: 8px; margin: 0 0 28px; }
body.overblik-editorial .bp-periods button,
body.overblik-editorial .bp-indicator,
body.overblik-editorial .bp-country-select { border-color: var(--bp-grey); border-radius: 3px; background: var(--bp-surface); color: var(--bp-ink); }
body.overblik-editorial .bp-periods button[aria-pressed="true"],
body.overblik-editorial .bp-indicator[aria-pressed="true"] { border-color: var(--teal); background: var(--teal); color: #fff; }
body.overblik-editorial .bp-market-section { margin-bottom: 30px; }
body.overblik-editorial .bp-market-section h2 { color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; font-size: 25px; letter-spacing: -.025em; }
body.overblik-editorial .bp-market-section p,
body.overblik-editorial .bp-source-note { color: var(--muted); }
body.overblik-editorial .bp-market-card,
body.overblik-editorial .bp-macro-workspace .card { border-color: var(--bp-grey); border-radius: 4px; background: var(--bp-surface); box-shadow: none; }
body.overblik-editorial .bp-market-title { color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; }
body.overblik-editorial .bp-market-spot { color: var(--bp-ink); }
body.overblik-editorial .bp-mini-chart polyline { stroke: var(--teal); }
body.overblik-editorial .bp-macro-control { margin-bottom: 20px; }
body.overblik-editorial .bp-country-select { min-height: 38px; }
body.overblik-editorial .bp-macro-workspace { gap: 24px; }
body.overblik-editorial .economic-table thead tr { background: var(--bp-ink) !important; color: #fff !important; }
body.overblik-editorial .economic-table tbody tr { border-bottom-color: var(--bp-grey); background: var(--bp-surface); }
body.overblik-editorial .economic-table tbody tr:nth-child(even),
body.overblik-editorial .economic-table tbody tr:hover { background: #f3f8f8; }
body.overblik-editorial :focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; }

@media (min-width: 901px) {
  body.overblik-editorial .bp-dashboard-head .page-title,
  body.overblik-editorial .overblik-page-intro .page-title { font-size: 32px; }
}

@media (max-width: 1100px) {
  body.overblik-editorial .nav-wrap,
  body.overblik-editorial #main { width: min(100% - 48px, 1000px); }
  body.overblik-editorial .nav-scroll > nav { gap: 20px; margin-left: 146px; }
  body.overblik-editorial .subnav-inner { width: min(100% - 48px, 1000px); padding-left: 146px; }
}

@media (max-width: 900px) {
  body.overblik-editorial .nav-wrap,
  body.overblik-editorial #main { width: calc(100% - 32px); }
  body.overblik-editorial .subnav-inner { width: calc(100% - 32px); padding-left: 124px; }
  body.overblik-editorial .bp-macro-workspace { grid-template-columns: 1fr; }
}

@media (max-width: 650px) {
  body.overblik-editorial .mob-header { border-bottom: 0; }
  body.overblik-editorial .mob-logo .brand-wordmark { color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; text-transform: none; }
  body.overblik-editorial .subnav-inner { width:max-content; min-height:0; padding-left:0; }
  body.overblik-editorial .sub-btn { padding:11px 12px 9px; }
  body.overblik-editorial .bp-dashboard-head,
  body.overblik-editorial .overblik-page-intro { margin-top: 26px; }
  body.overblik-editorial .bp-market-section h2 { font-size: 25px; }
}

/* Reader routes share an editorial surface and header only. Their individual
 * content layouts, data panels and secondary navigation remain unchanged. */
body.reader-editorial-header {
  background: var(--bp-surface);
  color: var(--bp-ink);
}

body.reader-editorial-header #app,
body.reader-editorial-header header,
body.reader-editorial-header .mob-header,
body.reader-editorial-header #main { background: var(--bp-surface) !important; }

body.reader-editorial-header header { border-bottom: 0; box-shadow: none; }
body.reader-editorial-header .nav-scroll > nav button,
body.reader-editorial-header .nav-group-btn { color: var(--bp-ink); }
body.reader-editorial-header .nav-scroll > nav button:hover,
body.reader-editorial-header .nav-scroll > nav button.active,
body.reader-editorial-header .nav-group-btn:hover,
body.reader-editorial-header .nav-group-btn.active { color: var(--bp-ink); border-bottom-color: var(--bp-red); }
body.reader-editorial-header .logo { position: relative; width: 104px; height: 42px; overflow: visible; }
body.reader-editorial-header .logo .brand-wordmark { display: flex; min-height: 0; color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; font-weight: 700; letter-spacing: -.055em; line-height: .71; text-transform: none; }
body.reader-editorial-header .logo .brand-wordmark span:first-child,
body.reader-editorial-header .logo .brand-wordmark span:last-child { font-size: 27px; font-weight: 700; letter-spacing: -.055em; line-height: .71; }
body.reader-editorial-header .logo .brand-wordmark span:first-child { font-size: 26px; }
body.reader-editorial-header .logo::after { position: absolute; top: 34px; left: 2px; display: block; margin: 0; color: var(--bp-ink); content: "Maj Invest"; font-family: "Emona", Georgia, "Times New Roman", serif; font-size: 8px; font-weight: 700; line-height: 1; }
body.reader-editorial-header .bp-header-search { color: var(--bp-ink); }
body.reader-editorial-header .bp-header-search:hover { color: var(--teal); }

/* A selected share retains its existing analysis layout while using the same
 * editorial colour system as the rest of the reader. */
body.stock-editorial {
  --shadow: 0 1px 4px rgba(9, 21, 44, .07), 0 2px 12px rgba(9, 21, 44, .04);
}

@media (min-width: 901px) {
  body.reader-editorial-header .logo { width: 108px; height: 44px; }
}

@media (max-width: 650px) {
  body.reader-editorial-header .mob-header { border-bottom: 0; }
  body.reader-editorial-header .mob-logo .brand-wordmark { color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; text-transform: none; }
}

/* Rente & Bolig deliberately uses the same compact, readable subnavigation as
 * Overblik; only its own two destinations adopt this treatment. */
body.renter-bolig-editorial .subnav-bar { padding: 0; border-top: 1px solid var(--bp-grey); border-bottom: 1px solid var(--bp-grey); background: var(--bp-surface); }
body.renter-bolig-editorial .subnav-inner { box-sizing: border-box; width: min(1120px, calc(100% - 78px)); min-height: 42px; margin: 0 auto; padding: 0; }
body.renter-bolig-editorial .sub-btn { padding: 12px 16px 10px; border-bottom: 3px solid transparent; color: var(--bp-ink); font-size: 11px; font-weight: 700; letter-spacing: .015em; opacity: .72; }
body.renter-bolig-editorial .sub-btn:hover { color: var(--teal); border-bottom-color: var(--teal-border); opacity: 1; }
body.renter-bolig-editorial .sub-btn.active { color: var(--teal); border-bottom-color: var(--teal); opacity: 1; }
body.renter-bolig-editorial :focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; }

/* Investment and news retain their own destinations while using the same
 * white editorial secondary-navigation surface as Overblik. */
body.reader-editorial-subnav .subnav-bar { padding: 0; border-top: 1px solid var(--bp-grey); border-bottom: 1px solid var(--bp-grey); background: var(--bp-surface); }
body.reader-editorial-subnav .subnav-inner { box-sizing: border-box; width: min(1120px, calc(100% - 78px)); min-height: 42px; margin: 0 auto; padding: 0; }
body.reader-editorial-subnav .sub-btn { padding: 12px 16px 10px; border-bottom: 3px solid transparent; color: var(--bp-ink); font-size: 11px; font-weight: 700; letter-spacing: .015em; opacity: .72; }
body.reader-editorial-subnav .sub-btn:hover { color: var(--teal); border-bottom-color: var(--teal-border); opacity: 1; }
body.reader-editorial-subnav .sub-btn.active { color: var(--teal); border-bottom-color: var(--teal); opacity: 1; }
body.reader-editorial-subnav :focus-visible { outline: 2px solid var(--teal); outline-offset: 3px; }

@media (max-width: 1100px) {
  body.renter-bolig-editorial .subnav-inner { width: min(100% - 48px, 1000px); padding-left: 146px; }
  body.reader-editorial-subnav .subnav-inner { width: min(100% - 48px, 1000px); padding-left: 146px; }
}

@media (max-width: 900px) {
  body.renter-bolig-editorial .subnav-inner { width: calc(100% - 32px); padding-left: 124px; }
  body.reader-editorial-subnav .subnav-inner { width: calc(100% - 32px); padding-left: 124px; }
}

@media (max-width: 650px) {
  body.renter-bolig-editorial .subnav-inner { width: max-content; min-height: 0; padding-left: 0; }
  body.renter-bolig-editorial .sub-btn { padding: 11px 12px 9px; }
  body.reader-editorial-subnav .subnav-inner { width: max-content; min-height: 0; padding-left: 0; }
  body.reader-editorial-subnav .sub-btn { padding: 11px 12px 9px; }
}

/* The reader's primary destinations keep one central desktop geometry across
 * every route. Route styles still own the surface and text colours. */
@media (min-width: 901px) and (max-width: 1439px) {
  .nav-wrap,
  body.startside-editorial .nav-wrap,
  body.overblik-editorial .nav-wrap {
    box-sizing: border-box;
    width: calc(100% - 48px);
    margin: 0 auto;
    padding: 0;
  }

  .nav-row,
  .nav-scroll,
  body.startside-editorial .nav-row,
  body.startside-editorial .nav-scroll,
  body.overblik-editorial .nav-row,
  body.overblik-editorial .nav-scroll { min-height: 72px; }

  .nav-scroll,
  body.startside-editorial .nav-scroll,
  body.overblik-editorial .nav-scroll { flex: 1 1 auto; overflow-x: auto; }

  .logo,
  body.startside-editorial .logo,
  body.overblik-editorial .logo {
    position: relative;
    top: auto;
    left: auto;
    width: 108px;
    height: 44px;
    flex: 0 0 108px;
  }

  .nav-scroll > nav,
  body.startside-editorial .nav-scroll > nav,
  body.overblik-editorial .nav-scroll > nav { gap: 28px; margin-left: 64px; }

  .nav-scroll > nav button,
  .nav-group-btn,
  body.startside-editorial .nav-scroll > nav button,
  body.startside-editorial .nav-group-btn,
  body.overblik-editorial .nav-scroll > nav button,
  body.overblik-editorial .nav-group-btn { font-size: 15px; }
}

@media (min-width: 1440px) {
  .nav-wrap,
  body.startside-editorial .nav-wrap,
  body.overblik-editorial .nav-wrap {
    box-sizing: border-box;
    width: min(1680px, calc(100% - 64px));
    margin: 0 auto;
    padding: 0;
  }

  .nav-row,
  .nav-scroll,
  body.startside-editorial .nav-row,
  body.startside-editorial .nav-scroll,
  body.overblik-editorial .nav-row,
  body.overblik-editorial .nav-scroll { min-height: 78px; }

  .nav-scroll,
  body.startside-editorial .nav-scroll,
  body.overblik-editorial .nav-scroll { flex: 1 1 auto; overflow: visible; }

  .logo,
  body.startside-editorial .logo,
  body.overblik-editorial .logo {
    position: relative;
    top: auto;
    left: auto;
    width: 108px;
    height: 44px;
    flex: 0 0 108px;
  }

  .nav-scroll > nav,
  body.startside-editorial .nav-scroll > nav,
  body.overblik-editorial .nav-scroll > nav { gap: 48px; margin-left: 114px; }

  .nav-scroll > nav button,
  .nav-group-btn,
  body.startside-editorial .nav-scroll > nav button,
  body.startside-editorial .nav-group-btn,
  body.overblik-editorial .nav-scroll > nav button,
  body.overblik-editorial .nav-group-btn { font-size: 16px; }
}

/* Aktieanalyse is an editorial landing page. These rules intentionally do not
 * apply after a reader opens an individual company on the stock route. */
body.aktier-editorial {
  --bp-red: #e41000;
  --bp-sky: #e6e6e6;
  --bp-blue: #000000;
  --bp-ink: #09152c;
  --bp-green: var(--bp-news-green);
  --bp-grey: #e6e6e6;
  --bp-surface: #ffffff;
  --bg: var(--bp-surface);
  --bg-2: var(--bp-surface);
  --surface: var(--bp-surface);
  --surface-2: #f7f7f5;
  --border: var(--bp-grey);
  --border-input: var(--bp-green-border);
  --dark-moss: var(--bp-ink);
  --teal: var(--bp-news-green);
  --teal-mid: var(--bp-green-dark);
  --teal-dim: var(--bp-green-soft);
  --teal-border: var(--bp-green-border);
  --teal-hover: #e2f5ea;
  --text: var(--bp-ink);
  --text-2: #26394a;
  --muted: #52616b;
  --muted-2: #71808a;
  --focus-ring: var(--bp-green-dark);
  background: var(--bp-surface);
  color: var(--bp-ink);
  font-family: "Aptos", Arial, sans-serif;
}

body.aktier-editorial #app,
body.aktier-editorial header,
body.aktier-editorial .mob-header,
body.aktier-editorial #main { background: var(--bp-surface) !important; }

body.aktier-editorial header { border-bottom: 0; box-shadow: none; }
body.aktier-editorial .nav-scroll > nav button,
body.aktier-editorial .nav-group-btn { color: var(--bp-ink); }
body.aktier-editorial .nav-scroll > nav button:hover,
body.aktier-editorial .nav-scroll > nav button.active,
body.aktier-editorial .nav-group-btn:hover,
body.aktier-editorial .nav-group-btn.active { color: var(--bp-ink); border-bottom-color: var(--bp-red); }
body.aktier-editorial .logo .brand-wordmark { color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; text-transform: none; }
body.aktier-editorial .bp-header-search { color: var(--bp-ink); }
body.aktier-editorial .bp-header-search:hover { color: var(--teal); }

@media (max-width: 650px) {
  body.aktier-editorial .mob-header { border-bottom: 0; }
  body.aktier-editorial .mob-logo .brand-wordmark { color: var(--bp-ink); font-family: "Emona", Georgia, "Times New Roman", serif; text-transform: none; }
}

/* One Big Picture / Maj Invest wordmark is shared by every reader route. The
 * surrounding route still owns the header's background and wordmark colour. */
body.startside-editorial,
body.overblik-editorial,
body.aktier-editorial,
body.stock-editorial,
body.reader-editorial-header { --bp-wordmark-color: var(--bp-ink); }

body.startside-editorial .mob-icon-btn,
body.overblik-editorial .mob-icon-btn,
body.aktier-editorial .mob-icon-btn,
body.stock-editorial .mob-icon-btn,
body.reader-editorial-header .mob-icon-btn { color: var(--bp-ink); }

body.startside-editorial .mob-icon-btn:hover,
body.overblik-editorial .mob-icon-btn:hover,
body.aktier-editorial .mob-icon-btn:hover,
body.stock-editorial .mob-icon-btn:hover,
body.reader-editorial-header .mob-icon-btn:hover { background: var(--teal-dim); }

@media (min-width: 901px) {
  #app .nav-row,
  #app .nav-scroll { min-height: 96px; }
  #app .logo {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    width: 145px;
    height: 82px;
    margin: 0;
    flex: 0 0 145px;
    overflow: visible;
  }
  #app .logo .brand-wordmark {
    position: absolute;
    top: 6px;
    left: 0;
    display: flex;
    min-height: 0;
    font-family: "Emona", Georgia, "Times New Roman", serif;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: -0.055em;
    line-height: 0.78;
    text-transform: none;
  }
  #app .logo .brand-wordmark span:first-child,
  #app .logo .brand-wordmark span:last-child {
    font-size: 40px;
    font-weight: 700;
    letter-spacing: -0.055em;
    line-height: 0.78;
  }
  #app .logo::after {
    position: absolute;
    top: 72px;
    left: 2px;
    display: block;
    margin: 0;
    color: var(--bp-wordmark-color, #fff);
    content: "Maj Invest";
    font-family: "Emona", Georgia, "Times New Roman", serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1;
  }
}

@media (max-width: 650px) {
  #app .mob-logo {
    position: relative;
    display: block;
    width: 94px;
    height: 46px;
    overflow: visible;
  }
  #app .mob-logo .brand-wordmark {
    position: absolute;
    top: 3px;
    left: 0;
    display: flex;
    min-height: 0;
    font-family: "Emona", Georgia, "Times New Roman", serif;
    line-height: 0.8;
    text-transform: none;
  }
  #app .mob-logo .brand-wordmark span:first-child,
  #app .mob-logo .brand-wordmark span:last-child { font-size: 20px; font-weight: 700; letter-spacing: -0.055em; line-height: 0.8; }
  #app .mob-logo::after { position: absolute; top: 39px; left: 1px; color: var(--bp-wordmark-color, #fff); content: "Maj Invest"; font-family: "Emona", Georgia, "Times New Roman", serif; font-size: 6.5px; font-weight: 700; line-height: 1; }
}

/* Desktop reader frame: navigation and Startside share one compact canvas.
 * Overblik intentionally retains its
 * narrower 1120px reading column. */
@media (min-width: 901px) {
  .nav-wrap,
  body.startside-editorial .nav-wrap,
  body.overblik-editorial .nav-wrap,
  body.startside-editorial main {
    width: min(var(--bp-desktop-frame-max), calc(100% - (2 * var(--bp-reader-frame-gutter))));
  }
}

/* Shared desktop reader header. This final rule deliberately supersedes the
 * earlier route-era variations: every reader route uses the Image 3 logo,
 * navigation start point, and vertical baseline from 901px upwards. */
@media (min-width: 901px) {
  body.startside-editorial .nav-wrap,
  body.overblik-editorial .nav-wrap,
  body.aktier-editorial .nav-wrap,
  body.stock-editorial .nav-wrap,
  body.reader-editorial-header .nav-wrap {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 40px;
  }

  body.startside-editorial #app .nav-row,
  body.overblik-editorial #app .nav-row,
  body.aktier-editorial #app .nav-row,
  body.stock-editorial #app .nav-row,
  body.reader-editorial-header #app .nav-row,
  body.startside-editorial #app .nav-scroll,
  body.overblik-editorial #app .nav-scroll,
  body.aktier-editorial #app .nav-scroll,
  body.stock-editorial #app .nav-scroll,
  body.reader-editorial-header #app .nav-scroll {
    min-height: 69px;
  }

  body.startside-editorial #app .nav-row,
  body.overblik-editorial #app .nav-row,
  body.aktier-editorial #app .nav-row,
  body.stock-editorial #app .nav-row,
  body.reader-editorial-header #app .nav-row { position: relative; }

  body.startside-editorial #app .nav-scroll,
  body.overblik-editorial #app .nav-scroll,
  body.aktier-editorial #app .nav-scroll,
  body.stock-editorial #app .nav-scroll,
  body.reader-editorial-header #app .nav-scroll {
    flex: 1 1 auto;
    overflow: visible;
  }

  body.startside-editorial #app .logo,
  body.overblik-editorial #app .logo,
  body.aktier-editorial #app .logo,
  body.stock-editorial #app .logo,
  body.reader-editorial-header #app .logo {
    position: absolute;
    z-index: 2;
    top: 33px;
    left: 0;
    width: 145px;
    height: 82px;
    margin: 0;
    flex: 0 0 145px;
  }

  body.startside-editorial .nav-scroll > nav,
  body.overblik-editorial .nav-scroll > nav,
  body.aktier-editorial .nav-scroll > nav,
  body.stock-editorial .nav-scroll > nav,
  body.reader-editorial-header .nav-scroll > nav {
    gap: 49px;
    /* Match the reference: 40px shell gutter + 502px nav offset = 542px. */
    margin-left: 502px;
    padding: 0;
  }

  body.startside-editorial .nav-scroll > nav button,
  body.overblik-editorial .nav-scroll > nav button,
  body.aktier-editorial .nav-scroll > nav button,
  body.stock-editorial .nav-scroll > nav button,
  body.reader-editorial-header .nav-scroll > nav button,
  body.startside-editorial .nav-group-btn,
  body.overblik-editorial .nav-group-btn,
  body.aktier-editorial .nav-group-btn,
  body.stock-editorial .nav-group-btn,
  body.reader-editorial-header .nav-group-btn { font-size: 12px; }
}

/* Final desktop reference pass. The masthead follows the 35px desktop gutter,
 * while Startside retains its established compact reading frame. */
@media (min-width: 901px) {
  body.startside-editorial main {
    width: min(var(--bp-desktop-frame-max), calc(100% - (2 * var(--bp-reader-frame-gutter))));
    max-width: var(--bp-desktop-frame-max);
    margin: 0 auto;
    padding: 0 0 38px;
  }

  /* Compact Startside reference: the complete 3:1 marketing artwork shares
   * the original short Wake-Up Call frame without a desktop crop. */
  body.startside-editorial .bp-hero {
    height: auto;
    min-height: 335px;
  }

  body.startside-editorial .bp-hero-visual {
    display: block;
    align-self: end;
    justify-self: stretch;
    width: 100%;
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  body.startside-editorial .bp-hero-visual img {
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center bottom;
  }

  body.startside-editorial .bp-hero h1 {
    max-width: 430px;
    font-size: clamp(42px, 3.55vw, 54px);
    letter-spacing: -0.05em;
    line-height: 1.02;
  }

  body.startside-editorial .nav-scroll > nav button,
  body.startside-editorial .nav-group-btn { font-size: 13px; }

  /* The loaded image is the source of truth. Do not use a cropped CSS
   * fallback: the complete 3:1 illustration must always remain visible. */
  body.startside-editorial .bp-hero-visual {
    background: var(--bp-surface);
  }

  /* A daily Wake-Up Call may have a three-line headline. Keep that editorial
   * hierarchy compact, while the larger natural image shares its lower edge. */
  body.startside-editorial .bp-hero-copy {
    justify-content: center;
    padding: 46px 28px 38px 0;
  }

  body.startside-editorial .bp-hero-kicker {
    margin-bottom: 8px;
    font-size: 11px;
  }

  body.startside-editorial .bp-hero h1 {
    font-size: clamp(40px, 2.7vw, 46px);
    line-height: .96;
  }

  body.startside-editorial .bp-hero-meta {
    margin-top: 8px;
  }

  body.startside-editorial .bp-hero-summary {
    max-width: 470px;
    margin-top: 7px;
    font-size: 13px;
    line-height: 1.22;
  }

  body.startside-editorial .bp-hero-source {
    margin-top: 7px;
  }

  body.startside-editorial .bp-hero-actions {
    gap: 14px;
    margin-top: 10px;
  }

  body.startside-editorial .bp-hero-action {
    min-height: 32px;
  }

  body.startside-editorial .bp-topic-visual--stocks {
    background-color: #e9eeea;
    background-image: url("/assets/big-picture-card-stocks-v3.png");
    background-position: center bottom;
    background-size: contain;
    background-repeat: no-repeat;
  }

  body.startside-editorial .bp-topic-visual--macro {
    background-color: #e5eff2;
    background-image: url("/assets/big-picture-card-macro-v1.png");
    background-position: center bottom;
    background-size: contain;
    background-repeat: no-repeat;
  }

  body.startside-editorial .bp-topic-visual-frame--housing {
    background-color: #edf1ee;
    background-image: url("/assets/big-picture-card-bolig-v1.png");
    background-position: center bottom;
    background-size: contain;
    background-repeat: no-repeat;
  }

  body.startside-editorial .bp-topic-visual--thinktank {
    background-color: #edf0e9;
    background-image: url("/assets/taenketank-selector-v1.png");
    background-position: center bottom;
    background-size: contain;
    background-repeat: no-repeat;
  }
}

/* PNG declarations above remain the compatibility fallback. */
@supports (background-image: url("/assets/big-picture-card-stocks-v3--desktop.webp")) {
  @media (min-width: 901px) {
    body.startside-editorial .bp-topic-visual--stocks { background-image: url("/assets/big-picture-card-stocks-v3--desktop.webp"); }
    body.startside-editorial .bp-topic-visual--macro { background-image: url("/assets/big-picture-card-macro-v1--desktop.webp"); }
    body.startside-editorial .bp-topic-visual-frame--housing { background-image: url("/assets/big-picture-card-bolig-v1--desktop.webp"); }
    body.startside-editorial .bp-topic-visual--thinktank { background-image: url("/assets/taenketank-selector-v1--desktop.webp"); }
  }
}

/* The stock cards need a taller course area, but a line that remains visually
 * light when the SVG stretches to the available card width. */
.stock-year-chart polyline {
  stroke-width: 1.75 !important;
  vector-effect: non-scaling-stroke;
}

/* Mobile Startside prioritises complete source artwork and readable, full-width
 * editorial modules over the compact desktop crop. */
@media (max-width: 900px) {
  body.startside-editorial .bp-hero-visual {
    width: 100%;
    height: auto;
    justify-self: stretch;
    min-height: 0;
    margin-left: 0;
    height: auto;
    overflow: visible;
  }

  body.startside-editorial .bp-hero-visual img {
    position: static;
    inset: auto;
    width: 100%;
    height: auto;
    min-height: 0;
    object-fit: contain;
    object-position: center;
  }

  body.startside-editorial .bp-hero-visual::after { display: none; }


  body.startside-editorial .bp-topic-grid {
    grid-template-columns: 1fr;
    width: 100%;
  }

  body.startside-editorial .bp-topic-card {
    width: 100%;
    height: auto;
    min-height: 268px;
  }

  body.startside-editorial .bp-topic-visual,
  body.startside-editorial .bp-topic-visual-frame--macro,
  body.startside-editorial .bp-topic-visual-frame--housing {
    height: 140px;
    flex: 0 0 140px;
  }

  body.startside-editorial .bp-newsletter-panel {
    min-height: 366px;
  }

  body.startside-editorial .bp-newsletter-list {
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
    height: auto;
    overflow: visible;
  }

  body.startside-editorial .bp-newsletter-story {
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 12px;
    min-height: 76px;
    padding: 8px 0;
  }

  body.startside-editorial .bp-newsletter-thumb-wrap,
  body.startside-editorial .bp-newsletter-thumb {
    width: 78px;
    height: 64px;
  }

  body.startside-editorial .bp-newsletter-meta { font-size: 9px; }

  body.startside-editorial .bp-newsletter-story strong {
    display: block;
    overflow: visible;
    font-size: 12px;
    line-height: 1.25;
    -webkit-line-clamp: unset;
  }
}

/* Unified reader masthead. This final shell rule keeps every live root route
 * route on one compact Big Picture / Maj Invest grid. */
body.startside-editorial #app > header,
body.overblik-editorial #app > header,
body.aktier-editorial #app > header,
body.stock-editorial #app > header,
body.reader-editorial-header #app > header {
  background: var(--bp-surface);
  border-bottom: 0;
  box-shadow: none;
}

#app > header :focus-visible,
#app .mob-header :focus-visible { outline-color: var(--teal); }

body.startside-editorial #app .nav-wrap,
body.overblik-editorial #app .nav-wrap,
body.aktier-editorial #app .nav-wrap,
body.stock-editorial #app .nav-wrap,
body.reader-editorial-header #app .nav-wrap {
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0 40px;
}

body.startside-editorial #app .nav-row,
body.overblik-editorial #app .nav-row,
body.aktier-editorial #app .nav-row,
body.stock-editorial #app .nav-row,
body.reader-editorial-header #app .nav-row,
body.startside-editorial #app .nav-scroll,
body.overblik-editorial #app .nav-scroll,
body.aktier-editorial #app .nav-scroll,
body.stock-editorial #app .nav-scroll,
body.reader-editorial-header #app .nav-scroll { min-height: 77px; }

body.startside-editorial #app .nav-scroll,
body.overblik-editorial #app .nav-scroll,
body.aktier-editorial #app .nav-scroll,
body.stock-editorial #app .nav-scroll,
body.reader-editorial-header #app .nav-scroll { flex: 1 1 auto; overflow: visible; }

body.startside-editorial #app .nav-scroll > nav,
body.overblik-editorial #app .nav-scroll > nav,
body.aktier-editorial #app .nav-scroll > nav,
body.stock-editorial #app .nav-scroll > nav,
body.reader-editorial-header #app .nav-scroll > nav {
  gap: 38px;
  margin-left: 64px;
  padding: 0;
}

body.startside-editorial #app .nav-scroll > nav button,
body.overblik-editorial #app .nav-scroll > nav button,
body.aktier-editorial #app .nav-scroll > nav button,
body.stock-editorial #app .nav-scroll > nav button,
body.reader-editorial-header #app .nav-scroll > nav button,
body.startside-editorial #app .nav-group-btn,
body.overblik-editorial #app .nav-group-btn,
body.aktier-editorial #app .nav-group-btn,
body.stock-editorial #app .nav-group-btn,
body.reader-editorial-header #app .nav-group-btn {
  color: var(--bp-ink);
  font-size: 15px;
  font-weight: 600;
}

body.startside-editorial #app .nav-scroll > nav button:hover,
body.startside-editorial #app .nav-scroll > nav button.active,
body.overblik-editorial #app .nav-scroll > nav button:hover,
body.overblik-editorial #app .nav-scroll > nav button.active,
body.aktier-editorial #app .nav-scroll > nav button:hover,
body.aktier-editorial #app .nav-scroll > nav button.active,
body.stock-editorial #app .nav-scroll > nav button:hover,
body.stock-editorial #app .nav-scroll > nav button.active,
body.reader-editorial-header #app .nav-scroll > nav button:hover,
body.reader-editorial-header #app .nav-scroll > nav button.active,
body.startside-editorial #app .nav-group-btn:hover,
body.startside-editorial #app .nav-group-btn.active,
body.overblik-editorial #app .nav-group-btn:hover,
body.overblik-editorial #app .nav-group-btn.active,
body.aktier-editorial #app .nav-group-btn:hover,
body.aktier-editorial #app .nav-group-btn.active,
body.stock-editorial #app .nav-group-btn:hover,
body.stock-editorial #app .nav-group-btn.active,
body.reader-editorial-header #app .nav-group-btn:hover,
body.reader-editorial-header #app .nav-group-btn.active {
  color: var(--bp-ink);
  border-bottom-color: var(--bp-red);
}

body.startside-editorial #app .subnav-bar,
body.overblik-editorial #app .subnav-bar,
body.aktier-editorial #app .subnav-bar,
body.stock-editorial #app .subnav-bar,
body.reader-editorial-header #app .subnav-bar {
  background: var(--bp-surface);
  border-top: 0;
  border-bottom: 1px solid var(--bp-grey);
  padding: 0;
}

body.startside-editorial #app .subnav-inner,
body.overblik-editorial #app .subnav-inner,
body.aktier-editorial #app .subnav-inner,
body.stock-editorial #app .subnav-inner,
body.reader-editorial-header #app .subnav-inner {
  box-sizing: border-box;
  width: 100%;
  min-height: 54px;
  margin: 0;
  padding: 0 40px 0 216px;
}

body.startside-editorial #app .sub-btn,
body.overblik-editorial #app .sub-btn,
body.aktier-editorial #app .sub-btn,
body.stock-editorial #app .sub-btn,
body.reader-editorial-header #app .sub-btn {
  padding: 18px 20px 15px;
  font-size: 14px;
  font-weight: 600;
}

#main :is(.app-page-header, .stock-page-head, .news-feed-hdr, .bp-dashboard-head, .overblik-page-intro, .inv-page-heading) {
  max-width: 820px;
  margin-top: 0;
  margin-bottom: 20px;
}

#main .page-title {
  color: var(--bp-ink);
  font-family: "Emona", Georgia, "Times New Roman", serif;
  font-size: 36px !important;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.04;
}

/* Big Picture builds its intro dynamically, so its local inline style needs
 * this explicit shared heading override as well. */
#main .bp-intro h1.page-title {
  color: var(--bp-ink);
  font-family: "Emona", Georgia, "Times New Roman", serif;
  font-size: 36px !important;
  font-weight: 700;
  letter-spacing: -.04em;
  line-height: 1.04;
}

#main .bp-intro > div > p {
  max-width: 720px;
  color: var(--muted);
  font-size: 17px !important;
  line-height: 1.55;
}

#main .page-sub {
  max-width: 720px;
  color: var(--muted);
  font-size: 17px !important;
  line-height: 1.55;
}

#main .bp-dashboard-eyebrow {
  display: block;
  margin: 0 0 7px;
  color: var(--teal);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .1em;
  line-height: 1.2;
  text-transform: uppercase;
}

@media (max-width: 900px) {
  #app .mob-header {
    height: 58px;
    padding: 0 18px;
    background: var(--bp-surface);
    border-bottom: 0;
    box-shadow: none;
  }

  #app .mob-icon-btn { color: var(--bp-ink); }
  #app .mob-icon-btn:hover { background: var(--teal-dim); }

  #main :is(.app-page-header, .stock-page-head, .news-feed-hdr, .bp-dashboard-head, .overblik-page-intro, .inv-page-heading) { margin-bottom: 16px; }
  #main .page-title { font-size: 30px !important; }
  #main .bp-intro h1.page-title { font-size: 30px !important; }
  #main .page-sub { font-size: 16px !important; }
  #main .bp-intro > div > p { font-size: 16px !important; }
  #main .bp-dashboard-eyebrow { font-size: 12px; }
}

@media (max-width: 700px) {
  body.startside-editorial #app .subnav-bar,
  body.overblik-editorial #app .subnav-bar,
  body.aktier-editorial #app .subnav-bar,
  body.stock-editorial #app .subnav-bar,
  body.reader-editorial-header #app .subnav-bar { padding: 0 16px; }

  body.startside-editorial #app .subnav-inner,
  body.overblik-editorial #app .subnav-inner,
  body.aktier-editorial #app .subnav-inner,
  body.stock-editorial #app .subnav-inner,
  body.reader-editorial-header #app .subnav-inner {
    width: max-content;
    min-height: 48px;
    margin: 0;
    padding: 0;
  }

  body.startside-editorial #app .sub-btn,
  body.overblik-editorial #app .sub-btn,
  body.aktier-editorial #app .sub-btn,
  body.stock-editorial #app .sub-btn,
  body.reader-editorial-header #app .sub-btn { padding: 16px 14px 13px; }

}

/* Maj Invest's desktop header centres a 1280px content frame and keeps the
 * brand and navigation on one 77px baseline.  Big Picture retains its larger
 * established lockup, so it is allowed to sit fractionally outside the row
 * rather than being absolutely positioned beneath it. */
@media (min-width: 901px) {
  body.startside-editorial #app .nav-wrap,
  body.overblik-editorial #app .nav-wrap,
  body.aktier-editorial #app .nav-wrap,
  body.stock-editorial #app .nav-wrap,
  body.reader-editorial-header #app .nav-wrap {
    width: min(1280px, calc(100% - 32px));
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 16px;
  }

  body.startside-editorial #app .nav-row,
  body.overblik-editorial #app .nav-row,
  body.aktier-editorial #app .nav-row,
  body.stock-editorial #app .nav-row,
  body.reader-editorial-header #app .nav-row,
  body.startside-editorial #app .nav-scroll,
  body.overblik-editorial #app .nav-scroll,
  body.aktier-editorial #app .nav-scroll,
  body.stock-editorial #app .nav-scroll,
  body.reader-editorial-header #app .nav-scroll { min-height: 77px; }

  body.startside-editorial #app .nav-scroll,
  body.overblik-editorial #app .nav-scroll,
  body.aktier-editorial #app .nav-scroll,
  body.stock-editorial #app .nav-scroll,
  body.reader-editorial-header #app .nav-scroll { align-items: center; }

  body.startside-editorial #app .logo,
  body.overblik-editorial #app .logo,
  body.aktier-editorial #app .logo,
  body.stock-editorial #app .logo,
  body.reader-editorial-header #app .logo {
    position: relative;
    z-index: auto;
    top: auto;
    left: auto;
    align-self: center;
    /* Align the tall legacy lockup with the lower visual baseline in the
     * supplied desktop reference, without moving the navigation row. */
    transform: translateY(20px);
  }

  body.startside-editorial #app .nav-scroll > nav,
  body.overblik-editorial #app .nav-scroll > nav,
  body.aktier-editorial #app .nav-scroll > nav,
  body.stock-editorial #app .nav-scroll > nav,
  body.reader-editorial-header #app .nav-scroll > nav {
    gap: 32px;
    margin-left: 48px;
    align-self: center;
  }

  body.startside-editorial #app .subnav-inner,
  body.overblik-editorial #app .subnav-inner,
  body.aktier-editorial #app .subnav-inner,
  body.stock-editorial #app .subnav-inner,
  body.reader-editorial-header #app .subnav-inner {
    width: min(1280px, calc(100% - 32px));
    margin: 0 auto;
    padding: 0 16px 0 209px;
  }
}

/* Keep the shared Big Picture lockup airy: its two words should read as two
 * distinct lines, with the same relaxed letter spacing as the reference. */
@media (min-width: 901px) {
  body.startside-editorial #app .logo .brand-wordmark,
  body.overblik-editorial #app .logo .brand-wordmark,
  body.aktier-editorial #app .logo .brand-wordmark,
  body.stock-editorial #app .logo .brand-wordmark,
  body.reader-editorial-header #app .logo .brand-wordmark {
    top: 3px;
    gap: 0;
    letter-spacing: -0.035em;
    line-height: 0.9;
    word-spacing: normal;
  }

  body.startside-editorial #app .logo .brand-wordmark span,
  body.overblik-editorial #app .logo .brand-wordmark span,
  body.aktier-editorial #app .logo .brand-wordmark span,
  body.stock-editorial #app .logo .brand-wordmark span,
  body.reader-editorial-header #app .logo .brand-wordmark span {
    letter-spacing: -0.035em;
    line-height: 0.9;
  }

  body.startside-editorial #app .logo::after,
  body.overblik-editorial #app .logo::after,
  body.aktier-editorial #app .logo::after,
  body.stock-editorial #app .logo::after,
  body.reader-editorial-header #app .logo::after { top: 79px; }
}

@media (max-width: 650px) {
  #app .mob-logo .brand-wordmark,
  #app .mob-logo .brand-wordmark span {
    letter-spacing: -0.035em;
    line-height: 0.9;
    word-spacing: normal;
  }

  #app .mob-logo::after { top: 43px; }
}

/* Each non-home route ends its visible navigation with one quiet divider.
 * Secondary navigation already supplies that edge; routes without it place
 * the same divider below the primary masthead. */
@media (min-width: 701px) {
  body.primary-navigation-only #app > header {
    border-bottom: 1px solid var(--bp-grey);
  }

  body.secondary-navigation-visible #app > header {
    border-bottom: 0;
  }
}

/* Market overview identity pass: units identify the quote once, leaving the
 * numeric observation clean and easy to compare across rows. */
body.startside-editorial .bp-market-panel .bp-panel-heading h2,
body.startside-editorial .bp-market-panel .bp-market-link--header {
  font-weight: 600;
}

body.startside-editorial .bp-market-table .sh-idx-item {
  grid-template-columns: 18px minmax(0, 1fr) 76px 54px 64px;
  column-gap: 8px;
  height: 22px !important;
  align-items: center;
}

body.startside-editorial .bp-market-table .bp-market-icon,
body.startside-editorial .bp-market-table .bp-market-icon .bp-market-illustration {
  width: 16px;
  height: 16px;
}

body.startside-editorial .bp-market-table .bp-market-icon .bp-market-illustration {
  display: block;
  max-width: 100%;
  object-fit: contain;
}

body.startside-editorial .bp-market-table .sh-idx-lbl {
  display: flex;
  flex-direction: column;
  justify-content: center;
  row-gap: 1px;
  overflow: visible !important;
  line-height: 1.05;
  text-overflow: clip;
  white-space: normal;
}

body.startside-editorial .bp-market-label-full,
body.startside-editorial .bp-market-label-mobile {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-transform: none;
}

body.startside-editorial .bp-market-label-full { display: block; }

body.startside-editorial .bp-market-unit {
  display: block;
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
  color: #71837c;
  font-size: 7px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
  white-space: nowrap;
}

/* Match the reference card's calm footer while retaining the time-period
 * notes in the DOM for assistive technology and source inspection. */
body.startside-editorial #bp-market-period-note {
  position: static;
  width: auto;
  height: auto;
  margin-top: 3px;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

@media (min-width: 901px) {
  body.startside-editorial .bp-bottom-grid {
    grid-template-columns: minmax(0, 1.72fr) minmax(0, .95fr) minmax(470px, 1.7fr);
  }
}

@media (max-width: 1100px) {
  body.startside-editorial .bp-market-table .sh-idx-item {
    grid-template-columns: 14px minmax(0, 1fr) 66px 50px 58px;
    column-gap: 5px;
  }
}

@media (max-width: 600px) {
  body.startside-editorial .bp-market-table .sh-idx-item {
    grid-template-columns: 14px minmax(0, 1fr) 56px 44px 54px;
    column-gap: 3px;
    height: 25px !important;
  }
  body.startside-editorial .bp-market-label-full { display: none; }
  body.startside-editorial .bp-market-label-mobile { display: block; }
}

@media (max-width: 700px) {
  body.primary-navigation-only #app > header { border-bottom: 0; }
  body.primary-navigation-only #app .mob-header {
    border-bottom: 1px solid var(--bp-grey);
  }
}

/* The desktop wordmark intentionally hangs below the primary row. Routes
 * without a subnavigation row must reserve the same breathing room that the
 * Investeringer subnavigation naturally provides, otherwise their page title
 * starts underneath “Maj Investâ€. */
@media (min-width: 901px) {
  body.primary-navigation-only #app > header {
    padding-bottom: 50px;
  }
}

/* Standard reader page headings use Boligmarkedet's shared content edge.
 * Big Picture's Overblik introduction is deliberately not part of this
 * selector: its portrait-led layout remains an explicit editorial exception. */
body:not(.overblik-editorial) #main > :is(.app-page-header, .stock-page-head, .news-feed-hdr, .inv-page-heading) {
  align-self: flex-start;
  width: min(820px, 100%);
}

/* Makro- og finansoversigterne har en dynamisk fælles overskrift. Bevar den
 * samme luft fra undernavigationens afsluttende streg som på de øvrige
 * desktop-sider; den generelle overskriftsregel ovenfor nulstiller ellers
 * denne afstand. */
@media (min-width: 701px) {
  body.overblik-editorial #main .bp-dashboard-head { margin-top: 22px; }
}

/* Hele Big Picture bruger den samme ydre indholdsramme som de øvrige
 * læsersider, så Generelt, Makro og Finansielle flugter på desktop. */
@media (min-width: 901px) {
  body.overblik-editorial #main {
    width: min(1280px, calc(100% - 40px));
  }
}

/* Investeringer is the reference geometry for the primary menu: its first
 * item sits 64px after the wordmark and each following item is 38px apart.
 * Apply the same final values after the legacy breakpoint rules so routes with
 * and without a secondary menu cannot drift apart. */
@media (min-width: 701px) {
  /* Secondary navigation uses the same desktop inter-item distance as the
   * primary menu, including Overblik and the Investeringer reader views. */
  body.overblik-editorial #app .subnav-inner,
  body.reader-editorial-subnav #app .subnav-inner {
    column-gap: 38px;
  }

  body.startside-editorial #app .nav-scroll > nav,
  body.overblik-editorial #app .nav-scroll > nav,
  body.aktier-editorial #app .nav-scroll > nav,
  body.stock-editorial #app .nav-scroll > nav,
  body.reader-editorial-header #app .nav-scroll > nav {
    gap: 38px;
    margin-left: 64px;
  }
}

/* Canonical Aktieanalyse lockup. Keep this as the final masthead rule so
 * legacy route-era logo declarations cannot change the wordmark's weight,
 * proportions, or Maj Invest baseline on another reader route. */
@media (min-width: 901px) {
  body.startside-editorial #app .logo,
  body.overblik-editorial #app .logo,
  body.aktier-editorial #app .logo,
  body.stock-editorial #app .logo,
  body.reader-editorial-header #app .logo {
    width: 145px;
    height: 82px;
    flex: 0 0 145px;
  }

  body.startside-editorial #app .logo .brand-wordmark,
  body.overblik-editorial #app .logo .brand-wordmark,
  body.aktier-editorial #app .logo .brand-wordmark,
  body.stock-editorial #app .logo .brand-wordmark,
  body.reader-editorial-header #app .logo .brand-wordmark {
    top: 3px;
    left: 0;
    display: flex;
    min-height: 0;
    color: var(--bp-wordmark-color, var(--bp-ink));
    font-family: "Emona", Georgia, "Times New Roman", serif;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: -0.035em;
    line-height: 0.9;
    text-transform: none;
    word-spacing: normal;
  }

  body.startside-editorial #app .logo .brand-wordmark span,
  body.overblik-editorial #app .logo .brand-wordmark span,
  body.aktier-editorial #app .logo .brand-wordmark span,
  body.stock-editorial #app .logo .brand-wordmark span,
  body.reader-editorial-header #app .logo .brand-wordmark span {
    font-family: inherit;
    font-size: 40px;
    font-weight: 700;
    letter-spacing: -0.035em;
    line-height: 0.9;
  }

  body.startside-editorial #app .logo::after,
  body.overblik-editorial #app .logo::after,
  body.aktier-editorial #app .logo::after,
  body.stock-editorial #app .logo::after,
  body.reader-editorial-header #app .logo::after {
    top: 79px;
    left: 2px;
    color: var(--bp-wordmark-color, var(--bp-ink));
    content: "Maj Invest";
    font-family: "Emona", Georgia, "Times New Roman", serif;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1;
  }
}

@media (max-width: 650px) {
  body.startside-editorial #app .mob-logo,
  body.overblik-editorial #app .mob-logo,
  body.aktier-editorial #app .mob-logo,
  body.stock-editorial #app .mob-logo,
  body.reader-editorial-header #app .mob-logo {
    width: 94px;
    height: 46px;
  }

  body.startside-editorial #app .mob-logo .brand-wordmark,
  body.overblik-editorial #app .mob-logo .brand-wordmark,
  body.aktier-editorial #app .mob-logo .brand-wordmark,
  body.stock-editorial #app .mob-logo .brand-wordmark,
  body.reader-editorial-header #app .mob-logo .brand-wordmark {
    top: 3px;
    left: 0;
    display: flex;
    min-height: 0;
    color: var(--bp-wordmark-color, var(--bp-ink));
    font-family: "Emona", Georgia, "Times New Roman", serif;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -0.035em;
    line-height: 0.9;
    text-transform: none;
    word-spacing: normal;
  }

  body.startside-editorial #app .mob-logo .brand-wordmark span,
  body.overblik-editorial #app .mob-logo .brand-wordmark span,
  body.aktier-editorial #app .mob-logo .brand-wordmark span,
  body.stock-editorial #app .mob-logo .brand-wordmark span,
  body.reader-editorial-header #app .mob-logo .brand-wordmark span {
    font-family: inherit;
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -0.035em;
    line-height: 0.9;
  }

  body.startside-editorial #app .mob-logo::after,
  body.overblik-editorial #app .mob-logo::after,
  body.aktier-editorial #app .mob-logo::after,
  body.stock-editorial #app .mob-logo::after,
  body.reader-editorial-header #app .mob-logo::after {
    top: 43px;
    left: 1px;
    color: var(--bp-wordmark-color, var(--bp-ink));
    content: "Maj Invest";
    font-family: "Emona", Georgia, "Times New Roman", serif;
    font-size: 6.5px;
    font-weight: 700;
    line-height: 1;
  }
}

/* BI-loop experiment: give the mixed-aspect market illustrations a quiet,
 * centered optical box while preserving each SVG's native proportions. */
body.startside-editorial .bp-market-table .bp-market-icon {
  justify-self: center;
  width: 15px;
  height: 15px;
  overflow: visible;
}

body.startside-editorial .bp-market-table .bp-market-icon .bp-market-illustration {
  width: 15px;
  height: 15px;
  object-fit: contain;
  object-position: center;
}

/* The compact market table keeps its labels on two lines.  Give every text
 * line a little leading: the previous tight line boxes could crop ascenders
 * at the top when the Aptos web font finished loading. */
body.startside-editorial .bp-market-panel .bp-panel-heading h2,
body.startside-editorial .bp-market-panel .bp-market-link--header {
  line-height: 1.2;
}

body.startside-editorial .bp-market-table .sh-idx-lbl,
body.startside-editorial .bp-market-table .bp-market-spot,
body.startside-editorial .bp-market-table .bp-market-change,
body.startside-editorial .bp-market-label-full,
body.startside-editorial .bp-market-label-mobile {
  line-height: 1.25;
}

body.startside-editorial .bp-market-unit {
  line-height: 1.15;
}

@media (max-width: 600px) {
  body.startside-editorial .bp-market-table .bp-market-icon,
  body.startside-editorial .bp-market-table .bp-market-icon .bp-market-illustration {
    width: 14px;
    height: 14px;
  }
}

/* The desktop artwork follows the measured copy frame: its top meets the
 * Wake-Up kicker and its lower edge meets the CTA buttons. Its left edge is
 * fixed to that copy frame, so replacing the illustration cannot move it away
 * from the Wake-Up Call. */
@media (min-width: 901px) {
  body.startside-editorial .bp-hero {
    position: relative;
  }

  body.startside-editorial .bp-hero-visual {
    position: absolute;
    top: var(--bp-hero-art-top, 46px);
    right: 0;
    left: var(--bp-hero-art-left, 38%);
    box-sizing: border-box;
    width: auto;
    height: var(--bp-hero-art-height, 300px);
    min-height: 0;
    margin: 0;
    overflow: hidden;
  }

  body.startside-editorial .bp-hero-visual img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center bottom;
  }
}

/* Site-wide refinement: compact card arrows, a true market footer, unified
 * wordmarks, a denser podcast, and the dedicated publication search view. */
body.startside-editorial .bp-topic-card {
  padding-bottom: 27px;
}

body.startside-editorial .bp-topic-arrow {
  position: absolute;
  right: 11px;
  bottom: 10px;
  width: 19px;
  height: 19px;
  margin: 0;
  border-radius: 4px;
  font-size: 12px;
  line-height: 1;
}

body.startside-editorial .bp-market-footer {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
}

body.startside-editorial .bp-market-footer .bp-market-note {
  min-width: 0;
  margin: 0;
}

body.startside-editorial .bp-market-link--footer {
  flex: 0 0 auto;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--bp-news-green);
  font: 800 10px/1.2 var(--bp-body-font);
  white-space: nowrap;
}

body.startside-editorial .bp-market-link--footer:hover,
body.startside-editorial .bp-market-link--footer:focus-visible {
  color: var(--bp-green-dark);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.mob-menu-logo {
  position: relative;
  display: block;
  width: 94px;
  min-width: 94px;
  height: 46px;
  min-height: 34px;
  overflow: visible;
  flex-shrink: 0;
}

.mob-menu-logo .brand-wordmark {
  position: absolute;
  top: 3px;
  left: 0;
  display: flex;
  min-height: 0;
  color: var(--bp-surface);
  font-family: "Emona", Georgia, "Times New Roman", serif;
  font-size: 20px !important;
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: .9;
  text-transform: none;
}

.mob-menu-logo .brand-wordmark span {
  display: flex;
  align-items: baseline;
  gap: 0;
  min-height: 0;
  font-size: 20px !important;
  font-weight: 700;
  letter-spacing: -.035em;
  line-height: .9;
}

.mob-menu-logo::after {
  position: absolute;
  top: 39px;
  left: 1px;
  color: var(--bp-surface);
  content: "Maj Invest";
  font-family: "Emona", Georgia, "Times New Roman", serif;
  font-size: 6.5px;
  font-weight: 700;
  line-height: 1;
}

@media (min-width: 651px) {
  #app .bp-header-search {
    display: inline-grid;
    place-items: center;
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    margin-left: auto;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--bp-ink);
    cursor: pointer;
  }

  #app .bp-header-search svg {
    width: 25px;
    height: 25px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-width: 1.8;
  }
}

.mob-search-btn svg {
  width: 25px;
  height: 25px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-width: 1.8;
}

body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter,
body.overblik-editorial .bp-catalogue-section#bp-special_editions {
  border-top-color: rgb(255 255 255 / 28%) !important;
  background: var(--bp-news-green);
  box-shadow: 0 0 0 100vmax var(--bp-news-green);
}

body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-section-heading h2,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-section-heading h2,
body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-section-introduction-lead,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-section-introduction-lead {
  color: var(--bp-surface);
}

body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-section-introduction-context,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-section-introduction-context,
body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-section-heading p,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-section-heading p,
body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-visual-controls,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-visual-controls,
body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-visual-carousel > p,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-visual-carousel > p {
  color: rgb(255 255 255 / 82%);
}

body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-visual-controls button,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-visual-controls button,
body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-visual-controls button:hover,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-visual-controls button:hover,
body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-visual-controls button:focus-visible,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-visual-controls button:focus-visible {
  color: var(--bp-surface);
}

body.overblik-editorial .bp-catalogue-section#bp-maanedsskrifter .bp-visual-dots,
body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-visual-dots,
body.overblik-editorial .bp-catalogue-section#bp-ugeskrifter .bp-visual-dots {
  display: none;
}

body.overblik-editorial .bp-catalogue-section#bp-special_editions .bp-editorial-copy .bp-source-list {
  border-top: 0;
}

body.overblik-editorial .bp-player-shell {
  min-height: 330px;
}

body.overblik-editorial .bp-player-context[data-bp-context] {
  box-sizing: border-box;
  height: auto;
  overflow: visible;
}

body.overblik-editorial .bp-player-summary {
  max-height: none;
  margin: 0 0 12px;
  padding-right: 0;
  overflow: visible;
}

body.overblik-editorial .bp-player-summary p {
  margin: 0 0 8px;
  color: var(--text-2);
  font-size: 13px;
  line-height: 1.48;
}

body.overblik-editorial .bp-platforms {
  margin-top: 14px;
  padding-top: 14px;
}

body.overblik-editorial .bp-platform img {
  width: 44px;
  height: 44px;
}

.site-search-popover {
  box-sizing: border-box;
  position: fixed;
  z-index: 1000;
  top: 0;
  left: 0;
  width: min(260px, calc(100vw - 24px));
  max-width: 260px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.site-search-popover-form {
  width: 100%;
  max-width: 260px;
  padding: 0;
}

.site-search-popover-form label {
  display: none;
}

.site-search-popover-control {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
}

.site-search-popover-control input {
  min-width: 0;
  height: 40px;
  padding-inline: 8px;
  border: 1px solid var(--bp-green-border);
  border-radius: 3px;
  background: var(--bp-surface);
  color: var(--bp-ink);
  font: 600 14px/1 var(--bp-body-font);
}

/* Keep the keyboard-focus treatment within the field so it remains visually
 * level with the adjacent search button. */
.site-search-popover-control input:focus-visible {
  outline-offset: -2px;
}

.site-search-popover-control button {
  display: grid;
  width: 40px;
  min-width: 40px;
  padding: 0;
  place-items: center;
  border: 1px solid var(--bp-news-green);
  border-radius: 3px;
  background: var(--bp-news-green);
  color: #fff;
  cursor: pointer;
}

.site-search-popover-control button svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.9;
}

.site-search-popover-results {
  box-sizing: border-box;
  margin-top: 8px;
  margin-left: var(--site-search-results-offset, 0px);
  width: var(--site-search-results-width, 100%);
  max-width: min(360px, calc(100vw - 24px));
  max-height: min(510px, 70vh);
  overflow-y: auto;
  border: 1px solid var(--bp-grey);
  border-radius: 4px;
  background: var(--bp-surface);
  box-shadow: 0 12px 28px rgb(7 31 50 / 14%);
}

.site-search-popover-list {
  padding: 0 18px;
}

.site-search-popover-status {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 20px;
  color: var(--muted);
  font-size: 12px;
}

.site-search-popover-more {
  position: sticky;
  z-index: 1;
  bottom: 0;
  width: 100%;
  padding: 14px 18px;
  border: 0;
  border-top: 1px solid var(--bp-grey);
  background: var(--bp-surface);
  color: var(--bp-news-green);
  font-size: 12px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 -4px 10px rgb(7 31 50 / 7%);
}

.site-search-popover-more:hover,
.site-search-popover-more:focus-visible {
  background: var(--teal-hover);
}

.site-search-page {
  width: min(920px, 100%);
  margin: 0 auto 72px;
  padding-top: 34px;
}

.site-search-heading {
  padding-bottom: 26px;
  border-bottom: 1px solid var(--bp-grey);
}

.site-search-kicker {
  margin: 0 0 8px;
  color: var(--bp-red);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.site-search-heading .page-title {
  margin: 0 0 10px;
  color: var(--bp-ink);
  font-family: "Emona", Georgia, "Times New Roman", serif;
  font-size: clamp(34px, 5vw, 52px);
  letter-spacing: -.04em;
  line-height: 1;
}

.site-search-heading > p:last-child {
  max-width: 660px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.55;
}

.site-search-form {
  margin: 28px 0 32px;
}

.site-search-form label {
  display: block;
  margin-bottom: 7px;
  color: var(--bp-ink);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.site-search-form > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.site-search-form input {
  min-width: 0;
  height: 48px;
  padding: 0 15px;
  border: 1px solid var(--bp-green-border);
  border-radius: 3px;
  background: var(--bp-surface);
  color: var(--bp-ink);
  font: 600 15px/1 inherit;
}

.site-search-form button {
  min-width: 92px;
  border: 1px solid var(--bp-news-green);
  border-radius: 3px;
  background: var(--bp-news-green);
  color: #fff;
  font: 800 12px/1 inherit;
  cursor: pointer;
}

.site-search-summary {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
}

.site-search-summary h2,
.site-search-summary p {
  margin: 0;
}

.site-search-summary h2 {
  color: var(--bp-ink);
  font: 700 22px/1.2 "Emona", Georgia, serif;
}

.site-search-summary p {
  color: var(--muted);
  font-size: 11px;
}

.site-search-list {
  border-top: 1px solid var(--bp-grey);
}

.site-search-result {
  display: grid;
  gap: 8px;
  padding: 21px 4px;
  border-bottom: 1px solid var(--bp-grey);
  color: inherit;
  text-decoration: none;
}

.site-search-result:hover strong,
.site-search-result:focus-visible strong {
  color: var(--bp-news-green);
}

.site-search-meta {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  color: var(--bp-news-green);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .025em;
}

.site-search-result strong {
  color: var(--bp-ink);
  font: 700 19px/1.2 "Emona", Georgia, serif;
}

.site-search-match {
  background: transparent;
  color: var(--bp-ink);
  font-weight: 850;
}

.site-search-result--compact {
  gap: 5px;
  padding: 14px 0;
}

.site-search-result--compact strong {
  display: -webkit-box;
  overflow: hidden;
  font-size: 16px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.site-search-result--compact .site-search-snippet {
  display: -webkit-box;
  overflow: hidden;
  font-size: 12px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.site-search-result--compact .site-search-open {
  font-size: 10px;
}

.site-search-snippet {
  max-width: 760px;
  color: var(--text-2);
  font-size: 13px;
  line-height: 1.55;
}

.site-search-open {
  color: var(--bp-news-green);
  font-size: 11px;
  font-weight: 800;
}

.site-search-empty,
.site-search-loading {
  padding: 34px 0;
  border-top: 1px solid var(--bp-grey);
  color: var(--muted);
}

.site-search-empty h2,
.site-search-empty p,
.site-search-loading p {
  margin: 0 0 7px;
}

.site-search-popover-control input::placeholder {
  font-size: 12px;
  letter-spacing: -.02em;
}

/* Search replaces its launcher inline at every breakpoint; only returned
 * matches receive dropdown chrome. */
.site-search-trigger--replaced {
  visibility: hidden;
  pointer-events: none;
}

.site-search-popover-list {
  padding: 0 14px;
}

.site-search-popover-status {
  padding: 14px;
}

.site-search-popover-more {
  padding: 12px 14px;
}

@media (max-width: 900px) {
  .site-search-popover,
  .site-search-popover-form {
    width: min(200px, calc(100vw - 24px));
    max-width: 200px;
  }

  .site-search-popover-results {
    max-width: min(340px, calc(100vw - 24px));
  }
}

@media (max-width: 650px) {
  body.startside-editorial .bp-topic-arrow {
    right: 11px;
    bottom: 10px;
    width: 19px;
    height: 19px;
  }

  body.overblik-editorial .bp-player-context[data-bp-context] {
    height: auto;
    max-height: none;
    overflow: visible;
  }

  body.overblik-editorial .bp-platform img {
    width: 46px;
    height: 46px;
  }

  .site-search-page {
    padding-top: 24px;
  }

  .site-search-heading .page-title {
    font-size: 36px;
  }

  .site-search-summary {
    display: block;
  }

  .site-search-summary p {
    margin-top: 4px;
  }

  .site-search-result {
    padding: 18px 0;
  }

  .site-search-popover-results {
    max-height: 62vh;
  }
}
