/* Shared visual language with the approved home and product pages. */
:root[data-corporate-rework] {
  --bg: #fafafc; --band: #f0f2f5; --card: #fff; --surface-2: #f5f6f8;
  --text: #17191d; --muted: #626771; --line: #e1e3e8; --gutter: 32px;
}
:root[data-corporate-rework][data-theme="dark"] {
  --bg: #090a0f; --band: #191c23; --card: #12141d; --surface-2: #1c1f29;
  --text: #f5f5f7; --muted: #b4b8c3; --line: #2b2e39;
}
[data-corporate-rework] .site-header { background: color-mix(in srgb, var(--bg) 92%, transparent); backdrop-filter: blur(16px); }
[data-corporate-rework] main { color: var(--text); }
[data-corporate-rework] main h1, [data-corporate-rework] main h2, [data-corporate-rework] main h3 { letter-spacing: 0; }
.corporate-hero { padding: 24px 0 72px; }
.corporate-breadcrumb { display: flex; gap: 12px; flex-wrap: wrap; color: var(--muted); font-size: 12px; margin-bottom: 40px; }
.corporate-brand { display: block; width: 160px; height: 61px; object-fit: contain; object-position: left center; margin-bottom: 26px; }
.corporate-logo-dark { display: none; }
[data-theme="dark"] .corporate-logo-light { display: none; }
[data-theme="dark"] .corporate-logo-dark { display: block; }
.corporate-kicker { font-size: 12px; line-height: 1.6; font-weight: 500; color: var(--muted); margin: 0 0 14px; }
.corporate-hero h1 { max-width: 20ch; font-size: 56px; font-weight: 600; line-height: 1.18; text-wrap: balance; margin: 0; }
.corporate-lead { max-width: 740px; font-size: 16px; line-height: 1.8; color: var(--muted); margin: 24px 0 0; }
.corporate-hero .btn-row { gap: 18px 28px; margin-top: 28px; flex-wrap: wrap; }
.corporate-hero .btn { border-radius: 999px; min-height: 46px; padding-inline: 22px; font-size: 14px; }
.corporate-link { display: inline-flex; align-items: center; gap: 12px; font-size: 13px; font-weight: 500; color: var(--text); text-decoration: none; transition: color 180ms ease; }
.corporate-link span { transition: transform 180ms ease; }
.corporate-link:hover { color: var(--muted); }
.corporate-link:hover span { transform: translate(2px, -2px); }
.corporate-link:focus-visible { outline: 2px solid var(--denim); outline-offset: 6px; }
.corporate-section { padding-block: 80px; }
.corporate-band { background: var(--band); }
.corporate-section h2 { font-size: 18px; line-height: 1.5; font-weight: 600; margin: 0; }
.corporate-section h3 { font-size: 16px; line-height: 1.55; font-weight: 600; margin: 0; }
.corporate-section p, .corporate-section address { color: var(--muted); font-size: 14px; line-height: 1.85; font-style: normal; margin: 12px 0 0; }
.corporate-section-heading { margin-bottom: 28px; }
.corporate-section-heading .corporate-kicker { font-size: 12px; margin: 0 0 12px; }
.corporate-intro-copy { max-width: 780px; }
.corporate-principles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; margin-top: 42px; }
.corporate-principles article { border-top: 1px solid var(--line); padding-top: 24px; }
.corporate-journey { list-style: none; padding: 0; margin: 36px 0 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 22px; }
.corporate-journey li { border-top: 2px solid var(--coral); padding-top: 18px; }
.corporate-journey li:nth-child(2n) { border-color: var(--ocean); }
.corporate-journey li:nth-child(3n) { border-color: var(--denim); }
.corporate-stage-number { display: block; font-size: 12px; color: var(--muted); margin-bottom: 20px; }
.corporate-journey h3 { font-size: 13px; }
.corporate-journey p { font-size: 12px; }
.corporate-company { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 80px; }
.corporate-company p { max-width: 470px; }
.corporate-company .corporate-link { margin-top: 24px; }
.corporate-needs-section { padding-top: 24px; }
.corporate-needs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px 80px; }
.corporate-need { padding: 30px 0 0; border-top: 1px solid var(--line); display: flex; flex-direction: column; align-items: flex-start; }
.corporate-product-logo { height: 42px; width: 200px; max-width: 100%; margin-bottom: 26px; }
.corporate-product-logo img { width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.corporate-need .corporate-link { margin-top: auto; padding-top: 24px; }
[data-corporate-rework] main p, [data-corporate-rework] main address { overflow-wrap: anywhere; }
[data-corporate-rework] .navy-band { padding: 0; }
[data-corporate-rework] .navy-band__inner { max-width: none; border: 0; border-radius: 0; padding: 80px max(32px, calc((100% - 1280px) / 2)); }
[data-corporate-rework] .navy-band h2 { font-size: 18px; line-height: 1.6; }
[data-corporate-rework] .cookie { max-width: 720px; width: calc(100% - 32px); }
[data-corporate-rework] .cookie__box { padding: 20px; border-radius: 8px; }
[data-corporate-rework] .cookie__box > p { font-size: 12px; line-height: 1.65; }
[data-corporate-rework] .cookie__actions { gap: 8px; }
[data-corporate-rework] .cookie__actions .btn { font-size: 12px; }
.corporate-hero .container > :not(nav) { animation: corporate-enter 450ms ease both; }
.corporate-hero h1 { animation-delay: 60ms; }
.corporate-hero .corporate-lead { animation-delay: 100ms; }
@keyframes corporate-enter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1024px) {
  .corporate-hero h1 { font-size: 48px; }
  .corporate-journey { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
  .corporate-needs, .corporate-company { gap: 40px; }
}
@media (max-width: 767px) {
  :root[data-corporate-rework] { --gutter: 24px; }
  .corporate-hero { padding: 20px 0 52px; }
  .corporate-breadcrumb { margin-bottom: 28px; }
  .corporate-brand { width: 130px; height: 50px; margin-bottom: 20px; }
  .corporate-hero h1 { font-size: 36px; max-width: 22ch; }
  .corporate-lead { font-size: 14px; margin-top: 20px; }
  .corporate-section { padding-block: 56px; }
  .corporate-section h2 { font-size: 16px; }
  .corporate-principles, .corporate-company, .corporate-needs { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .corporate-principles { margin-top: 28px; }
  .corporate-journey { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 20px; }
  .corporate-needs-section { padding-top: 0; }
  [data-corporate-rework] .navy-band__inner { padding: 56px 24px; }
}
@media (max-width: 359px) {
  :root[data-corporate-rework] { --gutter: 20px; }
  .corporate-hero h1 { font-size: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  .corporate-hero .container > :not(nav) { animation: none; }
  .corporate-link, .corporate-link span { transition: none; }
}