/**
 * Theme Name:     Infinity Web Experts
 * Author:         the WordPress team
 * Template:       twentytwentyfive
 * Text Domain:	   infinity-web-experts
 * Description:    Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
 */
body { background-color: #fff !important;}

a {text-decoration:none !important;}

h1 {font-size:50px !important;}
h2 {font-size:40px !important;}
h3 {font-size:24px !important;}
h4 {font-size:20px !important;}
h5 {font-size:17px !important;}
p,li {font-size:18px !important; }

.has-global-padding {
    padding-right: 0px !important;
    padding-left: 0px !important;
}

.wp-block-uagb-container.uagb-is-root-container.alignfull.uagb-block-ca8e4042 > .uagb-container-inner-blocks-wrap {
	font-size: 17px !important;}

.wp-block-uagb-icon-list.uagb-block-d2ba23fd .uagb-icon-list__wrap{
	 font-size: 18px !important;}


:where(.wp-site-blocks *:focus) {
    outline-width: 0px !important;
    outline-style: none !important;
}

@media only screen and (max-width: 782px) {
    button.wp-block-navigation__responsive-container-open {
        background-color: #ED371E;
        padding: 5px;
        border-radius: 15px 2px;
    }
h1 {font-size: 40px !important;}	
}


html .formcraft-css .powered-by {
	display: none !important;}

.uagb-icon-list__wrap {
	font-size: 18px !important;}


/* --- General Container Styles (No Change) --- */
.service-areas {
    background-color: #21212B; 
    padding-bottom: 20px;
}

.service-areas h2 {
    color: #FFFFFF;
    text-align: center;
    padding: 20px 0;
    font-size: 28px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.location-container {
    /* Set box-sizing globally for safety */
    box-sizing: border-box; /* 🔥 FIX: Important for width calculations */
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.location-box {
    text-decoration: none; 
    border: 2px solid #FFFFFF;
    border-radius: 10px;
    padding: 12px 24px;
    color: #FFFFFF;
    display: flex;
    align-items: center;
    font-size: 18px;
    background-color: #101018;
    transition: background-color 0.3s ease, border-color 0.3s ease;
    cursor: pointer;
    box-sizing: border-box; /* 🔥 FIX: Applied here too */
}

/* ... (Hover/Focus styles remain the same) ... */

/* --- Responsive Adjustments --- */

/* Tablets/Medium screens (max-width: 768px) */
@media (max-width: 768px) {
    .location-container {
        grid-template-columns: 1fr 1fr; 
        max-width: 680px;
        gap: 14px;
        padding: 14px;
    }
    .location-box {
        font-size: 16px;
        padding: 14px 16px;
    }
    .location-box i {
        font-size: 16px;
    }
}

/* 🔥 Small phones (max-width: 480px): OVERFLOW FIXES 🔥 */
@media (max-width: 480px) {
    .location-container {
        grid-template-columns: 1fr 1fr; /* Two columns maintained */
        max-width: 100%;
        gap: 8px; /* 🔥 FIX: Reduced grid gap */
        padding: 8px; /* 🔥 FIX: Reduced container padding */
    }
    .location-box {
        font-size: 14px;
        padding: 8px 10px; /* 🔥 FIX: Reduced internal padding */
        border-radius: 8px;
        
        /* 🔥 FIX: Crucial for preventing text overflow */
        white-space: nowrap; 
        overflow: hidden;
        text-overflow: ellipsis; 
    }
    .location-box i {
        font-size: 14px;
        margin-right: 6px;
    }
    .service-areas h2 {
        font-size: 24px;
        padding: 15px 0;
    }
}


