.corporate-page { background: #fff; }
.corporate-hero { position: relative; min-height: clamp(32rem,62vh,44rem); display: flex; align-items: center; overflow: hidden; color: #fff; background: var(--color-navy-950); }
.corporate-hero__image, .corporate-hero::after { position: absolute; inset: 0; }
.corporate-hero__image img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.corporate-hero::after { content: ""; background: linear-gradient(90deg,rgba(3,17,31,.98) 0%,rgba(3,17,31,.91) 38%,rgba(3,17,31,.28) 69%,rgba(3,17,31,.06) 100%); }
.corporate-hero--light { min-height: 26rem; color: var(--color-navy-900); background: linear-gradient(125deg,#fff,#eaf6fb 62%,#eff8e8); }
.corporate-hero--light::after { display: none; }
.corporate-hero__content { position: relative; z-index: 2; padding-block: clamp(5rem,9vw,7.5rem); }
.corporate-hero .breadcrumb { color: #9db1c0; }
.corporate-hero--light .breadcrumb { color: #526b7d; }
.corporate-hero--light .breadcrumb a:hover { color: var(--color-navy-900); }
.corporate-hero .eyebrow { color: var(--color-green-500); }
.corporate-hero h1 { max-width: 54rem; margin-bottom: 1.35rem; font-size: clamp(3.2rem,6.2vw,6.45rem); line-height: .94; letter-spacing: -.068em; }
.corporate-hero__lead { max-width: 43rem; margin-bottom: 0; color: #d0dee7; font-size: clamp(1rem,1.5vw,1.2rem); }
.corporate-hero--light .corporate-hero__lead { color: #456477; }
.corporate-hero--light .corporate-hero__content { padding-block: clamp(4rem,7vw,5.5rem); }
.corporate-hero__actions { margin-top: 2rem; }
.corporate-banner { padding: .85rem 0; color: #634d08; border-bottom: 1px solid #eadb9a; background: #fff8d8; font-size: .76rem; }
.corporate-banner strong { margin-right: .35rem; }
.corporate-intro-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(3rem,8vw,8rem); align-items: start; }
.corporate-intro-grid h2 { margin-bottom: 0; font-size: clamp(2.7rem,5vw,5rem); line-height: .98; letter-spacing: -.06em; }
.corporate-intro-copy > p { color: var(--color-muted); font-size: clamp(1rem,1.5vw,1.16rem); }
.identity-grid, .value-grid, .industry-grid, .case-grid, .contact-grid { display: grid; gap: 1rem; }
.identity-grid { grid-template-columns: repeat(4,1fr); }
.identity-card { min-height: 12rem; padding: 1.35rem; border-top: 3px solid var(--color-blue-400); background: var(--color-surface-soft); }
.identity-card:nth-child(even) { border-color: var(--color-green-500); }
.identity-card small { color: var(--color-muted); font-size: .62rem; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.identity-card__number { display: block; margin-top: 1rem; color: var(--color-blue-600); font-size: .68rem; font-weight: 900; }
.identity-card:nth-child(even) .identity-card__number { color: var(--color-green-700); }
.identity-card strong { display: block; margin-top: 2rem; font-size: 1.05rem; line-height: 1.25; }
.corporate-dark { color: #fff; background: var(--color-navy-950); }
.corporate-dark .eyebrow { color: var(--color-green-500); }
.corporate-dark .section-heading > p:not(.eyebrow) { color: #a8bac7; }
.value-grid { grid-template-columns: repeat(4,1fr); }
.value-card { min-height: 18rem; padding: 1.5rem; display: flex; flex-direction: column; border: 1px solid rgba(255,255,255,.14); border-radius: var(--radius-md); background: rgba(255,255,255,.04); }
.value-card__top { display: flex; align-items: center; justify-content: space-between; color: var(--color-blue-400); font-size: .65rem; font-weight: 900; }
.value-card h3 { margin: auto 0 .75rem; font-size: 1.35rem; }
.value-card p { margin: 0; color: #a8bac7; font-size: .8rem; }
.pillar-bridge { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.pillar-bridge article { min-height: 26rem; padding: clamp(1.8rem,4vw,3rem); display: flex; flex-direction: column; border-radius: var(--radius-lg); }
.pillar-bridge article:first-child { background: #eaf7fd; }
.pillar-bridge article:last-child { background: #f0f8e7; }
.pillar-bridge__media { aspect-ratio: 16/8; margin-bottom: 1.5rem; overflow: hidden; border-radius: var(--radius-md); }
.pillar-bridge__media img { width: 100%; height: 100%; object-fit: cover; }
.pillar-bridge h3 { max-width: 30rem; margin: auto 0 1rem; font-size: clamp(2rem,3.5vw,3.5rem); line-height: 1.02; letter-spacing: -.05em; }
.pillar-bridge p { max-width: 34rem; color: var(--color-muted); }
.pillar-bridge .text-link { margin-top: 1rem; }
.regional-band { background: linear-gradient(130deg,#eaf7fd,#f2f9e9); }
.regional-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(3rem,8vw,8rem); align-items: center; }
.regional-grid h2 { margin-bottom: 1rem; font-size: clamp(2.8rem,5vw,5rem); line-height: .98; letter-spacing: -.06em; }
.country-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: .8rem; }
.country-grid div { min-height: 8rem; padding: 1.25rem; display: flex; flex-direction: column; justify-content: space-between; gap: 1rem; border: 1px solid rgba(7,26,51,.12); border-radius: var(--radius-md); background: rgba(255,255,255,.72); font-weight: 850; }
.country-grid small { color: var(--color-blue-600); font-size: .65rem; font-weight: 900; }
.corporate-method-list { grid-template-columns: repeat(4,1fr); }
.corporate-method-list strong { margin-top: 1.5rem; }
.industry-grid { grid-template-columns: repeat(4,1fr); }
.industry-card { min-height: 18rem; padding: 1.45rem; display: flex; flex-direction: column; border: 1px solid var(--color-line); border-radius: var(--radius-md); background: #fff; transition: transform var(--transition),box-shadow var(--transition),border-color var(--transition); }
.industry-card:hover { transform: translateY(-3px); border-color: var(--color-blue-400); box-shadow: var(--shadow-sm); }
.industry-card__top { display: flex; align-items: center; justify-content: space-between; }
.industry-card__top > span { color: var(--color-muted); font-size: .65rem; font-weight: 900; }
.industry-card__top .ui-icon { width: 1.45rem; height: 1.45rem; }
.industry-card h3 { margin: auto 0 .75rem; font-size: 1.3rem; }
.industry-card p { margin: 0; color: var(--color-muted); font-size: .79rem; }
.fit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.fit-card { padding: clamp(1.8rem,4vw,3rem); border-radius: var(--radius-lg); background: #fff; }
.fit-card__media { aspect-ratio: 16/8; margin-bottom: 1.5rem; overflow: hidden; border-radius: var(--radius-md); background: var(--color-navy-950); }
.fit-card__media img { width: 100%; height: 100%; object-fit: cover; }
.fit-card h3 { margin-bottom: 1rem; font-size: clamp(1.8rem,3vw,2.8rem); }
.fit-card ul { margin: 1.4rem 0 0; padding: 0; list-style: none; }
.fit-card li { padding: .8rem 0; border-top: 1px solid var(--color-line); color: var(--color-muted); font-size: .83rem; }
.case-grid { grid-template-columns: 1fr 1fr; }
.case-card { min-height: 29rem; padding: clamp(1.8rem,4vw,3rem); display: flex; flex-direction: column; border-radius: var(--radius-lg); }
.case-card--energy { background: #f0f8e7; }
.case-card--sap { background: #eaf7fd; }
.case-card__type { color: var(--color-muted); font-size: .62rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.case-card h2 { max-width: 32rem; margin: 4rem 0 1rem; font-size: clamp(2rem,3.6vw,3.6rem); line-height: 1.02; letter-spacing: -.05em; }
.case-card p { color: var(--color-muted); }
.case-card dl { margin: auto 0 0; }
.case-card dt { margin-top: 1rem; font-size: .66rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.case-card dd { margin: .35rem 0 0; color: var(--color-muted); font-size: .82rem; }
.publication-list { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4,1fr); gap: .75rem; list-style: none; counter-reset: publish; }
.publication-list li { min-height: 12rem; padding: 1.25rem; border-top: 3px solid var(--color-green-500); background: rgba(255,255,255,.05); color: #c4d3dc; counter-increment: publish; font-size: .8rem; }
.publication-list li::before { content: "0" counter(publish); display: block; margin-bottom: .9rem; color: var(--color-blue-400); font-size: .65rem; font-weight: 900; }
.contact-grid { grid-template-columns: repeat(2,1fr); }
.contact-card { min-height: 15rem; padding: clamp(1.6rem,3vw,2.3rem); display: flex; flex-direction: column; border: 1px solid var(--color-line); border-radius: var(--radius-lg); background: #fff; }
.contact-card__top { display: flex; align-items: center; justify-content: space-between; }
.contact-card small { color: var(--color-blue-600); font-size: .62rem; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.contact-card .ui-icon { width: 1.4rem; height: 1.4rem; }
.contact-card strong { margin: auto 0 .6rem; font-size: clamp(1.35rem,2.5vw,2.2rem); }
.contact-card p { margin: 0 0 1.1rem; color: var(--color-muted); font-size: .8rem; }
.contact-card a { width: fit-content; color: var(--color-blue-700); font-weight: 850; }
.contact-route-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: .8rem; }
.contact-route { min-height: 15rem; padding: 1.4rem; border-top: 3px solid var(--color-blue-400); background: var(--color-surface-soft); }
.contact-route:nth-child(2) { border-color: var(--color-green-500); }
.contact-route h3 { margin: 3rem 0 .75rem; font-size: 1.2rem; }
.contact-route p { color: var(--color-muted); font-size: .8rem; }
.legal-layout { display: grid; grid-template-columns: 17rem minmax(0,1fr); gap: clamp(3rem,7vw,7rem); align-items: start; }
.legal-nav { position: sticky; top: calc(var(--header-height) + 2rem); padding: 1.2rem; border: 1px solid var(--color-line); border-radius: var(--radius-md); background: var(--color-surface-soft); }
.legal-nav strong { display: block; margin-bottom: .8rem; font-size: .75rem; }
.legal-nav a { padding: .38rem 0; display: block; color: var(--color-muted); font-size: .72rem; }
.legal-copy { max-width: 52rem; }
.legal-copy section { padding-top: 1rem; scroll-margin-top: calc(var(--header-height) + 1rem); }
.legal-copy section + section { margin-top: 2.2rem; padding-top: 2.2rem; border-top: 1px solid var(--color-line); }
.legal-copy h2 { margin-bottom: .9rem; font-size: clamp(1.65rem,3vw,2.5rem); }
.legal-copy h3 { margin: 1.4rem 0 .6rem; font-size: 1rem; }
.legal-copy p, .legal-copy li { color: var(--color-muted); font-size: .85rem; }
.legal-copy ul, .legal-copy ol { padding-left: 1.2rem; }
.legal-copy li + li { margin-top: .5rem; }
.legal-missing { padding: 1rem 1.1rem; border-left: 3px solid #c8a731; background: #fff8d8; color: #634d08 !important; }
.corporate-cta { color: #fff; background-color: var(--color-navy-950); background-image: linear-gradient(90deg,rgba(3,17,31,.99) 0%,rgba(3,17,31,.95) 48%,rgba(3,17,31,.74) 100%),url("../images/corporate/contact-collaboration.webp"); background-position: center; background-size: cover; }
.corporate-cta__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(3rem,8vw,7rem); align-items: end; }
.corporate-cta .eyebrow { color: var(--color-green-500); }
.corporate-cta h2 { margin-bottom: 0; font-size: clamp(2.8rem,5vw,5.2rem); line-height: .98; letter-spacing: -.06em; }
.corporate-cta p { color: #c6d7e1; }

@media (max-width: 68rem) {
  .corporate-intro-grid, .regional-grid, .corporate-cta__grid, .legal-layout { grid-template-columns: 1fr; }
  .identity-grid, .value-grid, .industry-grid, .publication-list { grid-template-columns: repeat(2,1fr); }
  .corporate-method-list { grid-template-columns: repeat(2,1fr); }
  .legal-nav { position: static; }
}

@media (max-width: 42rem) {
  .corporate-hero { min-height: 43rem; align-items: end; }
  .corporate-hero--light { min-height: 30rem; align-items: center; }
  .corporate-hero::after { background: linear-gradient(0deg,rgba(3,17,31,1) 0%,rgba(3,17,31,.96) 55%,rgba(3,17,31,.14) 88%); }
  .corporate-hero__image img { object-position: 68% center; }
  .corporate-hero__content { padding-top: 15rem; padding-bottom: 4rem; }
  .corporate-hero--light .corporate-hero__content { padding-top: 5rem; padding-bottom: 4rem; }
  .corporate-hero h1 { font-size: clamp(2.75rem,12vw,3.8rem); }
  .identity-grid, .value-grid, .pillar-bridge, .industry-grid, .fit-grid, .case-grid, .publication-list, .contact-grid, .contact-route-grid, .country-grid, .corporate-method-list { grid-template-columns: 1fr; }
  .value-card, .industry-card { min-height: 15rem; }
  .pillar-bridge article { min-height: 22rem; }
  .corporate-cta .button-row { flex-direction: column; }
  .corporate-cta .button { width: 100%; }
}
