:root {
    --paper: #f4f1ea;
    --paper-2: #ebe7df;
    --ink: #11110f;
    --ink-2: #21211d;
    --muted: #6c6a63;
    --line: rgba(17,17,15,.18);
    --acid: #d9ff43;
    --acid-2: #c8ef35;
    --white: #fffef9;
    --max: 1440px;
    --pad: clamp(22px, 4vw, 66px);
    --display: "Roboto", Arial, sans-serif;
    --body: "Roboto", Arial, sans-serif;
    --mono: "Roboto", Arial, sans-serif;
}

* { box-sizing: border-box; }

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

body {
    margin: 0;
    background: var(--paper);
    color: var(--ink);
    font-family: var(--body);
    -webkit-font-smoothing: antialiased;
}

body.menu-open { overflow: hidden; }

a { color: inherit; text-decoration: none; }

button, input, textarea { font: inherit; }

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

.page-shell {
    width: min(100%, 1920px);
    margin: 0 auto;
    min-height: 100vh;
    overflow: clip;
    background: var(--paper);
}

.site-header {
    position: fixed;
    z-index: 100;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(100%, 1920px);
    height: 88px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 0 var(--pad);
    border-bottom: 1px solid transparent;
    transition: transform .35s ease, background .25s ease, border-color .25s ease;
}

.site-header.scrolled {
    background: rgba(244,241,234,.92);
    backdrop-filter: blur(18px);
    border-color: var(--line);
}

.site-header.header-hidden {
    transform: translate(-50%, -100%);
}

.brand {
    justify-self: start;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-family: var(--display);
    font-weight: 600;
    font-size: 22px;
    letter-spacing: -.04em;
}

.brand-mark {
    width: 28px;
    height: 28px;
    position: relative;
    display: inline-block;
}

.brand-mark span {
    position: absolute;
    display: block;
    background: var(--ink);
    border-radius: 99px;
}

.brand-mark span:nth-child(1) { width: 7px; height: 28px; left: 2px; top: 0; }
.brand-mark span:nth-child(2) { width: 7px; height: 20px; left: 11px; bottom: 0; }
.brand-mark span:nth-child(3) { width: 7px; height: 12px; left: 20px; bottom: 0; background: var(--acid-2); }

.desktop-nav {
    display: flex;
    align-items: center;
    gap: 34px;
    font-size: 14px;
    font-weight: 600;
}

.desktop-nav a {
    position: relative;
}

.desktop-nav a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -7px;
    width: 100%;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: right;
    transition: transform .25s ease;
}

.desktop-nav a:hover::after {
    transform: scaleX(1);
    transform-origin: left;
}

.header-actions {
    justify-self: end;
    display: flex;
    align-items: center;
}

.header-cta {
    display: inline-flex;
    gap: 12px;
    align-items: center;
    border: 1px solid var(--ink);
    border-radius: 999px;
    padding: 12px 18px;
    font-size: 13px;
    font-weight: 700;
    transition: background .2s ease, color .2s ease;
}

.header-cta:hover { background: var(--ink); color: var(--paper); }

.menu-button {
    display: none;
    width: 48px;
    height: 48px;
    border: 0;
    background: transparent;
    position: relative;
    cursor: pointer;
}

.menu-button span {
    position: absolute;
    width: 24px;
    height: 1.5px;
    background: var(--ink);
    left: 12px;
    transition: transform .25s ease, top .25s ease;
}

.menu-button span:first-child { top: 20px; }
.menu-button span:last-child { top: 27px; }

.menu-open .menu-button span:first-child { top: 24px; transform: rotate(45deg); }
.menu-open .menu-button span:last-child { top: 24px; transform: rotate(-45deg); }

.mobile-menu {
    display: none;
}

main { padding-top: 88px; }

.section-pad {
    padding-left: var(--pad);
    padding-right: var(--pad);
}

.section-rule {
    border-top: 1px solid var(--line);
}

.eyebrow {
    font-family: var(--mono);
    font-size: 11px;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.eyebrow.light { color: rgba(255,255,255,.63); }

.display-xl,
.display-lg,
.display-md {
    margin: 0;
    font-family: var(--display);
    font-weight: 500;
    letter-spacing: -.045em;
    line-height: .92;
}

.display-xl { font-size: clamp(72px, 11.5vw, 188px); }
.display-lg { font-size: clamp(54px, 7.7vw, 118px); }
.display-md { font-size: clamp(46px, 6vw, 88px); }

.soft { color: #77746c; }
.light { color: var(--white); }
.muted-light { color: rgba(255,255,255,.38); }

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    min-height: 52px;
    padding: 0 22px;
    border: 1px solid currentColor;
    border-radius: 999px;
    font-weight: 700;
    font-size: 14px;
    cursor: pointer;
    transition: transform .2s ease, background .2s ease, color .2s ease;
}

.button span { font-size: 18px; }
.button:hover { transform: translateY(-2px); }

.button-dark {
    background: var(--ink);
    color: var(--paper);
    border-color: var(--ink);
}

.button-dark:hover {
    background: var(--acid);
    color: var(--ink);
    border-color: var(--acid);
}

.button-light {
    background: var(--white);
    color: var(--ink);
    border-color: var(--white);
}

.button-light:hover {
    background: var(--acid);
    border-color: var(--acid);
}

.text-link {
    display: inline-flex;
    gap: 14px;
    align-items: center;
    font-size: 14px;
    font-weight: 700;
    padding-bottom: 4px;
    border-bottom: 1px solid currentColor;
}

.section-number {
    font-family: var(--mono);
    font-size: 11px;
    color: var(--muted);
}

/* HOME HERO */
.hero {
    min-height: calc(100vh - 88px);
    min-height: 780px;
    padding-top: clamp(54px, 7vw, 100px);
    padding-bottom: 70px;
    display: flex;
    flex-direction: column;
}

.hero-grid {
    flex: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.34fr) minmax(340px, .66fr);
    align-items: center;
    gap: 30px;
}

.hero-copy {
    padding-top: 40px;
}

.hero-intro {
    max-width: 680px;
    margin: 42px 0 0;
    font-size: clamp(18px, 1.7vw, 25px);
    line-height: 1.52;
    letter-spacing: -.025em;
    color: var(--ink-2);
}

.hero-actions {
    margin-top: 34px;
    display: flex;
    align-items: center;
    gap: 32px;
}

.hero-orbit {
    justify-self: end;
    width: min(100%, 580px);
    aspect-ratio: 1;
    position: relative;
}

.orbit {
    position: absolute;
    border: 1px solid rgba(17,17,15,.2);
    border-radius: 50%;
    inset: 0;
}

.orbit-a { inset: 8%; }
.orbit-b { inset: 22%; }
.orbit-c { inset: 36%; }

.orbit-a::before,
.orbit-b::before,
.orbit-c::before {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ink);
}

.orbit-a::before { top: 19%; left: 10%; }
.orbit-b::before { right: 8%; top: 45%; background: var(--acid-2); }
.orbit-c::before { left: 44%; bottom: -4px; }

.orbit-core {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 26%;
    aspect-ratio: 1;
    min-width: 140px;
    min-height: 140px;
    border-radius: 50%;
    background: var(--ink);
    color: var(--white);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 20px 60px rgba(0,0,0,.16);
    text-align: center;
    padding: 12px;
}

.orbit-core strong {
    font-family: var(--display);
    font-size: 22px;
    letter-spacing: .08em;
}

.orbit-core small {
    margin-top: 6px;
    font-family: var(--mono);
    font-size: 7px;
    letter-spacing: .1em;
    opacity: .55;
}

.pulse-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--acid);
    margin-bottom: 11px;
    box-shadow: 0 0 0 0 rgba(217,255,67,.5);
    animation: pulse 2.4s infinite;
}

@keyframes pulse {
    0% { box-shadow: 0 0 0 0 rgba(217,255,67,.5); }
    70% { box-shadow: 0 0 0 13px rgba(217,255,67,0); }
    100% { box-shadow: 0 0 0 0 rgba(217,255,67,0); }
}

.orbit-chip {
    position: absolute;
    padding: 9px 13px;
    background: var(--white);
    border: 1px solid rgba(17,17,15,.15);
    box-shadow: 0 8px 28px rgba(0,0,0,.06);
    border-radius: 999px;
    font-family: var(--mono);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.chip-1 { left: 1%; top: 28%; }
.chip-2 { right: 5%; top: 18%; }
.chip-3 { right: -1%; top: 57%; }
.chip-4 { left: 12%; bottom: 14%; }
.chip-5 { left: 42%; top: 2%; }
.chip-6 { right: 25%; bottom: 1%; }

/* STATEMENT */
.statement {
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap: 40px;
    padding-top: 110px;
    padding-bottom: 125px;
}

.statement-copy {
    max-width: 1260px;
}

.kicker {
    margin: 0 0 26px;
    font-family: var(--mono);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .1em;
}

/* PRODUCT MOCK */
.product-stage {
    padding-top: 30px;
    padding-bottom: 130px;
}

.product-stage-head,
.use-cases-head {
    display: grid;
    grid-template-columns: 1.3fr .7fr;
    align-items: end;
    gap: 90px;
    margin-bottom: 58px;
}

.section-lede {
    margin: 0;
    max-width: 570px;
    justify-self: end;
    font-size: 18px;
    line-height: 1.65;
    color: #4e4d47;
}

.argus-console {
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid rgba(17,17,15,.22);
    background: #e9e8e2;
    box-shadow: 0 35px 80px rgba(17,17,15,.12);
}

.console-topbar {
    height: 68px;
    background: #121310;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 23px;
}

.console-brand,
.console-meta {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: 12px;
}

.console-brand { font-weight: 700; }

.mini-mark {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 7px;
    background: var(--acid);
    color: var(--ink);
    font-family: var(--display);
    font-weight: 700;
}

.console-meta { color: rgba(255,255,255,.6); }

.status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--acid);
}

.console-layout {
    min-height: 650px;
    display: grid;
    grid-template-columns: 210px 1fr;
}

.console-sidebar {
    border-right: 1px solid rgba(17,17,15,.12);
    padding: 28px 18px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.side-label {
    font-family: var(--mono);
    font-size: 9px;
    text-transform: uppercase;
    color: #87857e;
    margin: 6px 10px 9px;
}

.side-label.second { margin-top: 28px; }

.console-sidebar a {
    padding: 10px 11px;
    border-radius: 7px;
    font-size: 12px;
    color: #4e4d47;
    display: flex;
    justify-content: space-between;
}

.console-sidebar a.active {
    background: #dcdad3;
    color: var(--ink);
    font-weight: 700;
}

.console-sidebar a b {
    width: 20px;
    height: 20px;
    border-radius: 999px;
    display: grid;
    place-items: center;
    background: var(--ink);
    color: var(--acid);
    font-size: 9px;
}

.console-main {
    padding: 42px;
}

.console-greeting span {
    font-size: 12px;
    color: #76746e;
}

.console-greeting h3 {
    margin: 4px 0 28px;
    font-family: var(--display);
    font-size: 31px;
    letter-spacing: -.045em;
}

.insight-card {
    background: #f8f7f2;
    border: 1px solid rgba(17,17,15,.13);
    border-radius: 15px;
    padding: 24px;
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 17px;
}

.insight-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: grid;
    place-items: center;
    background: #171815;
    color: var(--acid);
    font-size: 20px;
}

.insight-label {
    font-family: var(--mono);
    font-size: 9px;
    color: #7a786f;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.insight-copy h4 {
    margin: 9px 0 8px;
    max-width: 840px;
    font-family: var(--display);
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -.035em;
}

.insight-copy p {
    max-width: 880px;
    margin: 0;
    color: #63615a;
    font-size: 13px;
    line-height: 1.65;
}

.insight-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 23px;
    padding-top: 17px;
    border-top: 1px solid rgba(17,17,15,.1);
    font-family: var(--mono);
    font-size: 9px;
    color: #8a877f;
}

.insight-footer button {
    border: 0;
    background: transparent;
    font-weight: 700;
    color: var(--ink);
    cursor: pointer;
    font-size: 11px;
}

.console-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 13px;
    margin: 13px 0;
}

.metric-card {
    background: #f8f7f2;
    border: 1px solid rgba(17,17,15,.13);
    border-radius: 13px;
    padding: 20px;
}

.metric-card span {
    display: block;
    font-size: 10px;
    color: #75736c;
    margin-bottom: 18px;
}

.metric-card strong {
    display: block;
    font-family: var(--display);
    font-size: 27px;
    letter-spacing: -.045em;
}

.metric-card small {
    display: block;
    margin-top: 8px;
    font-size: 9px;
    color: #85837b;
}

.metric-card small.positive { color: #426f3a; }
.metric-card small.negative { color: #9a5147; }

.ask-card {
    background: var(--ink);
    color: var(--white);
    border-radius: 13px;
    padding: 21px 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ask-label {
    font-family: var(--mono);
    color: rgba(255,255,255,.44);
    font-size: 8px;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.ask-card p {
    margin: 9px 0 0;
    font-size: 13px;
}

.ask-card button {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 0;
    background: var(--acid);
    color: var(--ink);
    font-size: 18px;
    cursor: pointer;
}

/* CAPABILITIES */
.capabilities {
    padding-top: 100px;
    padding-bottom: 125px;
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap: 40px;
}

.capability-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    border-top: 1px solid var(--ink);
}

.capability-card {
    min-height: 330px;
    padding: 30px 34px 34px 0;
    border-bottom: 1px solid var(--line);
}

.capability-card:nth-child(odd) {
    padding-right: 55px;
    border-right: 1px solid var(--line);
}

.capability-card:nth-child(even) { padding-left: 55px; }

.capability-index {
    font-family: var(--mono);
    font-size: 10px;
    color: var(--muted);
}

.capability-card h3 {
    font-family: var(--display);
    font-size: clamp(34px, 3.2vw, 52px);
    letter-spacing: -.05em;
    font-weight: 500;
    margin: 82px 0 18px;
}

.capability-card p {
    max-width: 520px;
    color: #5e5c55;
    line-height: 1.7;
    font-size: 15px;
}

/* SIGNAL */
.signal {
    padding-top: 0;
    padding-bottom: 0;
}

.signal-inner {
    background: #141512;
    color: var(--white);
    border-radius: 24px;
    padding: clamp(40px, 7vw, 100px);
}

.signal-inner h2 { margin-top: 35px; }

.signal-flow {
    margin-top: 90px;
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
    align-items: center;
    gap: 18px;
}

.signal-flow > div {
    min-height: 150px;
    padding: 20px;
    border-top: 1px solid rgba(255,255,255,.28);
}

.signal-flow > div span {
    font-family: var(--mono);
    font-size: 9px;
    color: rgba(255,255,255,.42);
}

.signal-flow > div strong {
    display: block;
    margin: 45px 0 6px;
    font-family: var(--display);
    font-size: 21px;
    font-weight: 500;
}

.signal-flow > div small { color: rgba(255,255,255,.46); }
.signal-flow > i { color: var(--acid); font-style: normal; }

/* QUESTIONS */
.questions {
    padding-top: 130px;
    padding-bottom: 130px;
}

.questions-head {
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap: 40px;
    margin-bottom: 80px;
}

.question-list { margin-left: 20%; }

.question-row {
    min-height: 135px;
    border-top: 1px solid var(--line);
    display: grid;
    grid-template-columns: 70px 1fr 40px;
    align-items: center;
    gap: 20px;
}

.question-row:last-child { border-bottom: 1px solid var(--line); }

.question-row span {
    font-family: var(--mono);
    font-size: 10px;
    color: var(--muted);
}

.question-row p {
    font-family: var(--display);
    font-size: clamp(24px, 3vw, 42px);
    letter-spacing: -.045em;
    margin: 0;
}

.question-row i {
    font-size: 25px;
    font-style: normal;
    opacity: .3;
    transition: opacity .2s ease, transform .2s ease;
}

.question-row:hover i { opacity: 1; transform: translate(4px,-4px); }

/* PRINCIPLES */
.principles {
    padding-top: 115px;
    padding-bottom: 120px;
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: 100px;
    align-items: end;
}

.principles-copy h2 { margin-top: 30px; }

.principle-note {
    padding-bottom: 12px;
    max-width: 320px;
}

.principle-note p {
    font-size: 17px;
    line-height: 1.6;
    margin: 0 0 28px;
}

/* CTA */
.cta-panel {
    padding-top: 0;
    padding-bottom: var(--pad);
}

.cta-inner {
    min-height: 560px;
    padding: clamp(40px, 7vw, 100px);
    background: #11120f;
    border-radius: 24px;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 70px;
    align-items: end;
}

.cta-inner h2 { margin-top: 30px; }

.cta-side {
    max-width: 390px;
    justify-self: end;
    color: var(--white);
}

.cta-side p {
    margin: 0 0 30px;
    font-size: 17px;
    line-height: 1.6;
    color: rgba(255,255,255,.62);
}

/* INNER PAGES */
.inner-hero {
    padding-top: clamp(70px, 8vw, 120px);
    padding-bottom: 120px;
}

.inner-hero-grid {
    margin-top: 50px;
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 80px;
    align-items: end;
}

.inner-hero-copy {
    max-width: 560px;
    padding-bottom: 18px;
}

.inner-hero-copy p {
    margin: 0 0 33px;
    font-size: clamp(18px, 1.8vw, 25px);
    line-height: 1.55;
    letter-spacing: -.02em;
}

.marquee-strip {
    overflow: hidden;
    border-top: 1px solid var(--ink);
    border-bottom: 1px solid var(--ink);
    background: var(--acid);
    padding: 18px 0;
}

.marquee-track {
    width: max-content;
    display: flex;
    gap: 34px;
    align-items: center;
    font-family: var(--display);
    font-size: 17px;
    font-weight: 600;
    letter-spacing: .02em;
    animation: marquee 24s linear infinite;
}

.marquee-track i { font-style: normal; font-size: 11px; }

@keyframes marquee {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

.argus-explainer {
    padding-top: 120px;
    padding-bottom: 90px;
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap: 40px;
}

.argus-explainer h2 { margin: 28px 0 42px; }

.large-copy {
    max-width: 840px;
    font-size: clamp(19px, 2vw, 28px);
    line-height: 1.55;
    letter-spacing: -.025em;
    color: #4f4d47;
}

.architecture { padding-bottom: 130px; }

.architecture-shell {
    background: #151613;
    color: var(--white);
    border-radius: 23px;
    padding: 28px;
    overflow: hidden;
}

.arch-label {
    font-family: var(--mono);
    font-size: 9px;
    letter-spacing: .1em;
    color: rgba(255,255,255,.42);
    margin-bottom: 30px;
}

.arch-stage {
    min-height: 390px;
    display: grid;
    grid-template-columns: 1fr 70px 1.3fr 70px 1.3fr 70px 1.3fr 70px 1.2fr;
    align-items: center;
}

.arch-node {
    min-height: 215px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 14px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.arch-node > span {
    position: absolute;
    top: 16px;
    left: 18px;
    font-family: var(--mono);
    font-size: 7px;
    letter-spacing: .07em;
    color: rgba(255,255,255,.42);
}

.arch-node strong {
    font-family: var(--display);
    font-size: 22px;
    letter-spacing: -.035em;
    font-weight: 500;
}

.arch-node small {
    margin-top: 10px;
    color: rgba(255,255,255,.44);
    line-height: 1.5;
}

.arch-node.source {
    gap: 5px;
    justify-content: center;
}

.arch-node.source b {
    font-family: var(--mono);
    font-size: 10px;
    font-weight: 400;
    color: rgba(255,255,255,.7);
    border-bottom: 1px solid rgba(255,255,255,.08);
    padding: 6px 0;
}

.arch-node.primary {
    background: var(--acid);
    color: var(--ink);
    border-color: var(--acid);
}

.arch-node.primary > span,
.arch-node.primary small { color: rgba(17,17,15,.55); }

.arch-node.output { background: #252621; }

.arch-line {
    height: 1px;
    background: rgba(255,255,255,.15);
    position: relative;
}

.arch-line span {
    position: absolute;
    right: -1px;
    top: -3px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--acid);
}

.split-features {
    padding-top: 100px;
    padding-bottom: 120px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.feature-block {
    min-height: 390px;
    border-bottom: 1px solid var(--line);
    padding: 30px 50px 50px 0;
}

.feature-block:nth-child(odd) { border-right: 1px solid var(--line); }
.feature-block:nth-child(even) { padding-left: 50px; }

.feature-num {
    font-family: var(--mono);
    font-size: 10px;
    color: var(--muted);
}

.feature-block h3 {
    font-family: var(--display);
    font-size: clamp(38px, 4vw, 62px);
    letter-spacing: -.055em;
    font-weight: 500;
    margin: 135px 0 18px;
}

.feature-block p {
    max-width: 580px;
    margin: 0;
    font-size: 16px;
    line-height: 1.7;
    color: #5e5c55;
}

.use-cases {
    padding-top: 120px;
    padding-bottom: 130px;
}

.use-case-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    border-top: 1px solid var(--ink);
    border-left: 1px solid var(--line);
}

.use-case {
    min-height: 265px;
    padding: 26px;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.use-case span {
    font-family: var(--mono);
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.use-case p {
    margin: 0;
    font-family: var(--display);
    font-size: 26px;
    line-height: 1.2;
    letter-spacing: -.035em;
}

.use-case.dark {
    background: var(--ink);
    color: var(--white);
}

.security-panel {
    padding-top: 110px;
    padding-bottom: 120px;
    display: grid;
    grid-template-columns: .5fr 2fr 1.5fr;
    gap: 50px;
}

.security-copy h2 { margin-top: 28px; }

.security-list { border-top: 1px solid var(--ink); }

.security-item {
    padding: 24px 0 28px;
    display: grid;
    grid-template-columns: 38px 1fr;
    column-gap: 15px;
    border-bottom: 1px solid var(--line);
}

.security-item span {
    grid-row: 1 / span 2;
    font-family: var(--mono);
    font-size: 9px;
    color: var(--muted);
    padding-top: 4px;
}

.security-item strong {
    font-family: var(--display);
    font-size: 22px;
    font-weight: 500;
    letter-spacing: -.03em;
}

.security-item p {
    margin: 8px 0 0;
    color: #68665f;
    line-height: 1.6;
    font-size: 14px;
}

/* COMPANY */
.company-manifesto {
    padding-top: 115px;
    padding-bottom: 120px;
    display: grid;
    grid-template-columns: 1fr 4fr;
}

.manifesto-lines p {
    margin: 0;
    padding: 24px 0;
    border-bottom: 1px solid var(--line);
    font-family: var(--display);
    font-size: clamp(42px, 6vw, 90px);
    line-height: 1;
    letter-spacing: -.06em;
}

.manifesto-lines .accent-line {
    color: #66645e;
}

.company-story {
    padding-top: 125px;
    padding-bottom: 125px;
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 50px;
}

.story-copy h2 { max-width: 970px; margin-bottom: 60px; }
.story-copy .large-copy + .large-copy { margin-top: 30px; }

.values {
    padding-top: 110px;
    padding-bottom: 120px;
    display: grid;
    grid-template-columns: 1fr 4fr;
}

.value-list { border-top: 1px solid var(--ink); }

.value-row {
    padding: 32px 0;
    border-bottom: 1px solid var(--line);
    display: grid;
    grid-template-columns: 60px 1.2fr 1fr;
    gap: 30px;
    align-items: start;
}

.value-row > span {
    font-family: var(--mono);
    font-size: 10px;
    color: var(--muted);
    margin-top: 9px;
}

.value-row h3 {
    margin: 0;
    font-family: var(--display);
    font-weight: 500;
    font-size: 35px;
    letter-spacing: -.045em;
}

.value-row p {
    margin: 6px 0 0;
    color: #65635c;
    line-height: 1.65;
}

.location-banner {
    margin: 0 var(--pad) var(--pad);
    padding: clamp(45px, 7vw, 95px);
    min-height: 560px;
    border-radius: 24px;
    background: #161713;
    display: grid;
    grid-template-columns: 1fr 430px;
    align-items: center;
    gap: 80px;
}

.location-copy h2 { margin-top: 28px; }

.globe-mark {
    width: min(100%, 430px);
    aspect-ratio: 1;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 50%;
    position: relative;
    display: grid;
    place-items: center;
    color: var(--white);
    overflow: hidden;
}

.globe-mark > span {
    width: 96px;
    height: 96px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--acid);
    color: var(--ink);
    font-family: var(--display);
    font-size: 28px;
    font-weight: 600;
    z-index: 2;
}

.globe-line {
    position: absolute;
    border: 1px solid rgba(255,255,255,.16);
}

.globe-line.horizontal {
    width: 110%;
    height: 45%;
    border-radius: 50%;
}

.globe-line.horizontal.one { top: 7%; }
.globe-line.horizontal.two { bottom: 7%; }

.globe-line.vertical {
    height: 110%;
    width: 45%;
    top: -5%;
    border-radius: 50%;
}

.globe-line.vertical.one { left: 5%; }
.globe-line.vertical.two { right: 5%; }

/* CONTACT */
.contact-hero {
    padding-top: clamp(70px, 8vw, 120px);
    padding-bottom: 130px;
}

.contact-grid {
    display: grid;
    grid-template-columns: 1fr .85fr;
    gap: 90px;
    align-items: start;
    margin-top: 48px;
}

.contact-direct {
    margin-top: 55px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.contact-direct span {
    font-family: var(--mono);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: var(--muted);
}

.contact-direct a {
    font-size: 18px;
    border-bottom: 1px solid var(--ink);
}

.form-shell {
    border-top: 1px solid var(--ink);
    padding-top: 32px;
}

.form-row.two {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
}

.form-shell label {
    display: block;
    margin-bottom: 24px;
}

.form-shell label > span {
    display: block;
    margin-bottom: 10px;
    font-family: var(--mono);
    font-size: 9px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--muted);
}

.form-shell input,
.form-shell textarea {
    width: 100%;
    border: 0;
    border-bottom: 1px solid rgba(17,17,15,.3);
    background: transparent;
    padding: 14px 0;
    color: var(--ink);
    outline: none;
    border-radius: 0;
    transition: border-color .2s ease;
}

.form-shell textarea {
    resize: vertical;
    min-height: 140px;
}

.form-shell input:focus,
.form-shell textarea:focus { border-color: var(--ink); }

.form-shell input::placeholder,
.form-shell textarea::placeholder { color: #aaa79f; }

.submit-button {
    border: 0;
    margin-top: 12px;
}

.form-note {
    max-width: 520px;
    font-size: 11px;
    line-height: 1.55;
    color: #85827a;
    margin-top: 18px;
}

.form-error {
    padding: 15px 18px;
    margin-bottom: 26px;
    border: 1px solid #a65b4f;
    color: #7b4037;
    font-size: 13px;
}

.form-success {
    min-height: 460px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.form-success > span {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    background: var(--acid);
    border-radius: 50%;
    margin-bottom: 25px;
}

.form-success h2 {
    font-family: var(--display);
    font-size: 48px;
    letter-spacing: -.05em;
    font-weight: 500;
    margin: 0;
}

.form-success p {
    max-width: 480px;
    line-height: 1.6;
    color: var(--muted);
    margin: 18px 0 30px;
}

.hp-field {
    position: absolute !important;
    left: -10000px !important;
}

/* LEGAL */
.legal-hero {
    padding-top: 90px;
    padding-bottom: 90px;
}

.legal-hero h1 { margin-top: 35px; }

.legal-content {
    padding-top: 70px;
    padding-bottom: 120px;
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 60px;
}

.legal-content aside {
    font-family: var(--mono);
    font-size: 10px;
    color: var(--muted);
}

.legal-content article { max-width: 800px; }

.legal-content h2 {
    margin: 0 0 38px;
    font-family: var(--display);
    font-size: 45px;
    font-weight: 500;
    letter-spacing: -.045em;
}

.legal-content h3 {
    margin: 42px 0 12px;
    font-family: var(--display);
    font-size: 24px;
    font-weight: 500;
    letter-spacing: -.03em;
}

.legal-content p {
    line-height: 1.8;
    color: #595750;
}

.legal-content a { border-bottom: 1px solid currentColor; }

/* FOOTER */
.site-footer {
    padding: 90px var(--pad) 28px;
}

.footer-top {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 100px;
    padding-bottom: 75px;
}

.footer-brand { font-size: 32px; }

.footer-top > div:first-child > p {
    max-width: 360px;
    margin: 28px 0 0;
    color: #69675f;
    line-height: 1.6;
}

.footer-links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.footer-links > div {
    display: flex;
    flex-direction: column;
    gap: 12px;
    font-size: 13px;
}

.footer-label {
    font-family: var(--mono);
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #939088;
    margin-bottom: 8px;
}

.footer-links a:hover { text-decoration: underline; }

.footer-bottom {
    padding-top: 22px;
    border-top: 1px solid var(--line);
    display: flex;
    justify-content: space-between;
    font-family: var(--mono);
    font-size: 9px;
    color: #7d7a72;
    text-transform: uppercase;
    letter-spacing: .05em;
}

/* REVEAL */
.reveal {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity .7s cubic-bezier(.2,.7,.2,1) var(--delay, 0ms),
                transform .7s cubic-bezier(.2,.7,.2,1) var(--delay, 0ms);
}

.reveal.is-visible {
    opacity: 1;
    transform: translateY(0);
}

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

/* TABLET */
@media (max-width: 1100px) {
    .desktop-nav { display: none; }
    .header-cta { display: none; }
    .menu-button { display: block; }

    .mobile-menu {
        position: fixed;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        top: 88px;
        left: 0;
        width: 100%;
        height: calc(100vh - 88px);
        padding: 40px var(--pad);
        background: var(--paper);
        transform: translateX(100%);
        transition: transform .35s cubic-bezier(.7,0,.2,1);
        border-top: 1px solid var(--line);
    }

    .menu-open .mobile-menu { transform: translateX(0); }

    .mobile-menu nav {
        display: flex;
        flex-direction: column;
    }

    .mobile-menu nav a {
        font-family: var(--display);
        font-size: clamp(42px, 8vw, 80px);
        letter-spacing: -.055em;
        line-height: 1.2;
        border-bottom: 1px solid var(--line);
        padding: 10px 0;
    }

    .mobile-menu p {
        max-width: 430px;
        color: var(--muted);
    }

    .hero-grid { grid-template-columns: 1fr; }
    .hero-orbit { width: min(70vw, 600px); justify-self: center; margin-top: 60px; }

    .product-stage-head,
    .use-cases-head,
    .inner-hero-grid,
    .principles,
    .contact-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .section-lede { justify-self: start; }

    .console-layout { grid-template-columns: 170px 1fr; }
    .console-main { padding: 28px; }

    .signal-flow {
        grid-template-columns: 1fr 1fr;
    }
    .signal-flow > i { display: none; }

    .arch-stage {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    .arch-line {
        width: 1px;
        height: 36px;
        justify-self: center;
    }
    .arch-line span { right: -3px; top: auto; bottom: -1px; }
    .arch-node { min-height: 160px; }

    .security-panel {
        grid-template-columns: .4fr 1.6fr;
    }
    .security-list {
        grid-column: 2;
    }

    .location-banner {
        grid-template-columns: 1fr 330px;
    }

    .contact-grid { grid-template-columns: 1fr 1fr; }

    .footer-top {
        grid-template-columns: 1fr;
        gap: 55px;
    }
}

/* MOBILE */
@media (max-width: 760px) {
    :root { --pad: 20px; }

    .site-header { height: 72px; grid-template-columns: 1fr auto; }
    main { padding-top: 72px; }
    .mobile-menu { top: 72px; height: calc(100vh - 72px); }
    .brand { font-size: 19px; }
    .brand-mark { transform: scale(.86); transform-origin: left center; }

    .display-xl { font-size: clamp(58px, 18vw, 98px); }
    .display-lg { font-size: clamp(48px, 14vw, 78px); }
    .display-md { font-size: clamp(43px, 12vw, 68px); }

    .hero { min-height: auto; padding-top: 52px; padding-bottom: 75px; }
    .hero-copy { padding-top: 28px; }
    .hero-intro { margin-top: 28px; font-size: 18px; }
    .hero-actions { align-items: flex-start; flex-direction: column; gap: 22px; }
    .hero-orbit { width: 92vw; max-width: 520px; margin-top: 52px; }

    .orbit-chip { font-size: 7px; padding: 7px 9px; }
    .orbit-core { min-width: 110px; min-height: 110px; }
    .orbit-core strong { font-size: 18px; }

    .statement,
    .capabilities,
    .questions-head,
    .argus-explainer,
    .company-manifesto,
    .company-story,
    .values,
    .legal-content {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .statement { padding-top: 75px; padding-bottom: 85px; }
    .product-stage { padding-bottom: 85px; }

    .argus-console {
        margin-left: -10px;
        margin-right: -10px;
        border-radius: 14px;
        overflow-x: auto;
    }

    .console-topbar,
    .console-layout { min-width: 760px; }

    .capabilities { padding-top: 75px; padding-bottom: 85px; }
    .capability-grid { grid-template-columns: 1fr; }
    .capability-card,
    .capability-card:nth-child(odd),
    .capability-card:nth-child(even) {
        min-height: 260px;
        padding: 28px 0;
        border-right: 0;
    }
    .capability-card h3 { margin-top: 65px; }

    .signal { padding-left: 0; padding-right: 0; }
    .signal-inner { border-radius: 0; padding: 60px 20px; }
    .signal-flow { grid-template-columns: 1fr; margin-top: 60px; }

    .questions { padding-top: 90px; padding-bottom: 90px; }
    .questions-head { margin-bottom: 50px; }
    .question-list { margin-left: 0; }
    .question-row {
        min-height: 120px;
        grid-template-columns: 32px 1fr 25px;
        gap: 10px;
    }

    .principles { padding-top: 80px; padding-bottom: 85px; gap: 45px; }

    .cta-panel { padding-left: 0; padding-right: 0; padding-bottom: 0; }
    .cta-inner {
        min-height: 600px;
        border-radius: 0;
        grid-template-columns: 1fr;
        padding: 60px 20px;
        align-content: space-between;
    }
    .cta-side { justify-self: start; }

    .inner-hero { padding-top: 60px; padding-bottom: 80px; }
    .inner-hero-grid { margin-top: 38px; }
    .inner-hero-copy { padding-bottom: 0; }

    .argus-explainer { padding-top: 80px; padding-bottom: 65px; }
    .architecture { padding-left: 0; padding-right: 0; padding-bottom: 90px; }
    .architecture-shell { border-radius: 0; padding: 22px 18px; }

    .split-features {
        grid-template-columns: 1fr;
        padding-top: 75px;
        padding-bottom: 90px;
    }
    .feature-block,
    .feature-block:nth-child(odd),
    .feature-block:nth-child(even) {
        min-height: 320px;
        padding: 28px 0 35px;
        border-right: 0;
    }
    .feature-block h3 { margin-top: 95px; }

    .use-cases { padding-top: 90px; padding-bottom: 90px; }
    .use-case-grid { grid-template-columns: 1fr; }

    .security-panel {
        padding-top: 80px;
        padding-bottom: 90px;
        grid-template-columns: 1fr;
    }
    .security-list { grid-column: auto; }

    .company-manifesto { padding-top: 80px; padding-bottom: 90px; }
    .company-story { padding-top: 90px; padding-bottom: 90px; }
    .values { padding-top: 80px; padding-bottom: 90px; }

    .value-row {
        grid-template-columns: 35px 1fr;
    }
    .value-row p { grid-column: 2; }

    .location-banner {
        margin: 0 0 0;
        border-radius: 0;
        min-height: 680px;
        grid-template-columns: 1fr;
        padding: 60px 20px;
    }
    .globe-mark { width: 85vw; max-width: 360px; justify-self: center; }

    .contact-hero { padding-top: 60px; padding-bottom: 90px; }
    .contact-grid { grid-template-columns: 1fr; margin-top: 36px; }
    .form-row.two { grid-template-columns: 1fr; gap: 0; }

    .legal-hero { padding-top: 65px; padding-bottom: 65px; }
    .legal-content { padding-top: 50px; padding-bottom: 90px; }

    .site-footer { padding-top: 70px; }
    .footer-links { grid-template-columns: 1fr 1fr; row-gap: 45px; }
    .footer-bottom { flex-direction: column; gap: 8px; }
}


.values-no-number { grid-template-columns: 1fr; }
.values-no-number .value-list { width: 80%; margin-left: 20%; }

.icon-arrow { width:17px; height:17px; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.icon-arrow-down { width:16px; height:16px; }
.question-row i .icon-arrow { width:22px; height:22px; }
.trend-icon { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.flow-arrow { width:34px; height:18px; position:relative; display:block; }
.flow-arrow span { position:absolute; left:0; top:8px; width:30px; height:1px; background:var(--acid); }
.flow-arrow span::after { content:""; position:absolute; right:0; top:-4px; width:8px; height:8px; border-top:1px solid var(--acid); border-right:1px solid var(--acid); transform:rotate(45deg); }

.pricing { padding-top:115px; padding-bottom:125px; }
.pricing-head { display:grid; grid-template-columns:1.25fr .75fr; gap:80px; align-items:end; margin-bottom:58px; }
.pricing-head h2 { margin-top:28px; }
.pricing-head-side { max-width:560px; justify-self:end; }
.pricing-head-side > p { margin:0 0 28px; font-size:16px; line-height:1.65; color:#5c5a53; }
.billing-toggle { display:inline-flex; padding:4px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.28); }
.billing-toggle button { border:0; background:transparent; color:var(--ink); border-radius:999px; padding:11px 16px; cursor:pointer; font-size:13px; }
.billing-toggle button span { font-size:10px; opacity:.6; margin-left:5px; }
.billing-toggle button.active { background:var(--ink); color:var(--white); }
.pricing-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.price-card { min-height:700px; border:1px solid var(--ink); border-radius:20px; padding:34px; display:flex; flex-direction:column; }
.enterprise-card { background:var(--ink); color:var(--white); }
.price-plan { font-family:var(--mono); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.price-wrap { margin-top:46px; }
.price-monthly, .price-annual { min-height:115px; }
.price-monthly strong, .price-annual strong { display:block; font-family:var(--display); font-size:clamp(54px,6vw,86px); line-height:.95; font-weight:500; letter-spacing:-.04em; }
.price-monthly span, .price-annual span { display:block; margin-top:8px; font-size:14px; opacity:.65; }
.price-annual small { display:block; margin-top:9px; font-size:11px; opacity:.55; }
.price-card-top > p { margin:32px 0 0; font-size:18px; line-height:1.55; max-width:480px; }
.price-includes { margin-top:50px; padding-top:25px; border-top:1px solid rgba(17,17,15,.2); flex:1; }
.enterprise-card .price-includes { border-color:rgba(255,255,255,.2); }
.price-includes > span { font-family:var(--mono); font-size:9px; text-transform:uppercase; letter-spacing:.08em; opacity:.58; }
.price-includes ul { list-style:none; padding:0; margin:22px 0 0; display:grid; grid-template-columns:1fr 1fr; gap:13px 25px; }
.price-includes li { position:relative; padding-left:20px; font-size:14px; line-height:1.45; }
.price-includes li::before { content:""; position:absolute; left:0; top:.55em; width:7px; height:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); }
.enterprise-card .price-button { background:var(--white); color:var(--ink); border-color:var(--white); }
.price-button { align-self:flex-start; margin-top:35px; }
.custom-pricing { margin-top:18px; border:1px solid var(--ink); border-radius:20px; padding:42px; display:grid; grid-template-columns:1fr 1fr; gap:70px; }
.custom-pricing h3 { margin:28px 0 0; font-family:var(--display); font-size:clamp(40px,5vw,72px); font-weight:500; line-height:.98; letter-spacing:-.04em; }
.custom-pricing-copy p { margin:0 0 18px; line-height:1.65; color:#57554f; }
.custom-actions { display:flex; align-items:center; gap:28px; margin-top:30px; }
.consultation-link { display:inline-flex; align-items:center; gap:10px; margin-top:14px; font-size:14px; font-weight:600; }
.company-page .cta-inner { min-height:430px; grid-template-columns:1.35fr 1fr; gap:34px; align-items:center; }

@media (max-width:1100px) {
  .pricing-head { grid-template-columns:1fr; gap:35px; }
  .pricing-head-side { justify-self:start; }
  .custom-pricing { grid-template-columns:1fr; gap:32px; }
}
@media (max-width:760px) {
  .orbit-core { width:29%; min-width:108px; min-height:108px; padding:10px; }
  .orbit-core strong { font-size:15px; }
  .orbit-core small { font-size:5.8px; line-height:1.25; max-width:82px; }
  .values-no-number .value-list { width:100%; margin-left:0; }
  .pricing { padding-top:80px; padding-bottom:90px; }
  .pricing-grid { grid-template-columns:1fr; }
  .price-card { min-height:auto; padding:26px; }
  .price-includes ul { grid-template-columns:1fr; }
  .custom-pricing { padding:28px; }
  .custom-actions { align-items:flex-start; flex-direction:column; gap:20px; }
  .company-page .cta-inner { min-height:450px; grid-template-columns:1fr; gap:28px; align-content:center; }
}


/* === v3: Roboto, centered Argus core, dedicated pricing page === */
.section-number-blank { visibility: hidden; }

/* Lock the Argus core to the exact geometric centre of the orbit graphic. */
.hero-orbit { position: relative; }
.orbit-core {
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    width: clamp(150px, 31%, 184px) !important;
    height: clamp(150px, 31%, 184px) !important;
    min-width: 0 !important;
    min-height: 0 !important;
    aspect-ratio: 1 / 1;
    padding: 16px !important;
}
.orbit-core strong { font-size: clamp(19px, 2vw, 25px); line-height: 1; }
.orbit-core small { font-size: 7px; line-height: 1.25; white-space: nowrap; }

/* Dedicated pricing */
.pricing-hero {
    padding-top: clamp(70px, 7vw, 110px);
    padding-bottom: 52px;
    text-align: center;
}
.pricing-title-wrap { max-width: 850px; margin: 0 auto; }
.pricing-title-wrap h1 {
    margin: 22px 0 24px;
    font-family: var(--display);
    font-size: clamp(64px, 8vw, 118px);
    font-weight: 500;
    line-height: .95;
    letter-spacing: -.055em;
}
.pricing-title-wrap p {
    max-width: 720px;
    margin: 0 auto;
    color: #66645e;
    font-size: 17px;
    line-height: 1.65;
}
.pricing-toggle {
    width: max-content;
    margin: 40px auto 0;
    padding: 4px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #ebe8e0;
}
.billing-toggle button {
    appearance: none;
    border: 0;
    background: transparent;
    border-radius: 999px;
    padding: 11px 18px;
    color: #6c6a63;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
}
.billing-toggle button.active { background: var(--white); color: var(--ink); box-shadow: 0 1px 3px rgba(0,0,0,.08); }
.billing-toggle button span { margin-left: 6px; font-size: 10px; color: #587316; }

.pricing-plans { padding-top: 18px; padding-bottom: 130px; }
.pricing-grid-page {
    max-width: 1180px;
    margin: 0 auto;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}
.price-card-page {
    min-height: 710px;
    padding: 34px;
    border: 1px solid #ddd9d0;
    border-radius: 20px;
    background: rgba(255,255,255,.72);
    box-shadow: 0 10px 35px rgba(17,17,15,.035);
    display: flex;
    flex-direction: column;
}
.price-card-page.enterprise-card { border-color: #bfcbd3; box-shadow: 0 14px 42px rgba(45,80,100,.07); }
.price-card-icon { width: 44px; height: 44px; margin-bottom: 28px; }
.price-card-icon svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-width: 1.3; }
.price-card-page .price-plan { display:block; margin-bottom: 10px; font-size: 12px; font-weight: 700; text-transform: none; letter-spacing: 0; }
.price-card-page h2 {
    min-height: 58px;
    margin: 0 0 26px;
    font-family: var(--display);
    font-size: 25px;
    line-height: 1.25;
    font-weight: 400;
    letter-spacing: -.025em;
}
.price-card-page .price-wrap { min-height: 92px; margin-bottom: 22px; }
.price-card-page .price-monthly strong,
.price-card-page .price-annual strong {
    display: block;
    font-family: var(--display);
    font-size: clamp(42px, 4.2vw, 62px);
    line-height: 1;
    font-weight: 500;
    letter-spacing: -.04em;
}
.price-card-page .price-monthly span,
.price-card-page .price-annual span { display: block; margin-top: 7px; font-size: 13px; color: #57554f; }
.price-card-page .price-annual small { display:block; margin-top:6px; color:#74716a; font-size:11px; }
.pricing-cta {
    min-height: 48px;
    padding: 0 18px;
    border-radius: 7px;
    background: #151513;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-size: 13px;
    font-weight: 700;
    transition: background .2s ease, transform .2s ease;
}
.pricing-cta:hover { background: #292925; transform: translateY(-1px); }
.pricing-cta .icon-arrow { width: 15px; height: 15px; }
.price-card-page .price-includes { margin-top: 24px; padding-top: 24px; border-top: 1px solid #dedbd4; }
.price-card-page .price-includes > span { font-size: 12px; font-weight: 700; text-transform: none; letter-spacing: 0; opacity: 1; }
.price-card-page .price-includes ul { display: grid; grid-template-columns: 1fr; gap: 12px; margin: 18px 0 0; padding: 0; list-style: none; }
.price-card-page .price-includes li { position: relative; padding-left: 24px; font-size: 14px; line-height: 1.45; }
.price-card-page .price-includes li::before { content: "✓"; position:absolute; left:0; top:0; color:#737169; font-weight:400; }

.custom-price-card {
    max-width: 1180px;
    margin: 22px auto 0;
    border: 1px solid #ddd9d0;
    border-radius: 20px;
    background: #171815;
    color: var(--white);
    padding: 40px;
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 70px;
    align-items: center;
}
.custom-price-card .price-plan { color: rgba(255,255,255,.58); text-transform:none; letter-spacing:0; font-size:12px; }
.custom-price-card h2 { margin: 12px 0 0; font-family:var(--display); font-size: clamp(44px,5vw,70px); font-weight:500; letter-spacing:-.045em; }
.custom-icon { border:1px solid rgba(255,255,255,.25); border-radius:50%; display:grid; place-items:center; font-size:24px; color:var(--acid); }
.custom-price-copy p { margin:0 0 16px; color:rgba(255,255,255,.64); line-height:1.65; font-size:15px; }
.custom-consult { width:max-content; min-width:205px; margin-top:25px; background:var(--white); color:var(--ink); }
.custom-consult:hover { background:var(--acid); color:var(--ink); }
.pricing-footnote { max-width:1180px; margin:20px auto 0; color:#8b887f; font-size:11px; line-height:1.5; }

@media (max-width: 760px) {
    .orbit-core {
        width: 34% !important;
        height: 34% !important;
        max-width: 158px;
        max-height: 158px;
        min-width: 124px !important;
        min-height: 124px !important;
    }
    .orbit-core strong { font-size: 20px; }
    .orbit-core small { font-size: 6px; }
    .pricing-hero { padding-top: 60px; padding-bottom: 38px; }
    .pricing-title-wrap p { font-size: 15px; }
    .pricing-toggle { margin-top: 30px; }
    .billing-toggle button { padding: 10px 13px; }
    .billing-toggle button span { display:none; }
    .pricing-plans { padding-top: 10px; padding-bottom: 90px; }
    .pricing-grid-page { grid-template-columns: 1fr; }
    .price-card-page { min-height: auto; padding: 26px; }
    .price-card-page h2 { min-height: 0; }
    .custom-price-card { padding: 30px 26px; grid-template-columns: 1fr; gap: 28px; }
    .custom-consult { width:100%; }
}

/* Pricing conflict resets from the former homepage cards */
.price-card-page.enterprise-card {
    background: rgba(255,255,255,.72);
    color: var(--ink);
}
.price-card-page .price-wrap { margin-top: 0; }
.price-card-page .price-monthly,
.price-card-page .price-annual { min-height: 0; }
.price-card-page .price-card-top > p { margin: 0; }


/* Billing state - v4 */
.price-annual { display: none; }
.billing-annual .price-monthly { display: none !important; }
.billing-annual .price-annual { display: block !important; }
.billing-monthly .price-monthly { display: block !important; }
.billing-monthly .price-annual { display: none !important; }
