 /* ============================================
       FONT
    ============================================ */
    @font-face {
        font-family: 'Futura Condensed ExtraBold';
        src: url('<?php echo get_stylesheet_directory_uri(); ?>/assets/fonts/FuturaCondensedExtraBold.otf') format('opentype');
        font-weight: 900;
        font-style: normal;
    }

    /* ============================================
       RESET & BASE
    ============================================ */
    :root {
        --red:   #E8321A;
        --black: #111111;
        --white: #FFFFFF;
        --font-display: 'Futura Condensed ExtraBold', sans-serif;
        --font-body:    'Arial Narrow', Arial, sans-serif;
    }

    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; }

    body {
        font-family: var(--font-body);
        background: #111;
        color: #fff;
        min-height: 100vh;
        overflow-x: hidden;
    }

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

    /* ============================================
       HEADER BAR — minimal, no nav
    ============================================ */
    .qp-header {
        background: #111;
        border-bottom: 3px solid var(--red);
        padding: 16px 24px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px;
    }

    .qp-logo img {
        height: 48px;
        width: auto;
    }

    .qp-logo-text {
        font-family: var(--font-display);
        font-size: 1.4rem;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: #fff;
    }

    .qp-logo-text span { color: var(--red); }

    .qp-header-phone {
        font-family: var(--font-display);
        font-size: 1rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #aaa;
        transition: color 0.2s;
    }

    .qp-header-phone:hover { color: var(--red); }

    /* ============================================
       HERO BAR — trust strip
    ============================================ */
    .qp-trust {
        background: var(--red);
        padding: 10px 24px;
        overflow: hidden;
    }

    .qp-trust-inner {
        display: flex;
        gap: 40px;
        animation: ticker 20s linear infinite;
        white-space: nowrap;
    }

    .qp-trust-item {
        font-family: var(--font-display);
        font-size: 0.85rem;
        font-weight: 700;
        letter-spacing: 0.15em;
        text-transform: uppercase;
        color: #fff;
        flex-shrink: 0;
    }

    .qp-trust-item::before { content: '⚡ '; }

    @keyframes ticker {
        0%   { transform: translateX(0); }
        100% { transform: translateX(-50%); }
    }

    /* ============================================
       MAIN LAYOUT
    ============================================ */
    .qp-main {
        display: grid;
        grid-template-columns: 1fr 1.4fr;
        min-height: calc(100vh - 110px);
    }

    /* Left — pitch copy */
    .qp-left {
        background: #111;
        padding: 56px 48px 56px 24px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        max-width: 520px;
        margin-left: auto;
    }

    .qp-eyebrow {
        font-family: var(--font-display);
        font-size: 0.8rem;
        font-weight: 700;
        letter-spacing: 0.22em;
        text-transform: uppercase;
        color: var(--red);
        margin-bottom: 12px;
    }

    .qp-headline {
        font-family: var(--font-display);
        font-weight: 900;
        font-size: clamp(2.4rem, 4vw, 3.6rem);
        line-height: 0.95;
        text-transform: uppercase;
        color: #fff;
        margin-bottom: 16px;
    }

    .qp-headline span { color: var(--red); }

    .qp-sub {
        font-family: var(--font-display);
        font-size: 1rem;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #444;
        margin-bottom: 40px;
    }

    .qp-perks {
        list-style: none;
        display: flex;
        flex-direction: column;
        gap: 0;
        border-top: 1px solid #1e1e1e;
    }

    .qp-perk {
        display: flex;
        align-items: center;
        gap: 14px;
        font-family: var(--font-display);
        font-size: 1rem;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        color: #555;
        padding: 14px 0;
        border-bottom: 1px solid #1e1e1e;
        transition: color 0.2s;
    }

    .qp-perk:hover { color: #aaa; }

    .qp-perk-check {
        width: 20px;
        height: 20px;
        background: var(--red);
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 10px;
        flex-shrink: 0;
    }

    .qp-areas {
        margin-top: 32px;
        font-family: var(--font-display);
        font-size: 0.8rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: #333;
        line-height: 1.8;
    }

    .qp-areas strong {
        color: #555;
        display: block;
        margin-bottom: 4px;
    }

    /* Right — form panel */
    .qp-right {
        background: #1c1c1c;
        padding: 48px 48px 48px 56px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .qp-form-title {
        font-family: var(--font-display);
        font-weight: 900;
        font-size: clamp(1.6rem, 3vw, 2.4rem);
        text-transform: uppercase;
        color: #fff;
        line-height: 1;
        margin-bottom: 6px;
    }

    .qp-form-sub {
        font-family: var(--font-display);
        font-size: 0.85rem;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: #444;
        margin-bottom: 28px;
    }

    /* Form wrapper — no extra bg, flows into panel */
    .qp-form-wrap .jf {
        background: transparent !important;
        padding: 0 !important;
        border-top: none !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* ============================================
       FOOTER — minimal
    ============================================ */
    .qp-footer {
        background: #0a0a0a;
        border-top: 1px solid #1a1a1a;
        padding: 20px 24px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px;
    }

    .qp-footer-copy {
        font-family: var(--font-display);
        font-size: 0.75rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: #333;
    }

    .qp-footer-links {
        display: flex;
        gap: 24px;
    }

    .qp-footer-links a {
        font-family: var(--font-display);
        font-size: 0.75rem;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: #333;
        transition: color 0.2s;
    }

    .qp-footer-links a:hover { color: var(--red); }

    /* ============================================
       RESPONSIVE
    ============================================ */
    @media (max-width: 768px) {
        .qp-main {
            grid-template-columns: 1fr;
            min-height: auto;
        }

        .qp-left {
            padding: 40px 24px 28px;
            max-width: 100%;
            margin-left: 0;
        }

        .qp-perks { display: none; } /* clean on mobile */

        .qp-right {
            padding: 32px 20px 48px;
        }

        .qp-areas { display: none; }

        .qp-footer {
            flex-direction: column;
            text-align: center;
        }
    }