/* Shared corrections; no changes to the approved section or photo order. */
html[lang="en"] { --label-artifact:'→ deliverable: '; --label-program:'View program'; --label-collapse:'Collapse'; --label-open:'View'; --label-recommended:'RECOMMENDED'; }
html { scroll-behavior: auto; }
:where(a, button, summary, [tabindex]):focus-visible { outline: 3px solid var(--accent-dark); outline-offset: 4px; }
.skip-link { position: fixed; top: 8px; left: 16px; z-index: 2000; padding: 14px 20px; background: var(--bg); color: var(--ink); transform: translateY(-180%); }
.skip-link:focus { transform: none; }
.lang-btn:not([aria-current="page"]) { opacity: 1; }
.mobile-nav { max-height: calc(100dvh - var(--header-h)); overflow-y: auto; }
.trust-gallery-item figcaption { display: block; -webkit-line-clamp: unset; font-size: clamp(12px,1.05vw,15px); max-height: 100%; overflow-y: auto; background: linear-gradient(0deg,rgba(7,16,26,.96),rgba(7,16,26,.86)); }
.trust-gallery-item:focus-within figcaption { opacity: 1; transform: none; pointer-events: auto; }
.trust-gallery-item:focus-within { z-index: 1; }
@media (hover: none) {
  .trust-gallery-item figcaption { position: relative; opacity: 1; transform: none; pointer-events: auto; max-height: none; height: auto; background: #12233f; }
}
.gallery-lightbox-scale { position: fixed; top: 14px; left: 18px; z-index: 3; min-height: 44px; padding: 8px 16px; background: #12233f; color: #fff; border: 1px solid #acb8c6; border-radius: 8px; cursor: pointer; }
.gallery-lightbox-scale:focus-visible { outline-color: #fff; }
.gallery-lightbox-image { min-width: 0; }
.gallery-lightbox-caption { max-width: 88vw; }
.no-script-note { padding: 16px 24px; color: var(--ink); background: var(--bg-soft); border-block: 1px solid var(--border); }
/* Content is readable even if an optional animation module fails to load. */
.js .reveal { opacity: 1; transform: none; }
.js .reveal.reveal-ready { opacity: 0; transform: translateY(26px); }
.js .reveal.reveal-ready.in { opacity: 1; transform: none; }
.js .reveal.reveal-ready:focus-within { opacity: 1; transform: none; }
.js .ed-line { opacity: 1; transform: none; }
.js .terminal-running .ed-line { opacity: 0; transform: translateY(6px); }
.js .terminal-running .ed-line.show { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .js .reveal.reveal-ready { opacity: 1; transform: none; }
  *, *::before, *::after { animation: none !important; scroll-behavior: auto !important; }
}
.evidence-link {color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}
.visit-cities--spaced {margin-top:28px}
.format-grid--spaced {margin-top:52px}
.footer-bottom, .footer-bottom .made {color:#acb8c6}
.logo-light .logo-ai {color:#78d1c9}
.kicker, .method-step-num, .case-tag {color:var(--accent-dark)}
.skill-num, .p-num {color:var(--ink-faint)}
.edtech-evidence .evidence-link {color:inherit}
.cv-layout > *, .cv-sidebar > *, .section-title > * {min-width:0}
.cv-layout {overflow-wrap:anywhere}
.section-title > span {color:var(--accent-dark)}
