.company-page { min-height: 100dvh; }
.company-header .nav { border-bottom: 0; }
.company-main { padding: 132px 0 110px; }
.company-hero { max-width: 1040px; }
.company-back { display: flex; align-items: center; gap: 8px; width: max-content; margin-bottom: 48px; color: var(--muted); text-decoration: none; font-size: 14px; font-weight: 680; }
.company-hero>.kicker { margin-bottom: 24px; }
.company-back:hover { color: var(--text); }
.company-back svg,.company-actions svg,.company-print svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.company-hero h1 { max-width: 900px; margin-bottom: 24px; font-size: clamp(48px,7vw,86px); }
.company-hero>p { max-width: 760px; color: var(--muted); font-size: clamp(18px,2vw,24px); }
.company-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 18px; margin-top: 34px; }
.company-actions .button { gap: 10px; }
.company-print { display: inline-flex; align-items: center; gap: 9px; padding: 10px 4px; border: 0; background: transparent; color: var(--muted); text-decoration: none; font-weight: 680; cursor: pointer; }
.company-print:hover { color: var(--text); }

.company-layout { display: grid; grid-template-columns: minmax(240px,320px) minmax(0,1fr); gap: clamp(34px,7vw,96px); align-items: start; margin-top: 110px; }
.company-summary { position: sticky; top: 108px; padding-top: 8px; }
.company-mark { display: grid; place-items: center; width: 64px; height: 64px; margin-bottom: 27px; border-radius: 20px; background: oklch(54% .2 280); color: white; font-size: 29px; font-weight: 780; box-shadow: 0 14px 34px oklch(47% .16 280 / .24); }
.company-summary h2 { margin-bottom: 18px; font-size: clamp(28px,3vw,40px); }
.company-summary p { color: var(--muted); font-size: 16px; }
.company-summary a { display: inline-flex; margin-top: 10px; color: var(--brand); font-weight: 740; text-underline-offset: 4px; }

.company-details { overflow: hidden; border: 1px solid var(--line); border-radius: 30px; background: var(--surface-strong); box-shadow: var(--shadow); }
.company-details>header { padding: clamp(28px,5vw,54px); border-bottom: 1px solid var(--line); }
.company-details>header h2 { margin-bottom: 14px; font-size: clamp(34px,4vw,52px); }
.company-details>header p { max-width: 700px; margin: 0; color: var(--muted); }
.details-section { padding: clamp(26px,5vw,52px); }
.details-section+.details-section { border-top: 1px solid var(--line); }
.details-section h3 { margin-bottom: 25px; font-size: 21px; }
.details-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 34px; margin: 0; }
.details-list>div { min-width: 0; padding: 19px 0; border-top: 1px solid color-mix(in oklch,var(--line) 70%,transparent); }
.details-list>div.wide { grid-column: 1/-1; }
.details-list dt { margin-bottom: 6px; color: var(--muted); font-size: 12px; font-weight: 720; letter-spacing: .06em; text-transform: uppercase; }
.details-list dd { margin: 0; overflow-wrap: anywhere; font-size: 16px; font-variant-numeric: tabular-nums; }
.company-footer { margin-top: 0; }

@media (max-width: 760px) {
  .company-main { padding: 104px 0 78px; }
  .company-back { margin-bottom: 44px; }
  .company-hero h1 { font-size: clamp(34px,11.5vw,54px); }
  .company-layout { grid-template-columns: 1fr; margin-top: 78px; }
  .company-summary { position: static; }
  .company-details { border-radius: 23px; }
  .details-list { grid-template-columns: 1fr; }
  .details-list>div.wide { grid-column: auto; }
}

@media print {
  *,*::before,*::after { animation: none!important; transition: none!important; }
  .site-header,.company-back,.company-actions,.company-summary,.company-footer,.ambient { display: none!important; }
  html,body,.company-page,.company-main,.company-details,.company-details>header,.details-section { background: #fff!important; color: #111!important; }
  body { color-scheme: light!important; }
  .company-main { padding: 0; }
  .company-hero { margin-bottom: 24px; }
  .company-hero h1 { font-size: 38px; }
  .company-layout { display: block; margin-top: 0; }
  .company-details { border: 0; box-shadow: none; }
  .company-details>header,.details-section { padding: 16px 0; }
  .details-section h3 { margin-bottom: 12px; }
  .details-list>div { padding: 10px 0; }
  .details-section,.details-list>div { break-inside: avoid; page-break-inside: avoid; }
  .details-section h3,.details-list dt { break-after: avoid; page-break-after: avoid; }
  .company-hero>p,.company-details p,.details-list dt { color: #555!important; }
  .gradient-text { display: inline-block; padding: 0!important; margin: 0 0 0 .15em!important; background: none!important; color: #111!important; -webkit-text-fill-color: #111!important; }
}
