/* Institutional company page; shared foundations remain in site-v2.css. */
.sr-company-v2 { margin-top: 0; }
.sr-company-v2 .sr-section-inner { max-width: 1280px; }
.sc-hero { display: grid; grid-template-columns: 1.2fr 1fr; align-items: start; gap: clamp(40px, 6vw, 88px); padding-block: 88px 104px; }
.sc-hero > *, .sc-split > * { min-width: 0; }
.sc-hero h1 { margin: 0; font-size: clamp(38px, 4.2vw, 60px); font-weight: 800; line-height: 1.09; letter-spacing: -.05em; text-wrap: balance; }
.sc-hero h1 span { color: var(--sr-red-dark); }
.sc-lead { margin: 28px 0; color: var(--sr-muted); font-size: 17px; line-height: 1.8; }
.sc-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.sc-identity { position: relative; padding: 40px; border: 1px solid var(--sr-border); background: linear-gradient(135deg, #fff 65%, #f9eded 65%, #f9eded 67%, #f5f6f8 67%); }
.sc-identity > strong { display: block; margin-bottom: 30px; font-size: 38px; letter-spacing: -1.5px; }
.sc-identity > strong span { display: block; margin-top: 5px; color: var(--sr-muted); font-size: 12px; font-weight: 500; letter-spacing: 0; }
.sc-flow { list-style: none; padding: 0; margin: 0; text-align: center; }
.sc-flow > li { position: relative; padding: 13px 16px; border: 1px solid #cdd1d9; background: var(--sr-white); font-size: 12px; font-weight: 700; letter-spacing: 1.4px; }
.sc-flow > li + li { margin-top: 30px; }
.sc-flow > li + li::before { content: '↓'; position: absolute; top: -29px; left: calc(50% - 10px); width: 20px; color: var(--sr-red-dark); font-size: 18px; line-height: 28px; }
.sc-identity .sc-flow { max-width: 270px; margin-inline: auto; }
.sc-soft { background: var(--sr-surface); }
.sc-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(40px, 7vw, 100px); align-items: center; }
.sc-align-top { align-items: start; }
.sc-copy > p:not(.sr-section-eyebrow), .sc-principles p, .sc-progress p, .sc-links p, .sc-final p { color: var(--sr-muted); font-size: 16px; line-height: 1.8; }
.sc-variables { border-left: 2px solid var(--sr-red); padding: 16px 0 16px 32px; }
.sc-variables > p { margin: 0 0 24px; color: var(--sr-muted); font-size: 13px; }
.sc-variables ul { display: flex; flex-wrap: wrap; gap: 10px 24px; list-style: none; margin: 0; padding: 0; }
.sc-variables li { font-size: clamp(19px, 2vw, 26px); font-weight: 600; }
.sc-variables li:first-child { flex-basis: 100%; color: var(--sr-red-dark); font-size: 36px; letter-spacing: -1px; }
.sc-variables li:nth-child(4), .sc-variables li:last-child { flex-basis: 100%; }
.sc-progress { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; padding: 0; margin: 48px 0 0; gap: 28px; }
.sc-progress li { position: relative; border-top: 2px solid var(--sr-red); padding-top: 22px; }
.sc-progress li:not(:last-child)::after { content: '→'; position: absolute; right: 0; top: 18px; color: var(--sr-red-dark); }
.sc-progress span { color: var(--sr-red-dark); font-size: 13px; font-weight: 600; }
.sc-progress h3 { margin: 24px 0 10px; font-size: 14px; letter-spacing: 1px; }
.sc-progress p { margin: 0; }
.sc-principles-section { padding-top: 20px; }
.sc-principles article { border-top: 1px solid var(--sr-border); padding-block: 26px; }
.sc-principles article:first-child { border-top: 2px solid var(--sr-red); }
.sc-principles h3, .sc-links h3 { font-size: 22px; line-height: 1.3; margin: 0 0 10px; letter-spacing: -.5px; }
.sc-principles p { margin: 0; }
.sc-technology { width: 100%; max-width: 440px; margin-inline: auto; }
.sc-flow > .sc-core { border-color: var(--sr-red-dark); background: var(--sr-red-dark); color: var(--sr-white); padding-block: 23px; font-size: 20px; }
.sc-fleets { list-style: none; padding: 0; margin: 0; }
.sc-fleets li { padding: 17px 0; border-bottom: 1px solid var(--sr-border); font-size: 19px; font-weight: 500; }
.sc-fleets li:first-child { border-top: 1px solid var(--sr-border); }
.sc-text-link { display: inline-flex; align-items: center; gap: 22px; min-height: 44px; color: var(--sr-red-dark); font-weight: 700; }
.sc-text-link:hover { text-decoration: underline; text-underline-offset: 5px; }
.sc-dark { background: var(--sr-ink); color: var(--sr-white); }
.sc-dark h2 { color: var(--sr-white); }
.sc-dark .sr-section-eyebrow { color: #f1aaaa; }
.sc-dark .sr-section-heading > p:not(.sr-section-eyebrow) { color: #d0d5dd; }
.sc-equation { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 56px; padding-top: 32px; border-top: 1px solid #ffffff40; font-size: 13px; font-weight: 600; letter-spacing: 1px; }
.sc-equation b { color: #f1aaaa; font-size: 24px; font-weight: 400; }
.sc-equation strong { max-width: 210px; border-left: 2px solid #f1aaaa; padding-left: 24px; font-size: 22px; line-height: 1.4; }
.sc-links a { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding-block: 24px; border-top: 1px solid var(--sr-border); color: var(--sr-ink); }
.sc-links a:last-child { border-bottom: 1px solid var(--sr-border); }
.sc-links p { margin: 0; font-size: 14px; }
.sc-links a > span { font-size: 24px; color: var(--sr-red-dark); }
.sc-links a:hover h3 { color: var(--sr-red-dark); text-decoration: underline; text-underline-offset: 5px; }
.sc-final { background: var(--sr-surface); border-top: 3px solid var(--sr-red); }
.sc-final .sr-section-inner { display: flex; align-items: center; justify-content: space-between; gap: 40px; }
.sc-final h2 { font-size: clamp(30px, 3vw, 40px); }
.sc-final p { max-width: 650px; margin: 0; }
.sc-final .sc-actions { flex-shrink: 0; }
/* Enlarge shared text links on this route without changing other pages. */
body:has(.sr-company-v2) :is(.sr-brand-name,.sr-footer-name,.sr-desktop-nav a,.sr-login,.sr-footer-nav a,.wp-block-site-logo a) { display: inline-flex; align-items: center; min-height: 44px; }
body:has(.sr-company-v2) .sr-mobile-menu summary { min-height: 44px; }
@media (max-width: 1023px) {
.sc-hero { gap: 32px; padding-block: 64px; }
.sc-identity { padding: 28px; }
.sc-equation { gap: 12px; font-size: 11px; }
.sc-final .sr-section-inner { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 800px) {
.sc-hero, .sc-split, .sc-progress { grid-template-columns: minmax(0, 1fr); }
.sc-hero h1 { max-width: 650px; font-size: clamp(38px, 6vw, 48px); }
.sc-identity { width: 100%; max-width: 520px; margin-inline: auto; }
.sc-progress { gap: 30px; }
.sc-progress li { padding: 0 0 8px 28px; border-top: 0; border-left: 2px solid var(--sr-red); }
.sc-progress h3 { margin-top: 12px; }
.sc-progress li:not(:last-child)::after { content: '↓'; top: auto; bottom: -29px; left: 20px; right: auto; }
.sc-equation { flex-direction: column; font-size: 14px; }
.sc-equation strong { max-width: none; border-left: 0; border-top: 2px solid #f1aaaa; padding: 20px 0 0; text-align: center; }
}
@media (max-width: 599px) {
.sc-hero { padding-block: 52px; }
.sc-actions { flex-direction: column; width: 100%; }
.sc-identity { padding: 28px 22px; }
.sc-identity > strong { font-size: 34px; }
.sc-variables { padding-left: 24px; }
.sc-variables ul { flex-direction: column; }
.sc-principles-section { padding-top: 8px; }
.sc-flow > li { font-size: 11px; letter-spacing: 1px; }
.sc-final .sr-section-inner { gap: 24px; }
}
