/* Linda Knutson Website — Typography Standard B: Warm + Readable
   Approved 2026-10-05. This file is intentionally loaded LAST so it
   creates a consistent readable type hierarchy across every page. */
:root{
  --lk-body:18.5px;
  --lk-eyebrow:.90rem;
  --lk-lead:1.16rem;
  --lk-h1-min:3.20rem;
  --lk-h1-max:4.55rem;
  --lk-h2-min:2.45rem;
  --lk-h2-max:3.65rem;
  --lk-h3:1.55rem;
}
html{font-size:16px}
body{font-size:var(--lk-body)!important;line-height:1.70!important}
p,li{line-height:1.70}
.eyebrow,.prep-kicker,.small-caps,.brand-insight-label,.hero-kicker{
  font-size:var(--lk-eyebrow)!important;
  line-height:1.5!important;
  letter-spacing:.12em!important;
}
.lead,.prep-hero .lead,.hero .lead,.hero-bottom .lead{
  font-size:var(--lk-lead)!important;
  line-height:1.70!important;
}
h1,.hero h1,.hero-mini h1,.prep-hero h1,.cinematic-home .hero-title-wrap h1{
  font-size:clamp(var(--lk-h1-min),4.8vw,var(--lk-h1-max))!important;
  line-height:1.04!important;
  letter-spacing:-.028em!important;
}
h2,.home-intent h2,.editorial-intro h2,.center-heading h2,.community-heading h2,
.roots-copy h2,.story-stack h2,.reveal-existing h2{
  font-size:clamp(var(--lk-h2-min),3.6vw,var(--lk-h2-max))!important;
  line-height:1.06!important;
  letter-spacing:-.025em!important;
}
h3,.home-intent-card h3,.story-stack h3,.story-points h3{
  font-size:var(--lk-h3)!important;
  line-height:1.25!important;
}
.handwritten,.editorial-script{
  font-size:clamp(1.55rem,2vw,1.95rem)!important;
  line-height:1.22!important;
}
.home-intent-head>p,.home-proof-summary>p,.home-proof-copy>p,
.editorial-subhead,.prep-thesis{
  font-size:1.12rem!important;
  line-height:1.62!important;
}
.home-intent-card p,.card p,.fine,.small-note{font-size:1rem;line-height:1.65}
.home-intent-card small,.home-result span{font-size:.82rem!important;line-height:1.4!important}

/* Header readability / affiliation prominence */
.affiliation-inner{min-height:54px!important}
.bhhs-lockup{gap:14px!important;align-items:center!important}
.bhhs-seal{width:38px!important;height:38px!important;font-size:.58rem!important}
.bhhs-copy strong{font-size:.92rem!important;line-height:1.12!important;letter-spacing:.025em!important;text-transform:none!important;font-weight:600!important}
.bhhs-copy em{font-size:.78rem!important;line-height:1.12!important;letter-spacing:.06em!important;text-transform:none!important;font-style:normal!important}
.brand-promise{font-size:.70rem!important;letter-spacing:.13em!important}
.site-header .header-inner,.cinematic-header .header-inner{min-height:82px!important}
.site-header .brand-copy strong,.cinematic-header .brand-copy strong{font-size:1.30rem!important;line-height:1.1!important}
.site-header .brand-copy small,.cinematic-header .brand-copy small{font-size:.70rem!important;line-height:1.35!important;letter-spacing:.08em!important}
.nav>a,.dropbtn{font-size:.79rem!important;letter-spacing:.02em!important}
.header-cta{font-size:.79rem!important}

@media(max-width:820px){
  :root{--lk-body:17.5px;--lk-h1-min:2.65rem;--lk-h1-max:3.65rem;--lk-h2-min:2.15rem;--lk-h2-max:3.0rem;--lk-h3:1.42rem}
  .eyebrow,.prep-kicker,.small-caps,.brand-insight-label,.hero-kicker{font-size:.84rem!important}
  .lead,.prep-hero .lead,.hero .lead,.hero-bottom .lead{font-size:1.10rem!important}
}
@media(max-width:560px){
  :root{--lk-body:17px;--lk-h1-min:2.45rem;--lk-h1-max:3.15rem;--lk-h2-min:2.0rem;--lk-h2-max:2.65rem}
}
