/*
 * LCF Consulting — Unslop / editorial refinement (2026-11-01)
 * Product direction: investigative desk, legislative record and data evidence.
 * Inspired by heydamir/unslop (Damir Sokolovsky), CC BY 4.0:
 * https://github.com/heydamir/unslop
 * Loaded last on editorial pages. Never hides advertising, attribution, data,
 * accessibility controls, commerce, downloads, interactive charts or citations.
 */

/* Quiet foundation: preserve the existing LCF paper, ink, red and gold identity. */
:root {
  --lcf-editorial-rule: #d8d3c8;
  --lcf-editorial-surface: #fbfaf7;
  --lcf-editorial-accent: #963d37;
  --lcf-editorial-muted: #53606b;
  --lcf-editorial-radius: 8px;
}
:root[data-theme="dark"] {
  --lcf-editorial-rule: #344156;
  --lcf-editorial-surface: #172131;
  --lcf-editorial-accent: #ef9284;
  --lcf-editorial-muted: #b7c3d1;
}
html { scroll-padding-top: 92px; }
body { font-kerning: normal; }
main { min-width: 0; }
main :is(p,li,dd,figcaption) { overflow-wrap: break-word; }
main :is(.article-body,.prose) { line-height: 1.78; }
main :is(.article-body,.prose) :is(p,li) { max-width: 78ch; }
main :is(h1,h2,h3) { text-wrap: balance; }
main :is(p,li,figcaption,blockquote) { text-wrap: pretty; }
main :is(.article-body,.prose) a:not(.button) {
  text-decoration-thickness: 1px;
  text-underline-offset: .19em;
}
main :is(.article-body,.prose) :is(h2,h3,h4) { scroll-margin-top: 108px; }
main :is(.table-wrap,.table-scroll,.ledger-table-wrap,.matrix-wrap,.intelligence-table-wrap,.scroll) {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}
main :is(img,video,svg,canvas) { max-width: 100%; }
main :is(button,select,input,textarea) { max-width: 100%; }
:where(button,a,input,select,textarea,summary):focus-visible {
  outline: 3px solid #2a6cb2;
  outline-offset: 3px;
}

/* Navigation: sober publication masthead, not a floating app dashboard. */
.site-header {
  box-shadow: none !important;
  border-bottom: 1px solid var(--line, var(--lcf-editorial-rule));
}
.site-header .nav-wrap { min-height: 72px; }
.site-header .brand-text strong { font-weight: 600; letter-spacing: -.025em; }
.site-header .brand-text small { letter-spacing: .025em; font-weight: 600; text-transform: none; }
.site-header .nav-links { gap: clamp(12px, 2vw, 24px); }
.site-header .nav-links a { font-weight: 600; }
.site-header :is(.nav-cta,.nav-action) { border-radius: 6px; }
.site-header .theme-toggle { border-radius: 8px; }
.site-header .theme-toggle button { border-radius: 6px; }
.site-header .menu-button { border-radius: 8px; }
@media (hover:hover) {
  .site-header .nav-links a:hover { text-decoration: underline; text-underline-offset: .26em; }
}

/* Hierarchy: use editorial type and rules rather than glows and excessive badges. */
main :is(.eyebrow,.kicker,.section-kicker,.book-eyebrow) {
  font-size: .78rem;
  font-weight: 650;
  letter-spacing: .018em;
  text-transform: none;
  line-height: 1.5;
}
main .eyebrow::before { width: 16px; height: 1px; }
main :is(.meta,.article-meta,.byline) {
  letter-spacing: .012em;
  text-transform: none;
  font-weight: 550;
  line-height: 1.55;
}
main :is(.topic-pill,.sub-pill,.tag,.status,.label,.badge) {
  letter-spacing: .012em;
  text-transform: none;
  font-weight: 600;
  box-shadow: none;
}
main :is(.section-head,.section-heading) { margin-bottom: clamp(24px, 4vw, 44px); }
main :is(.section-head h2,.section-heading h2) { line-height: 1.1; }
main :is(.page-hero h1,.book-hero h1,.article-header h1) {
  line-height: 1.1;
  letter-spacing: -.035em;
}
main .hero-strengthened { background-image: none !important; }
main .hero::after, main .hero-strengthened::after { content: none !important; }
main .hero-grid { gap: clamp(30px, 5vw, 64px); }
main .hero h1 { font-weight: 600; line-height: 1.02; letter-spacing: -.045em; }
main .hero h1 em { font-style: normal; }
main .hero-note { box-shadow: none; border: 1px solid rgba(255,255,255,.18); }
main .hero-note.radar-card { box-shadow: none; }
main .radar-head strong, main .radar-head > span,
main .radar-block small { letter-spacing: .02em; font-weight: 600; }
main .radar-head i { box-shadow: none; }
main .hero-proofline { border-left-width: 2px; }

/* Components read like a research publication, not a pile of SaaS tiles. */
main :is(
  .card,.dossier-card,.path-card,.platform-card,.solution-card,
  .action-card,.feature-card,.principle,.book-card,.check,
  .plan,.panel,.metric-card,.claim-card,.deadline-card,.finding-card,
  .result-card,.info-card,.case-card,.evidence-card
) {
  border-radius: var(--lcf-editorial-radius);
  box-shadow: none !important;
}
main :is(.featured-card,.method-mini-grid,.feature-grid,.editorial-grid) {
  box-shadow: none !important;
}
main :is(.card-grid,.cards-grid,.book-grid,.related-grid,.study-grid) {
  gap: clamp(14px, 2.2vw, 24px);
}
main :is(.card,.dossier-card,.path-card,.platform-card,.solution-card,
  .action-card,.feature-card,.principle,.book-card,.plan,.panel) :is(h2,h3) {
  line-height: 1.2;
  letter-spacing: -.022em;
}
main :is(.card,.dossier-card,.path-card,.platform-card,.solution-card,
  .action-card,.feature-card,.principle,.book-card,.plan,.panel):hover {
  box-shadow: none !important;
  transform: none;
}
main .featured-card { border-top: 2px solid var(--red, var(--lcf-editorial-accent)); }
main .method-mini-grid article > span { letter-spacing: .015em; font-weight: 600; }
main .method-mini-grid h3 { margin-top: 16px; }
main .book-card { border-radius: 8px; }
main .book-card .book-audience { line-height: 1.6; }

/* A restrained single call to action; interactive/commerce controls remain visible. */
main :is(.button,.cta,.download,.book-buy,.lcf-certificate-button) {
  border-radius: 6px;
  box-shadow: none !important;
  letter-spacing: .005em;
  text-transform: none;
  font-weight: 650;
}
main :is(.button,.cta,.download,.book-buy,.lcf-certificate-button):hover {
  transform: none;
  filter: none;
}
main .button-secondary { background: transparent; }
main .faq-list summary { font-weight: 600; }
main :is(.toc,.aside-note,.source-list,.references,.evidence-note) {
  box-shadow: none !important;
}
main :is(.toc,.aside-note) { border-radius: 6px; }
main :is(.stat,.metric) strong { font-variant-numeric: tabular-nums; }

/* Retain the accessible light/dark surface fixes from readability.css. */
:root[data-theme="dark"] main :is(.dossier-card,.path-card,.platform-card,.solution-card,.book-card) {
  border-color: var(--line, #344156);
}
:root[data-theme="dark"] main :is(.article-body,.prose) a {
  text-decoration-color: currentColor;
}

/* Motion supports interaction, never decoration. */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  main *, main *::before, main *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
@media (max-width: 900px) {
  .site-header .nav-wrap { min-height: 64px; }
  main .hero-grid { gap: 28px; }
}
@media (max-width: 720px) {
  main :is(.hero,.page-hero,.book-hero) h1 {
    overflow-wrap: normal;
    word-break: normal;
    hyphens: auto;
    letter-spacing: -.025em;
  }
  main :is(.card-grid,.cards-grid,.book-grid,.related-grid,.study-grid) {
    grid-template-columns: minmax(0,1fr);
  }
  main :is(.book-card,.dossier-card,.path-card,.platform-card,.solution-card) {
    min-width: 0;
  }
  main :is(.table-wrap,.table-scroll,.ledger-table-wrap,.matrix-wrap,.intelligence-table-wrap) {
    margin-inline: 0;
  }
}
