/* Inner-page heroes (not the home hero) — phone layout, overflow, motion */

@media (max-width: 767.98px) {
    .ap-hero,
    .sv-hero,
    .pp-hero,
    .cp-hero,
    .ct-hero,
    .bl-hero,
    .ev-hero,
    .be-hero,
    .svd-hero,
    .pd-hero,
    .bld-hero,
    .evd-hero {
        padding-top: 5.35rem;
        padding-bottom: 1.35rem;
        overflow-x: clip;
        max-width: 100%;
    }

    .ap-hero__layout,
    .sv-hero__layout,
    .pp-hero__layout,
    .cp-hero__layout,
    .ct-hero__layout,
    .bl-hero__layout,
    .ev-hero__layout,
    .pd-hero__layout,
    .svd-hero__layout,
    .be-hero__layout,
    .bld-hero__layout {
        grid-template-columns: 1fr !important;
        gap: 1.15rem !important;
        min-width: 0;
    }

    .ap-hero__title,
    .sv-hero__title,
    .pp-hero__title,
    .cp-hero__title,
    .ct-hero__title,
    .bl-hero__title,
    .ev-hero__title,
    .pd-hero__title,
    .svd-hero__title,
    .be-hero__title,
    .bld-hero__title,
    .evd-hero__title {
        font-size: clamp(1.55rem, 7.4vw, 2.05rem) !important;
        letter-spacing: -0.03em;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .ap-hero__line,
    .sv-hero__line,
    .pp-hero__line,
    .cp-hero__line,
    .ct-hero__line,
    .bl-hero__line,
    .ev-hero__line {
        white-space: normal !important;
        display: block;
    }

    .ap-hero__lead,
    .sv-hero__lead,
    .pp-hero__lead,
    .cp-hero__lead,
    .ct-hero__lead,
    .bl-hero__lead,
    .ev-hero__lead {
        font-size: 0.92rem !important;
        max-width: none;
    }

    .ap-hero__cta-row,
    .sv-hero__cta-row,
    .pp-hero__cta-row,
    .cp-hero__cta-row,
    .ct-hero__cta-row,
    .bl-hero__cta-row,
    .ev-hero__cta-row {
        gap: 0.55rem;
    }

    .ap-hero__cta-row > a,
    .sv-hero__cta-row > a,
    .pp-hero__cta-row > a,
    .cp-hero__cta-row > a,
    .ct-hero__cta-row > a,
    .bl-hero__cta-row > a,
    .ev-hero__cta-row > a {
        justify-content: center;
        flex: 1 1 10.5rem;
    }

    .ap-hero__signal,
    .ap-hero__signal-frame,
    .sv-hero__visual,
    .sv-hero__frame,
    .pp-hero__visual,
    .pp-hero__frame,
    .cp-hero__panel,
    .cp-hero__frame,
    .ct-hero__visual,
    .ct-hero__stage,
    .bl-hero__visual,
    .ev-hero__visual,
    .pd-hero__visual,
    .pd-hero__frame,
    .svd-hero__visual,
    .svd-hero__frame,
    .bld-hero__frame {
        width: 100%;
        max-width: 100% !important;
        min-height: 0 !important;
        margin-inline: auto;
        transform: none !important;
    }

    .ap-hero__signal-frame,
    .sv-hero__frame,
    .pp-hero__frame,
    .cp-hero__frame,
    .ct-hero__stage,
    .pd-hero__frame,
    .svd-hero__frame {
        min-height: 0 !important;
        aspect-ratio: 16 / 11;
        max-height: 42vh;
        border-radius: 16px;
        overflow: hidden;
    }

    .bl-stage {
        height: min(17.5rem, 46vh) !important;
        max-width: 100%;
        overflow: hidden;
    }

    .bl-issue {
        width: min(18rem, 92%) !important;
        height: min(16rem, 86%) !important;
    }

    .bl-stack3d,
    .ev-ticket3d {
        min-height: 0 !important;
        max-width: 100% !important;
    }

    .ev-reel {
        height: min(20rem, 52vh) !important;
        max-width: 100%;
        overflow: hidden;
    }

    .ev-ticket {
        width: 100% !important;
        min-height: 0 !important;
        max-width: 100% !important;
    }

    .ap-hero__chip,
    .cp-hero__chip,
    .sv-hero__float,
    .ct-hero__chip,
    .ct-hero__bubble,
    .pd-hero__float,
    .svd-hero__float,
    .bl-hero__float,
    .ev-hero__float {
        transform: none !important;
        animation: none !important;
        font-size: 0.62rem !important;
        padding: 0.28rem 0.45rem !important;
        max-width: calc(100% - 0.6rem);
    }

    .ap-hero__chip em,
    .cp-hero__chip em {
        font-size: 0.62rem;
    }

    .ct-hero__orbit,
    .ct-hero__scan,
    .ct-hero__orb,
    .ct-hero__grid,
    .ct-hero__beam,
    .ct-hero__particles span,
    .ct-hero__screen,
    .ct-hero__typing i,
    .ct-hero__skyline,
    .ap-hero__spark,
    .ap-hero__wash,
    .ap-hero__core-ring,
    .cp-hero__core-ring,
    .cp-hero__core-ring--outer,
    .sv-hero__float,
    .bl-hero__orb,
    .ev-hero__orb,
    .ev-ticket3d__face {
        animation: none !important;
    }

    .ct-hero__orbit {
        display: none;
    }

    .horizon-orb,
    .horizon-mesh,
    .horizon-track,
    .horizon-panel {
        animation: none !important;
    }

    .horizon-orb {
        opacity: 0.28;
        width: min(52vw, 200px) !important;
        height: min(52vw, 200px) !important;
    }

    .horizon.is-wiping .horizon-panel,
    .horizon.is-wiping .horizon-track {
        will-change: auto !important;
        transform-style: flat;
    }

    .process-orbit__ring--dash,
    .process-orbit__beam,
    .process-orbit__core-glow,
    .process-node__pulse,
    .about-visual__ring,
    .about-visual__orbit,
    .about-visual__glow,
    .sc-orbit-fx__ring,
    .sc-orbit-fx__arc,
    .sc-orbit-fx__semi,
    .cp-offer__tile,
    .cp-offer__pill,
    .cp-stack__float {
        animation: none !important;
    }

    .process-node:hover .process-node__icon,
    .process-node.is-active .process-node__icon,
    .process-node.is-done .process-node__icon {
        transform: none;
    }
}

@media (max-width: 430px) {
    .ap-hero__signal-frame,
    .sv-hero__frame,
    .pp-hero__frame,
    .cp-hero__frame,
    .ct-hero__stage,
    .pd-hero__frame,
    .svd-hero__frame {
        aspect-ratio: 4 / 3;
        max-height: 38vh;
    }

    .ap-hero__chip--c,
    .ap-hero__chip--d,
    .cp-hero__chip--c,
    .cp-hero__chip--d,
    .sv-hero__float--b,
    .ct-hero__bubble {
        display: none;
    }
}
