:root {
    --orange: #fc4800;
    --acid: #ccfc00;
    --cyan: #0d8fb7;
    --crimson: #e8213f;
    --black: #0a0a0a;
    --off-white: #f0ede8;
    --mid: #1e1e1e;
    --rule: #2a2a2a;
    --blueprint: #f0f4ff;
    --nav-height: 64px;

    --csmd-orange: var(--orange);
    --csmd-acid: var(--acid);
    --csmd-cyan: var(--cyan);
    --csmd-crimson: var(--crimson);
    --csmd-black: var(--black);
    --csmd-off-white: var(--off-white);
    --csmd-mid: var(--mid);
    --csmd-rule: var(--rule);
}

* {
    box-sizing: border-box;
    border-radius: 0;
}

html,
body {
    margin: 0;
    padding: 0;
    background: var(--black);
    color: var(--off-white);
    font-family: 'Space Grotesk', sans-serif;
    overflow-x: hidden;
}

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

main {
    min-height: 70vh;
    padding-top: var(--nav-height);
}

.top-nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: var(--nav-height);
    width: 100%;
    z-index: 100;
    border-bottom: 1px solid var(--rule);
    background: rgba(10, 10, 10, 0.96);
    backdrop-filter: blur(6px);
    display: flex;
    align-items: center;
}

section[id] {
    scroll-margin-top: calc(var(--nav-height) + 10px);
}

.nav-shell {
    max-width: 1440px;
    margin: 0 auto;
    min-height: var(--nav-height);
    padding: 0 1.2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    width: 100%;
}

.brand {
    display: inline-flex;
    align-items: center;
    line-height: 0;
    color: var(--off-white);
    flex-shrink: 0;
}

.brand-picture {
    display: block;
}

.brand-logo {
    display: block;
    width: clamp(180px, 22vw, 320px);
    height: auto;
}

.nav-links {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.nav-link {
    font-family: 'Space Grotesk', sans-serif;
    font-weight: 500;
    font-size: 0.69rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #c9c9c9;
    position: relative;
    padding-left: 0.95rem;
    transition: color 150ms ease;
}

.nav-link::before {
    content: '▶';
    color: var(--acid);
    position: absolute;
    left: 0;
    transform: translateX(-8px);
    opacity: 0;
    transition: transform 150ms ease, opacity 150ms ease;
}

.nav-link:hover,
.nav-link:focus,
.nav-link.is-active {
    color: var(--acid);
}

.nav-link:hover::before,
.nav-link:focus::before,
.nav-link.is-active::before {
    opacity: 1;
    transform: translateX(0);
}

.nav-cta {
    border: 1px solid var(--orange);
    background: var(--orange);
    color: var(--black);
    font-family: 'Space Grotesk', sans-serif;
    font-weight: 700;
    font-size: 0.69rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    padding: 0.46rem 0.62rem;
}

.mobile-toggle {
    display: none;
    border: 1px solid var(--rule);
    background: transparent;
    color: var(--off-white);
    font-family: 'Space Mono', monospace;
    text-transform: uppercase;
    font-size: 0.73rem;
    letter-spacing: 0.1em;
    padding: 0.45rem 0.7rem;
}

.flash {
    margin: 0;
    padding: 0.8rem 1rem;
    border: 1px solid var(--rule);
    font-family: 'Space Mono', monospace;
    font-size: 0.73rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.flash-success {
    background: #1f2b13;
    color: var(--acid);
}

.flash-error {
    background: #3d1118;
    color: #ffd7dc;
}

.module {
    position: relative;
    overflow: hidden;
    padding: clamp(2.1rem, 5vw, 4.8rem) clamp(1rem, 3vw, 2.2rem);
    border-bottom: 1px solid var(--rule);
}

.module > * {
    position: relative;
    z-index: 2;
}

.module::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.26) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.07;
    animation: noise-drift 20s linear infinite;
    z-index: 1;
}

.theme-black {
    background: var(--black);
    color: var(--off-white);
}

.theme-black::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
    z-index: 1;
}

.theme-offwhite {
    background: var(--off-white);
    color: var(--black);
}

.theme-orange {
    background: var(--orange);
    color: var(--black);
}

.theme-blueprint {
    background-color: var(--blueprint);
    background-image:
        linear-gradient(rgba(13, 143, 183, 0.18) 1px, transparent 1px),
        linear-gradient(90deg, rgba(13, 143, 183, 0.18) 1px, transparent 1px);
    background-size: 32px 32px;
    color: var(--black);
    animation: grid-pulse 4s ease-in-out infinite;
}

.problem-gridpaper {
    background-color: var(--off-white);
    background-image:
        linear-gradient(rgba(13, 143, 183, 0.14) 1px, transparent 1px),
        linear-gradient(90deg, rgba(13, 143, 183, 0.14) 1px, transparent 1px);
    background-size: 32px 32px;
    animation: grid-pulse 4s ease-in-out infinite;
}

.ascii-stack {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
}

.hero-plasma {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.32;
}

.client-raincity {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.92;
    z-index: 0;
}

.services-hero-bg {
    position: absolute;
    inset: 0;
    height: 100%;
    z-index: 0;
    overflow: hidden;
    pointer-events: none;
}

.services-hero-bg::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to bottom,
        rgba(240, 237, 232, 0.22) 0%,
        rgba(240, 237, 232, 0.3) 48%,
        rgba(240, 237, 232, 0.56) 100%
    );
}

.services-rotoscroll {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.55;
}

.webdev-tiles {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.44;
    z-index: 0;
    image-rendering: pixelated;
}

.plugins-lissajous {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.56;
    z-index: 0;
    image-rendering: pixelated;
}

.client-northern {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.32;
    z-index: 0;
    image-rendering: pixelated;
    filter: saturate(0.32) brightness(0.85) contrast(0.92);
}

.ascii-static {
    margin: 0;
    position: absolute;
    inset: 0;
    color: currentColor;
    opacity: 0.04;
    font-family: 'Space Mono', monospace;
    font-size: clamp(0.55rem, 1.05vw, 0.9rem);
    line-height: 1.6;
    white-space: pre;
    letter-spacing: 0.08em;
    transform: rotate(-1deg) translate3d(-1.5%, -4%, 0);
}

.ascii-rain {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.05;
    z-index: 2;
}

.hero .ascii-static {
    z-index: 1;
}

.raincity-footer .ascii-static {
    z-index: 1;
    opacity: 0.12;
    color: rgba(13, 143, 183, 0.65);
    transform: none;
    inset: 0 0 auto 0;
    height: 60%;
    overflow: hidden;
}

@media (prefers-reduced-motion: reduce) {
    .hero-plasma {
        opacity: 0.22;
    }

    .client-raincity {
        opacity: 0.2;
    }

    .services-rotoscroll {
        opacity: 0.45;
    }

    .webdev-tiles {
        opacity: 0.3;
    }

    .plugins-lissajous {
        opacity: 0.35;
    }

    .client-northern {
        opacity: 0.24;
    }
}

.section-comment {
    max-width: 1440px;
    margin: 0 auto 0.7rem;
    color: currentColor;
    opacity: 0.4;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.module-head,
.hero-status,
.hero-signal,
.hero-title,
.hero-cta-row,
.service-bands,
.showcase-stack,
.mini-showcase-grid,
.plugin-grid,
.client-feature-grid,
.terminal-metadata,
.page-intro {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
}

.section-divider {
    padding: 0.55rem clamp(1rem, 3vw, 2.2rem);
    background: #0f0f0f;
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
    font-family: 'Space Mono', monospace;
    font-size: 0.7rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #808080;
    overflow: hidden;
}

.divider-track {
    display: block;
    max-width: 1440px;
    margin: 0 auto;
    transform: scaleX(0);
    transform-origin: left;
}

.section-divider.is-visible .divider-track {
    animation: divider-reveal 500ms ease forwards;
}

.hero {
    padding: clamp(1.1rem, 2.4vw, 2rem) clamp(1rem, 3vw, 2.2rem) 0;
    height: calc(100dvh - var(--nav-height));
    min-height: calc(100dvh - var(--nav-height));
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: clamp(0.35rem, 1.4vh, 0.75rem);
}

.hero-status {
    font-family: 'Space Mono', monospace;
    font-size: 0.72rem;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    color: var(--acid);
}

.hero-signal {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.12em;
    color: #a6a6a6;
    text-transform: uppercase;
}

.signal-meter {
    display: inline-flex;
    width: min(300px, 45vw);
    height: 0.7rem;
    border: 1px solid #4c4c4c;
    background: #111;
    overflow: hidden;
}

.signal-fill {
    width: 100%;
    background: var(--acid);
    transform: scaleX(0);
    transform-origin: left;
    animation: signal-up 1.3s ease forwards;
}

.hero-title {
    margin: 0.5rem auto 0;
    width: 100%;
    font-family: 'Saira Extra Condensed', sans-serif;
    color: var(--orange);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: -0.02em;
    font-size: clamp(3rem, 12vw, 11rem);
    line-height: 0.8;
}

.hero-subhead {
    margin: calc(0.95rem + 10px) 0 1.8rem;
    font-family: 'Space Grotesk', sans-serif;
    font-size: clamp(0.8rem, 1.5vw, 1rem);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--off-white);
    opacity: 0.5;
    padding-left: clamp(6.5rem, 11vw, 11.5rem);
}

.hero-line {
    display: block;
    opacity: 0;
    transform: translateX(-40px);
}

.is-ready .hero-line {
    animation: hero-slam 460ms ease forwards;
}

.is-ready .hero-line:nth-child(1) { animation-delay: 0ms; }
.is-ready .hero-line:nth-child(2) { animation-delay: 150ms; }
.is-ready .hero-line:nth-child(3) { animation-delay: 300ms; }
.is-ready .hero-line:nth-child(4) { animation-delay: 450ms; }

.cursor {
    animation: blink 0.7s step-end infinite;
}

.cursor-blink {
    animation: blink 0.7s step-end infinite;
    color: var(--acid);
}

.hero-cta-row {
    display: flex;
    gap: 0.7rem;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-left: 2rem;
}

.btn {
    display: inline-block;
    border: 1px solid var(--rule);
    padding: 0.74rem 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.72rem;
    font-family: 'Space Grotesk', sans-serif;
    font-weight: 500;
    transition: transform 150ms ease, box-shadow 150ms ease, background 150ms ease, color 150ms ease;
}

.btn:hover,
.btn:focus {
    transform: translateY(-2px);
}

.btn-outline {
    color: var(--orange);
    border-color: var(--orange);
    background: transparent;
}

.btn-outline:hover,
.btn-outline:focus {
    background: var(--orange);
    color: var(--black);
}

.btn-solid {
    color: var(--black);
    border-color: var(--orange);
    background: var(--orange);
}

.btn-solid:hover,
.btn-solid:focus {
    box-shadow: 4px 4px 0 var(--orange);
}

.btn-light {
    border-color: #fff;
    background: #fff;
    color: var(--black);
}

.btn-light:hover,
.btn-light:focus {
    box-shadow: 4px 4px 0 var(--black);
}

.btn-dark {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.btn-dark:hover,
.btn-dark:focus {
    background: var(--black);
    color: #fff;
}

.ticker {
    margin-top: 1.6rem;
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    overflow: hidden;
    white-space: nowrap;
    font-family: 'Space Mono', monospace;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.hero .ticker {
    margin-top: auto;
}

.scroll-hint {
    position: absolute;
    bottom: 5.5rem;
    left: 50%;
    transform: translateX(-50%);
    font-family: 'Space Mono', monospace;
    font-size: 0.6rem;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--off-white);
    opacity: 0.35;
    pointer-events: none;
    white-space: nowrap;
    z-index: 10;
    animation: scrollBounce 2.2s ease-in-out infinite;
    transition: opacity 400ms;
}

.scroll-hint.is-hidden {
    opacity: 0;
}

.ticker-track {
    display: inline-flex;
    vertical-align: top;
    align-items: center;
    min-width: 100%;
    will-change: transform;
    animation: marquee var(--marquee-duration, 30s) linear infinite;
}

.ticker-track > span {
    display: inline-flex;
    align-items: center;
    padding: 0.3rem 0;
    flex: 0 0 auto;
}

.module-head {
    margin-bottom: 1.3rem;
}

.module-index {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.82rem;
    letter-spacing: 0.18em;
    color: var(--cyan);
    text-transform: uppercase;
}

.module-title {
    margin: 0.3rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 0.84;
    letter-spacing: -0.02em;
    font-size: clamp(3rem, 11vw, 8.8rem);
}

.theme-orange .module-title,
.theme-orange .module-index,
.theme-orange .section-comment {
    color: var(--black);
}

.module-head-cyan {
    padding: 0.55rem 0.8rem;
    background: var(--cyan);
    color: #fff;
    border: 1px solid var(--black);
}

.module-head-cyan .module-index,
.module-head-cyan .module-title {
    color: #fff;
}

.page-head .module-title {
    max-width: 12ch;
}

.contact-page-head .module-index,
.contact-page-head .module-title {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
}

.page-intro {
    margin-top: 0.75rem;
    max-width: 70ch;
    color: rgba(240, 237, 232, 0.75);
    line-height: 1.6;
}

.page-intro-dark {
    color: rgba(10, 10, 10, 0.82);
}

.about-copy {
    max-width: 1080px;
    margin: 0 auto;
}

.about-copy p {
    max-width: 72ch;
    line-height: 1.62;
}

.service-bands {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    padding: 40px 28px;
}

.service-band {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
    border: 1px solid rgba(0,0,0,0.12);
    min-height: 480px;
}

.service-copy {
    padding: 24px;
    background: var(--service-copy-bg, transparent);
}

.service-comment {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.69rem;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    opacity: 0.55;
}

.service-number {
    margin: 0.45rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.78rem;
    letter-spacing: 0.15em;
    opacity: 0.7;
}

.service-band h2,
.service-band h3 {
    margin: 0.35rem 0 0.65rem;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.2rem, 5vw, 4.1rem);
    line-height: 0.76;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    white-space: pre-line;
}

.service-band p {
    margin: 0.45rem 0;
    line-height: 1.56;
}

.service-specialty {
    margin-top: 0.82rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.08em;
    opacity: 0.6;
}

.spec-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin-top: 0.45rem;
    font-family: 'Space Mono', monospace;
    text-transform: uppercase;
    font-size: 0.66rem;
    letter-spacing: 0.08em;
}

.spec-label,
.spec-value {
    white-space: nowrap;
}

.spec-dots {
    position: relative;
    flex: 1;
    min-width: 44px;
    height: 0.42rem;
    overflow: hidden;
}

.spec-dots::before {
    content: '................................................';
    position: absolute;
    inset: 0;
    color: currentColor;
    opacity: 0.35;
    transform: scaleX(0);
    transform-origin: left;
}

.js-spec-fill.is-active .spec-dots::before {
    animation: spec-fill 450ms ease forwards;
}

.service-visual {
    border-left: none;
    border-top: 1px solid rgba(0,0,0,0.15);
    padding: 0;
    position: relative;
    overflow: hidden;
    min-height: 260px;
}

.panel-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1;
}

.panel-scanlines {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(240, 237, 232, 0.02) 2px,
        rgba(240, 237, 232, 0.02) 4px
    );
}

.live-cursor,
.show-url-cursor {
    display: inline-block;
    animation: blink 1s step-end infinite;
}

.service-live {
    position: relative;
    width: 100%;
    min-height: 100%;
    background: var(--black);
    overflow: hidden;
    isolation: isolate;
}

.service-live-label {
    position: absolute;
    top: 0.55rem;
    right: 0.65rem;
    z-index: 3;
    font-family: 'Space Mono', monospace;
    font-size: 9px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--orange);
}

.service-live-stat {
    position: absolute;
    left: 0.65rem;
    bottom: 0.55rem;
    z-index: 3;
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 10px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.service-live-tags {
    position: absolute;
    left: 0.62rem;
    bottom: 0.58rem;
    z-index: 3;
    display: flex;
    flex-wrap: wrap;
    gap: 0.32rem;
}

.service-live-tags span {
    display: inline-flex;
    align-items: center;
    padding: 0.18rem 0.34rem;
    border: 1px solid var(--acid);
    color: var(--acid);
    font-family: 'Space Mono', monospace;
    font-size: 9px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    line-height: 1.2;
    background: rgba(10, 10, 10, 0.72);
}

.service-live-headline {
    position: absolute;
    top: 0.48rem;
    right: 0.62rem;
    z-index: 3;
    margin: 0;
    max-width: min(100% - 1.2rem, 320px);
    text-align: right;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(1.6rem, 2.5vw, 1.75rem);
    line-height: 0.82;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: var(--acid);
}

.service-live-04 .panel-scanlines {
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(240, 237, 232, 0.015) 2px,
        rgba(240, 237, 232, 0.015) 4px
    );
}

.visual-tag {
    position: absolute;
    right: 0.45rem;
    bottom: 0.45rem;
    font-family: 'Space Mono', monospace;
    font-size: 10px;
    letter-spacing: 0.15em;
    opacity: 0.5;
    text-transform: uppercase;
    z-index: 2;
}

.service-orange {
    --service-copy-bg: #f3ece6;
    background: #f1e7df;
    color: var(--black);
    border-color: rgba(10, 10, 10, 0.25);
}

.service-orange h2,
.service-orange h3 { color: var(--orange); }

.service-cyan {
    --service-copy-bg: #e7eff3;
    background: #e4edf2;
    color: var(--black);
    border-color: rgba(10, 10, 10, 0.25);
}

.service-cyan h2,
.service-cyan h3 { color: var(--cyan); }

.service-acid {
    --service-copy-bg: #d4e985;
    background: #cce46e;
    color: var(--black);
    border-color: rgba(10, 10, 10, 0.32);
}

.service-acid h2,
.service-acid h3 { color: var(--black); }

.service-ai {
    --service-copy-bg: #0a0a0a;
    background: var(--black);
    color: var(--off-white);
    border-color: #2f2f2f;
}

.service-ai h2,
.service-ai h3 {
    color: var(--acid);
}

.service-ai .service-visual {
    border-top-color: rgba(255,255,255,0.12);
}

.service-ai .service-live {
    background: #0c0f0c;
}

.showcase-stack {
    display: grid;
    gap: 1rem;
}

.apps-stack {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.showcase-row {
    display: grid;
    grid-template-columns: minmax(0, 52%) minmax(0, 48%);
    background: var(--mid);
    border: 1px solid var(--rule);
}

.theme-blueprint .showcase-row {
    background: rgba(255, 255, 255, 0.62);
    border-color: rgba(10, 10, 10, 0.2);
}

.showcase-row.is-reverse {
    grid-template-columns: minmax(0, 48%) minmax(0, 52%);
}

.showcase-row.is-reverse .showcase-visual-wrap {
    order: 2;
}

.showcase-row.is-reverse .showcase-copy {
    order: 1;
}

.showcase-visual-wrap {
    border-right: 1px solid var(--rule);
    padding: 0;
    position: relative;
    overflow: hidden;
}

.showcase-row.is-reverse .showcase-visual-wrap {
    border-right: 0;
    border-left: 1px solid var(--rule);
}

.show-visual {
    position: relative;
    width: 100%;
    min-height: 100%;
    border-left: 2px solid var(--orange);
    background: #0d0d0d;
    color: var(--off-white);
    overflow: hidden;
    isolation: isolate;
}

.show-visual-mini {
    min-height: 132px;
}

.show-visual-app {
    min-height: 100%;
}

.show-tone-orange {
    border-left-color: var(--orange);
}

.show-tone-cyan {
    border-left-color: var(--cyan);
}

.show-visual-content {
    position: relative;
    z-index: 3;
    min-height: 100%;
    padding: 0.72rem;
    display: flex;
    flex-direction: column;
    gap: 0.62rem;
}

.show-visual-primary .show-visual-content,
.show-visual-mini .show-visual-content {
    justify-content: space-between;
}

.show-visual-app .show-visual-content {
    justify-content: flex-start;
}

.show-visual-primary .panel-canvas {
    opacity: 0.24;
}

.show-visual-mini .panel-canvas {
    opacity: 0.08;
}

.show-visual-app .panel-canvas {
    opacity: 0.42;
}

.app-row,
.app-row.is-reverse {
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr;
}

.app-row .showcase-copy,
.app-row.is-reverse .showcase-copy {
    order: 1;
}

.app-row .showcase-visual-wrap,
.app-row.is-reverse .showcase-visual-wrap {
    order: 2;
    border-right: 0;
    border-left: 0;
    border-top: 1px solid var(--rule);
    min-height: 280px;
}

.show-visual-mini .panel-scanlines {
    opacity: 0.38;
}

.show-url-line {
    margin: 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.16rem;
    font-family: 'Space Mono', monospace;
    font-size: 9px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    overflow-wrap: anywhere;
    word-break: break-word;
    color: var(--orange);
}

.show-url-line.is-cyan {
    color: var(--cyan);
}

.show-url-prefix {
    margin-right: 0.28rem;
}

.show-url-cursor {
    color: inherit;
}

.show-stat-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.42rem;
}

.show-stat-cell {
    border: 1px solid rgba(240, 237, 232, 0.24);
    background: rgba(10, 10, 10, 0.58);
    padding: 0.44rem 0.48rem;
    min-height: 74px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0.26rem;
}

.show-stat-value {
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(1.5rem, 2.5vw, 2rem);
    line-height: 0.76;
    text-transform: uppercase;
}

.show-stat-label {
    font-family: 'Space Mono', monospace;
    font-size: 8px;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.58);
}

.show-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.tag {
    display: inline-flex;
    align-items: center;
    border: 1px solid currentColor;
    padding: 0.17rem 0.38rem;
    font-family: 'Space Mono', monospace;
    font-size: 9px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    line-height: 1.2;
    opacity: 0.88;
}

.theme-blueprint .show-visual {
    background: #0d0d0d;
    color: var(--off-white);
}

.theme-blueprint .show-stat-cell {
    border-color: rgba(240, 237, 232, 0.24);
    background: rgba(10, 10, 10, 0.58);
}

.theme-blueprint .show-url-line {
    color: var(--orange);
}

.mini-showcase-card .show-visual {
    min-height: 100%;
}

.show-client {
    display: inline-block;
    position: relative;
}

.showcase-row:hover .show-client,
.showcase-row:focus-within .show-client {
    animation: show-glitch 0.3s steps(1, end) 1 forwards;
}

.showcase-copy {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    min-width: 0;
}

.showcase-copy h2,
.showcase-copy h3 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    text-transform: uppercase;
    letter-spacing: -0.01em;
    font-size: clamp(2rem, 4vw, 3.8rem);
    line-height: 0.86;
}

.showcase-copy p {
    margin: 0.25rem 0 0;
    line-height: 1.55;
}

.services-tag {
    margin-top: 0.2rem;
    border: 1px solid currentColor;
    display: inline-block;
    padding: 0.35rem 0.5rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.showcase-link {
    display: block;
    margin-top: 0.15rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.08em;
    color: var(--orange);
    text-transform: uppercase;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.theme-blueprint .showcase-link {
    color: var(--cyan);
}

.mini-showcase-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 370px), 1fr));
    gap: 1rem;
    margin-top: 1rem;
    margin-bottom: 0.95rem;
    align-items: stretch;
}

.mini-showcase-card {
    border: 1px solid var(--rule);
    background: var(--mid);
    padding: 0.9rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.theme-blueprint .mini-showcase-card {
    background: rgba(255, 255, 255, 0.66);
    border-color: rgba(10, 10, 10, 0.2);
}

.mini-showcase-card h3,
.mini-showcase-card h4 {
    margin: 0.35rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    text-transform: uppercase;
    font-size: clamp(1.35rem, 2.2vw, 2rem);
    line-height: 0.88;
}

.mini-showcase-card .showcase-link {
    display: block;
    margin-top: 0.1rem;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.mini-showcase-card .services-tag {
    display: block;
    margin-top: 0.2rem;
    width: fit-content;
    max-width: 100%;
    white-space: normal;
}

.plugin-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.plugin-card {
    position: relative;
    border: 1px solid var(--black);
    background: var(--black);
    color: var(--off-white);
    padding: 0.95rem;
}

.plugin-price {
    position: absolute;
    top: 0.6rem;
    right: 0.6rem;
    padding: 0.22rem 0.45rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.64rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    border: 1px solid var(--black);
}

.plugin-price.is-free {
    background: var(--acid);
    color: var(--black);
}

.plugin-price.is-paid {
    background: #fff;
    color: var(--black);
}

.plugin-type {
    display: inline-block;
    border: 1px solid #3b3b3b;
    padding: 0.2rem 0.45rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #b8b8b8;
}

.plugin-card h2,
.plugin-card h3 {
    margin: 0.62rem 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.2rem, 4vw, 3.4rem);
    line-height: 0.84;
    letter-spacing: -0.01em;
}

.plugin-card p {
    margin: 0.5rem 0;
    line-height: 1.55;
}

.plugin-meta {
    margin-top: 0.55rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.75;
}

.card-actions {
    display: flex;
    gap: 0.55rem;
    flex-wrap: wrap;
    margin-top: 0.8rem;
}

.checkout-form {
    display: grid;
    gap: 0.5rem;
    margin-top: 0.6rem;
}

.checkout-form label {
    display: grid;
    gap: 0.3rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.checkout-form input {
    border: 1px solid var(--rule);
    background: #101010;
    color: var(--off-white);
    padding: 0.55rem;
    font-family: 'Space Grotesk', sans-serif;
}

.checkout-form-light input {
    border-color: #434343;
}

.plugin-detail-module {
    color: var(--black);
}

.plugin-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.7fr);
    gap: 1rem;
    align-items: start;
}

.plugin-detail-panel {
    border: 1px solid rgba(10, 10, 10, 0.24);
    background: rgba(255, 255, 255, 0.82);
    padding: 1rem;
}

.plugin-detail-overview h2 {
    margin: 0.45rem 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    text-transform: uppercase;
    font-size: clamp(2.2rem, 4vw, 3.8rem);
    line-height: 0.86;
}

.plugin-feature-stack {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.8rem;
    margin-top: 1rem;
}

.plugin-feature-card {
    border: 1px solid rgba(10, 10, 10, 0.25);
    background: rgba(252, 72, 0, 0.12);
    padding: 0.8rem;
}

.plugin-feature-card h3 {
    margin: 0 0 0.35rem;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(1.95rem, 3vw, 2.9rem);
    text-transform: uppercase;
    line-height: 0.86;
    letter-spacing: 0.01em;
}

.plugin-feature-summary {
    margin: 0;
    line-height: 1.58;
    max-width: 88ch;
}

.plugin-feature-bullets {
    margin: 0.52rem 0 0;
    padding-left: 1.15rem;
    max-width: 88ch;
    display: grid;
    gap: 0.24rem;
}

.plugin-feature-bullets li {
    line-height: 1.5;
}

.plugin-detail-specs h3 {
    margin: 0.2rem 0 0.45rem;
    font-family: 'Space Mono', monospace;
    letter-spacing: 0.08em;
    font-size: 0.72rem;
    text-transform: uppercase;
}

.plugin-detail-list {
    margin: 0;
    padding-left: 1.15rem;
    display: grid;
    gap: 0.34rem;
}

.plugin-shot-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.plugin-shot-card {
    border: 1px solid var(--rule);
    background: var(--mid);
    padding: 0.8rem;
}

.plugin-shot-card p {
    margin: 0.18rem 0 0;
    line-height: 1.52;
}

.plugin-shot-title {
    margin-top: 0.62rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.7rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--acid);
}

.plugin-shot-placeholder {
    aspect-ratio: 16 / 10;
    border: 1px dashed rgba(255, 255, 255, 0.42);
    background: linear-gradient(135deg, rgba(252, 72, 0, 0.16), rgba(13, 143, 183, 0.18));
    display: flex;
    align-items: center;
    justify-content: center;
}

.plugin-pricing-grid {
    display: grid;
    grid-template-columns: 1.15fr 1fr;
    gap: 1rem;
}

.plugin-pricing-tiers h2 {
    margin: 0.1rem 0 0.4rem;
    font-family: 'Saira Extra Condensed', sans-serif;
    text-transform: uppercase;
    font-size: clamp(2.4rem, 4vw, 4.2rem);
    line-height: 0.84;
}

.tier-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.tier-card {
    border: 1px solid var(--black);
    background: rgba(10, 10, 10, 0.92);
    color: var(--off-white);
    padding: 0.8rem;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.tier-card.is-selected {
    border-color: var(--acid);
    box-shadow: 3px 3px 0 var(--acid);
    transform: translateY(-2px);
}

.tier-name {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.69rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.tier-price {
    margin: 0.3rem 0 0.2rem;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4vw, 3rem);
    text-transform: uppercase;
    line-height: 0.84;
}

.tier-meta {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    opacity: 0.8;
}

.plugin-pricing-checkout {
    border: 1px solid var(--black);
    background: rgba(10, 10, 10, 0.95);
    color: var(--off-white);
    padding: 0.85rem;
}

.plugin-pricing-checkout h3 {
    margin: 0.15rem 0 0.6rem;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 0.85;
    text-transform: uppercase;
}

.plugin-checkout-form {
    margin-top: 0;
}

.tier-selector {
    border: 1px solid #333;
    margin: 0 0 0.55rem;
    padding: 0.55rem;
    display: grid;
    gap: 0.45rem;
}

.tier-selector legend {
    padding: 0 0.35rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.tier-option {
    border: 1px solid #454545;
    background: #141414;
    padding: 0.45rem 0.5rem;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.45rem;
    transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.tier-option.is-selected {
    border-color: var(--acid);
    box-shadow: inset 0 0 0 1px rgba(204, 252, 0, 0.5);
    background: #1b1f10;
}

.tier-option input {
    margin: 0;
}

.tier-option-label,
.tier-option-price {
    font-family: 'Space Mono', monospace;
    font-size: 0.64rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.plugin-pricing-free {
    border: 1px solid var(--black);
    background: rgba(10, 10, 10, 0.9);
    color: var(--off-white);
    padding: 0.95rem;
    max-width: 760px;
}

.plugin-pricing-free h2 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.5rem, 5vw, 4.6rem);
    line-height: 0.83;
    text-transform: uppercase;
}

.plugin-shot-module .webdev-tiles {
    opacity: 0.37;
}

.plugin-pricing-module .plugins-lissajous {
    opacity: 0.34;
}

.client-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.client-card {
    border: 1px solid var(--rule);
    background: var(--mid);
    padding: 0.9rem;
}

.logo-placeholder {
    aspect-ratio: 2 / 1;
    border: 1px solid #515151;
    background: rgba(13, 143, 183, 0.18);
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-placeholder::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(100deg, transparent 10%, rgba(255, 255, 255, 0.35) 50%, transparent 90%);
    transform: translateX(-120%);
    animation: shimmer 2.2s linear infinite;
}

.logo-placeholder:has(img)::after {
    display: none;
}

.logo-placeholder img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.client-card h3 {
    margin: 0.7rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 0.85;
    text-transform: uppercase;
}

.ticker-clients {
    margin-top: 1rem;
    border-color: rgba(13, 143, 183, 0.4);
    padding-top: 0.3rem;
}

.chips-track > span {
    font-size: 0.83rem;
    letter-spacing: 0.1em;
}

.client-ticker-head {
    margin: 0.2rem 0 0.5rem;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    line-height: 0.9;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

/* ── Personal Projects Section ──────────────────────────────── */

.personal-wave {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.55;
    pointer-events: none;
}

.personal-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 32px;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
}

.personal-card {
    position: relative;
    display: flex;
    flex-direction: column;
    background: rgba(255,255,255,.035);
    border: 1px solid var(--rule);
    border-top: 3px solid var(--cyan);
    overflow: hidden;
    transition: border-color .2s, box-shadow .2s;
}

.personal-card:nth-child(2) { border-top-color: var(--orange); }
.personal-card:nth-child(3) { border-top-color: var(--acid); }
.personal-card:nth-child(4) { border-top-color: var(--orange); }

.personal-card:hover {
    border-color: rgba(255,255,255,.18);
    box-shadow: 0 4px 28px rgba(0,0,0,.35);
}

.personal-card-head {
    padding: 20px 22px 14px;
    border-bottom: 1px solid var(--rule);
}

.personal-card-tag {
    display: inline-block;
    font-family: 'Space Mono', monospace;
    font-size: .62rem;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--text-3);
    border: 1px solid var(--rule);
    padding: 2px 7px;
    border-radius: 2px;
    margin-bottom: 8px;
}

.personal-card h3 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(1.7rem, 3.2vw, 2.5rem);
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .02em;
    line-height: .95;
    color: #fff;
}

.personal-card-body {
    padding: 18px 22px;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.personal-card-desc {
    font-size: .88rem;
    line-height: 1.65;
    color: var(--text-2);
    margin: 0;
    flex: 1;
}

.personal-card-footer {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.personal-card-link {
    display: inline-block;
    font-family: 'Space Mono', monospace;
    font-size: .68rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid var(--rule);
    color: var(--off-white);
    padding: 6px 14px;
    border-radius: 2px;
    transition: border-color .15s, color .15s;
}

.personal-card-link:hover {
    border-color: rgba(255,255,255,.55);
    color: #fff;
}

.personal-card-link.is-primary {
    border-color: var(--cyan);
    color: var(--cyan);
}

.personal-card-link.is-primary:hover {
    background: var(--cyan);
    color: #000;
}

.personal-card-badge {
    font-family: 'Space Mono', monospace;
    font-size: .62rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--text-3);
    padding: 5px 10px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 2px;
}

/* ── Levelator page ─────────────────────────────────────────── */

.levelator-page {
    border-bottom-color: rgba(13, 143, 183, 0.28);
}

.levelator-breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 32px;
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--text-3);
}

.levelator-breadcrumb a {
    color: var(--cyan);
    text-decoration: none;
    transition: color .15s;
}

.levelator-breadcrumb a:hover { color: #fff; }
.lv-sep { opacity: 0.35; }

.levelator-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 420px);
    gap: 48px;
    align-items: start;
    margin-bottom: 48px;
}

.levelator-eyebrow {
    margin: 0 0 14px;
    font-family: 'Space Mono', monospace;
    font-size: 0.7rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--cyan);
}

.levelator-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.8rem, 6vw, 5.5rem);
    font-weight: 900;
    line-height: 0.9;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: #fff;
}

.levelator-kicker {
    margin: 14px 0 0;
    font-family: 'Space Grotesk', sans-serif;
    font-size: clamp(1rem, 1.6vw, 1.22rem);
    font-weight: 300;
    line-height: 1.4;
    color: var(--text-2);
    font-style: italic;
}

.levelator-spec-strip {
    border: 1px solid var(--rule);
    border-left: 3px solid var(--cyan);
    background: rgba(13, 143, 183, 0.05);
    display: flex;
    flex-direction: column;
    gap: 0;
    align-self: start;
}

.lv-spec {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    padding: 9px 14px;
    border-bottom: 1px solid var(--rule);
}

.lv-spec:last-child { border-bottom: none; }

.lv-spec-label {
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--text-3);
    white-space: nowrap;
    flex-shrink: 0;
}

.lv-spec-value {
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.04em;
    color: var(--off-white);
    text-align: right;
}

.lv-spec-warn { color: var(--orange); }

.levelator-story {
    max-width: 760px;
    display: grid;
    gap: 1.1rem;
    border-left: 2px solid rgba(13, 143, 183, 0.3);
    padding-left: 28px;
}

.levelator-story p {
    margin: 0;
    line-height: 1.72;
    font-size: clamp(0.95rem, 1.45vw, 1.06rem);
    color: var(--text-2);
}

.levelator-story em {
    font-style: italic;
    color: var(--off-white);
}

/* ── Download section ───────────────────────────────────────── */

.levelator-download-section {
    border-top: 1px solid rgba(13, 143, 183, 0.22);
}

.levelator-download-inner {
    max-width: 900px;
}

.levelator-download-header {
    margin-bottom: 32px;
}

.levelator-download-title {
    margin: 8px 0 10px;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.5rem, 6vw, 4.5rem);
    font-weight: 900;
    line-height: 0.88;
    text-transform: uppercase;
    color: #fff;
}

.levelator-download-sub {
    margin: 0;
    font-family: 'Space Grotesk', sans-serif;
    font-size: 0.92rem;
    color: var(--text-2);
    line-height: 1.5;
}

.levelator-download-grid {
    display: grid;
    gap: 10px;
    margin-bottom: 28px;
}

.levelator-dl-card {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 20px;
    padding: 18px 22px;
    border: 1px solid var(--rule);
    border-left: 3px solid rgba(13, 143, 183, 0.55);
    background: rgba(255, 255, 255, 0.025);
    transition: border-color .2s, background .2s;
}

.levelator-dl-card:hover {
    border-color: rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.045);
}

.levelator-dl-platform {
    margin: 0 0 4px;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(1.2rem, 2.2vw, 1.65rem);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #fff;
    line-height: 1;
}

.levelator-dl-meta {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.6rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-3);
}

.levelator-dl-card-action {
    display: flex;
    align-items: center;
    gap: 14px;
}

.levelator-dl-version {
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.06em;
    color: var(--text-3);
    white-space: nowrap;
}

.levelator-dl-btn {
    min-width: 180px;
    text-align: center;
    white-space: nowrap;
}

.levelator-download-note {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.05em;
    line-height: 1.6;
    color: var(--text-3);
    border-top: 1px solid var(--rule);
    padding-top: 20px;
}

@media (max-width: 860px) {
    .personal-grid {
        grid-template-columns: 1fr;
    }

    .levelator-head {
        grid-template-columns: 1fr;
    }

    .levelator-story {
        padding-left: 16px;
    }

    .levelator-dl-card {
        grid-template-columns: 1fr;
    }

    .levelator-dl-card-action {
        flex-direction: row-reverse;
        justify-content: flex-end;
    }

    .levelator-dl-btn {
        min-width: 0;
    }
}

.contact-terminal {
    text-align: center;
}

.contact-terminal.raincity-footer {
    min-height: clamp(40rem, 76vh, 56rem);
    padding-bottom: clamp(14rem, 24vh, 20rem);
}

.raincity-footer.theme-black::before {
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.015) 2px,
        rgba(0, 0, 0, 0.015) 4px
    );
}

.raincity-footer::after {
    opacity: 0.035;
}

.contact-terminal h2 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3.2rem, 11vw, 8rem);
    text-transform: uppercase;
    line-height: 0.82;
}

.contact-sub {
    margin: 0.6rem auto 1rem;
    max-width: 54ch;
    color: #bdbdbd;
}

.terminal-metadata {
    margin-top: 1.2rem;
    max-width: 840px;
    text-align: left;
}

.raincity-footer .terminal-metadata {
    margin-bottom: 0;
}

.terminal-metadata .spec-row {
    margin-top: 0.66rem;
    font-size: 0.72rem;
}

.status-square {
    display: inline-block;
    animation: blink 0.7s step-end infinite;
}

.status-dot {
    color: var(--acid);
    animation: blink 1.4s ease-in-out infinite;
}

.js-reveal {
    opacity: 0;
    transform: translateY(16px);
}

.js-reveal.is-visible {
    animation: reveal-up 450ms ease forwards;
}

.showcase-row:hover,
.showcase-row:focus-within,
.mini-showcase-card:hover,
.mini-showcase-card:focus-within,
.plugin-card:hover,
.plugin-card:focus-within,
.client-card:hover,
.client-card:focus-within,
.service-band:hover,
.service-band:focus-within {
    transform: translateY(-4px);
    box-shadow: 4px 4px 0 var(--orange);
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.site-footer {
    border-top: 1px solid var(--rule);
    padding: 1rem 1.2rem;
    font-family: 'Space Mono', monospace;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    font-size: 0.69rem;
    color: #8a8a8a;
    background: #0c0c0c;
}

.site-footer > p {
    margin: 0.85rem 0 0;
    text-align: center;
}

.site-footer-meta {
    max-width: 980px;
    margin: 0 auto 0.9rem;
    text-align: left;
}

.site-footer-meta .spec-row {
    margin-top: 0.5rem;
    color: #b5b5b5;
}

.site-footer-meta .spec-value {
    color: var(--off-white);
}

.site-footer-meta a:hover,
.site-footer-meta a:focus {
    color: var(--acid);
}

/* Account + legacy forms */
.mono {
    font-family: 'Space Mono', monospace;
    letter-spacing: 0.12em;
    font-size: 0.72rem;
    text-transform: uppercase;
}

.contact-form-wrap,
.account-auth-wrap,
.account-shell {
    max-width: 1080px;
    margin: 0 auto;
}

.contact-form,
.portal-card,
.account-tabs,
.account-grid,
.account-license-list,
.table-wrap {
    max-width: 1080px;
    overflow-x: auto;
}

.contact-form {
    display: grid;
    gap: 0.75rem;
}

.contact-form-raincity.contact-form-wrap {
    max-width: none;
    margin: 0;
    text-align: left;
}

.contact-form-raincity {
    min-height: clamp(34rem, 62vh, 48rem);
}

.contact-form-raincity.raincity-footer .ascii-static {
    opacity: 0.1;
    height: 100%;
}

.contact-form-panel {
    max-width: 1080px;
    margin: 0 auto;
    padding: clamp(1rem, 2.6vw, 1.4rem);
    border: 1px solid rgba(240, 237, 232, 0.24);
    background: rgba(240, 237, 232, 0.92);
    backdrop-filter: blur(1px);
}

.contact-confirmation {
    border: 1px solid rgba(10, 10, 10, 0.75);
    background: rgba(204, 252, 0, 0.16);
    color: var(--black);
    padding: 0.8rem 0.9rem;
}

.contact-confirmation p {
    margin: 0;
}

.contact-confirmation p + p {
    margin-top: 0.35rem;
}

.contact-form label {
    display: grid;
    gap: 0.32rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.contact-form-panel .contact-form label {
    color: var(--black);
}

.contact-form input,
.contact-form textarea,
.contact-form select,
.portal-table th,
.portal-table td {
    border: 1px solid var(--rule);
    background: #101010;
    color: var(--off-white);
    padding: 0.65rem;
    font-family: 'Space Grotesk', sans-serif;
}

.theme-offwhite .contact-form input,
.theme-offwhite .contact-form textarea,
.theme-offwhite .contact-form select {
    background: #fff;
    color: var(--black);
    border-color: rgba(10, 10, 10, 0.35);
}

.contact-form-panel .contact-form input,
.contact-form-panel .contact-form textarea,
.contact-form-panel .contact-form select {
    background: #fff;
    color: var(--black);
    border-color: rgba(10, 10, 10, 0.35);
}

.hp-field {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.account-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.account-tabs a {
    border: 1px solid var(--rule);
    padding: 0.45rem 0.55rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: #a9a9a9;
}

.account-tabs a.is-active,
.account-tabs a:hover,
.account-tabs a:focus {
    background: var(--acid);
    color: var(--black);
    border-color: var(--acid);
}

.account-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.account-license-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.portal-card {
    border: 1px solid var(--rule);
    background: var(--mid);
    padding: 1rem;
}

.portal-card h2,
.portal-card h3,
.account-title,
.account-section-title {
    margin: 0.35rem 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    text-transform: uppercase;
    font-size: clamp(2.2rem, 6vw, 4.4rem);
    line-height: 0.82;
}

.portal-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 620px;
}

.portal-table th,
.portal-table td {
    text-align: left;
}

.portal-table th {
    font-family: 'Space Mono', monospace;
    font-size: 0.64rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: #9d9d9d;
}

.portal-banner {
    border: 1px solid var(--acid);
    background: #18200b;
    padding: 1rem;
    margin-bottom: 1rem;
}

.portal-banner a {
    color: var(--acid);
}

.cc-hero .hero-plasma,
.gi-hero .hero-plasma,
.pk-hero .hero-plasma,
.os-hero .hero-plasma,
.iw-hero .hero-plasma,
.sf-hero .hero-plasma {
    opacity: 0.28;
    mix-blend-mode: multiply;
}

.cc-hero {
    min-height: calc(100dvh - var(--nav-height));
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.55rem;
}

.cc-hero .ascii-static {
    color: rgba(10, 10, 10, 0.72);
    opacity: 0.05;
}

.cc-hero .ascii-rain {
    opacity: 0.04;
}

.cc-hero-title {
    max-width: 12ch;
    font-size: clamp(2.5rem, 8.8vw, 7rem);
    line-height: 0.83;
}

.cc-hero-problem {
    margin: 1.08rem auto 0;
    max-width: 74ch;
    color: rgba(10, 10, 10, 0.86);
    line-height: 1.55;
    font-size: clamp(1rem, 2.1vw, 1.14rem);
}

.cc-spec-strip {
    max-width: 1440px;
    width: 100%;
    margin: 0.35rem auto 0;
    border: 1px solid rgba(10, 10, 10, 0.65);
    background: var(--black);
    color: var(--off-white);
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow-x: auto;
    padding: 0.55rem 0.72rem;
}

.cc-hero-actions {
    max-width: 1440px;
    margin: 0.45rem auto 0;
    display: flex;
    gap: 0.55rem;
    align-items: center;
    flex-wrap: wrap;
}

.cc-inline-checkout {
    margin: 0;
}

.cc-social-proof {
    max-width: 1440px;
    margin: 0.28rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.64);
}

.cc-btn-dark,
.cc-btn-outline,
.cc-btn-orange,
.cc-btn-outline-dark,
.cc-btn-acid {
    font-family: 'Space Mono', monospace;
    letter-spacing: 0.09em;
    font-size: 0.68rem;
    border-width: 1px;
}

.cc-btn-dark {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
}

.cc-btn-dark:hover,
.cc-btn-dark:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--black);
    color: var(--off-white);
}

.cc-btn-outline {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.cc-btn-outline:hover,
.cc-btn-outline:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.cc-btn-orange {
    border-color: var(--black);
    background: var(--orange);
    color: var(--black);
}

.cc-btn-orange:hover,
.cc-btn-orange:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--orange);
}

.cc-btn-outline-dark {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.cc-btn-outline-dark:hover,
.cc-btn-outline-dark:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.cc-btn-acid {
    border-color: var(--acid);
    background: var(--acid);
    color: var(--black);
}

.cc-btn-acid:hover,
.cc-btn-acid:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--acid);
}

.cc-problem-grid {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    gap: 1rem;
    align-items: start;
}

.cc-section-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.5rem, 6vw, 5.8rem);
    line-height: 0.82;
    text-transform: uppercase;
    letter-spacing: -0.01em;
}

.cc-problem-copy p {
    max-width: 72ch;
    line-height: 1.62;
    margin: 0.6rem 0 0;
}

.cc-problem-callouts {
    margin-top: 0.95rem;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.65rem;
}

.cc-problem-callout {
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #fff;
    padding: 0.7rem;
}

.cc-callout-main {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--orange);
}

.cc-callout-main strong {
    color: var(--black);
    font-size: 0.7rem;
}

.cc-callout-dots {
    flex: 1;
    border-bottom: 1px dotted rgba(252, 72, 0, 0.8);
}

.cc-problem-callout > p:last-child {
    margin: 0.48rem 0 0;
    font-size: 0.88rem;
    line-height: 1.46;
    color: rgba(10, 10, 10, 0.84);
}

.cc-problem-visual {
    border: 1px solid rgba(10, 10, 10, 0.38);
    background: #101010;
    color: var(--off-white);
    padding: 0.8rem;
}

.cc-problem-visual pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.74rem;
    line-height: 1.45;
    white-space: pre;
    overflow-x: auto;
}

.cc-solution {
    text-align: center;
}

.cc-solution-title {
    margin: 0 auto;
    max-width: 11ch;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--acid);
}

.cc-solution-copy {
    margin: 0.68rem auto 1.15rem;
    max-width: 640px;
    line-height: 1.6;
    color: rgba(240, 237, 232, 0.82);
}

.cc-solution-steps {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 0.7rem;
    align-items: stretch;
}

.cc-step-card {
    border: 1px solid #2a2a2a;
    background: #141414;
    padding: 0.8rem;
    text-align: left;
}

.cc-step-number {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.8rem, 5vw, 4.4rem);
    line-height: 0.75;
    color: var(--acid);
}

.cc-step-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.1rem, 4vw, 3rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--off-white);
}

.cc-step-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.8);
}

.cc-step-spec {
    margin-top: 0.64rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.cc-step-arrow {
    align-self: center;
    justify-self: center;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.4rem, 5vw, 4rem);
    line-height: 1;
    color: var(--acid);
    opacity: 0.28;
    animation: cc-arrow-pulse 2.2s ease-in-out infinite;
}

.cc-step-arrow.arrow-2 {
    animation-delay: 1.1s;
}

.cc-terminal-card {
    max-width: 1440px;
    margin: 0 auto;
    border: 1px solid #2a2a2a;
    background: #0a0a0a;
    color: var(--off-white);
}

.cc-terminal-head {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    border-bottom: 1px solid #2a2a2a;
    padding: 0.66rem 0.8rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.cc-terminal-body {
    padding: 0.75rem 0.8rem 0.2rem;
}

.cc-terminal-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.55rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.cc-terminal-row > span:first-child {
    order: 1;
    white-space: nowrap;
}

.cc-terminal-row::after {
    content: '........................................................';
    order: 2;
    flex: 1;
    overflow: hidden;
    color: rgba(240, 237, 232, 0.2);
    white-space: nowrap;
}

.cc-terminal-row > span:last-child {
    order: 3;
    white-space: nowrap;
}

.cc-terminal-divider {
    border-top: 1px solid #2a2a2a;
}

.cc-terminal-list-wrap {
    padding: 0.72rem 0.8rem 0.8rem;
}

.cc-terminal-subhead {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.cc-terminal-list-wrap ul {
    margin: 0.48rem 0 0;
    padding-left: 1rem;
    display: grid;
    gap: 0.24rem;
}

.cc-feature-module {
    border-bottom: 1px solid var(--rule);
}

.cc-feature-module .section-comment {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0.8rem clamp(1rem, 3vw, 2.2rem);
}

.cc-feature-band {
    position: relative;
    border-top: 1px solid var(--rule);
}

.cc-feature-band.is-light {
    background: var(--off-white);
    color: var(--black);
}

.cc-feature-band.is-dark {
    background: var(--black);
    color: var(--off-white);
}

.cc-feature-band.is-dark::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
}

.cc-feature-band.is-dark::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.22) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.055;
    animation: noise-drift 20s linear infinite;
}

.cc-feature-inner {
    position: relative;
    z-index: 2;
    max-width: 1440px;
    margin: 0 auto;
    padding: clamp(1.5rem, 3.4vw, 2.3rem) clamp(1rem, 3vw, 2.2rem);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: center;
}

.cc-feature-inner.is-reverse .cc-feature-copy {
    order: 2;
}

.cc-feature-inner.is-reverse .cc-feature-visual {
    order: 1;
}

.cc-feature-copy h3 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.4rem, 5.4vw, 4.8rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.cc-feature-band.is-light .cc-feature-copy h3 {
    color: var(--orange);
}

.cc-feature-band.is-dark .cc-feature-copy h3 {
    color: var(--acid);
}

.cc-feature-intro {
    margin: 0.5rem 0 0;
    font-size: clamp(1rem, 2.1vw, 1.2rem);
    line-height: 1.56;
}

.cc-feature-band.is-light .cc-feature-intro {
    color: rgba(10, 10, 10, 0.88);
}

.cc-feature-band.is-dark .cc-feature-intro {
    color: rgba(240, 237, 232, 0.84);
}

.cc-feature-bullets {
    margin: 0.65rem 0 0;
    padding-left: 1.05rem;
    display: grid;
    gap: 0.34rem;
}

.cc-feature-bullets li {
    line-height: 1.5;
}

.cc-feature-spec {
    margin: 0.72rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.cc-feature-band.is-light .cc-feature-spec {
    color: var(--orange);
}

.cc-feature-band.is-dark .cc-feature-spec {
    color: var(--acid);
}

.cc-feature-shot,
.cc-showcase-media,
.cc-showcase-placeholder {
    position: relative;
    overflow: hidden;
}

.cc-feature-shot {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    animation: cc-shot-pulse 2.1s ease-in-out infinite;
}

.cc-feature-shot-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.cc-feature-shot.has-image {
    padding: 0;
    justify-content: flex-end;
}

.cc-feature-shot.has-image::before {
    display: none;
}

.cc-feature-shot.has-image::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 10, 10, 0.08) 0%, rgba(10, 10, 10, 0.72) 100%);
    pointer-events: none;
}

.cc-feature-band.is-dark .cc-feature-shot {
    border-color: rgba(240, 237, 232, 0.34);
    background: #121212;
}

.cc-feature-shot::before,
.cc-showcase-placeholder::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 22%;
    background: rgba(252, 72, 0, 0.17);
    transform: translateX(-150%);
    animation: cc-shot-shimmer 2.6s linear infinite;
}

.cc-feature-shot-tag {
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    position: relative;
    z-index: 1;
}

.cc-feature-shot.has-image .cc-feature-shot-tag {
    position: absolute;
    top: 0.52rem;
    left: 0.58rem;
    padding: 0.12rem 0.34rem;
    border: 1px solid rgba(240, 237, 232, 0.32);
    background: rgba(10, 10, 10, 0.68);
}

.cc-feature-shot-label {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
    align-self: flex-start;
    position: relative;
    z-index: 1;
}

.cc-feature-shot.has-image .cc-feature-shot-label {
    position: absolute;
    left: 0.58rem;
    bottom: 0.5rem;
    margin: 0;
    padding: 0.08rem 0.32rem;
    border: 1px solid rgba(204, 252, 0, 0.3);
    background: rgba(10, 10, 10, 0.68);
}

.cc-feature-ascii {
    border: 1px solid #3e5a16;
    background: #0f1209;
    color: var(--acid);
    padding: 0.75rem;
    position: relative;
}

.cc-feature-ascii pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.74rem;
    line-height: 1.46;
    white-space: pre;
    overflow-x: auto;
}

.cc-ascii-cursor {
    position: absolute;
    right: 0.7rem;
    bottom: 0.5rem;
    font-family: 'Space Mono', monospace;
    animation: blink 0.7s step-end infinite;
}

.cc-showcase .cc-section-title {
    color: var(--off-white);
}

.cc-showcase-subhead {
    max-width: 72ch;
    margin: 0.62rem auto 0;
    line-height: 1.58;
    color: rgba(240, 237, 232, 0.78);
}

.cc-showcase-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.cc-showcase-card {
    border: 1px solid var(--rule);
    background: var(--mid);
    padding: 0.72rem;
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.cc-showcase-card:hover,
.cc-showcase-card:focus-within {
    transform: translate(-2px, -2px);
    box-shadow: 4px 4px 0 var(--orange);
}

.cc-showcase-media {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(240, 237, 232, 0.28);
    background: #111;
}

.cc-showcase-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 180ms ease;
}

.cc-showcase-card:hover .cc-showcase-image,
.cc-showcase-card:focus-within .cc-showcase-image {
    transform: scale(1.012);
}

.cc-showcase-placeholder {
    position: absolute;
    inset: 0;
    border: 1px dashed rgba(240, 237, 232, 0.42);
    background: linear-gradient(160deg, #151515 0%, #0d0d0d 100%);
    animation: cc-shot-pulse 2.2s ease-in-out infinite;
}

.cc-showcase-screen {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    padding: 0.1rem 0.33rem;
    border: 1px solid rgba(240, 237, 232, 0.3);
    background: rgba(10, 10, 10, 0.78);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.72);
    z-index: 2;
}

.cc-showcase-label {
    margin: 0.56rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.cc-showcase-caption {
    margin: 0.34rem 0 0;
    line-height: 1.48;
    color: rgba(240, 237, 232, 0.74);
}

.cc-use-case-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.cc-use-case-card {
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.8rem;
}

.cc-use-case-index {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.cc-use-case-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4.2vw, 3.1rem);
    line-height: 0.84;
    text-transform: uppercase;
}

.cc-use-case-card > p {
    margin: 0.55rem 0 0;
    line-height: 1.52;
}

.cc-use-case-spec {
    display: flex;
    align-items: flex-start;
    gap: 0.42rem;
    margin-top: 0.58rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cc-use-case-spec span:first-child {
    white-space: nowrap;
    color: rgba(240, 237, 232, 0.68);
}

.cc-use-case-spec span:last-child {
    color: var(--off-white);
}

.cc-pricing-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8.4vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--black);
}

.cc-pricing-subhead {
    margin: 0.62rem auto 0;
    max-width: 72ch;
    line-height: 1.54;
    color: rgba(10, 10, 10, 0.84);
}

.cc-pricing-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.cc-pricing-card {
    border: 1px solid rgba(10, 10, 10, 0.44);
    background: rgba(240, 237, 232, 0.95);
    color: var(--black);
    padding: 0.8rem;
}

.cc-pricing-card.is-popular {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.cc-popular-badge {
    margin: 0 0 0.35rem;
    display: inline-block;
    border: 1px solid var(--acid);
    padding: 0.2rem 0.36rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.6rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--black);
    background: var(--acid);
}

.cc-pricing-tier {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.cc-pricing-price {
    margin: 0.28rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.3rem, 5vw, 3.5rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.cc-pricing-limit {
    margin: 0.24rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    opacity: 0.86;
}

.cc-tier-checkout {
    margin-top: 0.72rem;
}

.cc-tier-checkout .btn {
    width: 100%;
    text-align: center;
}

.cc-pricing-reassurance {
    max-width: 1440px;
    margin: 0.95rem auto 0;
    border-top: 1px solid rgba(10, 10, 10, 0.28);
    padding-top: 0.6rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.8);
}

.cc-faq .cc-section-title {
    color: var(--off-white);
}

.cc-faq-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
}

.cc-faq-card {
    border: 1px solid var(--rule);
    background: #151515;
    padding: 0.75rem;
}

.cc-faq-badge {
    margin: 0 0 0.32rem;
    display: inline-block;
    border: 1px solid var(--orange);
    color: var(--orange);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    padding: 0.15rem 0.3rem;
}

.cc-faq-card h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.48;
}

.cc-faq-card p {
    margin: 0.5rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.72);
}

.cc-final-cta {
    text-align: center;
}

.cc-final-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8.4vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--black);
}

.cc-final-line {
    margin: 0.58rem auto 0;
    max-width: 64ch;
    line-height: 1.55;
    color: rgba(10, 10, 10, 0.82);
}

.cc-final-actions {
    margin-top: 0.78rem;
    display: flex;
    justify-content: center;
    gap: 0.55rem;
    flex-wrap: wrap;
}

.cc-final-spec {
    margin: 0.75rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.5);
}

.cc-sticky-purchase {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 56px;
    border-top: 1px solid #2f2f2f;
    background: var(--black);
    z-index: 140;
    transform: translateY(56px);
    transition: transform 220ms ease;
}

.cc-sticky-purchase.is-visible {
    transform: translateY(0);
}

.cc-sticky-inner {
    max-width: 1440px;
    margin: 0 auto;
    height: 100%;
    padding: 0 1rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 0.75rem;
    align-items: center;
}

.cc-sticky-left {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.56);
}

.cc-sticky-center {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: 1.24rem;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: var(--off-white);
}

.gi-hero {
    min-height: calc(100dvh - var(--nav-height));
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.55rem;
}

.gi-hero .ascii-static {
    color: rgba(10, 10, 10, 0.72);
    opacity: 0.05;
}

.gi-hero .ascii-rain {
    opacity: 0.04;
}

.gi-hero-title {
    max-width: 11ch;
    font-size: clamp(2.5rem, 8.8vw, 7rem);
    line-height: 0.83;
}

.gi-hero-problem {
    margin: 1.08rem auto 0;
    max-width: 76ch;
    color: rgba(10, 10, 10, 0.86);
    line-height: 1.55;
    font-size: clamp(1rem, 2.1vw, 1.14rem);
}

.gi-spec-strip {
    max-width: 1440px;
    width: 100%;
    margin: 0.35rem auto 0;
    border: 1px solid rgba(10, 10, 10, 0.65);
    background: var(--black);
    color: var(--off-white);
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow-x: auto;
    padding: 0.55rem 0.72rem;
}

.gi-hero-actions {
    max-width: 1440px;
    margin: 0.45rem auto 0;
    display: flex;
    gap: 0.55rem;
    align-items: center;
    flex-wrap: wrap;
}

.gi-inline-checkout {
    margin: 0;
}

.gi-proof-line {
    max-width: 1440px;
    margin: 0.28rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.64);
}

.gi-btn-dark,
.gi-btn-outline,
.gi-btn-orange,
.gi-btn-outline-dark,
.gi-btn-acid {
    font-family: 'Space Mono', monospace;
    letter-spacing: 0.09em;
    font-size: 0.68rem;
    border-width: 1px;
}

.gi-btn-dark {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
}

.gi-btn-dark:hover,
.gi-btn-dark:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--black);
    color: var(--off-white);
}

.gi-btn-outline {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.gi-btn-outline:hover,
.gi-btn-outline:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.gi-btn-orange {
    border-color: var(--black);
    background: var(--orange);
    color: var(--black);
}

.gi-btn-orange:hover,
.gi-btn-orange:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--orange);
}

.gi-btn-outline-dark {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.gi-btn-outline-dark:hover,
.gi-btn-outline-dark:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.gi-btn-acid {
    border-color: var(--acid);
    background: var(--acid);
    color: var(--black);
}

.gi-btn-acid:hover,
.gi-btn-acid:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--acid);
}

.gi-problem-grid {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    gap: 1rem;
    align-items: start;
}

.gi-section-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.5rem, 6vw, 5.8rem);
    line-height: 0.82;
    text-transform: uppercase;
    letter-spacing: -0.01em;
}

.gi-problem-copy p {
    max-width: 72ch;
    line-height: 1.62;
    margin: 0.6rem 0 0;
}

.gi-problem-callouts {
    margin-top: 0.95rem;
    display: grid;
    gap: 0.62rem;
}

.gi-problem-callout {
    margin: 0;
    display: flex;
    gap: 0.38rem;
    align-items: center;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #fff;
    padding: 0.46rem 0.6rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.64rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.gi-problem-callout strong {
    color: var(--black);
    font-size: 0.69rem;
}

.gi-callout-dots {
    flex: 1;
    border-bottom: 1px dotted rgba(252, 72, 0, 0.8);
}

.gi-problem-visual {
    border: 1px solid rgba(10, 10, 10, 0.38);
    background: #101010;
    color: var(--off-white);
    padding: 0.8rem;
}

.gi-problem-visual pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.74rem;
    line-height: 1.45;
    white-space: pre;
    overflow-x: auto;
}

.gi-solution,
.gi-showcase,
.gi-faq {
    position: relative;
    isolation: isolate;
}

.gi-solution::before,
.gi-showcase::before,
.gi-faq::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
}

.gi-solution::after,
.gi-showcase::after,
.gi-faq::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.22) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.055;
    animation: noise-drift 20s linear infinite;
}

.gi-solution > *,
.gi-showcase > *,
.gi-faq > * {
    position: relative;
    z-index: 2;
}

.gi-solution {
    text-align: center;
}

.gi-solution-title {
    margin: 0 auto;
    max-width: 11ch;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--acid);
}

.gi-solution-copy {
    margin: 0.68rem auto 1.15rem;
    max-width: 640px;
    line-height: 1.6;
    color: rgba(240, 237, 232, 0.82);
}

.gi-solution-steps {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 0.7rem;
    align-items: stretch;
}

.gi-step-card {
    border: 1px solid #2a2a2a;
    background: #141414;
    padding: 0.8rem;
    text-align: left;
}

.gi-step-number {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.8rem, 5vw, 4.4rem);
    line-height: 0.75;
    color: var(--acid);
}

.gi-step-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--off-white);
}

.gi-step-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.8);
}

.gi-step-spec {
    margin-top: 0.64rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.gi-step-arrow {
    align-self: center;
    justify-self: center;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.4rem, 5vw, 4rem);
    line-height: 1;
    color: var(--acid);
    opacity: 0.28;
    animation: cc-arrow-pulse 2.2s ease-in-out infinite;
}

.gi-step-arrow.arrow-2 {
    animation-delay: 1.1s;
}

.gi-terminal-card {
    max-width: 1440px;
    margin: 0 auto;
    border: 1px solid #2a2a2a;
    background: #0a0a0a;
    color: var(--off-white);
}

.gi-terminal-head {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    border-bottom: 1px solid #2a2a2a;
    padding: 0.66rem 0.8rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.gi-terminal-body {
    padding: 0.75rem 0.8rem 0.2rem;
}

.gi-terminal-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.55rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.gi-terminal-row > span:first-child {
    order: 1;
    white-space: nowrap;
}

.gi-terminal-row::after {
    content: '........................................................';
    order: 2;
    flex: 1;
    overflow: hidden;
    color: rgba(240, 237, 232, 0.2);
    white-space: nowrap;
}

.gi-terminal-row > span:last-child {
    order: 3;
    white-space: nowrap;
}

.gi-terminal-divider {
    border-top: 1px solid #2a2a2a;
}

.gi-terminal-list-wrap {
    padding: 0.72rem 0.8rem 0.8rem;
}

.gi-terminal-subhead {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.gi-terminal-list-wrap ul {
    margin: 0.48rem 0 0;
    padding-left: 1rem;
    display: grid;
    gap: 0.24rem;
}

.gi-feature-module {
    border-bottom: 1px solid var(--rule);
}

.gi-feature-module .section-comment {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0.8rem clamp(1rem, 3vw, 2.2rem);
}

.gi-feature-band {
    position: relative;
    border-top: 1px solid var(--rule);
}

.gi-feature-band.is-light {
    background: var(--off-white);
    color: var(--black);
}

.gi-feature-band.is-dark {
    background: var(--black);
    color: var(--off-white);
}

.gi-feature-band.is-dark::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
}

.gi-feature-band.is-dark::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.22) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.055;
    animation: noise-drift 20s linear infinite;
}

.gi-feature-inner {
    position: relative;
    z-index: 2;
    max-width: 1440px;
    margin: 0 auto;
    padding: clamp(1.5rem, 3.4vw, 2.3rem) clamp(1rem, 3vw, 2.2rem);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: center;
}

.gi-feature-inner.is-reverse .gi-feature-copy {
    order: 2;
}

.gi-feature-inner.is-reverse .gi-feature-visual {
    order: 1;
}

.gi-feature-copy h3 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.3rem, 5.4vw, 4.8rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.gi-feature-band.is-light .gi-feature-copy h3 {
    color: var(--orange);
}

.gi-feature-band.is-dark .gi-feature-copy h3 {
    color: var(--acid);
}

.gi-feature-intro {
    margin: 0.5rem 0 0;
    font-size: clamp(1rem, 2.1vw, 1.2rem);
    line-height: 1.56;
}

.gi-feature-band.is-light .gi-feature-intro {
    color: rgba(10, 10, 10, 0.88);
}

.gi-feature-band.is-dark .gi-feature-intro {
    color: rgba(240, 237, 232, 0.84);
}

.gi-feature-bullets {
    margin: 0.65rem 0 0;
    padding-left: 1.05rem;
    display: grid;
    gap: 0.34rem;
}

.gi-feature-bullets li {
    line-height: 1.5;
}

.gi-feature-spec {
    margin: 0.72rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.gi-feature-band.is-light .gi-feature-spec {
    color: var(--orange);
}

.gi-feature-band.is-dark .gi-feature-spec {
    color: var(--acid);
}

.gi-feature-shot,
.gi-showcase-media,
.gi-showcase-placeholder {
    position: relative;
    overflow: hidden;
}

.gi-feature-shot {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    animation: cc-shot-pulse 2.1s ease-in-out infinite;
}

.gi-feature-shot-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.gi-feature-shot.has-image {
    padding: 0;
    justify-content: flex-end;
}

.gi-feature-shot.has-image::before {
    display: none;
}

.gi-feature-shot.has-image::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 10, 10, 0.08) 0%, rgba(10, 10, 10, 0.72) 100%);
    pointer-events: none;
}

.gi-feature-band.is-dark .gi-feature-shot {
    border-color: rgba(240, 237, 232, 0.34);
    background: #121212;
}

.gi-feature-shot::before,
.gi-showcase-placeholder::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 22%;
    background: rgba(252, 72, 0, 0.17);
    transform: translateX(-150%);
    animation: cc-shot-shimmer 2.6s linear infinite;
}

.gi-feature-shot-tag {
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    position: relative;
    z-index: 1;
}

.gi-feature-shot.has-image .gi-feature-shot-tag {
    position: absolute;
    top: 0.52rem;
    left: 0.58rem;
    padding: 0.12rem 0.34rem;
    border: 1px solid rgba(240, 237, 232, 0.32);
    background: rgba(10, 10, 10, 0.68);
}

.gi-feature-shot-label {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
    align-self: flex-start;
    position: relative;
    z-index: 1;
}

.gi-feature-shot.has-image .gi-feature-shot-label {
    position: absolute;
    left: 0.58rem;
    bottom: 0.5rem;
    margin: 0;
    padding: 0.08rem 0.32rem;
    border: 1px solid rgba(204, 252, 0, 0.3);
    background: rgba(10, 10, 10, 0.68);
}

.gi-feature-ascii {
    border: 1px solid #3e5a16;
    background: #0f1209;
    color: var(--acid);
    padding: 0.75rem;
    position: relative;
}

.gi-feature-ascii pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.74rem;
    line-height: 1.46;
    white-space: pre;
    overflow-x: auto;
}

.gi-ascii-cursor {
    position: absolute;
    right: 0.7rem;
    bottom: 0.5rem;
    font-family: 'Space Mono', monospace;
    animation: blink 0.7s step-end infinite;
}

.gi-showcase .gi-section-title,
.gi-faq .gi-section-title {
    color: var(--off-white);
}

.gi-showcase-subhead {
    max-width: 72ch;
    margin: 0.62rem auto 0;
    line-height: 1.58;
    color: rgba(240, 237, 232, 0.78);
}

.gi-showcase-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.gi-showcase-card {
    border: 1px solid var(--rule);
    background: var(--mid);
    padding: 0.72rem;
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.gi-showcase-card:hover,
.gi-showcase-card:focus-within {
    transform: translate(-2px, -2px);
    box-shadow: 4px 4px 0 var(--orange);
}

.gi-showcase-media {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(240, 237, 232, 0.28);
    background: #111;
}

.gi-showcase-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 180ms ease;
}

.gi-showcase-card:hover .gi-showcase-image,
.gi-showcase-card:focus-within .gi-showcase-image {
    transform: scale(1.012);
}

.gi-showcase-placeholder {
    position: absolute;
    inset: 0;
    border: 1px dashed rgba(240, 237, 232, 0.42);
    background: linear-gradient(160deg, #151515 0%, #0d0d0d 100%);
    animation: cc-shot-pulse 2.2s ease-in-out infinite;
}

.gi-showcase-screen {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    padding: 0.1rem 0.33rem;
    border: 1px solid rgba(240, 237, 232, 0.3);
    background: rgba(10, 10, 10, 0.78);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.72);
    z-index: 2;
}

.gi-showcase-label {
    margin: 0.56rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.gi-showcase-caption {
    margin: 0.34rem 0 0;
    line-height: 1.48;
    color: rgba(240, 237, 232, 0.74);
}

.gi-use-case-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.gi-use-case-card {
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.8rem;
}

.gi-use-case-index {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.gi-use-case-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4.2vw, 3.1rem);
    line-height: 0.84;
    text-transform: uppercase;
}

.gi-use-case-card > p {
    margin: 0.55rem 0 0;
    line-height: 1.52;
}

.gi-use-case-spec {
    display: flex;
    align-items: flex-start;
    gap: 0.42rem;
    margin-top: 0.58rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gi-use-case-spec span:first-child {
    white-space: nowrap;
    color: rgba(240, 237, 232, 0.68);
}

.gi-use-case-spec span:last-child {
    color: var(--off-white);
}

.gi-pricing-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8.4vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--black);
}

.gi-pricing-subhead {
    margin: 0.62rem auto 0;
    max-width: 72ch;
    line-height: 1.54;
    color: rgba(10, 10, 10, 0.84);
}

.gi-pricing-value {
    margin: 0.5rem auto 0;
    max-width: 76ch;
    line-height: 1.56;
    color: rgba(10, 10, 10, 0.84);
    font-weight: 500;
}

.gi-pricing-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.gi-pricing-card {
    border: 1px solid rgba(10, 10, 10, 0.44);
    background: rgba(240, 237, 232, 0.95);
    color: var(--black);
    padding: 0.8rem;
}

.gi-pricing-card.is-popular {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.gi-popular-badge {
    margin: 0 0 0.35rem;
    display: inline-block;
    border: 1px solid var(--acid);
    padding: 0.2rem 0.36rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.6rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--black);
    background: var(--acid);
}

.gi-pricing-tier {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.gi-pricing-price {
    margin: 0.28rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.3rem, 5vw, 3.5rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.gi-pricing-limit {
    margin: 0.24rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    opacity: 0.86;
}

.gi-tier-checkout {
    margin-top: 0.72rem;
}

.gi-tier-checkout .btn {
    width: 100%;
    text-align: center;
}

.gi-pricing-reassurance {
    max-width: 1440px;
    margin: 0.95rem auto 0;
    border-top: 1px solid rgba(10, 10, 10, 0.28);
    padding-top: 0.6rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.8);
}

.gi-faq-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
}

.gi-faq-card {
    border: 1px solid var(--rule);
    background: #151515;
    padding: 0.75rem;
}

.gi-faq-badge {
    margin: 0 0 0.32rem;
    display: inline-block;
    border: 1px solid var(--orange);
    color: var(--orange);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    padding: 0.15rem 0.3rem;
}

.gi-faq-card h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.48;
}

.gi-faq-card p {
    margin: 0.5rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.72);
}

.gi-final-cta {
    text-align: center;
}

.gi-final-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8.4vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--black);
}

.gi-final-line {
    margin: 0.58rem auto 0;
    max-width: 64ch;
    line-height: 1.55;
    color: rgba(10, 10, 10, 0.82);
}

.gi-final-actions {
    margin-top: 0.78rem;
    display: flex;
    justify-content: center;
    gap: 0.55rem;
    flex-wrap: wrap;
}

.gi-final-spec {
    margin: 0.75rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.5);
}

.gi-cross-sell-title {
    margin: 0;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.1rem, 4.4vw, 3.8rem);
    line-height: 0.88;
    text-transform: uppercase;
    color: var(--black);
}

.gi-cross-sell-grid {
    max-width: 1440px;
    margin: 0.8rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.gi-cross-sell-card {
    border: 1px solid rgba(10, 10, 10, 0.38);
    background: #fff;
    color: var(--black);
    padding: 0.7rem;
}

.gi-cross-sell-head {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.gi-cross-sell-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
}

.gi-cross-sell-card a {
    display: inline-block;
    margin-top: 0.55rem;
    border: 1px solid var(--black);
    padding: 0.3rem 0.36rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gi-cross-sell-card a:hover,
.gi-cross-sell-card a:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.gi-sticky-purchase {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 56px;
    border-top: 1px solid #2f2f2f;
    background: var(--black);
    z-index: 140;
    transform: translateY(56px);
    transition: transform 220ms ease;
}

.gi-sticky-purchase.is-visible {
    transform: translateY(0);
}

.gi-sticky-inner {
    max-width: 1440px;
    margin: 0 auto;
    height: 100%;
    padding: 0 1rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 0.75rem;
    align-items: center;
}

.gi-sticky-left {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.56);
}

.gi-sticky-center {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: 1.24rem;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: var(--off-white);
}

.pk-hero {
    min-height: calc(100dvh - var(--nav-height));
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.55rem;
}

.pk-hero .ascii-static {
    color: rgba(10, 10, 10, 0.72);
    opacity: 0.05;
}

.pk-hero .ascii-rain {
    opacity: 0.04;
}

.pk-hero-title {
    max-width: 11ch;
    font-size: clamp(2.5rem, 8.8vw, 7rem);
    line-height: 0.83;
}

.pk-hero-problem {
    margin: 1.08rem auto 0;
    max-width: 76ch;
    color: rgba(10, 10, 10, 0.86);
    line-height: 1.55;
    font-size: clamp(1rem, 2.1vw, 1.14rem);
}

.pk-spec-strip {
    max-width: 1440px;
    width: 100%;
    margin: 0.35rem auto 0;
    border: 1px solid rgba(10, 10, 10, 0.65);
    background: var(--black);
    color: var(--off-white);
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow-x: auto;
    padding: 0.55rem 0.72rem;
}

.pk-hero-actions {
    max-width: 1440px;
    margin: 0.45rem auto 0;
    display: flex;
    gap: 0.55rem;
    align-items: center;
    flex-wrap: wrap;
}

.pk-inline-checkout {
    margin: 0;
}

.pk-proof-line {
    max-width: 1440px;
    margin: 0.28rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.64);
}

.pk-btn-dark,
.pk-btn-outline,
.pk-btn-orange,
.pk-btn-outline-dark,
.pk-btn-acid {
    font-family: 'Space Mono', monospace;
    letter-spacing: 0.09em;
    font-size: 0.68rem;
    border-width: 1px;
}

.pk-btn-dark {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
}

.pk-btn-dark:hover,
.pk-btn-dark:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--black);
    color: var(--off-white);
}

.pk-btn-outline {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.pk-btn-outline:hover,
.pk-btn-outline:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.pk-btn-orange {
    border-color: var(--black);
    background: var(--orange);
    color: var(--black);
}

.pk-btn-orange:hover,
.pk-btn-orange:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--orange);
}

.pk-btn-outline-dark {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.pk-btn-outline-dark:hover,
.pk-btn-outline-dark:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.pk-btn-acid {
    border-color: var(--acid);
    background: var(--acid);
    color: var(--black);
}

.pk-btn-acid:hover,
.pk-btn-acid:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--acid);
}

.pk-problem-grid {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    gap: 1rem;
    align-items: start;
}

.pk-section-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.5rem, 6vw, 5.8rem);
    line-height: 0.82;
    text-transform: uppercase;
    letter-spacing: -0.01em;
}

.pk-problem-copy p {
    max-width: 72ch;
    line-height: 1.62;
    margin: 0.6rem 0 0;
}

.pk-problem-callouts {
    margin-top: 0.95rem;
    display: grid;
    gap: 0.62rem;
}

.pk-problem-callout {
    margin: 0;
    display: flex;
    gap: 0.38rem;
    align-items: center;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #fff;
    padding: 0.46rem 0.6rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.64rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.pk-problem-callout strong {
    color: var(--black);
    font-size: 0.69rem;
}

.pk-callout-dots {
    flex: 1;
    border-bottom: 1px dotted rgba(252, 72, 0, 0.8);
}

.pk-problem-visual {
    border: 1px solid rgba(10, 10, 10, 0.38);
    background: #101010;
    color: var(--off-white);
    padding: 0.8rem;
}

.pk-problem-visual pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.74rem;
    line-height: 1.45;
    white-space: pre;
    overflow-x: auto;
}

.pk-solution,
.pk-showcase,
.pk-faq {
    position: relative;
    isolation: isolate;
}

.pk-solution::before,
.pk-showcase::before,
.pk-faq::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
}

.pk-solution::after,
.pk-showcase::after,
.pk-faq::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.22) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.055;
    animation: noise-drift 20s linear infinite;
}

.pk-solution > *,
.pk-showcase > *,
.pk-faq > * {
    position: relative;
    z-index: 2;
}

.pk-solution {
    text-align: center;
}

.pk-solution-title {
    margin: 0 auto;
    max-width: 11ch;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--acid);
}

.pk-solution-copy {
    margin: 0.68rem auto 1.15rem;
    max-width: 640px;
    line-height: 1.6;
    color: rgba(240, 237, 232, 0.82);
}

.pk-solution-steps {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 0.7rem;
    align-items: stretch;
}

.pk-step-card {
    border: 1px solid #2a2a2a;
    background: #141414;
    padding: 0.8rem;
    text-align: left;
}

.pk-step-number {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.8rem, 5vw, 4.4rem);
    line-height: 0.75;
    color: var(--acid);
}

.pk-step-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--off-white);
}

.pk-step-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.8);
}

.pk-step-spec {
    margin-top: 0.64rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.pk-step-arrow {
    align-self: center;
    justify-self: center;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.4rem, 5vw, 4rem);
    line-height: 1;
    color: var(--acid);
    opacity: 0.28;
    animation: cc-arrow-pulse 2.2s ease-in-out infinite;
}

.pk-step-arrow.arrow-2 {
    animation-delay: 1.1s;
}

.pk-terminal-card {
    max-width: 1440px;
    margin: 0 auto;
    border: 1px solid #2a2a2a;
    background: #0a0a0a;
    color: var(--off-white);
}

.pk-terminal-head {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    border-bottom: 1px solid #2a2a2a;
    padding: 0.66rem 0.8rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.pk-terminal-body {
    padding: 0.75rem 0.8rem 0.2rem;
}

.pk-terminal-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.55rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.pk-terminal-row > span:first-child {
    order: 1;
    white-space: nowrap;
}

.pk-terminal-row::after {
    content: '........................................................';
    order: 2;
    flex: 1;
    overflow: hidden;
    color: rgba(240, 237, 232, 0.2);
    white-space: nowrap;
}

.pk-terminal-row > span:last-child {
    order: 3;
    white-space: nowrap;
}

.pk-terminal-divider {
    border-top: 1px solid #2a2a2a;
}

.pk-terminal-list-wrap {
    padding: 0.72rem 0.8rem 0.8rem;
}

.pk-terminal-subhead {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.pk-terminal-list-wrap ul {
    margin: 0.48rem 0 0;
    padding-left: 1rem;
    display: grid;
    gap: 0.24rem;
}

.pk-feature-module {
    border-bottom: 1px solid var(--rule);
}

.pk-feature-module .section-comment {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0.8rem clamp(1rem, 3vw, 2.2rem);
}

.pk-feature-band {
    position: relative;
    border-top: 1px solid var(--rule);
}

.pk-feature-band.is-light {
    background: var(--off-white);
    color: var(--black);
}

.pk-feature-band.is-dark {
    background: var(--black);
    color: var(--off-white);
}

.pk-feature-band.is-dark::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
}

.pk-feature-band.is-dark::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.22) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.055;
    animation: noise-drift 20s linear infinite;
}

.pk-feature-inner {
    position: relative;
    z-index: 2;
    max-width: 1440px;
    margin: 0 auto;
    padding: clamp(1.5rem, 3.4vw, 2.3rem) clamp(1rem, 3vw, 2.2rem);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: center;
}

.pk-feature-inner.is-reverse .pk-feature-copy {
    order: 2;
}

.pk-feature-inner.is-reverse .pk-feature-visual {
    order: 1;
}

.pk-feature-copy h3 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.3rem, 5.4vw, 4.8rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.pk-feature-band.is-light .pk-feature-copy h3 {
    color: var(--orange);
}

.pk-feature-band.is-dark .pk-feature-copy h3 {
    color: var(--acid);
}

.pk-feature-intro {
    margin: 0.5rem 0 0;
    font-size: clamp(1rem, 2.1vw, 1.2rem);
    line-height: 1.56;
}

.pk-feature-band.is-light .pk-feature-intro {
    color: rgba(10, 10, 10, 0.88);
}

.pk-feature-band.is-dark .pk-feature-intro {
    color: rgba(240, 237, 232, 0.84);
}

.pk-feature-bullets {
    margin: 0.65rem 0 0;
    padding-left: 1.05rem;
    display: grid;
    gap: 0.34rem;
}

.pk-feature-bullets li {
    line-height: 1.5;
}

.pk-feature-spec {
    margin: 0.72rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.pk-feature-band.is-light .pk-feature-spec {
    color: var(--orange);
}

.pk-feature-band.is-dark .pk-feature-spec {
    color: var(--acid);
}

.pk-feature-shot,
.pk-showcase-media,
.pk-showcase-placeholder {
    position: relative;
    overflow: hidden;
}

.pk-feature-shot {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    animation: cc-shot-pulse 2.1s ease-in-out infinite;
}

.pk-feature-shot-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.pk-feature-shot.has-image {
    padding: 0;
    justify-content: flex-end;
}

.pk-feature-shot.has-image::before {
    display: none;
}

.pk-feature-shot.has-image::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 10, 10, 0.08) 0%, rgba(10, 10, 10, 0.72) 100%);
    pointer-events: none;
}

.pk-feature-band.is-dark .pk-feature-shot {
    border-color: rgba(240, 237, 232, 0.34);
    background: #121212;
}

.pk-feature-shot::before,
.pk-showcase-placeholder::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 22%;
    background: rgba(252, 72, 0, 0.17);
    transform: translateX(-150%);
    animation: cc-shot-shimmer 2.6s linear infinite;
}

.pk-feature-shot-tag {
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    position: relative;
    z-index: 1;
}

.pk-feature-shot.has-image .pk-feature-shot-tag {
    position: absolute;
    top: 0.52rem;
    left: 0.58rem;
    padding: 0.12rem 0.34rem;
    border: 1px solid rgba(240, 237, 232, 0.32);
    background: rgba(10, 10, 10, 0.68);
}

.pk-feature-shot-label {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
    align-self: flex-start;
    position: relative;
    z-index: 1;
}

.pk-feature-shot.has-image .pk-feature-shot-label {
    position: absolute;
    left: 0.58rem;
    bottom: 0.5rem;
    margin: 0;
    padding: 0.08rem 0.32rem;
    border: 1px solid rgba(204, 252, 0, 0.3);
    background: rgba(10, 10, 10, 0.68);
}

.pk-feature-ascii {
    border: 1px solid rgba(252, 72, 0, 0.55);
    background: #fff8f3;
    color: var(--orange);
    padding: 0.75rem;
    position: relative;
}

.pk-feature-ascii pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.74rem;
    line-height: 1.46;
    white-space: pre;
    overflow-x: auto;
}

.pk-ascii-cursor {
    position: absolute;
    right: 0.7rem;
    bottom: 0.5rem;
    font-family: 'Space Mono', monospace;
    animation: blink 0.7s step-end infinite;
}

.pk-showcase .pk-section-title,
.pk-faq .pk-section-title {
    color: var(--off-white);
}

.pk-showcase-subhead {
    max-width: 72ch;
    margin: 0.62rem auto 0;
    line-height: 1.58;
    color: rgba(240, 237, 232, 0.78);
}

.pk-showcase-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.pk-showcase-card {
    border: 1px solid var(--rule);
    background: var(--mid);
    padding: 0.72rem;
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.pk-showcase-card:hover,
.pk-showcase-card:focus-within {
    transform: translate(-2px, -2px);
    box-shadow: 4px 4px 0 var(--orange);
}

.pk-showcase-media {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(240, 237, 232, 0.28);
    background: #111;
}

.pk-showcase-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 180ms ease;
}

.pk-showcase-card:hover .pk-showcase-image,
.pk-showcase-card:focus-within .pk-showcase-image {
    transform: scale(1.012);
}

.pk-showcase-placeholder {
    position: absolute;
    inset: 0;
    border: 1px dashed rgba(240, 237, 232, 0.42);
    background: linear-gradient(160deg, #151515 0%, #0d0d0d 100%);
    animation: cc-shot-pulse 2.2s ease-in-out infinite;
}

.pk-showcase-screen {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    padding: 0.1rem 0.33rem;
    border: 1px solid rgba(240, 237, 232, 0.3);
    background: rgba(10, 10, 10, 0.78);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.72);
    z-index: 2;
}

.pk-showcase-label {
    margin: 0.56rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.pk-showcase-caption {
    margin: 0.34rem 0 0;
    line-height: 1.48;
    color: rgba(240, 237, 232, 0.74);
}

.pk-use-case-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.pk-use-case-card {
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.8rem;
}

.pk-use-case-index {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.pk-use-case-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4.2vw, 3.1rem);
    line-height: 0.84;
    text-transform: uppercase;
}

.pk-use-case-card > p {
    margin: 0.55rem 0 0;
    line-height: 1.52;
}

.pk-use-case-spec {
    display: flex;
    align-items: flex-start;
    gap: 0.42rem;
    margin-top: 0.58rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pk-use-case-spec span:first-child {
    white-space: nowrap;
    color: rgba(240, 237, 232, 0.68);
}

.pk-use-case-spec span:last-child {
    color: var(--off-white);
}

.pk-pricing-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8.4vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--black);
}

.pk-pricing-value {
    margin: 0.5rem auto 0;
    max-width: 76ch;
    line-height: 1.56;
    color: rgba(10, 10, 10, 0.84);
    font-weight: 500;
}

.pk-pricing-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.pk-pricing-card {
    border: 1px solid rgba(10, 10, 10, 0.44);
    background: rgba(240, 237, 232, 0.95);
    color: var(--black);
    padding: 0.8rem;
}

.pk-pricing-card.is-popular {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.pk-best-badge {
    margin: 0 0 0.34rem;
    display: inline-block;
    border: 1px solid var(--acid);
    padding: 0.19rem 0.34rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.58rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--black);
    background: var(--acid);
}

.pk-popular-badge {
    margin: 0 0 0.34rem;
    display: inline-block;
    border: 1px solid var(--acid);
    padding: 0.19rem 0.34rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.58rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--black);
    background: var(--acid);
}

.pk-pricing-tier {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.pk-pricing-price {
    margin: 0.28rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.3rem, 5vw, 3.5rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.pk-pricing-limit {
    margin: 0.24rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    opacity: 0.86;
}

.pk-tier-checkout {
    margin-top: 0.72rem;
}

.pk-tier-checkout .btn {
    width: 100%;
    text-align: center;
}

.pk-pricing-reassurance {
    max-width: 1440px;
    margin: 0.95rem auto 0;
    border-top: 1px solid rgba(10, 10, 10, 0.28);
    padding-top: 0.6rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.8);
}

.pk-faq-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
}

.pk-faq-card {
    border: 1px solid var(--rule);
    background: #151515;
    padding: 0.75rem;
}

.pk-faq-badge {
    margin: 0 0 0.32rem;
    display: inline-block;
    border: 1px solid var(--orange);
    color: var(--orange);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    padding: 0.15rem 0.3rem;
}

.pk-faq-card h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.48;
}

.pk-faq-card p {
    margin: 0.5rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.72);
}

.pk-final-cta {
    text-align: center;
}

.pk-final-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8.4vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--black);
}

.pk-final-line {
    margin: 0.58rem auto 0;
    max-width: 64ch;
    line-height: 1.55;
    color: rgba(10, 10, 10, 0.82);
}

.pk-final-actions {
    margin-top: 0.78rem;
    display: flex;
    justify-content: center;
    gap: 0.55rem;
    flex-wrap: wrap;
}

.pk-final-spec {
    margin: 0.75rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.5);
}

.pk-cross-sell-title {
    margin: 0;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.1rem, 4.4vw, 3.8rem);
    line-height: 0.88;
    text-transform: uppercase;
    color: var(--black);
}

.pk-cross-sell-grid {
    max-width: 1440px;
    margin: 0.8rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.pk-cross-sell-card {
    border: 1px solid rgba(10, 10, 10, 0.38);
    background: #fff;
    color: var(--black);
    padding: 0.7rem;
}

.pk-cross-sell-head {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.pk-cross-sell-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
}

.pk-cross-sell-badge {
    margin: 0.52rem 0 0;
    display: inline-block;
    border: 1px solid var(--acid);
    background: var(--acid);
    color: var(--black);
    font-family: 'Space Mono', monospace;
    font-size: 0.6rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.18rem 0.3rem;
}

.pk-cross-sell-card a {
    display: inline-block;
    margin-top: 0.55rem;
    border: 1px solid var(--black);
    padding: 0.3rem 0.36rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pk-cross-sell-card a:hover,
.pk-cross-sell-card a:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.pk-sticky-purchase {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 56px;
    border-top: 1px solid #2f2f2f;
    background: var(--black);
    z-index: 140;
    transform: translateY(56px);
    transition: transform 220ms ease;
}

.pk-sticky-purchase.is-visible {
    transform: translateY(0);
}

.pk-sticky-inner {
    max-width: 1440px;
    margin: 0 auto;
    height: 100%;
    padding: 0 1rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 0.75rem;
    align-items: center;
}

.pk-sticky-left {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.56);
}

.pk-sticky-center {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: 1.24rem;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: var(--off-white);
}

.os-hero {
    min-height: calc(100dvh - var(--nav-height));
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.5rem;
}

.os-hero .ascii-static {
    color: rgba(10, 10, 10, 0.74);
    opacity: 0.05;
}

.os-hero .ascii-rain {
    opacity: 0.04;
}

.os-hero-title {
    max-width: 12ch;
    font-size: clamp(2.7rem, 9.2vw, 7.2rem);
    line-height: 0.83;
}

.os-hero-problem {
    margin: 1.08rem auto 0;
    max-width: 72ch;
    line-height: 1.54;
    color: rgba(10, 10, 10, 0.86);
}

.os-spec-strip {
    max-width: 1440px;
    width: 100%;
    margin: 0.35rem auto 0;
    border: 1px solid rgba(10, 10, 10, 0.68);
    background: var(--black);
    color: var(--off-white);
    padding: 0.55rem 0.7rem;
    display: flex;
    gap: 0.5rem;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.os-spec-free {
    color: var(--acid);
}

.os-hero-actions {
    max-width: 1440px;
    margin: 0.45rem auto 0;
    display: flex;
    gap: 0.55rem;
    flex-wrap: wrap;
    align-items: center;
}

.os-btn-dark,
.os-btn-outline,
.os-btn-download-main,
.os-sticky-btn {
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.09em;
    border-width: 1px;
}

.os-btn-dark {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
}

.os-btn-dark:hover,
.os-btn-dark:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.os-btn-outline {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.os-btn-outline:hover,
.os-btn-outline:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.os-hero-free-badges {
    max-width: 1440px;
    margin: 0.2rem auto 0;
    display: flex;
    gap: 0.35rem;
    flex-wrap: wrap;
}

.os-hero-free-badges span {
    border: 1px solid rgba(10, 10, 10, 0.72);
    background: rgba(10, 10, 10, 0.92);
    color: var(--acid);
    padding: 0.22rem 0.35rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.os-hero-proof {
    max-width: 1440px;
    margin: 0.2rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.65);
}

.os-hero-foot {
    max-width: 1440px;
    margin: 0.08rem auto 0;
}

.os-back-link {
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.64);
    border-bottom: 1px solid rgba(10, 10, 10, 0.35);
}

.os-back-link:hover,
.os-back-link:focus {
    color: var(--black);
    border-bottom-color: var(--black);
}

.os-section-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.5rem, 6vw, 5.8rem);
    line-height: 0.82;
    text-transform: uppercase;
    letter-spacing: -0.01em;
}

.os-problem-grid {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    gap: 1rem;
    align-items: start;
}

.os-problem-copy p {
    margin: 0.55rem 0 0;
    max-width: 72ch;
    line-height: 1.6;
}

.os-problem-callouts {
    margin-top: 0.85rem;
    display: grid;
    gap: 0.52rem;
}

.os-problem-callout {
    margin: 0;
    display: flex;
    gap: 0.38rem;
    align-items: center;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #fff;
    padding: 0.44rem 0.56rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.64rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.os-problem-callout strong {
    color: var(--black);
    font-size: 0.69rem;
}

.os-callout-dots {
    flex: 1;
    border-bottom: 1px dotted rgba(252, 72, 0, 0.75);
}

.os-problem-visual {
    border: 1px solid rgba(10, 10, 10, 0.36);
    background: #101010;
    color: var(--off-white);
    padding: 0.78rem;
}

.os-problem-visual pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.72rem;
    line-height: 1.44;
    white-space: pre;
    overflow-x: auto;
}

.os-solution {
    text-align: center;
}

.os-solution-title {
    margin: 0 auto;
    max-width: 12ch;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--acid);
}

.os-solution-copy {
    margin: 0.6rem auto 1rem;
    max-width: 640px;
    line-height: 1.6;
    color: rgba(240, 237, 232, 0.8);
}

.os-solution-steps {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 0.68rem;
    align-items: stretch;
}

.os-step-card {
    border: 1px solid #2a2a2a;
    background: #141414;
    padding: 0.8rem;
    text-align: left;
}

.os-step-number {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.8rem, 5vw, 4.4rem);
    line-height: 0.75;
    color: var(--acid);
}

.os-step-card h3 {
    margin: 0.42rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 3.8vw, 3rem);
    line-height: 0.84;
    text-transform: uppercase;
    color: var(--off-white);
}

.os-step-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.8);
}

.os-step-spec {
    margin-top: 0.62rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.os-step-arrow {
    align-self: center;
    justify-self: center;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.4rem, 5vw, 4rem);
    line-height: 1;
    color: var(--acid);
    opacity: 0.28;
    animation: cc-arrow-pulse 2.2s ease-in-out infinite;
}

.os-step-arrow.arrow-2 {
    animation-delay: 1.1s;
}

.os-terminal-card {
    max-width: 1440px;
    margin: 0 auto;
    border: 1px solid #2a2a2a;
    background: #0a0a0a;
    color: var(--off-white);
}

.os-terminal-head {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    border-bottom: 1px solid #2a2a2a;
    padding: 0.66rem 0.8rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.os-terminal-body {
    padding: 0.75rem 0.8rem 0.2rem;
}

.os-terminal-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.55rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.os-terminal-row > span:first-child {
    order: 1;
    white-space: nowrap;
}

.os-terminal-row::after {
    content: '........................................................';
    order: 2;
    flex: 1;
    overflow: hidden;
    color: rgba(240, 237, 232, 0.2);
    white-space: nowrap;
}

.os-terminal-row > span:last-child {
    order: 3;
    white-space: nowrap;
}

.os-license-free {
    color: var(--acid);
}

.os-terminal-divider {
    border-top: 1px solid #2a2a2a;
}

.os-terminal-list-wrap {
    padding: 0.72rem 0.8rem 0.8rem;
}

.os-terminal-subhead {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.os-terminal-list-wrap ul {
    margin: 0.48rem 0 0;
    padding-left: 1rem;
    display: grid;
    gap: 0.24rem;
}

.os-feature-module {
    border-bottom: 1px solid var(--rule);
}

.os-feature-module .section-comment {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0.8rem clamp(1rem, 3vw, 2.2rem);
}

.os-feature-band {
    border-top: 1px solid var(--rule);
    position: relative;
}

.os-feature-band.is-light {
    background: var(--off-white);
    color: var(--black);
}

.os-feature-band.is-dark {
    background: var(--black);
    color: var(--off-white);
}

.os-feature-band.is-dark::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
}

.os-feature-band.is-dark::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.22) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.055;
    animation: noise-drift 20s linear infinite;
}

.os-feature-inner {
    position: relative;
    z-index: 2;
    max-width: 1440px;
    margin: 0 auto;
    padding: clamp(1.5rem, 3.4vw, 2.3rem) clamp(1rem, 3vw, 2.2rem);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: center;
}

.os-feature-inner.is-reverse .os-feature-copy {
    order: 2;
}

.os-feature-inner.is-reverse .os-feature-visual {
    order: 1;
}

.os-feature-copy h3 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.3rem, 5vw, 4.6rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.os-feature-band.is-light .os-feature-copy h3 {
    color: var(--orange);
}

.os-feature-band.is-dark .os-feature-copy h3 {
    color: var(--acid);
}

.os-feature-intro {
    margin: 0.5rem 0 0;
    font-size: clamp(1rem, 2.1vw, 1.18rem);
    line-height: 1.55;
}

.os-feature-band.is-light .os-feature-intro {
    color: rgba(10, 10, 10, 0.88);
}

.os-feature-band.is-dark .os-feature-intro {
    color: rgba(240, 237, 232, 0.84);
}

.os-feature-bullets {
    margin: 0.6rem 0 0;
    padding-left: 1.05rem;
    display: grid;
    gap: 0.34rem;
}

.os-feature-bullets li {
    line-height: 1.5;
}

.os-feature-spec {
    margin: 0.72rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.os-feature-band.is-light .os-feature-spec {
    color: var(--orange);
}

.os-feature-band.is-dark .os-feature-spec {
    color: var(--acid);
}

.os-feature-shot,
.os-showcase-media,
.os-showcase-placeholder {
    position: relative;
    overflow: hidden;
}

.os-feature-shot {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.74rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    animation: cc-shot-pulse 2.1s ease-in-out infinite;
}

.os-feature-shot-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.os-feature-shot.has-image {
    padding: 0;
    justify-content: flex-end;
}

.os-feature-shot.has-image::before {
    display: none;
}

.os-feature-shot.has-image::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 10, 10, 0.08) 0%, rgba(10, 10, 10, 0.72) 100%);
    pointer-events: none;
}

.os-feature-band.is-dark .os-feature-shot {
    border-color: rgba(240, 237, 232, 0.34);
    background: #121212;
}

.os-feature-shot::before,
.os-showcase-placeholder::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 22%;
    background: rgba(252, 72, 0, 0.17);
    transform: translateX(-150%);
    animation: cc-shot-shimmer 2.6s linear infinite;
}

.os-feature-shot-tag {
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    position: relative;
    z-index: 1;
}

.os-feature-shot.has-image .os-feature-shot-tag {
    position: absolute;
    top: 0.52rem;
    left: 0.58rem;
    padding: 0.12rem 0.34rem;
    border: 1px solid rgba(240, 237, 232, 0.32);
    background: rgba(10, 10, 10, 0.68);
}

.os-feature-shot-label {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
    position: relative;
    z-index: 1;
}

.os-feature-shot.has-image .os-feature-shot-label {
    position: absolute;
    left: 0.58rem;
    bottom: 0.5rem;
    margin: 0;
    padding: 0.08rem 0.32rem;
    border: 1px solid rgba(204, 252, 0, 0.3);
    background: rgba(10, 10, 10, 0.68);
}

.os-feature-ascii {
    border: 1px solid #3e5a16;
    background: #0f1209;
    color: var(--acid);
    padding: 0.75rem;
    position: relative;
}

.os-feature-ascii pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.72rem;
    line-height: 1.44;
    white-space: pre;
    overflow-x: auto;
}

.os-ascii-cursor {
    position: absolute;
    right: 0.7rem;
    bottom: 0.52rem;
    animation: blink 0.7s step-end infinite;
}

.os-showcase-title {
    color: var(--off-white);
}

.os-showcase-subhead {
    margin: 0.6rem auto 0;
    max-width: 72ch;
    line-height: 1.58;
    color: rgba(240, 237, 232, 0.78);
}

.os-showcase-grid {
    max-width: 1280px;
    margin: 1.05rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.08rem;
}

.os-showcase-card {
    border: 1px solid var(--rule);
    background: #171717;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.06rem;
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.os-showcase-card:hover,
.os-showcase-card:focus-within {
    transform: translate(-2px, -2px);
    box-shadow: 4px 4px 0 var(--orange);
}

.os-showcase-media {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(240, 237, 232, 0.28);
    background: #111;
}

.os-showcase-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 180ms ease;
}

.os-showcase-card:hover .os-showcase-image,
.os-showcase-card:focus-within .os-showcase-image {
    transform: scale(1.012);
}

.os-showcase-placeholder {
    position: absolute;
    inset: 0;
    border: 1px dashed rgba(240, 237, 232, 0.42);
    background: linear-gradient(160deg, #151515 0%, #0d0d0d 100%);
    animation: cc-shot-pulse 2.2s ease-in-out infinite;
}

.os-showcase-screen {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    padding: 0.1rem 0.33rem;
    border: 1px solid rgba(240, 237, 232, 0.3);
    background: rgba(10, 10, 10, 0.78);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.72);
    z-index: 2;
}

.os-showcase-label {
    margin: 0.56rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.os-showcase-caption {
    margin: 0.34rem 0 0;
    line-height: 1.48;
    color: rgba(240, 237, 232, 0.74);
}

.os-use-case-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.os-use-case-card {
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.8rem;
}

.os-use-case-index {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.os-use-case-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(1.9rem, 4vw, 3rem);
    line-height: 0.84;
    text-transform: uppercase;
}

.os-use-case-card > p {
    margin: 0.55rem 0 0;
    line-height: 1.5;
}

.os-use-case-spec {
    display: flex;
    align-items: flex-start;
    gap: 0.42rem;
    margin-top: 0.58rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.os-use-case-spec span:first-child {
    white-space: nowrap;
    color: rgba(240, 237, 232, 0.66);
}

.os-use-case-spec span:last-child {
    color: var(--off-white);
}

.os-download {
    text-align: center;
}

.os-download-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3.4rem, 9vw, 7.6rem);
    line-height: 0.8;
    text-transform: uppercase;
    color: var(--black);
}

.os-download-line {
    margin: 0.6rem auto 0;
    max-width: 62ch;
    line-height: 1.55;
    color: rgba(10, 10, 10, 0.84);
}

.os-download-action {
    margin-top: 0.75rem;
}

.os-btn-download-main {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
    padding: 0.85rem 1.05rem;
}

.os-btn-download-main:hover,
.os-btn-download-main:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--black);
}

.os-download-badges {
    margin: 0.8rem auto 0;
    max-width: 980px;
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.os-download-badges span {
    border: 1px solid var(--black);
    background: var(--black);
    color: var(--off-white);
    padding: 0.28rem 0.4rem;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.os-download-meta {
    margin: 0.65rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.54);
}

.os-faq-title {
    color: var(--off-white);
}

.os-faq-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
}

.os-faq-card {
    border: 1px solid var(--rule);
    background: #151515;
    padding: 0.75rem;
}

.os-faq-badge {
    margin: 0 0 0.32rem;
    display: inline-block;
    border: 1px solid var(--orange);
    color: var(--orange);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    padding: 0.15rem 0.3rem;
}

.os-faq-card h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.46;
}

.os-faq-card p {
    margin: 0.5rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.72);
}

.os-cross-sell-title {
    margin: 0;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.1rem, 4.4vw, 3.8rem);
    line-height: 0.88;
    text-transform: uppercase;
    color: var(--black);
}

.os-cross-sell-grid {
    max-width: 1440px;
    margin: 0.8rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.os-cross-sell-card {
    border: 1px solid rgba(10, 10, 10, 0.38);
    background: #fff;
    color: var(--black);
    padding: 0.7rem;
}

.os-cross-sell-head {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.os-cross-sell-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
}

.os-cross-sell-card a {
    display: inline-block;
    margin-top: 0.55rem;
    border: 1px solid var(--black);
    padding: 0.3rem 0.36rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.os-cross-sell-card a:hover,
.os-cross-sell-card a:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.os-sticky-download {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 56px;
    border-top: 1px solid #8fb500;
    background: var(--acid);
    z-index: 141;
    transform: translateY(56px);
    transition: transform 220ms ease;
}

.os-sticky-download.is-visible {
    transform: translateY(0);
}

.os-sticky-inner {
    max-width: 1440px;
    margin: 0 auto;
    height: 100%;
    padding: 0 1rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto auto;
    gap: 0.6rem;
    align-items: center;
}

.os-sticky-left {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.6);
}

.os-sticky-center {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: 1.1rem;
    line-height: 0.92;
    text-transform: uppercase;
    color: var(--black);
}

.os-sticky-badge {
    border: 1px solid rgba(10, 10, 10, 0.56);
    padding: 0.18rem 0.28rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.75);
}

.os-sticky-btn {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
}

.os-sticky-btn:hover,
.os-sticky-btn:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.js-reveal-left {
    opacity: 0;
    transform: translateX(-24px);
}

.js-reveal-left.is-visible {
    animation: reveal-left 480ms ease forwards;
}

@media (max-width: 1200px) {
    .plugin-grid,
    .plugin-detail-grid,
    .plugin-pricing-grid,
    .plugin-shot-grid,
    .client-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cc-problem-callouts,
    .cc-showcase-grid,
    .cc-pricing-grid,
    .cc-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gi-showcase-grid,
    .gi-pricing-grid,
    .gi-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pk-showcase-grid,
    .pk-pricing-grid,
    .pk-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .os-showcase-grid,
    .os-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cc-use-case-grid {
        grid-template-columns: 1fr;
    }

    .gi-use-case-grid,
    .gi-cross-sell-grid {
        grid-template-columns: 1fr;
    }

    .pk-use-case-grid,
    .pk-cross-sell-grid {
        grid-template-columns: 1fr;
    }

    .os-use-case-grid,
    .os-cross-sell-grid {
        grid-template-columns: 1fr;
    }

    .service-band,
    .showcase-row,
    .showcase-row.is-reverse {
        grid-template-columns: 1fr;
    }

    .showcase-row .showcase-copy,
    .showcase-row.is-reverse .showcase-copy {
        order: 1;
    }

    .showcase-row .showcase-visual-wrap,
    .showcase-row.is-reverse .showcase-visual-wrap {
        order: 2;
    }

    .service-visual,
    .showcase-visual-wrap,
    .showcase-row.is-reverse .showcase-visual-wrap {
        border-left: 0;
        border-right: 0;
        border-top: 1px solid var(--rule);
    }

    .service-live-headline {
        font-size: clamp(1.35rem, 4vw, 1.65rem);
    }

    .account-grid,
    .account-license-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 860px) {
    :root {
        --nav-height: 58px;
    }

    .contact-form-raincity {
        min-height: 0;
    }

    .contact-form-panel {
        padding: 0.9rem;
    }

    .brand-logo {
        width: clamp(68px, 21vw, 96px);
    }

    .mobile-toggle {
        display: inline-block;
    }

    .top-nav {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }

    .nav-links {
        position: fixed;
        inset: 0;
        background: rgba(10, 10, 10, 0.98);
        border-left: 1px solid var(--rule);
        display: grid;
        align-content: center;
        justify-items: center;
        gap: 1rem;
        transform: translateY(-100%);
        transition: transform 250ms ease;
        padding: calc(var(--nav-height) + 1.5rem) 1rem 2rem;
        overflow-y: auto;
        z-index: 99;
    }

    .nav-links.is-open {
        transform: translateY(0);
    }

    .nav-link {
        font-family: 'Saira Extra Condensed', sans-serif;
        font-size: clamp(2.6rem, 12vw, 4.8rem);
        letter-spacing: 0.01em;
        padding-left: 0;
    }

    .nav-link::before {
        display: none;
    }

    .nav-cta {
        margin-top: 0.6rem;
        justify-self: center;
        text-align: center;
    }

    .hero-signal {
        flex-wrap: wrap;
    }

    .signal-meter {
        width: 100%;
    }

    .hero-subhead {
        padding-left: 1rem;
    }

    .plugin-grid,
    .plugin-detail-grid,
    .plugin-pricing-grid,
    .mini-showcase-grid,
    .client-feature-grid,
    .tier-card-grid,
    .plugin-shot-grid {
        grid-template-columns: 1fr;
    }

    .show-stat-grid {
        grid-template-columns: 1fr;
    }

    .show-stat-cell {
        min-height: 66px;
    }

    .service-live-tags {
        gap: 0.25rem;
    }

    .service-live-tags span {
        font-size: 8px;
    }

    .service-live-label,
    .service-live-stat {
        font-size: 8px;
    }

    .service-live-headline {
        max-width: min(100% - 1rem, 220px);
        font-size: clamp(1.1rem, 5.2vw, 1.45rem);
    }

    .service-bands,
    .apps-stack {
        grid-template-columns: 1fr;
    }

    .service-visual,
    .app-row .showcase-visual-wrap,
    .app-row.is-reverse .showcase-visual-wrap {
        min-height: 220px;
    }

    .service-bands {
        padding: 20px 16px;
    }

    .service-copy {
        padding: 16px;
    }

    .spec-value {
        white-space: normal;
    }

    .portal-table {
        font-size: 0.72rem;
    }

    .portal-table th,
    .portal-table td {
        padding: 0.45rem 0.5rem;
    }

    .cc-problem-grid,
    .cc-feature-inner,
    .cc-showcase-grid,
    .cc-pricing-grid,
    .cc-faq-grid {
        grid-template-columns: 1fr;
    }

    .gi-problem-grid,
    .gi-feature-inner,
    .gi-showcase-grid,
    .gi-pricing-grid,
    .gi-faq-grid,
    .gi-cross-sell-grid {
        grid-template-columns: 1fr;
    }

    .pk-problem-grid,
    .pk-feature-inner,
    .pk-showcase-grid,
    .pk-pricing-grid,
    .pk-faq-grid,
    .pk-cross-sell-grid {
        grid-template-columns: 1fr;
    }

    .os-problem-grid,
    .os-feature-inner,
    .os-showcase-grid,
    .os-faq-grid,
    .os-cross-sell-grid {
        grid-template-columns: 1fr;
    }

    .cc-problem-callouts {
        grid-template-columns: 1fr;
    }

    .os-hero-actions,
    .os-download-badges,
    .os-hero-free-badges {
        justify-content: center;
    }

    .gi-hero-actions {
        justify-content: center;
    }

    .pk-hero-actions {
        justify-content: center;
    }

    .cc-solution-steps {
        grid-template-columns: 1fr;
    }

    .gi-solution-steps {
        grid-template-columns: 1fr;
    }

    .pk-solution-steps {
        grid-template-columns: 1fr;
    }

    .os-solution-steps {
        grid-template-columns: 1fr;
    }

    .cc-step-arrow {
        display: none;
    }

    .gi-step-arrow {
        display: none;
    }

    .pk-step-arrow {
        display: none;
    }

    .os-step-arrow {
        display: none;
    }

    .cc-feature-inner.is-reverse .cc-feature-copy,
    .cc-feature-inner.is-reverse .cc-feature-visual {
        order: initial;
    }

    .gi-feature-inner.is-reverse .gi-feature-copy,
    .gi-feature-inner.is-reverse .gi-feature-visual {
        order: initial;
    }

    .pk-feature-inner.is-reverse .pk-feature-copy,
    .pk-feature-inner.is-reverse .pk-feature-visual {
        order: initial;
    }

    .os-feature-inner.is-reverse .os-feature-copy,
    .os-feature-inner.is-reverse .os-feature-visual {
        order: initial;
    }

    .cc-sticky-inner {
        grid-template-columns: 1fr auto;
        gap: 0.55rem;
    }

    .cc-sticky-left {
        display: none;
    }

    .cc-sticky-center {
        font-size: 1.05rem;
    }

    .gi-sticky-inner {
        grid-template-columns: 1fr auto;
        gap: 0.5rem;
    }

    .gi-sticky-left {
        display: none;
    }

    .gi-sticky-center {
        font-size: 1.05rem;
    }

    .pk-sticky-inner {
        grid-template-columns: 1fr auto;
        gap: 0.5rem;
    }

    .pk-sticky-left {
        display: none;
    }

    .pk-sticky-center {
        font-size: 1.05rem;
    }

    .os-sticky-inner {
        grid-template-columns: auto auto;
        justify-content: end;
        gap: 0.5rem;
    }

    .os-sticky-left,
    .os-sticky-center {
        display: none;
    }
}

@media (max-width: 860px) and (orientation: landscape) {
    .nav-links {
        align-content: start;
        gap: 0.3rem;
        padding-top: calc(var(--nav-height) + 0.75rem);
        padding-bottom: 1rem;
    }

    .nav-link {
        font-size: clamp(1.5rem, 6vw, 2.2rem);
    }

    .nav-cta {
        margin-top: 0.25rem;
    }
}

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

@keyframes hero-slam {
    from {
        opacity: 0;
        transform: translateX(-40px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes blink {
    0%,
    49% { opacity: 1; }
    50%,
    100% { opacity: 0; }
}

@keyframes scrollBounce {
    0%, 100% {
        transform: translateX(-50%) translateY(0);
    }
    50% {
        transform: translateX(-50%) translateY(7px);
    }
}

@keyframes marquee {
    to {
        transform: translateX(var(--marquee-shift, -25%));
    }
}

@keyframes noise-drift {
    from {
        transform: translate3d(0, 0, 0);
    }
    to {
        transform: translate3d(-12%, -12%, 0);
    }
}

@keyframes signal-up {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
}

@keyframes spec-fill {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
}

@keyframes divider-reveal {
    from { transform: scaleX(0); }
    to { transform: scaleX(1); }
}

@keyframes reveal-up {
    from {
        opacity: 0;
        transform: translateY(16px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes shimmer {
    to {
        transform: translateX(120%);
    }
}

@keyframes reveal-left {
    from {
        opacity: 0;
        transform: translateX(-24px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes cc-arrow-pulse {
    0%,
    100% {
        opacity: 0.22;
    }
    45% {
        opacity: 0.82;
    }
}

@keyframes cc-shot-shimmer {
    0% {
        transform: translateX(-150%);
    }
    100% {
        transform: translateX(520%);
    }
}

@keyframes cc-shot-pulse {
    0%,
    100% {
        border-color: rgba(255, 255, 255, 0.26);
    }
    50% {
        border-color: rgba(252, 72, 0, 0.58);
    }
}

@keyframes grid-pulse {
    0%,
    100% { background-size: 32px 32px; }
    50% { background-size: 31px 31px; }
}

@keyframes show-glitch {
    0% {
        transform: translateX(0);
        text-shadow: 0 0 transparent;
    }
    34% {
        transform: translateX(-1px);
        text-shadow: 3px 0 var(--orange), -3px 0 var(--cyan);
    }
    67% {
        transform: translateX(1px);
        text-shadow: -3px 0 var(--orange), 3px 0 var(--cyan);
    }
    100% {
        transform: translateX(0);
        text-shadow: 0 0 transparent;
    }
}

/* IP Whitelister variant */
.iw-hero {
    min-height: calc(100dvh - var(--nav-height));
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 0.55rem;
}

.iw-hero .ascii-static {
    color: rgba(10, 10, 10, 0.72);
    opacity: 0.05;
}

.iw-hero .ascii-rain {
    opacity: 0.04;
}

.iw-hero-title {
    max-width: 11ch;
    font-size: clamp(2.5rem, 8.8vw, 7rem);
    line-height: 0.83;
}

.iw-hero-problem {
    margin: 1.08rem auto 0;
    max-width: 76ch;
    color: rgba(10, 10, 10, 0.86);
    line-height: 1.55;
    font-size: clamp(1rem, 2.1vw, 1.14rem);
}

.iw-spec-strip {
    max-width: 1440px;
    width: 100%;
    margin: 0.35rem auto 0;
    border: 1px solid rgba(10, 10, 10, 0.65);
    background: var(--black);
    color: var(--off-white);
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow-x: auto;
    padding: 0.55rem 0.72rem;
}

.iw-hero-actions {
    max-width: 1440px;
    margin: 0.45rem auto 0;
    display: flex;
    gap: 0.55rem;
    align-items: center;
    flex-wrap: wrap;
}

.iw-inline-checkout {
    margin: 0;
}

.iw-proof-line {
    max-width: 1440px;
    margin: 0.28rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.64);
}

.iw-btn-dark,
.iw-btn-outline,
.iw-btn-orange,
.iw-btn-outline-dark,
.iw-btn-acid {
    font-family: 'Space Mono', monospace;
    letter-spacing: 0.09em;
    font-size: 0.68rem;
    border-width: 1px;
}

.iw-btn-dark {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
}

.iw-btn-dark:hover,
.iw-btn-dark:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--black);
    color: var(--off-white);
}

.iw-btn-outline {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.iw-btn-outline:hover,
.iw-btn-outline:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.iw-btn-orange {
    border-color: var(--black);
    background: var(--orange);
    color: var(--black);
}

.iw-btn-orange:hover,
.iw-btn-orange:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--orange);
}

.iw-btn-outline-dark {
    border-color: var(--black);
    background: transparent;
    color: var(--black);
}

.iw-btn-outline-dark:hover,
.iw-btn-outline-dark:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.iw-btn-acid {
    border-color: var(--acid);
    background: var(--acid);
    color: var(--black);
}

.iw-btn-acid:hover,
.iw-btn-acid:focus {
    box-shadow: 4px 4px 0 var(--orange);
    background: var(--acid);
}

.iw-problem-grid {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
    gap: 1rem;
    align-items: start;
}

.iw-section-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.5rem, 6vw, 5.8rem);
    line-height: 0.82;
    text-transform: uppercase;
    letter-spacing: -0.01em;
}

.iw-problem-copy p {
    max-width: 72ch;
    line-height: 1.62;
    margin: 0.6rem 0 0;
}

.iw-problem-callouts {
    margin-top: 0.95rem;
    display: grid;
    gap: 0.62rem;
}

.iw-problem-callout {
    margin: 0;
    display: flex;
    gap: 0.38rem;
    align-items: center;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #fff;
    padding: 0.46rem 0.6rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.64rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.iw-problem-callout strong {
    color: var(--black);
    font-size: 0.69rem;
}

.iw-callout-dots {
    flex: 1;
    border-bottom: 1px dotted rgba(252, 72, 0, 0.8);
}

.iw-problem-visual {
    border: 1px solid rgba(10, 10, 10, 0.38);
    background: #101010;
    color: var(--off-white);
    padding: 0.8rem;
}

.iw-problem-visual pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.74rem;
    line-height: 1.45;
    white-space: pre;
    overflow-x: auto;
}

.iw-solution,
.iw-showcase,
.iw-faq {
    position: relative;
    isolation: isolate;
}

.iw-solution::before,
.iw-showcase::before,
.iw-faq::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
}

.iw-solution::after,
.iw-showcase::after,
.iw-faq::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.22) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.055;
    animation: noise-drift 20s linear infinite;
}

.iw-solution > *,
.iw-showcase > *,
.iw-faq > * {
    position: relative;
    z-index: 2;
}

.iw-solution {
    text-align: center;
}

.iw-solution-title {
    margin: 0 auto;
    max-width: 11ch;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--acid);
}

.iw-solution-copy {
    margin: 0.68rem auto 1.15rem;
    max-width: 640px;
    line-height: 1.6;
    color: rgba(240, 237, 232, 0.82);
}

.iw-solution-steps {
    max-width: 1440px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 0.7rem;
    align-items: stretch;
}

.iw-step-card {
    border: 1px solid #2a2a2a;
    background: #141414;
    padding: 0.8rem;
    text-align: left;
}

.iw-step-number {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.8rem, 5vw, 4.4rem);
    line-height: 0.75;
    color: var(--acid);
}

.iw-step-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--off-white);
}

.iw-step-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.8);
}

.iw-step-spec {
    margin-top: 0.64rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.iw-step-arrow {
    align-self: center;
    justify-self: center;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.4rem, 5vw, 4rem);
    line-height: 1;
    color: var(--acid);
    opacity: 0.28;
    animation: cc-arrow-pulse 2.2s ease-in-out infinite;
}

.iw-step-arrow.arrow-2 {
    animation-delay: 1.1s;
}

.iw-terminal-card {
    max-width: 1440px;
    margin: 0 auto;
    border: 1px solid #2a2a2a;
    background: #0a0a0a;
    color: var(--off-white);
}

.iw-terminal-head {
    display: flex;
    justify-content: space-between;
    gap: 0.8rem;
    border-bottom: 1px solid #2a2a2a;
    padding: 0.66rem 0.8rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.68rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.iw-terminal-body {
    padding: 0.75rem 0.8rem 0.2rem;
}

.iw-terminal-row {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin-bottom: 0.55rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.iw-terminal-row > span:first-child {
    order: 1;
    white-space: nowrap;
}

.iw-terminal-row::after {
    content: '........................................................';
    order: 2;
    flex: 1;
    overflow: hidden;
    color: rgba(240, 237, 232, 0.2);
    white-space: nowrap;
}

.iw-terminal-row > span:last-child {
    order: 3;
    white-space: nowrap;
}

.iw-terminal-divider {
    border-top: 1px solid #2a2a2a;
}

.iw-terminal-list-wrap {
    padding: 0.72rem 0.8rem 0.8rem;
}

.iw-terminal-subhead {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.iw-terminal-list-wrap ul {
    margin: 0.48rem 0 0;
    padding-left: 1rem;
    display: grid;
    gap: 0.24rem;
}

.iw-feature-module {
    border-bottom: 1px solid var(--rule);
}

.iw-feature-module .section-comment {
    margin-top: 0;
    margin-bottom: 0;
    padding: 0.8rem clamp(1rem, 3vw, 2.2rem);
}

.iw-feature-band {
    position: relative;
    border-top: 1px solid var(--rule);
}

.iw-feature-band.is-light {
    background: var(--off-white);
    color: var(--black);
}

.iw-feature-band.is-dark {
    background: var(--black);
    color: var(--off-white);
}

.iw-feature-band.is-dark::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.03) 2px,
        rgba(0, 0, 0, 0.03) 4px
    );
}

.iw-feature-band.is-dark::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.22) 0.45px, transparent 0.55px);
    background-size: 3px 3px;
    opacity: 0.055;
    animation: noise-drift 20s linear infinite;
}

.iw-feature-inner {
    position: relative;
    z-index: 2;
    max-width: 1440px;
    margin: 0 auto;
    padding: clamp(1.5rem, 3.4vw, 2.3rem) clamp(1rem, 3vw, 2.2rem);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    align-items: center;
}

.iw-feature-inner.is-reverse .iw-feature-copy {
    order: 2;
}

.iw-feature-inner.is-reverse .iw-feature-visual {
    order: 1;
}

.iw-feature-copy h3 {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.3rem, 5.4vw, 4.8rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.iw-feature-band.is-light .iw-feature-copy h3 {
    color: var(--orange);
}

.iw-feature-band.is-dark .iw-feature-copy h3 {
    color: var(--acid);
}

.iw-feature-intro {
    margin: 0.5rem 0 0;
    font-size: clamp(1rem, 2.1vw, 1.2rem);
    line-height: 1.56;
}

.iw-feature-band.is-light .iw-feature-intro {
    color: rgba(10, 10, 10, 0.88);
}

.iw-feature-band.is-dark .iw-feature-intro {
    color: rgba(240, 237, 232, 0.84);
}

.iw-feature-bullets {
    margin: 0.65rem 0 0;
    padding-left: 1.05rem;
    display: grid;
    gap: 0.34rem;
}

.iw-feature-bullets li {
    line-height: 1.5;
}

.iw-feature-spec {
    margin: 0.72rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.iw-feature-band.is-light .iw-feature-spec {
    color: var(--orange);
}

.iw-feature-band.is-dark .iw-feature-spec {
    color: var(--acid);
}

.iw-feature-shot,
.iw-showcase-media,
.iw-showcase-placeholder {
    position: relative;
    overflow: hidden;
}

.iw-feature-shot {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    animation: cc-shot-pulse 2.1s ease-in-out infinite;
}

.iw-feature-shot-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.iw-feature-shot.has-image {
    padding: 0;
    justify-content: flex-end;
}

.iw-feature-shot.has-image::before {
    display: none;
}

.iw-feature-shot.has-image::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 10, 10, 0.08) 0%, rgba(10, 10, 10, 0.72) 100%);
    pointer-events: none;
}

.iw-feature-band.is-dark .iw-feature-shot {
    border-color: rgba(240, 237, 232, 0.34);
    background: #121212;
}

.iw-feature-shot::before,
.iw-showcase-placeholder::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 22%;
    background: rgba(252, 72, 0, 0.17);
    transform: translateX(-150%);
    animation: cc-shot-shimmer 2.6s linear infinite;
}

.iw-feature-shot-tag {
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    position: relative;
    z-index: 1;
}

.iw-feature-shot.has-image .iw-feature-shot-tag {
    position: absolute;
    top: 0.52rem;
    left: 0.58rem;
    padding: 0.12rem 0.34rem;
    border: 1px solid rgba(240, 237, 232, 0.32);
    background: rgba(10, 10, 10, 0.68);
}

.iw-feature-shot-label {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
    align-self: flex-start;
    position: relative;
    z-index: 1;
}

.iw-feature-shot.has-image .iw-feature-shot-label {
    position: absolute;
    left: 0.58rem;
    bottom: 0.5rem;
    margin: 0;
    padding: 0.08rem 0.32rem;
    border: 1px solid rgba(204, 252, 0, 0.3);
    background: rgba(10, 10, 10, 0.68);
}

.iw-feature-ascii {
    border: 1px solid rgba(252, 72, 0, 0.55);
    background: #fff8f3;
    color: var(--orange);
    padding: 0.75rem;
    position: relative;
}

.iw-feature-ascii pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.74rem;
    line-height: 1.46;
    white-space: pre;
    overflow-x: auto;
}

.iw-ascii-cursor {
    position: absolute;
    right: 0.7rem;
    bottom: 0.5rem;
    font-family: 'Space Mono', monospace;
    animation: blink 0.7s step-end infinite;
}

.iw-showcase .iw-section-title,
.iw-faq .iw-section-title {
    color: var(--off-white);
}

.iw-showcase-subhead {
    max-width: 72ch;
    margin: 0.62rem auto 0;
    line-height: 1.58;
    color: rgba(240, 237, 232, 0.78);
}

.iw-showcase-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.iw-showcase-card {
    border: 1px solid var(--rule);
    background: var(--mid);
    padding: 0.72rem;
    transition: transform 150ms ease, box-shadow 150ms ease;
}

.iw-showcase-card:hover,
.iw-showcase-card:focus-within {
    transform: translate(-2px, -2px);
    box-shadow: 4px 4px 0 var(--orange);
}

.iw-showcase-media {
    aspect-ratio: 16 / 9;
    border: 1px solid rgba(240, 237, 232, 0.28);
    background: #111;
}

.iw-showcase-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 180ms ease;
}

.iw-showcase-card:hover .iw-showcase-image,
.iw-showcase-card:focus-within .iw-showcase-image {
    transform: scale(1.012);
}

.iw-showcase-placeholder {
    position: absolute;
    inset: 0;
    border: 1px dashed rgba(240, 237, 232, 0.42);
    background: linear-gradient(160deg, #151515 0%, #0d0d0d 100%);
    animation: cc-shot-pulse 2.2s ease-in-out infinite;
}

.iw-showcase-screen {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    padding: 0.1rem 0.33rem;
    border: 1px solid rgba(240, 237, 232, 0.3);
    background: rgba(10, 10, 10, 0.78);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.72);
    z-index: 2;
}

.iw-showcase-label {
    margin: 0.56rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.67rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--acid);
}

.iw-showcase-caption {
    margin: 0.34rem 0 0;
    line-height: 1.48;
    color: rgba(240, 237, 232, 0.74);
}

.iw-use-case-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.iw-use-case-card {
    border: 1px solid rgba(10, 10, 10, 0.34);
    background: #1e1e1e;
    color: var(--off-white);
    padding: 0.8rem;
}

.iw-use-case-index {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--orange);
}

.iw-use-case-card h3 {
    margin: 0.45rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2rem, 4.2vw, 3.1rem);
    line-height: 0.84;
    text-transform: uppercase;
}

.iw-use-case-card > p {
    margin: 0.55rem 0 0;
    line-height: 1.52;
}

.iw-use-case-spec {
    display: flex;
    align-items: flex-start;
    gap: 0.42rem;
    margin-top: 0.58rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.iw-use-case-spec span:first-child {
    white-space: nowrap;
    color: rgba(240, 237, 232, 0.68);
}

.iw-use-case-spec span:last-child {
    color: var(--off-white);
}

.iw-pricing-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8.4vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--black);
}

.iw-pricing-value {
    margin: 0.5rem auto 0;
    max-width: 76ch;
    line-height: 1.56;
    color: rgba(10, 10, 10, 0.84);
    font-weight: 500;
}

.iw-pricing-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.75rem;
}

.iw-pricing-card {
    border: 1px solid rgba(10, 10, 10, 0.44);
    background: rgba(240, 237, 232, 0.95);
    color: var(--black);
    padding: 0.8rem;
}

.iw-pricing-card.is-popular {
    border-color: var(--black);
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.iw-best-badge {
    margin: 0 0 0.34rem;
    display: inline-block;
    border: 1px solid var(--acid);
    padding: 0.19rem 0.34rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.58rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--black);
    background: var(--acid);
}

.iw-popular-badge {
    margin: 0 0 0.34rem;
    display: inline-block;
    border: 1px solid var(--acid);
    padding: 0.19rem 0.34rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.58rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--black);
    background: var(--acid);
}

.iw-pricing-tier {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.iw-pricing-price {
    margin: 0.28rem 0 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.3rem, 5vw, 3.5rem);
    line-height: 0.82;
    text-transform: uppercase;
}

.iw-pricing-limit {
    margin: 0.24rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    opacity: 0.86;
}

.iw-tier-checkout {
    margin-top: 0.72rem;
}

.iw-tier-checkout .btn {
    width: 100%;
    text-align: center;
}

.iw-pricing-reassurance {
    max-width: 1440px;
    margin: 0.95rem auto 0;
    border-top: 1px solid rgba(10, 10, 10, 0.28);
    padding-top: 0.6rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.8);
}

.iw-faq-grid {
    max-width: 1440px;
    margin: 1rem auto 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
}

.iw-faq-card {
    border: 1px solid var(--rule);
    background: #151515;
    padding: 0.75rem;
}

.iw-faq-badge {
    margin: 0 0 0.32rem;
    display: inline-block;
    border: 1px solid var(--orange);
    color: var(--orange);
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    padding: 0.15rem 0.3rem;
}

.iw-faq-card h3 {
    margin: 0;
    font-size: 1rem;
    line-height: 1.48;
}

.iw-faq-card p {
    margin: 0.5rem 0 0;
    line-height: 1.5;
    color: rgba(240, 237, 232, 0.72);
}

.iw-final-cta {
    text-align: center;
}

.iw-final-title {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(3rem, 8.4vw, 7rem);
    line-height: 0.82;
    text-transform: uppercase;
    color: var(--black);
}

.iw-final-line {
    margin: 0.58rem auto 0;
    max-width: 64ch;
    line-height: 1.55;
    color: rgba(10, 10, 10, 0.82);
}

.iw-final-actions {
    margin-top: 0.78rem;
    display: flex;
    justify-content: center;
    gap: 0.55rem;
    flex-wrap: wrap;
}

.iw-final-spec {
    margin: 0.75rem auto 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: rgba(10, 10, 10, 0.5);
}

.iw-cross-sell-title {
    margin: 0;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(2.1rem, 4.4vw, 3.8rem);
    line-height: 0.88;
    text-transform: uppercase;
    color: var(--black);
}

.iw-cross-sell-grid {
    max-width: 1440px;
    margin: 0.8rem auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.iw-cross-sell-card {
    border: 1px solid rgba(10, 10, 10, 0.38);
    background: #fff;
    color: var(--black);
    padding: 0.7rem;
}

.iw-cross-sell-head {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.iw-cross-sell-card p {
    margin: 0.45rem 0 0;
    line-height: 1.5;
}

.iw-cross-sell-badge {
    margin: 0.52rem 0 0;
    display: inline-block;
    border: 1px solid var(--acid);
    background: var(--acid);
    color: var(--black);
    font-family: 'Space Mono', monospace;
    font-size: 0.6rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 0.18rem 0.3rem;
}

.iw-cross-sell-card a {
    display: inline-block;
    margin-top: 0.55rem;
    border: 1px solid var(--black);
    padding: 0.3rem 0.36rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.63rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.iw-cross-sell-card a:hover,
.iw-cross-sell-card a:focus {
    background: var(--black);
    color: var(--off-white);
    box-shadow: 4px 4px 0 var(--orange);
}

.iw-sticky-purchase {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    height: 56px;
    border-top: 1px solid #2f2f2f;
    background: var(--black);
    z-index: 140;
    transform: translateY(56px);
    transition: transform 220ms ease;
}

.iw-sticky-purchase.is-visible {
    transform: translateY(0);
}

.iw-sticky-inner {
    max-width: 1440px;
    margin: 0 auto;
    height: 100%;
    padding: 0 1rem;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 0.75rem;
    align-items: center;
}

.iw-sticky-left {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 11px;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.56);
}

.iw-sticky-center {
    margin: 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: 1.24rem;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    color: var(--off-white);
}

.iw-ip-chrome {
    margin: 0 auto 0.28rem;
    max-width: 1440px;
    font-family: 'Space Mono', monospace;
    font-size: 0.62rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(204, 252, 0, 0.48);
    opacity: 0.6;
    white-space: nowrap;
    overflow-x: auto;
}

.iw-feature-ascii {
    border: 1px solid #3e5a16;
    background: #0f1209;
    color: var(--acid);
}

.iw-after-log {
    max-width: 980px;
    margin: 1rem auto 0;
    border: 1px solid #3e5a16;
    background: #0f1209;
    color: var(--acid);
    padding: 0.7rem;
}

.iw-after-log pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.73rem;
    line-height: 1.45;
    white-space: pre;
    overflow-x: auto;
}

.iw-status-log {
    max-width: 1440px;
    margin: 0.9rem auto 0;
    border: 1px solid #3e5a16;
    background: #0d1107;
    color: var(--acid);
    padding: 0.68rem;
}

.iw-status-log pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.72rem;
    line-height: 1.45;
    white-space: pre;
    overflow-x: auto;
}

.iw-unlimited-note {
    margin: 0.55rem 0 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.58rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--acid);
}

@media (max-width: 1200px) {
    .iw-showcase-grid,
    .iw-pricing-grid,
    .iw-faq-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .iw-use-case-grid,
    .iw-cross-sell-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 860px) {
    .iw-problem-grid,
    .iw-feature-inner,
    .iw-showcase-grid,
    .iw-pricing-grid,
    .iw-faq-grid,
    .iw-cross-sell-grid {
        grid-template-columns: 1fr;
    }

    .iw-hero-actions {
        justify-content: center;
    }

    .iw-solution-steps {
        grid-template-columns: 1fr;
    }

    .iw-step-arrow {
        display: none;
    }

    .iw-feature-inner.is-reverse .iw-feature-copy,
    .iw-feature-inner.is-reverse .iw-feature-visual {
        order: initial;
    }

    .iw-sticky-inner {
        grid-template-columns: 1fr auto;
        gap: 0.5rem;
    }

    .iw-sticky-left {
        display: none;
    }

    .iw-sticky-center {
        font-size: 1.05rem;
    }
}

/* Simple Fundraiser Variant */
.sf-comparison {
    position: relative;
    overflow: hidden;
    padding-top: clamp(3rem, 7vw, 5.5rem);
    padding-bottom: clamp(3rem, 8vw, 6rem);
}

.sf-comparison::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        repeating-linear-gradient(
            to bottom,
            rgba(255, 255, 255, 0.04) 0px,
            rgba(255, 255, 255, 0.04) 1px,
            transparent 1px,
            transparent 4px
        );
    opacity: 0.28;
}

.sf-comparison::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(255, 255, 255, 0.06) 0.5px, transparent 0.6px);
    background-size: 3px 3px;
    opacity: 0.18;
    animation: noise-drift 20s linear infinite;
}

.sf-comparison > * {
    position: relative;
    z-index: 1;
}

.sf-comparison-title {
    max-width: 1440px;
    margin: 0 auto;
    color: var(--off-white);
}

.sf-comparison-subhead {
    max-width: 1440px;
    margin: 0.4rem auto 0;
    font-size: 1.02rem;
    line-height: 1.6;
    color: rgba(240, 237, 232, 0.74);
}

.sf-compare-table {
    max-width: 1440px;
    margin: 0.9rem auto 0;
    border: 1px solid rgba(240, 237, 232, 0.3);
    border-left: 4px solid var(--orange);
    background: #0f0f0f;
    padding: 0.72rem;
}

.sf-compare-table pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.73rem;
    line-height: 1.44;
    color: rgba(240, 237, 232, 0.92);
    white-space: pre;
    overflow-x: auto;
}

.sf-comparison-callout {
    max-width: 1440px;
    margin: 0.85rem auto 0;
    font-family: 'Saira Extra Condensed', sans-serif;
    font-size: clamp(1.5rem, 3.9vw, 2.35rem);
    letter-spacing: 0.02em;
    line-height: 1;
    text-transform: uppercase;
    color: var(--orange);
}

.sf-feature-group {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0.45rem 1rem 0.25rem;
    font-family: 'Space Mono', monospace;
    font-size: 0.65rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(240, 237, 232, 0.62);
    background: #121212;
    border-top: 1px solid rgba(240, 237, 232, 0.18);
    border-bottom: 1px solid rgba(240, 237, 232, 0.14);
}

.sf-solution .pk-step-number {
    color: #e8213f;
}

.sf-solution::before,
.sf-solution::after {
    display: none;
}

.sf-solution.pk-solution {
    text-align: left;
}

.sf-solution .pk-solution-title {
    max-width: 10ch;
    margin: 0;
    color: var(--black);
}

.sf-solution .pk-solution-copy {
    margin: 0.7rem 0 1.15rem;
    max-width: 640px;
    color: rgba(10, 10, 10, 0.8);
}

.sf-solution .pk-step-card {
    border: 1px solid rgba(10, 10, 10, 0.28);
    background: #fff;
}

.sf-solution .pk-step-card h3 {
    color: var(--black);
}

.sf-solution .pk-step-card p {
    color: rgba(10, 10, 10, 0.78);
}

.sf-solution .pk-step-spec {
    color: #e8213f;
}

.sf-solution .pk-step-arrow {
    color: #e8213f;
    opacity: 0.46;
}

.sf-use-cases .pk-use-case-index {
    color: #e8213f;
}

.sf-pricing-value-primary,
.sf-pricing-value-secondary {
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    color: var(--black);
    line-height: 1.5;
}

.sf-pricing-value-primary {
    margin-top: 0.4rem;
    font-size: 1.08rem;
    font-weight: 600;
}

.sf-pricing-value-secondary {
    margin-top: 0.3rem;
    font-size: 0.95rem;
    color: rgba(10, 10, 10, 0.78);
}

.sf-pricing .pk-pricing-card.is-popular {
    border-color: #e8213f;
    box-shadow: 6px 6px 0 #e8213f;
}

.sf-pricing .pk-popular-badge {
    border: 1px solid #e8213f;
    background: #e8213f;
    color: var(--off-white);
}

.sf-btn-crimson {
    border-color: #8d1224;
    background: #e8213f;
    color: var(--off-white);
}

.sf-btn-crimson:hover,
.sf-btn-crimson:focus {
    box-shadow: 4px 4px 0 var(--orange);
}

.sf-pricing-compare-strip {
    max-width: 1440px;
    margin: 0.95rem auto 0;
    border: 1px solid rgba(10, 10, 10, 0.32);
    background: #111;
    color: var(--off-white);
    padding: 0.62rem 0.72rem;
}

.sf-pricing-compare-strip pre {
    margin: 0;
    font-family: 'Space Mono', monospace;
    font-size: 0.7rem;
    line-height: 1.45;
    white-space: pre;
    overflow-x: auto;
}

.sf-final-roi {
    margin: 0.7rem auto 0;
    max-width: 900px;
    font-family: 'Space Mono', monospace;
    font-size: 0.66rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: #e8213f;
    text-align: center;
}

.sf-cross-sell .pk-cross-sell-badge {
    border-color: #e8213f;
    background: #e8213f;
    color: var(--off-white);
}

@media (max-width: 860px) {
    .sf-comparison-subhead {
        font-size: 0.95rem;
    }

    .sf-compare-table pre {
        font-size: 0.62rem;
    }

    .sf-pricing-compare-strip pre {
        font-size: 0.62rem;
    }
}
