/* CMS font roles. Values are emitted from a fixed server-side allowlist. */
@font-face{font-family:Barlow;src:url('../fonts/Barlow-Regular.woff') format('woff');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('../fonts/Barlow-Italic.woff') format('woff');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:Barlow;src:url('../fonts/Barlow-SemiBold.woff') format('woff');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('../fonts/Barlow-Bold.woff') format('woff');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Barlow;src:url('../fonts/Barlow-BoldItalic.woff') format('woff');font-weight:700;font-style:italic;font-display:swap}
:root{--body:Barlow,Arial,sans-serif;--ui:Barlow,Arial,sans-serif;--masthead:Anton,'Arial Narrow',sans-serif;--heading-case:uppercase}
body,main,.prose,.feature-page .prose,.content-block,.feature-statement,.feature-connections,.feature-photograph,.package-choice{font-family:var(--body)}
.site-header .wordmark,.site-footer .wordmark{font-family:var(--masthead)}
h1,h2,.lead-spotlight h2,.card-content h3,.notice-list h3,.feature-people a,.package-choice strong{font-family:var(--display);text-transform:var(--heading-case)}
h3,h4,h5,h6,.prose h2,.prose h3,.prose h4{font-family:var(--editorial);font-weight:400;text-transform:none;letter-spacing:0;line-height:1.3}
/* Cards contain story/profile headlines, while headings within prose are subheadings. */
.card-content h3,.notice-list h3,.feature-story-link h3{font-family:var(--display);text-transform:var(--heading-case);line-height:1.15}
.lead,.hero-introduction,.feature-intro,.masthead-strapline,.lead-spotlight__standfirst,.pullquote blockquote,.feature-statement>p{font-family:var(--editorial)}
.prose{font-size:1.18rem;line-height:1.75;max-width:68ch}.prose h2{font-size:clamp(1.7rem,3vw,2.3rem)}.prose h3{font-size:1.65rem}
.primary-navigation,.menu-toggle,.site-footer nav,.footer-bottom,.button,.text-link,.filters label,input,select,textarea,button,.eyebrow,.tag-list,.breadcrumbs,.pagination,.article-meta,.location,.result-count,.section-jumps a,.discovery-links>a,.scene-links a,.event-date,.event-status,.visibility-badge,.package-choices legend,.package-price,.application-fields label,.application-consent,.application-steps li,.directory-join p,.editorial-image figcaption,.pullquote figcaption{font-family:var(--ui)}
.primary-navigation{font-weight:600}.filters label,.section-jumps a,.scene-links a{font-weight:600}.primary-navigation a{letter-spacing:.03em}
/* Plum keeps its existing serif cover treatment unless this page/block explicitly chooses another heading font. */
.theme-plum .feature-cover h1,.theme-plum .feature-statement h2{font-family:var(--heading-override,var(--editorial));text-transform:var(--heading-case-override,none)}
.feature-promotion.theme-plum h2{font-family:var(--editorial);text-transform:none}
@media(max-width:600px){.prose{font-size:1.1rem;line-height:1.7}.prose h2{font-size:1.65rem}.prose h3{font-size:1.4rem}}

.site-footer .eyebrow,.application-fields input,.application-fields textarea{font-family:var(--ui)}
