/* Recovery additions; original UltraPro styles are retained alongside this file. */
.skip-link { position: fixed; top: -8rem; left: 1rem; z-index: 1000; padding: .8rem 1rem; background: #fff; color: #073763; border: 2px solid currentColor; }
.skip-link:focus { top: 1rem; }
:focus-visible { outline: 3px solid #073763; outline-offset: 4px; }
[id] { scroll-margin-top: 2rem; }
main:focus { outline: none; }
.reveal { opacity: 1; transform: none; }
.btn.primary { background: #09559b; }
.navbtn, .navlink, .mobile-menu a, .util-links a { min-height: 44px; }
.utility__row { min-height: 44px; height: auto; }
.util-links a { display: inline-flex; align-items: center; }
.recovery-note { padding: 1rem; background: #edf4fa; border-left: 3px solid #09559b; }
.card, .grid > *, .split > *, .hero-grid > *, .footer-grid > * { min-width: 0; }
table { max-width: 100%; }
.table-wrap { width: 100%; min-width: 0; max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.table-wrap .table { min-width: 560px; overflow: visible; }
.table caption { padding: .8rem; text-align: left; font-weight: 700; color: var(--muted); }
p, li, h1, h2, h3, a { overflow-wrap: anywhere; }
@media (max-width: 600px) {
  .container { padding-inline: 16px; }
  .utility__row { flex-wrap: wrap; gap: 0; padding-block: 4px; }
  .util-links { gap: 12px; }
  .util-right { width: 100%; justify-content: space-between; }
  .nav { height: auto; min-height: 72px; flex-wrap: wrap; padding-block: 12px; }
  .nav-actions { flex-wrap: wrap; }
  .nav-actions > .btn { display: none; }
  .hero-actions, .promo-actions { flex-wrap: wrap; }
  .hero h1, .page-hero h1 { font-size: clamp(2rem, 9vw, 3rem); }
  .footer-grid { grid-template-columns: 1fr; }
  .code { white-space: pre-wrap; overflow-wrap: anywhere; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* Owner correction: historical review presentation; no permanent indexing decision. */
.legacy-header { position: static; background: #073763; color: #fff; }
.legacy-header .container { display:flex; flex-wrap:wrap; align-items:center; gap:1rem 2rem; padding-block:1rem; }
.legacy-header a { color:#fff; min-height:44px; display:inline-flex; align-items:center; text-decoration:underline; }
.legacy-header span { font-size:.9rem; }
.legacy-intro { padding-block:3rem 2rem; }
.legacy-eyebrow { text-transform:uppercase; letter-spacing:.06em; font-size:.8rem; font-weight:700; color:#073763; }
.legacy-intro h1 { font-size:clamp(2rem,5vw,3.5rem); line-height:1.15; margin:1rem 0; }
.legacy-intro p { max-width:78ch; line-height:1.7; }
.legacy-lead { font-size:1.15rem; color:#073763; font-weight:600; }
.legacy-index { padding-block:1rem 2rem; }
.legacy-index ul { list-style:none; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.4rem 1.5rem; }
.legacy-index a, .legacy-footer a { display:inline-flex; align-items:center; min-height:44px; text-decoration:underline; color:#073763; }
.legacy-index a[aria-current] { font-weight:800; }
.legacy-source { border-top:3px solid #073763; padding-top:2rem; background:#f4f7fa; }
.legacy-quotation { margin:1.5rem 0 0; padding:0; border-left:0; font-style:normal; }
.legacy-quotation .btn { white-space:normal; max-width:100%; text-align:left; }
.legacy-quotation .wrap { min-width:0; }
.legacy-quotation .hero h2 { font-size:clamp(1.7rem,4vw,2.6rem); }
.legacy-action { display:block; padding:1rem; color:#334155; }
.legacy-footer { padding-block:2rem; }
.legacy-footer a { margin-right:2rem; }
@media(max-width:700px) { .legacy-index ul { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:400px) { .legacy-index ul { grid-template-columns:1fr; } }
