/* Responsive layout. Load last. */

  @media (max-width:1100px){
    .hero-grid{ grid-template-columns:minmax(0,1fr) minmax(320px,.72fr); gap:34px; }
    .hero-title{ font-size:clamp(4.4rem,10vw,7.4rem); }
    .hero-dial{ right:-210px; }
    .term-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
    .metric-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
    .metric-card[data-metric="rank"]{ grid-column:1 / -1; }
  }

  @media (max-width:980px){
    .section-head.has-control{ flex-direction:column; align-items:flex-start; gap:18px; }
    .range-control{ padding-bottom:0; }
    .metric-card{ padding:22px 24px 14px; }
  }

  @media (max-width:820px){
    .metric-grid{ grid-template-columns:1fr; }
    .metric-card[data-metric="rank"]{ grid-column:auto; }
    .metric-chart{ min-height:292px; }
  }

  @media (max-width:880px){
    .shell{ width:min(100% - 40px,760px); }
    .hero{ min-height:0; padding-top:132px; }
    .hero-grid{ grid-template-columns:1fr; gap:42px; margin-top:38px; }
    .hero-console-wrap{ min-height:0; justify-content:flex-start; }
    .console{ width:min(440px,100%); }
    .hero-dial{
      width:560px; height:560px;
      right:-112px; top:38%;
      opacity:.48;
    }
    body.is-ready .hero-dial{ opacity:.48; }
    .hero-facts{ max-width:none; }
    .header-meta{ display:none; }
  }

  @media (max-width:700px){
    .shell{ width:calc(100% - 36px); }
    .site-header{ height:68px; padding:0 18px; }
    .site-header.is-scrolled{ height:58px; }
    .site-nav{ gap:16px; }
    .site-nav a{ font-size:11px; }
    .brand-name small{ display:none; }
    .brand-name b{ font-size:12px; }
    .hero{ padding-top:114px; padding-bottom:54px; }
    .hero::after{ left:18px; right:18px; }
    .hero-kicker{ gap:9px; font-size:8px; letter-spacing:.17em; }
    .hero-kicker .rule{ width:26px; }
    .hero-title{ font-size:clamp(3.9rem,17vw,5.8rem); letter-spacing:.03em; }
    .hero-identity{ margin-top:19px; gap:9px; font-size:11px; }
    .hero-facts{ margin-top:34px; padding-top:16px; }
    .hero-facts .fact{ min-width:50%; padding:0 0 16px; }
    .hero-facts .fact + .fact{ padding-left:0; border-left:0; }
    .hero-facts .fact:nth-child(even){ padding-left:18px; border-left:1px solid rgba(255,255,255,.07); }
    .hero-facts .fact:nth-last-child(-n+2){ padding-bottom:0; }
    .hero-facts dd{ font-size:17px; }
    .console{ padding:22px 20px 20px; border-radius:24px; }
    .console-value{ font-size:clamp(4.3rem,17vw,5.4rem); }
    .console-grid b{ font-size:22px; }
    .hero-dial{ width:460px; height:460px; right:-160px; top:44%; }
    .section-head{ flex-direction:column; gap:10px; margin-bottom:22px; }
    .section-sub{ margin-top:8px; font-size:8px; }
    .section h2{ font-size:clamp(1.8rem,8vw,2.3rem); }
    .range-control{ width:100%; justify-content:space-between; gap:12px; }
    .segmented{ flex:1; max-width:270px; }
    .segmented button{ min-width:0; padding:8px 10px; font-size:8.5px; }
    .metric-grid{ gap:12px; }
    .metric-card{ padding:18px 16px 12px; border-radius:20px; }
    .metric-head{ min-height:58px; gap:12px; padding-bottom:4px; }
    .metric-heading{ gap:6px; }
    .metric-heading h3{ font-size:14px; }
    .metric-value{ font-size:33px; }
    .metric-value small{ font-size:8.5px; }
    .metric-term{ font-size:8px; }
    .metric-delta{ font-size:8px; }
    .metric-chart{ min-height:260px; margin-top:0; }
    .chart-tip{ width:206px; padding:11px 12px 10px; }
    .tip-head b{ font-size:12.5px; }
    .tip-row{ font-size:9.5px; }
    .tip-row b{ font-size:12px; }
    .metric-foot{ margin-top:7px; padding-top:9px; font-size:7.5px; }
    .chart-notes{
      gap:5px 12px;
      padding-top:12px;
      font-size:8px;
      justify-content:flex-start;
    }
    .term-grid{ grid-template-columns:1fr; gap:12px; }
    .term-card{ padding:18px 18px 16px; }
    .footer-inner{ padding:23px 0 34px; }
    #fx{ opacity:.72; }
  }

  @media (max-width:420px){
    .shell{ width:calc(100% - 28px); }
    .site-nav{ gap:12px; }
    .hero-title{ font-size:clamp(3.45rem,17.5vw,4.9rem); }
    .hero-identity span:last-child{ width:100%; }
    .console-grid > div:nth-child(even){ padding-left:14px; }
    .console-value{ font-size:4.6rem; }
    .range-label{ display:none; }
    .segmented{ max-width:none; width:100%; }
    .metric-card{ padding-left:14px; padding-right:14px; }
    .metric-value{ font-size:31px; }
    .metric-delta{ font-size:7.5px; }
    .chart-tip{ width:198px; }
  }

  @media (max-width:360px){
    .metric-head{ gap:8px; }
    .metric-value{ font-size:29px; }
    .segmented button{ padding:7px 8px; font-size:8px; }
    .chart-notes span:nth-child(4){ display:none; }
  }
