/* A quiet research-note layer for the public overview. It only changes presentation. */
.overview-hero { max-width: 92rem; min-height: 0; gap: clamp(2rem, 5vw, 5rem); padding-top: clamp(3rem, 6vw, 5.5rem); padding-bottom: clamp(3rem, 6vw, 5.5rem); }
.overview-copy { max-width: 38rem; }.overview-copy h1 { font-size: clamp(3rem, 6vw, 5.8rem); line-height: .93; letter-spacing: -.035em; }
.overview-copy > p:not(.overview-kicker):not(.overview-meta) { margin-block: 1.5rem; font-size: 1.05rem; max-width: 33rem; }
.overview-kicker { letter-spacing: .12em; }.overview-meta { margin-top: 2.25rem; }
.overview-frame { min-height: 25rem; border-color: var(--border); box-shadow: none; background: var(--field); }
.overview-frame-status { color: var(--text-muted); }.overview-frame-status span { background: var(--accent); }.overview-frame figcaption { color: var(--text-muted); }
.overview-stars { opacity: .86; animation: none; filter: grayscale(1) contrast(1.04); }.overview-stars b { animation: none; border-color: var(--accent); box-shadow: none; }
.overview-ticker { justify-content: flex-start; max-width: 92rem; margin: 0 auto; padding-inline: clamp(1.25rem, 5vw, 5.5rem); border-top: 0; font: .72rem var(--font-mono); letter-spacing: .08em; text-transform: uppercase; }
.overview-section, .overview-method { max-width: 92rem; padding-top: clamp(4rem, 7vw, 6.5rem); padding-bottom: clamp(4rem, 7vw, 6.5rem); }
.overview-section h2, .overview-method h2, .overview-callout h2 { font-size: clamp(2.45rem, 4.5vw, 4.3rem); max-width: 22ch; }
.overview-modes { gap: 0; margin-top: 2.5rem; padding: 0; border-inline: 0; background: transparent; }.overview-modes article { padding: 1rem; border-right: 1px solid var(--border); }.overview-modes article:first-child { padding-left: 0; }.overview-modes article:last-child { border-right: 0; }
.mode-image { aspect-ratio: 1.25; filter: grayscale(1); }.overview-modes article p { margin-top: .8rem; }
.overview-method { max-width: none; background: var(--surface); border-top: 1px solid var(--border); }.overview-method ol { gap: 2rem; margin-top: 2.5rem; }.overview-method li { border-top-width: 1px; }
.overview-preset-grid { gap: 0; margin-top: 2.5rem; border-top: 1px solid var(--border); border-left: 1px solid var(--border); }.overview-preset-grid a { min-height: 11.5rem; padding: 1.25rem; border: 0; border-right: 1px solid var(--border); border-bottom: 1px solid var(--border); background: transparent; transition: background-color .15s ease; }.overview-preset-grid a:hover { transform: none; box-shadow: none; background: var(--raised); }.overview-preset-grid h3 { font-size: 1.45rem; }
.overview-callout { max-width: 92rem; margin-top: 0; margin-bottom: clamp(4rem, 7vw, 6.5rem); padding: clamp(2rem, 4vw, 3.5rem); border-left: 3px solid var(--accent); background: var(--raised); color: var(--text); }.overview-callout .overview-kicker,.overview-callout>p:not(.overview-kicker){ color: var(--text-muted); }.overview-callout .overview-secondary { border-color: var(--text); color: var(--text); }.overview-callout .overview-secondary:hover { background: var(--text); color: var(--surface); }
.overview-footer { max-width: 92rem; margin: auto; padding-inline: 0; background: transparent; }
html[data-theme="midnight"] .overview-frame { background: #080b11; } html[data-theme="midnight"] .overview-callout { background: var(--surface); }
@media (max-width: 1100px) { .overview-modes { grid-template-columns: repeat(2, 1fr); }.overview-modes article:nth-child(2) { border-right: 0; }.overview-modes article:nth-child(3) { padding-left: 0; } }
@media (max-width: 700px) {.overview-modes { grid-template-columns: 1fr; }.overview-modes article,.overview-modes article:nth-child(2) { padding-inline: 0; border-right: 0; border-bottom: 1px solid var(--border); }.overview-modes article:last-child { border-bottom: 0; }.overview-ticker { overflow: auto; }.overview-footer { margin-inline: 1.25rem; }.overview-frame { min-height: 18rem; } }

/* Small spectral cues give the academic layout an observable, not decorative, colour signal. */
.overview-hero { position: relative; }
.overview-frame { border-top: 4px solid var(--accent); }.overview-frame-status span { box-shadow: 0 0 0 .25rem rgb(var(--accent-rgb) / .14); }.overview-ticker b { color: var(--accent); }


.overview-preset-grid a { border-top: 3px solid transparent; }.overview-preset-grid a:nth-child(3n + 1):hover { border-top-color: var(--accent); }.overview-preset-grid a:nth-child(3n + 2):hover { border-top-color: var(--warn); }.overview-preset-grid a:nth-child(3n):hover { border-top-color: var(--success); }

/* Deliberate, low-amplitude motion: a live analysis surface rather than decoration. */
.overview-frame::after { content: ""; position: absolute; z-index: 1; inset-inline: 0; height: 18%; top: -20%; pointer-events: none; background: linear-gradient(to bottom, transparent, rgb(255 255 255 / .12), transparent); animation: overview-scan 7s ease-in-out infinite; }
.overview-stars { animation: overview-field-shift 11s ease-in-out infinite; }.overview-stars b { animation: overview-marker-pulse 2.8s ease-in-out infinite; }
.overview-modes article { animation: overview-rise .55s both; }.overview-modes article:nth-child(2) { animation-delay: .08s; }.overview-modes article:nth-child(3) { animation-delay: .16s; }.overview-modes article:nth-child(4) { animation-delay: .24s; }
.overview-preset-grid a { transition: background-color .18s ease, border-color .18s ease, transform .18s ease; }.overview-preset-grid a:hover { transform: translateY(-.18rem); }.overview-primary span{ display: inline-block; transition: transform .18s ease; }.overview-primary:hover span{ transform: translate(.18rem, -.18rem); }
@keyframes overview-scan { 0%, 14% { transform: translateY(0); opacity: 0; } 24%, 72% { opacity: 1; } 88%, 100% { transform: translateY(680%); opacity: 0; } }
@keyframes overview-field-shift { 0%,100% { transform: scale(1); filter: grayscale(1) contrast(1.04); } 50% { transform: scale(1.018); filter: grayscale(.82) contrast(1.08); } }
@keyframes overview-marker-pulse { 0%,100% { transform: scale(1); opacity: .8; } 50% { transform: scale(1.18); opacity: 1; } }
@keyframes overview-rise { from { opacity: 0; transform: translateY(.65rem); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .overview-frame::after, .overview-stars, .overview-stars b, .overview-modes article { animation: none; }.overview-preset-grid a, .overview-primary span{ transition: none; } }

.overview-actions a { font: 600 .91rem var(--font-body); letter-spacing: normal; text-transform: none; border-radius: var(--radius-sm); }
