:root {
  --black: #fff;
  --bg: #fff;
  --surface: #f8f9fa;
  --card: #fff;
  --border: #e5e7eb;
  --border2: #d0d5dd;
  --gold: #111827;
  --gold2: #111827;
  --blue: #111827;
  --blue2: #475467;
  --green: #15803d;
  --red: #b42318;
  --muted: #667085;
  --text: #111827;
  --dim: #526171;
  --ink: #fff;
  --ink2: #fff;
  --ink3: #f8f9fa;
  --slate: #667085;
  --white: #111827;
  --amber: #667085;
  --gold-light: #475467;
  --gold-dim: #f2f4f7;
  --dark: #fff;
  --dark-2: #f8f9fa;
  --dark-3: #fff;
  --dark-4: #f2f4f7;
  --text-muted: #667085;
  --success: #15803d;
  --danger: #b42318;
  --nav-h: 72px;
}

html { scroll-behavior: smooth; }
body {
  min-height: 100vh;
  background: #fff;
  color: #111827;
  font-family: 'DM Sans', Arial, sans-serif;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}

header,
header.scrolled {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
  height: var(--nav-h);
  padding: 0;
  border-bottom: 1px solid #e5e7eb;
  background: rgba(255,255,255,.96);
  box-shadow: 0 1px 2px rgba(16,24,40,.03);
  backdrop-filter: blur(16px);
}

nav {
  width: min(100%, 1328px);
  height: 100%;
  margin: 0 auto;
  padding: 0 24px;
}

.logo,
.logo span {
  color: #111827;
  font-family: 'DM Sans', Arial, sans-serif;
  font-size: 1.35rem;
  font-weight: 700;
  letter-spacing: -.045em;
}

.nav-links { gap: .3rem; align-items: center; }
.nav-links a {
  padding: .55rem .8rem;
  border-radius: 6px;
  color: #475467;
  font-size: .88rem;
  font-weight: 500;
  letter-spacing: 0;
  text-transform: none;
}
.nav-links a::after { display: none; }
.nav-links a:hover,
.nav-links a.active {
  color: #111827;
  background: #f2f4f7;
}
.hamburger {
  display: none;
  min-width: 40px;
  min-height: 40px;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  background: #fff;
  color: #111827;
}

.hero {
  min-height: 0;
  padding: 150px 24px 64px;
  border-bottom: 0;
  background: #fff;
  text-align: left;
}
.hero-bg,
.hero-overlay { background: none; }
.hero-content {
  width: min(100%, 880px);
  margin: 0 auto;
}
.hero-eyebrow {
  color: #667085;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .12em;
}
.hero-eyebrow::before,
.hero-eyebrow::after {
  width: 20px;
  background: #98a2b3;
}
.hero h1 {
  margin-bottom: 1rem;
  color: #111827;
  font-family: 'DM Sans', Arial, sans-serif;
  font-size: clamp(2.5rem, 6vw, 4.25rem);
  font-weight: 600;
  letter-spacing: -.055em;
  line-height: 1.08;
}
.hero h1 em {
  background: none;
  -webkit-background-clip: border-box;
  -webkit-text-fill-color: #667085;
  color: #667085;
  font-style: normal;
}
.hero-sub,
.hero-content > p {
  max-width: 650px;
  margin: 0;
  color: #667085;
  font-size: 1.05rem;
  line-height: 1.75;
}
.hero-cta { margin-top: 1.5rem; }
.btn-gold,
.btn-outline {
  min-height: 44px;
  padding: .7rem 1.1rem;
  border: 1px solid #111827;
  border-radius: 6px;
  background: #111827;
  box-shadow: none;
  color: #fff;
  font-family: 'DM Sans', Arial, sans-serif;
  font-size: .88rem;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
}
.btn-gold:hover,
.btn-outline:hover {
  transform: translateY(-1px);
  border-color: #344054;
  background: #344054;
  color: #fff;
  box-shadow: none;
}
.btn-outline {
  border-color: #d0d5dd;
  background: #fff;
  color: #111827;
}

.section-label {
  gap: .6rem;
  color: #667085;
  font-family: 'DM Sans', Arial, sans-serif;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .1em;
}
.section-label::before { background: #98a2b3; }

.site-footer {
  padding: 32px 24px;
  border-top: 1px solid #e5e7eb;
  background: #f8f9fa;
  text-align: left;
}
.site-footer-inner {
  display: grid;
  grid-template-columns: minmax(150px,.7fr) minmax(220px,1.3fr) auto;
  align-items: center;
  gap: 14px 28px;
  width: min(100%, 1280px);
  margin: 0 auto;
}
.site-footer .footer-logo {
  margin: 0;
  color: #111827;
  font-family: 'DM Sans', Arial, sans-serif;
  font-size: 1rem;
  font-weight: 700;
  text-decoration: none;
}
.site-footer p,
.site-footer small { margin: 0; color: #667085; font-size: .78rem; line-height: 1.6; }
.site-footer .footer-links {
  display: flex;
  justify-content: flex-end;
  gap: .4rem 1rem;
}
.site-footer .footer-links a {
  color: #475467;
  font-size: .8rem;
  letter-spacing: 0;
  text-decoration: none;
}
.site-footer .footer-links a:hover { color: #111827; text-decoration: underline; }
.site-footer small { grid-column: 1/-1; padding-top: 12px; border-top: 1px solid #e5e7eb; }

/* News and insights */
.news-page,
.insights-page { padding-top: var(--nav-h); }
.news-page .hero,
.insights-page .hero {
  padding: 70px 24px 32px;
  border-bottom: 1px solid #eaecf0;
}
.news-page .hero h1,
.insights-page .hero h1 { margin-bottom: .65rem; }
.news-page .hero-sub,
.insights-page .hero-sub { margin: 0 auto; }
.news-page .hero-eyebrow::before,
.news-page .hero-eyebrow::after,
.insights-page .hero-eyebrow::before,
.insights-page .hero-eyebrow::after { display: none; }
.news-page .page {
  width: min(100%, 1328px);
  padding: 32px 24px 72px;
}
.news-page .filter-bar { margin-bottom: 2rem; }
.news-page .filter-note { margin: -1.2rem 0 2rem; color: #667085; font-size: .78rem; line-height: 1.55; }
.news-page .tab {
  padding: .55rem .9rem;
  border-radius: 6px;
  border-color: #e5e7eb;
  background: #fff;
  color: #475467;
  font-size: .78rem;
  letter-spacing: 0;
  text-transform: none;
}
.news-page .tab:hover,
.news-page .tab.active { border-color: #111827; background: #111827; color: #fff; }
.news-page .meta-bar { color: #667085; }
.news-page .refresh-btn {
  min-height: 38px;
  padding: .5rem .8rem;
  border: 1px solid #d0d5dd;
  border-radius: 6px;
  background: #fff;
  color: #344054;
  font-size: .78rem;
  letter-spacing: 0;
  text-transform: none;
}
.news-page .refresh-btn:hover { background: #f9fafb; }
.news-page .section-label { margin-bottom: .8rem; }
.news-page .news-section { margin-bottom: 2.5rem; }
.news-page .news-grid,
.news-page .skeleton-grid {
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  overflow: visible;
  border: 0;
  background: transparent;
}
.news-page .news-card,
.news-page .sk,
.news-page .error-state {
  min-height: 210px;
  padding: 1.25rem;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  color: #111827;
}
.news-page .news-card:hover { border-color: #98a2b3; background: #fff; }
.news-page .news-card::after { display: none; }
.news-page .news-card.featured {
  min-height: 250px;
  padding: 1.75rem;
  border-color: #e5e7eb;
  background: #f8f9fa;
}
.news-page .card-title,
.news-page .error-state h3 { color: #111827; font-family: 'DM Sans', Arial, sans-serif; }
.news-page .card-title { font-size: 1rem; font-weight: 600; }
.news-page .featured .card-title { font-size: 1.4rem; }
.news-page .card-desc,
.news-page .error-state p { color: #667085; }
.news-page .card-source { color: #475467; opacity: 1; }
.news-page .card-time { color: #667085; }
.news-page .card-arrow { color: #111827; }
.news-page .card-badge { border-radius: 4px; letter-spacing: .06em; }
.news-page .badge-bullish { background: #ecfdf3; color: #15803d; border-color: #abefc6; }
.news-page .badge-bearish { background: #fef3f2; color: #b42318; border-color: #fecdca; }
.news-page .badge-neutral { background: #f2f4f7; color: #475467; border-color: #e4e7ec; }
.news-page .sk-bar {
  background: linear-gradient(90deg,#f2f4f7 25%,#eaecf0 50%,#f2f4f7 75%);
  background-size: 200% 100%;
}
.news-page .cta-strip {
  padding: 2rem;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f8f9fa;
}
.news-page .cta-strip h2,
.news-page .cta-strip h2 em { color: #111827; font-family: 'DM Sans', Arial, sans-serif; }
.news-page .cta-strip p { color: #667085; }
.news-page .cta-strip .btn-outline {
  border-color: #d0d5dd;
  color: #111827;
}
.news-page footer:not(.site-footer) { padding: 24px; color: #667085; }
.news-page footer:not(.site-footer) a { color: #111827; }

.insights-page .page {
  grid-template-columns: minmax(0,1fr) 350px;
  gap: 24px;
  width: min(100%,1328px);
  padding: 32px 24px 72px;
}
.insights-page .overview-bar { gap: 0; border-color: #e5e7eb; background: #e5e7eb; border-radius: 8px; }
.insights-page .overview-card { padding: 1rem; background: #fff; }
.insights-page .ov-pair,
.insights-page .section-title,
.insights-page .ic-headline,
.insights-page .level-pair,
.insights-page .pr-pair-name { color: #111827; font-family: 'DM Sans',Arial,sans-serif; }
.insights-page .ov-label,
.insights-page .ov-change,
.insights-page .ic-analysis,
.insights-page .ic-meta,
.insights-page .level-val,
.insights-page .bw-body { color: #667085; }
.insights-page .ctrl-bar { padding-bottom: 1rem; border-bottom: 1px solid #eaecf0; }
.insights-page .section-title { font-size: 1.15rem; font-weight: 600; letter-spacing: -.02em; }
.insights-page .insight-explainer { margin-top: .35rem; color: #667085; font-size: .78rem; line-height: 1.5; }
.insights-page .ctrl-bar-left { align-items: flex-start; }
.insights-page .refresh-btn {
  border: 1px solid #d0d5dd;
  border-radius: 6px;
  background: #fff;
  color: #344054;
  letter-spacing: 0;
  text-transform: none;
}
.insights-page .refresh-btn:hover { background: #f9fafb; }
.insights-page .insights-list,
.insights-page .sidebar-widget { border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; }
.insights-page .insight-card { padding: 1.25rem; background: #fff; }
.insights-page .insight-card + .insight-card { border-top: 1px solid #eaecf0; }
.insights-page .insight-card:hover { background: #f9fafb; }
.insights-page .ic-headline { font-size: 1rem; }
.insights-page .ic-analysis { border-left-color: #98a2b3; }
.insights-page .ic-analysis strong { color: #344054; }
.insights-page .ic-time { color: #667085; }
.insights-page .ic-source,
.insights-page .ic-link { color: #475467; opacity: 1; }
.insights-page .sidebar-widget { margin-bottom: 1rem; }
.insights-page .sw-header,
.insights-page .bw-header-row { border-color: #eaecf0; background: #f8f9fa; color: #344054; }
.insights-page .bw-header-row { align-items: flex-start; gap: .75rem; }
.insights-page .sw-header,
.insights-page .bw-title { color: #344054; font-family: 'DM Sans',Arial,sans-serif; font-weight: 600; letter-spacing: .04em; }
.insights-page .bw-description { margin-top: .25rem; color: #667085; font-size: .75rem; line-height: 1.5; }
.insights-page .ai-control { padding: .9rem 1.1rem; border-bottom: 1px solid #eaecf0; }
.insights-page .ai-control p { margin-bottom: .7rem; color: #667085; font-size: .78rem; line-height: 1.55; }
.insights-page #analyzePairBtn {
  width: 100%;
  justify-content: center;
  border-color: #111827;
  background: #111827;
  color: #fff;
}
.insights-page #analyzePairBtn:hover:not(:disabled) { background: #344054; }
.insights-page #analyzePairBtn:disabled { cursor: not-allowed; opacity: .48; }
.insights-page .pair-chip:disabled { cursor: wait; opacity: .6; }
.insights-page .ai-verdict { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem; }
.insights-page .ai-verdict > strong { color: #111827; font-size: 1.05rem; }
.insights-page .ai-sentiment { padding: .3rem .55rem; border: 1px solid #e4e7ec; border-radius: 4px; background: #f2f4f7; color: #475467; font-size: .7rem; font-weight: 600; text-transform: capitalize; }
.insights-page .ai-sentiment.bullish { border-color: #abefc6; background: #ecfdf3; color: #15803d; }
.insights-page .ai-sentiment.bearish { border-color: #fecdca; background: #fef3f2; color: #b42318; }
.insights-page .ai-result h3 { margin: .9rem 0 .5rem; color: #111827; font-size: 1.1rem; font-weight: 600; letter-spacing: -.02em; }
.insights-page .ai-analysis { color: #475467; font-size: .86rem; line-height: 1.7; }
.insights-page .ai-section-label { margin: 1rem 0 .5rem; color: #344054; font-size: .72rem; font-weight: 700; letter-spacing: .04em; }
.insights-page .ai-catalysts,
.insights-page .ai-sources { display: grid; gap: .45rem; padding-left: 1.1rem; color: #667085; font-size: .78rem; line-height: 1.55; }
.insights-page .ai-sources a,
.insights-page .learning-note a { color: #344054; text-decoration: underline; text-underline-offset: 2px; }
.insights-page .ai-watch { display: grid; gap: .25rem; margin-top: 1rem; padding: .8rem; border: 1px solid #e5e7eb; border-radius: 6px; background: #f8f9fa; color: #667085; font-size: .78rem; line-height: 1.6; }
.insights-page .ai-watch strong { color: #344054; }
.insights-page .ai-result-footer { display: flex; justify-content: space-between; align-items: center; gap: .75rem; margin-top: 1rem; padding-top: .75rem; border-top: 1px solid #eaecf0; color: #667085; font-size: .68rem; }
.insights-page .pr-reanalyze { border: 0; background: transparent; color: #344054; cursor: pointer; font: inherit; font-weight: 600; }
.insights-page .pr-reanalyze:hover { text-decoration: underline; }
.insights-page .bw-error { margin: .8rem; padding: .8rem; border: 1px solid #fecdca; border-radius: 6px; background: #fef3f2; color: #b42318; }
.insights-page .learning-note .sw-body { display: grid; gap: .8rem; font-size: .8rem; line-height: 1.7; }
.insights-page .learning-note p { color: #475467; }
.insights-page .learning-note .learning-disclaimer { color: #667085; font-size: .75rem; }
.insights-page .pair-chip {
  border-color: #e5e7eb;
  border-radius: 5px;
  color: #475467;
  font-family: 'DM Sans',Arial,sans-serif;
  font-size: .72rem;
}
.insights-page .pair-chip.active-overall { border-color: #111827; background: #111827; color: #fff; }
.insights-page .pair-chip.active-bull { color: #15803d; }
.insights-page .pair-chip.active-bear { color: #b42318; }
.insights-page .pair-chip.active-neutral { color: #475467; }
.insights-page .bias-track,
.insights-page .pr-bar-track,
.insights-page .gauge-track,
.insights-page .pr-conf-track { background: #eaecf0; stroke: #eaecf0; }
.insights-page .gauge-label,
.insights-page .bias-name,
.insights-page .pr-bar-name,
.insights-page .pr-level-lbl,
.insights-page .pr-conf-lbl { color: #667085; }
.insights-page .session-card,
.insights-page .pr-level-chip,
.insights-page .pr-trade { border-color: #e5e7eb; background: #f8f9fa; color: #475467; }
.insights-page .pr-analysis { border-left-color: #98a2b3; color: #475467; }
.insights-page .pr-analysis strong { color: #111827; }
.insights-page .pr-pair-name { font-size: 1rem; }
.insights-page .ic-badge { border-radius: 4px; }
.insights-page .badge-bullish { background: #ecfdf3; color: #15803d; border-color: #abefc6; }
.insights-page .badge-bearish { background: #fef3f2; color: #b42318; border-color: #fecdca; }
.insights-page .badge-neutral { background: #f2f4f7; color: #475467; border-color: #e4e7ec; }
.insights-page .error-state { border-color: #e5e7eb; border-radius: 8px; background: #f8f9fa; }
.insights-page .error-state h3 { color: #111827; }
.insights-page .error-state p { color: #667085; }
.insights-page footer {
  padding: 24px;
  border-color: #e5e7eb;
  background: #f8f9fa;
  color: #667085;
}
.insights-page footer a { color: #111827; }

/* About */
.about-page section { padding: 72px 24px; }
.about-page .hero {
  min-height: 460px;
  padding: 150px 24px 72px;
  border-bottom: 1px solid #eaecf0;
  text-align: center;
}
.about-page .hero-content { max-width: 880px; }
.about-page .hero-eyebrow { animation: none; opacity: 1; }
.about-page .hero h1 { animation: none; opacity: 1; }
.about-page .hero-sub { animation: none; opacity: 1; margin: 0 auto; }
.about-page .hero-cta { animation: none; opacity: 1; }
.about-page .hero-eyebrow::before,
.about-page .hero-eyebrow::after { display: none; }
.about-page .scroll-indicator,
.about-page .hero-overlay { display: none; }
.about-page .mission-section,
.about-page .timeline-section,
.about-page .values-section,
.about-page .social-section,
.about-page .cta-section { border-color: #eaecf0; background: #fff; }
.about-page .container,
.about-page .container-wide { width: min(100%,1200px); }
.about-page h2 {
  color: #111827;
  font-family: 'DM Sans',Arial,sans-serif;
  font-size: clamp(1.8rem,4vw,2.65rem);
  font-weight: 600;
  letter-spacing: -.04em;
}
.about-page h2 em { color: #667085; }
.about-page .mission-text p,
.about-page .milestone-content p,
.about-page .value-card p,
.about-page .social-inner p,
.about-page .cta-inner p { color: #667085; }
.about-page .mission-text p:first-of-type { color: #344054; font-family: 'DM Sans',Arial,sans-serif; font-size: 1.15rem; font-style: normal; }
.about-page .mission-stats,
.about-page .values-grid { border-color: #e5e7eb; border-radius: 8px; background: #e5e7eb; gap: 1px; }
.about-page .stat-box,
.about-page .value-card { border-color: #e5e7eb; background: #fff; }
.about-page .stat-box { padding: 2rem 1.5rem; }
.about-page .stat-number,
.about-page .milestone-year { color: #111827; font-family: 'DM Sans',Arial,sans-serif; font-weight: 600; }
.about-page .stat-number { font-size: 2.35rem; }
.about-page .stat-label { color: #667085; }
.about-page .timeline::before { background: #e5e7eb; }
.about-page .milestone-content { border-color: #e5e7eb; border-radius: 8px; background: #fff; }
.about-page .milestone-content:hover { border-color: #98a2b3; }
.about-page .milestone-content::after { border-left-color: #e5e7eb; }
.about-page .milestone:nth-child(even) .milestone-content::after { border-right-color: #e5e7eb; }
.about-page .milestone-dot { border-color: #fff; background: #344054; box-shadow: 0 0 0 4px #eaecf0; }
.about-page .value-card { padding: 2rem; }
.about-page .value-card h3 { color: #111827; font-family: 'DM Sans',Arial,sans-serif; font-size: 1.1rem; font-weight: 600; }
.about-page .value-icon { border-color: #e5e7eb; border-radius: 6px; color: #344054; }
.about-page .social-inner { border: 1px solid #e5e7eb; border-radius: 8px; background: #f8f9fa; }
.about-page .social-inner::before { display: none; }
.about-page .social-card { border-color: #e5e7eb; border-radius: 6px; background: #fff; color: #111827; }
.about-page .social-card:hover { border-color: #98a2b3; box-shadow: 0 8px 20px rgba(16,24,40,.06); }
.about-page .social-card i { color: #344054; }
.about-page .social-card-text .s-label { color: #667085; }
.about-page footer:not(.site-footer) { display: none; }

/* Contact */
.contact-page section { padding: 64px 24px; }
.contact-page .hero {
  min-height: 350px;
  padding: 150px 24px 64px;
  border-bottom: 1px solid #eaecf0;
  text-align: center;
}
.contact-page .hero-content { max-width: 800px; }
.contact-page .hero-eyebrow { animation: none; opacity: 1; }
.contact-page .hero h1 { animation: none; opacity: 1; }
.contact-page .hero-content > p { animation: none; opacity: 1; margin: 0 auto; }
.contact-page .hero-eyebrow::before,
.contact-page .hero-eyebrow::after,
.contact-page .hero-overlay { display: none; }
.contact-page h2 {
  color: #111827;
  font-family: 'DM Sans',Arial,sans-serif;
  font-size: clamp(1.8rem,4vw,2.5rem);
  font-weight: 600;
  letter-spacing: -.04em;
}
.contact-page h2 em { color: #667085; }
.contact-page .main-grid { width: min(100%,1280px); }
.contact-page .sidebar { border-color: #e5e7eb; }
.contact-page .form-title p,
.contact-page .contact-card-body p,
.contact-page .sidebar-note p { color: #667085; }
.contact-page .contact-card,
.contact-page .faq-item { border-color: #e5e7eb; border-radius: 8px; background: #fff; }
.contact-page .contact-card:hover { border-color: #98a2b3; background: #f8f9fa; }
.contact-page .contact-card-body h3 { color: #111827; }
.contact-page .contact-card-icon { border-color: #e5e7eb; border-radius: 6px; color: #344054; }
.contact-page .sidebar-note { border-left-color: #344054; background: #f8f9fa; }
.contact-page .sidebar-note strong { color: #344054; }
.contact-page .field label { color: #475467; letter-spacing: .04em; }
.contact-page .field input,
.contact-page .field textarea,
.contact-page .field select {
  border-color: #d0d5dd;
  border-radius: 6px;
  background: #fff;
  color: #111827;
}
.contact-page .field input:focus,
.contact-page .field textarea:focus,
.contact-page .field select:focus { border-color: #667085; background: #fff; box-shadow: 0 0 0 3px #f2f4f7; }
.contact-page .field input::placeholder,
.contact-page .field textarea::placeholder { color: #98a2b3; }
.contact-page .field select option { background: #fff; color: #111827; }
.contact-page .select-wrap::after { color: #475467; }
.contact-page .submit-btn { border-radius: 6px; background: #111827; color: #fff; letter-spacing: 0; }
.contact-page .submit-btn:hover { background: #344054; box-shadow: none; }
.contact-page .faq-section { border-color: #eaecf0; background: #f8f9fa; }
.contact-page .faq-item { overflow: hidden; }
.contact-page .faq-item:hover { border-color: #98a2b3; }
.contact-page .faq-summary { background: #fff; color: #111827; }
.contact-page .faq-item[open] .faq-summary { background: #f2f4f7; color: #111827; }
.contact-page .faq-chevron { color: #475467; }
.contact-page .faq-body { border-color: #eaecf0; background: #fff; color: #667085; }
.contact-page .cta-section { border-top: 1px solid #eaecf0; background: #fff; }
.contact-page .cta-inner p { color: #667085; }
.contact-page footer:not(.site-footer) { display: none; }
.contact-page .form-message.success { border-color: #abefc6; background: #ecfdf3; color: #067647; }
.contact-page .form-message.error { border-color: #fecdca; background: #fef3f2; color: #b42318; }

@media (max-width: 900px) {
  .about-page .mission-grid { gap: 2rem; }
  .contact-page .main-grid { grid-template-columns: 1fr; }
  .contact-page .sidebar { padding: 3rem 0; border-right: 0; border-bottom: 1px solid #e5e7eb; }
  .contact-page .form-col { padding: 3rem 0 4rem; }
  .insights-page .page { grid-template-columns: 1fr; }
  .news-page .news-grid,
  .news-page .skeleton-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .site-footer-inner { grid-template-columns: 1fr 2fr; }
  .site-footer .footer-links { grid-column: 1/-1; justify-content: flex-start; }
}

@media (max-width: 768px) {
  :root { --nav-h: 64px; }
  nav { padding: 0 18px; }
  .hamburger { display: inline-flex; align-items: center; justify-content: center; }
  .nav-links {
    position: absolute;
    top: 100%;
    right: 0;
    bottom: auto;
    left: 0;
    display: flex;
    height: calc(100vh - var(--nav-h));
    padding: 24px;
    border-top: 1px solid #eaecf0;
    background: #fff;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    gap: 6px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity .2s, transform .2s, visibility .2s;
    overflow-y: auto;
  }
  .nav-links.open,
  .nav-links.active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }
  .nav-links a { display: block; padding: 12px 14px; font-size: 1rem; }
  .hero { padding: 128px 20px 48px; }
  .news-page .hero,
  .insights-page .hero { padding: 52px 20px 28px; }
  .news-page .page,
  .insights-page .page { padding: 24px 20px 48px; }
  .about-page section,
  .contact-page section { padding: 52px 20px; }
  .about-page .hero,
  .contact-page .hero { padding: 128px 20px 52px; }
  .contact-page .main-grid { padding: 0 20px; }
  .about-page .timeline { padding-left: 26px; }
  .about-page .timeline::before { left: 6px; }
  .about-page .milestone { position: relative; padding-left: 0; }
  .about-page .milestone-dot { position: absolute; top: 1.6rem; left: -26px; margin: 0; }
  .about-page .milestone-content { width: 100%; }
  .about-page .milestone-spacer { display: none; }
  .about-page .milestone-content::after { display: none; }
  .about-page .values-grid { grid-template-columns: 1fr; }
  .about-page .value-card { border-right: 0; }
  .about-page .social-inner { padding: 2.5rem 1.2rem; }
  .about-page .social-cards { flex-direction: column; align-items: stretch; }
  .contact-page .field-row { grid-template-columns: 1fr; }
  .contact-page .faq-grid { grid-template-columns: 1fr; }
  .contact-page .sidebar { padding: 2.5rem 0; }
  .contact-page .form-col { padding: 2.5rem 0 3rem; }
}

@media (max-width: 600px) {
  .news-page .news-grid,
  .news-page .skeleton-grid { grid-template-columns: 1fr; }
  .news-page .news-card.featured { grid-template-columns: 1fr; }
  .news-page .cta-strip { padding: 1.4rem; }
  .news-page .cta-buttons { width: 100%; }
  .news-page .cta-buttons a { text-align: center; }
  .insights-page .overview-bar { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .insights-page .ic-top { flex-direction: column; }
  .insights-page .ic-link { margin-left: 0; }
  .site-footer-inner { grid-template-columns: 1fr; }
  .site-footer .footer-links { grid-column: auto; justify-content: flex-start; flex-wrap: wrap; }
  .site-footer small { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
