/* Corporate entry only. Product and workspace primitives keep their recipes. */
.corporate-page {
  --corporate-navy: #081a2c;
  --corporate-rule: color-mix(in srgb, var(--ink-700) 26%, transparent);
  --corporate-copper: var(--marketing-copper);
}

.corporate-page h1,
.corporate-page h2,
.corporate-page h3,
.corporate-page h4 { text-wrap: balance; }
.corporate-page p { text-wrap: pretty; }
.corporate-page [id] { scroll-margin-top: 6rem; }
.corporate-page .marketing-wrap { max-width: 84rem; }
.corporate-hero {
  border-bottom: 1px solid var(--corporate-rule);
  background: var(--paper);
  padding-top: clamp(2rem, 5vw, 4rem);
}
.corporate-hero__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: center; gap: 1.5rem clamp(1.5rem, 3vw, 3rem); }
.corporate-hero__copy { min-width: 0; }
.corporate-hero h1 { max-width: 19ch; margin: 0; font-family: var(--font-display); font-size: clamp(3.25rem, 4.8vw, 4.5rem); font-weight: 600; line-height: 1.08; letter-spacing: -.045em; }
.corporate-lead { max-width: 58ch; margin: 1.4rem 0 0; color: var(--ink-700); font-size: clamp(1rem, 1.5vw, 1.15rem); line-height: 1.8; }
.corporate-hero .corporate-lead { margin-top: 1.2rem; line-height: 1.7; }
.corporate-hero .marketing-actions { margin-top: 1.4rem; }
.corporate-hero__location { margin-top: 1.35rem; color: var(--ink-700); font-size: .8rem; line-height: 1.6; }
.corporate-hero__base { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--corporate-rule); padding-block: 1rem; }
.corporate-hero__base p { margin: 0; font-size: .8rem; font-weight: 700; letter-spacing: .04em; }
.corporate-text-link { min-block-size: var(--control-min-height); display: inline-flex; align-items: center; gap: .7rem; color: var(--corporate-copper); font-size: .82rem; font-weight: 750; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .3em; }
.corporate-text-link:hover { color: var(--ink-900); }
.corporate-text-link:focus-visible,
.corporate-platform__capabilities a:focus-visible { outline: 3px solid var(--corporate-copper); outline-offset: 4px; border-radius: var(--radius-sm); }
.corporate-text-link > span[aria-hidden] { font-size: 1.1rem; }

.corporate-hero__visual { min-width: 0; width: 100%; max-inline-size: 40rem; justify-self: end; border: 1px solid #193b59; border-radius: .6rem; overflow: hidden; background: var(--corporate-navy); }
.corporate-hero__visual img { display: block; width: 100%; height: auto; aspect-ratio: 1402 / 1122; object-fit: contain; }

.corporate-section { padding-block: clamp(3.5rem, 7vw, 6.5rem); }
.corporate-section__header { max-width: 58rem; margin-bottom: 2.5rem; }
.corporate-section h2 { max-width: 22ch; margin: 0; font-family: var(--font-display); font-size: clamp(2.2rem, 4.4vw, 4rem); font-weight: 600; line-height: 1.08; letter-spacing: -.035em; }
.corporate-section__header > p:not(.marketing-eyebrow) { max-width: 64ch; margin: 1.15rem 0 0; color: var(--ink-700); line-height: 1.8; }
.corporate-portfolio-nav { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1.5rem; }
.corporate-portfolio-nav a { min-block-size: var(--control-min-height); display: inline-flex; align-items: center; border: 1px solid var(--corporate-rule); border-radius: var(--radius-sm); padding: .6rem 1rem; color: var(--ink-900); font-size: .82rem; font-weight: 700; text-decoration: none; }
.corporate-portfolio-nav a:hover { border-color: var(--corporate-copper); text-decoration: underline; text-underline-offset: .25em; }
.corporate-portfolio-nav a:focus-visible { outline: 3px solid var(--corporate-copper); outline-offset: 3px; }
.corporate-platform {
  --component-accent: #fff;
  --component-accent-strong: #e6eef7;
  --component-on-accent: #081a2c;
  --component-ink: #fff;
  --component-ink-soft: #dbe5f0;
  --component-rule-strong: #a8bdcf;
  --component-accent-soft: #193b59;
  --component-secondary-hover-ink: #fff;
  --component-focus: #e69568;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: clamp(2rem, 5vw, 5rem);
  border: 1px solid #31516d;
  border-radius: var(--radius-md);
  background: var(--corporate-navy);
  padding: clamp(1.4rem, 4vw, 3.5rem);
  color: #fff;
}
.corporate-platform .marketing-eyebrow { color: #e69568; }
.corporate-platform h3 { margin: .4rem 0 0; font-family: var(--font-display); font-size: clamp(2.2rem, 4vw, 3.5rem); font-weight: 600; line-height: 1.1; letter-spacing: -.04em; }
.corporate-platform__copy > p:not(.marketing-eyebrow) { max-width: 54ch; margin-top: 1.1rem; color: #dbe5f0; line-height: 1.8; }
.corporate-platform__capabilities { display: grid; align-content: center; margin: 0; padding: 0; list-style: none; }
.corporate-platform__capabilities li + li { border-top: 1px solid #31516d; }
.corporate-platform__capabilities a { min-height: 4.5rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding-block: .9rem; color: #fff; text-decoration: none; }
.corporate-platform__capabilities a:hover strong { text-decoration: underline; text-underline-offset: .3em; }
.corporate-platform__capabilities strong { display: block; font-size: .9rem; }
.corporate-platform__capabilities small { display: block; margin-top: .3rem; color: #dbe5f0; font-size: .8rem; line-height: 1.5; }
.corporate-platform__capabilities a > span[aria-hidden] { color: #e69568; font-size: 1.35rem; }
.corporate-platform__capabilities a:focus-visible { outline-color: #e69568; }
.corporate-highlights { margin-top: 3.5rem; }
.corporate-project-group { margin-top: 1rem; border-top: 1px solid var(--corporate-rule); }
.corporate-project-group__header { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .6rem 2rem; margin-bottom: 1.3rem; }
.corporate-project-group__header h3 { margin: 0; font-size: 1.15rem; font-weight: 750; }
.corporate-project-group__header p { max-width: 54ch; margin: 0; color: var(--ink-700); font-size: .86rem; line-height: 1.6; }
.corporate-project-group--expandable > summary { min-block-size: var(--control-min-height); display: list-item; padding-block: 1.2rem; margin-bottom: 0; cursor: pointer; }
.corporate-project-group--expandable > summary::marker { color: var(--corporate-copper); }
.corporate-project-group--expandable > summary h3 { display: inline; }
.corporate-project-group__description { max-width: 54ch; margin: 0 0 1.2rem; color: var(--ink-700); font-size: .86rem; line-height: 1.6; }
.corporate-project-group--expandable > summary:hover h3 { text-decoration: underline; text-underline-offset: .25em; }
.corporate-project-group--expandable > summary:focus-visible { outline: 3px solid var(--corporate-copper); outline-offset: 3px; border-radius: var(--radius-sm); }
.corporate-project-group--expandable .corporate-project-grid { padding-bottom: 1.5rem; }
.corporate-project-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.corporate-project { min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--corporate-rule); border-radius: var(--radius-sm); background: var(--paper); padding: clamp(1.2rem, 2.5vw, 1.8rem); }
.corporate-project__meta { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; color: var(--ink-700); font-size: .72rem; }
.corporate-project__meta > span:first-child { max-width: 32ch; }
.corporate-project__identity { min-block-size: 4.5rem; display: flex; align-items: center; gap: 1rem; margin: 1.1rem 0 .75rem; }
.corporate-project__identity h4 { min-width: 0; margin: 0; font-family: var(--font-display); font-size: 1.55rem; font-weight: 600; line-height: 1.2; overflow-wrap: anywhere; }
.corporate-project__mark { flex: 0 0 6rem; min-inline-size: 0; display: flex; align-items: center; justify-content: center; block-size: 4.5rem; background: #fffef8; border-radius: var(--radius-sm); padding: .4rem; }
.corporate-project__mark img { display: block; inline-size: 100%; block-size: 100%; min-inline-size: 0; min-block-size: 0; max-block-size: 100%; object-fit: contain; }
.corporate-project > .corporate-project__attribution { margin-bottom: .75rem; color: var(--ink-900); font-size: .72rem; font-weight: 700; line-height: 1.7; }
.corporate-project > p { margin: 0 0 1rem; color: var(--ink-700); font-size: .88rem; line-height: 1.8; }
.corporate-project--highlight .corporate-project__identity { flex-direction: column; align-items: stretch; }
.corporate-project--highlight .corporate-project__mark { flex: 0 0 auto; inline-size: 100%; block-size: 7rem; padding: .7rem; }
.corporate-project__actions { align-self: flex-start; display: flex; flex-direction: column; align-items: flex-start; gap: .15rem; margin-top: auto; }
.corporate-project__conversation { color: var(--ink-700); font-size: .78rem; font-weight: 650; }
.corporate-collaborations { border-top: 1px solid var(--corporate-rule); }
.corporate-collaborations__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.corporate-collaboration { min-width: 0; display: flex; flex-direction: column; border: 1px solid var(--corporate-rule); border-radius: var(--radius-sm); padding: clamp(1.2rem, 2.5vw, 1.8rem); }
.corporate-collaboration__identity { min-block-size: 5rem; display: flex; flex-direction: column; align-items: flex-start; gap: 1rem; margin-bottom: 1rem; }
.corporate-collaboration__identity h3 { min-width: 0; margin: 0; font-family: var(--font-display); font-size: 1.7rem; line-height: 1.2; overflow-wrap: anywhere; }
.corporate-collaboration__mark { min-inline-size: 0; display: flex; align-items: center; justify-content: center; inline-size: 100%; block-size: 7rem; background: #fffef8; border-radius: var(--radius-sm); padding: .8rem; }
.corporate-collaboration__mark img { display: block; inline-size: 100%; block-size: 100%; min-inline-size: 0; min-block-size: 0; max-block-size: 100%; object-fit: contain; }
.corporate-collaboration > .corporate-collaboration__relationship { margin: 0 0 .6rem; color: var(--ink-900); font-size: .8rem; font-weight: 750; }
.corporate-collaboration > p { margin: 0 0 1rem; color: var(--ink-700); font-size: .88rem; line-height: 1.8; }
.corporate-collaboration > .corporate-text-link { align-self: flex-start; margin-top: auto; }
.corporate-section--paper { border-block: 1px solid var(--corporate-rule); background: var(--paper); }
.corporate-results { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
.corporate-results article { min-width: 0; border-top: 2px solid var(--corporate-copper); padding-top: 1.5rem; }
.corporate-results h3 { margin: 0; font-family: var(--font-display); font-size: 1.6rem; line-height: 1.2; }
.corporate-results p { color: var(--ink-700); font-size: .9rem; line-height: 1.8; }
.corporate-indicators { border-top: 1px solid var(--corporate-rule); margin-top: 3rem; padding-top: 2.5rem; }
.corporate-indicators__header { max-width: 64ch; }
.corporate-indicators h3 { margin: 0; font-family: var(--font-display); font-size: clamp(1.8rem, 3vw, 2.5rem); font-weight: 600; line-height: 1.15; }
.corporate-indicators__header > p:not(.marketing-eyebrow) { margin: .9rem 0 0; color: var(--ink-700); font-size: .9rem; line-height: 1.8; }
.corporate-indicators__values { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; margin: 2rem 0; }
.corporate-indicators__values > div { min-width: 0; }
.corporate-indicators__values dt { font-size: .9rem; font-weight: 750; }
.corporate-indicators__number { margin: .75rem 0; color: var(--corporate-copper); font-family: var(--font-display); font-size: clamp(3rem, 5vw, 4.5rem); font-weight: 600; line-height: 1; letter-spacing: -.04em; }
.corporate-indicators__population { max-width: 40ch; margin: 0; color: var(--ink-700); font-size: .85rem; line-height: 1.8; }
.corporate-indicators__limits { max-width: 80ch; margin: 0; color: var(--ink-700); font-size: .82rem; line-height: 1.8; }
.corporate-indicators__header > .corporate-indicators__observed { font-weight: 700; color: var(--ink-900); }
.corporate-indicators__method { max-width: 80ch; margin-top: .5rem; }
.corporate-indicators__method summary { min-block-size: var(--control-min-height); padding-block: .8rem; cursor: pointer; color: var(--ink-900); font-size: .85rem; font-weight: 700; }
.corporate-indicators__method summary:focus-visible { outline: 3px solid var(--corporate-copper); outline-offset: 3px; border-radius: var(--radius-sm); }
.corporate-indicators__method dl { margin: 0; }
.corporate-indicators__method dl > div { margin-bottom: 1rem; }
.corporate-indicators__method dt { font-size: .85rem; font-weight: 700; }
.corporate-indicators__method dd { margin: .35rem 0 0; color: var(--ink-700); font-size: .85rem; line-height: 1.8; }
.corporate-indicators__source { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 2rem; margin-top: .8rem; }
.corporate-history { max-width: 64rem; border-top: 1px solid var(--corporate-rule); margin-top: 3rem; padding-top: 2.5rem; }
.corporate-history h3 { margin: 0; font-family: var(--font-display); font-size: clamp(1.8rem, 3vw, 2.5rem); font-weight: 600; line-height: 1.2; }
.corporate-history > p:not(.marketing-eyebrow),
.corporate-history__context > p { max-width: 72ch; margin: 1rem 0 0; color: var(--ink-700); font-size: .9rem; line-height: 1.8; }
.corporate-history__source { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 2rem; margin-top: 1rem; }
.corporate-history__source p { margin: 0; color: var(--ink-700); font-size: .8rem; line-height: 1.6; }
.corporate-history__context { margin-top: .5rem; }
.corporate-history__context summary { min-block-size: var(--control-min-height); padding-block: .8rem; cursor: pointer; color: var(--ink-900); font-size: .85rem; font-weight: 700; }
.corporate-history__context summary:focus-visible { outline: 3px solid var(--corporate-copper); outline-offset: 3px; border-radius: var(--radius-sm); }
.corporate-company__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(2rem, 5vw, 5rem); }
.corporate-company__mark { color: var(--corporate-copper); font-family: var(--font-display); font-size: clamp(3.5rem, 8vw, 8rem); letter-spacing: -.06em; line-height: 1; }
.corporate-company__mark span { display: block; margin-top: 1rem; color: var(--ink-700); font-family: var(--font-sans); font-size: .85rem; letter-spacing: 0; line-height: 1.5; }
.corporate-incubation { border-top: 1px solid var(--corporate-rule); margin-top: 2rem; padding-top: 1.5rem; }
.corporate-incubation__mark { display: flex; align-items: center; justify-content: center; max-inline-size: 18rem; background: #fffef8; border-radius: var(--radius-sm); padding: .8rem; }
.corporate-incubation__mark img { display: block; inline-size: 100%; block-size: auto; }
.corporate-incubation h3 { margin: 1rem 0 .6rem; font-size: 1rem; line-height: 1.5; }
.corporate-incubation p { max-width: 54ch; color: var(--ink-700); font-size: .88rem; line-height: 1.8; }
.corporate-content-entry { border-top: 1px solid var(--corporate-rule); padding-block: 2rem; }
.corporate-content-entry__grid { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.2rem 2rem; }
.corporate-content-entry h2 { margin: 0; font-size: 1.1rem; font-weight: 750; }
.corporate-content-entry p { max-width: 64ch; margin: .6rem 0 0; color: var(--ink-700); font-size: .88rem; line-height: 1.7; }
.corporate-contact { border-top: 1px solid var(--corporate-rule); background: var(--paper); }
.corporate-contact h2 { max-width: 22ch; }

@media (max-width: 1000px) {
  .corporate-hero__grid { gap: 1.2rem; }
  .corporate-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .corporate-collaborations__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .corporate-hero__grid,
  .corporate-platform,
  .corporate-company__grid { grid-template-columns: minmax(0, 1fr); }
  .corporate-hero h1 { max-width: 20ch; font-size: clamp(2.5rem, 7vw, 3.5rem); }
  .corporate-hero__visual { max-inline-size: 32rem; justify-self: center; }
  .corporate-hero__base { margin-top: 0; }
  .corporate-results,
  .corporate-indicators__values,
  .corporate-collaborations__grid { grid-template-columns: minmax(0, 1fr); }
  .corporate-company__mark { font-size: clamp(3.5rem, 13vw, 6rem); }
}
@media (max-width: 480px) {
  .corporate-project-grid { grid-template-columns: minmax(0, 1fr); }
  .corporate-hero h1 { font-size: clamp(2.15rem, 8.5vw, 2.55rem); }
  .corporate-page .marketing-actions { align-items: stretch; }
  .corporate-page .marketing-actions > .workspace-button { max-width: 100%; white-space: normal; text-align: center; }
}
