/*
Theme Name: Veltrio Dark
Theme URI: https://veltrio.es
Description: Tema oscuro profesional para Veltrio S.L.
Author: Veltrio S.L.
Author URI: https://veltrio.es
Template: kadence
Version: 1.0.0
Text Domain: veltrio
*/

/* =============================================
   VELTRIO DARK THEME - Colores globales
   ============================================= */

:root {
    --v-accent: #7C5CFC;
    --v-accent-light: #A78BFA;
    --v-accent-dark: #5A3FD9;
    --v-bg-deep: #0F0F1A;
    --v-bg-mid: #13132B;
    --v-bg-card: #1A1A2E;
    --v-bg-lighter: #252540;
    --v-border: #1e1e3a;
    --v-text-white: #FFFFFF;
    --v-text-body: #B0B0C0;
    --v-text-muted: #6a6a85;
    --v-text-dim: #4a4a65;
}

/* Body */
body, body.content-style-unboxed .site {
    background-color: var(--v-bg-deep) !important;
    color: var(--v-text-body);
    font-family: 'Inter', sans-serif;
}

/* Header */
#masthead,
.site-main-header-wrap .site-header-row-container-inner,
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start):not(.site-header-row-container):not(.item-hidden-above):not(.site-main-header-wrap),
#masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start):not(.item-hidden-above) > .site-header-row-container-inner {
    background: var(--v-bg-deep) !important;
    border-bottom: 1px solid rgba(124,92,252,0.12);
}

/* Nav links */
.main-navigation .primary-menu-container > ul > li.menu-item > a {
    color: var(--v-text-body) !important;
}
.main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.main-navigation .primary-menu-container > ul > li.menu-item.current-menu-item > a {
    color: var(--v-accent) !important;
}

/* Header button */
#main-header .header-button {
    background: var(--v-accent) !important;
    color: #fff !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    border: none !important;
}
#main-header .header-button:hover {
    background: var(--v-accent-dark) !important;
}

/* Logo */
.site-branding a.brand img {
    max-width: 150px;
}
.site-title, .site-description {
    color: var(--v-text-white) !important;
}

/* Headings */
h1, h2, h3, h4, h5, h6,
.entry-title, .page-title {
    color: var(--v-text-white) !important;
    font-family: 'Inter', sans-serif;
}

/* Links */
a { color: var(--v-accent); }
a:hover { color: var(--v-accent-light); }

/* Buttons */
.wp-block-button__link,
.button,
button,
input[type="submit"],
.woocommerce .button,
.wp-element-button {
    background: var(--v-accent) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
}
.wp-block-button__link:hover,
.button:hover,
button:hover,
input[type="submit"]:hover,
.woocommerce .button:hover,
.wp-element-button:hover {
    background: var(--v-accent-dark) !important;
    color: #fff !important;
}

/* Content area */
.content-area {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.entry-content-wrap {
    padding: 0 !important;
}
.content-bg, .site {
    background: var(--v-bg-deep) !important;
}
.entry.single-entry,
.entry.loop-entry {
    box-shadow: none !important;
}

/* Footer */
.site-footer,
.footer-widget-area,
.site-bottom-footer-wrap,
.site-middle-footer-wrap,
.site-middle-footer-wrap .site-footer-row-container-inner {
    background: #060610 !important;
    border-top: 1px solid rgba(124,92,252,0.08);
}
.site-bottom-footer-wrap .site-footer-row-container-inner {
    background: #040408 !important;
    border-top: 1px solid #1A1A2E;
}
.footer-widget-area .widget-title {
    color: var(--v-text-white) !important;
    font-size: 13px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.footer-widget-area, .footer-widget-area p, .footer-widget-area li {
    color: #555 !important;
    font-size: 13px;
}
.footer-widget-area a {
    color: #555 !important;
}
.footer-widget-area a:hover {
    color: var(--v-accent) !important;
}
.site-footer .site-footer-section p {
    color: #444 !important;
}

/* WooCommerce */
.woocommerce .products .product {
    background: var(--v-bg-mid) !important;
    border: 1px solid var(--v-border);
    border-radius: 16px;
    padding: 20px;
}
.woocommerce .products .product:hover {
    border-color: rgba(124,92,252,0.3);
}
.woocommerce .products .product .woocommerce-loop-product__title {
    color: var(--v-text-white) !important;
}
.woocommerce .products .product .price {
    color: var(--v-accent) !important;
    font-weight: 700;
}

/* Inputs */
input, textarea, select,
.woocommerce input, .woocommerce textarea, .woocommerce select {
    background: var(--v-bg-mid) !important;
    border: 1px solid var(--v-border) !important;
    color: var(--v-text-white) !important;
    border-radius: 8px !important;
}
input:focus, textarea:focus, select:focus {
    border-color: var(--v-accent) !important;
    outline: none;
}

/* Dropdown menus */
.header-navigation .header-menu-container ul ul.sub-menu {
    background: var(--v-bg-mid) !important;
    border: 1px solid var(--v-border);
}
.header-navigation .header-menu-container ul ul li.menu-item > a {
    color: var(--v-text-body) !important;
}
.header-navigation .header-menu-container ul ul li.menu-item > a:hover {
    color: var(--v-accent) !important;
    background: rgba(124,92,252,0.05) !important;
}

/* Mobile menu */
.mobile-navigation ul li > a,
.mobile-navigation ul li.menu-item-has-children > .drawer-nav-drop-wrap {
    color: var(--v-text-body) !important;
}
#mobile-drawer .drawer-inner, #mobile-drawer .drawer-content {
    background: var(--v-bg-deep) !important;
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--v-bg-deep); }
::-webkit-scrollbar-thumb { background: var(--v-bg-lighter); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--v-accent); }

/* Selection */
::selection { background: rgba(124,92,252,0.3); color: #fff; }

/* Responsive */
@media (max-width: 768px) {
    .site-branding a.brand img { max-width: 110px; }
}

/* === AJUSTES ESTÉTICOS 16 ABR 2026 — acento cian + contraste === */
/* Variables acento secundario */
:root {
    --v-accent-2: #22d3ee;
    --v-accent-2-hover: #06b6d4;
    --v-accent-2-soft: rgba(34,211,238,0.12);
}

/* Botón secundario outline → cian */
.v-btn-o {
    background: transparent !important;
    color: #22d3ee !important;
    border: 1.5px solid #22d3ee !important;
    transition: all 0.25s ease !important;
}
.v-btn-o:hover {
    background: rgba(34,211,238,0.08) !important;
    color: #67e8f9 !important;
    border-color: #67e8f9 !important;
    transform: translateY(-1px);
}

/* Badges / etiquetas */
.v-badge {
    display: inline-block;
    padding: 4px 12px;
    background: rgba(34,211,238,0.15);
    color: #22d3ee;
    border: 1px solid rgba(34,211,238,0.4);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.3px;
    text-transform: uppercase;
}
.v-badge-primary {
    background: rgba(124,92,252,0.15);
    color: #A78BFA;
    border-color: rgba(124,92,252,0.4);
}

/* Iconos de servicios con tinte cian alternativo */
.v-service-row:nth-child(even) .v-service-icon {
    background: linear-gradient(135deg, rgba(34,211,238,0.2), rgba(124,92,252,0.1)) !important;
    border-color: rgba(34,211,238,0.4) !important;
}
.v-service-row:nth-child(even) .v-service-icon svg {
    color: #22d3ee !important;
}

/* Contraste secciones: alternar fondos */
.v-bg1 { background: #0A0A16 !important; }
.v-bg2 { background: #13132B !important; }
.v-bg3 { background: #0F0F1A !important; }

/* Separadores entre secciones - línea sutil cian */
.v-section {
    position: relative;
}
.v-section + .v-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 2px;
    background: linear-gradient(90deg, transparent, #22d3ee, transparent);
    opacity: 0.5;
}

/* Jerarquía CTA: principal más grande/grueso */
.v-btn-p {
    padding: 16px 40px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    box-shadow: 0 8px 32px rgba(124,92,252,0.35) !important;
}
.v-btn-p:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 40px rgba(124,92,252,0.5) !important;
}

/* Destacar precio / números */
.v-price, .v-highlight {
    color: #22d3ee !important;
    font-weight: 700;
}

/* Trust bar con separadores cian */
.v-trust-sep { color: #22d3ee !important; opacity: 0.5; }
.v-trust-inner { color: #C8C8DC !important; }

/* Headings con acento */
.v-title em {
    color: #22d3ee !important;
    font-style: normal;
    font-weight: 700;
}

/* Enlaces inline con acento cian */
.entry-content a:not(.v-btn):not(.v-btn-p):not(.v-btn-o):not(.brand) {
    color: #22d3ee;
    text-decoration: none;
    border-bottom: 1px dotted rgba(34,211,238,0.4);
    transition: all 0.2s;
}
.entry-content a:not(.v-btn):not(.v-btn-p):not(.v-btn-o):not(.brand):hover {
    color: #67e8f9;
    border-bottom-color: #67e8f9;
}
