/* =========================================================
   AFILACIONES GUSTAVO — HEADER PREMIUM
   Ajustado: sin líneas laterales, sin gris visible,
   solo negro + rojo con difuminado sutil.
   ========================================================= */

:root{
    --ag-red:#ff173f;
    --ag-white:#f4f4f4;
    --ag-black:#050505;
}

body > header.site-header{
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    position:relative !important;
    z-index:1000 !important;
    background:
        radial-gradient(circle at 50% -25%, rgba(255,23,63,.08) 0%, rgba(255,23,63,.03) 22%, transparent 46%),
        linear-gradient(180deg, #030303 0%, #050505 100%) !important;
    overflow:hidden !important;
    border-radius:0 !important;
}


/* Se elimina la línea gris de arriba */
body > header.site-header::before{
    content:none !important;
}

/* línea inferior roja */
body > header.site-header::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:2px;
    background:linear-gradient(90deg, rgba(255,23,63,.70), var(--ag-red) 14%, var(--ag-red) 50%, var(--ag-red) 86%, rgba(255,23,63,.70));
    box-shadow:0 0 10px rgba(255,23,63,.68),0 0 22px rgba(255,23,63,.24);
    pointer-events:none;
}

.site-header .site-header-inner{
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    min-height:118px !important;
    margin:0 !important;
    padding:14px 34px 18px !important;

    display:grid !important;
    grid-template-columns:max-content minmax(0,1fr) !important;
    align-items:center !important;
    column-gap:44px !important;

    background:
        radial-gradient(circle at 50% 0%, rgba(255,23,63,.045) 0%, transparent 34%),
        linear-gradient(180deg,#060606 0%,#050505 100%) !important;

    border:0 !important;
    box-shadow:none !important;
    overflow:hidden !important;
}

/* laterales solo difuminados rojo/negro, sin líneas */
.site-header .site-header-inner::before,
.site-header .site-header-inner::after{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:44px;
    pointer-events:none;
    opacity:.9;
}

.site-header .site-header-inner::before{
    left:0;
    background:linear-gradient(90deg, rgba(255,23,63,.18) 0%, rgba(255,23,63,.08) 28%, rgba(255,23,63,.02) 58%, transparent 100%);
}

.site-header .site-header-inner::after{
    right:0;
    background:linear-gradient(270deg, rgba(255,23,63,.18) 0%, rgba(255,23,63,.08) 28%, rgba(255,23,63,.02) 58%, transparent 100%);
}

/* MARCA */
.site-header .brand{
    position:relative !important;
    z-index:2 !important;
    display:flex !important;
    align-items:center !important;
    gap:18px !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    color:#fff !important;
    text-decoration:none !important;
}

.site-header .brand img{
    width:88px !important;
    height:88px !important;
    min-width:88px !important;
    flex:0 0 88px !important;
    margin:0 !important;
    padding:0 !important;
    object-fit:contain !important;
    border-radius:50% !important;
    background:#000 !important;
}

.site-header .brand > div{
    min-width:0 !important;
}

.site-header .brand strong,
.site-header .brand #headerBusinessName{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    color:var(--ag-white) !important;
    font-size:clamp(30px,2.35vw,42px) !important;
    font-weight:900 !important;
    line-height:1 !important;
    letter-spacing:-.7px !important;
    white-space:nowrap !important;
    text-transform:none !important;
}

.site-header .brand small{
    display:block !important;
    margin-top:8px !important;
    padding:0 !important;
    color:var(--ag-red) !important;
    font-size:clamp(10px,.72vw,13px) !important;
    font-weight:900 !important;
    line-height:1.1 !important;
    letter-spacing:.35px !important;
    white-space:nowrap !important;
}

/* WhatsApp oculto solamente en el header */
.site-header .wa,
.site-header #headerWhatsapp{
    display:none !important;
}

/* MENÚ */
.site-header .site-nav{
    position:relative !important;
    z-index:2 !important;
    justify-self:center !important;
    align-self:stretch !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:stretch !important;
    justify-content:center !important;
    gap:0 !important;
    background:transparent !important;
}

.site-header .site-nav a{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:175px !important;
    height:100% !important;
    margin:0 !important;
    padding:0 24px !important;
    color:#f3f3f3 !important;
    background:transparent !important;
    border:0 !important;
    text-decoration:none !important;
    text-transform:uppercase !important;
    font-size:15px !important;
    font-weight:900 !important;
    line-height:1 !important;
    letter-spacing:.25px !important;
    white-space:nowrap !important;
}

.site-header .site-nav a + a{
    border-left:1px solid rgba(255,255,255,.09) !important;
}

.site-header .site-nav a:hover{
    color:#fff !important;
}

.site-header .site-nav a.active{
    color:var(--ag-red) !important;
}

.site-header .site-nav a.active::after{
    content:"";
    position:absolute;
    left:38px;
    right:38px;
    bottom:5px;
    height:4px;
    border-radius:999px;
    background:var(--ag-red);
    box-shadow:0 0 9px rgba(255,23,63,.62),0 0 18px rgba(255,23,63,.25);
}

@media (max-width:1350px){
    .site-header .site-header-inner{
        min-height:108px !important;
        padding:12px 22px 16px !important;
        column-gap:26px !important;
    }

    .site-header .brand img{
        width:78px !important;
        height:78px !important;
        min-width:78px !important;
        flex-basis:78px !important;
    }

    .site-header .brand strong,
    .site-header .brand #headerBusinessName{
        font-size:34px !important;
    }

    .site-header .brand small{
        font-size:10px !important;
    }

    .site-header .site-nav a{
        min-width:150px !important;
        padding:0 18px !important;
        font-size:14px !important;
    }
}

@media (max-width:1050px){
    body > header.site-header{
        padding:0 12px !important;
    }
    body > header.site-header::after{
        left:0;
        right:0;
    }

    .site-header .site-header-inner{
        grid-template-columns:1fr !important;
        min-height:auto !important;
        row-gap:14px !important;
        padding:16px 18px 18px !important;
    }

    .site-header .site-nav{
        width:100% !important;
        justify-self:stretch !important;
        min-height:48px !important;
        border-top:1px solid rgba(255,255,255,.06) !important;
    }

    .site-header .site-nav a{
        flex:1 1 0 !important;
        min-width:0 !important;
        height:48px !important;
        padding:0 14px !important;
    }
}

@media (max-width:680px){
    body > header.site-header{
        padding:0 8px !important;
    }
    body > header.site-header::after{
        left:0;
        right:0;
    }

    .site-header .site-header-inner{
        padding:14px 12px 16px !important;
    }

    .site-header .brand{
        gap:12px !important;
    }

    .site-header .brand img{
        width:62px !important;
        height:62px !important;
        min-width:62px !important;
        flex-basis:62px !important;
    }

    .site-header .brand strong,
    .site-header .brand #headerBusinessName{
        font-size:clamp(23px,7vw,29px) !important;
        white-space:normal !important;
    }

    .site-header .brand small{
        font-size:9px !important;
        white-space:normal !important;
    }

    .site-header .site-nav a{
        font-size:12px !important;
        padding:0 9px !important;
    }

    .site-header .site-nav a.active::after{
        left:0;
        right:0;
        bottom:2px;
        height:3px;
    }
}