:root {
    --ink: #0b0d10;
    --ink-soft: #14171c;
    --paper: #f2f0e9;
    --paper-strong: #faf9f5;
    --white: #ffffff;
    --muted: #9da3ad;
    --muted-dark: #5e646d;
    --line: rgba(255, 255, 255, 0.14);
    --line-dark: rgba(11, 13, 16, 0.16);
    --accent: #4263ff;
    --accent-bright: #6f87ff;
    --signal: #a9ff68;
    --container: 1240px;
    --radius: 4px;
    --header: 82px;
    --font-sans: 'Manrope', Arial, sans-serif;
    --font-mono: 'Space Mono', monospace;
}

* { box-sizing: border-box; }

html {
    scroll-behavior: smooth;
    background: var(--ink);
}

body {
    margin: 0;
    min-width: 320px;
    color: var(--paper);
    background: var(--ink);
    font-family: var(--font-sans);
    font-size: 16px;
    line-height: 1.6;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

body.menu-open { overflow: hidden; }

a { color: inherit; text-decoration: none; }
button, summary { font: inherit; }
img { display: block; max-width: 100%; }
h1, h2, h3, p { margin-top: 0; }

::selection { color: var(--ink); background: var(--signal); }

.container {
    width: min(calc(100% - 48px), var(--container));
    margin: 0 auto;
}

.skip-link {
    position: fixed;
    z-index: 1000;
    top: 12px;
    left: 12px;
    padding: 10px 16px;
    color: var(--ink);
    background: var(--signal);
    transform: translateY(-150%);
    transition: transform 160ms ease;
}

.skip-link:focus { transform: translateY(0); }

:focus-visible {
    outline: 3px solid var(--signal);
    outline-offset: 4px;
}

.page-grid {
    position: fixed;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    opacity: 0.24;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(to bottom, #000 0, transparent 86%);
}

.site-header {
    position: fixed;
    z-index: 100;
    top: 0;
    right: 0;
    left: 0;
    border-bottom: 1px solid transparent;
    background: rgba(11, 13, 16, 0.82);
    backdrop-filter: blur(18px);
    transition: border-color 180ms ease, background 180ms ease;
}

.site-header.scrolled {
    border-color: var(--line);
    background: rgba(11, 13, 16, 0.94);
}

.header-inner {
    min-height: var(--header);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 13px;
    min-width: max-content;
}

.brand-mark {
    width: 45px;
    height: 45px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    flex: 0 0 auto;
    overflow: hidden;
    color: var(--paper);
    border: 1px solid rgba(255, 255, 255, 0.72);
    background: var(--ink);
    font-family: var(--font-mono);
}

.brand-mark b {
    display: grid;
    place-items: center;
    font-size: 10px;
    line-height: 1;
    font-weight: 700;
}

.brand-mark b:first-child { color: var(--ink); background: var(--signal); }
.brand-mark b:nth-of-type(2) { border-top: 1px solid rgba(255, 255, 255, 0.35); border-right: 1px solid rgba(255, 255, 255, 0.35); }
.brand-mark b:nth-of-type(3) { border-top: 1px solid rgba(255, 255, 255, 0.35); }
.brand-mark i { border-left: 1px solid rgba(255, 255, 255, 0.35); transform: skew(-22deg); transform-origin: center; }

.brand-copy { display: grid; line-height: 1.1; }
.brand-copy strong { font-size: 13px; font-weight: 700; letter-spacing: -0.01em; }
.brand-copy small { margin-top: 6px; color: var(--muted); font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.05em; text-transform: uppercase; }

.nav-panel { display: flex; align-items: center; justify-content: flex-end; gap: clamp(22px, 3.3vw, 52px); width: 100%; }
.main-nav { display: flex; align-items: center; gap: clamp(18px, 2.2vw, 34px); }
.main-nav a { position: relative; color: #c5c8ce; font-size: 12px; font-weight: 600; }
.main-nav a::after { content: ''; position: absolute; right: 0; bottom: -8px; left: 0; height: 1px; background: var(--signal); transform: scaleX(0); transform-origin: right; transition: transform 180ms ease; }
.main-nav a:hover, .main-nav a[aria-current='page'] { color: var(--paper); }
.main-nav a:hover::after, .main-nav a[aria-current='page']::after { transform: scaleX(1); transform-origin: left; }
.nav-actions { display: flex; align-items: center; gap: 14px; }

.language-picker { position: relative; }
.language-picker summary { min-width: 45px; display: flex; align-items: center; justify-content: center; gap: 5px; padding: 8px; color: var(--muted); cursor: pointer; list-style: none; font-family: var(--font-mono); font-size: 10px; }
.language-picker summary::-webkit-details-marker { display: none; }
.language-menu { position: absolute; top: calc(100% + 12px); right: 0; min-width: 72px; padding: 5px; border: 1px solid var(--line); background: #111419; box-shadow: 0 18px 50px rgba(0, 0, 0, 0.35); }
.language-menu a { display: block; padding: 8px 10px; color: var(--muted); font-family: var(--font-mono); font-size: 10px; text-align: center; }
.language-menu a:hover, .language-menu a[aria-current='page'] { color: var(--ink); background: var(--signal); }

.button {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 13px 19px;
    color: var(--ink);
    border: 1px solid var(--signal);
    border-radius: var(--radius);
    background: var(--signal);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: -0.01em;
    transition: transform 160ms ease, color 160ms ease, background 160ms ease;
}

.button:hover { transform: translateY(-2px); color: var(--paper); border-color: var(--accent-bright); background: var(--accent); }
.button-small { min-height: 40px; padding: 9px 14px; font-size: 11px; }
.button-outline { color: var(--paper); border-color: rgba(255, 255, 255, 0.42); background: transparent; }
.button-outline:hover { color: var(--ink); border-color: var(--signal); background: var(--signal); }
.text-link { display: inline-flex; align-items: center; gap: 9px; padding-block: 7px; border-bottom: 1px solid rgba(255, 255, 255, 0.38); color: var(--paper); font-size: 12px; font-weight: 700; transition: border-color 160ms ease, gap 160ms ease; }
.text-link:hover { gap: 14px; border-color: var(--signal); }
.dark-link { color: var(--ink); border-color: var(--line-dark); }

.menu-button { display: none; width: 42px; height: 42px; padding: 10px; border: 1px solid var(--line); background: transparent; }
.menu-button span { display: block; width: 100%; height: 1px; margin: 6px 0; background: var(--paper); transition: transform 160ms ease; }

.reading-progress { height: 1px; background: transparent; }
.reading-progress span { display: block; width: 0; height: 1px; background: var(--signal); }

.hero {
    position: relative;
    z-index: 1;
    min-height: 820px;
    padding-top: calc(var(--header) + 96px);
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 37%, rgba(66, 99, 255, 0.17), transparent 29%),
        var(--ink);
}

.hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(500px, 0.88fr); align-items: center; gap: clamp(58px, 8vw, 120px); }
.hero-copy { position: relative; z-index: 2; padding-bottom: 90px; }
.eyebrow, .kicker { display: flex; align-items: center; gap: 11px; margin-bottom: 26px; font-family: var(--font-mono); font-size: 10px; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; }
.eyebrow { color: #c7cbd2; }
.eyebrow > span { width: 7px; height: 7px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 5px rgba(169, 255, 104, 0.09); }
.kicker { color: var(--accent-bright); }

.hero h1 {
    max-width: 760px;
    margin-bottom: 30px;
    font-size: clamp(50px, 6.4vw, 94px);
    line-height: 0.98;
    letter-spacing: -0.067em;
    font-weight: 700;
}

h1 em, h2 em { color: var(--signal); font-style: normal; }
.hero-lead { max-width: 650px; margin-bottom: 34px; color: #aeb3bc; font-size: clamp(16px, 1.4vw, 20px); line-height: 1.65; }
.hero-actions { display: flex; align-items: center; gap: 28px; }
.hero-facts { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 44px; color: #8f959f; font-family: var(--font-mono); font-size: 9px; letter-spacing: 0.08em; text-transform: uppercase; }
.hero-facts span + span::before { content: '×'; margin-right: 28px; color: var(--accent-bright); }

.delivery-console { position: relative; z-index: 1; min-height: 520px; display: grid; grid-template-rows: auto 1fr auto; border: 1px solid rgba(255, 255, 255, 0.22); background: rgba(13, 16, 21, 0.76); box-shadow: 0 34px 100px rgba(0, 0, 0, 0.4); backdrop-filter: blur(14px); }
.delivery-console::before { content: ''; position: absolute; z-index: -1; top: 35px; right: -36px; width: 130px; height: 130px; border: 1px solid rgba(169, 255, 104, 0.35); transform: rotate(11deg); }
.delivery-console::after { content: 'ENGINEERING / OWNERSHIP'; position: absolute; right: -75px; bottom: 65px; color: rgba(255, 255, 255, 0.23); font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.18em; transform: rotate(90deg); }
.console-bar, .console-footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 19px; color: var(--muted); border-bottom: 1px solid var(--line); font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.07em; text-transform: uppercase; }
.console-bar > span { display: flex; align-items: center; gap: 8px; }
.console-bar i { width: 6px; height: 6px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 12px var(--signal); }
.console-bar code { font-family: inherit; color: #d8dbe0; }
.console-body { position: relative; display: grid; grid-template-columns: 0.9fr 1.1fr; align-items: center; gap: 30px; padding: 52px 34px; }
.console-core { position: relative; width: 180px; aspect-ratio: 1; display: grid; place-content: center; padding: 24px; border: 1px solid rgba(111, 135, 255, 0.55); border-radius: 50%; text-align: center; }
.console-core::before, .console-core::after { content: ''; position: absolute; inset: 16px; border: 1px dashed rgba(255, 255, 255, 0.16); border-radius: 50%; }
.console-core::after { inset: -17px; border-style: solid; border-color: rgba(255, 255, 255, 0.08); }
.console-core small { position: relative; z-index: 1; color: var(--accent-bright); font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.14em; }
.console-core strong { position: relative; z-index: 1; max-width: 100px; margin: 8px auto 0; font-size: 15px; line-height: 1.2; }
.console-core > i { position: absolute; z-index: 2; top: 12px; left: 50%; width: 8px; height: 8px; border-radius: 50%; background: var(--signal); box-shadow: 0 0 13px var(--signal); }
.console-body ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.console-body li { display: grid; grid-template-columns: 35px 1fr; gap: 14px; padding: 15px 0; border-bottom: 1px solid var(--line); }
.console-body li span { color: var(--accent-bright); font-family: var(--font-mono); font-size: 8px; }
.console-body li strong { font-size: 11px; font-weight: 600; }
.console-footer { border-top: 1px solid var(--line); border-bottom: 0; }
.console-signal { display: flex; align-items: end; gap: 3px; height: 13px; }
.console-signal i { width: 3px; background: var(--signal); }
.console-signal i:nth-child(1) { height: 30%; }.console-signal i:nth-child(2) { height: 55%; }.console-signal i:nth-child(3) { height: 100%; }.console-signal i:nth-child(4) { height: 70%; }

.capability-strip { position: absolute; right: 0; bottom: 0; left: 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(6, 8, 10, 0.62); }
.capability-strip > div { width: min(calc(100% - 48px), var(--container)); min-height: 67px; display: flex; align-items: center; justify-content: space-between; gap: 30px; margin: auto; overflow: hidden; }
.capability-strip span { min-width: max-content; color: #737984; font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.13em; }
.capability-strip span::before { content: '+'; margin-right: 13px; color: var(--signal); }

.section { position: relative; z-index: 1; padding: 132px 0; }
.section-grid { display: grid; grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr); gap: clamp(70px, 10vw, 150px); }
.section-heading { max-width: 520px; }
.section-heading h2, .section-intro h2, .contact-copy h2, .careers-banner h2 {
    margin-bottom: 28px;
    font-size: clamp(38px, 4.5vw, 68px);
    line-height: 1.05;
    letter-spacing: -0.055em;
}
.section-heading > p:last-child, .section-intro > p:last-child { max-width: 650px; margin-bottom: 0; color: var(--muted); font-size: 15px; line-height: 1.75; }
.section-intro { max-width: 800px; margin-bottom: 70px; }
.section-intro-wide { max-width: 960px; }

.position-section { background: #101318; }
.outcome-list { border-top: 1px solid var(--line); }
.outcome-item { display: grid; grid-template-columns: 46px 1fr; gap: 24px; padding: 31px 0; border-bottom: 1px solid var(--line); }
.outcome-item > span { color: var(--signal); font-family: var(--font-mono); font-size: 9px; }
.outcome-item h3 { margin-bottom: 9px; font-size: 17px; letter-spacing: -0.02em; }
.outcome-item p { margin: 0; color: var(--muted); font-size: 13px; }
.proof-link { display: grid; grid-template-columns: 155px 1fr; gap: 24px; align-items: start; margin-top: 28px; padding: 20px; border: 1px solid rgba(111, 135, 255, 0.45); background: rgba(66, 99, 255, 0.06); transition: border-color 160ms ease, background 160ms ease; }
.proof-link:hover { border-color: var(--signal); background: rgba(169, 255, 104, 0.04); }
.proof-link span { color: var(--accent-bright); font-family: var(--font-mono); font-size: 7px; letter-spacing: 0.07em; text-transform: uppercase; }
.proof-link strong { color: #d8dbe0; font-size: 12px; font-weight: 600; line-height: 1.55; }
.proof-link i { margin-left: 8px; color: var(--signal); font-style: normal; }

.section-light { color: var(--ink); background: var(--paper); }
.section-light .kicker { color: var(--accent); }
.section-light .section-intro > p:last-child { color: var(--muted-dark); }
.capabilities-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line-dark); border-left: 1px solid var(--line-dark); }
.capability-card { min-height: 370px; display: flex; flex-direction: column; padding: clamp(28px, 4vw, 48px); border-right: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); background: var(--paper-strong); transition: color 180ms ease, background 180ms ease; }
.capability-card:hover { color: var(--paper); background: var(--ink-soft); }
.card-top { display: flex; justify-content: space-between; margin-bottom: 70px; color: var(--accent); font-family: var(--font-mono); font-size: 10px; }
.capability-card:hover .card-top { color: var(--signal); }
.capability-card h3 { max-width: 460px; margin-bottom: 16px; font-size: clamp(22px, 2.3vw, 31px); line-height: 1.18; letter-spacing: -0.045em; }
.capability-card p { max-width: 560px; margin-bottom: 35px; color: var(--muted-dark); font-size: 13px; }
.capability-card:hover p { color: #abb0b8; }
.tag-row { display: flex; flex-wrap: wrap; gap: 7px; margin-top: auto; }
.tag-row span { padding: 5px 8px; color: #555b64; border: 1px solid var(--line-dark); font-family: var(--font-mono); font-size: 7px; letter-spacing: 0.05em; text-transform: uppercase; }
.capability-card:hover .tag-row span { color: #b7bbc2; border-color: var(--line); }

.delivery-section { background: var(--ink); }
.delivery-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.delivery-step { min-height: 310px; padding: 28px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.delivery-step > span { display: block; margin-bottom: 80px; color: var(--signal); font-family: var(--font-mono); font-size: 9px; }
.delivery-step h3 { margin-bottom: 14px; font-size: 19px; line-height: 1.25; letter-spacing: -0.03em; }
.delivery-step p { margin: 0; color: var(--muted); font-size: 12px; }

.spectrum-section { background: #0f1216; }
.spectrum-grid { display: grid; grid-template-columns: 0.8fr 1.2fr; gap: clamp(70px, 11vw, 170px); }
.spectrum-list { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.spectrum-list span { min-height: 83px; display: flex; align-items: center; gap: 16px; padding: 19px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); font-size: 12px; }
.spectrum-list i { color: var(--accent-bright); font-family: var(--font-mono); font-size: 7px; font-style: normal; }

.engagement-section { background: var(--ink); }
.engagement-list { border-top: 1px solid var(--line); }
.engagement-row { display: grid; grid-template-columns: 70px minmax(230px, 0.75fr) 1fr; gap: 40px; align-items: start; padding: 31px 12px; border-bottom: 1px solid var(--line); transition: padding 160ms ease, background 160ms ease; }
.engagement-row:hover { padding-right: 25px; padding-left: 25px; background: rgba(255, 255, 255, 0.025); }
.engagement-row > span { color: var(--signal); font-family: var(--font-mono); font-size: 9px; }
.engagement-row h3 { margin: 0; font-size: 18px; }
.engagement-row p { margin: 0; color: var(--muted); font-size: 13px; }

.news-preview { overflow: hidden; }
.news-grid { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 40px; border-top: 1px solid var(--line-dark); border-left: 1px solid var(--line-dark); }
.news-card { position: relative; min-height: 320px; display: flex; flex-direction: column; padding: 31px; overflow: hidden; border-right: 1px solid var(--line-dark); border-bottom: 1px solid var(--line-dark); background: var(--paper-strong); }
.news-meta { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 70px; color: var(--muted-dark); font-family: var(--font-mono); font-size: 7px; letter-spacing: 0.04em; text-transform: uppercase; }
.news-card h3 { position: relative; z-index: 1; margin-bottom: 16px; font-size: clamp(20px, 2vw, 28px); line-height: 1.22; letter-spacing: -0.04em; }
.news-card p { position: relative; z-index: 1; margin: 0; color: var(--muted-dark); font-size: 12px; }
.news-index { position: absolute; right: -6px; bottom: -45px; color: rgba(11, 13, 16, 0.04); font-family: var(--font-mono); font-size: 150px; font-weight: 700; line-height: 1; }
.empty-inline { padding: 30px; border: 1px solid var(--line-dark); }

.careers-banner { position: relative; z-index: 1; padding: 84px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--accent); }
.careers-banner-grid { display: grid; grid-template-columns: 1fr 0.75fr auto; align-items: center; gap: 60px; }
.careers-banner .kicker { color: var(--signal); }
.careers-banner h2 { max-width: 580px; margin: 0; }
.careers-banner p { max-width: 500px; margin: 0; color: #dce2ff; font-size: 13px; }

.contact-section { position: relative; z-index: 1; padding: 145px 0; overflow: hidden; background: #0a0c0f; }
.contact-section::after { content: 'DSL'; position: absolute; z-index: 0; right: -20px; bottom: -110px; color: rgba(255, 255, 255, 0.02); font-family: var(--font-mono); font-size: min(30vw, 420px); font-weight: 700; line-height: 1; }
.contact-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 0.7fr; gap: clamp(70px, 12vw, 180px); align-items: end; }
.contact-copy h2 { max-width: 790px; }
.contact-copy > p:last-child { max-width: 650px; margin: 0; color: var(--muted); }
.contact-card { min-height: 390px; display: flex; flex-direction: column; justify-content: space-between; padding: 34px; border: 1px solid var(--line); background: #111419; }
.brand-mark.contact-mark { width: 80px; height: 80px; }
.contact-mark b { font-size: 12px; }
.contact-links { display: grid; border-top: 1px solid var(--line); }
.contact-links a { display: flex; justify-content: space-between; gap: 20px; padding: 17px 0; border-bottom: 1px solid var(--line); font-size: 12px; font-weight: 700; }
.contact-links a:hover { color: var(--signal); }
.contact-card > p { margin: 0; color: var(--muted); font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.06em; text-transform: uppercase; }

.site-footer { position: relative; z-index: 2; padding: 58px 0 44px; border-top: 1px solid var(--line); background: var(--ink); }
.footer-grid { display: grid; grid-template-columns: 1.1fr 0.8fr 0.7fr; gap: 60px; }
.site-footer .brand-copy small { display: none; }
.site-footer p { margin: 22px 0 0; color: var(--muted); font-size: 11px; }
.footer-meta, .footer-links { display: flex; flex-direction: column; gap: 12px; color: var(--muted); font-family: var(--font-mono); font-size: 8px; letter-spacing: 0.04em; }
.footer-links a:hover { color: var(--signal); }

.page-hero { position: relative; z-index: 1; min-height: 580px; display: grid; align-items: end; padding: calc(var(--header) + 110px) 0 90px; background: radial-gradient(circle at 78% 40%, rgba(66, 99, 255, 0.18), transparent 28%), var(--ink); }
.page-hero-grid { display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: end; }
.page-hero h1 { max-width: 870px; margin-bottom: 25px; font-size: clamp(58px, 8.6vw, 128px); line-height: 0.92; letter-spacing: -0.075em; }
.page-hero p:last-child { max-width: 650px; margin: 0; color: var(--muted); font-size: 17px; }
.page-code { min-width: 170px; padding: 20px; color: var(--muted); border: 1px solid var(--line); font-family: var(--font-mono); font-size: 9px; line-height: 2; }
.page-code span { color: var(--signal); }
.listing-section { min-height: 430px; }
.listing-heading { display: flex; justify-content: space-between; align-items: center; gap: 20px; margin-bottom: 35px; }
.listing-heading h2 { margin: 0; font-size: 22px; }
.listing-heading span { color: var(--muted-dark); font-family: var(--font-mono); font-size: 8px; }
.news-grid-full { grid-template-columns: repeat(3, 1fr); }
.roles-list { border-top: 1px solid var(--line-dark); }
.role-row { display: grid; grid-template-columns: 1fr 0.65fr auto; gap: 50px; align-items: center; padding: 35px 0; border-bottom: 1px solid var(--line-dark); }
.role-row h2 { margin: 8px 0; font-size: 25px; }
.role-row p, .role-row span { color: var(--muted-dark); font-size: 12px; }
.role-meta { display: flex; flex-wrap: wrap; gap: 8px; }
.role-meta span { padding: 5px 8px; border: 1px solid var(--line-dark); font-family: var(--font-mono); font-size: 7px; text-transform: uppercase; }
.empty-state { min-height: 300px; display: grid; grid-template-columns: auto 1fr auto; gap: 45px; align-items: center; padding: 45px; border: 1px solid var(--line-dark); background: var(--paper-strong); }
.empty-state h2 { margin-bottom: 10px; font-size: clamp(26px, 3vw, 40px); letter-spacing: -0.04em; }
.empty-state p { max-width: 680px; margin: 0; color: var(--muted-dark); }
.empty-state .text-link { color: var(--ink); border-color: var(--line-dark); }
.empty-symbol { color: var(--accent); font-family: var(--font-mono); font-size: 54px; }
.subpage-cta { position: relative; z-index: 1; padding: 48px 0; border-top: 1px solid var(--line); background: var(--ink); }

.js .reveal { opacity: 0; transform: translateY(24px); transition: opacity 600ms ease, transform 600ms cubic-bezier(0.22, 1, 0.36, 1); }
.js .reveal.visible { opacity: 1; transform: translateY(0); }

@media (max-width: 1100px) {
    .main-nav { gap: 16px; }
    .main-nav a { font-size: 10px; }
    .nav-actions .button { display: none; }
    .hero { min-height: auto; padding-bottom: 130px; }
    .hero-grid { grid-template-columns: 1fr; gap: 30px; }
    .hero-copy { max-width: 850px; padding-bottom: 20px; }
    .delivery-console { width: min(100%, 700px); }
    .delivery-grid { grid-template-columns: repeat(2, 1fr); }
    .careers-banner-grid { grid-template-columns: 1fr 0.8fr; }
    .careers-banner-grid .button { grid-column: 1 / -1; justify-self: start; }
}

@media (max-width: 780px) {
    :root { --header: 70px; }
    .container { width: min(calc(100% - 32px), var(--container)); }
    .site-header { backdrop-filter: none; }
    .brand-copy small { display: none; }
    .menu-button { display: block; }
    .menu-button[aria-expanded='true'] span:first-child { transform: translateY(3.5px) rotate(45deg); }
    .menu-button[aria-expanded='true'] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
    .nav-panel { position: fixed; top: var(--header); right: 0; bottom: 0; left: 0; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 32px; padding: 32px 24px; border-top: 1px solid var(--line); background: #0b0d10; transform: translateX(102%); transition: transform 220ms ease; }
    .nav-panel.open { transform: translateX(0); }
    .main-nav { flex-direction: column; align-items: stretch; }
    .main-nav a { padding: 13px 0; border-bottom: 1px solid var(--line); font-size: 18px; }
    .main-nav a::after { display: none; }
    .nav-actions { justify-content: space-between; }
    .nav-actions .button { display: inline-flex; }
    .language-menu { right: auto; left: 0; }
    .hero { padding-top: calc(var(--header) + 64px); }
    .hero h1 { font-size: clamp(45px, 13vw, 72px); }
    .hero-actions { align-items: flex-start; flex-direction: column; gap: 14px; }
    .hero-facts span + span::before { display: none; }
    .delivery-console { min-height: 470px; }
    .console-body { grid-template-columns: 1fr; padding: 35px 25px; }
    .console-core { width: 150px; margin: 0 auto; }
    .delivery-console::after, .delivery-console::before { display: none; }
    .capability-strip > div { width: 100%; padding-inline: 16px; justify-content: flex-start; overflow-x: auto; }
    .section { padding: 90px 0; }
    .section-grid, .spectrum-grid, .contact-grid { grid-template-columns: 1fr; gap: 60px; }
    .proof-link { grid-template-columns: 1fr; gap: 10px; }
    .section-heading h2, .section-intro h2, .contact-copy h2, .careers-banner h2 { font-size: clamp(36px, 10vw, 54px); }
    .capabilities-grid, .news-grid, .news-grid-full { grid-template-columns: 1fr; }
    .capability-card { min-height: 330px; }
    .delivery-grid { grid-template-columns: 1fr; }
    .delivery-step { min-height: 230px; }
    .delivery-step > span { margin-bottom: 45px; }
    .spectrum-list { grid-template-columns: 1fr; }
    .engagement-row { grid-template-columns: 45px 1fr; gap: 16px; }
    .engagement-row p { grid-column: 2; }
    .careers-banner-grid { grid-template-columns: 1fr; gap: 28px; }
    .careers-banner-grid .button { grid-column: auto; }
    .contact-card { min-height: 350px; }
    .footer-grid { grid-template-columns: 1fr; gap: 35px; }
    .page-hero { min-height: 520px; padding-bottom: 64px; }
    .page-hero-grid { grid-template-columns: 1fr; }
    .page-code { justify-self: start; }
    .role-row { grid-template-columns: 1fr; gap: 24px; }
    .empty-state { grid-template-columns: 1fr; gap: 25px; padding: 30px; }
}

@media (max-width: 460px) {
    .brand-mark { width: 40px; height: 40px; }
    .brand-copy strong { font-size: 11px; }
    .nav-actions { align-items: flex-start; flex-direction: column; }
    .hero { padding-bottom: 112px; }
    .hero h1 { font-size: 43px; }
    .hero-lead { font-size: 15px; }
    .delivery-console { min-height: 440px; }
    .console-body { padding-inline: 19px; }
    .console-footer { align-items: flex-start; flex-direction: column; }
    .section { padding: 76px 0; }
    .section-intro { margin-bottom: 45px; }
    .capability-card { min-height: 310px; padding: 25px; }
    .card-top { margin-bottom: 45px; }
    .news-card { min-height: 300px; padding: 25px; }
    .engagement-row { grid-template-columns: 34px 1fr; padding-inline: 0; }
    .contact-section { padding: 95px 0; }
    .contact-card { padding: 25px; }
    .page-hero h1 { font-size: 55px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
    .js .reveal { opacity: 1; transform: none; }
}
