/* CONCRETOS GENESIS TRUE S+16 P175
   Concrete accessibility, interaction and rendering authority */
body.s16-p175.p35-concrete {
  --p175-focus: #0f766e;
  --p175-focus-ring: rgba(15, 118, 110, .28);
  --p175-touch: 44px;
}

/* Keep keyboard focus visible without adding noise for pointer users. */
body.s16-p175.p35-concrete :where(a, button, [role="tab"], [tabindex]):focus-visible {
  outline: 3px solid var(--p175-focus) !important;
  outline-offset: 4px !important;
  box-shadow: 0 0 0 6px var(--p175-focus-ring) !important;
}

body.s16-p175.p35-concrete :where(.p41-scenario-tab,.p42-role-tab,.p43-register-tab,.p35-btn,.p45-proof-rule a) {
  min-height: var(--p175-touch);
}

/* Off-screen chapters remain measurable but avoid unnecessary initial paint work. */
@supports (content-visibility: auto) {
  body.s16-p175.p35-concrete main > section:not(.p35-hero) {
    content-visibility: auto;
    contain-intrinsic-size: auto 760px;
  }
}

/* Media cannot create cumulative layout shifts. */
body.s16-p175.p35-concrete :where(.p35-media img, main img) {
  height: auto;
  max-width: 100%;
}

body.s16-p175.p35-concrete .p35-media-card {
  contain: layout paint;
}

/* Tabs expose an unmistakable selected state in both themes. */
body.s16-p175.p35-concrete :where(.p41-scenario-tab,.p42-role-tab,.p43-register-tab)[aria-selected="true"] {
  font-weight: 800;
}

body.s16-p175.p35-concrete :where(.p41-scenario-tab,.p42-role-tab,.p43-register-tab)[aria-selected="false"] {
  opacity: .78;
}

/* Hover movement belongs only to precise pointing devices. */
@media (hover: hover) and (pointer: fine) {
  body.s16-p175.p35-concrete :where(.p35-lane,.p45-evidence-grid article,.p35-standard) {
    will-change: transform;
  }
}

@media (hover: none), (pointer: coarse) {
  body.s16-p175.p35-concrete :where(.p35-lane,.p45-evidence-grid article,.p35-standard) {
    transform: none !important;
  }
}

/* Forced-colour users retain boundaries and selected states. */
@media (forced-colors: active) {
  body.s16-p175.p35-concrete :where(.p35-lane,.p35-standard,.p45-evidence-grid article,.p35-btn,[role="tab"]) {
    border: 1px solid CanvasText !important;
  }
  body.s16-p175.p35-concrete [aria-selected="true"] {
    outline: 2px solid Highlight !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.s16-p175.p35-concrete *,
  body.s16-p175.p35-concrete *::before,
  body.s16-p175.p35-concrete *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

@media print {
  body.s16-p175.p35-concrete .p35-contact-rail,
  body.s16-p175.p35-concrete .s16-enterprise-cta,
  body.s16-p175.p35-concrete .scroll-top,
  body.s16-p175.p35-concrete header,
  body.s16-p175.p35-concrete footer {
    display: none !important;
  }
  body.s16-p175.p35-concrete main > section {
    content-visibility: visible !important;
    break-inside: avoid;
  }
}
