
.indavi-footer{
    position:relative;
    background:linear-gradient(160deg,#060a18 0%,#0a1228 40%,#06101f 100%);
    color:#94a3b8;
    font-size:.9rem;
    overflow:hidden;
}
.indavi-footer::before{
    content:'';
    position:absolute;
    inset:0;
    background-image:
        radial-gradient(circle at 18% 35%, rgba(99,102,241,.10) 0%, transparent 34%),
        radial-gradient(circle at 82% 18%, rgba(16,185,129,.08) 0%, transparent 28%);
    pointer-events:none;
}
.indavi-footer__wave{
    color:var(--indavi-bg, #f6f8fc);
    line-height:0;
    transform:scaleY(-1);
}
body.dark-mode .indavi-footer__wave{
    color:#060a18;
}
.indavi-footer__inner{
    max-width:1380px;
    margin:0 auto;
    padding:3.2rem 1.4rem 1.6rem;
    position:relative;
    z-index:1;
}
.indavi-footer__grid{
    display:grid;
    grid-template-columns:1.7fr 1fr 1.2fr;
    gap:3rem 2.4rem;
    padding-bottom:3rem;
    border-bottom:1px solid rgba(255,255,255,.06);
}

.indavi-footer__logo-link{
    display:inline-block;
}
.indavi-footer__logo-img{
    max-width:172px;
    height:auto;
    filter:brightness(0) invert(1);
    opacity:.88;
    margin-bottom:1rem;
}
.indavi-footer__tagline{
    color:#98a6c0;
    font-size:.9rem;
    line-height:1.75;
    margin:0 0 .9rem;
}
.indavi-footer__tagline strong{
    color:#eef2ff;
}
.indavi-footer__motto{
    display:flex;
    align-items:center;
    gap:.55rem;
    color:#7a879c;
    font-size:.82rem;
    margin:0 0 1.5rem;
}
.indavi-footer__motto-icon{
    color:#818cf8;
    font-style:normal;
}

.indavi-footer__quality{
    display:flex;
    flex-direction:column;
    gap:.75rem;
    margin-bottom:1.1rem;
}
.indavi-footer__quality-badge{
    display:flex;
    align-items:center;
    gap:.8rem;
    padding:.78rem .95rem;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.07);
    border-radius:14px;
    transition:all .2s ease;
}
.indavi-footer__quality-badge:hover{
    background:rgba(99,102,241,.10);
    border-color:rgba(129,140,248,.26);
}
.indavi-footer__quality-badge > i{
    color:#a5b4fc;
    font-size:1.1rem;
    width:24px;
    text-align:center;
}
.indavi-footer__quality-badge strong{
    display:block;
    color:#eef2ff;
    font-size:.82rem;
    font-weight:600;
}
.indavi-footer__quality-badge span{
    font-size:.74rem;
    color:#7f8ca3;
}

.indavi-footer__mini-stats{
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:.6rem;
    margin-bottom:1.35rem;
}
.indavi-footer__mini-stat{
    padding:.7rem .75rem;
    border-radius:12px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.06);
}
.indavi-footer__mini-stat strong{
    display:block;
    color:#eef2ff;
    font-size:.77rem;
    font-weight:600;
    line-height:1.2;
}
.indavi-footer__mini-stat span{
    display:block;
    color:#7f8ca3;
    font-size:.7rem;
    margin-top:.18rem;
    line-height:1.35;
}

.indavi-footer__badges{
    display:flex;
    flex-wrap:wrap;
    gap:.55rem;
    align-items:center;
}
.indavi-footer__badges img{
    height:46px;
    width:auto;
    border-radius:10px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.08);
    padding:4px;
    filter:grayscale(.25) brightness(.9);
    transition:all .2s ease;
}
.indavi-footer__badges img:hover{
    transform:translateY(-2px) scale(1.03);
    filter:none;
    background:rgba(255,255,255,.12);
}

.indavi-footer__heading{
    display:flex;
    align-items:center;
    gap:.55rem;
    margin:0 0 1.2rem;
    padding-bottom:.8rem;
    border-bottom:1px solid rgba(255,255,255,.06);
    color:#f3f5ff;
    font-size:.74rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.11em;
}
.indavi-footer__heading-icon{
    width:28px;
    height:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:9px;
    background:rgba(99,102,241,.18);
    color:#a5b4fc;
    flex:0 0 auto;
}

.indavi-footer__links{
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:2px;
}
.indavi-footer__links li a{
    display:flex;
    align-items:center;
    gap:.65rem;
    padding:.55rem .65rem;
    border-radius:10px;
    text-decoration:none;
    color:#9aa7be;
    font-size:.9rem;
    font-weight:600;
    transition:all .18s ease;
}
.indavi-footer__links li a i{
    font-size:.55rem;
    color:#818cf8;
    transition:transform .18s ease;
}
.indavi-footer__links li a:hover,
.indavi-footer__links li a:focus-visible{
    color:#dde5ff;
    background:rgba(99,102,241,.10);
    transform:translateX(2px);
    outline:none;
}
.indavi-footer__links li a:hover i,
.indavi-footer__links li a:focus-visible i{
    transform:translateX(3px);
}

.indavi-footer__seo-copy{
    margin-top:1.1rem;
    padding:.95rem 1rem;
    border-radius:14px;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.06);
}
.indavi-footer__seo-copy p{
    margin:0;
    color:#8fa0bb;
    font-size:.79rem;
    line-height:1.7;
}
.indavi-footer__seo-copy strong{
    color:#eef2ff;
}

.indavi-footer__address{
    font-style:normal;
    display:flex;
    flex-direction:column;
    gap:.55rem;
    margin-bottom:1.4rem;
}
.indavi-footer__contact-item{
    display:flex;
    align-items:flex-start;
    gap:.8rem;
    padding:.35rem 0;
    text-decoration:none;
    color:#9aa7be;
    font-size:.9rem;
    font-weight:600;
    transition:color .18s ease;
}
.indavi-footer__contact-item:hover,
.indavi-footer__contact-item:focus-visible{
    color:#dde5ff;
    outline:none;
}
.indavi-footer__contact-item strong{
    color:#eef2ff;
}
.indavi-footer__contact-icon{
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:9px;
    background:rgba(99,102,241,.16);
    color:#a5b4fc;
    flex:0 0 auto;
}

.indavi-footer__cta-agencia{
    display:block;
    position:relative;
    overflow:hidden;
    border-radius:18px;
    text-decoration:none;
    margin-bottom:1.3rem;
    isolation:isolate;
    transition:transform .28s ease, box-shadow .28s ease;
}
.indavi-footer__cta-agencia:hover,
.indavi-footer__cta-agencia:focus-visible{
    transform:translateY(-4px) scale(1.01);
    box-shadow:0 18px 44px rgba(16,185,129,.34), 0 6px 18px rgba(0,0,0,.24);
    outline:none;
}
.indavi-footer__cta-agencia-bg{
    position:absolute;
    inset:0;
    display:block;
    background:linear-gradient(135deg,#059669 0%,#10b981 42%,#34d399 76%,#059669 100%);
    background-size:200% 200%;
    animation:agenciaGradient 3.2s ease infinite;
    z-index:0;
}
@keyframes agenciaGradient{
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
.indavi-footer__cta-agencia-shimmer{
    position:absolute;
    top:0;
    left:-100%;
    width:55%;
    height:100%;
    display:block;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.24) 50%,transparent);
    z-index:1;
    animation:agenciaShimmer 2.8s ease-in-out infinite;
}
@keyframes agenciaShimmer{
    0%{left:-60%}
    50%{left:120%}
    100%{left:120%}
}
.indavi-footer__cta-agencia-content{
    position:relative;
    z-index:2;
    display:flex;
    align-items:center;
    gap:.95rem;
    padding:1.05rem 1.2rem;
}
.indavi-footer__cta-agencia-icon{
    width:46px;
    height:46px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.2);
    color:#fff;
    font-size:1.16rem;
    flex:0 0 auto;
}
.indavi-footer__cta-agencia-text{
    flex:1 1 auto;
}
.indavi-footer__cta-agencia-text strong{
    display:block;
    color:#fff;
    font-size:.93rem;
    font-weight:700;
    line-height:1.2;
}
.indavi-footer__cta-agencia-text small{
    color:rgba(255,255,255,.82);
    font-size:.76rem;
    font-weight:600;
}
.indavi-footer__cta-agencia-arrow{
    width:34px;
    height:34px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.18);
    color:#fff;
    flex:0 0 auto;
    transition:transform .2s ease;
}
.indavi-footer__cta-agencia:hover .indavi-footer__cta-agencia-arrow,
.indavi-footer__cta-agencia:focus-visible .indavi-footer__cta-agencia-arrow{
    transform:translateX(4px);
}

.indavi-footer__legal{
    display:flex;
    flex-wrap:wrap;
    gap:.4rem .75rem;
    align-items:center;
    font-size:.77rem;
    color:#55657f;
}
.indavi-footer__legal a{
    color:#76839a;
    text-decoration:none;
    transition:color .18s ease;
}
.indavi-footer__legal a:hover,
.indavi-footer__legal a:focus-visible{
    color:#b8c6ff;
    outline:none;
}

.indavi-footer__bottom{
    padding-top:1.7rem;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:.45rem;
    text-align:center;
}
.indavi-footer__copy{
    margin:0;
    font-size:.76rem;
    color:#697791;
    line-height:1.6;
}
.indavi-footer__made{
    margin:0;
    font-size:.76rem;
    color:#54637b;
}

.indavi-cookie{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:2147483647;
    background:#fff;
    border-top:3px solid #4f46e5;
    box-shadow:0 -10px 40px rgba(0,0,0,.12);
    transition:transform .42s cubic-bezier(.4,0,.2,1), opacity .32s ease;
}
body.dark-mode .indavi-cookie{
    background:#0f172a;
    border-top-color:#6366f1;
    box-shadow:0 -10px 40px rgba(0,0,0,.42);
}
.indavi-cookie.is-hidden{
    transform:translateY(110%);
    opacity:0;
    pointer-events:none;
}
.indavi-cookie__inner{
    max-width:980px;
    margin:0 auto;
    padding:1rem 1.2rem;
    display:flex;
    align-items:center;
    gap:1rem;
    flex-wrap:wrap;
}
.indavi-cookie__icon{
    font-size:1.8rem;
    line-height:1;
    flex:0 0 auto;
}
.indavi-cookie__body{
    flex:1 1 auto;
    min-width:240px;
}
.indavi-cookie__title{
    display:block;
    margin-bottom:.15rem;
    color:#0f172a;
    font-size:.92rem;
    font-weight:900;
}
body.dark-mode .indavi-cookie__title{
    color:#eef2ff;
}
.indavi-cookie__text{
    margin:0;
    color:#64748b;
    font-size:.82rem;
    line-height:1.55;
}
body.dark-mode .indavi-cookie__text{
    color:#93a2be;
}
.indavi-cookie__text a{
    color:#4f46e5;
}
.indavi-cookie__actions{
    display:flex;
    gap:.55rem;
    flex:0 0 auto;
}
.indavi-cookie__btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 1rem;
    border-radius:12px;
    font-size:.82rem;
    font-weight:800;
    text-decoration:none;
    border:none;
    cursor:pointer;
    transition:all .2s ease;
    white-space:nowrap;
}
.indavi-cookie__btn--accept{
    background:linear-gradient(135deg,#4f46e5,#6366f1);
    color:#fff;
    box-shadow:0 12px 24px rgba(79,70,229,.22);
}
.indavi-cookie__btn--accept:hover,
.indavi-cookie__btn--accept:focus-visible{
    transform:translateY(-1px);
    outline:none;
}
.indavi-cookie__btn--ghost{
    background:transparent;
    color:#64748b;
    border:1px solid #dbe4f0;
}
.indavi-cookie__btn--ghost:hover,
.indavi-cookie__btn--ghost:focus-visible{
    border-color:#c7d2fe;
    color:#4f46e5;
    background:#eef2ff;
    outline:none;
}
body.dark-mode .indavi-cookie__btn--ghost{
    color:#c1cbea;
    border-color:#273755;
}
body.dark-mode .indavi-cookie__btn--ghost:hover,
body.dark-mode .indavi-cookie__btn--ghost:focus-visible{
    background:rgba(99,102,241,.10);
    color:#a5b4fc;
}

@media (max-width: 1023px){
    .indavi-footer__grid{
        grid-template-columns:1fr 1fr;
    }
    .indavi-footer__mini-stats{
        grid-template-columns:1fr;
    }
}
@media (max-width: 767px){
    .indavi-footer__inner{
        padding:2.6rem 1rem 1.3rem;
    }
    .indavi-footer__grid{
        grid-template-columns:1fr;
        gap:2.2rem;
        padding-bottom:2.2rem;
    }
    .indavi-cookie__inner{
        flex-direction:column;
        align-items:flex-start;
    }
}
@media (max-width: 560px){
    .indavi-cookie__icon{
        display:none;
    }
    .indavi-cookie__actions{
        width:100%;
    }
    .indavi-cookie__btn{
        flex:1 1 auto;
    }
}
@media (prefers-reduced-motion: reduce){
    .indavi-footer__cta-agencia,
    .indavi-footer__badges img,
    .indavi-cookie,
    .indavi-cookie__btn,
    .indavi-footer__cta-agencia-arrow{
        transition:none !important;
        animation:none !important;
    }
}
