/* One editorial type family across the group and brand pages. */
:root{--sans:var(--serif)}
body{font-family:var(--serif);font-size:18px;line-height:1.65}
button,input,textarea,select{font-family:inherit}
p{letter-spacing:0}
h1,h2,h3,h4{letter-spacing:-.02em}
.nav{font-size:15px}
.brand-menu-trigger{font-family:var(--serif);letter-spacing:0}
.eyebrow,.brand-label,.brand-code{font-family:var(--serif)}
.eyebrow{font-size:12px;letter-spacing:.1em}
.button,.text-link{font-size:15px}
.hero-copy{font-size:19px;line-height:1.6}
.hero-base{font-size:13px}
.section-intro>p,.group-introduction p,.division-description,.sterna-description,.contact-copy p{font-size:18px!important;line-height:1.65!important}
.group-introduction p:first-child{font-size:23px!important}
.advisory-description,.sterna-services,.group-service-link,.advisory-entry>span,.portfolio-heading{font-size:15px!important}
.service-tab{font-size:16px}
.service-tab b{font-size:13px}
.service-panel p{font-size:18px;line-height:1.65}
.service-panel .eyebrow{font-size:12px}
.trusted-heading h3{font-size:21px}
.site-footer{font-size:14px}
.brand-breadcrumb{font-size:14px}
.brand-intro-copy p,.brand-heading>p,.brand-card>p,.brand-feature-copy>p,.brand-approach p,.brand-language p,.brand-contact-copy p{font-size:18px;line-height:1.65}
.brand-intro-copy .brand-lead,.brand-language .brand-lead{font-size:23px;line-height:1.5}
.brand-audience h3{font-size:21px;font-weight:700}
.brand-audience p,.brand-scope,.brand-language-list li{font-size:16px;line-height:1.6}
.brand-label{font-size:12px}
.brand-code{font-size:12px}
.brand-page .eyebrow{font-size:12px;line-height:1.5;letter-spacing:.1em}
.brand-language p+p{margin-top:16px}
.brand-page h2{font-weight:400}
.brand-card h3,.brand-approach h3{font-size:31px}
/* The two brand mastheads share exact geometry and typographic slots. */
.brand-hero{height:560px}
.brand-hero-inner{height:100%;min-height:0;display:grid;grid-template-rows:18px 132px 88px 48px;gap:20px;align-content:center;justify-content:start;align-items:start;padding-block:40px}
.brand-hero .eyebrow{font-size:12px;letter-spacing:.1em;line-height:18px}
.brand-hero h1{font-size:62px;line-height:1.06;letter-spacing:-.02em;max-width:650px;margin:0;font-weight:400}
.brand-hero-copy{font-size:18px;line-height:1.6;max-width:590px;margin:0}
.brand-hero .button{margin:0;min-width:176px;justify-self:start;align-self:start;padding:11px 23px}
@media(max-width:1100px){.brand-hero h1{font-size:58px}.brand-hero-copy{max-width:560px}.footer-right{gap:22px}}
@media(max-width:800px){
 .nav{font-size:17px}.menu-button{font-size:14px}
 .hero-copy{font-size:18px}.hero-base{font-size:12px}
 .section-intro>p,.group-introduction p,.division-description,.sterna-description,.contact-copy p{font-size:17px!important}
 .group-introduction p:first-child{font-size:21px!important}
 .service-tab{font-size:15px}.service-panel p{font-size:17px}
 .brand-hero-inner{grid-template-rows:18px 112px 116px 48px;gap:20px;padding-block:32px}
 .brand-hero h1{font-size:52px;line-height:1.06}
 .brand-hero-copy{font-size:18px;max-width:560px}
 .brand-intro-copy p,.brand-heading>p,.brand-card>p,.brand-feature-copy>p,.brand-approach p,.brand-language p,.brand-contact-copy p{font-size:17px}
 .brand-intro-copy .brand-lead,.brand-language .brand-lead{font-size:21px}
 .brand-breadcrumb{font-size:13px}.brand-audience h3{font-size:21px}
}
@media(max-width:540px){
 .brand-hero-inner{grid-template-rows:18px 100px 140px 48px;gap:18px}
 .brand-hero h1{font-size:clamp(34px,11.3vw,44px);line-height:1.08;letter-spacing:-.02em}
 .brand-hero .eyebrow{font-size:11px;letter-spacing:.1em}
 .brand-hero-copy{font-size:17px;line-height:1.6}
 .brand-audience p,.brand-scope,.brand-language-list li{font-size:16px}
 .brand-card h3,.brand-approach h3{font-size:29px}
 .brand-page h2{font-size:35px}
 .site-footer{font-size:13px}.footer-right{gap:18px}
}
@media(max-width:360px){.brand-hero-inner{grid-template-rows:18px 92px 168px 48px;gap:18px}}
