.home-page { background: var(--navy); }
.overview-panel { isolation: isolate; }
.overview-hero { position: relative; padding: clamp(2.5rem, 6vw, 5rem) var(--gutter) 0; display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, .5fr); gap: 2rem; }
.overview-hero::before, .section-heading::before, .lab-heading::before { content: ''; position: absolute; inset: 0; pointer-events: none; background-image: repeating-linear-gradient(0deg, var(--paper) 0, var(--paper) 1px, transparent 1px, transparent 6px); opacity: .04; z-index: -1; }
.overview-hero__copy { position: relative; z-index: 1; }
.overview-hero .eyebrow { margin-bottom: 1.5rem; }
.overview-hero h1 { font-size: var(--text-hero); line-height: .98; letter-spacing: -.06em; max-width: 11ch; }
.overview-hero h1 span { display: block; color: var(--signal); }
.overview-hero__index { display: flex; flex-direction: column; align-items: flex-end; justify-content: space-between; padding-top: .5rem; padding-bottom: .5rem; }
.overview-hero__index .index-number { font-size: clamp(6rem, 17vw, 15rem); }
.overview-hero__index .meta { text-align: right; max-width: 16ch; padding-top: 1rem; border-top: var(--border); }
.overview-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2rem; align-items: end; padding: 2.5rem var(--gutter) 3rem; }
.overview-intro p { max-width: 48ch; color: var(--muted); font-size: var(--text-lg); line-height: 1.6; }
.overview-intro .action-row { justify-content: flex-end; }
.hero-media { margin-inline: var(--gutter); position: relative; }
.hero-media img { width: 100%; aspect-ratio: 16 / 8.5; object-fit: cover; object-position: 50% 55%; }
.hero-media .figure-frame { border-color: var(--line); }
.hero-media__rail { display: flex; justify-content: space-between; gap: 1rem; border: var(--border); border-top: 0; padding: .8rem 1rem; font-family: var(--font-mono); font-size: .6875rem; color: var(--muted); }
.hero-media__rail span:last-child { color: var(--signal); }
.overview-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 2.5rem var(--gutter) 0; border-block: var(--border); }
.overview-fact { padding: 2rem 1.5rem; border-right: var(--border); }
.overview-fact:first-child { padding-left: 0; }
.overview-fact:last-child { border-right: 0; }
.overview-fact dt { font-family: var(--font-mono); font-size: .6875rem; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); }
.overview-fact dd { font-family: var(--font-display); font-size: clamp(2.5rem, 5vw, 4.5rem); line-height: 1; letter-spacing: -.05em; margin-top: .75rem; }
.overview-fact small { display: block; font-family: var(--font-body); font-size: .8125rem; line-height: 1.5; letter-spacing: 0; color: var(--muted); margin-top: .75rem; }
.overview-principle { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: 2.5rem; padding: var(--section-space) var(--gutter); }
.overview-principle h2 { font-size: clamp(1.75rem, 2.7vw, 2.75rem); max-width: 16ch; }
.overview-principle blockquote { font-family: var(--font-display); font-size: clamp(1.5rem, 2.75vw, 2.75rem); line-height: 1.25; letter-spacing: -.035em; }
.overview-principle p { margin-top: 1.5rem; color: var(--muted); max-width: 54ch; }
.section-heading { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(5rem, .32fr) minmax(0, 1fr); gap: clamp(1rem, 4vw, 3.5rem); padding: var(--section-space) var(--gutter) 3rem; border-bottom: var(--border); align-items: start; }
.section-heading .index-number { margin-left: calc(var(--gutter) * -.65); font-size: clamp(5rem, 15vw, 13rem); }
.section-heading .eyebrow { margin-bottom: 1rem; }
.section-heading h2 { max-width: 16ch; }
.section-heading .lead { margin-top: 1.75rem; color: var(--muted); }
.services-intro { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(2rem, 5vw, 4rem); padding: 3rem var(--gutter); align-items: center; }
.services-intro img { aspect-ratio: 7 / 8; width: 100%; object-fit: cover; }
.services-intro__copy { display: grid; gap: 1.5rem; }
.services-intro__copy h3 { max-width: 14ch; }
.services-intro__copy p { color: var(--muted); max-width: 48ch; }
.service-catalogue { padding-inline: var(--gutter); padding-bottom: var(--section-space); }
.service-module { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); border-top: var(--border); padding-block: 2.5rem; column-gap: clamp(1.5rem, 4vw, 3.5rem); }
.service-module__heading { grid-column: 1 / -1; display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); gap: 1rem; padding-bottom: 1.75rem; align-items: baseline; }
.service-module__number { font-family: var(--font-mono); font-size: 1rem; color: var(--signal); }
.service-module h3 { font-size: clamp(1.6rem, 3vw, 2.6rem); max-width: 24ch; }
.service-module__image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.service-module__copy { display: flex; flex-direction: column; align-items: flex-start; gap: 1.25rem; padding-block: .25rem; }
.service-module__copy > p { color: var(--muted); }
.service-module__detail { width: 100%; padding: 1.25rem; border-left: 1px solid var(--signal); background: var(--panel); font-size: .9375rem; }
.service-module__detail strong { color: var(--signal); font-weight: 600; display: block; margin-bottom: .5rem; font-size: .75rem; }
.service-module__basis { margin-top: auto; border-top: var(--border); padding-top: 1.25rem; width: 100%; }
.service-module__basis dt { font-family: var(--font-mono); color: var(--muted); font-size: .625rem; text-transform: uppercase; margin-bottom: .5rem; }
.service-module__basis dd { font-family: var(--font-mono); font-size: .8125rem; line-height: 1.6; }
.service-module:nth-child(even) .service-module__image { order: 3; }
.service-module:nth-child(even) .service-module__copy { order: 2; }
.scope-note { padding: 1.5rem; border: var(--border); color: var(--muted); font-size: .875rem; display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; align-items: center; }
.scope-note p { max-width: 52ch; }
.proof-lead { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, .7fr); gap: 2rem; padding: 3rem var(--gutter); align-items: start; }
.proof-lead img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
.proof-lead__note { border-top: 1px solid var(--signal); padding-top: 1.5rem; }
.proof-lead__note h3 { font-size: var(--text-xl); margin-bottom: 1rem; }
.proof-lead__note p { color: var(--muted); font-size: .9375rem; }
.proof-ledger { margin-inline: var(--gutter); border-top: var(--border); }
.proof-row { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1fr) minmax(0, .4fr); gap: 2rem; padding-block: 2.5rem; border-bottom: var(--border); }
.proof-row__identity .meta { margin-bottom: .65rem; }
.proof-row h3 { font-size: clamp(1.375rem, 2vw, 2rem); }
.proof-row__body p { color: var(--muted); font-size: .9375rem; }
.proof-row__body p + p { margin-top: 1rem; }
.proof-row__result { padding: 1.25rem; align-self: start; }
.proof-row__result strong { display: block; font-family: var(--font-display); color: var(--signal); font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1; font-weight: 500; }
.proof-row__result span { display: block; color: var(--muted); font-size: .6875rem; font-family: var(--font-mono); margin-top: 1rem; line-height: 1.6; }
.proof-footnote { padding: 1.5rem var(--gutter) 3rem; font-size: .75rem; color: var(--muted); max-width: 84ch; }
.proof-process { padding: 3rem var(--gutter) var(--section-space); }
.proof-process h3 { max-width: 20ch; margin-bottom: 2rem; }
.process-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: var(--border); }
.process-list li { margin: 0; padding: 1.5rem; border-bottom: var(--border); border-right: var(--border); }
.process-list li:nth-child(2n) { border-right: 0; }
.process-list .meta { color: var(--signal); display: block; margin-bottom: .75rem; }
.process-list h4 { font-size: 1.25rem; margin-bottom: .75rem; }
.process-list p { color: var(--muted); font-size: .875rem; }
.contact-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, .6fr); gap: clamp(2rem, 5vw, 4rem); padding: 3rem var(--gutter) var(--section-space); }
.contact-form h3 { font-size: 1.75rem; margin-bottom: 1rem; }
.contact-form > p { color: var(--muted); font-size: .9375rem; margin-bottom: 2rem; }
.contact-form .form-grid { margin-bottom: 1.5rem; }
.contact-aside { align-self: start; border-top: 1px solid var(--signal); }
.contact-aside__block { padding-block: 1.5rem; border-bottom: var(--border); }
.contact-aside__block h3 { font-size: 1.125rem; margin-bottom: 1rem; }
.contact-aside address { color: var(--muted); font-size: .9375rem; }
.contact-aside address span { display: block; }
.contact-aside a { display: flex; align-items: center; gap: .625rem; min-height: 44px; padding-block: .65rem; font-size: .875rem; text-decoration: none; }
.contact-aside p { color: var(--muted); font-size: .875rem; }
.contact-aside .button { margin-top: 1rem; }
.contact-location { display: flex; gap: .625rem; align-items: flex-start; font-size: .875rem; }
.contact-location .icon { color: var(--signal); margin-top: .2rem; }
.contact-faq { padding: 0 var(--gutter) var(--section-space); }
.contact-faq h3 { margin-bottom: 1.5rem; }
.lab-page { background: var(--navy); }
.lab-heading { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; padding: 3rem var(--gutter); border-bottom: var(--border); }
.lab-heading h1 { margin-top: 1rem; max-width: 13ch; font-size: clamp(2.5rem, 6vw, 5.5rem); }
.lab-heading .lead { margin-top: 1.5rem; color: var(--muted); max-width: 51ch; }
.lab-heading__index { font-family: var(--font-display); font-size: clamp(4rem, 12vw, 11rem); color: var(--signal); line-height: .9; letter-spacing: -.07em; align-self: start; }
.lab-framing { margin: 2rem var(--gutter); padding: 1.25rem 1.5rem; border: var(--border); border-left-color: var(--signal); font-size: .875rem; color: var(--muted); }
.lab-framing strong { color: var(--paper); }
.lab-root, [data-lab] { padding: 0 var(--gutter) 3rem; }
.lab-root [data-lab] { padding: 0; }
.lab-workspace { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr); gap: 1.5rem; align-items: start; }
.lab-module { border: var(--border); background: var(--void); }
.lab-module__header { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: .75rem; border-bottom: var(--border); padding: 1rem 1.25rem; }
.lab-module__header h2 { font-family: var(--font-mono); font-size: .8125rem; line-height: 1.5; letter-spacing: .025em; }
.lab-module__header .meta { font-size: .625rem; }
.case-stage { padding: 1.5rem; }
.case-readout { padding: clamp(1.5rem, 4vw, 3rem); min-height: 200px; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 1rem; background-color: var(--navy); }
.case-readout__tier { font-family: var(--font-mono); font-size: .6875rem; color: var(--signal); text-transform: uppercase; letter-spacing: .12em; }
.case-readout__name { font-family: var(--font-display); font-size: clamp(1.75rem, 3.7vw, 3.5rem); letter-spacing: -.04em; line-height: 1.1; overflow-wrap: anywhere; }
.case-readout__meta { color: var(--muted); font-family: var(--font-mono); font-size: .75rem; }
.case-stage .action-row { margin-top: 1.5rem; }
.lab-help { font-size: .8125rem; color: var(--muted); margin-top: 1rem; }
.lab-status { min-height: 2.5rem; padding: .875rem 0; color: var(--signal); font-family: var(--font-mono); font-size: .75rem; line-height: 1.6; }
.lab-status.is-error { color: var(--error); }
.odds-table { width: 100%; table-layout: fixed; }
.odds-table th, .odds-table td { padding: .85rem 1rem; border-bottom: var(--border); font-size: .8125rem; overflow-wrap: anywhere; }
.odds-table th { color: var(--muted); font-size: .6875rem; font-family: var(--font-mono); font-weight: 400; }
.odds-table td:last-child, .odds-table th:last-child { text-align: right; font-family: var(--font-mono); }
.odds-table tfoot td { color: var(--signal); }
.odds-note { padding: 1rem; color: var(--muted); font-size: .75rem; }
.lab-inventory { margin-top: 1.5rem; }
.inventory-toolbar { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; justify-content: space-between; padding: 1rem 1.25rem; border-bottom: var(--border); }
.inventory-toolbar label { color: var(--muted); font-size: .75rem; }
.inventory-toolbar select { min-height: 44px; padding: .5rem .75rem; border: var(--border); background: var(--navy); font-size: .875rem; }
.inventory-count { font-family: var(--font-mono); color: var(--signal); font-size: .75rem; }
.inventory-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 175px), 1fr)); gap: 1px; background: var(--line); padding: 1px; }
.inventory-item { display: flex; flex-direction: column; gap: .75rem; padding: 1.25rem; background: var(--navy); border: 1px solid transparent; }
.inventory-item[draggable='true'] { cursor: grab; }
.inventory-item.is-dragging { border-color: var(--signal); background: var(--panel); }
.inventory-item.is-selected { border-color: var(--signal); }
.inventory-item__tier { font-family: var(--font-mono); font-size: .625rem; text-transform: uppercase; letter-spacing: .07em; color: var(--muted); }
.inventory-item[data-tier='legendary'] .inventory-item__tier { color: var(--signal); font-weight: 500; }
.inventory-item[data-tier='rare'] .inventory-item__tier { color: var(--paper); }
.inventory-item__name { font-family: var(--font-display); font-size: 1.125rem; line-height: 1.25; }
.inventory-item__id { font-family: var(--font-mono); font-size: .625rem; color: var(--muted); }
.inventory-item__actions { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: auto; }
.inventory-item__actions button { min-height: 44px; padding: .5rem .6rem; font-size: .75rem; border: var(--border); background: var(--void); color: var(--paper); flex: 1; }
.inventory-item__actions button[data-lab-action='select'] { color: var(--signal); }
.inventory-empty { background: var(--navy); padding: 2rem; color: var(--muted); font-size: .9375rem; grid-column: 1 / -1; }
.loadout-module { margin-top: 1.5rem; }
.loadout-slots { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; padding: 1.25rem; }
.loadout-slot { display: flex; flex-direction: column; gap: .75rem; min-width: 0; background: var(--navy); border: 1px dashed var(--line); padding: 1.25rem; }
.loadout-slot.is-drop-target { border-style: solid; border-color: var(--signal); background: var(--panel); }
.loadout-slot.is-equipped { border-style: solid; }
.loadout-slot__label { font-family: var(--font-mono); font-size: .6875rem; text-transform: uppercase; color: var(--signal); }
.loadout-slot__name { font-family: var(--font-display); font-size: 1.25rem; line-height: 1.25; overflow-wrap: anywhere; }
.loadout-slot__tier { color: var(--muted); font-size: .75rem; }
.loadout-slot .button { margin-top: auto; font-size: .75rem; padding: .625rem; }
.loadout-slot .button--quiet { margin-top: 0; }
.loadout-actions { display: flex; flex-wrap: wrap; gap: .75rem; padding: 0 1.25rem 1.25rem; }
.loadout-notice { padding: 0 1.25rem 1.25rem; color: var(--muted); font-size: .75rem; }
.simulation-module { margin-top: 1.5rem; }
.simulation-body { padding: 1.25rem; }
.simulation-chart { width: 100%; height: auto; aspect-ratio: 2 / 1; background: var(--navy); margin-top: 1.25rem; }
.simulation-results { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; border-block: var(--border); margin-top: 1rem; padding-block: 1rem; }
.simulation-results div { min-width: 0; }
.simulation-results dt { font-family: var(--font-mono); font-size: .625rem; color: var(--muted); text-transform: uppercase; }
.simulation-results dd { color: var(--signal); font-family: var(--font-mono); font-size: 1.125rem; margin-top: .5rem; }
.simulation-results small { display: block; font-size: .625rem; color: var(--muted); margin-top: .25rem; }
.lab-reset-row { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; border-top: var(--border); padding-top: 1.5rem; margin-top: 2rem; }
.lab-reset-row p { color: var(--muted); font-size: .75rem; max-width: 58ch; }
.lab-explainer { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: 3rem; border-top: var(--border); padding: var(--section-space) var(--gutter); }
.lab-explainer h2 { font-size: clamp(1.75rem, 3vw, 3rem); }
.lab-explainer .prose { color: var(--muted); }
.lab-technical { padding: 0 var(--gutter) var(--section-space); }
.lab-technical h2 { font-size: var(--text-h3); margin-bottom: 1.75rem; }
.lab-storage-note { padding: 1rem; border: var(--border); font-size: .8125rem; color: var(--muted); }
.legal-heading { padding: clamp(3rem, 7vw, 6rem) var(--gutter) 2.5rem; border-bottom: var(--border); }
.legal-heading .eyebrow { margin-bottom: 1.25rem; }
.legal-heading h1 { max-width: 17ch; font-size: clamp(2.375rem, 5.5vw, 5rem); }
.legal-heading .lead { margin-top: 1.75rem; color: var(--muted); }
.legal-heading .meta { margin-top: 1.5rem; font-size: .625rem; }
.privacy-glance { padding: 2.5rem var(--gutter) 3.5rem; }
.privacy-glance__heading { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; align-items: baseline; padding: 1.25rem 1.5rem; border: 1px solid var(--signal); border-bottom: 0; background: var(--void); }
.privacy-glance__heading h2 { font-family: var(--font-display); font-size: 1.5rem; }
.privacy-glance__heading .meta { font-size: .625rem; }
.privacy-glance table, .glance-table { width: 100%; table-layout: fixed; border: 1px solid var(--signal); background: var(--panel); }
.privacy-glance caption { padding: 1rem 0; font-size: .8125rem; color: var(--muted); }
.privacy-glance th, .privacy-glance td { padding: 1.25rem 1.5rem; border-bottom: var(--border); vertical-align: top; overflow-wrap: anywhere; font-size: .9375rem; line-height: 1.65; }
.privacy-glance th { width: 28%; color: var(--signal); font-family: var(--font-mono); font-size: .75rem; font-weight: 400; }
.privacy-glance td a { display: inline-block; padding-block: .3rem; min-height: 44px; }
.privacy-glance tbody tr:last-child th, .privacy-glance tbody tr:last-child td { border-bottom: 0; }
.privacy-body { max-width: 850px; padding: 0 var(--gutter) var(--section-space); margin-inline: auto; }
.privacy-section { padding-block: 2.5rem; border-top: var(--border); }
.privacy-section h2 { font-size: clamp(1.75rem, 3vw, 2.875rem); max-width: 24ch; margin-bottom: 1.5rem; }
.privacy-section h3 { font-size: 1.375rem; margin-block: 2rem 1rem; }
.privacy-section p + p { margin-top: 1.25rem; }
.privacy-section ul, .privacy-section ol { margin-block: 1.25rem; }
.privacy-section .notice { margin-top: 1.75rem; }
.legal-bases-table { width: 100%; table-layout: fixed; margin-block: 1.5rem; }
.legal-bases-table th, .legal-bases-table td { text-align: left; border: var(--border); padding: 1rem; vertical-align: top; overflow-wrap: anywhere; font-size: .8125rem; }
.legal-bases-table th { background: var(--void); font-family: var(--font-mono); font-size: .6875rem; font-weight: 400; color: var(--signal); }
.legal-bases-table td { background: var(--navy); color: var(--muted); }
.legal-bases-table caption { font-family: var(--font-mono); color: var(--muted); font-size: .6875rem; padding-block: .75rem; }
.privacy-accessibility { border-top: 1px solid var(--signal); margin-top: 1.5rem; }
.accessibility-features { list-style: none; padding: 0; border-top: var(--border); }
.accessibility-features li { padding: 1rem 0 1rem 1.5rem; border-bottom: var(--border); position: relative; margin: 0; }
.accessibility-features li::before { content: '+'; color: var(--signal); position: absolute; left: 0; top: 1rem; font-family: var(--font-mono); }
.data-request-route { margin-top: 1.5rem; padding: 1.5rem; border: 1px solid var(--signal); background: var(--void); }
.data-request-route h3 { margin-top: 0; }
.data-request-route a.button { margin-top: 1.25rem; }
.data-request-route dl { margin-block: 1rem; }
.data-request-route dt { font-family: var(--font-mono); font-size: .6875rem; color: var(--signal); margin-top: 1rem; }
.data-request-route dd { margin-top: .35rem; font-size: .875rem; color: var(--muted); }
.cookies-page .legal-heading { padding-bottom: 3.5rem; }
.cookie-sections { padding: 0 var(--gutter) var(--section-space); }
.cookie-section { display: grid; grid-template-columns: minmax(5rem, .25fr) minmax(0, 1fr); gap: clamp(1rem, 4vw, 3.5rem); padding-block: clamp(3.5rem, 8vw, 6.5rem); border-bottom: var(--border); align-items: start; }
.cookie-section__number { font-family: var(--font-display); font-size: clamp(5rem, 13vw, 11.5rem); line-height: .85; letter-spacing: -.075em; color: var(--signal); margin-left: calc(var(--gutter) * -.65); }
.cookie-section__body { max-width: 75ch; }
.cookie-section__body h2 { font-size: clamp(1.75rem, 3.5vw, 3.5rem); margin-bottom: 1.75rem; max-width: 22ch; }
.cookie-section__body h3 { font-size: 1.375rem; margin-block: 2rem 1rem; }
.cookie-section__body p + p { margin-top: 1.25rem; }
.cookie-section__body ul { margin-block: 1.25rem; }
.cookie-table { width: 100%; table-layout: fixed; margin-block: 1.75rem; }
.cookie-table caption { color: var(--muted); font-family: var(--font-mono); font-size: .6875rem; padding-bottom: .75rem; }
.cookie-table th, .cookie-table td { border-bottom: var(--border); padding: 1rem .75rem; overflow-wrap: anywhere; vertical-align: top; }
.cookie-table thead th { color: var(--signal); background: var(--void); font-family: var(--font-mono); font-size: .625rem; font-weight: 400; line-height: 1.5; }
.cookie-table tbody th { color: var(--paper); font-size: .8125rem; font-weight: 600; }
.cookie-table td { color: var(--muted); font-size: .8125rem; line-height: 1.65; }
.cookie-table code { font-size: .75rem; }
.consent-matrix { width: 100%; table-layout: fixed; border: var(--border); margin-block: 1.75rem; }
.consent-matrix th, .consent-matrix td { padding: .875rem .75rem; border-bottom: var(--border); text-align: left; overflow-wrap: anywhere; }
.consent-matrix th:first-child { width: 46%; }
.consent-matrix thead th { background: var(--void); color: var(--muted); font-size: .625rem; font-family: var(--font-mono); font-weight: 400; }
.consent-matrix tbody th { font-family: var(--font-mono); font-size: .6875rem; font-weight: 400; }
.consent-matrix td { font-family: var(--font-mono); font-size: .6875rem; color: var(--signal); }
.cookie-choice-module { padding: 1.5rem; border: 1px solid var(--signal); background: var(--void); margin-top: 1.75rem; }
.cookie-choice-module h3 { margin-top: 0; }
.cookie-choice-module .consent-controls { margin-bottom: .75rem; }
.cookie-storage-list { margin-top: 1.5rem; border-top: var(--border); }
.cookie-storage-list > div { padding: 1rem 0; border-bottom: var(--border); }
.cookie-storage-list dt { font-family: var(--font-mono); font-size: .8125rem; color: var(--signal); overflow-wrap: anywhere; }
.cookie-storage-list dd { font-size: .875rem; color: var(--muted); margin-top: .5rem; }
.terms-page .legal-heading { border-bottom-color: var(--signal); }
.terms-questions { max-width: 1000px; padding: 0 var(--gutter) var(--section-space); margin-inline: auto; }
.terms-question { padding-block: clamp(2.75rem, 6vw, 5rem); border-bottom: var(--border); }
.terms-question h2 { font-family: var(--font-display); font-size: clamp(2rem, 4.4vw, 4rem); font-weight: 500; letter-spacing: -.045em; line-height: 1.1; margin-bottom: 1.75rem; max-width: 22ch; }
.terms-question__answer { max-width: 70ch; font-size: var(--text-base); line-height: 1.75; }
.terms-question__answer p + p { margin-top: 1.3rem; }
.terms-question__answer h3 { font-size: 1.375rem; margin-block: 2rem 1rem; }
.terms-question__answer ul, .terms-question__answer ol { margin-block: 1.25rem; }
.terms-question__answer li::marker { color: var(--signal); }
.terms-question--promise { border-bottom-color: var(--signal); }
.terms-promise { margin-block: 1.75rem; padding: 1.5rem 1.75rem; background: var(--void); border-left: 2px solid var(--signal); font-size: var(--text-lg); }
.terms-promise strong { font-family: var(--font-display); font-weight: 500; }
.terms-scope { border-block: var(--border); margin-block: 1.75rem; }
.terms-scope > div { display: grid; grid-template-columns: minmax(0, .35fr) minmax(0, 1fr); gap: 1.5rem; padding-block: 1.25rem; }
.terms-scope > div + div { border-top: var(--border); }
.terms-scope dt { font-family: var(--font-mono); font-size: .75rem; color: var(--signal); }
.terms-scope dd { font-size: .9375rem; color: var(--muted); }
.legal-contact-block { padding: 1.5rem; border: var(--border); margin-top: 1.75rem; background: var(--void); }
.legal-contact-block address { font-size: .9375rem; color: var(--muted); }
.legal-contact-block a { display: inline-block; min-height: 44px; padding-block: .625rem; }
.legal-contact-block h3 { margin-top: 0; }
.legal-related { display: flex; flex-wrap: wrap; gap: .75rem 2rem; padding: 2rem var(--gutter); border-top: var(--border); }
.legal-related a { min-height: 44px; padding-block: .625rem; font-size: .875rem; }
.thanks-page, .error-page { padding: clamp(3rem, 8vw, 7rem) var(--gutter); }
.confirmation-layout, .error-layout { display: grid; grid-template-columns: minmax(0, .35fr) minmax(0, 1fr); gap: clamp(1.5rem, 5vw, 4rem); }
.confirmation-index, .error-index { font-family: var(--font-display); font-size: clamp(4.5rem, 12vw, 10rem); line-height: .9; color: var(--signal); letter-spacing: -.075em; border-top: 1px solid var(--signal); padding-top: 1.5rem; }
.confirmation-copy .eyebrow, .error-copy .eyebrow { margin-bottom: 1.5rem; }
.confirmation-copy h1, .error-copy h1 { font-size: clamp(2.5rem, 5vw, 5rem); max-width: 13ch; }
.confirmation-copy .lead, .error-copy .lead { margin-top: 1.5rem; color: var(--muted); }
.confirmation-copy .action-row, .error-copy .action-row { margin-top: 2rem; }
.confirmation-next { margin-top: 3rem; padding-top: 2rem; border-top: var(--border); }
.confirmation-next h2 { font-size: 1.75rem; margin-bottom: 1.25rem; }
.confirmation-next p { color: var(--muted); max-width: 60ch; }
.confirmation-contact { margin-top: 2rem; padding: 1.5rem; border: var(--border); display: grid; gap: .5rem; }
.confirmation-contact a { display: flex; align-items: center; gap: .75rem; padding-block: .625rem; min-height: 44px; font-size: .9375rem; }
.error-code { font-family: var(--font-mono); color: var(--muted); font-size: .75rem; border-top: var(--border); padding-top: 1rem; margin-top: 2rem; }

@media (min-width: 1440px) { .overview-hero h1 { font-size: 7.25rem; } .overview-hero__index .index-number { font-size: 15rem; } .cookie-section { gap: 3.5rem; } }
@media (max-width: 1023px) { .overview-intro { grid-template-columns: minmax(0, 1fr); } .overview-intro .action-row { justify-content: flex-start; } .contact-layout { grid-template-columns: minmax(0, 1fr) minmax(0, .6fr); gap: 2rem; } .proof-row { grid-template-columns: minmax(0, .8fr) minmax(0, 1fr); } .proof-row__result { grid-column: 2; } .lab-workspace { grid-template-columns: minmax(0, 1fr) minmax(0, .75fr); } .loadout-slots { gap: .75rem; padding: 1rem; } .loadout-slot { padding: 1rem; } }
@media (max-width: 767px) {
  .overview-hero { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; padding-top: 2rem; }
  .overview-hero__index { grid-row: 1; flex-direction: row; align-items: end; gap: 1rem; padding: 0; }
  .overview-hero__index .index-number { font-size: clamp(5rem, 20vw, 9rem); }
  .overview-hero__index .meta { max-width: 20ch; font-size: .625rem; }
  .overview-hero h1 { max-width: 12ch; font-size: clamp(2.75rem, 8.8vw, 5.5rem); }
  .overview-hero .eyebrow { margin-bottom: 1rem; }
  .overview-intro { padding-block: 1.75rem 2rem; gap: 1.5rem; }
  .hero-media img { aspect-ratio: 4 / 3; }
  .hero-media__rail { flex-wrap: wrap; font-size: .625rem; }
  .overview-fact { padding: 1.5rem .75rem; }
  .overview-fact dt { font-size: .625rem; }
  .overview-fact small { font-size: .75rem; }
  .overview-principle { grid-template-columns: minmax(0, 1fr); gap: 1.75rem; }
  .overview-principle h2 { max-width: 22ch; }
  .section-heading { grid-template-columns: 4.5rem minmax(0, 1fr); gap: 1rem; padding-top: 3rem; }
  .section-heading .index-number { font-size: 5.5rem; margin-left: -.5rem; }
  .section-heading .lead { margin-top: 1rem; }
  .services-intro { grid-template-columns: minmax(0, .7fr) minmax(0, 1fr); gap: 1.5rem; }
  .services-intro__copy { gap: 1rem; }
  .services-intro__copy h3 { font-size: 1.5rem; }
  .services-intro__copy p { font-size: .875rem; }
  .service-module { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .service-module__heading { padding-bottom: 0; grid-template-columns: 2rem minmax(0, 1fr); }
  .service-module:nth-child(even) .service-module__image, .service-module:nth-child(even) .service-module__copy { order: initial; }
  .service-module__image img { aspect-ratio: 3 / 2; }
  .proof-lead { grid-template-columns: minmax(0, 1fr); }
  .proof-row { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .proof-row__result { grid-column: auto; max-width: 22rem; }
  .proof-row__result strong { font-size: 3rem; }
  .contact-layout { grid-template-columns: minmax(0, 1fr); }
  .contact-aside { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.5rem; }
  .lab-heading { grid-template-columns: minmax(0, 1fr); }
  .lab-heading__index { grid-row: 1; font-size: 5rem; }
  .lab-workspace { grid-template-columns: minmax(0, 1fr); }
  .lab-explainer { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .loadout-slots { grid-template-columns: minmax(0, 1fr); }
  .loadout-slot { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .75rem 1rem; }
  .loadout-slot__label, .loadout-slot__name, .loadout-slot__tier { grid-column: 1 / -1; }
  .loadout-slot .button { margin-top: 0; }
  .simulation-results { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .privacy-glance th { width: 34%; }
  .privacy-glance th, .privacy-glance td { padding: 1rem; }
  .privacy-glance__heading { padding: 1rem; }
  .privacy-body { padding-inline: var(--gutter); }
  .legal-bases-table th, .legal-bases-table td { padding: .75rem .5rem; }
  .cookie-section { grid-template-columns: 4.5rem minmax(0, 1fr); gap: 1rem; }
  .cookie-section__number { font-size: 5.5rem; margin-left: -.5rem; }
  .cookie-table th, .cookie-table td { padding: .75rem .5rem; }
  .consent-matrix th, .consent-matrix td { padding: .75rem .4rem; }
  .cookie-choice-module { padding: 1rem; }
  .terms-question h2 { max-width: 20ch; }
  .terms-scope > div { grid-template-columns: minmax(0, 1fr); gap: .5rem; }
  .confirmation-layout, .error-layout { grid-template-columns: minmax(0, 1fr); }
  .confirmation-index, .error-index { font-size: 5rem; max-width: 10rem; }
}
@media (max-width: 479px) {
  .section-heading { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
  .section-heading .index-number { font-size: 6rem; margin: 0; }
  .section-heading h2 { max-width: 15ch; }
  .overview-facts { grid-template-columns: minmax(0, 1fr); }
  .overview-fact { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1fr); gap: 1rem; padding: 1.25rem 0; border-right: 0; border-bottom: var(--border); align-items: baseline; }
  .overview-fact:last-child { border-bottom: 0; }
  .overview-fact dd { font-size: 2.75rem; margin-top: 0; }
  .services-intro { grid-template-columns: minmax(0, 1fr); }
  .services-intro img { aspect-ratio: 4 / 3; object-position: center 25%; }
  .process-list { grid-template-columns: minmax(0, 1fr); }
  .process-list li { padding-inline: 0; border-right: 0; }
  .contact-aside { grid-template-columns: minmax(0, 1fr); }
  .lab-framing { padding: 1rem; }
  .case-stage { padding: 1rem; }
  .case-readout { min-height: 180px; padding: 1.25rem; }
  .inventory-toolbar { padding: 1rem; align-items: stretch; }
  .inventory-toolbar select { width: 100%; }
  .inventory-grid { grid-template-columns: minmax(0, 1fr); }
  .lab-module__header { padding: 1rem; }
  .loadout-actions .button { flex: 1 1 100%; }
  .privacy-glance table, .privacy-glance tbody, .privacy-glance tr, .privacy-glance th, .privacy-glance td { display: block; width: 100%; }
  .privacy-glance tr { padding: 1rem; border-bottom: var(--border); }
  .privacy-glance th { padding: 0 0 .5rem; border: 0; }
  .privacy-glance td { padding: 0; border: 0; font-size: .875rem; }
  .privacy-glance tbody tr:last-child { border-bottom: 0; }
  .privacy-glance table { border-top: var(--border); }
  .cookie-section { grid-template-columns: minmax(0, 1fr); gap: 2rem; padding-block: 3rem; }
  .cookie-section__number { font-size: 6rem; margin: 0; }
  .cookie-section__body h2 { font-size: 2rem; }
  .cookie-table { font-size: .75rem; }
  .cookie-table code { font-size: .6875rem; }
  .cookie-table th, .cookie-table td { padding: .75rem .375rem; font-size: .75rem; }
  .consent-matrix tbody th { font-size: .625rem; }
  .consent-matrix td { font-size: .625rem; }
  .legal-bases-table { table-layout: auto; }
  .legal-bases-table thead { display: none; }
  .legal-bases-table, .legal-bases-table tbody, .legal-bases-table tr, .legal-bases-table td { display: block; width: 100%; }
  .legal-bases-table tr { border: var(--border); margin-top: 1rem; }
  .legal-bases-table td { border: 0; padding: .75rem; }
  .legal-bases-table td + td { border-top: var(--border); }
  .legal-bases-table td[data-label]::before { content: attr(data-label); display: block; color: var(--signal); font-family: var(--font-mono); font-size: .625rem; margin-bottom: .4rem; }
  .terms-promise { padding: 1.25rem; }
  .terms-question { padding-block: 2.75rem; }
  .legal-contact-block, .data-request-route { padding: 1rem; }
  .confirmation-contact { padding: 1rem; }
}
@media (max-width: 359px) { .overview-hero h1 { font-size: 2.75rem; } .overview-hero__index .meta { max-width: 15ch; } .overview-intro .button { width: 100%; } .loadout-slot { grid-template-columns: minmax(0, 1fr); } .loadout-slot .button { width: 100%; } .simulation-results dd { font-size: 1rem; } .cookie-table th, .cookie-table td { font-size: .6875rem; } .consent-matrix th:first-child { width: 45%; } }
@media (prefers-reduced-motion: reduce) { .case-readout { transform: none !important; } }
@media print { .overview-hero, .section-heading, .lab-heading { display: block; } .overview-hero__index, .lab-heading__index { display: none; } .hero-media img { max-height: 10cm; } .legal-heading { padding-top: 0; } .cookie-section { padding-block: 2rem; } .cookie-section__number { font-size: 4rem; } .terms-question { padding-block: 2rem; } .lab-root .button, .lab-root button { display: none; } }
