@font-face{font-family:"Source Han Serif SC";src:url("/assets/fonts/source-han-serif-sc/SourceHanSerifSC-Regular.woff2?v=2") format("woff2");font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:"Inter";src:url("/assets/fonts/inter/Inter-Latin.woff2?v=2") format("woff2");font-style:normal;font-weight:400 600;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --font-system:"Source Han Sans SC","Source Han Sans","PingFang SC","Microsoft YaHei",sans-serif;
  --font-philosophy:"Source Han Serif SC","Source Han Serif","Songti SC","STSong",serif;
  --font-measurement:"Inter","Source Han Sans SC","Helvetica Neue",Arial,sans-serif;
  --type-display:56px;
  --type-h1:48px;
  --type-h2:36px;
  --type-h3:28px;
  --type-h4:20px;
  --type-body:16px;
  --type-small:14px;
  --type-caption:12px;
  --leading-display:1.15;
  --leading-body:1.85;
  --tracking-display:-.03em;
  --tracking-body:.01em;
}

html{font-family:var(--font-system);font-synthesis:none}
body,button,input,select,textarea,optgroup{font-family:var(--font-system);font-weight:400}
body{font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body)}
b,strong{font-weight:600}

/* System: navigation, controls, products and support */
.brand,.site-logo,.logo,.forecast-card-footer__brand{font-family:var(--font-measurement);font-weight:500;letter-spacing:-.025em}
.primary-nav a,.mobile-panel a,.tabs .tab,.tab,.btn,button,input,select,textarea,.filter-label,.filter-chip,.device-btn,.view-btn,.drawer-title,.category-chip,.kb-search{font-family:var(--font-system)}
.primary-nav a{font-size:15px;font-weight:500;line-height:1.2;letter-spacing:.02em}
.eyebrow,.overline,.science-label,.section-tag,.panel-kicker,.device-overline,.device-kicker,.data-kicker,.filter-label{font-family:var(--font-system);font-size:var(--type-caption);font-weight:500;line-height:1.4;letter-spacing:.12em}
.btn,.text-btn,.mobile-filter-btn,.page-btn,.compare-link{font-size:var(--type-small);font-weight:500;line-height:1}
.faq-section,.faq-list,.faq,.interpretation details,.kb-list{font-family:var(--font-system)}
#schumann-faq h3,#geo-faq h3,#aurora-faq h3,#flare-faq h3,#solar-faq h3{font-family:var(--font-system);font-weight:500;letter-spacing:-.01em}
.faq-list summary,.faq summary,.interpretation summary{font-weight:500}
.device-card h3,.chooser-card h3,.product-card h3{font-family:var(--font-system);font-size:var(--type-h4);font-weight:600;line-height:1.4;letter-spacing:0}

/* Philosophy: hero, scientific explanation and brand narrative */
.hero h1{font-family:var(--font-system);font-size:var(--type-display);font-weight:500;line-height:1.18;letter-spacing:var(--tracking-display)}
.hero h1 em{font-family:var(--font-philosophy);font-style:normal;font-weight:400;letter-spacing:-.02em}
.science-hero h2,.science-block h3,.read-chart h2,.interpretation h2,.content-wrap .section h3{font-family:var(--font-philosophy);font-weight:400;letter-spacing:-.02em}
.science-hero h2{font-size:var(--type-h2);line-height:1.25}
.science-block h3,.content-wrap .section h3{font-size:var(--type-h3);line-height:1.3}
.science-block h3 em,.science-hero h2 em,.read-chart h2 em,.interpretation h2 em{font-family:inherit;font-style:normal;font-weight:inherit}
.science-copy,.content-wrap .section>p,.article>section>p,.read-card p,.interpretation details div{font-family:var(--font-system);font-size:var(--type-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body)}
.library-title h2,.panel-head h2,.data-hero h2,.product-chooser h2,.empty-state h1{font-family:var(--font-system);font-weight:500}

/* Measurement: frequency, time, range and live telemetry */
.hz,.modal-hz,.device-range,.chooser-card>strong,.proof-item strong,.summary-cell strong,.schumann-box strong,.metric strong,.geo-live-strip strong,.status-card strong,.number,.range-values,.frequency-value,[data-frequency],time{font-family:var(--font-measurement);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1;letter-spacing:-.025em}
.frequency-grid:not(.list) .hz{font-size:48px;font-weight:400;line-height:1}
.frequency-grid.list .hz{font-size:32px;font-weight:400;line-height:1}
.modal-hz{font-size:48px;font-weight:400;line-height:1}
.device-range,.chooser-card>strong{font-weight:400}
.metric strong,.geo-live-strip strong,.status-card strong{font-weight:500}

/* Reading rhythm */
p{line-height:var(--leading-body)}
small,.caption,figcaption,.source-widget-note{font-size:var(--type-caption);line-height:1.6}
.hero p,.science-hero>p,.panel-head>p,.device-hero p,.product-chooser p{font-size:var(--type-body);line-height:1.8}

@media(max-width:780px){
  :root{--type-display:34px;--type-h1:34px;--type-h2:28px;--type-h3:22px;--type-h4:18px}
  .primary-nav a,.mobile-panel a{font-size:14px}
  .hero h1{font-size:var(--type-display);line-height:1.2}
  .science-hero h2{font-size:var(--type-h2)}
  .science-block h3,.content-wrap .section h3{font-size:var(--type-h3)}
  .frequency-grid:not(.list) .hz,.modal-hz{font-size:48px}
}
