/* =====================================================================
   PAGE MODULE — en-services-ai-marketing-index
   Extracted verbatim from inline <style> of: servicios/branding/index.html, servicios/marketing-con-ia/index.html, servicios/index.html, servicios/reputacion/index.html, servicios/diseno-web/index.html, servicios/busqueda-total/index.html, en/services/ai-marketing/index.html, en/services/branding/index.html, en/services/index.html, en/services/web-design/index.html, en/services/reputation/index.html, en/services/search-everywhere/index.html
   Design unchanged; loaded via `pageCss` front-matter.
   ===================================================================== */

/* Mobile-Responsive Grid Classes */
.two-col-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
    align-items: center;
}

@media (min-width: 768px) {
    .two-col-grid {
        grid-template-columns: 1fr 1fr;
        gap: 4rem;
    }
}

.three-col-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
}

@media (min-width: 640px) {
    .three-col-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .three-col-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 2.5rem;
    }
}

.services-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;
}

@media (min-width: 640px) {
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (min-width: 1024px) {
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem;
    }
}

.icon-60 {
    width: 60px;
    height: 60px;
    margin-bottom: 1.5rem;
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-position: center;
    background: linear-gradient(135deg, var(--secondary-teal), var(--primary-magenta));
}

.icon-50 {
    width: 50px;
    height: 50px;
    flex-shrink: 0;
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-position: center;
    background: linear-gradient(135deg, var(--secondary-teal), var(--primary-magenta));
}

/* Mobile Adjustments */
@media (max-width: 767px) {
    section:first-of-type {
        padding: 6rem 1.5rem 4rem 1.5rem !important;
    }
    
    section:not(:first-of-type) {
        padding: 3rem 1.5rem !important;
    }
    
    h1 {
        font-size: 0.75rem !important;
        padding: 0.5rem 1.2rem !important;
    }
    
    h2 {
        font-size: 2rem !important;
    }
    
    h3 {
        font-size: 1.3rem !important;
    }
    
    /* Ensure location card images fill on mobile - ONLY for location section */
    #location-cards .three-col-grid > div {
        height: 400px !important;
    }
    
    #location-cards .three-col-grid > div img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
    }
}
