/**
 * Pricing Tables — Dance Quest Classes section 1 (Divi pricing tables).
 * Live values: 80% column, tables touching with 1px #bebebe borders, #bcbcbc
 * headers with 34px white titles, featured header #325cb2 raised 30px with a
 * shadow, 80px light blue price, 50px price text, 16px body, outlined 20px
 * "Contact Us" button, row pulled up 410px over the banner.
 */
.pricingtables {
    position: relative;
    z-index: 2;
    padding: 65px 0 0;
}

.pricingtables--overlap { margin-top: -292px; padding-top: 0; } /* measured: tables start 188px below the banner top on the live page */

.pricingtables-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
    width: 80%;
    margin-inline: auto;
}

.pricingtables-table {
    position: relative;
    border: 1px solid #bebebe;
    background: #fafafa;
    text-align: center;
}

.pricingtables-table + .pricingtables-table { border-left: 0; }

.pricingtables-table--featured {
    z-index: 1;
    margin-top: -30px;
    border-left: 1px solid #bebebe;
    background: var(--background, #ffffff);
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
}

.pricingtables-table--featured + .pricingtables-table { border-left: 0; }

.pricingtables-head {
    padding: 10px 6px;
    background: #bcbcbc;
}

.pricingtables-table--featured .pricingtables-head { background: var(--primary, #325cb2); }

.pricingtables-title {
    margin: 0;
    font-family: var(--font-heading, "Open Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif);
    font-weight: 400;
    font-size: 34px;
    line-height: 1;
    color: var(--primary-foreground, #ffffff);
}

.pricingtables-price {
    padding: 20px 10px 30px;
    border-bottom: 1px solid #bebebe;
    color: var(--primary, #325cb2);
}

.pricingtables-currency {
    position: relative;
    top: -40px;
    margin-right: 4px;
    font-family: var(--font-paragraph, "Open Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif);
    font-size: 16px;
    color: #999999;
}

.pricingtables-sum {
    font-family: var(--font-heading, "Open Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif);
    font-weight: 300;
    font-size: 80px;
    line-height: 1;
}

.pricingtables-per {
    font-family: var(--font-paragraph, "Open Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif);
    font-size: 16px;
    color: #999999;
}

.pricingtables-text-price {
    display: block;
    padding: 6px 0;
    font-family: var(--font-heading, "Open Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif);
    font-weight: 300;
    font-size: 50px;
    line-height: 1.2;
}

.pricingtables-body {
    padding: 30px 12% 30px;
}

.pricingtables-body p {
    margin: 0 0 40px;
    font-family: var(--font-paragraph, "Open Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif);
    font-size: 16px;
    line-height: 1.6;
    color: var(--muted-foreground, #666666);
    text-align: left;
}

.pricingtables-button {
    display: inline-block;
    padding: 0.3em 1em;
    border: 2px solid var(--primary, #325cb2);
    border-radius: 3px;
    font-family: var(--font-label, "Open Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif);
    font-weight: 400;
    font-size: var(--font-size-xl, 20px);
    line-height: 1.7;
    color: var(--primary, #325cb2);
    text-decoration: none;
    transition: background-color 200ms ease, color 200ms ease;
}

.pricingtables-button:hover {
    background: var(--primary, #325cb2);
    color: var(--primary-foreground, #ffffff);
    border-bottom-color: var(--primary, #325cb2);
}

@media (max-width: 980px) {
    .pricingtables--overlap { margin-top: -160px; }
    .pricingtables-grid { grid-template-columns: 1fr; gap: 30px; }
    .pricingtables-table + .pricingtables-table,
    .pricingtables-table--featured + .pricingtables-table { border-left: 1px solid #bebebe; }
    .pricingtables-table--featured { margin-top: 0; }
}

@media (max-width: 767px) {
    .pricingtables-title { font-size: 28px; }
    .pricingtables-sum { font-size: 64px; }
    .pricingtables-text-price { font-size: 40px; }
}

/* button specificity. The theme-wide a:not(.btn) underline rule
   (border-bottom: 1px solid transparent) outranks .pricingtables-button and
   removed its bottom border; the live Divi button is also weight 500. */
.pricingtables a.pricingtables-button {
    border: 2px solid var(--primary, #325cb2);
    font-weight: 500;
}

.pricingtables a.pricingtables-button:hover {
    border-color: var(--primary, #325cb2);
}
