/* ============================================================
   CODFIX v5.15.1 HF5 — FRONTEND FOOTER MEDIUM TYPOGRAPHY
   Scope: public website footer only.
   Goal: reduce previously oversized footer typography to a
   balanced medium scale without changing layout or functionality.
   ============================================================ */

.cfx5151-footer {
    font-size: 14px !important;
}

/* Footer headline */
.cfx5151-footer .cfx5121-footer-topline strong {
    font-size: clamp(22px, 2vw, 30px) !important;
    line-height: 1.35 !important;
}

.cfx5151-footer .cfx5121-footer-topline span {
    font-size: 13px !important;
    line-height: 1.65 !important;
}

.cfx5151-footer .cfx5121-footer-topline > a {
    font-size: 14px !important;
}

/* Column titles */
.cfx5151-footer .cfx32-footer-grid h4 {
    font-size: 15.5px !important;
    line-height: 1.45 !important;
}

/* Links and body copy */
.cfx5151-footer .cfx32-footer-grid a,
.cfx5151-footer .cfx32-footer-grid p {
    font-size: 14px !important;
    line-height: 1.75 !important;
}

.cfx5151-footer .cfx32-system-status {
    font-size: 13px !important;
}

.cfx5151-footer .cfx5151-contact-line,
.cfx5151-footer .cfx5151-address,
.cfx5151-footer .cfx5151-currency-button {
    font-size: 13.5px !important;
}

/* Social/payment utility text */
.cfx5151-footer .cfx5151-payments > span {
    font-size: 12.5px !important;
}

.cfx5151-footer .cfx5151-pay-word {
    font-size: 12px !important;
}

.cfx5151-footer .cfx5151-pay-word.visa {
    font-size: 14px !important;
}

.cfx5151-footer .cfx5151-pay-word.paypal {
    font-size: 11.5px !important;
}

.cfx5151-footer .cfx5151-pay-word.apple,
.cfx5151-footer .cfx5151-pay-word.google {
    font-size: 10.5px !important;
}

/* Copyright / footer bottom */
.cfx5151-footer .cfx32-footer-bottom {
    font-size: 13px !important;
    line-height: 1.6 !important;
}

/* Normalize all typography-scale variants to the requested medium size. */
.cfx5151-footer.cfx5151-font-compact .cfx32-footer-grid h4,
.cfx5151-footer.cfx5151-font-comfortable .cfx32-footer-grid h4,
.cfx5151-footer.cfx5151-font-large .cfx32-footer-grid h4 {
    font-size: 15.5px !important;
}

.cfx5151-footer.cfx5151-font-compact .cfx32-footer-grid a,
.cfx5151-footer.cfx5151-font-compact .cfx32-footer-grid p,
.cfx5151-footer.cfx5151-font-comfortable .cfx32-footer-grid a,
.cfx5151-footer.cfx5151-font-comfortable .cfx32-footer-grid p,
.cfx5151-footer.cfx5151-font-large .cfx32-footer-grid a,
.cfx5151-footer.cfx5151-font-large .cfx32-footer-grid p {
    font-size: 14px !important;
}

.cfx5151-footer.cfx5151-font-large .cfx32-footer-bottom {
    font-size: 13px !important;
}

/* Mobile: slightly smaller but still readable. */
@media (max-width: 820px) {
    .cfx5151-footer {
        font-size: 13.5px !important;
    }

    .cfx5151-footer .cfx5121-footer-topline strong {
        font-size: clamp(20px, 5vw, 25px) !important;
    }

    .cfx5151-footer .cfx32-footer-grid h4 {
        font-size: 15px !important;
    }

    .cfx5151-footer .cfx32-footer-grid a,
    .cfx5151-footer .cfx32-footer-grid p {
        font-size: 13.5px !important;
    }

    .cfx5151-footer .cfx32-footer-bottom {
        font-size: 12.5px !important;
    }
}
