/* Intentionally isolated: no desktop selectors or declarations outside this guard. */
@media (max-width: 760px) {
  .landing-site-header,
  .strategy-page .landing-site-header,
  #landing-root .landing-site-header {
    position: relative; z-index: 40; gap: 8px; min-height: 72px; height: auto;
    padding: 10px 16px; width: 100%; margin: 0; overflow: visible;
  }
  .landing-site-header > nav { gap: 0; }
  .landing-site-header > nav > a:not(.landing-nav-action):not([data-dc-tpl="31"]) { display: none; }
  .landing-brand, #landing-root [data-dc-tpl="15"] { flex-shrink: 0; min-height: 44px; }
  .landing-site-header .landing-nav-action,
  #landing-root [data-dc-tpl="31"] {
    display: inline-flex; align-items: center; justify-content: center;
    min-height: 44px; padding: 0 12px !important; white-space: nowrap;
    font-size: 0 !important;
  }
  .landing-nav-action > span { display: none; }
  .landing-site-header .landing-nav-action::after,
  #landing-root [data-dc-tpl="31"]::after { content: 'Öppna ↗' / ''; font-size: 12px; }
  .mobile-site-menu { position: static; margin-left: auto; }
  .mobile-site-menu summary {
    display: flex; align-items: center; justify-content: center; gap: 6px;
    min-height: 44px; padding: 0 10px; border: 1px solid #2b465d; border-radius: 6px;
    color: #dce7ec; background: #091725; cursor: pointer;
    font: 550 13px/1.2 'Inter Tight', sans-serif; list-style: none;
  }
  .mobile-site-menu summary::-webkit-details-marker { display: none; }
  .mobile-site-menu summary::after { content: '+'; font-size: 18px; }
  .mobile-site-menu[open] summary::after { content: '−'; }
  .landing-site-header .mobile-site-menu-links {
    position: absolute; top: calc(100% - 1px); right: 16px;
    display: grid; gap: 2px; width: min(320px, calc(100vw - 32px)); padding: 8px;
    border: 1px solid #2b465d; border-radius: 8px;
    background: #091725; box-shadow: 0 18px 40px #0006;
  }
  .landing-site-header .mobile-site-menu-links > a {
    display: flex; align-items: center; min-height: 48px; padding: 10px 14px;
    color: #dce7ec; font: 500 15px/1.4 'Inter Tight', sans-serif;
  }
  .landing-site-header .mobile-site-menu-links > a::after { content: none; }
  .mobile-site-menu summary:focus-visible, .mobile-site-menu-links a:focus-visible {
    outline: 2px solid #84c9be; outline-offset: 3px;
  }

  /* Homepage: get the product into view sooner without removing content. */
  #landing-root [data-dc-tpl="32"] { padding-top: 32px !important; padding-bottom: 48px !important; gap: 28px !important; }
  #landing-root [data-dc-tpl="36"] { font-size: clamp(38px, 11.4vw, 48px) !important; line-height: 1.04 !important; }
  #landing-root [data-dc-tpl="38"] { margin-top: 18px !important; font-size: 16px !important; line-height: 1.55 !important; }
  #landing-root [data-dc-tpl="43"] { margin-top: 22px !important; gap: 8px !important; }
  #landing-root [data-dc-tpl="44"], #landing-root [data-dc-tpl="45"] { min-height: 48px; font-size: 13px !important; justify-content: center; }
  #landing-root .hero-trust-line { margin-top: 14px !important; }
  #landing-root .hero-trust-line a { display: inline; min-height: 0; }
  #landing-root [data-dc-tpl="56"] { margin-top: 12px !important; }
  #landing-root [data-dc-tpl="63"] { align-items: stretch !important; gap: 12px !important; }
  #landing-root [data-dc-tpl="66"] { font-size: 20px !important; }
  #landing-root [data-dc-tpl="70"] { width: 100%; flex-direction: row !important; align-items: center !important; gap: 12px !important; }
  #landing-root [data-dc-tpl="71"] { width: 64px !important; height: 64px !important; }
  #landing-root [data-dc-tpl="77"] { font-size: 28px !important; }
  #landing-root [data-dc-tpl="85"] { grid-template-columns: 96px minmax(0, 1fr) 28px !important; gap: 8px !important; }
  .holding-company { min-width: 0; }
  .holding-company b { white-space: normal; overflow-wrap: anywhere; line-height: 1.3; }
  #landing-root [data-dc-tpl="126"] { flex-basis: 100% !important; max-width: 100%; min-width: 0 !important; padding: 24px 20px !important; }
  #landing-root [data-dc-tpl="127"] { flex-wrap: wrap; gap: 12px !important; }
  #landing-root [data-dc-tpl="132"] { grid-template-columns: minmax(0, 1fr) !important; gap: 16px !important; }
  #landing-root [data-dc-tpl="133"] { width: 116px !important; height: 116px !important; justify-self: center; }
  #landing-root [data-dc-tpl="139"] { grid-template-columns: 96px minmax(0, 1fr) 24px !important; gap: 8px !important; font-size: 11px !important; }
  #landing-root [data-dc-tpl="150"] { align-items: flex-start !important; flex-direction: column; gap: 8px !important; padding-top: 12px !important; padding-bottom: 12px !important; }
  #landing-root [data-dc-tpl="151"] { font-size: 10px; line-height: 1.5; }
  .blueprint-carousel-controls { flex-wrap: wrap; gap: 12px; }
  .blueprint-carousel-controls button { min-width: 44px; min-height: 44px; }
  .wl-input { font-size: 16px !important; }
  .wl-seg { flex-wrap: wrap; }
  #mb-showcase .mb-base { width: 100%; margin: 0; }

  /* Replace the miniature, sideways-scrolling factor table with company cards. */
  .cardinal-outcomes { padding: 56px 0; }
  .cardinal-outcomes-head { gap: 20px; margin-bottom: 24px; }
  .cardinal-outcomes-head h2 { font-size: 36px; }
  .cardinal-outcomes-head p { font-size: 16px; line-height: 1.6; }
  .cardinal-flow-spine::before, .cardinal-flow-spine::after { left: 12px; }
  .cardinal-flow-step { padding: 40px 0 28px 32px; gap: 24px; }
  .cardinal-flow-node { left: 12px; top: 40px; width: 28px; height: 28px; }
  .cardinal-flow-copy h3 { font-size: 30px; margin-top: 14px; }
  .cardinal-flow-copy p { font-size: 15px; line-height: 1.65; }
  .cardinal-flow-copy a { min-height: 44px; margin-top: 14px; font-size: 11px; line-height: 1.5; }
  .cardinal-flow-copy > span { font-size: 10px; }
  .cardinal-flow-instrument > header, .cardinal-flow-instrument > footer {
    display: grid; gap: 6px; padding: 12px; font-size: 10px; line-height: 1.5; color: #91a7b6;
  }
  .cardinal-flow-instrument > header b, .cardinal-flow-instrument > footer b { text-align: left; }
  .cardinal-universe-table > * { min-width: 0; }
  .cardinal-universe__head { display: none; }
  .cardinal-universe__rows article { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 10px; padding: 16px 12px; }
  .cardinal-universe__rows .cardinal-company { grid-column: 1 / -1; }
  .cardinal-company strong { font-size: 14px; }
  .cardinal-company small { font-size: 11px; color: #91a7b6; }
  .cardinal-universe__rows em { font-size: 10px; line-height: 1.4; text-align: left; background: linear-gradient(#102438, #102438) bottom / 100% 3px no-repeat; }
  .cardinal-universe__rows em::before { position: static; display: block; height: auto; margin-bottom: 6px; color: #91a7b6; background: none; font-size: 10px; }
  .cardinal-universe__rows em:nth-child(2)::before { content: 'Kvalitet'; }
  .cardinal-universe__rows em:nth-child(3)::before { content: 'Momentum'; }
  .cardinal-universe__rows em:nth-child(4)::before { content: 'Värde'; }
  .cardinal-factor-hex { max-width: 100%; }
  .cardinal-hex-legend span { font-size: 11px; }
  .cardinal-construction__rules { padding: 18px; }
  .cardinal-construction__rules > small, .cardinal-construction__rules dt { font-size: 10px; line-height: 1.4; }
  .cardinal-construction__rules dd { font-size: 14px; }
  .cardinal-flow-joint span { font-size: 8px; line-height: 1.4; white-space: normal; }

  /* Shared reading rhythm and touch targets across the secondary pages. */
  .research-page main { width: calc(100% - 32px); }
  .method-opening, .secondary-opening { padding-top: 32px !important; padding-bottom: 48px !important; }
  .method-title-row { margin-top: 22px; gap: 24px; }
  .method-title-row h1, .portfolio-opening h1 { font-size: clamp(38px, 11.4vw, 48px); line-height: 1.08; }
  .method-title-row > p, .opening-copy > p, .strategy-deep-lead { font-size: 16px; line-height: 1.65; }
  .portfolio-opening .opening-copy > p:first-child { font-size: 11px; line-height: 1.6; }
  .research-page .section-heading h2, .portfolio-page .section-heading h2,
  .portfolio-page .tool-story-copy h3, .research-page .fchart h2 { font-size: 34px; line-height: 1.1; }
  .research-page .landing-final-cta h2, .portfolio-page .landing-final-cta h2,
  .portfolio-page .portfolio-final-cta h2, .strategy-deep-cta h2 { font-size: 36px; line-height: 1.1; }
  .opening-actions a, .landing-final-cta a, .portfolio-final-cta a,
  .strategy-deep-cta a, .tool-story-copy > a { min-height: 48px; font-size: 13px; line-height: 1.5; }
  .site-footer nav a { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; }
  .site-footer > p { font-size: 12px; line-height: 1.6; }
  .risk-premium-definition { margin-top: 32px; }
  .risk-premium-definition > article { padding: 20px; }
  .proof-factor-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
  .proof-factor-tabs button { min-width: 0; width: auto; min-height: 56px; font-size: 13px; }
  .proof-factor-tabs button span { font-size: 13px; }
  .proof-factor-tabs button:nth-child(2n) { border-right: 0; }
  .proof-factor-tabs button:nth-child(-n+4) { border-bottom: 1px solid var(--line); }
  .factor-index a { min-height: 44px; font-size: 12px; }
  .translation-chain li { min-height: 0; padding: 20px; }
  .translation-chain li p { font-size: 14px; line-height: 1.65; }
  .dossier-table a { display: inline-flex; align-items: center; min-height: 44px; font-size: 13px; }
  .fchart-control button { min-height: 44px; min-width: 44px; font-size: 12px; }

  /* Portfolio examples retain every metric, with labels alongside each value. */
  .portfolio-page { background-attachment: scroll; }
  .portfolio-page .tool-suite-nav { position: static; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; overflow: visible; }
  .portfolio-page .tool-suite-nav a { min-width: 0; min-height: 52px; gap: 8px; padding: 8px 10px; font-size: 12px; }
  .portfolio-page .tool-suite-nav a strong { font-size: 12px; overflow-wrap: anywhere; }
  .portfolio-page .datahubb-exhibit--hero svg { width: 100%; margin-left: 0; }
  .portfolio-page .tool-story--blueprint { padding-left: 14px; padding-right: 14px; }
  .portfolio-page .tool-story-copy > span { font-size: 15px; line-height: 1.65; }
  .portfolio-page .screener-exhibit__head { display: none; }
  .portfolio-page .screener-exhibit__rows, .portfolio-page .screener-exhibit > footer,
  .portfolio-page .screener-exhibit__rows article { min-width: 0; }
  .portfolio-page .screener-exhibit__filter { display: flex; flex-wrap: wrap; gap: 8px; }
  .portfolio-page .screener-exhibit__rows article { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px 8px; padding: 16px 12px; }
  .portfolio-page .screener-exhibit__rows article > .portfolio-company-id { grid-column: 1 / -1; }
  .portfolio-page .screener-exhibit__rows .portfolio-company-id small { font-size: 11px; }
  .portfolio-page .tool-story[data-step="02"] .screener-exhibit__rows article > i[data-factor] {
    display: flex; justify-content: center; gap: 8px; width: 100%; height: 36px; font-size: 14px;
  }
  .screener-exhibit__rows article > i[data-factor]::before { content: attr(data-factor); font-size: 11px; opacity: .8; }

  /* Blueprints: contained swipe cards, legible controls and compact openings. */
  .strategy-page .strategy-deep-hero { padding-top: 32px !important; padding-bottom: 40px !important; }
  .strategy-deep-hero h1 { font-size: clamp(38px, 11.4vw, 48px); }
  .strategy-deep-cards { margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; }
  .strategy-deep-card { flex-basis: 100%; min-width: 0; }
  .strategy-signal-path header button { min-height: 44px; font-size: 12px; }
  .strategy-build-panel { padding: 20px; }
  .strategy-rule-ledger dt { font-size: 11px; line-height: 1.4; }
  .strategy-rule-ledger dd { font-size: 14px; line-height: 1.5; }
  .strategy-preference-grid article { padding: 20px; }
  .strategy-holdings-ledger article strong, .strategy-holdings-ledger article em { font-size: 12px; }

  body.strategy-build-page { overflow: auto; }
  .strategy-build-loading { min-height: 100svh; padding: 24px 16px; }
  .strategy-build-loading-card > p { font-size: 14px; }
  .strategy-build-kicker, .strategy-build-context dt, .strategy-build-readout { font-size: 11px; line-height: 1.4; }
  .strategy-build-context dd { font-size: 13px; white-space: normal; }
  .strategy-build-loading-card > footer { flex-wrap: wrap; gap: 8px 20px; }
  .strategy-build-loading-card > footer a { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; }
}
