/*
 * PluginHub — Hybrid Font System Override
 * Loaded after style.css to apply the new type system site-wide.
 *
 * FONT STACK SUMMARY
 * ------------------
 * Prompt 700          → Logo wordmark (.logo span)
 * Big Shoulders Display 900 → Hero h1, pricing numbers (.price)
 * Oswald 600 uppercase → All section/page headings (h1, h2, pricing-heading,
 *                         testimonials h2, requirements h2, pricing-tier labels)
 * General Sans 600/500 → Feature card titles (h3) + feature card body copy
 * Inter 400–700        → Everything else (nav, body, buttons, legal, footer)
 */

/* ── Logo wordmark ── */
.logo span {
    font-family: "Prompt", sans-serif;
    font-weight: 700;
    font-size: 1.2rem;
    letter-spacing: -0.02em;
}

/* ── Hero headline ── */
.hero h1 {
    font-family: "Big Shoulders Display", sans-serif;
    font-size: 4.5rem;
    font-weight: 900;
    letter-spacing: -0.01em;
    line-height: 0.97;
}
@media (max-width: 767px) {
    .hero h1 { font-size: 2.6rem; }
}

/* ── Section & page headings → Oswald ── */
.testimonials h2,
.pricing-heading,
.requirements h2,
.beta-modal-box h2,
.newsletter h2,
.faq h1,
.vendors-hero h1,
.about-wrap h1,
h1.contact-page-title,
.vendors h1,
.vendors h2,
.legal h1 {
    font-family: "Oswald", sans-serif;
    font-weight: 600;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

/* Legal h2 — uppercase but slightly smaller tracking */
.legal h2 {
    font-family: "Oswald", sans-serif;
    font-weight: 600;
    letter-spacing: 0.01em;
    text-transform: uppercase;
}

/* ── Pricing sub-label ("Pay once, use forever.") stays Inter ── */
.pricing-sub {
    font-family: "Inter", sans-serif;
    text-transform: none;
    letter-spacing: 0;
}

/* ── Pricing tier labels (Single / Studio / Studio Pro) ── */
.pricing-tier {
    font-family: "Oswald", sans-serif;
    font-weight: 500;
    font-size: 1rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

/* ── Pricing numbers ── */
.price {
    font-family: "Big Shoulders Display", sans-serif;
    font-weight: 900;
    font-size: 4rem;
    letter-spacing: -0.02em;
}

/* ── Nav links → all caps ── */
.site-nav > a:not(.btn),
.nav-dropdown a {
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-size: 0.8rem;
}

/* ── Demo video section ── */
.demo-section {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 1.5rem 3rem;
    text-align: center;
}
.demo-section .section-eyebrow {
    font-family: "Oswald", sans-serif;
    font-weight: 600;
    font-size: 0.75rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #555;
    margin-bottom: 1rem;
}
.demo-video-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 12px;
    overflow: hidden;
    background: #111;
    border: 1px solid #222;
}
.demo-video-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}

/* ── Mobile: feature cards 2-col ── */
@media (max-width: 768px) {
    .features-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .feature-card {
        padding: 1.1rem !important;
    }
    .feature-icon {
        margin-bottom: 0.6rem !important;
    }
    .feature-icon svg {
        width: 22px !important;
        height: 22px !important;
    }
    .feature-card h3 { font-size: 0.85rem; margin-bottom: 0.3rem !important; }
    .feature-card p  { font-size: 0.75rem; line-height: 1.45; }
}

/* ── Feature card headings + body → General Sans ── */
.features-grid h3 {
    font-family: "General Sans", sans-serif;
    font-weight: 600;
    font-size: 1.05rem;
    letter-spacing: -0.01em;
}

.feature-card p {
    font-family: "General Sans", sans-serif;
}
