/* --- Footer Contact Icons --- */
/* Target your custom image-based footer SVG icons */
img.footer-svg {
    width: 20px !important;    /* Force icon width */
    height: 20px !important;  /* Force icon height */
    min-width: 20px !important; /* Prevent shrinking */
    min-height: 20px !important;
}

.footer-contact-icons,
.footer-contact-icons .footer-icon img.footer-svg {
    display: flex;
    align-items: center;
    width: 20px !important;    /* Force icon width */
    height: 20px !important;  /* Force icon height */
    min-width: 20px !important; /* Prevent shrinking */
    min-height: 20px !important;
}

.footer-contact-icons {
    display: flex;
    flex-direction: column;   /* Stack rows vertically */
    gap: 0px;                 /* Spacing between items */
    align-items: flex-start;  /* Align icons + text left */
}

.footer-icon {
    display: flex;
    align-items: center;
    gap: 15px;                /* Space between icon and text */
    margin: 0;                /* Reset H4 default margin */
}

/* Ensure Astra parent containers don't constrain size */
.ast-container .footer-contact-icons,
.ast-footer-social-1,
.ast-builder-layout-element {
    max-width: none !important;
    width: 100% !important;
}

/* Override any inline styles on images */
img.footer-svg[style] {
    width: 40px !important;
    height: 40px !important;
}

/* Target Astra's default social icons (if mixed with custom) */
.ast-footer-social-1 .social-item-link,
.ast-builder-social-element .social-item-link {
    width: 40px !important;
    height: 40px !important;
    font-size: 40px !important;
    line-height: 40px !important;
}

/* --- Center Page Titles --- */
/* Broaden targeting for page titles */
.entry-title,
.page-title,
h1.entry-title,
h1.page-title {
    text-align: center !important;
}

/* Optional: Add responsive adjustments */
@media (max-width: 768px) {
    img.footer-svg,
    .ast-footer-social-1 .social-item-link,
    .footer-contact-icons .footer-icon img.footer-svg {
        width: 30px !important;
        height: 30px !important;
    }
}