/* SLM Pricing Guide + shared card/table styles (Batch E).
   Contrast: #3B2A1F on #F3E6D6 11.1:1 · #4A4038 on #FFF 10.1:1 · #9A4527 links on #FFF 6.5:1 · #46733F on #FFF/#FBF7F1 5.6/5.2:1 · white on #B5522F 5.0:1 */

body .slm-card {
    margin: 0 0 1.5rem;
    padding: clamp(1.1rem, 3vw, 1.75rem);
    border: 1px solid #EADCCB;
    border-top: 4px solid #B5522F;
    border-radius: .5rem;
    background: #FFFFFF;
    box-shadow: 0 .18rem .55rem rgba(59, 42, 31, .07);
}

body .slm-pricing__category:nth-of-type(3n + 2) { border-top-color: #F2B233; }
body .slm-pricing__category:nth-of-type(3n) { border-top-color: #4E7F46; }

body .slm-pricing__intro {
    max-width: 65ch;
    margin: 0 0 1.75rem;
    color: #4A4038;
    font-size: 1.0625rem;
    line-height: 1.6;
}

body .slm-pricing a[href]:not(.btn-primary):not(.btn-secondary) {
    color: #9A4527;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: .18em;
}

body .slm-pricing a[href]:not(.btn-primary):not(.btn-secondary):hover {
    color: #3B2A1F;
}

body .slm-pricing__heading {
    margin: 0 0 .5rem;
    font-family: "Montserrat", system-ui, sans-serif;
    font-size: clamp(1.125rem, 2.2vw, 1.3rem);
    font-weight: 700;
    line-height: 1.3;
}

body .slm-pricing__intro a[href] {
    white-space: nowrap;
}

body .slm-pricing__note,
body .slm-pricing__over {
    margin: 0 0 .85rem;
    color: #4A4038;
    font-size: .9375rem;
}

body .slm-pricing__over {
    margin: .85rem 0 0;
    font-weight: 700;
}

/* Tables scroll sideways inside their card on small screens. */
body .slm-table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid #EADCCB;
    border-radius: .375rem;
}

body .slm-table-scroll:focus-visible {
    outline: 2px solid #B5522F;
    outline-offset: 2px;
}

body .slm-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    color: #4A4038;
    font-size: .9375rem;
    text-align: left;
}

/* Only the 5-column delivery chart needs to scroll sideways on phones. */
body .slm-table--wide {
    min-width: 30rem;
}

/* Same column widths in every product table so they line up down the page. */
body .slm-table:not(.slm-table--wide) thead th:nth-child(1) { width: 42%; }
body .slm-table:not(.slm-table--wide) thead th:nth-child(2) { width: 30%; }

body .slm-table th,
body .slm-table td {
    padding: .7rem .9rem;
    border: 0;
    border-bottom: 1px solid #EADCCB;
    vertical-align: top;
    line-height: 1.4;
}

body .slm-table thead th {
    background: #F3E6D6;
    color: #3B2A1F;
    font-size: .8125rem;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
    white-space: nowrap;
}

body .slm-table tbody th {
    color: #3B2A1F;
    font-weight: 600;
}

body .slm-table tbody tr:last-child th,
body .slm-table tbody tr:last-child td {
    border-bottom: 0;
}

body .slm-table tbody tr:nth-child(even) {
    background: #FBF7F1;
}

body .slm-table__price {
    color: #3B2A1F;
    font-weight: 700;
    white-space: nowrap;
}

body .slm-table__sub {
    display: block;
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
}

/* Darker cactus green: #46733F passes on white (5.6:1) and on sand rows (5.2:1). */
body .slm-free {
    color: #46733F;
}

body .slm-badge {
    display: inline-block;
    margin-left: .4rem;
    padding: .1rem .4rem;
    border-radius: .25rem;
    background: #B5522F;
    color: #FFFFFF;
    font-size: .72rem;
    font-weight: 700;
    vertical-align: middle;
}

body .slm-list {
    display: grid;
    gap: .5rem;
    margin: 0;
    padding-left: 1.2rem;
    color: #4A4038;
}

body .slm-list strong {
    color: #3B2A1F;
}

/* Buttons row: gold call, rust quote, outlined secondary. */
body .slm-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin: 1.5rem 0 0;
}

body .slm-actions .btn-primary,
body .slm-actions .btn-secondary {
    min-height: 3rem;
    text-decoration: none;
}

/* `a[href]` selectors outrank the theme's `.prose a[href]` link color (which turned button text rust-on-rust). */
body .slm-actions a.btn-primary[href],
body .slm-actions a.btn-primary[href]:hover,
body .slm-actions a.btn-primary[href]:visited {
    color: #FFFFFF;
}

body .slm-actions a.slm-btn-gold[href] {
    background: #F2B233;
    color: #3B2A1F;
}

body .slm-actions a.slm-btn-gold[href]:hover {
    background: #F7C661;
    color: #3B2A1F;
}

body .slm-actions a.slm-btn-outline[href] {
    border-color: #3B2A1F;
    color: #3B2A1F;
}

@media (max-width: 640px) {
    body .slm-table th,
    body .slm-table td {
        padding: .6rem .55rem;
    }

    body .slm-actions > a {
        flex: 1 1 100%;
    }
}
