/* Hallmark · genre: atmospheric · macrostructure: reading column + resource index · theme: studied-DNA (source: https://sensible-heron-062371.framer.app/) · tone: calm, technical, lucid · anchor hue: violet */
@import url('/assets/tokens.css');

html, body { overflow-x: clip; background: var(--color-ink) !important; color: var(--color-text-muted) !important; font-family: var(--font-body) !important; }
:root { --font-heading: var(--font-display) !important; --font-accent: var(--font-body) !important; --clr-muted: var(--color-text-muted) !important; --clr-body: var(--color-text-muted) !important; --clr-ink: var(--color-text) !important; --clr-subtle: var(--color-text-dim) !important; --clr-purple-main: var(--color-brand-pale) !important; }
.ds-bg { background: radial-gradient(ellipse 55% 42% at 80% 0%, rgba(127,68,171,.28), transparent 70%), radial-gradient(ellipse 40% 34% at 0% 78%, rgba(68,36,112,.25), transparent 72%), var(--color-ink) !important; }
.latamia-header, .ds-nav { background: rgba(12,9,18,.86) !important; border-bottom: 1px solid var(--color-rule) !important; }
.latamia-header { height: auto !important; min-height: 6rem !important; padding: .65rem 1.5rem !important; }
.latamia-logo { content: url('/assets/logo-latamia.svg'); width: 6rem !important; height: auto !important; max-width: none !important; }
.ds-nav { height: var(--reading-nav-height) !important; min-height: var(--reading-nav-height); padding-block: var(--space-2xs) !important; }
.ds-nav-brand img { width: 6rem !important; height: auto !important; max-width: 100% !important; }
.nav-links a, .ds-nav-links a { color: var(--color-text-muted) !important; }
.nav-links a:hover, .ds-nav-links a:hover { color: var(--color-text) !important; background: var(--color-surface) !important; }
.btn { min-height: 2.75rem !important; border-radius: var(--radius-pill) !important; font-family: var(--font-body) !important; transition: transform var(--dur-short) var(--ease-out), background-color var(--dur-short) var(--ease-out) !important; }
.btn:active { transform: translateY(0) !important; }
.btn:disabled { cursor: not-allowed; opacity: .58; transform: none !important; }
.btn:focus-visible, .nav-links a:focus-visible, .ds-nav-links a:focus-visible, .policy-toc-list a:focus-visible, .ds-footer a:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 3px; }
.btn-primary, .latamia-header .btn-primary { background: var(--color-brand) !important; color: var(--color-text) !important; box-shadow: none !important; }
.btn-primary:hover { background: var(--color-brand-deep) !important; }
.btn-secondary { border-color: var(--color-rule-strong) !important; background: var(--color-surface) !important; color: var(--color-text) !important; }
.section, .policy-content, .policy-section { color: var(--color-text-muted) !important; }
main [style*="minmax(300px,1fr)"] { min-width: 0; grid-template-columns: repeat(auto-fill, minmax(min(100%, 300px), 1fr)) !important; }
main h1, main h2, main h3, .policy-hero h1, .policy-section h2 { color: var(--color-text) !important; font-family: var(--font-display) !important; letter-spacing: -.04em !important; }
main h1 { font-size: clamp(2.55rem, 7vw, 5.4rem) !important; line-height: 1.02 !important; }
.text-grad, .grad { background: none !important; -webkit-text-fill-color: var(--color-brand-pale) !important; color: var(--color-brand-pale) !important; }
.eyebrow, .badge-cat, .kicker { border-color: var(--color-rule-strong) !important; background: rgba(127,68,171,.15) !important; color: var(--color-brand-pale) !important; font-family: var(--font-body) !important; }
.glass-card { border-color: var(--color-rule) !important; background: rgba(255,255,255,.045) !important; box-shadow: none !important; }
.glass-card::before { background: linear-gradient(90deg, transparent, rgba(196,181,253,.35), transparent) !important; }
.glass-card.hoverable:hover { border-color: var(--color-rule-strong) !important; background: rgba(255,255,255,.075) !important; box-shadow: none !important; }
.article-banner { border-color: var(--color-rule) !important; box-shadow: none !important; }
.prose, .prose strong, .prose h2, .prose h3, .policy-content strong { color: var(--color-text-muted) !important; }
.prose h2, .prose h3 { color: var(--color-text) !important; }
.prose a, .policy-content a { color: var(--color-brand-pale) !important; border-color: rgba(196,181,253,.38) !important; }
.prose blockquote { border-color: var(--color-brand-light) !important; background: rgba(127,68,171,.13) !important; color: var(--color-text) !important; }
.prose pre, .prose code { border-color: var(--color-rule) !important; background: var(--color-ink-soft) !important; color: var(--color-text-muted) !important; }
.prose .table-wrap, .table-wrap { max-width: 100%; overflow-x: auto; }
.prose table, .prose th, .prose td, .token-table, .token-table th, .token-table td { border-color: var(--color-rule) !important; color: var(--color-text-muted) !important; }
.prose th, .token-table th { background: rgba(127,68,171,.18) !important; color: var(--color-text) !important; }
.ds-footer { border-top-color: var(--color-rule) !important; background: var(--color-ink-raised) !important; color: var(--color-text-muted) !important; }
.ds-footer__tag { color: var(--color-text-dim) !important; }
.ds-footer__bottom { color: var(--color-text-dim) !important; }
.ds-footer__logo img, .ds-footer-brand img { content: url('/assets/logo-latamia.svg'); }
.ds-footer-brand img { width: 6rem !important; height: auto !important; max-width: 100% !important; }
.ds-footer__logo span { display: none; }
.ds-footer a { color: var(--color-text-muted) !important; }
.ds-footer a:hover { color: var(--color-brand-pale) !important; }
.policy-hero, .policy-content, .policy-toc { background: transparent !important; }
.policy-toc { top: calc(var(--reading-nav-height) + var(--space-sm)); border-color: var(--color-rule) !important; }
.policy-section { scroll-margin-top: calc(var(--reading-nav-height) + var(--space-sm)); }
.policy-toc-list a { color: var(--color-text-muted) !important; }
.policy-toc-list a.active, .policy-toc-list a:hover { color: var(--color-brand-pale) !important; background: rgba(127,68,171,.15) !important; }
.policy-section { border-color: var(--color-rule) !important; }
.card-desc, .policy-content p, .policy-content li { color: var(--color-text-muted) !important; }
.badge, .badge-glass, .badge-outline { border-color: var(--color-rule) !important; background: var(--color-surface) !important; color: var(--color-text-muted) !important; }
.back-to-top { background: var(--color-brand) !important; color: var(--color-text) !important; }
@media (max-width: 960px) {
  .policy-toc { top: var(--reading-nav-height); background: var(--color-ink) !important; }
  .policy-section { scroll-margin-top: calc(var(--reading-nav-height) + 6rem); }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition-duration: 120ms !important; animation-duration: 120ms !important; animation-iteration-count: 1 !important; } .btn:hover { transform: none !important; } }
