/* ─── Pricing Page ──────────────────────────────────────────────────────── */

/* ── Tier cards ─────────────────────────────────────────────────────────── */
.pricing-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1.5px solid #e5e7eb;
    border-radius: var(--eqwiid-radius);
    padding: 1.5rem;
    height: 100%;
    transition: box-shadow 0.2s, transform 0.15s;
}

.pricing-card:hover {
    box-shadow: var(--eqwiid-shadow-lg);
    transform: translateY(-3px);
}

.pricing-card-featured {
    background: var(--eqwiid-primary);
    border-color: var(--eqwiid-primary);
    color: #fff;
    position: relative;
}

/* Card top section */
.pricing-card-top {
    margin-bottom: 1.25rem;
}

.pricing-tier-name {
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: 0.4px;
}

.pricing-popular-badge {
    background: var(--eqwiid-secondary);
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    padding: 2px 9px;
    border-radius: 20px;
    letter-spacing: 0.2px;
}

.pricing-horses-range {
    font-size: 0.82rem;
    color: var(--eqwiid-gray-400);
    margin-top: 3px;
}

.pricing-card-featured .pricing-horses-range {
    color: rgba(255, 255, 255, 0.75);
}

/* Price block */
.pricing-price-block {
    margin-bottom: 1.25rem;
}

.pricing-from-label {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--eqwiid-gray-400);
    display: block;
    margin-bottom: 2px;
}

.pricing-card-featured .pricing-from-label {
    color: rgba(255, 255, 255, 0.7);
}

.pricing-amount-row {
    display: flex;
    align-items: baseline;
    gap: 0.3rem;
}

.pricing-amount {
    font-size: 2.25rem;
    font-weight: 800;
    color: var(--eqwiid-primary);
    line-height: 1.1;
}

.pricing-card-featured .pricing-amount {
    color: #fff;
}

.pricing-period {
    font-size: 0.88rem;
    color: var(--eqwiid-gray-500);
}

.pricing-card-featured .pricing-period {
    color: rgba(255, 255, 255, 0.75);
}

.pricing-unit-label {
    font-size: 0.75rem;
    color: var(--eqwiid-gray-400);
    margin-top: 4px;
}

.pricing-card-featured .pricing-unit-label {
    color: rgba(255, 255, 255, 0.65);
}

/* Description */
.pricing-card-desc {
    font-size: 0.87rem;
    color: var(--eqwiid-gray-500);
    flex-grow: 1;
    margin-bottom: 1.25rem;
    line-height: 1.55;
}

.pricing-card-featured .pricing-card-desc {
    color: rgba(255, 255, 255, 0.85);
}

/* Featured CTA override */
.pricing-card-featured .btn-light {
    color: var(--eqwiid-primary);
    font-weight: 600;
}

.pricing-card-featured .btn-light:hover {
    background: #f0f0f0;
}

/* ── Features section ───────────────────────────────────────────────────── */
.pricing-features-section {
    background: #f7f9ef;
    border: 1px solid #e8edce;
    border-radius: var(--eqwiid-radius);
    padding: 1.5rem 1.75rem;
}

.pricing-feature-item {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.35rem 0;
    font-size: 0.9rem;
    color: #374151;
}

.pricing-feature-check {
    color: var(--eqwiid-primary);
    font-weight: 700;
    font-size: 0.95rem;
    flex-shrink: 0;
}

/* ── Calculator ─────────────────────────────────────────────────────────── */
.pricing-calculator .card-body {
    padding: 1.75rem;
}

.pricing-calc-row {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.pricing-calc-label {
    font-weight: 600;
    color: #374151;
    font-size: 0.95rem;
    white-space: nowrap;
}

.pricing-calc-controls {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1;
    min-width: 200px;
}

.pricing-slider {
    flex: 1;
    accent-color: var(--eqwiid-primary);
}

.pricing-number-input {
    width: 90px;
    text-align: center;
    font-weight: 600;
}

/* Calculator result */
.pricing-calc-output {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: #f5f8e8;
    border: 1px solid #dce8a0;
    border-radius: var(--eqwiid-radius-sm);
    flex-wrap: wrap;
}

.pricing-calc-tier {
    font-weight: 700;
    font-size: 0.85rem;
    color: var(--eqwiid-primary);
    background: rgba(141, 161, 69, 0.12);
    padding: 4px 12px;
    border-radius: 20px;
}

.pricing-calc-price {
    font-size: 1.85rem;
    font-weight: 800;
    color: var(--eqwiid-primary);
    line-height: 1;
}

.pricing-calc-per {
    font-size: 0.88rem;
    font-weight: 400;
    color: var(--eqwiid-gray-500);
}

.pricing-calc-detail {
    font-size: 0.85rem;
    color: var(--eqwiid-gray-500);
}

/* ── Tables ─────────────────────────────────────────────────────────────── */
.pricing-detail-table thead th,
.pricing-examples-table thead th {
    background: #f9fafb;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    color: var(--eqwiid-gray-500);
    font-weight: 600;
}

.pricing-detail-table tbody td,
.pricing-examples-table tbody td {
    font-size: 0.9rem;
    vertical-align: middle;
}
