/* Compact public language control; native language names stay readable in the menu. */
.cardinal-site-language{position:relative;flex:none;display:inline-flex;align-items:center;margin-left:0;z-index:90}
.cardinal-site-language .cardinal-language-trigger{display:inline-flex!important;align-items:center;justify-content:center;gap:6px;width:66px;min-height:38px;padding:6px 2px!important;border:0!important;border-radius:4px!important;background:transparent!important;color:#9eafbb!important;font:500 11px/1 var(--sans,'Funnel Sans',sans-serif)!important;letter-spacing:.04em;box-shadow:none!important;cursor:pointer}
.cardinal-language-trigger svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.4}
.cardinal-site-language .cardinal-language-trigger:hover,.cardinal-site-language .cardinal-language-trigger[aria-expanded=true]{background:transparent!important;color:#eaf3f7!important}
.cardinal-site-language button:focus-visible{outline:2px solid #9cc9d4;outline-offset:3px}
.cardinal-language-menu{position:absolute;top:calc(100% + 10px);left:0;width:224px;box-sizing:border-box;padding:8px;border:1px solid #365261;border-radius:12px;background:#0c1c28;box-shadow:0 18px 48px #0009;isolation:isolate}
.cardinal-language-menu[hidden]{display:none!important}
.cardinal-language-heading{margin:4px 9px 9px!important;color:#91a9b8!important;font:500 11px/1.4 var(--sans,'Funnel Sans',sans-serif)!important;letter-spacing:.03em}
.cardinal-language-menu button{display:grid!important;grid-template-columns:22px 1fr;align-items:center;gap:12px;width:100%;min-height:43px;padding:10px!important;border:1px solid transparent!important;border-radius:7px!important;background:transparent!important;color:#c4d1d9!important;text-align:left;font:450 13px/1.3 var(--sans,'Funnel Sans',sans-serif)!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;cursor:pointer}
.cardinal-language-menu button:hover,.cardinal-language-menu button:focus-visible{background:#1b3443!important;color:#fff!important}
.cardinal-language-menu button[aria-checked=true]{background:#152e3e!important;color:#eaf5fb!important;border-color:#355564!important}
.cardinal-language-preference>div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
/* An odd last language (English, the fifth) sits centred under the pairs at the same width. */
.cardinal-language-preference>div>button:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc((100% - 8px)/2)}
.cardinal-language-preference button{display:flex!important;align-items:center;justify-content:flex-start;gap:10px;min-width:0;min-height:52px;text-align:left}
.cardinal-language-preference button[aria-pressed=true]{border-color:#84c9be;background:rgba(132,201,190,.1)}
/* Fixed shell and text slots keep every language button at the same coordinates. */
body .cardinal-account-modal.cardinal-settings-modal{width:min(520px,100%);height:620px;max-height:calc(100dvh - 32px);display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain}
body .cardinal-settings-modal>header{flex:none}
body .cardinal-settings-modal>.modal-intro{min-height:42px;flex:none}
body .cardinal-settings-modal .cardinal-modal-body{display:flex;flex-direction:column;flex:1;min-height:0}
body .cardinal-settings-modal .cardinal-language-preference{flex:none}
body .cardinal-settings-modal .cardinal-language-preference>header{height:58px;align-content:start;box-sizing:border-box}
body .cardinal-settings-modal .cardinal-language-preference button{height:56px}
body .cardinal-settings-modal .cardinal-settings-note{min-height:59px;margin:0!important}
body .cardinal-settings-modal .cardinal-account-links{margin-top:auto;padding-top:16px;flex:none}
/* Model name and version share the bottom row with the legal links: present, never prominent. */
body .cardinal-settings-modal .cardinal-settings-foot{margin-top:auto;padding-top:16px;flex:none;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px}
body .cardinal-settings-modal .cardinal-settings-foot .cardinal-account-links{margin:0;padding:0}
body .cardinal-settings-modal .cardinal-model-mark{font:400 11px/1.4 var(--terminal-font-family,"JetBrains Mono",monospace);letter-spacing:.04em;color:#7a8e9e;white-space:nowrap;cursor:default}
html[data-cardinal-theme="light"] body .cardinal-settings-modal .cardinal-model-mark{color:#677783}
/* Hovering the model name fades in the Bygg portfölj loading colours (blue, teal, green), which keep flowing
   through the text with a soft glow for as long as the pointer stays. A coloured copy of the text (::after,
   data-mark) sits over the grey one, so the size never changes. */
@supports ((background-clip:text) or (-webkit-background-clip:text)){
body .cardinal-settings-modal .cardinal-model-mark{position:relative;display:inline-block}
body .cardinal-settings-modal .cardinal-model-mark::after{content:attr(data-mark);position:absolute;inset:0;white-space:nowrap;pointer-events:none;background:linear-gradient(90deg,#4b91b8,#55a7a0 25%,#68aa83 50%,#55a7a0 75%,#4b91b8) 0 0/200% 100% repeat-x;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;filter:drop-shadow(0 0 3px rgba(85,167,160,.55)) drop-shadow(0 0 9px rgba(75,145,184,.35));opacity:0;transition:opacity .7s ease;animation:cardinal-model-drift 5s linear infinite;animation-play-state:paused}
body .cardinal-settings-modal .cardinal-model-mark:hover::after{opacity:1;animation-play-state:running}
@keyframes cardinal-model-drift{to{background-position:200% 0}}
@media(prefers-reduced-motion:reduce){body .cardinal-settings-modal .cardinal-model-mark::after{animation:none}}
}
@media(max-width:600px){
 .cardinal-site-language{margin-left:0}
 .cardinal-site-language .cardinal-language-trigger{width:66px;min-height:38px}
 body .cardinal-account-modal.cardinal-settings-modal{padding:22px 20px;height:660px}
 body .cardinal-settings-modal>.modal-intro{min-height:63px}
 body .cardinal-settings-modal .cardinal-language-preference>header{height:76px}
 body .cardinal-settings-modal .cardinal-settings-note{min-height:78px}
 body .cardinal-settings-modal .cardinal-language-preference button b{font-size:13px}
}

.cardinal-language-flag{display:inline-block;width:22px!important;height:15px!important;flex:0 0 22px!important;border:1px solid #506674;border-radius:2px;overflow:hidden;background-size:100% 100%!important;opacity:1!important;box-sizing:content-box}
.cardinal-language-flag[data-flag=sv]{background:linear-gradient(90deg,transparent 29%,#ffce00 29% 42%,transparent 42%),linear-gradient(transparent 40%,#ffce00 40% 60%,transparent 60%),#006aa7!important}
.cardinal-language-flag[data-flag=da]{background:linear-gradient(90deg,transparent 29%,#fff 29% 40%,transparent 40%),linear-gradient(transparent 42%,#fff 42% 58%,transparent 58%),#c8102e!important}
.cardinal-language-flag[data-flag=fi]{background:linear-gradient(90deg,transparent 29%,#003580 29% 45%,transparent 45%),linear-gradient(transparent 38%,#003580 38% 62%,transparent 62%),#fff!important}
.cardinal-language-flag[data-flag=nb]{background:linear-gradient(90deg,transparent 31%,#00205b 31% 40%,transparent 40%),linear-gradient(transparent 44%,#00205b 44% 56%,transparent 56%),linear-gradient(90deg,transparent 26%,#fff 26% 45%,transparent 45%),linear-gradient(transparent 36%,#fff 36% 64%,transparent 64%),#ba0c2f!important}
.cardinal-language-flag[data-flag=gb]{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 30'%3E%3Cpath fill='%23012169' d='M0 0h60v30H0z'/%3E%3Cpath stroke='white' stroke-width='6' d='m0 0 60 30m0-30L0 30'/%3E%3Cpath stroke='%23c8102e' stroke-width='2' d='m0 0 60 30m0-30L0 30'/%3E%3Cpath stroke='white' stroke-width='10' d='M30 0v30M0 15h60'/%3E%3Cpath stroke='%23c8102e' stroke-width='6' d='M30 0v30M0 15h60'/%3E%3C/svg%3E")!important}
html:is([lang=nb],[lang=da],[lang=fi]) body.cardinal-minimal-preview .sidebar nav button:has(:is(.cardinal-nav-watchlist,.cardinal-nav-builder,.cardinal-nav-signals))>span b{font-size:calc(10px * var(--minimal-density-inverse))!important;hyphens:none;overflow-wrap:normal}
html:is([lang=nb],[lang=da],[lang=fi]) body.cardinal-minimal-preview .sidebar nav button:has(:is(.cardinal-nav-watchlist,.cardinal-nav-builder,.cardinal-nav-signals))>span b::after{content:none!important}

html[lang="en"] #landing-root .research-paper-ledger::before{content:"FROM RESEARCH TO MODEL DECISIONS · FIVE DOCUMENTED TRANSLATIONS"}
html[lang="nb"] #landing-root .research-paper-ledger::before{content:"FRA FORSKNING TIL MODELLVALG · FEM DOKUMENTERTE OVERSETTELSER"}
html[lang="da"] #landing-root .research-paper-ledger::before{content:"FRA FORSKNING TIL MODELVALG · FEM DOKUMENTEREDE OVERSÆTTELSER"}
html[lang="fi"] #landing-root .research-paper-ledger::before{content:"TUTKIMUKSESTA MALLIVALINNOIKSI · VIISI DOKUMENTOITUA SOVELLUSTA"}

@media(max-width:960px){
 html[lang=en] .landing-site-header .landing-nav-action::after,html[lang=en] #landing-root [data-dc-tpl="31"]::after{content:'Open' / ''}
 html[lang=nb] .landing-site-header .landing-nav-action::after,html[lang=nb] #landing-root [data-dc-tpl="31"]::after{content:'Åpne' / ''}
 html[lang=da] .landing-site-header .landing-nav-action::after,html[lang=da] #landing-root [data-dc-tpl="31"]::after{content:'Åbn' / ''}
 html[lang=fi] .landing-site-header .landing-nav-action::after,html[lang=fi] #landing-root [data-dc-tpl="31"]::after{content:'Avaa' / ''}
}

html[lang=en] .screener-view .factor-breakdown-popdown[data-source-date]:not([data-source-date=""])::after{content:"DATA UPDATED · " attr(data-source-date)}
html[lang=nb] .screener-view .factor-breakdown-popdown[data-source-date]:not([data-source-date=""])::after{content:"DATA OPPDATERT · " attr(data-source-date)}
html[lang=da] .screener-view .factor-breakdown-popdown[data-source-date]:not([data-source-date=""])::after{content:"DATA OPDATERET · " attr(data-source-date)}
html[lang=fi] .screener-view .factor-breakdown-popdown[data-source-date]:not([data-source-date=""])::after{content:"TIEDOT PÄIVITETTY · " attr(data-source-date)}

/* Nordic audit labels need the full card width rather than breaking inside words. */
html:is([lang=nb],[lang=da],[lang=fi]) .cardinal-minimal-preview :is(.screener-view,.cwp-score-details) .popdown-metric-strip dl{grid-template-columns:minmax(0,1fr)}
html:is([lang=nb],[lang=da],[lang=fi]) .cardinal-minimal-preview :is(.screener-view,.cwp-score-details) .popdown-metric-strip dt{overflow-wrap:normal;hyphens:auto}

@media(max-width:960px){
 html[lang="en"] .cardinal-universe__rows em:nth-child(2)::before{content:'Quality'}
 html[lang="fi"] .cardinal-universe__rows em:nth-child(2)::before{content:'Laatu'}
 html[lang="en"] .cardinal-universe__rows em:nth-child(4)::before{content:'Value'}
 html[lang="nb"] .cardinal-universe__rows em:nth-child(4)::before{content:'Verdi'}
 html[lang="da"] .cardinal-universe__rows em:nth-child(4)::before{content:'Værdi'}
 html[lang="fi"] .cardinal-universe__rows em:nth-child(4)::before{content:'Arvo'}
}

/* Quiet language utility, followed by the two account/platform actions. */
.cardinal-language-trigger .cardinal-language-flag{width:18px!important;height:12px!important;flex-basis:18px!important;border:0;opacity:.82!important}
.cardinal-language-trigger:hover .cardinal-language-flag,.cardinal-language-trigger[aria-expanded=true] .cardinal-language-flag{opacity:1!important}
@media(max-width:960px){.cardinal-language-menu{left:auto;right:0}}
/* iOS Safari zooms the page into any text field under 16px and stays zoomed. Phones on iOS only, portrait and landscape (the -webkit-touch-callout
   test), so desktop and Android keep the designed sizes. The :root:root prefix outranks component rules such as the
   Bolagsanalys switcher's own !important size (review S-02, 5 Oct 2026). */
@supports (-webkit-touch-callout:none){@media (max-width:760px),(max-height:500px){:root:root body input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=button]):not([type=submit]),:root:root body select,:root:root body textarea{font-size:16px!important}}}

/* Shared terminal geometry: translated labels determine their column's minimum
   width. Keep the scroll inside each ledger, rather than drawing text over the
   next column. Load after minimal-preview.css and cardinal-localization.css. */
.cardinal-minimal-preview .screener-view .table-shell,
.cardinal-minimal-preview .cr-review .cr-table-scroll {
  max-width:100%;
  overflow:auto;
  overscroll-behavior-inline:contain;
}
.cardinal-minimal-preview .screener-view .company-table {
  table-layout:auto;
  width:100%!important;
  min-width:100%!important;
}
/* Factor percentiles sit as one block (68px around a 44px cell); a longer
   translated header widens its own column through the header's max-content. */
.cardinal-minimal-preview .screener-view .company-table :is(th.factor-column,td.factor-cell) {
  width:68px!important;
  min-width:68px!important;
  max-width:none!important;
  padding-inline:6px!important;
}
.cardinal-minimal-preview .screener-view .company-table :is(th,td).company-column+:is(th.factor-column,td.factor-cell) {
  padding-left:12px!important;
}
.cardinal-minimal-preview .screener-view .company-table :is(th.factor-column,td.factor-cell):has(+.profile-column) {
  padding-right:12px!important;
}
/* Composite and market-cap columns fit their longest translated header
   (Finnish: "Faktoripisteet ↕" 92px, "Markkina-arvo ↕" 106px incl. padding). */
.cardinal-minimal-preview .screener-view .company-table :is(th.composite-column,td.composite-cell) {
  width:92px!important;
  min-width:92px!important;
  max-width:none!important;
}
.cardinal-minimal-preview .screener-view .company-table :is(th.market-cap-column,td.market-cap-cell) {
  width:106px!important;
  min-width:106px!important;
  max-width:106px!important;
  padding-inline:12px!important;
}
/* The app frame is zoomed (0.9), which turns the sticky company column's
   collapsed 1px border into a sub-pixel line that Chrome drops on some rows.
   Draw the divider inside the sticky cell instead. */
.cardinal-minimal-preview .screener-view .company-table :is(th,td).company-column {
  border-right:0!important;
}
.cardinal-minimal-preview .screener-view .company-table :is(th,td).company-column::after {
  content:"";
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  width:1px;
  background:var(--line);
  pointer-events:none;
}
.cardinal-minimal-preview .screener-view .company-table :is(th.composite-column,td.composite-cell)~.numeric {
  width:auto!important;
  min-width:96px;
  padding-inline:12px!important;
  transform:none!important;
}
.cardinal-minimal-preview .screener-view .company-table thead th>button,
.cardinal-minimal-preview .screener-view .company-table thead th>button>span {
  width:auto;
  min-width:max-content;
  max-width:none;
  overflow:visible!important;
  white-space:nowrap!important;
  text-overflow:clip;
  transform:none!important;
}
.cardinal-minimal-preview .screener-view .company-table th.composite-column~th.numeric>button {
  width:100%;
  justify-content:flex-end;
}
.cardinal-minimal-preview .screener-view .company-table tbody>tr:not(.factor-detail-row)>td.composite-cell~td.numeric {
  text-align:right!important;
  padding-inline:12px!important;
}

/* Auto layout honours the full sort-label width, including its direction icon. */
.cardinal-minimal-preview .cr-review .cr-table {
  table-layout:auto;
}
.cardinal-minimal-preview .cr-review .cr-holdings-table .cr-col-factor {
  width:96px;
  min-width:96px;
  padding-inline:10px!important;
}
.cardinal-minimal-preview .cr-review .cr-holdings-table th:nth-child(9) {
  width:112px;
  min-width:112px;
}
.cardinal-minimal-preview .cr-review .cr-holdings-table .cr-col-review {
  min-width:160px;
}
.cardinal-minimal-preview .cr-review .cr-table th button {
  min-width:max-content;
  white-space:nowrap;
}

/* Builder has one shared grid for labels and data at every viewport size.
   Narrow panels scroll the entire ledger together; labels and rows never use
   separate mobile column mappings. Controls keep their existing touch width. */
.cardinal-minimal-preview .builder-view .holdings-panel {
  overflow-x:auto;
  overscroll-behavior-inline:contain;
}
.cardinal-minimal-preview .builder-view :is(.holdings-head,.holdings-list) {
  min-width:430px;
  box-sizing:border-box;
}
.cardinal-minimal-preview .builder-view :is(.holdings-head,.holding-row) {
  grid-template-columns:28px minmax(104px,1fr) 138px 100px;
  column-gap:8px;
  padding-inline:18px;
}
.cardinal-minimal-preview .builder-view .holdings-head>span:first-child {
  grid-column:2;
  grid-row:1;
}
.cardinal-minimal-preview .builder-view .holdings-head>button {
  display:block!important;
  grid-row:1!important;
  min-width:0;
  padding-inline:0;
  white-space:normal;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
  transform:none!important;
}
.cardinal-minimal-preview .builder-view .holdings-head>button:first-of-type {
  grid-column:3;
  text-align:center;
}
.cardinal-minimal-preview .builder-view .holdings-head>button:nth-of-type(2) {
  grid-column:4;
  text-align:right;
}
.cardinal-minimal-preview .builder-view .holding-row .weight-stepper {
  grid-column:3;
  grid-row:1/3;
  width:138px;
}
.cardinal-minimal-preview .builder-view .holding-composite-column {
  grid-column:4;
  grid-row:1/3;
}

/* Compact navigation copy wraps only between words, in all five languages. */
html body.cardinal-minimal-preview .sidebar nav button>span b,
html body.cardinal-minimal-preview .sidebar nav button:has(:is(.cardinal-nav-watchlist,.cardinal-nav-builder,.cardinal-nav-signals))>span b,
html body.cardinal-minimal-preview .sidebar nav button>span b::after {
  hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Status and research labels retain the natural case supplied by each locale. */
.cardinal-minimal-preview :is(.held-badge,.watch-badge,.archetype-guide-kind,.archetype-guide-basis,.archetype-guide-subject) {
  text-transform:none!important;
}
.cardinal-minimal-preview .cr-review .rq-issues>em>i{ text-transform:none!important;letter-spacing:0 }

/* Holdings stay beside analytics with the original workspace columns down to
   the original 1120px breakpoint; the ledger's minimum fits that narrowest panel.
   Below it, holdings stack above analytics. */
@media(max-width:1120px){
 .cardinal-minimal-preview .builder-view .builder-workspace{display:flex;flex-direction:column}
 .cardinal-minimal-preview .builder-view :is(.holdings-panel,.builder-analytics){width:100%;box-sizing:border-box}
 .cardinal-minimal-preview .builder-view .holdings-panel{order:0}
 .cardinal-minimal-preview .builder-view .builder-analytics{order:1}
}

@media(max-width:600px){
 .cardinal-minimal-preview .builder-view :is(.holdings-head,.holdings-list){min-width:0;width:100%}
 .cardinal-minimal-preview .builder-view :is(.holdings-head,.holding-row){grid-template-columns:24px minmax(0,1fr) 138px 88px;padding-inline:10px;gap:6px}
 .cardinal-minimal-preview .builder-view .holdings-head>span:first-child{grid-column:2/-1}
 .cardinal-minimal-preview .builder-view .holdings-head>button{grid-row:2!important}
 .cardinal-minimal-preview .builder-view .holding-name{grid-column:2/-1;grid-row:1}
 .cardinal-minimal-preview .builder-view .holding-name>strong{white-space:normal;line-height:1.4}
 .cardinal-minimal-preview .builder-view .holding-archetype-tag{grid-column:2/-1;grid-row:2}
 .cardinal-minimal-preview .builder-view .holding-row .weight-stepper{grid-column:3;grid-row:3;width:138px}
 .cardinal-minimal-preview .builder-view .holding-row .holding-composite-column{display:block!important;grid-column:4;grid-row:3}
 .cardinal-minimal-preview .builder-view .remove-holding{grid-row:1/4}
}

/* Keep long localized closing headings within small phone gutters. */
@media(max-width:374px){html #landing-root #cta>h2{font-size:30px!important;line-height:1.12!important}}

/* One composition for the home page and every marketing destination. The header's "Öppna plattformen" is the
   same action blue as the pages' primary buttons (October 2, 2026; it was a navy pill that barely stood out). */
html :is(body,#landing-root) .landing-site-header:has(.landing-account-actions){
  box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:0!important;
  position:relative!important;top:auto!important;z-index:40!important;
  padding:0 5%!important;height:82px!important;min-height:82px!important;
  border-bottom:1px solid rgba(154,171,187,.14)!important;background:transparent!important;
  backdrop-filter:none!important;font-family:"Funnel Sans",sans-serif;
}
html .landing-site-header:has(.landing-account-actions)>a:first-child{
  display:inline-flex!important;align-items:center;justify-self:start;width:131px;min-height:44px;
  padding:0!important;transform:none!important;
}
/* The public header carries the stacked lockup: "Cardinal" in Schibsted Grotesk with NORDIC underneath
   (the login screen's lockup, 131×34). `content` swaps it in on every public page from one place. */
html .landing-site-header .cardinal-brand-lockup{display:block;width:131px!important;height:34px!important;transform:none!important;content:url('/assets/cardinal-lockup-stacked-dark.svg?v=e1dd007047')}
html[data-cardinal-theme="light"] .landing-site-header .cardinal-brand-lockup{content:url('/assets/cardinal-lockup-stacked-light.svg?v=e1dd007047')}
html .landing-site-header .landing-page-links>a{color:#a5b4c2!important;transition:color .18s ease!important}
html .landing-site-header .landing-page-links>a:is(:hover,:focus-visible,.is-active,[aria-current="page"]){color:#eef4f8!important}
html :is(body,#landing-root) .landing-site-header .landing-account-actions>:is(.landing-nav-action,[data-dc-tpl="31"]){
  display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;
  background:#4b91b8!important;border:1px solid transparent!important;
  border-radius:999px!important;color:#04121c!important;text-decoration:none!important;
  box-shadow:none!important;transition:background .18s ease,border-color .18s ease!important;
}
html :is(body,#landing-root) .landing-site-header .landing-account-actions>:is(.landing-nav-action,[data-dc-tpl="31"]):hover{
  background:#5ba0c6!important;border-color:transparent!important;
}
@media(min-width:961px){
  html :is(body,#landing-root) .landing-site-header:has(.landing-account-actions){
    display:grid!important;grid-template-columns:131px 66px minmax(0,1fr) 280px!important;
    align-items:center;gap:24px!important;
  }
  html .landing-site-header:has(.landing-account-actions)>nav{display:contents!important}
  html :is(body,#landing-root) .landing-site-header .landing-page-links{grid-column:3;justify-self:center;gap:24px!important}
  html :is(body,#landing-root) .landing-site-header .landing-account-actions{
    grid-column:4;grid-row:1;justify-self:end;display:grid!important;grid-template-columns:110px 154px;
    align-items:center;gap:16px!important;width:280px;
  }
  html .landing-site-header .cardinal-site-language{grid-column:2;grid-row:1}
  html .landing-site-header .landing-login-link{grid-column:1;grid-row:1;justify-self:stretch}
  html .landing-site-header .landing-account-actions>:is(.landing-nav-action,[data-dc-tpl="31"]){grid-column:2;grid-row:1}
  html :is(body,#landing-root) .landing-site-header .landing-account-actions>a{
    width:100%!important;height:38px!important;padding:0 12px!important;
    font:500 14px/1.4 "Funnel Sans",sans-serif!important;letter-spacing:0!important;white-space:nowrap;
  }
  html .landing-site-header .landing-login-link[hidden]{display:inline-flex!important;visibility:hidden}
}
@media(min-width:961px) and (max-width:1100px){
  html :is(body,#landing-root) .landing-site-header:has(.landing-account-actions){
    padding-inline:16px!important;grid-template-columns:131px 60px minmax(0,1fr) 252px!important;gap:12px!important;
  }
  html :is(body,#landing-root) .landing-site-header .landing-page-links{gap:10px!important}
  html :is(body,#landing-root) .landing-site-header .landing-account-actions{width:252px;grid-template-columns:114px 128px;gap:10px!important}
  html .landing-site-header .cardinal-language-trigger{width:60px}
}
@media(max-width:960px){
  html :is(body,#landing-root) .landing-site-header:has(.landing-account-actions){
    display:flex!important;align-items:center;flex-wrap:nowrap!important;gap:8px!important;
    padding:0 20px!important;height:112px!important;min-height:112px!important;
  }
  html .landing-site-header:has(.landing-account-actions)>nav{display:flex!important;flex:none}
  html .landing-site-header .landing-account-actions{display:flex!important;gap:0!important;flex:none}
  html .landing-site-header .landing-account-actions>:is(.landing-nav-action,[data-dc-tpl="31"]){width:62px;height:44px;min-height:44px;padding:0 8px!important}
  html .landing-site-header .cardinal-language-trigger{width:60px;min-height:44px}
  html .landing-site-header .mobile-site-menu{margin-left:auto}
}
/* Phones: the stacked lockup a touch smaller, so the longest menu labels (Finnish) stay inside the screen. */
@media(max-width:400px){
  html .landing-site-header:has(.landing-account-actions)>a:first-child{width:118px}
  html .landing-site-header .cardinal-brand-lockup{width:118px!important;height:auto!important}
}
@media(max-width:374px){
  html :is(body,#landing-root) .landing-site-header:has(.landing-account-actions){padding-inline:12px!important;gap:6px!important}
  html .landing-site-header:has(.landing-account-actions)>a:first-child{width:93px}
  /* Too narrow for the NORDIC line to stay legible: the single-line lockup, as before. */
  html .landing-site-header .cardinal-brand-lockup{width:93px!important;height:auto!important;content:url('/assets/cardinal-lockup-dark.svg?v=d977ba9331')}
  html[data-cardinal-theme="light"] .landing-site-header .cardinal-brand-lockup{content:url('/assets/cardinal-lockup-light.svg?v=d977ba9331')}
  html .landing-site-header .mobile-site-menu summary{padding-inline:7px}
  html .landing-site-header .cardinal-language-trigger{width:50px;gap:4px}
}

/* The language menu follows the landing pages (October 2, 2026): the page's own navy instead of a blue
   panel, rows divided by hairlines like the FAQ and Blueprint lists, a mono code like the section
   labels, and no filled rows: the current language is simply the bright one. */
.cardinal-site-language .cardinal-language-menu{
  width:216px;padding:4px 16px;border:1px solid rgba(238,243,247,.12);border-radius:12px;
  background:#07121e;box-shadow:0 18px 44px rgba(0,4,10,.55);
}
.cardinal-language-menu .cardinal-language-heading{display:none}
.cardinal-site-language .cardinal-language-menu button{
  grid-template-columns:18px 1fr auto;gap:12px;min-height:44px;padding:0!important;
  font:400 14px/1.3 "Funnel Sans",sans-serif!important;color:#8ea3b2!important;
  border:0!important;border-bottom:1px solid rgba(238,243,247,.08)!important;border-radius:0!important;
  background:transparent!important;transition:color .18s ease;
}
.cardinal-site-language .cardinal-language-menu button:last-child{border-bottom:0!important}
.cardinal-site-language .cardinal-language-menu button::after{
  font:500 10px "Spline Sans Mono",monospace;letter-spacing:.12em;color:#7f929e;transition:color .18s ease;
}
.cardinal-site-language .cardinal-language-menu button[data-language=sv]::after{content:"SV"}
.cardinal-site-language .cardinal-language-menu button[data-language=nb]::after{content:"NO"}
.cardinal-site-language .cardinal-language-menu button[data-language=da]::after{content:"DA"}
.cardinal-site-language .cardinal-language-menu button[data-language=fi]::after{content:"FI"}
.cardinal-site-language .cardinal-language-menu button[data-language=en]::after{content:"EN"}
.cardinal-language-menu .cardinal-language-flag{width:18px!important;height:12px!important;flex-basis:18px!important;border:0;opacity:.85!important}
.cardinal-site-language .cardinal-language-menu button[aria-checked=true]{background:transparent!important;color:#eef3f7!important}
.cardinal-site-language .cardinal-language-menu button:is(:hover,:focus-visible){background:transparent!important;color:#eef3f7!important}
.cardinal-site-language .cardinal-language-menu button:is(:hover,:focus-visible,[aria-checked=true])::after{color:#eef3f7}
.cardinal-site-language .cardinal-language-menu button:focus-visible{outline:2px solid #4b91b8;outline-offset:2px;border-radius:4px!important}
@media(prefers-reduced-motion:reduce){.cardinal-site-language .cardinal-language-menu button,.cardinal-site-language .cardinal-language-menu button::after{transition:none}}
@media(prefers-reduced-motion:reduce){html .landing-site-header a{transition:none!important}}

/* Account access remains visible without competing with the primary action. */
html :is(body,#landing-root) .landing-site-header .landing-account-actions>.landing-login-link{
  background:transparent!important;border:0!important;box-shadow:none!important;color:#adbdcc!important;
}
html :is(body,#landing-root) .landing-site-header .landing-account-actions>.landing-login-link:is(:hover,:focus-visible){color:#eef4f8!important;background:transparent!important}
html .landing-site-header>.cardinal-site-language .cardinal-language-menu{left:0;right:auto}
@media(max-width:960px){html .landing-site-header>.cardinal-site-language .cardinal-language-menu{left:-72px;right:auto}}
