/* Explore S9. Expressive page titles; reading and controls keep the system font. */
@font-face {
  font-family: "Major Mono Display";
  src: url("/fonts/major-mono-display.woff2") format("woff2");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}

.explore-shell {
  --ink: #191919;
  --muted: #5c5b56;
  --line: #d8d6cf;
  --accent: #6e592e;
  --paper: #ffffff;
  --panel: #f4f2ec;
  --headline-font: "Major Mono Display", "Courier New", monospace;
  --headline-weight: 400;
  --headline-tracking: 0;
  background: var(--paper);
  color: var(--ink);
}

.explore-shell a { color: var(--accent); text-underline-offset: .2em; }
.explore-shell .site-header { border-color: var(--line); }
.explore-shell .site-brand {
  font-family: "Major Mono Display", "Courier New", monospace;
  font-size: clamp(1.6rem, 3vw, 2rem);
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.3;
  color: var(--ink);
}
.explore-shell .site-nav a,
.explore-shell .suite-nav > a { color: var(--ink); }
.explore-shell .site-nav a { font-weight: 550; }

.portal-hero h1,
.guide-content h1,
.list-heading h2 {
  font-family: var(--headline-font);
  font-weight: var(--headline-weight);
  letter-spacing: var(--headline-tracking);
  text-wrap: balance;
  overflow-wrap: anywhere;
  color: var(--ink);
}
.portal-hero h1 {
  max-width: 1000px;
  font-size: clamp(1.8rem, 4.8vw, 3.5rem);
  line-height: 1.23;
  margin-block: 20px 24px;
}
.guide-content h1 {
  font-size: clamp(1.6rem, 3.6vw, 2.85rem);
  line-height: 1.3;
  margin-block: 20px 24px;
}
.list-heading h2 {
  font-size: clamp(1.1rem, 2.5vw, 1.5rem);
  line-height: 1.45;
  margin-block: 0;
}
.list-heading { padding-block: 12px; border-bottom: 1px solid var(--line); }
.article-kicker,
.guide-content .eyebrow { color: var(--accent); letter-spacing: .14em; }
.article-lead { max-width: 66ch; }
.guide-content h2 { font-weight: 600; letter-spacing: -.02em; }

/* Cyrillic and Arabic keep their native letterforms and shaping. */
html:is(:lang(bg), :lang(ru), :lang(uk)) .explore-shell {
  --headline-font: system-ui, sans-serif;
  --headline-weight: 500;
  --headline-tracking: -.02em;
}
html:lang(ar) .explore-shell {
  --headline-font: system-ui, sans-serif;
  --headline-weight: 600;
  --headline-tracking: normal;
}
html:lang(ar) .guide-content h2 { letter-spacing: normal; }

.guide-card,
.profile-card,
.mobility-grid article,
.height-converter,
.path-links a {
  border-color: var(--line);
  border-radius: 3px;
  background: #fff;
}
.path-links a { padding-block: 20px; color: var(--ink); font-weight: 550; }
.path-links a:hover,
.guide-card:hover { border-color: var(--ink); }
.guide-card-meta { font-size: 11px; letter-spacing: .025em; }
.guide-card h3 { font-weight: 600; }
.guide-card h3 a { color: var(--ink); }
.guide-card .guide-read { color: var(--accent); }
.guide-hero { border-radius: 3px; background: var(--panel); }
.guide-hero figcaption { background: var(--paper); }
.guide-filters :is(input, select, button),
.reading-language select,
.height-converter input { border-color: #b8b5ad; border-radius: 3px; }
.height-converter button,
.primary-link { background: var(--ink); border-color: var(--ink); color: #fff; border-radius: 3px; }
.journey-panel,
.portal-note,
.tfm-next-steps { background: var(--panel); border-color: var(--line); border-radius: 3px; }
.journey-actions a,
.tfm-next-links a,
.guide-toc,
.article-table-scroll,
.language-suggestion { border-color: var(--line); border-radius: 3px; }
.tfm-next-links a { color: var(--ink); }
.module-menu nav { border-color: var(--line); border-radius: 3px; }
.module-menu nav a { color: var(--ink); }
.module-menu nav a:hover { background: var(--panel); }
.article-table :is(caption, th) { background: var(--panel); }
.explore-shell :is(a, input, select, button, summary):focus-visible {
  outline: 2px solid var(--ink);
  outline-offset: 4px;
}

@media (max-width: 620px) {
  .portal-hero { padding-block: 32px; }
  .portal-hero h1 { font-size: clamp(1.65rem, 7.4vw, 2.15rem); }
  .guide-content h1 { font-size: clamp(1.5rem, 6.7vw, 1.9rem); }
  .list-heading { align-items: flex-start; gap: 12px; }
  .result-count { flex-shrink: 0; font-size: 12px; }
  .path-links a { padding-block: 16px; }
}

/* Q4 — mobile-first readability and touch navigation. Preserve the homepage palette. */
.explore-shell { -webkit-text-size-adjust: 100%; }
.explore-shell :is(.guide-content, .article-lead) { overflow-wrap: break-word; }
.explore-shell .guide-content p { line-height: 1.75; }
.explore-shell :is(.site-nav a, .suite-nav a, .language-suggestion a) { min-height: 44px; display: inline-flex; align-items: center; }
.explore-shell :is(input, select, button) { font: inherit; }
@media (max-width: 620px) {
  .explore-shell .guide-content { min-width: 0; }
  .explore-shell .guide-content p { line-height: 1.7; }
  .explore-shell :is(.site-nav, .suite-nav) { row-gap: 8px; }
  .explore-shell .guide-content :is(h1, h2, h3) { overflow-wrap: break-word; }
}
@media (prefers-reduced-motion: reduce) {
  .explore-shell *, .explore-shell *::before, .explore-shell *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Q5 — unify legacy portal surfaces with the editorial identity. */
.explore-shell :is(.explore-hero,.explore-s2-hero) { border-color: var(--line); }
.explore-shell :is(.explore-hero h1,.explore-s2-hero h1) { font-family:var(--headline-font);font-weight:var(--headline-weight);letter-spacing:var(--headline-tracking);color:var(--ink);overflow-wrap:anywhere;text-wrap:balance; }
.explore-shell :is(.lead,.explore-s2-lead,.explore-s2-count,.explore-guide .muted,.explore-s2-card p) { color:var(--muted); }
.explore-shell :is(.eyebrow,.explore-s2-kicker,.explore-s2-read) { color:var(--accent); }
.explore-shell :is(.card,.explore-language,.explore-s2-card,.explore-s2-languages a) { border-color:var(--line);border-radius:3px;background:var(--paper); }
.explore-shell :is(.steps,.explore-next,.explore-s2-next) { background:var(--panel);border-radius:3px; }
.explore-shell :is(.explore-s2-card h3 a,.explore-language,.explore-s2-languages a) { color:var(--ink); }
.explore-shell .explore-s2-languages a[aria-current="page"] { color:#fff;background:var(--ink);border-color:var(--ink); }
.explore-shell :is(.explore-language,.explore-s2-languages a,.explore-actions a,.explore-s2-read) { min-height:44px; }
.explore-shell :is(.explore-language:hover,.explore-s2-card:hover,.explore-s2-languages a:hover) { border-color:var(--ink); }
.explore-shell :is(.destination-photo,.card-photo) { border-radius:3px; }
.explore-shell :is(.guide-toc summary,.guide-references>summary,.module-menu summary,.site-footer summary) { min-height:44px;display:list-item;align-content:center; }
.explore-shell :is(.breadcrumbs,.article-links,.local-directory,.guide-content) { min-width:0; }
.explore-shell .article-table-scroll { overscroll-behavior-inline:contain; }
@media(max-width:620px) {
 .explore-shell :is(.explore-hero h1,.explore-s2-hero h1) { font-size:clamp(1.65rem,7.4vw,2.15rem);line-height:1.3; }
 .explore-shell :is(.explore-s2-card,.explore-language,.guide-card) { min-width:0; }
 .explore-shell .site-nav { gap:8px 16px; }
 .explore-shell .suite-nav { align-items:center; }
 .explore-shell :is(.explore-s2-heading,.list-heading) { flex-wrap:wrap; }
}
