/* Company page only: the second logo set is exactly one track-width after the first. */
.company-partners .company-partners-viewport{max-width:100%}
.company-partners[data-company-marquee="on"] .company-partners-viewport{overflow:hidden}
.company-partners[data-company-marquee="on"] .partner-track{width:max-content;gap:0;overflow:visible;scroll-snap-type:none;animation:company-partners-roll 35s linear infinite}
.company-partners[data-company-marquee="on"] .partner-mark{margin-right:40px;scroll-snap-align:none}
/* 35s per loop is about 65px/s; at 60s it read as barely moving (iPad report, 2026-10-05). Hover
   pauses only with a real pointer: a tap on a touchscreen leaves :hover
   (and tap focus) stuck and froze the roll, so focus pauses only for the keyboard. */
.company-partners[data-company-marquee="on"] .partner-track:focus-visible,
.company-partners[data-company-marquee="on"]:has(:focus-visible) .partner-track{animation-play-state:paused}
@media(hover:hover) and (pointer:fine){.company-partners[data-company-marquee="on"]:hover .partner-track{animation-play-state:paused}}
.company-partners .partner-mark[data-marquee-clone]{display:none}
.company-partners[data-company-marquee="on"] .partner-mark[data-marquee-clone]{display:flex}
.company-partners .partner-scroll-controls>button:first-of-type svg{transform:none}

@keyframes company-partners-roll{to{transform:translateX(-50%)}}
@media(max-width:850px){.company-partners[data-company-marquee="on"] .partner-mark{margin-right:27px}}
@media(prefers-reduced-motion:reduce){.company-partners .partner-track{animation:none!important}}
/* Mission section: the heading sits at the head of its own column beside the
   building photograph, so it is set at column scale (matching .company-band h2)
   rather than the full-width .editorial-split scale it carried when it spanned
   the section. Overrides company-story.css, which the other editions share. */
.company-story-grid .company-story-heading{font-size:2.8rem;line-height:1.12;margin-bottom:28px}
/* It now steps with its column, not the viewport: below ~880px the column is
   too narrow to hold "Support the people." on one line, and the authored <br>
   stops being the only break. */
@media(max-width:1050px){.company-story-grid .company-story-heading{font-size:2.6rem}}
@media(max-width:880px){.company-story-grid .company-story-heading{font-size:2.1rem}}
/* company-story.css stacks the grid here, so the column is full width again. */
@media(max-width:780px){.company-story-grid .company-story-heading{font-size:2.6rem;margin-bottom:24px}}
@media(max-width:650px){.company-story-grid .company-story-heading{font-size:2.3rem}}
/* The title band runs straight into the mission section with no rule between
   them -- both grounds are var(--paper), so they merge -- and sits closer to
   it: each side of that join steps to the smallest rung of its own ladder
   (34px is --page-opening-bottom below 780px, 63px is .section below 650px)
   instead of the 52px + 110px wider viewports would otherwise take. The first
   hairline on the page is now the one closing the mission section, carried by
   .rule on #track-record in the markup. */
.page-intro{border-bottom:0;padding-bottom:34px}
#mission{padding-top:63px}
/* The principle text was capped at 540px inside a ~700px column, so it stopped
   short of the wrap's right edge while the "What guides our next decisions."
   paragraph beside it ran the full width. The column is the only constraint it
   needs -- the wrap's own max-width already holds the measure to ~760px at the
   widest, in line with that paragraph's 748px. */
.principle-list p{max-width:none}
