/* Mobile refinements for the standalone WooDetails product page. */

@media (max-width: 900px) {
    body .site-header {
        width: 100%;
        min-height: auto;
        display: block;
        visibility: visible;
        opacity: 1;
        position: sticky;
        top: 0;
        z-index: 1000;
        overflow: visible;
        transform: none;
    }

    body .site-header .nav {
        width: min(calc(100% - 24px), 1120px);
        min-height: auto;
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
        gap: 9px;
        padding-block: 10px;
        overflow: visible;
    }

    body .site-header .brand {
        max-width: 100%;
        flex: 0 1 auto;
    }

    body .site-header .brand-mark {
        flex-shrink: 0;
    }

    body .site-header .nav-links {
        width: 100%;
        min-width: 0;
        display: flex;
        align-items: center;
        flex-flow: row wrap;
        gap: 6px 8px;
    }

    body .site-header .nav-links a,
    body .site-header .nav-links a:not(.button) {
        width: auto;
        max-width: 100%;
        display: inline-flex;
        align-items: center;
        min-height: 34px;
        padding: 5px 7px;
        font-size: 12px;
        line-height: 1.25;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    body .site-header .nav-links .button {
        min-height: 38px;
        margin-inline-start: auto;
        padding: 0 13px;
        white-space: nowrap;
    }

    body .site-header img,
    body .site-header svg {
        max-width: 100%;
        height: auto;
    }

    body #features,
    body #comparison,
    body #pricing,
    body #faq {
        scroll-margin-top: 150px;
    }
}

@media (max-width: 767px) {
    body .container {
        width: min(calc(100% - 24px), 1120px);
    }

    body .nav {
        min-height: 62px;
        flex-wrap: wrap;
        gap: 9px 14px;
        padding-block: 10px;
    }

    body .brand {
        min-width: 0;
        gap: 8px;
        font-size: 17px;
        line-height: 1.25;
    }

    body .brand-mark {
        width: 38px;
        height: 38px;
        flex: 0 0 38px;
        border-radius: 11px;
        font-size: 19px;
    }

    body .nav-links {
        flex-wrap: wrap;
        gap: 8px;
    }

    body .nav-links .button,
    body .hero-actions .button,
    body .cta-box .button,
    body .pricing-card .button {
        width: auto;
        max-width: 100%;
        min-height: 44px;
        padding-inline: 17px;
        white-space: normal;
    }

    body .hero {
        padding-block: 48px 42px;
    }

    body .hero-grid {
        gap: 30px;
    }

    body .hero h1 {
        font-size: clamp(34px, 9.5vw, 48px);
        line-height: 1.07;
        letter-spacing: -1px;
    }

    body .hero-text {
        margin-top: 17px;
        font-size: 15px;
        line-height: 1.65;
    }

    body .hero-actions {
        align-items: center;
        justify-content: flex-start;
        gap: 10px;
        margin-top: 22px;
    }

    body .dashboard-card {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        padding: 16px;
        border-radius: 18px;
    }

    body .dashboard-toolbar {
        flex-wrap: wrap;
        gap: 7px;
        margin-bottom: 12px;
    }

    body .dashboard-toolbar .dot {
        width: 9px;
        height: 9px;
        flex: 0 0 9px;
    }

    body .dashboard-title {
        margin-bottom: 12px;
        font-size: clamp(16px, 5vw, 18px);
        line-height: 1.3;
        overflow-wrap: anywhere;
    }

    body .filters-preview {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 7px;
    }

    body .filters-preview .fake-input:last-child {
        grid-column: 1 / -1;
    }

    body .table-preview {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        display: grid;
        gap: 9px;
        margin-inline: auto;
        padding: 10px;
        overflow: visible;
        border: 1px solid var(--border);
        border-radius: 14px;
        background: var(--light);
        box-sizing: border-box;
    }

    body .table-preview,
    body .table-preview * {
        min-width: 0;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    body .table-preview .table-row.head {
        display: none;
    }

    body .table-preview .table-row {
        min-width: 0;
        min-height: 0;
        display: block;
        padding: 9px 11px;
        border: 1px solid var(--border);
        border-radius: 11px;
        background: var(--white);
    }

    body .table-preview .table-row > span {
        width: 100%;
        min-width: 0;
        display: grid;
        grid-template-columns: minmax(78px, 36%) minmax(0, 64%);
        align-items: center;
        gap: 9px;
        padding-block: 7px;
        border-radius: 0;
        background: transparent;
        color: inherit;
        overflow-wrap: anywhere;
    }

    body .table-preview .table-value {
        max-width: 100%;
        justify-self: start;
        text-align: start;
    }

    body .table-preview .table-row > span + span {
        border-top: 1px solid var(--border);
    }

    body .table-preview .table-row > span::before {
        content: attr(data-label);
        color: var(--muted);
        font-weight: 700;
        text-align: start;
    }

    body .table-preview .table-value.status,
    body .table-preview .table-value.whatsapp-pill {
        width: fit-content;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 5px 8px;
        text-align: center;
        white-space: normal;
    }

    body .table-preview .table-value.status {
        border-radius: 999px;
        background: #dcfce7;
        color: #166534;
    }

    body .table-preview .table-value.whatsapp-pill {
        border-radius: 7px;
        background: var(--whatsapp);
        color: var(--white);
    }

    body section {
        padding-block: 52px;
    }

    body .section-heading {
        margin-bottom: 28px;
    }

    body .section-heading h2 {
        font-size: clamp(28px, 8vw, 38px);
        line-height: 1.15;
    }

    body .section-heading p {
        margin-top: 11px;
        font-size: 15px;
        line-height: 1.6;
    }

    body .feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: stretch;
        gap: 12px;
    }

    body .feature-card {
        height: 100%;
        min-width: 0;
        padding: 17px;
        border-radius: 14px;
    }

    body .feature-icon {
        width: 42px;
        height: 42px;
        margin-bottom: 13px;
        font-size: 19px;
    }

    body .feature-card h3 {
        font-size: 16px;
        line-height: 1.3;
    }

    body .feature-card p {
        font-size: 13px;
        line-height: 1.5;
    }

    body .comparison-wrap {
        overflow: visible;
        border: 0;
        border-radius: 0;
    }

    body .comparison-table,
    body .comparison-table tbody,
    body .comparison-table tr,
    body .comparison-table td {
        width: 100%;
        min-width: 0;
        display: block;
    }

    body .comparison-table thead {
        display: none;
    }

    body .comparison-table tbody {
        display: grid;
        gap: 11px;
        background: transparent;
    }

    body .comparison-table tr {
        padding: 9px 12px;
        border: 1px solid var(--border);
        border-radius: 13px;
        background: var(--white);
    }

    body .comparison-table td,
    body .comparison-table td:first-child {
        min-width: 0;
        display: grid;
        grid-template-columns: minmax(82px, 36%) minmax(0, 64%);
        align-items: start;
        gap: 10px;
        padding: 8px 0;
        border: 0;
        text-align: start;
        overflow-wrap: anywhere;
    }

    body .comparison-table td + td {
        border-top: 1px solid var(--border);
    }

    body .comparison-table td::before {
        content: attr(data-label);
        color: var(--dark);
        font-weight: 700;
        text-align: start;
    }

    body .pricing-card {
        padding: 24px 19px;
    }

    body .price {
        font-size: clamp(34px, 10vw, 48px);
        line-height: 1.15;
    }

    body .pricing-list {
        gap: 9px;
        margin-block: 20px;
    }

    body details {
        padding: 15px 16px;
    }

    body .cta-box {
        padding: 28px 18px;
    }

    body .footer-content {
        gap: 8px;
    }
}

@media (max-width: 340px) {
    body .feature-grid,
    body .filters-preview {
        grid-template-columns: 1fr;
    }

    body .filters-preview .fake-input:last-child {
        grid-column: auto;
    }

    body .nav {
        align-items: flex-start;
        flex-direction: column;
    }

    body .nav-links,
    body .hero-actions {
        width: 100%;
    }

    body .site-header .nav-links .button {
        margin-inline-start: 0;
    }

    body #features,
    body #comparison,
    body #pricing,
    body #faq {
        scroll-margin-top: 205px;
    }

    body .table-preview {
        gap: 8px;
        padding: 8px;
    }

    body .table-preview .table-row {
        padding: 8px 10px;
    }

    body .table-preview .table-row > span {
        grid-template-columns: 1fr;
        gap: 4px;
    }

    body .comparison-table td,
    body .comparison-table td:first-child {
        grid-template-columns: minmax(72px, 34%) minmax(0, 66%);
        gap: 8px;
    }
}

@media (orientation: landscape) and (max-height: 520px) and (max-width: 900px) {
    body .hero {
        padding-block: 34px;
    }

    body section {
        padding-block: 42px;
    }
}
