/* One consistent family: the Jua face used by the main weekend headline. */
@font-face{font-family:'Jua';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/Jua-Regular.woff2') format('woff2')}
:root{--font-body:'Jua','Malgun Gothic',sans-serif;--font-title:var(--font-body);--font-action:var(--font-body);--font-note:var(--font-body)}
body{font-family:var(--font-body);font-size:16px;line-height:1.7;font-weight:400}
body *{font-family:var(--font-body)!important;font-weight:400!important;letter-spacing:0}
input,select,textarea,button{font-size:15px;line-height:1.5}
h1,h2,h3{font-weight:400;line-height:1.35;overflow-wrap:anywhere}
.searchHero h1{line-height:1.22;letter-spacing:0}
.brand small,.brandText small{font-size:14px;line-height:1.5;letter-spacing:0}
.eyebrow,.heroLabel,.discoverIntro{font-size:16px;line-height:1.6;letter-spacing:0;font-weight:400}
.growthHome .heroLabel{font-size:15px!important}
.growthHome .hero .eyebrow{font-size:14px}
.siteHeader nav a,.siteHeader nav button,header nav a,header nav button{font-size:14px!important;line-height:1.6;flex-shrink:0}
.siteHeader{flex-wrap:wrap}
.siteHeader .brand{flex-shrink:0}
.siteHeader nav{min-width:0;gap:14px!important}
.siteHeader #memberOpen,.siteHeader .searchbutton{font-size:14px}
.primary,.secondary,.more,.actions a,.share,.personalTools button,.personalTools a,.intentButtons button,.categoryExpand,.adminTabs button{font-size:15px;line-height:1.5}
#heroCTA,.quizBanner .primary,.searchHero .primary{height:auto;min-height:44px;white-space:normal;flex-shrink:0;padding-top:12px;padding-bottom:12px;line-height:1.5}
.heroCopy{min-width:0}
.catGroup .category{height:auto!important;min-height:64px!important;font-size:14px!important;line-height:1.5;padding:12px!important}
.category small,.categoryAll small,.subMenu button span{font-size:13px}
.subMenu strong,.subMenu button{font-size:14px!important;line-height:1.6}
.filters label,.filters select,.query input,.listhead select,.sortControls select,.searchHero label,.growthFilters label{font-size:14px}
.cardDesc{font-size:15px!important;line-height:1.7;height:auto!important;max-height:none!important;min-height:3.4em;overflow:visible}
.cardMeta,.cardStats,.cardFoot{font-size:14px!important;line-height:1.65}
.cardFoot span,.cardChoice span,.growthMini>span{font-size:14px;line-height:1.65}
.sampleNote,.rankingNote,.quiet,.catalogSummary,.pagination span,.quizSlim small,.searchHero small,.growthFilters small,.detailData span,.detailContact,.sourcePanel,.sourceList,.formStack .hint,.mapDisclaimer,footer p,footer button,.previewbar,.previewbar span{font-size:14px;line-height:1.7}
.tag{font-size:13px}
.editorial p,dialog p,.guideRow,.privacyText,.checkRow,.adSmall,.adExampleNote,.adPrinciples p,.adFaq p{font-size:15px!important;line-height:1.75}
.pagination button,.adminToolbar button,.adminTabs button,.formStack label,form label{font-size:14px}
/* Preserve conventional map control symbols; all site text uses Jua. */
.leaflet-control-zoom a{font-family:'Lucida Console',Monaco,monospace!important}
@media(max-width:1100px){.siteHeader nav{order:3;width:100%;padding-top:12px;overflow-x:auto}.siteHeader .searchbutton{margin-left:auto}}
@media(max-width:700px){
 .searchHero h1{font-size:clamp(34px,8.8vw,48px)}
 .quizBanner h2{line-height:1.4}
 .brandText small{font-size:14px}
 .siteHeader .searchbutton{font-size:14px;padding:9px 12px}
 .cardDesc{margin-left:10px;margin-right:10px}
 .cardMeta{flex-wrap:wrap;gap:6px}
 .catalogSummary{flex-wrap:wrap;gap:12px}
 .growthHome .hero .slideControls{flex-wrap:wrap}
}

#heroCTA,.searchHero .primary,.quizBanner .primary{font-size:15px!important}
