/* One type system across the storefront, learning tools and Community. */
:root{--sans:"Google Sans","Noto Sans Thai",Arial,sans-serif;--latin:var(--sans);--type-h1:clamp(2.4rem,4.6vw,4rem);--type-h2:clamp(1.75rem,3.15vw,2.75rem);--type-h3:clamp(1.125rem,1.9vw,1.5rem)}
body{font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.7;font-optical-sizing:auto;letter-spacing:0}
html[lang=th] body{line-height:1.8}
button,input,select,textarea{font-family:var(--sans)}
h1,h2,h3,h4{font-family:var(--sans);font-weight:600;text-wrap:balance}
h1{font-size:var(--type-h1)}h2{font-size:var(--type-h2)}h3{font-size:var(--type-h3)}
html[lang=th] :is(h1,h2,h3,h4){letter-spacing:0;line-height:1.4}
html[lang=en] :is(h1,h2,h3,h4){letter-spacing:-.025em;line-height:1.25}
html[lang=th] :is(.lead,.page-hero p,.education-hero p,.edu-hero-copy>p){line-height:1.85;letter-spacing:0}
.lead{font-size:clamp(1rem,1.3vw,1.125rem);max-width:66ch}
.page-hero h1,.education-hero h1,.education-home .edu-hero h1,.printer-store-hero h1,.parts-hero h1,body[data-page="quote.html"] .inner-hero h1{font-size:var(--type-h1);font-weight:600}
.section-heading h2,.home-workflow-intro h2,.education-hub-routes .edu-heading h2{font-size:var(--type-h2);font-weight:600}
.home-path h3,.education-route h3{font-size:var(--type-h3);font-weight:600}
#home-banner h1{font-size:clamp(2.625rem,5.5vw,4.5rem);font-weight:500;line-height:1.38;letter-spacing:0}
html[lang=en] #home-banner h1{font-size:clamp(3rem,5.6vw,5rem);line-height:1.1;letter-spacing:-.035em}
.steam-copy h2{font-size:clamp(2rem,4vw,3.25rem);font-weight:500}
.forum-heading h1{font-size:clamp(1.875rem,3.3vw,2.75rem)}
.masthead :is(.nav-item,summary,.nav-popover a,.member-link,.nav-cta){letter-spacing:0}
.masthead .nav-popover strong{font-weight:600;line-height:1.6}
.masthead .nav-popover small{line-height:1.7}
:where(.meta,.badge,.edu-eyebrow,.printer-store-kicker,.forum-eyebrow){font-weight:600}
:where(p,li,dd,label,summary){overflow-wrap:break-word}
@media(max-width:700px){
 :root{--type-h1:clamp(2rem,7.3vw,2.625rem);--type-h2:clamp(1.625rem,5.7vw,2rem);--type-h3:1.25rem}
 #home-banner h1{font-size:clamp(2rem,8.7vw,3.125rem);line-height:1.4}
 html[lang=en] #home-banner h1{font-size:clamp(2.5rem,10vw,3.5rem);line-height:1.12}
 .forum-heading h1{font-size:clamp(1.625rem,6.3vw,2rem)}
 .lead{font-size:16px}
 /* Keep mobile form fields readable and avoid focus zoom on iOS. */
 body :is(input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}
}
