@media (max-width: 980px) {
    h1 {
        font-size: 2.7rem;
    }

    .hero {
        min-height: auto;
        padding: 70px 0;
    }

    .hero-grid,
    .commercial-hero-grid,
    .community-pricing-grid,
    .koricard-hero-grid,
    .event-hero-grid,
    .event-business-grid,
    .event-register-grid,
    .split,
    .footer-grid,
    .cta-inner,
    .conversion-panel,
    .admin-grid,
    .qr-admin-grid {
        grid-template-columns: 1fr;
    }

    .commercial-hero {
        min-height: auto;
    }

    .commercial-hero-grid {
        padding: 64px 0;
    }

    .hero-showcase {
        min-height: 540px;
    }

    .showcase-phone-main {
        right: 8%;
        width: min(340px, 58%);
        height: 520px;
    }

    .showcase-phone-side {
        width: min(280px, 44%);
        height: 420px;
    }

    .showcase-phone-low {
        width: min(240px, 40%);
        height: 320px;
    }

    .impact-grid,
    .event-topic-grid,
    .feature-board,
    .feature-board-large,
    .pricing-grid,
    .journey-grid,
    .criteria-grid,
    .model-strip,
    .visual-example-grid-premium,
    .value-button-grid,
    .kori-price-grid,
    .kori-benefit-grid,
    .legal-policy-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .modules-showcase {
        grid-template-columns: 1fr;
    }

    .module-pill-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .conversion-actions {
        justify-content: center;
    }

    .intake-guide {
        position: static;
    }

    .event-register-copy {
        position: static;
    }

    .event-outcome-list {
        grid-template-columns: repeat(3, 1fr);
    }

    .giro-columns {
        grid-template-columns: 1fr;
    }

    .cta-inner {
        display: grid;
        align-items: start;
    }

    .card-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .pill-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .example-grid {
        grid-template-columns: 1fr;
    }

    .visual-example-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .profile-items,
    .profile-gallery {
        grid-template-columns: repeat(2, 1fr);
    }

    .lp-phone {
        width: min(520px, calc(100% - 28px));
    }

    .admin-header-inner,
    .admin-nav {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-metrics {
        grid-template-columns: repeat(2, 1fr);
    }

    .qr-card-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .main-nav {
        position: absolute;
        left: auto;
        right: 20px;
        top: 76px;
        z-index: 30;
        width: min(360px, calc(100vw - 28px));
        max-height: min(50vh, 360px);
        overflow-y: auto;
        display: none;
        flex-direction: column;
        align-items: stretch;
        padding: 10px;
        border: 1px solid var(--line);
        border-radius: var(--radius);
        background: var(--white);
        box-shadow: var(--shadow);
    }

    .main-nav a {
        padding: 12px;
    }

    .main-nav.is-open {
        display: flex;
    }

    .menu-toggle {
        display: inline-flex;
    }

    .header-inner {
        min-height: 74px;
    }

    .brand-logo {
        width: 170px;
    }

    .demo-entry-grid,
    .express-grid,
    .preview-layout,
    .advanced-request-grid,
    .demo-package-grid {
        grid-template-columns: 1fr;
    }

    .demo-phone-frame,
    .demo-live-phone,
    .preview-phone,
    .preview-status-panel,
    .advanced-sticky-panel {
        position: static;
    }

    .preview-layout {
        gap: 24px;
    }

    .demo-mini-pricing,
    .cta-selector,
    .package-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 620px) {
    .shell {
        width: min(100% - 28px, 1120px);
    }

    h1 {
        font-size: 2.25rem;
    }

    h2 {
        font-size: 1.65rem;
    }

    .section {
        padding: 58px 0;
    }

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

    .pill-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .actions,
    .cta-row,
    .conversion-actions {
        flex-direction: column;
    }

    .button {
        width: 100%;
    }

    .brand-logo {
        width: 154px;
    }

    .visual-example-grid {
        grid-template-columns: 1fr;
    }

    .commercial-hero-grid {
        padding: 52px 0;
    }

    .event-hero-grid {
        padding: 52px 0;
    }

    .event-hero-copy h1 {
        font-size: 2.55rem;
    }

    .event-meta-strip {
        display: grid;
        grid-template-columns: 1fr;
    }

    .event-poster img {
        max-height: 620px;
    }

    .commercial-hero-copy h1 {
        font-size: 2.5rem;
    }

    .hero-lead {
        font-size: 1.02rem;
    }

    .hero-proof {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .hero-proof span {
        text-align: center;
    }

    .hero-showcase {
        min-height: 480px;
    }

    .showcase-phone {
        box-shadow: 0 16px 42px rgba(5, 5, 5, .18);
    }

    .showcase-phone-main {
        right: 0;
        width: 62%;
        height: 460px;
    }

    .showcase-phone-side {
        top: 54px;
        width: 48%;
        height: 360px;
    }

    .showcase-phone-low {
        display: none;
    }

    .impact-grid,
    .event-topic-grid,
    .event-outcome-list,
    .feature-board,
    .feature-board-large,
    .pricing-grid,
    .journey-grid,
    .criteria-grid,
    .model-strip,
    .visual-example-grid-premium,
    .module-pill-grid,
    .value-button-grid {
        grid-template-columns: 1fr;
    }

    .modules-hero-card img {
        min-height: 310px;
        max-height: 420px;
    }

    .faq-actions .button {
        width: 100%;
        min-width: 0;
    }

    .journey-grid article {
        min-height: 220px;
    }

    .journey-cta {
        align-items: stretch;
        text-align: center;
    }

    .criteria-grid img {
        height: 320px;
    }

    .price-highlight {
        grid-template-columns: 1fr;
        padding: 22px;
    }

    .price-side-mark {
        width: 100%;
        height: 48px;
    }

    .site-footer {
        padding: 34px 0;
    }

    .model-strip figure,
    .model-strip figure:nth-child(2),
    .model-strip figure:nth-child(4) {
        height: 430px;
        margin-top: 0;
    }

    .conversion-panel {
        padding: 24px;
    }

    .footer-grid {
        gap: 24px;
    }

    .footer-brand img {
        width: 174px;
    }

    .public-lightbox,
    .public-info-modal {
        padding: 14px;
    }

    .public-info-card {
        padding: 22px;
    }

    .page-hero-panel {
        padding: 22px;
    }

    .hero-example {
        max-height: 460px;
    }

    .mockup {
        min-height: 360px;
    }

    .process-list li {
        grid-template-columns: 1fr;
    }

    .admin-metrics {
        grid-template-columns: 1fr;
    }

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

    .detail-list {
        grid-template-columns: 1fr;
    }

    .demo-choice-grid,
    .community-tier-grid,
    .kori-price-grid,
    .kori-benefit-grid,
    .legal-policy-grid,
    .demo-process-grid,
    .demo-public-layout,
    .crm-filter-form,
    .product-map-grid,
    .form-grid.two,
    .advanced-mini-grid,
    .demo-mini-pricing,
    .cta-selector,
    .package-grid {
        grid-template-columns: 1fr;
    }

    .demo-choice-card {
        min-height: auto;
        padding: 22px;
    }

    .demo-phone-actions,
    .demo-live-actions,
    .preview-buttons {
        grid-template-columns: repeat(2, 1fr);
    }

    .demo-live-phone {
        min-height: auto;
    }

    .preview-phone-screen {
        border-radius: 24px;
    }

    .zone-card {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .zone-card > span,
    .zone-card a {
        margin-right: auto;
        margin-left: auto;
        grid-column: auto;
    }

    .demo-public-copy {
        text-align: center;
    }

    .demo-public-actions {
        justify-content: center;
    }

    .advanced-block {
        padding: 22px;
    }

    .event-form-panel {
        padding: 22px;
    }

    .event-topic-grid article {
        min-height: auto;
        padding: 18px;
    }

    .event-topic-grid span {
        font-size: 2rem;
    }

    .event-topic-grid h3 {
        margin-bottom: 8px;
    }

    .event-topic-grid p {
        margin-bottom: 0;
        font-size: .94rem;
    }

    .event-check-list {
        gap: 8px;
        margin-top: 16px;
    }

    .event-check-list li {
        padding: 10px 12px;
        font-size: .92rem;
    }

    .event-interest-grid {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .event-interest-option {
        min-height: auto;
        padding: 10px 11px;
        font-size: .92rem;
    }

    .advanced-block > span {
        position: static;
        font-size: 2rem;
        color: var(--cyan-dark);
    }

    .profile-items,
    .profile-gallery {
        grid-template-columns: 1fr;
    }

    .linkora-profile {
        padding: 0;
        background: var(--profile-panel);
    }

    .lp-phone {
        width: 100%;
        min-height: 100vh;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .lp-phone::before {
        display: none;
    }

    .lp-status {
        display: none;
    }

    .lp-hero {
        min-height: 610px;
        padding: 34px 18px 24px;
    }

    .lp-rings {
        right: -135px;
    }

    .lp-portrait {
        top: 22px;
        right: -104px;
        width: 360px;
        height: 420px;
    }

    .lp-hero-content {
        max-width: 330px;
    }

    .lp-client-logo {
        width: 126px;
        margin-bottom: 292px;
    }

    .lp-hero h1 {
        font-size: 2.42rem;
    }

    .lp-actions {
        grid-template-columns: repeat(2, 1fr);
        padding-inline: 16px;
    }

    .lp-section {
        padding-inline: 16px;
    }

    .lp-solutions {
        grid-template-columns: 1fr;
    }

    .lp-solutions article {
        min-height: auto;
    }

    .lp-documents a {
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .lp-contact-form {
        grid-template-columns: 1fr;
    }

    .lp-lightbox {
        padding: 14px;
    }

    .lp-lightbox img {
        max-height: 72vh;
    }

    .contained {
        padding-left: 34px;
    }
}

/* Keep the LINKORA hamburger icon stacked after responsive overrides. */
.menu-toggle {
    display: inline-grid;
    gap: 5px;
    place-content: center;
    align-items: center;
    justify-items: center;
}

.menu-toggle span {
    display: block;
    flex: none;
}
