/* One scale by editorial role, independent of the licensed font family. */
:root{
 --ic-type-body:1.125rem;
 --ic-type-intro:clamp(1.125rem,1.35vw,1.25rem);
 --ic-type-h1:clamp(2.75rem,5vw,4.75rem);
 --ic-type-h2:clamp(2.25rem,3.8vw,3.5rem);
 --ic-type-h3:clamp(1.5rem,2vw,1.75rem);
 --ic-type-small:.875rem;
}
body{font-size:var(--ic-type-body);line-height:1.65}
main h1,main .hl-hero h1,main .page-heading h1,main .article-heading h1,main .ic-bio-header h1,main .ic-service-heading h1{font-size:var(--ic-type-h1);line-height:1.08;letter-spacing:-.035em}
main h2,main :is(.hl-story,.hl-newsletter,.hl-invites,.hl-final-contact) h2,main :is(.hl-themes,.hl-agenda,.hl-chat)>h2,main .section-heading h2{font-size:var(--ic-type-h2);line-height:1.12}
main h3,main .event-row h3,main .hl-topic h3,main .hl-contact-options h3{font-size:var(--ic-type-h3);line-height:1.25}
main :is(.topic-index,.ic-service-card) h2,main .ic-service-info>h2{font-size:var(--ic-type-h3);line-height:1.25}
main .ic-bio-section h2,main .entry-content h2{font-size:clamp(1.75rem,2.6vw,2.5rem);line-height:1.2}
main :is(.hl-hero-copy,.hl-story,.hl-newsletter,.hl-invites,.hl-final-contact,.section-heading,.ic-service-heading)>p:not(.eyebrow),main .hl-topic p,main .event-row p,main .topic-index p,main .ic-service-card p,main .ic-service-info p,main .reading,main .ic-bio-reading,main .entry-content{font-size:var(--ic-type-body);line-height:1.65}
main .intro,main .hl-hero .intro,main .page-heading .intro,main .ic-bio-header .intro,main .ic-service-heading .intro,main :is(.hl-story,.hl-invites,.hl-final-contact) .intro,main .territory-intro{font-size:var(--ic-type-intro);line-height:1.6}
main .hl-hero-copy>p:not(.intro):not(.eyebrow){font-size:var(--ic-type-body)}
main .eyebrow{font-size:var(--ic-type-small);line-height:1.4;letter-spacing:.1em}
main .button,main .text-link,main .ic-service-card .button,.site-header nav a,.menu-toggle{font-size:1rem;line-height:1.35}
main :is(.fine-print,.event-meta,.action-role,.action-source,.card-meta,.article-meta){font-size:var(--ic-type-small);line-height:1.5}
main .event-meta{font-size:var(--ic-type-small)!important}
main .territory-province>h3{font-size:var(--ic-type-h3);letter-spacing:-.02em}
main .territory-actions h4{font-size:var(--ic-type-h3);line-height:1.25}
main .territory-actions .action-summary{font-size:var(--ic-type-body);line-height:1.65}
main .territory-choices a{font-size:1rem;line-height:1.4;cursor:pointer}
main .territory-map a[role="button"]{cursor:pointer}
main .territory-choices a:focus-visible{outline:3px solid var(--ink);outline-offset:3px}
main .action-kind{font-size:.75rem;line-height:1.4}
main .action-place,main .territory-status{font-size:var(--ic-type-small)}
.hl-footer h3{font-size:1.125rem;line-height:1.4}
.hl-footer-grid a,.hl-footer-grid p{font-size:1rem;line-height:1.5}
.hl-footer .brand{font-size:1.8rem;line-height:1.1}
.hl-footer-bottom,.hl-footer .hl-footer-services{font-size:var(--ic-type-small);line-height:1.5}
@media(max-width:760px){
 :root{--ic-type-body:1rem;--ic-type-intro:1.0625rem;--ic-type-h1:clamp(2.5rem,9vw,3.5rem);--ic-type-h2:clamp(2.1rem,7.5vw,2.75rem);--ic-type-h3:1.5rem}
 main .hl-hero-copy>p:not(.eyebrow){font-size:var(--ic-type-body)}
 main .hl-hero-copy>.intro{font-size:var(--ic-type-intro)}
 .hl-footer .brand{font-size:1.65rem}
}
