/* Heading weight scale for Onest, identical in every city.
   page and section titles 600, card and list headlines 500, body 400, logo wordmark 700.
   !important is deliberate: this layer settles the scale over the per-page rules. Load after theme.css. */
:root{--w-title:600;--w-head:500;--w-body:400;--w-logo:700}
html body h1,html body h2{font-weight:var(--w-title)!important}
html body h3,html body .news-item strong,html body .news-item strong .news-headline{font-weight:var(--w-head)!important}
html body .news-headline{font-weight:inherit!important}
html body .logo{font-weight:var(--w-logo)}
/* Minimum text sizes: supporting text never below 12px, timestamps 13px */
html body time,html body .meta time,html body .news-item time{font-size:13px!important}
html body .header-tagline,html body .rail-day,html body .rail-day span,html body .vpo-all,html body .more-shorts,html body .section-head a,html body .video-label{font-size:12px!important}

/* Touch baseline (phones and tablets): no grey tap flash, no 300ms click delay, no font inflation in landscape,
   inputs at 16px so iOS does not zoom the page on focus, controls are not text-selectable on long press */
html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;text-size-adjust:100%}
html body input,html body textarea,html body select{font-size:16px!important}
html body a,html body button,html body [role="button"],html body summary{touch-action:manipulation}
html body button,html body [role="button"]{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
@media(hover:none){
  html body a:active,html body button:active{opacity:.7}
}

/* Long page titles on phones and tablets: smaller size so a long headline does not take the whole screen */
@media(max-width:900px){
  html body h1[data-title="long"]{font-size:28px!important;line-height:1.15!important}
  html body h1[data-title="xlong"]{font-size:24px!important;line-height:1.2!important}
}

/* Card titles that sit under the page h1 are h2 for the heading order, but keep the card weight */
html body .secondary h2,html body .pd-card h2,html body .column-card h2{font-weight:var(--w-head)!important}
html body .menu-label{font-size:12px!important}

/* Footer links on phones and tablets: 36px rows (above the 24px minimum, tighter rhythm than the former 44px) */
@media(max-width:900px){
  html body .footer .footer-links a{min-height:36px;padding-block:7px}
}

/* 15: supporting text on cards, photo captions, related dates and the footer never goes below 12px */
html body .meta,html body .secondary .meta,html body .city-grid .compact .meta,html body .footer p,html body .footer .footer-copyright,
html body .story-figure figcaption,html body .story-related time,html body .archive-jumps,html body .concept,html body .vpo-note,html body .vpo-housing>span>span{font-size:12px!important}
