@font-face{font-family:'MM Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/fonts/montserrat-latin-variable.woff2') format('woff2')}
html body,html .mm-campaign{font-family:'MM Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
html :is(button,input,select,textarea){font-family:inherit}
html :is(h1,h2,h3){text-wrap:balance;overflow-wrap:break-word}
html em{font-family:inherit}
/* Text must shrink inside flex/grid columns before it can wrap. */
.hero-copy,.section-heading>*,.sheet-hero>*,.contact-copy,.nl-tools>label{min-width:0}
html :is(input,select,textarea){min-width:0;max-width:100%}
html :is(.button,.campaign-submit){white-space:normal;text-align:center}
@media(max-width:600px){
 .sheet-header>span{min-width:0;overflow-wrap:break-word}
 #program-dialog #dialog-title{font-size:clamp(25px,7.4vw,29px);line-height:1.16}
 .welcome-description{overflow-wrap:break-word}
}
/* Longer Montserrat copy must not overlap the welcome footer. */
@media(max-width:700px){
 .mm-welcome{display:flex;flex-direction:column;justify-content:flex-start;padding:28px 22px 22px;gap:30px}
 .welcome-content{flex:0 0 auto;margin:auto 0 0}
 .mm-welcome .welcome-footer{position:relative;inset:auto;width:100%;flex:0 0 auto;margin:0 0 auto;gap:14px}
}
/* Readable secondary copy on the public site's white/light surfaces. */
html:root{--muted:#4e596b}
html :is(.hero-description,.heading-aside,.course-content>p,.approach-intro>p:not(.eyebrow),.steps p,.about-copy>p:not(.eyebrow),.contact-copy>p:not(.eyebrow),.faq-list p,.linkedin-panel p,.story-prose>p:not(.eyebrow),.destination-grid p,.campaign-description,.welcome-description){color:#4e596b;font-size:16px;line-height:1.8;font-weight:450}
html #news-slide>p{color:#4e596b;font-size:16px;line-height:1.8}
html :is(.course-bottom span,.catalog-note,.draft-label,.approach-note,.form-notice,.news-meta,.founder-portrait figcaption,.story-note,.story-person figcaption,.discovery-prompt,.adult-help,.privacy-notice,.campaign-consent){color:#526074;font-size:13px;line-height:1.65;font-weight:450}
html .mm-campaign :is(.campaign-consent,.campaign-description){color:#4e596b}
html .mm-campaign .campaign-consent{font-size:13px;line-height:1.65}
html .mm-campaign .campaign-description{font-size:16px;line-height:1.8}
html :is(.eyebrow,.hero .eyebrow,.sheet-header>span,.welcome-eyebrow,.welcome-hint,.scene-topline){color:#526074;font-size:12px;line-height:1.6}
html :is(.page-intro a,.footer-top>p,.footer-bottom,.team-access,.welcome-credit,.welcome-copyright){color:#526074;font-size:12px;line-height:1.6}
html .filter button:not(.active){color:#4e596b;font-size:13px}
html #contact-form label{font-size:14px;line-height:1.6}
html #contact-form :is(input,select,textarea){font-size:16px}
html :is(input,textarea)::placeholder{color:#667185;opacity:1}
html #program-dialog :is(#dialog-description,.sheet-section p,.sheet-section li){font-size:16px;line-height:1.8;color:#4e596b}
html #program-dialog .sheet-footer p{font-size:13px;line-height:1.6;color:#526074}
html #program-dialog .sheet-label{font-size:13px;line-height:1.6;color:#465975}
html #program-dialog .sheet-header>span{font-size:11px;color:#526074;letter-spacing:.1em}
@media(max-width:600px){
 html .course-content>p{min-height:0}
 html #program-dialog .sheet-footer{position:static}
 html .welcome-copyright{font-size:11px;letter-spacing:0}
}
