@media (max-width: 900px) {
    .split-section {
        grid-template-columns: 1fr;
    }

    .split-section img {
        order: -1;
    }
}

@media (max-width: 768px) {
    :root {
        --header-h: 64px;
    }

    .nav-toggle {
        display: block;
        order: 2;
        margin-left: auto;
    }

    .brand {
        order: 1;
        flex: 1 1 0;
        gap: 0.5rem;
    }

    .brand-logo {
        height: 28px;
        max-width: 190px;
    }

    .brand-title {
        font-size: 0.85rem;
    }

    .brand-sub {
        font-size: 0.6rem;
    }

    .site-nav {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        background: rgba(13, 40, 51, 0.98);
        border-bottom: 1px solid rgba(56, 189, 248, 0.2);
        padding: 0.5rem 0;
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        transition: max-height 0.35s ease, opacity 0.25s ease;
    }

    .site-header.nav-open .site-nav {
        max-height: 340px;
        opacity: 1;
    }

    .site-nav a {
        padding: 0.85rem 1.25rem;
        border-radius: 0;
        border-bottom: 1px solid rgba(56, 189, 248, 0.08);
    }

    .hero {
        padding: 3rem 1.25rem 3.5rem;
    }

    .hero p {
        font-size: 1rem;
    }

    .content {
        padding: 2rem 1.25rem 3rem;
    }

    .features {
        grid-template-columns: 1fr;
    }

    .contact-layout {
        grid-template-columns: 1fr;
    }

    .contact-form {
        padding: 1.5rem 1.25rem;
        gap: 1.5rem;
    }

    .contact-form-row {
        grid-template-columns: 1fr;
    }

    .contact-aside {
        position: static;
    }

    .contact-success {
        min-height: 280px;
        padding: 2.5rem 1.5rem;
    }

    .contact-submit.button {
        width: 100%;
        text-align: center;
    }
}

@media (max-width: 380px) {
    .header-inner {
        padding: 0.4rem 0.75rem;
        gap: 0.5rem;
    }

    .brand-logo {
        height: 24px;
        max-width: 150px;
    }

    .brand-title {
        font-size: 0.75rem;
    }
}

/* —— v2 mobile rules —— */
@media (max-width: 900px) {
    .book-hero {
        grid-template-columns: 1fr;
        gap: 1.5rem;
        padding: 2rem 1.25rem 1rem;
        text-align: center;
    }

    .book-hero-cover {
        max-width: 220px;
        margin: 0 auto;
    }

    .book-hero-ctas {
        justify-content: center;
    }

    .book-hero-meta {
        justify-content: center;
    }

    .who-for {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .newsletter-split {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .three-books-row {
        grid-template-columns: 1fr;
    }

    .related-books-grid {
        grid-template-columns: 1fr;
    }

    .thanks-cards {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .author-strip {
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }

    .offer-band {
        padding: 2.5rem 1.25rem;
    }

    .offer-band-ctas {
        flex-direction: column;
        align-items: stretch;
    }

    .offer-band-ctas .button {
        text-align: center;
    }

    .trust-strip {
        font-size: 0.85rem;
    }
}

/* —— v3 mobile rules —— */
@media (max-width: 900px) {
    .hero--featured {
        text-align: center;
        padding: 2.5rem 1.25rem 3rem;
    }

    .hero-featured-inner {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .hero--featured h1,
    .hero--featured p {
        text-align: center;
    }

    .hero--featured p {
        margin-left: auto;
        margin-right: auto;
    }

    .social-proof-line {
        text-align: left;
    }

    .hero-ctas {
        justify-content: center;
    }

    .hero-book {
        order: -1;
    }

    .hero-book img {
        max-width: 340px;
    }

    .book-hero--3d {
        grid-template-columns: 1fr;
    }

    .book-hero-cover--3d {
        width: 100%;
        max-width: 520px;
        height: auto;
        max-height: 88vh;
        margin: 0 auto;
    }

    .book-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .hero-ctas {
        flex-direction: column;
        align-items: stretch;
    }

    .hero-ctas .button {
        text-align: center;
    }

    .community-band {
        padding: 2.5rem 1.25rem;
    }
}
