@layer pages {
    .nur-pricetable table {
        width: 100%;
        border-collapse: separate;
        border-spacing: 0;
    }

    .nur-pricetable thead {
        display: none;
    }

    .nur-pricetable tbody {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: var(--nur-space-3);
    }

    /* phones: each program is a card, prices are labelled chips */
    .nur-pricetable tr {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: var(--nur-space-2);
        padding: var(--nur-space-4);
        border: 1px solid var(--nur-line);
        border-left: 4px solid var(--nur-gold-500);
        border-radius: var(--nur-radius);
        background: var(--nur-surface);
    }

    .nur-pricetable__name {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 2px;
        text-align: left;
    }

    .nur-pricetable__name a {
        color: var(--nur-primary-strong);
        font-weight: 800;
        line-height: 1.3;
    }

    .nur-pricetable__name a:hover {
        color: var(--nur-primary);
        text-decoration: underline;
    }

    .nur-pricetable__name small {
        color: var(--nur-ink-soft);
        font-size: var(--nur-text-xs);
        font-weight: 500;
    }

    .nur-pricetable td {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 2px;
        padding: var(--nur-space-2) var(--nur-space-3);
        border-radius: var(--nur-radius-sm);
        background: var(--nur-sand-50);
        color: var(--nur-primary-strong);
        font-weight: 700;
    }

    .nur-pricetable td::before {
        content: attr(data-label);
        color: var(--nur-ink-soft);
        font-size: 0.6875rem;
        font-weight: 600;
    }

    .nur-pricetable td:first-of-type {
        grid-column: 1 / -1;
        background: none;
        padding: 0;
        color: var(--nur-green-700);
    }

    .nur-pricetable__note {
        margin-top: var(--nur-space-4);
    }

    @media (min-width: 768px) {
        .nur-pricetable {
            overflow: hidden;
            border: 1px solid var(--nur-line);
            border-radius: var(--nur-radius);
            background: var(--nur-surface);
            box-shadow: var(--nur-shadow-sm);
        }

        .nur-pricetable thead {
            display: table-header-group;
        }

        .nur-pricetable tbody {
            display: table-row-group;
        }

        .nur-pricetable th,
        .nur-pricetable td {
            padding: var(--nur-space-3) var(--nur-space-4);
            text-align: left;
        }

        .nur-pricetable thead th {
            background: var(--nur-sand-50);
            border-bottom: 1px solid var(--nur-line);
            color: var(--nur-ink-soft);
            font-size: var(--nur-text-xs);
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            white-space: nowrap;
        }

        .nur-pricetable tr {
            display: table-row;
            padding: 0;
            border: 0;
            border-radius: 0;
            background: none;
        }

        .nur-pricetable tbody tr {
            box-shadow: inset 4px 0 0 var(--nur-gold-500);
        }

        .nur-pricetable tbody tr:hover {
            background: var(--nur-sand-50);
        }

        .nur-pricetable tbody tr + tr > * {
            border-top: 1px solid var(--nur-line);
        }

        .nur-pricetable td {
            display: table-cell;
            border-radius: 0;
            background: none;
            white-space: nowrap;
        }

        .nur-pricetable td::before {
            content: none;
        }

        .nur-pricetable td:first-of-type {
            color: var(--nur-ink-soft);
            font-weight: 600;
        }

        .nur-pricetable__name {
            display: table-cell;
            padding-left: var(--nur-space-5);
        }

        .nur-pricetable__name small {
            display: block;
            margin-top: 2px;
        }
    }
}
