html{background:var(--color-bg-primary)}body{font-family:var(--font-body);font-size:var(--step-0);line-height:1.65;color:var(--color-text-primary);background:var(--color-bg-primary);transition:background var(--duration-base),color var(--duration-base);overflow-x:hidden}a{text-decoration:none}p{color:var(--color-text-secondary);max-width:68ch}h1,h2,h3,h4{font-family:var(--font-display);line-height:.98;letter-spacing:-.035em;font-weight:600}h1{font-size:var(--step-4)}h2{font-size:var(--step-3)}h3{font-size:var(--step-2)}small,.eyebrow,.kicker{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.12em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:var(--space-3);color:var(--color-brand-primary);margin-bottom:var(--space-4)}.eyebrow::before{content:"";width:2.5rem;height:1px;background:currentColor}.skip-link{position:fixed;left:var(--space-3);top:-6rem;z-index:100;background:var(--color-bg-elevated);padding:var(--space-2) var(--space-3);border:2px solid var(--color-focus)}.skip-link:focus{top:var(--space-3)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.container{width:min(100% - 2 * var(--gutter),var(--container));margin-inline:auto}.section{padding-block:var(--space-8)}.section--tight{padding-block:var(--space-7)}.section--dark{background:var(--color-text-primary);color:var(--color-text-inverse)}.section--dark p{color:color-mix(in srgb,var(--color-text-inverse) 72%,transparent)}.section-heading{display:grid;grid-template-columns:minmax(0,.5fr) minmax(0,1fr);gap:var(--space-6);align-items:end;margin-bottom:var(--space-7)}.section-heading>a{justify-self:end;align-self:end}.section-heading__aside{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);max-width:42rem}.section-heading__aside .text-link{align-self:flex-start}.lede{font-size:var(--step-1);line-height:1.5}.muted{color:var(--color-text-muted)}.rule{border:0;border-top:1px solid var(--color-border-subtle)}

/* Refined editorial type system */
h1,h2,h3,h4{line-height:1.02;letter-spacing:-.045em;font-weight:650}h1{letter-spacing:-.06em}p{letter-spacing:-.008em}.button,.desktop-nav{letter-spacing:.01em}

/* Corporate heading colour system */
h1,h2,h3,h4{color:var(--color-heading-primary);transition:color var(--duration-base)}h3,h4{color:var(--color-heading-secondary)}.section--dark{background:var(--color-section-strong-bg);color:var(--color-heading-on-strong)}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4,.cta-panel h1,.cta-panel h2,.cta-panel h3,.cta-panel h4{color:var(--color-heading-on-strong)}.section--dark p{color:var(--color-section-strong-text)}

/* Explicit calc() keeps containers fluid in browsers that reject bare CSS arithmetic */
.container{width:min(calc(100% - var(--gutter) - var(--gutter)),var(--container))}
