/* ============================================================
   aix-footer.css — AixKit Premium Footer
   BEM-like class prefix: .aix-footer-
   Does NOT affect any other page component.
   ============================================================ */

/* ── Wrapper ─────────────────────────────────────────────── */
.aix-footer-root {
    background:  linear-gradient(180deg, #ffffff 0%, #f8fafc 55%, #f1f5f9 100%);
    border-top:  1px solid #E5E7EB;
    padding:     56px 0 32px;
    font-family: 'Inter','Noto Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
    color:       #374151;
}

.aix-footer-inner {
    max-width: 1200px;
    margin:    0 auto;
    padding:   0 24px;
}

/* ── 4-column grid ───────────────────────────────────────── */
.aix-footer-grid {
    display:               grid;
    grid-template-columns: 2.2fr 1fr 1fr 1fr;
    gap:                   40px 40px;
    align-items:           start;
}

/* ── Column 1 — Brand ────────────────────────────────────── */
.aix-footer-brand {}

.aix-footer-logo {
    display:       block;
    margin-bottom: 14px;
}

.aix-footer-logo img {
    width:      140px;
    height:     auto;
    display:    block;
    border:     none;
    background: transparent;
    padding:    0;
}

.aix-footer-desc {
    font-size:   0.875rem;
    color:       #475569;
    line-height: 1.7;
    margin:      0 0 18px;
    max-width:   300px;
    font-weight: 400;
}

/* Trust badges */
.aix-footer-badges {
    display:   flex;
    flex-wrap: wrap;
    gap:       7px;
    margin:    0 0 24px;
}

.aix-footer-badge {
    display:         inline-flex;
    align-items:     center;
    gap:             5px;
    font-size:       0.71rem;
    font-weight:     600;
    letter-spacing:  0.01em;
    color:           #374151;
    background:      #ffffff;
    border:          1px solid #E2E8F0;
    border-radius:   999px;
    padding:         5px 12px;
    line-height:     1.3;
    white-space:     nowrap;
    box-shadow:      0 2px 8px rgba(15,23,42,0.05);
    transition:      box-shadow .2s ease;
}

.aix-footer-badge:hover {
    box-shadow: 0 2px 6px rgba(0,0,0,.10);
}

.aix-footer-badge i {
    color:     #E11D48;
    font-size: 0.65rem;
}

/* Social icons */
.aix-footer-social {
    display:     flex;
    gap:         8px;
    align-items: center;
}

.aix-footer-social-link {
    display:         flex;
    align-items:     center;
    justify-content: center;
    width:           36px;
    height:          36px;
    border-radius:   50%;
    background:      #ffffff;
    border:          1px solid #E2E8F0;
    color:           #64748B;
    font-size:       0.8125rem;
    text-decoration: none;
    transition:      background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
    box-shadow:      0 1px 3px rgba(0,0,0,.06);
}

.aix-footer-social-link:hover,
.aix-footer-social-link:focus {
    background:   #E11D48;
    color:        #fff;
    border-color: #E11D48;
    transform:    translateY(-2px);
    box-shadow:   0 8px 18px rgba(15,23,42,0.08);
}

.aix-footer-social-link:focus-visible {
    outline:        2px solid #E11D48;
    outline-offset: 3px;
}

/* ── Columns 2-4 — Nav ───────────────────────────────────── */
.aix-footer-col {}

.aix-footer-col-heading {
    font-size:      0.71rem;
    font-weight:    700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color:          #111827;
    margin:         0 0 16px;
    padding:        0 0 10px;
    border-bottom:  2px solid #E11D48;
    display:        inline-block;
}

.aix-footer-nav {
    list-style: none;
    margin:     0;
    padding:    0;
}

.aix-footer-nav li {
    margin:  0 0 10px;
    padding: 0;
}

.aix-footer-nav a {
    font-size:       0.875rem;
    color:           #334155;
    text-decoration: none;
    transition:      color .18s ease, transform .18s ease;
    display:         inline-flex;
    align-items:     center;
    gap:             4px;
}

.aix-footer-nav a::after {
    content:    '→';
    font-size:  0.7rem;
    opacity:    0;
    transform:  translateX(-4px);
    transition: opacity .18s ease, transform .18s ease;
    color:      #E11D48;
}

.aix-footer-nav a:hover,
.aix-footer-nav a:focus {
    color:     #E11D48;
    transform: translateX(3px);
}

.aix-footer-nav a:hover::after,
.aix-footer-nav a:focus::after {
    opacity:   1;
    transform: translateX(0);
}

.aix-footer-nav a:focus-visible {
    outline:        2px solid #E11D48;
    outline-offset: 2px;
    border-radius:  2px;
}

/* ── Bottom bar ──────────────────────────────────────────── */
.aix-footer-bottom {
    border-top:      1px solid #E5E7EB;
    margin-top:      44px;
    padding:         18px 24px 22px;
    max-width:       1200px;
    margin-left:     auto;
    margin-right:    auto;
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    flex-wrap:       wrap;
    gap:             10px;
    background:      transparent;
}

.aix-footer-copy {
    font-size:   0.8rem;
    color:       #6B7280;
    margin:      0;
    line-height: 1.5;
    font-weight: 500;
}

.aix-footer-tagline {
    font-size:   0.8rem;
    color:       #475569;
    font-weight: 500;
    margin:      0;
    line-height: 1.5;
}

/* Tawk.to chat widget — prevent bottom-right crowding */
#fc_widget,
.tawk-min-container {
    bottom: 20px !important;
}

/* ── Responsive — tablet (≤1024px): 3-column ────────────── */
@media (max-width: 1024px) {
    .aix-footer-grid {
        grid-template-columns: 1.6fr 1fr 1fr;
        gap: 32px 28px;
    }
}

/* ── Responsive — mobile (≤640px): single column ─────────── */
@media (max-width: 640px) {
    .aix-footer-root {
        padding: 36px 0 0;
    }

    .aix-footer-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .aix-footer-desc {
        max-width: 100%;
    }

    .aix-footer-bottom {
        flex-direction: column;
        align-items:    flex-start;
        gap:            8px;
        padding-left:   24px;
        padding-right:  24px;
    }

    .aix-footer-tagline {
        order: -1;
    }
}
