/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Template: generatepress
Author: Tom Usborne
Author URI: https://generatepress.com/about
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Tags: two-columns,three-columns,one-column,right-sidebar,left-sidebar,footer-widgets,blog,e-commerce,flexible-header,full-width-template,buddypress,custom-header,custom-background,custom-menu,custom-colors,sticky-post,threaded-comments,translation-ready,rtl-language-support,featured-images,theme-options
Version: 3.6.1.1791509304
Updated: 2026-10-08 19:28:24

*/

/* ==========================================================================
   WooCommerce Variation Swatches (Nativity)
   ========================================================================== */
.victoria-swatches-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 15px;
}

.victoria-swatch {
    cursor: pointer;
    position: relative;
    display: inline-block;
    margin-bottom: 0;
}

.victoria-swatch input[type="radio"] {
    display: none !important; /* Hide the actual radio button */
}

/* Base style for swatches */
.swatch-inner {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #e0e0e0;
    background-color: #f9f9f9;
    color: #333;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

/* Size Swatch specific (Botones de Talla) */
/* En web: maximo 5 tallas por fila, si hay mas salta a la siguiente fila */
.victoria-swatches-wrapper.swatches-type-size,
.victoria-swatches-wrapper:has(.swatch-size) {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    max-width: 280px; /* 5 tallas por fila (48px * 5 + 10px * 4 = 280px) */
}

.victoria-swatches-wrapper.swatches-type-size .victoria-swatch,
.victoria-swatches-wrapper:has(.swatch-size) .victoria-swatch {
    flex: 0 0 auto;
}

.swatch-size .text-swatch {
    width: 48px;
    min-width: 48px;
    box-sizing: border-box;
    min-width: 45px;
    height: 40px;
    padding: 0 10px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 600;
}

.swatch-size.selected .text-swatch,
.swatch-size:hover .text-swatch {
    border-color: #7b519d; /* Color morado de tu marca */
    background-color: #f5f0f9;
    color: #7b519d;
}

/* Color Swatch specific (CÃƒÆ’Ã‚Â­rculos de Color) */
.swatch-color .color-swatch {
    width: 32px;
    height: 32px;
    border-radius: 50%; /* Hacerlo cÃƒÆ’Ã‚Â­rculo */
    border: 1px solid #ddd;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.swatch-color.selected .color-swatch {
    border: 2px solid #7b519d;
    transform: scale(1.15); /* Crece un poquito al seleccionarlo */
    box-shadow: 0 0 8px rgba(123,81,157,0.3);
}

/* 
 * DefiniciÃƒÆ’Ã‚Â³n automÃƒÆ’Ã‚Â¡tica de colores basados en el nombre (slug) 
 * Coinciden con tu imagen de administraciÃƒÆ’Ã‚Â³n
 */
.color-swatch.color-amarillo { background-color: #ffff00; }
.color-swatch.color-arena { background-color: #e8dcc7; }
.color-swatch.color-azul-acero { background-color: #4682b4; }
.color-swatch.color-azul-acero-mezclilla { background-color: #5b7c99; }
.color-swatch.color-280-de-perla,
.color-swatch.color-280-de-perla-2 { background-color: #f2ebd9; }
.color-swatch.color-blanco { background-color: #ffffff; }
.color-swatch.color-negro { background-color: #000000; }
.color-swatch.color-rojo { background-color: #ff0000; }

/* ==========================================================================
   Wholesale Pricing Table
   ========================================================================== */
.victoria-wholesale-info {
    margin: 25px 0;
    padding: 20px;
    background-color: #fcfcfc;
    border: 1px solid #eaeaea;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.02);
}

.victoria-wholesale-info .wholesale-title {
    margin: 0 0 5px 0;
    font-size: 16px;
    font-weight: 600;
    color: #333;
}

.victoria-wholesale-info .wholesale-subtitle {
    margin: 0 0 15px 0;
    font-size: 13px;
    color: #666;
}

.wholesale-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    font-size: 14px;
}

.wholesale-table th, 
.wholesale-table td {
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid #eee;
}

.wholesale-table th {
    background-color: #f5f0f9;
    color: #7b519d;
    font-weight: 600;
    border-bottom: 2px solid #7b519d;
}

.wholesale-table tr:last-child td {
    border-bottom: none;
}

.wholesale-table td strong {
    color: #e53935; /* Color rojo para resaltar el descuento */
}

/* ==========================================================================
   CatÃƒÆ’Ã‚Â¡logo y Tarjetas de Producto (Shop Page)
   ========================================================================== */
.woocommerce ul.products li.product {
    background-color: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.04);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    overflow: hidden;
    padding-bottom: 15px;
    text-align: center;
    border: 1px solid #f9f9f9;
}

/* Efecto de levitaciÃƒÆ’Ã‚Â³n al pasar el mouse */
.woocommerce ul.products li.product:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.08);
}

.woocommerce ul.products li.product img {
    border-radius: 12px 12px 0 0;
    margin-bottom: 15px;
    transition: transform 0.5s ease;
}

/* PequeÃƒÆ’Ã‚Â±o zoom a la imagen de los uniformes */
.woocommerce ul.products li.product:hover img {
    transform: scale(1.03);
}

/* Envoltura de la imagen para que el zoom no se salga de la tarjeta */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    display: block;
    overflow: hidden;
}

/* TÃƒÆ’Ã‚Â­tulo del producto en el catÃƒÆ’Ã‚Â¡logo */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 15px;
    font-weight: 600;
    color: #333;
    margin: 10px 15px 8px;
    line-height: 1.3;
}

/* Precio en el catÃƒÆ’Ã‚Â¡logo */
.woocommerce ul.products li.product .price {
    color: #7b519d; /* Color morado */
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 15px;
}

/* BotÃƒÆ’Ã‚Â³n de "Ver opciones" o "AÃƒÆ’Ã‚Â±adir al carrito" */
.woocommerce ul.products li.product .button {
    background-color: #f5f0f9;
    color: #7b519d;
    border: 1px solid #7b519d;
    border-radius: 50px;
    padding: 8px 20px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    transition: all 0.3s ease;
    display: inline-block;
    margin-top: 10px;
}

.woocommerce ul.products li.product .button:hover {
    background-color: #7b519d;
    color: #fff;
    box-shadow: 0 4px 10px rgba(123,81,157,0.3);
}

/* ==========================================================================
   Header Premium Design (GeneratePress)
   ========================================================================== */
/* Convertir el header en "Pegajoso" (Sticky) con sombra elegante */
.site-header {
    background-color: rgba(255, 255, 255, 0.98);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    border-bottom: 1px solid #f0f0f0;
    position: sticky;
    top: 0;
    z-index: 1000;
    transition: all 0.3s ease;
    backdrop-filter: blur(10px); /* Efecto Glassmorphism */
}

/* NavegaciÃƒÆ’Ã‚Â³n principal */
.main-navigation {
    background: transparent;
}

.main-navigation .main-nav ul li a {
    color: #444;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 0.5px;
    transition: color 0.3s ease;
    position: relative;
}

/* Efecto hover moderno en el menÃƒÆ’Ã‚Âº (LÃƒÆ’Ã‚Â­nea que crece) */
.main-navigation .main-nav ul li > a:hover, 
.main-navigation .main-nav ul li[class*="current-menu-"] > a {
    color: #7b519d; /* Color morado */
    background: transparent;
}

.main-navigation .main-nav ul li > a::after {
    content: '';
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background: #7b519d;
    transition: width 0.3s ease;
}

.main-navigation .main-nav ul li > a:hover::after,
.main-navigation .main-nav ul li[class*="current-menu-"] > a::after {
    width: 60%;
}

/* Icono del Carrito (WooCommerce) - BotÃƒÆ’Ã‚Â³n Flotante en el menÃƒÆ’Ã‚Âº */
.main-navigation .wc-menu-item a {
    background-color: #7b519d !important;
    color: #fff !important;
    border-radius: 50px;
    padding: 0 20px !important;
    margin-left: 15px;
    display: flex;
    align-items: center;
    box-shadow: 0 4px 10px rgba(123, 81, 157, 0.3);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    height: 40px;
    margin-top: 10px;
}

.main-navigation .wc-menu-item a:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(123, 81, 157, 0.4);
}

.main-navigation .wc-menu-item a::after {
    display: none !important; /* Quitar la raya del hover en el carrito */
}

.wc-menu-item .amount {
    font-weight: bold;
    margin-left: 5px;
}

/* Limitar el tamaÃƒÆ’Ã‚Â±o del logotipo para un aspecto premium */
.site-logo img,
.header-image {
    max-width: 200px !important; /* TamaÃƒÆ’Ã‚Â±o estÃƒÆ’Ã‚Â¡ndar de escritorio */
    height: auto;
    object-fit: contain;
}

/* Hacerlo mÃƒÆ’Ã‚Â¡s pequeÃƒÆ’Ã‚Â±o en celulares */
@media (max-width: 768px) {
    .site-logo img,
    .header-image {
        max-width: 150px !important;
    }
}

/* ==========================================================================
   Top Bar Morada
   ========================================================================== */
.victoria-top-bar {
    background-color: #7b519d;
    color: #ffffff;
    text-align: center;
    padding: 10px 15px;
    font-size: 14px;
    font-weight: 500;
}

.top-bar-inner {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    flex-wrap: nowrap;
}

.top-bar-btn {
    border: 1px solid rgba(255,255,255,0.6);
    padding: 3px 12px;
    border-radius: 4px;
    color: #fff;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.top-bar-btn:hover {
    background-color: rgba(255,255,255,0.2);
    color: #fff;
}

/* ==========================================================================
   Layout de la Cabecera Principal (3 Niveles - CSS GRID BULLETPROOF)
   ========================================================================== */
.inside-header {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr; /* Izquierda, Centro, Derecha */
    grid-template-rows: auto auto; /* Fila Superior, Fila Inferior (Menu) */
    align-items: center;
    padding: 10px 40px 0 !important; 
}

.site-logo {
    grid-column: 1 / 2;
    grid-row: 1;
    justify-self: start;
    margin: 0;
}

/* Barra de bÃƒÆ’Ã‚Âºsqueda central */
.victoria-header-search {
    grid-column: 2 / 3;
    grid-row: 1;
    width: 100%;
    min-width: 400px;
    margin: 0 20px;
    justify-self: center;
}

.victoria-header-search form {
    display: flex;
    position: relative;
}

.victoria-header-search input[type="search"] {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 50px;
    padding: 10px 20px;
    font-size: 14px;
    background-color: #f9f9f9;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.02);
}

.victoria-header-search input[type="search"]:focus {
    outline: none;
    border-color: #7b519d;
    background-color: #fff;
}

.victoria-header-search button {
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: #666;
    padding: 5px 10px;
    cursor: pointer;
}

.victoria-header-search button:hover {
    color: #7b519d;
    background: transparent;
}

/* Iconos de Cuenta y Carrito */
.victoria-header-icons {
    grid-column: 3 / 4;
    grid-row: 1;
    justify-self: end;
    display: flex;
    align-items: center;
    gap: 20px;
    margin: 0;
}

.victoria-header-icons .header-icon {
    flex-shrink: 0;
}

.victoria-header-icons .header-icon svg {
    flex-shrink: 0;
    min-width: 26px;
}

/* MenÃƒÆ’Ã‚Âº inferior centrado (ESCRITORIO) */
.nav-float-right .inside-header .main-navigation {
    grid-column: 1 / -1; /* Ocupa todas las columnas */
    grid-row: 2; /* Segunda fila */
    width: 100% !important;
    float: none !important;
    clear: both !important;
    border-top: 1px solid #eee;
    background-color: #fff;
    margin-top: 10px; 
    margin-bottom: 0;
    padding-top: 5px;
    display: flex !important;
    justify-content: center !important;
}

.nav-float-right .main-navigation .inside-navigation {
    justify-content: center;
}

@media (max-width: 768px) {
    .inside-header {
        grid-template-columns: auto 1fr auto !important; /* Hamburguesa, Logo, Iconos */
        grid-template-rows: auto auto !important; /* Fila 1, Buscador */
        padding: 10px 15px 0 !important;
    }
    
    /* En mÃƒÆ’Ã‚Â³vil, el menÃƒÆ’Ã‚Âº hamburguesa va primero a la izquierda */
    .nav-float-right .inside-header .main-navigation {
        grid-column: 1 / 2;
        grid-row: 1;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        float: none !important;
    }
    
    /* Evitar que el botÃƒÆ’Ã‚Â³n se vaya a la derecha */
    .main-navigation .menu-toggle {
        float: none !important;
        display: block !important;
        padding: 5px 10px;
        background: transparent !important;
    }
    
    /* Ocultar el texto "MenÃƒÆ’Ã‚Âº" y cualquier otro botÃƒÆ’Ã‚Â³n de menÃƒÆ’Ã‚Âº duplicado (Off-Canvas) */
    .main-navigation .menu-toggle .mobile-menu,
    .has-inline-mobile-toggle #mobile-menu-control-wrapper {
        display: none !important;
    }
    
    /* Logo centrado en medio de los iconos y la hamburguesa */
    .site-logo {
        grid-column: 2 / 3;
        grid-row: 1;
        justify-self: center;
        margin: 0 auto;
    }
    
    /* Iconos a la derecha */
    .victoria-header-icons {
        grid-column: 3 / 4;
        grid-row: 1;
        justify-self: end;
        gap: 15px;
    }
    
    /* Buscador en la siguiente lÃƒÆ’Ã‚Â­nea */
    .victoria-header-search {
        grid-column: 1 / -1;
        grid-row: 2;
        width: 100%;
        min-width: 100%;
        margin: 10px 0 10px 0;
    }
}

/* ==========================================================================
   Footer Personalizado Premium
   ========================================================================== */
.victoria-footer-wrapper {
    background-color: #fafafa;
    border-top: 1px solid #eaeaea;
    color: #444;
    font-size: 14px;
    padding-top: 60px;
}

.victoria-footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 40px 40px;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 40px;
}

.footer-col h3 {
    color: #333;
    font-size: 16px;
    margin-bottom: 20px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-col ul li {
    margin-bottom: 12px;
}

.footer-col ul li a {
    color: #666;
    text-decoration: none;
    transition: color 0.2s ease, padding-left 0.2s ease;
}

.footer-col ul li a:hover {
    color: #7b519d;
    padding-left: 5px;
}

.footer-logo {
    max-width: 180px;
    margin-bottom: 15px;
    display: block;
}

.footer-desc {
    color: #666;
    line-height: 1.6;
    margin-bottom: 15px;
    max-width: 300px;
}

.victoria-footer-bottom {
    background-color: #fff;
    border-top: 1px solid #eaeaea;
    padding: 20px 40px;
    text-align: center;
    color: #888;
    font-size: 13px;
}

@media (max-width: 768px) {
    .victoria-footer-inner {
        grid-template-columns: 1fr;
        padding: 0 20px 40px;
        text-align: center;
    }
    
    .footer-desc {
        margin: 0 auto 15px;
    }
    
    .footer-logo {
        margin: 0 auto 15px;
    }
}

/* ==========================================================================
   Homepage PREMIUM Nativa
   ========================================================================== */

.vic-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.vic-premium-section {
    padding: 80px 0;
}

.vic-bg-soft {
    background-color: #f8f9fa;
}

.vic-section-header {
    text-align: center;
    margin-bottom: 50px;
}

.vic-section-header h2 {
    font-size: 36px;
    color: #2c3e50;
    font-weight: 800;
    margin-bottom: 15px;
    letter-spacing: -0.5px;
}

.vic-section-header p {
    color: #7f8c8d;
    font-size: 18px;
}

/* Premium Hero */
.vic-premium-hero {
    position: relative;
    padding: 150px 20px;
    text-align: center;
    overflow: hidden;
    color: #fff;
    background-image: url('/wp-content/uploads/2024/03/Cap-Mockup-PSD-923IRa-copia-300x300.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed; /* Parallax effect */
}

.vic-hero-bg {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: linear-gradient(135deg, rgba(44, 62, 80, 0.9) 0%, rgba(123, 81, 157, 0.8) 100%);
    z-index: 1;
}

.vic-hero-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 0 auto;
}

.vic-badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(10px);
    padding: 8px 16px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 25px;
    border: 1px solid rgba(255,255,255,0.3);
}

.vic-hero-title {
    font-size: 56px;
    font-weight: 900;
    line-height: 1.1;
    margin-bottom: 25px;
    color: #fff;
    text-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

.vic-hero-subtitle {
    font-size: 20px;
    line-height: 1.6;
    margin-bottom: 40px;
    color: #e0e6ed;
}

.vic-hero-actions {
    display: flex;
    justify-content: center;
    gap: 20px;
}

.vic-btn {
    display: inline-block;
    padding: 16px 35px;
    font-size: 16px;
    font-weight: 700;
    border-radius: 8px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    text-decoration: none;
}

.vic-btn-primary {
    background: #fff;
    color: #7b519d;
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
}

.vic-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 25px rgba(0,0,0,0.2);
    color: #5c3b77;
}

.vic-btn-outline {
    background: transparent;
    color: #fff;
    border: 2px solid #fff;
}

.vic-btn-outline:hover {
    background: rgba(255,255,255,0.1);
    transform: translateY(-3px);
}

.vic-btn-white {
    background: #fff;
    color: #2c3e50;
    margin-top: 20px;
}
.vic-btn-white:hover {
    color: #7b519d;
}

/* Glassmorphism Benefits */
.vic-premium-benefits {
    margin-top: -50px;
    position: relative;
    z-index: 10;
    padding: 0 20px;
}

.vic-benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    padding: 40px;
    border-radius: 15px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.08);
    border: 1px solid rgba(255,255,255,1);
}

.vic-benefit-item {
    display: flex;
    align-items: center;
    gap: 20px;
}

.vic-b-icon {
    font-size: 40px;
    background: linear-gradient(135deg, #7b519d, #3498db);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.vic-b-text h4 {
    margin: 0 0 5px;
    font-size: 18px;
    color: #2c3e50;
    font-weight: 700;
}

.vic-b-text span {
    font-size: 14px;
    color: #7f8c8d;
}

/* Premium Woo Grid */
.vic-custom-grid.woocommerce ul.products li.product {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.04);
    transition: all 0.4s ease;
    border: 1px solid #f1f1f1;
    text-align: center;
    padding-bottom: 20px;
}

.vic-custom-grid.woocommerce ul.products li.product:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.vic-custom-grid.woocommerce ul.products li.product img {
    margin-bottom: 15px;
    transition: transform 0.5s ease;
}

.vic-custom-grid.woocommerce ul.products li.product:hover img {
    transform: scale(1.05);
}

.vic-custom-grid.woocommerce ul.products li.product .woocommerce-loop-category__title,
.vic-custom-grid.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 18px;
    color: #2c3e50;
    font-weight: 700;
    padding: 10px 15px;
}

.vic-custom-grid.woocommerce ul.products li.product .price {
    color: #7b519d;
    font-weight: bold;
    font-size: 16px;
}

/* Premium Banner */
.vic-premium-banner {
    background: linear-gradient(135deg, #2c3e50, #7b519d);
    padding: 100px 20px;
    text-align: center;
    color: #fff;
}

.vic-banner-inner {
    max-width: 700px;
    margin: 0 auto;
}

.vic-banner-inner h2 {
    font-size: 42px;
    font-weight: 800;
    margin-bottom: 20px;
    color: #fff;
}

.vic-banner-inner p {
    font-size: 18px;
    line-height: 1.6;
    margin-bottom: 35px;
    color: #e0e6ed;
}

/* Responsive */
@media (max-width: 992px) {
    .vic-benefits-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

@media (max-width: 768px) {
    .vic-hero-title {
        font-size: 38px;
    }
    .vic-hero-actions {
        flex-direction: column;
    }
    .vic-btn {
        width: 100%;
        text-align: center;
    }
    .vic-premium-banner h2 {
        font-size: 32px;
    }
}

/* Ocultar categorÃƒÂ­as y etiquetas en la pÃƒÂ¡gina de producto individual (dejar solo SKU) */
.product_meta .posted_in,
.product_meta .tagged_as {
    display: none !important;
}

/* ==========================================================================
   Hero V2 (RediseÃƒÂ±o)
   ========================================================================== */
.vic-hero-v2 {
    background: linear-gradient(180deg, #fbfafd 0%, #ffffff 100%);
    padding: 80px 0;
    overflow: hidden;
}

.vic-hero-v2-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.vic-hero-v2-badge {
    display: inline-block;
    background-color: #f1e9f9;
    color: #7b519d;
    padding: 6px 16px;
    border-radius: 30px;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 25px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.vic-hero-v2-title {
    font-size: 58px;
    font-weight: 900;
    line-height: 1.1;
    color: #1a1a1a;
    margin-bottom: 20px;
}

.vic-hero-v2-title .text-gradient {
    background: linear-gradient(90deg, #7b519d 0%, #b87b9d 50%, #e0ac69 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}

.vic-hero-v2-subtitle {
    font-size: 18px;
    color: #666;
    line-height: 1.6;
    margin-bottom: 35px;
    max-width: 90%;
}

.vic-hero-v2-actions {
    display: flex;
    gap: 15px;
    margin-bottom: 40px;
}

.vic-btn-v2 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 28px;
    border-radius: 30px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.vic-btn-v2.primary {
    background-color: #7b519d;
    color: #fff;
    box-shadow: 0 8px 20px rgba(123, 81, 157, 0.3);
}

.vic-btn-v2.primary:hover {
    background-color: #613b82;
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(123, 81, 157, 0.4);
}

.vic-btn-v2.outline {
    background-color: transparent;
    color: #7b519d;
    border: 2px solid #7b519d;
}

.vic-btn-v2.outline:hover {
    background-color: #f9f5fc;
    transform: translateY(-2px);
}

.vic-hero-v2-features {
    display: flex;
    gap: 20px;
    flex-wrap: nowrap;
}

.vic-hero-v2-features span {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: #666;
    font-weight: 500;
}

.vic-hero-v2-features svg {
    width: 18px;
    height: 18px;
    color: #7b519d;
}

.vic-hero-v2-image-wrap {
    position: relative;
}

.vic-hero-v2-image {
    width: 100%;
    border-radius: 24px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
    display: block;
}

.vic-hero-v2-floating-badge {
    position: absolute;
    bottom: -20px;
    left: -30px;
    background: #fff;
    padding: 15px 25px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    gap: 15px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.08);
    z-index: 2;
}

.vic-hero-v2-floating-badge .badge-icon {
    background: #eafcf1;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.vic-hero-v2-floating-badge .badge-icon svg {
    width: 22px;
    height: 22px;
}

.vic-hero-v2-floating-badge .badge-text {
    font-size: 13px;
    color: #666;
    line-height: 1.4;
}

.vic-hero-v2-floating-badge .badge-text strong {
    color: #1a1a1a;
    font-size: 15px;
}

@media (max-width: 991px) {
    .vic-hero-v2-grid {
        grid-template-columns: 1fr;
    }
    .vic-hero-v2-title {
        font-size: 42px;
    }
    .vic-hero-v2-floating-badge {
        left: 20px;
        bottom: 20px;
    }
}

/* ==========================================================================
   Nosotros (About Page)
   ========================================================================== */
.vic-about-hero {
    background: linear-gradient(135deg, #f9f5fc 0%, #ffffff 100%);
    padding: 100px 20px 80px;
    text-align: center;
}

.vic-about-hero h1 {
    font-size: 52px;
    font-weight: 900;
    color: #1a1a1a;
    margin-bottom: 20px;
}

.vic-about-hero h1 span {
    color: #7b519d;
}

.vic-about-hero p {
    font-size: 18px;
    color: #666;
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.6;
}

.vic-about-pillars {
    padding: 60px 0;
    margin-top: -40px;
    position: relative;
    z-index: 2;
}

.vic-pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

.vic-pillar-card {
    background: #fff;
    padding: 40px 30px;
    border-radius: 20px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.05);
    text-align: center;
    border: 1px solid #f0f0f0;
    transition: transform 0.3s ease;
}

.vic-pillar-card:hover {
    transform: translateY(-5px);
}

.vic-pillar-icon {
    font-size: 45px;
    margin-bottom: 20px;
}

.vic-pillar-card h3 {
    font-size: 22px;
    color: #2c3e50;
    margin-bottom: 15px;
    font-weight: 700;
}

.vic-pillar-card p {
    color: #666;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}

.vic-about-story {
    padding: 80px 0;
    background: #fff;
}

.vic-story-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.vic-story-image {
    position: relative;
}

.vic-story-image img {
    border-radius: 24px;
    width: 100%;
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.vic-story-badge {
    position: absolute;
    bottom: -20px;
    right: -20px;
    background: #7b519d;
    color: #fff;
    padding: 25px;
    border-radius: 50%;
    text-align: center;
    width: 130px;
    height: 130px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    box-shadow: 0 15px 30px rgba(123, 81, 157, 0.4);
    font-size: 13px;
    line-height: 1.2;
}

.vic-story-badge span {
    font-size: 24px;
    font-weight: 800;
    display: block;
    margin-bottom: 5px;
}

.vic-subtitle-tag {
    color: #7b519d;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 13px;
    display: block;
    margin-bottom: 15px;
}

.vic-story-content h2 {
    font-size: 38px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.2;
    margin-bottom: 25px;
}

.vic-story-content p {
    font-size: 16px;
    color: #666;
    line-height: 1.7;
    margin-bottom: 30px;
}

.vic-story-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.vic-story-list li {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
    font-size: 16px;
    color: #333;
    font-weight: 500;
}

.vic-story-list svg {
    width: 20px;
    height: 20px;
    color: #25d366;
    flex-shrink: 0;
}

.vic-about-cta {
    background: linear-gradient(135deg, #f9f5fc 0%, #ffffff 100%);
    padding: 80px 20px;
    text-align: center;
    border-top: 1px solid #f0f0f0;
}

.vic-about-cta h2 {
    font-size: 36px;
    font-weight: 800;
    color: #1a1a1a;
    margin-bottom: 20px;
}

.vic-about-cta p {
    font-size: 18px;
    color: #666;
    margin-bottom: 35px;
}

.vic-cta-buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
}

@media (max-width: 991px) {
    .vic-pillars-grid,
    .vic-story-grid {
        grid-template-columns: 1fr;
    }
    .vic-story-badge {
        right: 20px;
    }
    .vic-about-hero h1,
    .vic-story-content h2,
    .vic-about-cta h2 {
        font-size: 32px;
    }
    .vic-cta-buttons {
        flex-direction: column;
    }
}

/* ==========================================================================
   Contacto (Contact Page)
   ========================================================================== */
.vic-contact-hero {
    background: linear-gradient(135deg, #f9f5fc 0%, #ffffff 100%);
    padding: 80px 20px 60px;
    text-align: center;
}

.vic-contact-hero h1 {
    font-size: 52px;
    font-weight: 900;
    color: #1a1a1a;
    margin-bottom: 20px;
}

.vic-contact-hero h1 span {
    color: #7b519d;
}

.vic-contact-hero p {
    font-size: 18px;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

.vic-contact-main {
    padding: 60px 0 100px;
    background: #fff;
}

.vic-contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: flex-start;
}

.vic-contact-info h2 {
    font-size: 36px;
    font-weight: 800;
    color: #1a1a1a;
    margin-bottom: 15px;
}

.vic-contact-info > p {
    font-size: 16px;
    color: #666;
    margin-bottom: 40px;
    line-height: 1.6;
}

.vic-info-cards {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.vic-info-card {
    display: flex;
    align-items: center;
    gap: 20px;
    background: #fbfafd;
    padding: 25px;
    border-radius: 16px;
    border: 1px solid #f0f0f0;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.vic-info-card:hover {
    transform: translateX(10px);
    box-shadow: 0 10px 20px rgba(123, 81, 157, 0.05);
}

.vic-info-icon {
    width: 50px;
    height: 50px;
    background: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    flex-shrink: 0;
}

.vic-info-icon svg {
    width: 24px;
    height: 24px;
    color: #7b519d;
}

.vic-info-text h4 {
    margin: 0 0 5px;
    font-size: 16px;
    font-weight: 700;
    color: #333;
}

.vic-info-text p {
    margin: 0;
    color: #666;
    font-size: 15px;
}

.vic-contact-form-box {
    background: #fff;
    padding: 40px;
    border-radius: 24px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.08);
    border: 1px solid #f9f9f9;
}

.vic-contact-form-box h3 {
    font-size: 24px;
    font-weight: 800;
    margin-bottom: 10px;
    color: #1a1a1a;
}

.vic-contact-form-box p {
    font-size: 14px;
    color: #666;
    margin-bottom: 30px;
}

.vic-custom-form .vic-form-group {
    margin-bottom: 20px;
}

.vic-custom-form label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #444;
    margin-bottom: 8px;
}

.vic-custom-form input,
.vic-custom-form select,
.vic-custom-form textarea {
    width: 100%;
    padding: 14px 18px;
    border: 1px solid #ddd;
    border-radius: 10px;
    background: #fafafa;
    font-size: 15px;
    color: #333;
    transition: all 0.3s ease;
    font-family: inherit;
}

.vic-custom-form input:focus,
.vic-custom-form select:focus,
.vic-custom-form textarea:focus {
    outline: none;
    border-color: #7b519d;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(123, 81, 157, 0.1);
}

@media (max-width: 991px) {
    .vic-contact-grid {
        grid-template-columns: 1fr;
    }
    .vic-contact-hero h1 {
        font-size: 42px;
    }
    .vic-contact-form-box {
        padding: 30px 20px;
    }
}
/* ==========================================================================
   Custom Categories Cards (Home)
   ========================================================================== */
.vic-custom-categories {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.vic-cat-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-radius: 20px;
    padding: 30px 25px;
    text-decoration: none;
    position: relative;
    overflow: hidden;
    min-height: 380px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.vic-cat-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0,0,0,0.1);
}

.vic-cat-content {
    position: relative;
    z-index: 2;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.vic-cat-icon {
    width: 45px;
    height: 45px;
    margin-bottom: 20px;
}

.vic-cat-icon svg {
    width: 100%;
    height: 100%;
}

.vic-cat-card h3 {
    font-size: 24px;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 10px;
    color: #1a1a1a;
}

.vic-cat-card p {
    font-size: 14px;
    line-height: 1.4;
    color: #444;
    margin-bottom: 25px;
    max-width: 85%;
}

.vic-cat-btn {
    width: 40px;
    height: 40px;
    background: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: auto;
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
    transition: transform 0.3s ease;
}

.vic-cat-card:hover .vic-cat-btn {
    transform: translateX(5px);
}

.vic-cat-btn svg {
    width: 20px;
    height: 20px;
}

.vic-cat-image {
    position: absolute;
    bottom: -10px;
    right: -20px;
    width: 160px;
    height: 220px;
    background-size: cover;
    background-position: center top;
    background-repeat: no-repeat;
    z-index: 1;
    border-radius: 20px;
    mask-image: linear-gradient(to top, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 100%);
    -webkit-mask-image: linear-gradient(to top, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 100%);
}

/* Colors */
.vic-cat-pink { background-color: #fdf2f8; }
.vic-cat-pink .vic-cat-icon svg, .vic-cat-pink h3, .vic-cat-pink .vic-cat-btn svg { color: #831843; }

.vic-cat-purple { background-color: #f3e8ff; }
.vic-cat-purple .vic-cat-icon svg, .vic-cat-purple h3, .vic-cat-purple .vic-cat-btn svg { color: #581c87; }

.vic-cat-orange { background-color: #fff7ed; }
.vic-cat-orange .vic-cat-icon svg, .vic-cat-orange h3, .vic-cat-orange .vic-cat-btn svg { color: #9a3412; }

.vic-cat-blue { background-color: #eff6ff; }
.vic-cat-blue .vic-cat-icon svg, .vic-cat-blue h3, .vic-cat-blue .vic-cat-btn svg { color: #1e3a8a; }

@media (max-width: 1200px) {
    .vic-custom-categories { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
    .vic-custom-categories { grid-template-columns: 1fr; }
    .vic-cat-image { right: 0; bottom: 0; width: 140px; height: 180px; }
}
/* ==========================================================================
   Mejoras Tienda WooCommerce (Shop / Archive)
   ========================================================================== */

/* Hero de Tienda (inyectado vÃƒÂ­a functions.php) */
.vic-shop-hero {
    background: linear-gradient(135deg, #f9f5fc 0%, #ffffff 100%);
    padding: 60px 20px 50px;
    text-align: center;
    margin-bottom: 40px;
    border-radius: 20px;
}

.vic-shop-hero h1 {
    font-size: 42px;
    font-weight: 900;
    color: #1a1a1a;
    margin-bottom: 15px;
}

.vic-shop-hero p {
    font-size: 16px;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
}

/* Tarjetas de Producto */
ul.products li.product {
    background: #fff;
    border-radius: 16px;
    padding: 0 0 20px 0 !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.04);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    overflow: hidden;
    text-align: center;
    border: 1px solid #f5f5f5;
}

ul.products li.product:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(123, 81, 157, 0.15);
}

/* Imagen del Producto */
ul.products li.product a img {
    margin: 0 0 20px !important;
    width: 100%;
    transition: transform 0.5s ease;
}

ul.products li.product:hover a img {
    transform: scale(1.05);
}

/* TÃƒÂ­tulo del Producto */
ul.products li.product .woocommerce-loop-product__title {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    padding: 0 15px;
    margin-bottom: 8px;
    line-height: 1.3;
}

/* Precio */
ul.products li.product .price {
    color: #7b519d !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    padding: 0 15px;
    margin-bottom: 20px;
}

ul.products li.product .price del {
    color: #999 !important;
    font-size: 13px;
    font-weight: 400 !important;
}

/* BotÃƒÂ³n AÃƒÂ±adir al Carrito / Ver Opciones */
ul.products li.product .button {
    display: inline-block;
    margin: 0 15px !important;
    background: #7b519d !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 10px 20px !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background 0.3s ease !important;
}

ul.products li.product .button:hover {
    background: #1a1a1a !important;
    color: #fff !important;
}

/* Ocultar el tÃƒÂ­tulo original de WooCommerce para usar nuestro Hero */
.woocommerce-products-header__title.page-title {
    display: none !important;
}
/* ==========================================================================
   HEADER MODERNO (TIPO APP)
   ========================================================================== */

/* Ocultar header de GeneratePress */
header#masthead, nav#site-navigation {
    display: none !important;
}

/* Espacio superior para el nuevo header fijo */
/* Eliminado para usar sticky */

/* Header Top (Desktop y Mobile) */
.vic-modern-header {
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    z-index: 9999;
    border-bottom: 1px solid rgba(0,0,0,0.05);
    transition: all 0.3s ease;
}

.vic-header-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 15px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 70px;
}

.vic-header-logo a {
    text-decoration: none;
    display: flex;
    align-items: center;
}

.vic-header-nav {
    display: flex;
    gap: 30px;
}

.vic-header-nav a {
    text-decoration: none;
    color: #444;
    font-weight: 600;
    font-size: 15px;
    transition: color 0.3s ease;
}

.vic-header-nav a:hover {
    color: #7b519d;
}

.vic-header-actions {
    display: flex;
    align-items: center;
    gap: 15px;
}

.vic-icon-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #fbfafd;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1a1a1a;
    text-decoration: none;
    transition: all 0.3s ease;
}

.vic-icon-btn:hover {
    background: #7b519d;
    color: #fff;
}

.vic-icon-btn svg {
    width: 20px;
    height: 20px;
}

.vic-cart-btn {
    position: relative;
}

.vic-cart-badge {
    position: absolute;
    top: -5px;
    right: -5px;
    background: #e11d48;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #fff;
}


/* NavegaciÃƒÂ³n con MenÃƒÂº Nativo WP */
ul.vic-menu-list {
    display: flex;
    gap: 30px;
    list-style: none;
    margin: 0;
    padding: 0;
}

ul.vic-menu-list li a {
    text-decoration: none;
    color: #444;
    font-weight: 600;
    font-size: 15px;
    transition: color 0.3s ease;
}

ul.vic-menu-list li a:hover {
    color: #7b519d;
}

/* Envoltorio Buscador + Iconos */
.vic-header-actions-wrapper {
    display: flex;
    align-items: center;
    gap: 20px;
}

/* Buscador Header */
.vic-header-search form {
    display: flex;
    align-items: center;
    background: #fbfafd;
    border-radius: 20px;
    padding: 5px 15px;
    border: 1px solid rgba(0,0,0,0.05);
    width: 250px;
}

.vic-header-search input[type="search"] {
    border: none;
    background: transparent;
    padding: 8px 0;
    font-size: 14px;
    width: 100%;
    outline: none;
    color: #333;
}

.vic-header-search button {
    background: none;
    border: none;
    padding: 0;
    color: #7b519d;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.vic-header-search button svg {
    width: 18px;
    height: 18px;
}


/* Ajustes de espacio y alineaciÃƒÂ³n para Header */
.vic-header-container {
    max-width: 100%;
    padding: 15px 30px;
    height: auto;
    min-height: 70px;
    flex-wrap: nowrap;
    gap: 15px;
}

ul.vic-menu-list {
    gap: 15px;
    align-items: center;
    flex-wrap: nowrap;
    justify-content: center;
}

ul.vic-menu-list li a {
    font-size: 14px;
    padding: 5px;
    white-space: nowrap;
}

/* Ocultar botÃƒÂ³n hamburguesa en Desktop */
.vic-mobile-toggle {
    display: none;
    background: none;
    border: none;
    color: #1a1a1a;
    padding: 5px;
    cursor: pointer;
}

.vic-mobile-toggle svg {
    width: 28px;
    height: 28px;
}

/* COMPORTAMIENTO MOBILE MEJORADO */
@media (max-width: 1024px) {
    .vic-header-container {
        justify-content: space-between;
        align-items: center;
        padding: 10px 15px;
        flex-wrap: nowrap;
    }

    .vic-mobile-toggle {
        display: block;
        order: -1;
        flex: 0 0 auto;
    }
    
    .vic-header-logo {
        flex: 1 1 auto;
        text-align: center;
        display: flex;
        justify-content: center;
    }
    
    .vic-header-logo img {
        max-height: 45px !important;
    }
    
    /* Mostrar la barra de bÃƒÂºsqueda y carrito en mÃƒÂ³vil en una fila */
    .vic-header-actions-wrapper {
        display: flex !important;
        width: auto;
        justify-content: flex-end;
        order: 3;
        margin-top: 0;
    }
    
    .vic-header-search {
        width: 100%;
    }
    
    .vic-header-search form {
        width: 100%;
    }
    
    /* MenÃƒÂº desplegable Mobile */
    .vic-header-nav {
        display: none; /* Oculto por defecto */
        width: 100%;
        order: 4;
        background: #fff;
        margin-top: 15px;
        padding: 15px;
        border-radius: 12px;
        box-shadow: 0 5px 15px rgba(0,0,0,0.05);
    }
    
    .vic-header-nav.vic-nav-active {
        display: block !important;
    }
    
    ul.vic-menu-list {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    
    ul.vic-menu-list li {
        width: 100%;
        border-bottom: 1px solid #eee;
        padding-bottom: 10px;
    }
}
/* ==========================================================================
   FIX PARA SUBMENÃƒÅ¡S (DESPLEGABLES)
   ========================================================================== */

/* Asegurar que las listas no tengan viÃƒÂ±etas */
.vic-header-nav ul {
    list-style: none !important;
    margin: 0;
    padding: 0;
}

/* El elemento li contenedor necesita posiciÃƒÂ³n relativa */
ul.vic-menu-list > li {
    position: relative;
    display: inline-block;
}

/* Estilo por defecto del submenÃƒÂº (Oculto) */
ul.vic-menu-list ul.sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    background: #ffffff;
    box-shadow: 0 15px 35px rgba(0,0,0,0.1);
    border-radius: 12px;
    padding: 10px 0;
    min-width: 220px;
    z-index: 1000;
    
    /* Ocultar inicialmente */
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
}

/* Mostrar el submenÃƒÂº al hacer hover */
ul.vic-menu-list li:hover > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Estilos de los links dentro del submenÃƒÂº */
ul.vic-menu-list ul.sub-menu li {
    width: 100%;
}

ul.vic-menu-list ul.sub-menu li a {
    display: block;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 500;
    color: #444;
    transition: background 0.2s, color 0.2s;
    border-bottom: none !important;
}

ul.vic-menu-list ul.sub-menu li a:hover {
    background: #fbfafd;
    color: #7b519d;
    padding-left: 25px; /* PequeÃƒÂ±o efecto de deslizamiento */
}

/* Mobile: El submenÃƒÂº fluye normal hacia abajo */
@media (max-width: 1024px) {
    ul.vic-menu-list ul.sub-menu {
        position: static;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: none;
        background: transparent;
        padding-left: 20px;
        display: none; /* Se oculta por defecto en el acordeÃƒÂ³n si quisieramos, pero en mÃƒÂ³vil lo dejamos en bloque */
    }
    
    /* En mÃƒÂ³vil, mostrar siempre los submenÃƒÂºs para que puedan tocarlos */
    ul.vic-menu-list li:hover > ul.sub-menu,
    ul.vic-menu-list li > ul.sub-menu {
        display: flex;
    }
}
/* ==========================================================================
   BUSCADOR DESPLEGABLE (ICONO)
   ========================================================================== */

/* BotÃƒÂ³n de lupa sin estilos extra raros */
button.vic-search-toggle {
    border: none;
    cursor: pointer;
}

/* Contenedor flotante del buscador */
.vic-search-dropdown {
    position: absolute;
    top: 120%;
    right: 0;
    width: 300px;
    background: #fff;
    padding: 15px;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    z-index: 1000;
    
    /* Oculto por defecto con animaciÃƒÂ³n */
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: all 0.3s ease;
}

.vic-search-dropdown.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.vic-search-dropdown form {
    display: flex;
    align-items: center;
    background: #fbfafd;
    border-radius: 8px;
    padding: 5px 15px;
    border: 1px solid rgba(0,0,0,0.05);
    width: 100%;
}

.vic-search-dropdown input[type="search"] {
    border: none;
    background: transparent;
    padding: 8px 0;
    font-size: 14px;
    width: 100%;
    outline: none;
    color: #333;
}

.vic-search-dropdown button {
    background: none;
    border: none;
    padding: 0;
    color: #7b519d;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.vic-search-dropdown button svg {
    width: 18px;
    height: 18px;
}

@media (max-width: 1024px) {
    .vic-search-dropdown {
        position: absolute;
        top: 100%;
        right: 0;
        width: 100vw;
        left: 0;
        box-shadow: 0 10px 20px rgba(0,0,0,0.1);
        padding: 15px;
        margin-bottom: 0;
        opacity: 0;
        visibility: hidden;
        transform: translateY(10px);
        display: block; /* Se controla con opacity/visibility y transform */
        border-radius: 0;
    }
    
    .vic-search-dropdown.active {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }
}

/* Override Top Bar Background to Black */
.victoria-top-bar {
    background-color: #111111 !important;
}
/* ==========================================================================
   ESTILO DE MENÃš ACTIVO (TIPO PILL/PLAYSTATION)
   ========================================================================== */

/* AÃ±adir padding y bordes redondeados a los enlaces principales */
ul.vic-menu-list > li > a {
    padding: 8px 18px !important;
    border-radius: 30px;
    transition: all 0.2s ease;
    display: inline-block;
}

/* Efecto Hover para todos los enlaces principales */
ul.vic-menu-list > li > a:hover {
    background-color: #f5f5f7 !important;
    color: #1a1a1a !important;
}

/* Estado Activo (La pÃ¡gina en la que te encuentras) */
ul.vic-menu-list > li.current-menu-item > a,
ul.vic-menu-list > li.current-menu-ancestor > a,
ul.vic-menu-list > li.current_page_item > a {
    background-color: #e8e8ed !important;
    color: #1a1a1a !important;
    font-weight: 700 !important;
}
/* ==========================================================================
   AJUSTES PARA LOGO MÃS GRANDE EN ESCRITORIO
   ========================================================================== */
@media (min-width: 1025px) {
    /* Hacer el logo mÃ¡s grande */
    .vic-header-logo {
        flex: 0 0 220px !important;
    }
    .vic-header-logo img {
        max-width: 220px !important;
        max-height: 70px !important; /* Permitir que sea mÃ¡s alto */
    }
    
    /* Juntar un poco mÃ¡s el menÃº para hacer espacio al logo grande */
    ul.vic-menu-list {
        gap: 5px !important; /* Menor separaciÃ³n entre botones */
    }
    ul.vic-menu-list > li > a {
        padding: 8px 12px !important; /* Botones mÃ¡s compactos */
    }
    
    /* Alinear el menÃº ligeramente hacia la izquierda (mÃ¡s pegado al logo) */
    .vic-header-nav {
        justify-content: flex-start !important;
        margin-left: 15px;
    }
}
/* ==========================================================================
   FIX MENÚ MÓVIL (SOBREPOSICIÓN)
   ========================================================================== */
.vic-header-container {
    position: relative !important;
}

@media (max-width: 1024px) {
    .vic-header-nav {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        margin-top: 0 !important;
        z-index: 9999 !important;
        background: #ffffff !important;
        border-radius: 0 0 12px 12px !important;
        box-shadow: 0 15px 30px rgba(0,0,0,0.1) !important;
    }
}
/* ==========================================================================
   FIX MENÚ MÓVIL SCROLL (PARA PODER DESLIZAR)
   ========================================================================== */
@media (max-width: 1024px) {
    .vic-header-nav {
        max-height: calc(100vh - 80px) !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }
}
/* ==========================================================================
   FOOTER PREMIUM
   ========================================================================== */
.victoria-footer-wrapper {
    background-color: #0d0d0d;
    color: #e0e0e0;
    padding: 70px 5% 0;
    font-family: inherit;
    margin-top: 60px;
}

.victoria-footer-inner {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
    padding-bottom: 50px;
}

.footer-col h3 {
    color: #ffffff;
    font-size: 16px;
    margin-bottom: 25px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

.footer-logo {
    max-width: 200px;
    margin-bottom: 20px;
    /* Convierte el logo a color blanco para que contraste elegante con el fondo negro */
    filter: brightness(0) invert(1); 
}

.footer-desc {
    font-size: 15px;
    line-height: 1.7;
    color: #888888;
}

.footer-col ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-col ul li {
    margin-bottom: 15px;
}

.footer-col ul li a {
    color: #aaaaaa;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 15px;
    display: inline-block;
}

.footer-col ul li a:hover {
    color: #ffffff;
    transform: translateX(5px);
}

.victoria-footer-bottom {
    border-top: 1px solid #1f1f1f;
    text-align: center;
    padding: 25px 0;
    color: #666666;
    font-size: 13px;
    letter-spacing: 0.5px;
}