/* Public-site type system. Change the roles here, not individual pages.
   Credential surfaces and the locked key animation do not load this sheet. */
:root{
 --type-family:"Avenir Next",Avenir,"Segoe UI","Helvetica Neue",Helvetica,Arial,sans-serif;
 --type-title:clamp(2.65rem,5.5vw,4.5rem);
 --type-heading:var(--type-title);
 --type-subheading:clamp(1.35rem,2.2vw,1.75rem);
 --type-body:clamp(1.125rem,1.6vw,1.25rem);
 --type-small:1rem;
 --type-label:.85rem;
 --type-navigation:.78rem;
 --type-menu:1.15rem;
 --type-heading-weight:800;
 --type-heading-line:1.08;
 --type-heading-tracking:-.045em;
 --type-body-line:1.65;
 --type-label-tracking:.12em;
 /* Compact storytelling fits the existing phone panels; roles stay shared. */
 --type-panel-title:clamp(1.65rem,6.5vw,2.65rem);
 --type-panel-body:1rem;
}
body.public-site{font-family:var(--type-family);font-size:var(--type-body);line-height:var(--type-body-line);--font-mementom:var(--type-family);--story-heading-size:var(--type-title)}
body.public-site :is(button,input,select,textarea){font-family:var(--type-family)}
body.public-site main :is(.info-hero h1,.how-intro h1,.key-ring-hero h1,.key-ring-full-log h1){font-size:var(--type-title);font-weight:var(--type-heading-weight);line-height:var(--type-heading-line);letter-spacing:var(--type-heading-tracking)}
body.public-site main :is(.story-intro h2,.story-belief h2,.story-control h2,.info-section h2,.how-section h2,.key-ring-state h2,.key-ring-summary h2,.key-ring-management h2,.key-ring-activity h2,.policy-block h2){font-size:var(--type-heading);font-weight:var(--type-heading-weight);line-height:var(--type-heading-line);letter-spacing:var(--type-heading-tracking)}
body.public-site main :is(.story-principles h3,.policy-block h3,.info-hero__aside strong,.developer-start strong){font-size:var(--type-subheading);line-height:1.3;letter-spacing:-.02em}
body.public-site main :is(.story-intro p,.story-belief p,.story-value p,.story-principles p,.info-hero__lead,.info-section>p,.faq-answer p,.faq-answer li,.how-intro>p,.how-section>p,.key-ring-hero__copy>p,.policy-block p,.policy-block li){font-size:var(--type-body);line-height:var(--type-body-line)}
body.public-site main :is(.eyebrow,.story-intro h1){font-size:var(--type-label);font-weight:800;line-height:1.4;letter-spacing:var(--type-label-tracking)}
body.public-site main .story-value__closing{font-size:var(--type-subheading);line-height:1.4}
body.public-site .site-shortcuts a,body.public-site .site-menu-toggle,body.public-site .site-menu__top{font-size:var(--type-navigation);letter-spacing:var(--type-label-tracking)}
body.public-site .site-menu nav a{font-size:var(--type-menu)}
body.public-site .faq-list summary{font-size:var(--type-body);line-height:1.4}
body.public-site .info-toc a,body.public-site .site-footer{font-size:var(--type-small)}
body.public-site.wide-story-ready .wide-canonical-story :is(h1,h2){font-size:var(--type-title);font-weight:var(--type-heading-weight);line-height:var(--type-heading-line);letter-spacing:var(--type-heading-tracking)}
body.public-site.wide-story-ready .wide-canonical-story{--story-body-size:var(--type-body);--story-body-line:var(--type-body-line)}
body.public-site.wide-story-ready .wide-canonical-story .narrow-cover__live-kicker{font-size:var(--type-label);letter-spacing:var(--type-label-tracking)}
body.public-site.narrow-story-ready .narrow-cover--story-v3{--heading-size:var(--type-panel-title);--summary-size:var(--type-panel-body);--summary-line:1.5}
body.public-site.narrow-story-ready .narrow-cover--story-v3 :is(h1,h2){font-weight:var(--type-heading-weight);line-height:var(--type-heading-line);letter-spacing:var(--type-heading-tracking)}
body.public-site.narrow-story-ready .narrow-cover--story-v3 .narrow-cover__live-kicker{font-size:var(--type-label);letter-spacing:var(--type-label-tracking)}

body.public-site main :is(.key-ring-section-heading h2,.partner-invite h2,.value-section h2,.how-story h2){font-size:var(--type-heading);font-weight:var(--type-heading-weight);line-height:var(--type-heading-line);letter-spacing:var(--type-heading-tracking)}
body.public-site main :is(.key-ring-state--centered>p:not(.eyebrow):not(.key-ring-state__note),.key-ring-summary__copy>p:last-child,.key-ring-section-heading>p:last-child){font-size:var(--type-body);line-height:var(--type-body-line)}
body.public-site main :is(.partner h2,.value-story__intro h2){font-size:var(--type-heading);font-weight:var(--type-heading-weight);line-height:var(--type-heading-line);letter-spacing:var(--type-heading-tracking)}
body.public-site main :is(.partner h3,.value-tabs__panel h3){font-size:var(--type-subheading);line-height:1.3;letter-spacing:-.02em}
body.public-site main :is(.partner p,.value-story__intro>p){font-size:var(--type-body);line-height:var(--type-body-line)}
