/* v2 additions shared by all pages: accessibility, language switch, consent, crawl nav, paragraphs in windows */
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 8px; top: -60px; z-index: 1000; background: #000; color: #00e5ff; padding: 8px 12px; border: 1px solid #00e5ff; font-size: 14px; }
.skip-link:focus { top: 8px; }
:focus-visible { outline: 2px dashed currentColor; outline-offset: 3px; }

/* header actions: "Start a project..." + language switch on one line */
.hdr-actions { display: inline-flex; align-items: center; gap: 14px; }
.lang-switch { font-size: 14px; letter-spacing: 1px; color: inherit; border: 1px solid currentColor; padding: 3px 6px 2px; line-height: 1; opacity: .85; transition: opacity .2s; }
.lang-switch:hover { opacity: 1; }

/* paragraphs inside desktop windows (replace double line breaks) */
.modal-text p, .rich p { margin: 0 0 .9em; }
.modal-text p:last-child, .rich p:last-child { margin-bottom: 0; }
.modal-text ul { margin: 0 0 .9em; padding-left: 1.1em; }
.modal-text li { margin: 0 0 .45em; }
.modal-text strong { font-weight: 400; color: #fff; }

/* crawlable heading + navigation on intro screens: present for search engines and screen readers, never visible */
.crawl-nav, .intro-h1 { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; border: 0; }

/* consent banner */
.consent { position: fixed; z-index: 200; left: 12px; right: 12px; bottom: 12px; max-width: 560px; margin: 0 auto; background: rgba(0,0,0,.92); border: 1px solid #00e5ff; box-shadow: 0 0 6px 1px #00e5ff; color: #fff; padding: 14px 16px; font-size: 13px; line-height: 1.45; display: flex; gap: 14px; align-items: center; }
.consent[hidden] { display: none; }
.consent p { margin: 0; flex: 1; }
.consent a { color: #00e5ff; text-decoration: underline; }
.consent-btns { display: flex; gap: 8px; flex-shrink: 0; }
.consent button { font: inherit; font-family: 'Retro Gaming', monospace; font-size: 12px; cursor: pointer; padding: 7px 12px; background: transparent; color: #00e5ff; border: 1px solid #00e5ff; }
.consent button[data-consent="granted"] { background: #00e5ff; color: #000; }
@media (max-width: 520px) { .consent { flex-direction: column; align-items: stretch; } .consent-btns { justify-content: flex-end; } }

/* legal / long text pages: readable widths */
.oxy-stock-content-styles h2 { font-size: 1.05rem; margin: 1.6em 0 .6em; }
.oxy-stock-content-styles p, .oxy-stock-content-styles li { line-height: 1.6; }

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

/* Awwwards badge (original site-wide widget) */
#awwwards { position: fixed; z-index: 999 !important; transform: translateY(-50%); top: 50%; right: 0; pointer-events: auto; line-height: 0; }
@media screen and (max-width: 768px) { #awwwards { display: none; } }

/* Press Start: "ERA" sits 20px lower */
#headline-40-18 { translate: 0 20px; }

/* Legal pages: one screen, the document scrolls inside its panel */
body.legal { overflow: hidden; }
body.legal #inner_content-2-15 { height: 100vh; height: 100dvh; display: flex; flex-direction: column; }
body.legal #inner_content-2-15 > .ct-new-columns { flex: 0 0 auto; }
body.legal #inner_content-2-15 > .ct-section { flex: 1 1 auto; min-height: 0 !important; height: auto !important; overflow-y: auto !important; scrollbar-width: none; overscroll-behavior: contain; }
body.legal #inner_content-2-15 > .ct-section::-webkit-scrollbar { display: none; }
body.legal #inner_content-2-15 > .ct-section > .ct-section-inner-wrap { padding-top: 5% !important; }

/* project pages (original template): breathing room + accessible buttons */
#div_block-681-592 { gap: 16px; flex-wrap: wrap; margin-top: 20px; }
#link-677-592, #link-679-592 { transition: background-color .2s, color .2s; cursor: pointer; }
#link-677-592:hover, #link-677-592:focus-visible, #link-679-592:hover, #link-679-592:focus-visible { background: #fff; outline: none; }
#link-677-592:hover *, #link-677-592:focus-visible *, #link-679-592:hover *, #link-679-592:focus-visible * { color: #000 !important; text-shadow: none; animation: none; }
#link-677-592:focus-visible, #link-679-592:focus-visible { box-shadow: 0 0 0 3px #000, 0 0 0 5px #fff; }
.go-back-btn[role="button"], div.go-back-btn { cursor: pointer; }
/* desktop folders: visible focus */
.open-modal:focus-visible, .open-projects:focus-visible { outline: 2px dashed #00e5ff; outline-offset: 4px; }

/* case studies: body copy in the secondary font (headings and buttons stay Retro Gaming) */
body.single #text_block-664-592, body.single #text_block-664-592 * { font-family: "Open Sans", sans-serif; font-weight: 500; letter-spacing: 0; }
