/* ==========================================================================
   KUAD Theme Designer - Header Layouts & Variants [v7.25]
   Style Concept: Neumorfismo Sutil (Soft UI) & Touch UI Design (TUI)
   Strictly decoupled under 350 lines (KUAD architecture standard).
   ========================================================================== */

/* === GENERAL PRESERVATION: HIDE REDUNDANT TEXT SITE TITLE IN LOGO GROUP === */
.ks-site-header .wp-block-site-title,
.ks-site-header .ks-header-site-title,
.ks-site-logo-group .wp-block-site-title,
.ks-site-logo-group .ks-header-site-title,
.ks-site-logo-group:has(.wp-block-site-logo) .wp-block-site-title,
.ks-site-logo-group:has(.wp-block-site-logo) .ks-header-site-title {
    display: none !important;
}

/* === GENERAL PRESERVATION: BASE MENU FONT SIZE & LINE HEIGHT === */
.ks-site-header .wp-block-navigation .wp-block-navigation-item a,
.ks-site-header .wp-block-navigation .wp-block-navigation-item__content,
.ks-site-header .wp-block-navigation .wp-block-navigation-item__label,
.ks-site-header .wp-block-navigation a,
.ks-site-header .ks-main-navigation a {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
}

/* === 1. ESTILO 1: ESTANDAR (LOGO IZQUIERDA · MENU DERECHA) === */
.is-header-standard .ks-site-header-container,
.ks-header-layout-standard .ks-site-header-container,
.ks-site-header.is-header-standard .ks-site-header-container,
.ks-site-header.ks-header-layout-standard .ks-site-header-container {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
}

.is-header-standard .ks-site-logo-group,
.ks-header-layout-standard .ks-site-logo-group,
.ks-site-header.is-header-standard .ks-site-logo-group,
.ks-site-header.ks-header-layout-standard .ks-site-logo-group {
    order: 1 !important;
    margin: 0 auto 0 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

.is-header-standard .ks-header-nav-group,
.ks-header-layout-standard .ks-header-nav-group,
.ks-site-header.is-header-standard .ks-header-nav-group,
.ks-site-header.ks-header-layout-standard .ks-header-nav-group {
    order: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 0 0 0 auto !important;
}

.is-header-standard .wp-block-navigation,
.is-header-standard .wp-block-navigation__container,
.ks-header-layout-standard .wp-block-navigation,
.ks-header-layout-standard .wp-block-navigation__container,
.ks-site-header.is-header-standard .wp-block-navigation__container,
.ks-site-header.ks-header-layout-standard .wp-block-navigation__container {
    justify-content: flex-end !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}

/* === 2. ESTILO 2: CENTRADO (LOGO ARRIBA · MENU ABAJO) === */
.is-header-centered,
.ks-header-layout-centered,
.ks-site-header.is-header-centered,
.ks-site-header.ks-header-layout-centered {
    padding-top: 14px !important;
    padding-bottom: 12px !important;
}

.is-header-centered .ks-site-header-container,
.ks-header-layout-centered .ks-site-header-container,
.ks-site-header.is-header-centered .ks-site-header-container,
.ks-site-header.ks-header-layout-centered .ks-site-header-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    text-align: center !important;
    width: 100% !important;
}

.is-header-centered .ks-site-logo-group,
.ks-header-layout-centered .ks-site-logo-group,
.ks-site-header.is-header-centered .ks-site-logo-group,
.ks-site-header.ks-header-layout-centered .ks-site-logo-group {
    order: 1 !important;
    margin: 0 auto !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    text-align: center !important;
}

.is-header-centered .ks-site-logo-group a,
.ks-header-layout-centered .ks-site-logo-group a,
.ks-site-header.is-header-centered .ks-site-logo-group a,
.ks-site-header.ks-header-layout-centered .ks-site-logo-group a {
    margin: 0 auto !important;
    display: inline-flex !important;
    justify-content: center !important;
}

.is-header-centered .ks-header-nav-group,
.ks-header-layout-centered .ks-header-nav-group,
.ks-site-header.is-header-centered .ks-header-nav-group,
.ks-site-header.ks-header-layout-centered .ks-header-nav-group {
    order: 2 !important;
    width: 100% !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 15px !important;
    margin: 0 auto !important;
}

.is-header-centered .wp-block-navigation,
.is-header-centered .wp-block-navigation__container,
.ks-header-layout-centered .wp-block-navigation,
.ks-header-layout-centered .wp-block-navigation__container,
.ks-site-header.is-header-centered .wp-block-navigation,
.ks-site-header.is-header-centered .wp-block-navigation__container,
.ks-site-header.ks-header-layout-centered .wp-block-navigation,
.ks-site-header.ks-header-layout-centered .wp-block-navigation__container {
    width: 100% !important;
    justify-content: center !important;
    margin: 0 auto !important;
}

/* === 3. ESTILO 3: MINIMALISTA (COMPACTO · ULTRA CLEAN REDESIGN) === */
header.wp-block-template-part:has(.is-header-minimalist),
header.wp-block-template-part:has(.ks-header-layout-minimalist),
header:has(.is-header-minimalist),
header:has(.ks-header-layout-minimalist),
.is-header-minimalist header.wp-block-template-part,
.ks-header-layout-minimalist header.wp-block-template-part {
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

.is-header-minimalist,
.ks-header-layout-minimalist,
.ks-site-header.is-header-minimalist,
.ks-site-header.ks-header-layout-minimalist {
    min-height: 48px !important;
    height: 48px !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(var(--ks-primary-rgb, 45, 26, 104), 0.08) !important;
    background: var(--ks-bg-color, #ffffff) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.is-header-minimalist .ks-site-header-container,
.ks-header-layout-minimalist .ks-site-header-container,
.ks-site-header.is-header-minimalist .ks-site-header-container,
.ks-site-header.ks-header-layout-minimalist .ks-site-header-container {
    min-height: 48px !important;
    height: 48px !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 0 clamp(12px, 2vw, 24px) !important;
    margin: 0 auto !important;
    width: 100% !important;
}

.is-header-minimalist .ks-site-logo-group,
.ks-header-layout-minimalist .ks-site-logo-group,
.ks-site-header.is-header-minimalist .ks-site-logo-group,
.ks-site-header.ks-header-layout-minimalist .ks-site-logo-group {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    order: 1 !important;
    margin: 0 auto 0 0 !important;
}

.is-header-minimalist .ks-site-logo-group img,
.ks-header-layout-minimalist .ks-site-logo-group img,
.ks-site-header.is-header-minimalist .ks-site-logo-group img,
.ks-site-header.ks-header-layout-minimalist .ks-site-logo-group img {
    max-height: 28px !important;
    height: 28px !important;
}

.is-header-minimalist .ks-header-nav-group,
.ks-header-layout-minimalist .ks-header-nav-group,
.ks-site-header.is-header-minimalist .ks-header-nav-group,
.ks-site-header.ks-header-layout-minimalist .ks-header-nav-group {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    order: 2 !important;
    margin: 0 0 0 auto !important;
    gap: 10px !important;
}

.is-header-minimalist .wp-block-navigation .wp-block-navigation-item a,
.is-header-minimalist .wp-block-navigation .wp-block-navigation-item__content,
.is-header-minimalist .wp-block-navigation .wp-block-navigation-item__label,
.ks-header-layout-minimalist .wp-block-navigation .wp-block-navigation-item a,
.ks-site-header.is-header-minimalist .wp-block-navigation .wp-block-navigation-item a,
.ks-site-header.ks-header-layout-minimalist .wp-block-navigation .wp-block-navigation-item a {
    padding: 3px 8px !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
    min-height: 28px !important;
    height: 28px !important;
    line-height: 1.2 !important;
    display: inline-flex !important;
    align-items: center !important;
}

.is-header-minimalist .wp-block-navigation .wp-block-navigation-item.current-menu-item a,
.is-header-minimalist .wp-block-navigation .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content {
    border-bottom: 2px solid var(--ks-secondary-color, #C05A86) !important;
    color: var(--ks-secondary-color, #C05A86) !important;
    font-weight: 600 !important;
}

/* === 4. ESTILO 4: MENU DIVIDIDO (LOGO AL CENTRO EN EL ARBOL DOM) === */
.is-header-split .ks-site-header-container,
.ks-header-layout-split .ks-site-header-container,
.ks-site-header.is-header-split .ks-site-header-container,
.ks-site-header.ks-header-layout-split .ks-site-header-container {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 12px !important;
    min-height: 60px !important;
}

/* Ocultar el logo externo fuera del menú */
.is-header-split .ks-site-logo-group:not(.ks-split-logo-item),
.ks-header-layout-split .ks-site-logo-group:not(.ks-split-logo-item),
.ks-site-header.is-header-split .ks-site-logo-group:not(.ks-split-logo-item),
.ks-site-header.ks-header-layout-split .ks-site-logo-group:not(.ks-split-logo-item),
.is-header-split > .ks-site-header-container > .ks-site-logo-group,
.ks-header-layout-split > .ks-site-header-container > .ks-site-logo-group,
.is-header-split .ks-site-header-container > .ks-site-logo-group,
.ks-header-layout-split .ks-site-header-container > .ks-site-logo-group {
    display: none !important;
}

.is-header-split .ks-header-nav-group,
.ks-header-layout-split .ks-header-nav-group,
.ks-site-header.is-header-split .ks-header-nav-group,
.ks-site-header.ks-header-layout-split .ks-header-nav-group {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 auto !important;
}

.is-header-split .wp-block-navigation,
.ks-header-layout-split .wp-block-navigation,
.ks-site-header.is-header-split .wp-block-navigation,
.ks-site-header.ks-header-layout-split .wp-block-navigation {
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    justify-content: center !important;
}

.is-header-split .wp-block-navigation__container,
.ks-header-layout-split .wp-block-navigation__container,
.ks-site-header.is-header-split .wp-block-navigation__container,
.ks-site-header.ks-header-layout-split .wp-block-navigation__container {
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: clamp(4px, 0.8vw, 10px) !important;
    flex-wrap: nowrap !important;
}

/* Logo Integrado en el Menú */
.is-header-split .ks-split-logo-item,
.ks-header-layout-split .ks-split-logo-item {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 clamp(10px, 1.5vw, 24px) !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
    list-style: none !important;
}

.is-header-split .ks-split-logo-link,
.ks-header-layout-split .ks-split-logo-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.is-header-split .ks-split-logo-img,
.ks-header-layout-split .ks-split-logo-img {
    max-height: 38px !important;
    width: auto !important;
    display: block !important;
    object-fit: contain !important;
}

.is-header-split .wp-block-navigation-item a,
.ks-header-layout-split .wp-block-navigation-item a {
    padding: 3px 6px !important;
    font-size: 12.5px !important;
    white-space: nowrap !important;
}

.is-header-split .ks-header-account-item,
.ks-header-layout-split .ks-header-account-item {
    margin: 0 2px !important;
    display: inline-flex !important;
    align-items: center !important;
}

.is-header-split .ks-header-order-item,
.ks-header-layout-split .ks-header-order-item {
    margin: 0 3px !important;
    display: inline-flex !important;
    align-items: center !important;
}

.is-header-split .ks-header-translator-wrapper,
.ks-header-layout-split .ks-header-translator-wrapper {
    margin: 0 0 0 6px !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* === 5. ESTILO 5: INVERTIDO (MENU A LA IZQUIERDA · LOGO A LA DERECHA) === */
.is-header-nav-left .ks-site-header-container,
.ks-header-layout-nav-left .ks-site-header-container,
.ks-site-header.is-header-nav-left .ks-site-header-container,
.ks-site-header.ks-header-layout-nav-left .ks-site-header-container {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1300px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

.is-header-nav-left .ks-header-nav-group,
.ks-header-layout-nav-left .ks-header-nav-group,
.ks-site-header.is-header-nav-left .ks-header-nav-group,
.ks-site-header.ks-header-layout-nav-left .ks-header-nav-group {
    order: 1 !important;
    margin: 0 auto 0 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 12px !important;
    width: auto !important;
}

.is-header-nav-left .ks-site-logo-group,
.ks-header-layout-nav-left .ks-site-logo-group,
.ks-site-header.is-header-nav-left .ks-site-logo-group,
.ks-site-header.ks-header-layout-nav-left .ks-site-logo-group {
    order: 2 !important;
    margin: 0 0 0 auto !important;
    margin-left: auto !important;
    margin-right: 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    flex-shrink: 0 !important;
}

.is-header-nav-left .ks-site-logo-group a,
.ks-header-layout-nav-left .ks-site-logo-group a,
.is-header-nav-left .wp-block-site-logo,
.ks-header-layout-nav-left .wp-block-site-logo {
    margin: 0 0 0 auto !important;
    display: inline-flex !important;
    justify-content: flex-end !important;
}

.is-header-nav-left .wp-block-navigation,
.ks-header-layout-nav-left .wp-block-navigation,
.is-header-nav-left .wp-block-navigation__container,
.ks-header-layout-nav-left .wp-block-navigation__container,
.is-header-nav-left .items-justified-right,
.ks-header-layout-nav-left .items-justified-right,
.is-header-nav-left .is-content-justification-right,
.ks-header-layout-nav-left .is-content-justification-right,
.is-header-nav-left [class*="wp-container-core-navigation"],
.ks-header-layout-nav-left [class*="wp-container-core-navigation"] {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    margin: 0 !important;
    margin-right: auto !important;
    margin-left: 0 !important;
    gap: 10px !important;
}

.is-header-nav-left .wp-block-navigation-item,
.ks-header-layout-nav-left .wp-block-navigation-item {
    justify-content: flex-start !important;
}

.is-header-nav-left .ks-header-translator-wrapper,
.ks-header-layout-nav-left .ks-header-translator-wrapper {
    margin: 0 0 0 8px !important;
    display: inline-flex !important;
    align-items: center !important;
}

/* === 6. ESTILO 6: CAPSULA FLOTANTE SOFT UI (ISLA DESPEGADA) === */
.wp-block-template-part:has(.is-header-floating),
.wp-block-template-part:has(.ks-header-layout-floating),
header.wp-block-template-part:has(.is-header-floating),
header.wp-block-template-part:has(.ks-header-layout-floating),
header:has(.is-header-floating),
header:has(.ks-header-layout-floating) {
    padding: 14px 20px 0 20px !important;
    background: transparent !important;
}

.is-header-floating,
.ks-header-layout-floating,
.ks-site-header.is-header-floating,
.ks-site-header.ks-header-layout-floating {
    max-width: 1260px !important;
    margin: 12px auto 0 auto !important;
    border-radius: 20px !important;
    border: 1px solid rgba(var(--ks-primary-rgb, 45, 26, 104), 0.12) !important;
    box-shadow: 0 10px 30px rgba(45, 26, 104, 0.1), 0 2px 8px rgba(0, 0, 0, 0.03) !important;
    background: var(--ks-bg-color, #ffffff) !important;
}

@media (max-width: 768px) {
    .wp-block-template-part:has(.is-header-floating),
    .wp-block-template-part:has(.ks-header-layout-floating),
    header.wp-block-template-part:has(.is-header-floating),
    header.wp-block-template-part:has(.ks-header-layout-floating),
    header:has(.is-header-floating),
    header:has(.ks-header-layout-floating) {
        padding: 8px 10px 0 10px !important;
    }

    .is-header-floating,
    .ks-header-layout-floating,
    .ks-site-header.is-header-floating,
    .ks-site-header.ks-header-layout-floating {
        border-radius: 14px !important;
        margin: 6px auto 0 auto !important;
    }
}

/* === 7. OPCION: OCULTAR LOGOTIPO EN EL ENCABEZADO === */
.is-header-logo-hidden .ks-site-logo-group,
.is-header-logo-hidden .wp-block-site-logo,
.is-header-logo-hidden .site-logo,
.is-header-logo-hidden .custom-logo-link,
.is-header-logo-hidden .ks-header-logo,
.ks-header-hide-logo .ks-site-logo-group,
.ks-header-hide-logo .wp-block-site-logo,
.ks-header-hide-logo .site-logo,
.ks-header-hide-logo .custom-logo-link,
.ks-header-hide-logo .ks-header-logo,
.ks-site-header.is-header-logo-hidden .ks-site-logo-group,
.ks-site-header.is-header-logo-hidden .wp-block-site-logo,
.ks-site-header.is-header-logo-hidden .site-logo,
.ks-site-header.is-header-logo-hidden .custom-logo-link,
.ks-site-header.is-header-logo-hidden .ks-header-logo,
.ks-site-header.ks-header-hide-logo .ks-site-logo-group,
.ks-site-header.ks-header-hide-logo .wp-block-site-logo,
.ks-site-header.ks-header-hide-logo .site-logo,
.ks-site-header.ks-header-hide-logo .custom-logo-link,
.ks-site-header.ks-header-hide-logo .ks-header-logo {
    display: none !important;
}

.is-header-logo-hidden .ks-site-header-container,
.ks-header-hide-logo .ks-site-header-container,
.ks-site-header.is-header-logo-hidden .ks-site-header-container,
.ks-site-header.ks-header-hide-logo .ks-site-header-container {
    justify-content: center !important;
    width: 100% !important;
}

.is-header-logo-hidden .ks-header-nav-group,
.ks-header-hide-logo .ks-header-nav-group,
.ks-site-header.is-header-logo-hidden .ks-header-nav-group,
.ks-site-header.ks-header-hide-logo .ks-header-nav-group {
    width: 100% !important;
    justify-content: center !important;
    margin: 0 auto !important;
}

.is-header-logo-hidden .wp-block-navigation,
.is-header-logo-hidden .wp-block-navigation__container,
.ks-header-hide-logo .wp-block-navigation,
.ks-header-hide-logo .wp-block-navigation__container,
.ks-site-header.is-header-logo-hidden .wp-block-navigation,
.ks-site-header.is-header-logo-hidden .wp-block-navigation__container,
.ks-site-header.ks-header-hide-logo .wp-block-navigation,
.ks-site-header.ks-header-hide-logo .wp-block-navigation__container {
    width: 100% !important;
    justify-content: center !important;
    margin: 0 auto !important;
}