/* CONCRETOS GENESIS TRUE S+16 P171 — Concrete composition refinement */
body.s16-p171.p35-concrete {
  --p171-section-space: clamp(4.75rem, 7vw, 7.5rem);
  --p171-card-radius: clamp(1.15rem, 1.6vw, 1.65rem);
  --p171-content-max: 1480px;
}

/* Hero: stronger editorial balance without changing content */
body.s16-p171.p35-concrete .p35-hero {
  padding-block: clamp(4.5rem, 7vw, 7.25rem) clamp(4rem, 6vw, 6.25rem);
  overflow: clip;
}
body.s16-p171.p35-concrete .p35-hero-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr);
  gap: clamp(2.75rem, 5vw, 6.25rem);
  align-items: center;
}
body.s16-p171.p35-concrete .p35-hero-copy {
  max-width: 760px;
}
body.s16-p171.p35-concrete .p35-title {
  max-width: 12ch;
  text-wrap: balance;
}
body.s16-p171.p35-concrete .p35-lead {
  max-width: 66ch;
  text-wrap: pretty;
}
body.s16-p171.p35-concrete .p35-media {
  border-radius: clamp(1.35rem, 2.2vw, 2.25rem);
  box-shadow: 0 32px 70px rgba(23, 48, 44, .16);
}

/* Authority strip: one calm bridge between hero and content */
body.s16-p171.p35-concrete .p35-authority-strip {
  margin-top: clamp(-2rem, -2.4vw, -1.2rem);
}
body.s16-p171.p35-concrete .p35-authority-grid {
  border-radius: var(--p171-card-radius);
  box-shadow: 0 22px 55px rgba(25, 52, 48, .11);
}
body.s16-p171.p35-concrete .p35-authority-item {
  min-height: 148px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(1.4rem, 2.1vw, 2rem);
}

/* Shared section rhythm */
body.s16-p171.p35-concrete main > section:not(.p35-hero):not(.p35-cta) {
  padding-block: var(--p171-section-space);
}
body.s16-p171.p35-concrete main > section + section {
  border-top: 1px solid color-mix(in srgb, var(--s16-border, #d7dfdd) 58%, transparent);
}
body.s16-p171.p35-concrete .p35-shell {
  width: min(calc(100% - clamp(2rem, 5vw, 6rem)), var(--p171-content-max));
}
body.s16-p171.p35-concrete .p35-section-head {
  grid-template-columns: minmax(0, 1fr) minmax(300px, .48fr);
  gap: clamp(2rem, 4vw, 5rem);
  align-items: end;
}
body.s16-p171.p35-concrete .p35-heading,
body.s16-p171.p35-concrete .p40-continuity-title,
body.s16-p171.p35-concrete .p41-scenario-title,
body.s16-p171.p35-concrete .p42-authority-title,
body.s16-p171.p35-concrete .p43-register-title {
  max-width: 14ch;
  text-wrap: balance;
}

/* Cards: equal visual weight and cleaner depth */
body.s16-p171.p35-concrete :is(
  .p35-lane,
  .p35-gate,
  .p35-standard,
  .p40-continuity-card,
  .p41-scenario-card,
  .p42-authority-card,
  .p43-register-card
) {
  border-radius: var(--p171-card-radius);
  box-shadow: 0 16px 38px rgba(25, 52, 48, .08);
}
body.s16-p171.p35-concrete :is(.p35-lanes,.p35-standards) {
  gap: clamp(1rem, 1.6vw, 1.5rem);
}
body.s16-p171.p35-concrete .p35-lane {
  min-height: 100%;
}
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  body.s16-p171.p35-concrete :is(.p35-lane,.p35-gate,.p35-standard) {
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  }
  body.s16-p171.p35-concrete :is(.p35-lane,.p35-gate,.p35-standard):hover {
    transform: translateY(-3px);
    box-shadow: 0 22px 46px rgba(25, 52, 48, .12);
  }
}

/* Alternation gives the long page a readable chapter structure */
body.s16-p171.p35-concrete #decision-continuity,
body.s16-p171.p35-concrete #authority-ledger,
body.s16-p171.p35-concrete #evidence-chain,
body.s16-p171.p35-concrete #standards-route {
  background: color-mix(in srgb, var(--s16-bg-alt, #eef3f1) 72%, transparent);
}
body.dark.s16-p171.p35-concrete #decision-continuity,
body.dark.s16-p171.p35-concrete #authority-ledger,
body.dark.s16-p171.p35-concrete #evidence-chain,
body.dark.s16-p171.p35-concrete #standards-route {
  background: color-mix(in srgb, var(--s16-bg-alt, #142522) 76%, transparent);
}

/* Final CTA: less oversized, stronger conversion hierarchy */
body.s16-p171.p35-concrete .p35-cta {
  padding-block: clamp(4.75rem, 7vw, 7rem);
}
body.s16-p171.p35-concrete .p35-cta-grid {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(2rem, 4vw, 5rem);
}
body.s16-p171.p35-concrete .p35-cta h2 {
  max-width: 13ch;
  text-wrap: balance;
}

@media (max-width: 1180px) {
  body.s16-p171.p35-concrete .p35-hero-grid,
  body.s16-p171.p35-concrete .p35-section-head {
    grid-template-columns: 1fr;
  }
  body.s16-p171.p35-concrete .p35-hero-copy { max-width: 900px; }
  body.s16-p171.p35-concrete .p35-title { max-width: 14ch; }
  body.s16-p171.p35-concrete .p35-media { min-height: 460px; }
}
@media (max-width: 820px) {
  body.s16-p171.p35-concrete { --p171-section-space: clamp(3.75rem, 12vw, 5rem); }
  body.s16-p171.p35-concrete .p35-shell { width: min(calc(100% - 2rem), var(--p171-content-max)); }
  body.s16-p171.p35-concrete .p35-authority-strip { margin-top: -1rem; }
  body.s16-p171.p35-concrete .p35-authority-item { min-height: 118px; }
  body.s16-p171.p35-concrete .p35-media { min-height: 340px; }
  body.s16-p171.p35-concrete .p35-cta-grid { grid-template-columns: 1fr; }
}
