:root{--font-display:'Fraunces',Georgia,'Times New Roman',serif;--font-body:'IBM Plex Sans','Segoe UI',Arial,sans-serif;--font-tech:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
html,body{margin-bottom:0!important;padding-bottom:0!important}
body{font-family:var(--font-body)!important;font-size:16px;line-height:1.65;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,select,textarea{font-family:var(--font-body)!important}
main h1,main h2,main h3{font-family:var(--font-display)!important;font-weight:600!important}
body.page-home main h1{font-size:clamp(52px,5.2vw,64px)!important;line-height:1.04!important;letter-spacing:-.035em!important;text-wrap:balance}
body.page-products main h1,body.page-resources main h1,body.page-contact main h1{font-size:clamp(48px,4.25vw,60px)!important;line-height:1.07!important;letter-spacing:-.026em!important;text-wrap:balance}
body.page-mag main h1{font-size:clamp(46px,4vw,58px)!important;line-height:1.07!important;letter-spacing:-.026em!important;text-wrap:balance}
body.page-about .hero h1{max-width:760px!important;font-size:clamp(46px,3.45vw,51px)!important;line-height:1.1!important;letter-spacing:-.022em!important;text-wrap:auto}
body.page-about .hero h1 span{display:block;white-space:nowrap}
main section h2{font-size:clamp(32px,3.2vw,42px)!important;line-height:1.12!important;letter-spacing:-.018em!important}
main section h3{font-size:clamp(20px,1.8vw,22px)!important;line-height:1.24!important;letter-spacing:-.01em!important}
main p{font-family:var(--font-body)!important;font-size:15px;line-height:1.75}
body.page-products .products-hero-copy>p,body.page-about .hero p,body.page-resources .hero p,body.page-contact .hero p,body.page-mag .detail-hero-copy>p{font-size:16px;line-height:1.72}
.brand{font-family:var(--font-body)!important;font-size:19px!important;font-weight:700!important;line-height:1.2!important;letter-spacing:.025em!important}
.eyebrow,[class*="kicker"],[class*="category-"]{font-family:var(--font-tech)!important}
.eyebrow{font-size:11px!important;font-weight:600!important;line-height:1.4!important;letter-spacing:.14em!important}
header nav a,.nav a,.mobile a{font-family:var(--font-body)!important;font-size:13px;font-weight:600}
.btn,button{font-size:14px;font-weight:600;line-height:1.25}
label{font-size:12px;line-height:1.4;font-weight:600}
input,select,textarea{font-size:14px;line-height:1.45}
footer,footer p,footer a{font-family:var(--font-body)!important;font-size:13px;line-height:1.65}
body.page-about .hero-grid{grid-template-columns:minmax(0,.96fr) minmax(540px,1.04fr)!important;gap:54px!important}
body.page-about .hero-image{width:100%!important;transform:translateX(34px)}
body.page-about .hero .lead{max-width:720px}
body.page-home .cert-logo-item img{width:50px!important;height:50px!important;flex-basis:50px!important;object-fit:contain!important;border-radius:0!important;background:transparent!important;padding:0}
footer{margin-bottom:0!important}footer+*{margin-bottom:0!important}
@media(max-width:1000px){body.page-about .hero-grid{grid-template-columns:1fr!important;gap:36px!important}body.page-about .hero-image{transform:none}}
@media(max-width:680px){body{font-size:15px}body.page-home main h1{font-size:clamp(40px,11vw,46px)!important;line-height:1.07!important}body.page-products main h1,body.page-about .hero h1,body.page-resources main h1,body.page-contact main h1,body.page-mag main h1{font-size:clamp(37px,10vw,42px)!important;line-height:1.09!important}body.page-about .hero h1 span{white-space:normal}main section h2{font-size:clamp(29px,8vw,34px)!important}main section h3{font-size:clamp(18px,5vw,20px)!important}main p{font-size:14px}.eyebrow{font-size:10px!important}.brand{font-size:17px!important}footer,footer p,footer a{font-size:12px}}
