/* ================================================================
   Infy Theme — Dark Mode
   Se activa con la clase `.dark` en <html> (toggle JS).
   También respeta la preferencia del sistema operativo.
   ================================================================ */

/* ── Tokens en modo oscuro ────────────────────────────────────── */
html.dark,
@media (prefers-color-scheme: dark) {
  html:not(.light) {
    --color-dark:       #2ff7d0;   /* turquesa como acento principal */
    --color-dark-hover: #e8f4f8;
    --color-dark-hover-fg: #082944;
    --color-primary-hover: #e8f4f8;
    --color-primary-hover-fg: #082944;
    --color-white:      #0d1b2a;   /* fondo oscuro profundo */
    --color-gray:       #1a2f43;   /* fondo secundario */
    --color-gray-mid:   #2a4060;   /* bordes */
    --color-text:       #e8f4f8;   /* texto principal claro */
    --color-text-muted: #7aaecc;   /* texto secundario */
    --shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.3);
    --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.4);
    --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.5);
  }
}

/* ── Clase `.dark` en <html> (toggle manual) ──────────────────── */
html.dark {
  --color-dark:       #2ff7d0;
  --color-dark-hover: #e8f4f8;
  --color-dark-hover-fg: #082944;
  --color-primary-hover: #e8f4f8;
  --color-primary-hover-fg: #082944;
  --color-white:      #0d1b2a;
  --color-gray:       #1a2f43;
  --color-gray-mid:   #2a4060;
  --color-text:       #e8f4f8;
  --color-text-muted: #7aaecc;
  --shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 8px 32px rgba(0, 0, 0, 0.5);
}

/* ── Body + superficies ───────────────────────────────────────── */
html.dark body {
  background: #0d1b2a;
  color: var(--color-text);
}

html.dark .wd-page-wrapper{
  background:#0d1b2a !important;
}
html.dark .site-header {
  background: #111f30;
  border-bottom-color: #1a2f43;
}

html.dark .announcement-bar {
  background: #111f30;
  border-bottom-color: #1a2f43;
  color: var(--color-text);
}

html.dark img.wd-custom-icon,
html.dark .wd-tools-icon img,
html.dark .wd-btn-icon img {
  filter: brightness(0) invert(1);
}

html.dark img.wd-custom-icon:hover,
html.dark .wd-tools-icon img:hover,
html.dark .wd-btn-icon img:hover {
  filter: brightness(0) invert(0);
}

/* Header: no oscurecer iconos al hover (mantener turquesa visible) */
html.dark body.infy-custom-layout .whb-header .wd-tools-icon img:hover,
html.dark body.infy-custom-layout .whb-header .wd-btn-icon img:hover,
html.dark body.infy-custom-layout .whb-header img.wd-custom-icon:hover {
  filter: brightness(0) saturate(100%) invert(84%) sepia(22%) saturate(847%) hue-rotate(112deg) brightness(103%) contrast(97%) !important;
}

html.dark .innova__infy_header_distribuidor.is-infy-user-session span.infy-header-greeting .infy-header-greeting__prefix,
html.dark .innova__infy_header_distribuidor.is-infy-user-session span.infy-header-greeting .infy-header-greeting__name {
  color: #082944 !important;
}

html.dark .infy-custom-layout .whb-header .wd-header-cart .wd-tools-count{
  color:var(--color-gray) !important;
}



/* ── Navegación ───────────────────────────────────────────────── */
html.dark .site-nav__link {
  color: var(--color-text);
}

html.dark .site-nav__link:hover {
  color: var(--color-primary);
}

html.dark .header-actions__icon {
  background: #1a2f43;
}

html.dark .header-actions__icon:hover {
  background: var(--color-primary);
}

html.dark .header-actions__icon svg {
  color: var(--color-text);
}

/* Header Builder — iconos y toggle de tema */
html.dark body.infy-custom-layout .whb-header .wd-header-my-account .wd-tools-icon,
html.dark body.infy-custom-layout .whb-header .wd-header-cart .wd-tools-icon,
html.dark body.infy-custom-layout .whb-header :is(
  .wd-button-wrapper.innova__infy-change-theme > a,
  a.innova__infy-change-theme.btn
) {
  background-color: #1a2f43 !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-my-account > a:hover .wd-tools-icon,
html.dark body.infy-custom-layout .whb-header .wd-header-cart > a:hover .wd-tools-icon,
html.dark body.infy-custom-layout .whb-header :is(
  .wd-button-wrapper.innova__infy-change-theme > a,
  a.innova__infy-change-theme.btn
):hover {
  background-color: #1a2f43 !important;
  color: #2ff7d0 !important;
  box-shadow: none !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-my-account > a:hover .wd-tools-icon::before,
html.dark body.infy-custom-layout .whb-header .wd-header-cart > a:hover .wd-tools-icon::before {
  color: #2ff7d0 !important;
}

html.dark body.infy-custom-layout .whb-header .innova__infy-change-theme > a:hover .wd-btn-icon :is(.wd-icon, svg),
html.dark body.infy-custom-layout .whb-header .wd-button-wrapper.innova__infy-change-theme > a:hover .wd-btn-icon :is(.wd-icon, svg) {
  color: #2ff7d0 !important;
}

html.dark body.infy-custom-layout .whb-header .innova__infy-change-theme > a:hover .wd-btn-icon svg :is(path, circle, line, polyline),
html.dark body.infy-custom-layout .whb-header .wd-button-wrapper.innova__infy-change-theme > a:hover .wd-btn-icon svg :is(path, circle, line, polyline) {
  fill: #2ff7d0 !important;
  stroke: #2ff7d0 !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-my-account .wd-tools-icon::before,
html.dark body.infy-custom-layout .whb-header .wd-header-cart .wd-tools-icon::before,
html.dark body.infy-custom-layout .whb-header .innova__infy-change-theme .wd-btn-icon :is(.wd-icon, img, svg) {
  color: #e8f4f8 !important;
}

html.dark body.infy-custom-layout .mobile-nav .infy-theme-toggle :is(
  .wd-button-wrapper.innova__infy-change-theme > a,
  a.innova__infy-change-theme.btn
) {
  background-color: #1a2f43 !important;
}

html.dark body.infy-custom-layout .mobile-nav .infy-theme-toggle .wd-btn-icon :is(.wd-icon, img, svg) {
  color: var(--color-text);
}

html.dark body.infy-custom-layout .mobile-nav .infy-theme-toggle :is(
  .wd-button-wrapper.innova__infy-change-theme > a,
  a.innova__infy-change-theme.btn
):hover {
  background-color: var(--color-primary-hover) !important;
  color: var(--color-primary-hover-fg) !important;
}

/* ── Hero ─────────────────────────────────────────────────────── */
html.dark .hero__bg-overlay {
  background: linear-gradient(to right, transparent 48%, #0d1b2a 78%);
}

html.dark .hero__social-wd .hero__social-link .wd-icon {
  color: var(--color-gray);
}

html.dark body.infy-custom-layout .hero-slider .hero__counter,
html.dark body.infy-custom-layout .hero-slider .hero__counter-current,
html.dark body.infy-custom-layout .hero-slider .hero__counter-sep,
html.dark body.infy-custom-layout .hero-slider .hero__counter-total {
  color: var(--color-text);
}

html.dark body.infy-custom-layout .hero-slider .hero__nav .hero__btn-next {
  background: transparent !important;
  background-color: transparent !important;
  border-color: var(--color-text) !important;
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout .hero-slider .hero__nav .hero__btn-next:hover {
  background: var(--color-primary-hover) !important;
  background-color: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  color: var(--color-primary-hover-fg) !important;
}

html.dark body.infy-custom-layout .hero-slider .hero__nav .hero__arrow {
  background: #1a2f43 !important;
  background-color: #1a2f43 !important;
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout .hero-slider .hero__nav .hero__arrow:hover {
  background: var(--color-gray-mid) !important;
  background-color: var(--color-gray-mid) !important;
  color: var(--color-dark) !important;
}

html.dark .hero__heading {
  color: var(--color-gray);
}

/* Hero Producto — mantener colores modo claro en dark mode (solo este banner) */
html.dark .hero.hero-product .hero-product__heading,
html.dark .hero.hero-product .hero-product__title-line,
html.dark .hero.hero-product .hero-product__title-line--accent {
  color: #082944 !important;
}

html.dark .hero.hero-product .hero-product__desc {
  color: #082944 !important;
  background: #ebe4da !important;
}

html.dark body.infy-custom-layout .hero.hero-product .hero-product__btn {
  border-color: #082944 !important;
  color: #082944 !important;
  background: transparent !important;
}

html.dark body.infy-custom-layout .hero.hero-product .hero-product__btn:hover {
  background: #082944 !important;
  border-color: #082944 !important;
  color: #ffffff !important;
}

html.dark body.infy-custom-layout .hero.hero-product .hero__counter,
html.dark body.infy-custom-layout .hero.hero-product .hero__counter-current,
html.dark body.infy-custom-layout .hero.hero-product .hero__counter-sep,
html.dark body.infy-custom-layout .hero.hero-product .hero__counter-total {
  color: #082944 !important;
}

html.dark body.infy-custom-layout .hero.hero-product .hero__nav .hero__btn-next {
  background: transparent !important;
  background-color: transparent !important;
  border-color: #082944 !important;
  color: #082944 !important;
}

html.dark body.infy-custom-layout .hero.hero-product .hero__nav .hero__btn-next:hover {
  background: #082944 !important;
  background-color: #082944 !important;
  border-color: #082944 !important;
  color: #ffffff !important;
}

html.dark body.infy-custom-layout .hero.hero-product .hero__nav .hero__arrow {
  background: #eeeeee !important;
  background-color: #eeeeee !important;
  color: #082944 !important;
}

html.dark body.infy-custom-layout .hero.hero-product .hero__nav .hero__arrow:hover {
  background: #cccccc !important;
  background-color: #cccccc !important;
  color: #082944 !important;
}

html.dark .hero.hero-product .hero__social-wd .hero__social-link .wd-icon {
  color: #082944 !important;
}

@media (max-width: 768px) {
  html.dark .hero.hero-product .hero__social-wd .hero__social-link .wd-icon {
    color: #082944 !important;
  }
}

html.dark .infy-custom-layout .mobile-nav .close-side-widget a, html.dark .infy-custom-layout .mobile-nav .infy-mobile-nav__close a {
  background: var(--color-gray-mid);
}

html.dark .wd-action-icon:before{
  color:var(--color-text) !important;
}

/* ── Secciones ────────────────────────────────────────────────── */
html.dark .section-products,
html.dark .section-categories,
html.dark .section-about {
  background: #0d1b2a;
}

html.dark .product-card__add-full-icon img, html.dark .product-card__footer.product-card__footer--default img{
  filter: brightness(0) invert(1);
}

html.dark .section-featured {
  background: #0d1b2a;
}

html.dark .section-featured__intro-wrap {
  background: #0d1b2a;
}

html.dark body.infy-custom-layout .whb-header :is( .innova__infy_header_distribuidor, a.innova__infy_header_distribuidor, .wd-header-html.innova__infy_header_distribuidor, .wd-header-text.innova__infy_header_distribuidor, .wd-header-html .innova__infy_header_distribuidor, .wd-header-text .innova__infy_header_distribuidor, .wd-header-html a.innova__infy_header_distribuidor, .wd-button-wrapper a[href*="distribuidor"] ){
  color:#082944 !important;
}

/* Distribuidor / "Hola, Nombre" — hover: turquesa → #e8f4f8 (sin fondo azul) */
html.dark body.infy-custom-layout .whb-header :is(
  .innova__infy_header_distribuidor,
  a.innova__infy_header_distribuidor,
  .wd-header-html.innova__infy_header_distribuidor,
  .wd-header-text.innova__infy_header_distribuidor,
  .wd-header-html .innova__infy_header_distribuidor,
  .wd-header-text .innova__infy_header_distribuidor,
  .wd-header-html a.innova__infy_header_distribuidor,
  .wd-button-wrapper a[href*="distribuidor"]
):hover,
html.dark body.infy-custom-layout .whb-header .innova__infy_header_distribuidor.is-infy-user-session:hover,
html.dark body.infy-custom-layout .whb-header .innova__infy_header_distribuidor.is-infy-user-session :is(a, .infy-header-greeting-link):hover {
  background-color: #e8f4f8 !important;
  color: #082944 !important;
  opacity: 1 !important;
  box-shadow: none !important;
}

html.dark body.infy-custom-layout .whb-header .innova__infy_header_distribuidor.is-infy-user-session:hover :is(
  .infy-header-greeting,
  .infy-header-greeting__prefix,
  .infy-header-greeting__name,
  strong
),
html.dark body.infy-custom-layout .whb-header .wd-header-text .infy-header-greeting:hover,
html.dark body.infy-custom-layout .whb-header .wd-header-text .infy-header-greeting:hover :is(
  .infy-header-greeting__prefix,
  .infy-header-greeting__name,
  strong
) {
  color: #082944 !important;
}

html.dark body.infy-custom-layout .whb-header .innova__infy_header_distribuidor.is-infy-user-session,
html.dark body.infy-custom-layout .whb-header,
html.dark body.infy-custom-layout .whb-header {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout .whb-header .wd-dropdown-my-account {
  background: #111f30 !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.45) !important;
}

html.dark body.infy-custom-layout .whb-header .wd-dropdown-my-account .wd-sub-menu > li > a {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout .whb-header .wd-dropdown-my-account .wd-sub-menu > li > a:hover,
html.dark body.infy-custom-layout .whb-header .wd-dropdown-my-account .wd-sub-menu > li.is-active > a {
  background: rgba(47, 247, 208, 0.12) !important;
  color: var(--color-primary) !important;
}

html.dark .section-categories__title,
html.dark .section-products__title,
html.dark .section-featured__intro-title,
html.dark .section-about__description,
html.dark .proyectos-hero__title,
html.dark .proyectos-ejecutados__title,
html.dark .proyectos-ejecutados-card__name,
html.dark .contactanos__title,
html.dark .usuario-page-title {
  color: var(--color-text);
}

/* ── Tarjetas de producto ─────────────────────────────────────── */
html.dark .product-card:not(.product-card--home) {
  background: #111f30;
  box-shadow: var(--shadow-md);
}

html.dark .product-card:not(.product-card--home) .product-card__image-wrap {
  background: #1a2f43;
}

html.dark .section-products .product-card--home .product-card__media {
  background: #1a2f43;
}

html.dark .section-products .product-card--home .product-card__add-full {
  background: #1a2f43;
  border-color: var(--color-primary);
  color: var(--color-text);
}

/* ── Tarjetas de categoría ────────────────────────────────────── */
html.dark .section-categories .category-card__surface {
  background-color: #1a3a2a;
}

html.dark .category-card__label{
  color:var(--color-gray);
}

html.dark .infy-custom-layout .product-card__badge{
  color:var(--color-gray) !important;
}

html.dark .infy-custom-layout :is(a, button).btn--dark{
  background:var(--color-gray) !important;
  color:var(--color-primary-hover) !important;
}

html.dark .infy-custom-layout :is(a, button).btn--dark:hover{
  background:var(--color-primary-hover) !important;
  color:var(--color-dark-hover-fg) !important;
  transform: none !important;
}

html.dark .infy-marquesina :is(strong, b), html.dark .infy-marquesina__item{
  color:var(--color-text) !important;
}

html.dark .hero__play svg{
  fill:var(--color-gray) !important;
}

/* ── Botones ──────────────────────────────────────────────────── */
html.dark .btn--outline {
  color: var(--color-text);
  border-color: var(--color-gray-mid);
}

html.dark .btn--outline:hover {
  background: var(--color-primary-hover);
  color: var(--color-primary-hover-fg);
}

html.dark .btn--dark {
  background: var(--color-primary);
  color: #0d1b2a;
}

html.dark .btn--dark:hover {
  background: var(--color-primary-hover);
  color: var(--color-primary-hover-fg);
}

html.dark .btn--primary:hover {
  background: var(--color-primary-hover);
  color: var(--color-primary-hover-fg);
}

/* ── Footer ───────────────────────────────────────────────────── */
html.dark .site-footer {
  background: #0a3a2a;
}

html.dark .footer__divider {
  border-top-color: rgba(47, 247, 208, 0.2);
}

html.dark .footer__col-title,
html.dark .footer__nav-link,
html.dark .footer__copyright {
  color: #c8f5ea;
}

html.dark .footer__social-link svg{
  fill:var(--color-text) !important;
}

html.dark .footer__social-link.wd-social-icon .wd-icon {
  color: var(--color-text);
}

html.dark .wd-toolbar{
  background: #1a2f43;
}

html.dark .wd-tools-element>a{
  color:var(--color-text) !important;
}

html.dark .wd-tools-element:is(.wd-design-2,.wd-design-5) .wd-tools-count{
  background:var(--color-dark-hover) !important;
}

html.dark .woocommerce-mini-cart__empty-message.empty.title{
  color:var(--color-text) !important;
}

html.dark .infy-custom-layout :is(a, button).btn:not(.btn--dark):not(.btn--outline){
  color: #082944 !important;
}

/* ── Formularios ──────────────────────────────────────────────── */
html.dark .form-input,
html.dark .form-textarea {
  background: #1a2f43;
  border-color: #2a4060;
  color: var(--color-text);
}

html.dark .form-input:focus,
html.dark .form-textarea:focus {
  border-color: var(--color-primary);
}

html.dark .form-label {
  color: var(--color-text);
}

html.dark .search-field__input {
  background: #1a2f43;
  color: var(--color-text);
}

html.dark .order-select {
  background-color: #1a2f43;
  color: var(--color-text);
  border-color: #2a4060;
}

/* ── Panel de carrito ─────────────────────────────────────────── */
html.dark .cart-panel {
  border-color: #1a2f43;
}

html.dark .cart-tab {
  background: #111f30;
  color: var(--color-text-muted);
}

html.dark .cart-tab.is-active {
  background: #0d1b2a;
  color: var(--color-text);
  border-bottom-color: var(--color-primary);
}

html.dark .cart-tab-content {
  background: #0d1b2a;
}

html.dark .cart-points-banner,
html.dark .cart-card-item,
html.dark .cart-payment-method__inner {
  background: #111f30;
  border-color: #2a4060;
}

html.dark .cart-card-item__notice {
  background: #1a2f43;
  border-top-color: #2a4060;
}

html.dark .cart-section-title,
html.dark .cart-card-item__number,
html.dark .cart-payment-method__name,
html.dark .cart-item__name {
  color: var(--color-text);
}

html.dark .cart-installment-select {
  background-color: #1a2f43;
  color: var(--color-text);
  border-color: #2a4060;
}

html.dark .breadcrumb__item{
  color:var(--color-text) !important;
}

html.dark .breadcrumb__item a{
  color:var(--color-text-muted) !important;
}

/* ── Carrito lateral WoodMart (side cart) ─────────────────────── */
html.dark body.infy-custom-layout :is(
  .cart-widget-side,
  .wd-cart-drawer,
  .wd-cart-drawer-side,
  .widget_shopping_cart.wd-cart-drawer
) {
  background-color: #0d1b2a !important;
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .wd-heading {
  background-color: #111f30 !important;
  border-bottom-color: #2a4060 !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .wd-heading .title {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) :is(
  .close-side-widget,
  .close-side-widget::before,
  .close-side-widget i
) {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .shopping-cart-widget-body,
html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .widget_shopping_cart_content {
  background-color: #0d1b2a !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .woocommerce-mini-cart .mini_cart_item:hover {
  background-color: #1a2f43 !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .product_list_widget > li {
  border-bottom-color: #2a4060 !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) :is(
  .cart-info .wd-entities-title,
  .wd-entities-title,
  .cart-info .wd-entities-title a
) {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) :is(
  .cart-info span.quantity,
  .woocommerce-mini-cart .quantity,
  .cart-info .wd-product-detail,
  .cart-info ul.variation
) {
  color: var(--color-text-muted) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) :is(
  .woocommerce-mini-cart .amount,
  .price,
  .woocommerce-Price-amount
) {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .woocommerce-mini-cart__total {
  border-top-color: #2a4060 !important;
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .woocommerce-mini-cart__total strong {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .woocommerce-mini-cart .remove {
  color: var(--color-text-muted) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .woocommerce-mini-cart .remove:hover {
  background-color: #1a2f43 !important;
  color: var(--color-primary) !important;
  box-shadow: none !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .wd-empty-mini-cart {
  color: var(--color-text-muted) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .wd-empty-mini-cart::before {
  color: #2a4060 !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .wd-empty-mini-cart .btn {
  background-color: var(--color-primary) !important;
  color: #082944 !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .wd-empty-mini-cart .btn:hover {
  background-color: var(--color-primary-hover) !important;
  color: var(--color-primary-hover-fg) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .shopping-cart-widget-footer {
  background-color: #0d1b2a !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .wd-free-progress-bar {
  color: var(--color-text-muted) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .wd-free-progress-bar .progress-bar {
  background-color: #1a2f43 !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .woocommerce-mini-cart__total .tax_label {
  color: var(--color-text-muted) !important;
}

html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .cart-info div.quantity :is(
  input,
  .minus,
  .plus
) {
  background-color: #1a2f43 !important;
  color: var(--color-text) !important;
  border-color: #2a4060 !important;
}

html.dark body.infy-custom-layout .widget_shopping_cart .buttons .button,
html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .widget_shopping_cart_content .buttons .button {
  background-color: var(--color-primary) !important;
  color: #0d1b2a !important;
  border-color: transparent !important;
}

html.dark body.infy-custom-layout .widget_shopping_cart .buttons .button:hover,
html.dark body.infy-custom-layout :is(.cart-widget-side, .wd-cart-drawer) .widget_shopping_cart_content .buttons .button:hover {
  background-color: var(--color-primary-hover) !important;
  color: var(--color-primary-hover-fg) !important;
  transform: none !important;
}

html.dark body.infy-custom-layout .wd-close-side.wd-close-side-opened {
  background-color: rgba(0, 0, 0, 0.58) !important;
}

/* ── Usuario / Sidebar ────────────────────────────────────────── */
html.dark .usuario-nav__link {
  border-color: #2a4060;
  color: var(--color-text);
}

html.dark .usuario-nav__link:hover,
html.dark .usuario-nav__link.is-active {
  background: var(--color-primary);
  color: #0d1b2a;
  border-color: var(--color-primary);
}

html.dark .usuario-sidebar__divider {
  border-top-color: #2a4060;
}

html.dark .usuario-greeting,
html.dark .usuario-greeting strong {
  color: var(--color-text);
}

/* ── FAQ ──────────────────────────────────────────────────────── */
html.dark .faq-item {
  border-color: #2a4060;
}

html.dark .faq-item__question {
  color: var(--color-text);
}

html.dark .faq-item__body {
  color: var(--color-text-muted);
}

/* ── Breadcrumb ───────────────────────────────────────────────── */
html.dark .breadcrumb {
  color: var(--color-text-muted);
}

/* ── Producto individual ──────────────────────────────────────── */
html.dark .producto-info__name,
html.dark .producto-info__tagline {
  color: var(--color-text);
}

html.dark .producto-colors__label {
  color: rgba(232, 244, 248, 0.55);
}

html.dark body.infy-custom-layout .page-producto .producto-colors__options .producto-attr-pill {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.14);
  color: var(--color-text);
}

html.dark body.infy-custom-layout .page-producto .producto-colors__options .producto-attr-pill:hover:not(.is-active) {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.22);
}

html.dark body.infy-custom-layout .page-producto .producto-colors__options .producto-attr-pill.is-active {
  background: var(--color-dark);
  border-color: rgba(47, 247, 208, 0.35);
  color: #ffffff;
}

html.dark body.infy-custom-layout .page-producto .producto-colors__options .producto-attr-pill--color.is-active {
  background: var(--swatch-color, var(--color-primary));
  border-color: var(--swatch-color, var(--color-primary));
  color: #082944;
}

html.dark .producto-info__description,
html.dark .producto-info__sku {
  color: var(--color-text-muted);
}

html.dark .producto-info__description h2,
html.dark .producto-info__description h3,
html.dark .producto-info__description h4,
html.dark .producto-info__description strong {
  color: var(--color-text);
}

html.dark .producto-pricing__price {
  color: var(--color-text);
}

html.dark .quantity-selector {
  border-color: #2a4060;
}

html.dark .quantity-selector__btn {
  color: var(--color-gray);
}

html.dark body.infy-custom-layout .page-producto .quantity-selector__btn:hover {
  background: #e8f4f8;
  border-color: #e8f4f8;
  color: #082944;
}

html.dark .quantity-selector__btn:hover {
  background: var(--color-text-muted);
}

html.dark .quantity-selector__input {
  background: #0d1b2a;
  border-color: #2a4060;
  color: var(--color-text);
}

html.dark .producto-tabs__tab {
  color: var(--color-text-muted);
}

html.dark .producto-tabs__tab.is-active,
html.dark .producto-tabs__tab:hover {
  color: var(--color-text);
  border-bottom-color: var(--color-primary);
}

html.dark .producto-tabs {
  border-bottom-color: #2a4060;
}

html.dark .page-producto .producto-tabs__mobile {
  --infy-control-bg: #111f30;
  --infy-control-border: #2ff7d0;
  --infy-control-fg: #ffffff;
  --infy-control-icon: #2ff7d0;
  --infy-control-menu-bg: #1a2f43;
  --infy-control-menu-border: #2a4060;
  --infy-control-menu-hover: rgba(47, 247, 208, 0.16);
  --infy-control-menu-selected: rgba(47, 247, 208, 0.12);
  --infy-control-menu-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
}

html.dark body.infy-custom-layout .page-producto .producto-tabs__mobile .infy-control__option {
  color: var(--color-text);
}

html.dark body.infy-custom-layout .page-producto .producto-tabs__mobile .infy-control__option.is-selected {
  color: #ffffff;
}

/* ── Sección tag ──────────────────────────────────────────────── */
html.dark .section-tag {
  border-color: #2a4060;
  color: var(--color-text-muted);
}

/* ── Ícono de dark mode cambia a sol cuando está activo ───────── */
html.dark [data-dark-toggle] svg path,
html.dark .innova__infy-change-theme [data-dark-toggle] svg path,
html.dark .infy-theme-toggle svg path {
  d: path("M12 3v1m0 16v1m9-9h-1M4 12H3m15.364-6.364l-.707.707M6.343 17.657l-.707.707M17.657 17.657l-.707-.707M6.343 6.343l-.707-.707M12 5a7 7 0 100 14A7 7 0 0012 5z");
}

/* ================================================================
   FIX: aplicar tokens dark sobre el layout Infy.
   (mayor especificidad que body.infy-custom-layout de woodmart-overrides)
   ================================================================ */
html.dark body.infy-custom-layout {
  --color-dark:       #2ff7d0;
  --color-dark-hover: #e8f4f8;
  --color-dark-hover-fg: #082944;
  --color-primary-hover: #e8f4f8;
  --color-primary-hover-fg: #082944;
  --color-white:      #0d1b2a;
  --color-gray:       #1a2f43;
  --color-gray-mid:   #2a4060;
  --color-text:       #e8f4f8;
  --color-text-muted: #7aaecc;
}

/* ── Catálogo: controles (colores fijos) ─────────────────────── */
html.dark body.infy-custom-layout .page-productos .search-field__input {
  background: #111f30 !important;
  color: var(--color-text);
  border-color: #2a4060 !important;
}

html.dark body.infy-custom-layout .order-dropdown__toggle,
html.dark body.infy-custom-layout .order-dropdown__menu {
  background: #111f30 !important;
  color: var(--color-text);
  border-color: #2a4060 !important;
}
html.dark .order-dropdown__opt.is-active{
  color:var(--color-gray) !important;
}
html.dark body.infy-custom-layout .order-dropdown__opt { color: var(--color-text); }
html.dark body.infy-custom-layout .order-dropdown__opt:hover { background: var(--color-gray-mid) !important; }
html.dark body.infy-custom-layout .order-dropdown__icon,
html.dark body.infy-custom-layout .order-dropdown__chev { color: var(--color-text); }

html.dark body.infy-custom-layout .grid-view-toggle {
  background: #111f30 !important;
  border-color: #2a4060 !important;
}

html.dark body.infy-custom-layout .grid-view-toggle__btn {
  color: var(--color-text-muted);
}

html.dark body.infy-custom-layout .grid-view-toggle__btn:hover {
  color: var(--color-text);
  background: rgba(47, 247, 208, 0.08);
}

html.dark body.infy-custom-layout .grid-view-toggle__btn.is-active {
  background: var(--color-primary);
  color: var(--color-dark);
}

html.dark .search-results { background: #111f30; border-color: #2a4060; }
html.dark .search-results__name { color: var(--color-text); }
html.dark .search-results__item:hover { background: #1a2f43; }
html.dark .search-results__thumb { background: #1a2f43; }

html.dark body.infy-custom-layout .products-pagination__btn {
  background: #111f30;
  color: var(--color-text);
  border-color: #2a4060;
}
html.dark body.infy-custom-layout .products-pagination__btn.is-active {
  background: var(--color-primary);
  color: #0d1b2a;
  border-color: var(--color-primary);
}

html.dark .products-listing-grid .product-card--home .product-card__add-full{
  color: #0d1b2a;
  font-size: var(--fs-base);
}

html.dark .products-listing-grid .product-card--home .product-card__cart-icon img{
  filter: brightness(0) invert(1);
}

html.dark nav.page-productos__breadcrumb.breadcrumb a {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout .products-sidebar {
  background: #111f30;
  border-color: #2a4060;
}

html.dark body.infy-custom-layout .products-sidebar__count,
html.dark body.infy-custom-layout .products-filter-group__title {
  color: var(--color-text);
}

html.dark body.infy-custom-layout .products-filter-group + .products-filter-group {
  border-top-color: #2a4060;
}

html.dark body.infy-custom-layout .tag-filter__label {
  background: #111f30 !important;
  border-color: #3d5a73 !important;
  color: #e8f4f8 !important;
}

html.dark body.infy-custom-layout .tag-filter:hover .tag-filter__label {
  background: #1a2f43 !important;
  border-color: var(--color-primary) !important;
  color: #ffffff !important;
}

html.dark body.infy-custom-layout .tag-filter__input:checked + .tag-filter__label {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #082944 !important;
}

html.dark body.infy-custom-layout .products-mobile-filters__btn {
  background: #1a2f43;
  color: var(--color-text);
}

html.dark body.infy-custom-layout .products-mobile-filters__btn.is-active {
  background: var(--color-primary);
  color: #082944;
}

html.dark body.infy-custom-layout .products-mobile-filters__chev {
  color: currentColor;
}

html.dark body.infy-custom-layout .catalog-filter-sheet__panel {
  background: #111f30;
}

html.dark body.infy-custom-layout .catalog-filter-sheet__header,
html.dark body.infy-custom-layout .catalog-filter-sheet__footer {
  border-color: #2a4060;
  background: #111f30;
}

html.dark body.infy-custom-layout .catalog-filter-sheet__title,
html.dark body.infy-custom-layout .catalog-filter-sheet__clear {
  color: var(--color-text);
}

html.dark body.infy-custom-layout .catalog-filter-sheet__close {
  background: #1a2f43;
  color: var(--color-text);
}

html.dark body.infy-custom-layout .catalog-filter-sheet__close:hover {
  background: #243b52;
}

html.dark body.infy-custom-layout .catalog-filter-sheet__apply {
  background: var(--color-primary);
  color: #082944;
}

html.dark body.infy-custom-layout .catalog-filter-sheet__body .category-filter,
html.dark body.infy-custom-layout .catalog-filter-sheet__body .tag-filter {
  border-bottom-color: #2a4060;
}

html.dark body.infy-custom-layout .catalog-filter-sheet__body .category-filter__label,
html.dark body.infy-custom-layout .catalog-filter-sheet__body .tag-filter__label {
  color: var(--color-text);
}

html.dark body.infy-custom-layout .catalog-filter-sheet__body .tag-filter__label {
  background: transparent !important;
  border: none !important;
}

html.dark body.infy-custom-layout .category-filter__label {
  color: var(--color-text);
}

html.dark body.infy-custom-layout .category-filter:hover .category-filter__label {
  color: var(--color-primary);
}

/* Fondo gris de la imagen en las cards del catálogo */
html.dark .products-listing-grid .product-card--home .product-card__media {
  background: #1a2f43;
}

/* ── Marquesina ──────────────────────────────────────────────── */
html.dark .infy-marquesina {
  background: #111f30;
  border-bottom-color: #1a2f43;
}

/* ── Modal Hazte Distribuidor: fondo navy fijo (inputs → distribuidor-modal.css) ─ */
html.dark .distribuidor-modal__dialog,
html.dark .distribuidor-form {
  background: #082944 !important;
}

/* ── Carrito tipo orden ──────────────────────────────────────── */
html.dark .cart-order__card {
  background: #111f30;
  border-color: #2a4060;
}
html.dark .cart-order-item { border-top-color: #2a4060; }
html.dark .cart-order-item__name,
html.dark .cart-order-item__price,
html.dark .cart-order__ref-number,
html.dark .cart-order__ref-label,
html.dark .cart-order__date { color: var(--color-text); }
html.dark .cart-order-item__media { background: #1a2f43; }
html.dark .cart-order-item__qty .quantity-selector__input,
html.dark .cart-order-item__qty .quantity-selector__btn {
  background: #0d1b2a;
  color: var(--color-text);
  border-color: #2a4060;
}

html.dark body.infy-custom-layout .page-usuario .cart-order__footer {
  background: #082944 !important;
}

html.dark body.infy-custom-layout .page-usuario .cart-order__buy.btn--primary,
html.dark body.infy-custom-layout .page-usuario .cart-order-item__remove.btn--primary {
  color: #082944 !important;
}

html.dark body.infy-custom-layout .page-usuario .cart-order__buy.btn--chevron::before {
  color: #082944 !important;
}

/* ── Cuenta / contenido WooCommerce ──────────────────────────── */
html.dark .usuario-card {
  background: #111f30;
  border-color: #2a4060;
}
html.dark .usuario-card h2,
html.dark .usuario-card h3,
html.dark .usuario-card p,
html.dark .usuario-topbar .usuario-greeting,
html.dark .usuario-topbar .usuario-greeting strong { color: var(--color-text); }

/* ── Páginas legales ─────────────────────────────────────────── */
html.dark .legal-page__title,
html.dark .legal-page__content h2,
html.dark .legal-page__content h3 { color: var(--color-text); }
html.dark .legal-page__content,
html.dark .legal-page__content p,
html.dark .legal-page__content li { color: var(--color-text); }

/* ── Tarjetas de descarga (manuales) ─────────────────────────── */
html.dark .download-card__link {
  background: #111f30;
  border-color: #2a4060;
}
html.dark .download-card__name { color: var(--color-text); }

/* ── Contacto / CF7 ──────────────────────────────────────────── */
html.dark .contactanos__form-col .wpcf7-form input.wpcf7-form-control:not([type="submit"]),
html.dark .contactanos__form-col .wpcf7-form textarea.wpcf7-form-control,
html.dark .contactanos__form-col .wpcf7-form select.wpcf7-form-control {
  background: #1a2f43;
  border-color: #2a4060;
  color: var(--color-text);
}

/* ── Checkout WooCommerce (/finalizar-compra) ───────────────────── */
html.dark body.infy-custom-layout.woocommerce-checkout form.woocommerce-checkout {
  --wd-form-bg: #1a2f43;
  --wd-form-color: #e8f4f8;
  --wd-form-brd-color: #2a4060;
  --wd-form-brd-color-focus: var(--color-primary);
  --wd-form-placeholder-color: #7aaecc;
}

html.dark body.infy-custom-layout.woocommerce-checkout form.woocommerce-checkout :is(
  input.input-text,
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="password"],
  input[type="number"],
  select,
  textarea,
  .select2-container--default .select2-selection--single
) {
  background-color: #1a2f43 !important;
  border-color: #2a4060 !important;
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout form.woocommerce-checkout :is(
  input.input-text,
  select,
  textarea
)::placeholder {
  color: #7aaecc !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout form.woocommerce-checkout :is(
  input.input-text:focus,
  select:focus,
  textarea:focus
) {
  border-color: var(--color-primary) !important;
  outline: none;
  box-shadow: 0 0 0 1px var(--color-primary);
}

html.dark body.infy-custom-layout.woocommerce-checkout form.woocommerce-checkout label,
html.dark body.infy-custom-layout.woocommerce-checkout #customer_details h3,
html.dark body.infy-custom-layout.woocommerce-checkout .woocommerce-billing-fields h3,
html.dark body.infy-custom-layout.woocommerce-checkout .woocommerce-shipping-fields h3,
html.dark body.infy-custom-layout.woocommerce-checkout .woocommerce-additional-fields h3 {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .select2-dropdown {
  background-color: #111f30 !important;
  border-color: #2a4060 !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .select2-container--default .select2-results__option {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: #1a2f43 !important;
  color: var(--color-primary) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout :is(
  .woocommerce-form-coupon-toggle,
  .woocommerce-form-login-toggle
) > div {
  color: var(--color-gray) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout :is(
  .woocommerce-form-coupon,
  .woocommerce-form-login.hidden-form
) {
  background-color: #111f30 !important;
  border-color: #2a4060 !important;
  color: var(--color-text) !important;
}

/* Recibo «Tu pedido» — modo oscuro */
html.dark body.infy-custom-layout.woocommerce-checkout :is(
  .checkout-order-review,
  #order_review
) {
  background-color: #111f30 !important;
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout :is(
  .checkout-order-review,
  #order_review
)::before,
html.dark body.infy-custom-layout.woocommerce-checkout :is(
  .checkout-order-review,
  #order_review
)::after {
  background-image: radial-gradient(farthest-side, transparent 6px, #111f30 0) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout #order_review_heading {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .checkout-order-review .wd-table-wrapper {
  background-color: #1a2f43 !important;
  box-shadow: none !important;
  border: 1px solid #2a4060;
}

html.dark body.infy-custom-layout.woocommerce-checkout :is(
  .woocommerce-checkout-review-order-table,
  .woocommerce-checkout-review-order-table th,
  .woocommerce-checkout-review-order-table td,
  .woocommerce-checkout-review-order-table .product-name,
  .woocommerce-checkout-review-order-table .product-total,
  .cart-subtotal,
  .order-total,
  .woocommerce-shipping-totals,
  .woocommerce-checkout-review-order-table tfoot th,
  .woocommerce-checkout-review-order-table tfoot td
) {
  color: var(--color-text) !important;
  border-color: #2a4060 !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
  color: var(--color-text-muted) !important;
  border-bottom-color: #2a4060 !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .woocommerce-checkout-review-order-table :is(
  .woocommerce-Price-amount,
  .amount,
  bdi
) {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item {
  border-top-color: #2a4060 !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout #payment {
  background: #1a2f43 !important;
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout #payment ul.payment_methods {
  border-color: #2a4060 !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout #payment ul.payment_methods li {
  color: var(--color-text) !important;
  border-bottom-color: #2a4060 !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout #payment ul.payment_methods li label {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout #payment .payment_box {
  background: #0d1b2a !important;
  color: var(--color-text-muted) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout :is(
  .woocommerce-terms-and-conditions-wrapper,
  .woocommerce-privacy-policy-text
) {
  color: var(--color-text-muted) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout :is(
  .woocommerce-terms-and-conditions-wrapper a,
  .woocommerce-privacy-policy-text a
) {
  color: var(--color-primary) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout #payment .woocommerce-info {
  background-color: rgba(47, 247, 208, 0.1) !important;
  color: var(--color-text) !important;
  border-top-color: var(--color-primary) !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout #place_order {
  color: #0d1b2a !important;
}

html.dark body.infy-custom-layout.woocommerce-checkout .wd-checkout-prod-title,
html.dark body.infy-custom-layout.woocommerce-checkout .wd-checkout-prod-total {
  color: var(--color-text) !important;
}

/* ── FAQ: pregunta e ícono ───────────────────────────────────── */
html.dark .faq-item__icon { background: #1a2f43; color: var(--color-text-muted); }

/* ================================================================
   FIX 2: fondos blancos de WoodMart + footer navy + texto legible
   ================================================================ */

/* Fondo oscuro real en TODOS los contenedores de WoodMart */
html.dark body.infy-custom-layout,
html.dark .main-page-wrapper,
html.dark .wd-content-layout,
html.dark .content-area,
html.dark .site-content,
html.dark #wrapper,
html.dark #main,
html.dark .wd-page-content,
html.dark .row.content-page-wrapper {
  background-color: #0d1b2a !important;
  color: var(--color-text);
}

/* Footer: navy oscuro (no verdoso) */
html.dark .site-footer,
html.dark body.infy-custom-layout .site-footer {
  background: #0b1a2b !important;
  border-top: 1px solid #1a2f43;
}

html.dark .site-footer,
html.dark .footer__col-title,
html.dark .footer__nav-link,
html.dark .footer__copyright,
html.dark .footer__tagline,
html.dark .footer__text {
  color: #e8f4f8 !important;
}

html.dark .footer__nav-link:hover {
  color: var(--color-primary) !important;
}

html.dark .footer__divider,
html.dark .site-footer hr {
  border-top-color: rgba(47, 247, 208, 0.2) !important;
}

/* ── Texto más legible / llamativo en modo oscuro ────────────── */
html.dark body.infy-custom-layout {
  color: #eef6fb;
}

/* Encabezados en blanco puro para mayor contraste */
html.dark h2,
html.dark h3,
html.dark .section-categories__title,
html.dark .section-products__title,
html.dark .section-featured__intro-title,
html.dark .usuario-page-title,
html.dark .contactanos__title,
html.dark .producto-info__name,
html.dark .cart-order-item__name,
html.dark .legal-page__title {
  color: #ffffff !important;
}

html.dark .producto-info__description p{
  color:var(--color-text) !important;
}

html.dark .producto-tabs__content:not(#tab-manuales),
html.dark .producto-tabs__content:not(#tab-manuales) :where(p, li, td, th, dd, dt, blockquote, figcaption, h1, h2, h3, h4, h5, h6) {
  color: var(--color-text) !important;
}

html.dark body.infy-custom-layout .page-producto .producto-tabs__faq .faq-item__question,
html.dark body.infy-custom-layout .page-producto .producto-tabs__faq .faq-item__body,
html.dark body.infy-custom-layout .page-producto .producto-tabs__faq .faq-item__body p {
  color: var(--color-text) !important;
}

html.dark .featured-banner__product-name{
  color:var(--color-gray) !important;
}
/* Enlaces de contenido en turquesa (llamativos) */
html.dark .legal-page__content a,
html.dark .section-about__description a,
html.dark .usuario-card a:not(.btn):not(.button) {
  color: var(--color-primary) !important;
}

/* Párrafos / texto secundario con buen contraste */
html.dark .producto-info__description {
  color: var(--color-gray);
}

html.dark .featured-banner__lead{
  color:var(--color-text) !important;
}

html.dark .producto-gallery__zoom-hint{
  color:var(--color-gray) !important;
}

html.dark .upsell-card__name{
  color:var(--color-gray) !important;
}

html.dark .upsell-card__thumb-link {
  background: rgba(8, 41, 68, 0.28);
}

html.dark .upsell-card__thumb-link:hover {
  background: rgba(8, 41, 68, 0.42);
}

html.dark .upsell-card__price .woocommerce-Price-amount.amount{
  color:var(--color-gray) !important;
}

/* ================================================================
   FIX 3: Header de WoodMart + zona antes del footer en oscuro
   ================================================================ */

/* Header (Header Builder de WoodMart) */
html.dark .whb-header,
html.dark .whb-header .whb-row,
html.dark .whb-main-header,
html.dark .whb-general-header .whb-row,
html.dark .whb-header.whb-overcontent,
html.dark .whb-overcontent:not(.whb-sticked) .whb-row:not(.whb-with-bg),
html.dark .whb-clone .whb-row,
html.dark .whb-sticky-row {
  background-color: #0b1623 !important;
  border-bottom-color: #1a2f43 !important;
}

/* Enlaces y texto del menú del header */
html.dark .whb-header a,
html.dark .whb-header .wd-nav > li > a,
html.dark .whb-header .item-level-0 > a,
html.dark .whb-header .nav-link-text {
  color: #e8f4f8 !important;
}

html.dark .whb-header .wd-nav > li > a:hover,
html.dark .whb-header .item-level-0:hover > a {
  color: var(--color-primary) !important;
}

/* Submenú principal — desktop oscuro */
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li > .wd-dropdown-menu,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu.wd-design-default .wd-dropdown {
  background: #111f30 !important;
  border-color: #2a4060 !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.35) !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu .wd-sub-menu > li > a,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu .sub-sub-menu > li > a {
  color: #e8f4f8 !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu .wd-sub-menu > li > a:hover,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu .sub-sub-menu > li > a:hover,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu .wd-sub-menu > li.current-menu-item > a,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu .sub-sub-menu > li.current-menu-item > a {
  background: rgba(47, 247, 208, 0.12) !important;
  color: var(--color-primary) !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li:is(.menu-item-has-children, .wd-has-children) > a::after {
  color: rgba(232, 244, 248, 0.55);
}

/* Mega menú full-width — dark */
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li.infy-mega-menu > .wd-dropdown-menu,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li > .wd-dropdown-menu.wd-design-full-width {
  background: rgba(17, 31, 48, 0.88) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.4) !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li.infy-mega-menu > .wd-dropdown-menu .wd-sub-menu > li > a,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu.wd-design-full-width .wd-sub-menu > li > a {
  color: #e8f4f8 !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li.infy-mega-menu > .wd-dropdown-menu .wd-sub-menu > li > a :is(.wd-nav-img, img.wd-nav-img, picture.wd-nav-img img, svg.wd-nav-img),
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu.wd-design-full-width .wd-sub-menu > li > a :is(.wd-nav-img, img.wd-nav-img, picture.wd-nav-img img, svg.wd-nav-img) {
  filter: brightness(0) invert(1);
}

html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li.infy-mega-menu > .wd-dropdown-menu .wd-sub-menu > li > a:hover,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li.infy-mega-menu > .wd-dropdown-menu .wd-sub-menu > li.current-menu-item > a,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu.wd-design-full-width .wd-sub-menu > li > a:hover,
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu.wd-design-full-width .wd-sub-menu > li.current-menu-item > a {
  background: rgba(47, 247, 208, 0.1) !important;
  color: var(--color-primary) !important;
}

html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li.infy-mega-menu > .wd-dropdown-menu .wd-sub-menu > li > a:hover :is(.wd-nav-img, img.wd-nav-img, picture.wd-nav-img img, svg.wd-nav-img),
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-nav > li.infy-mega-menu > .wd-dropdown-menu .wd-sub-menu > li.current-menu-item > a :is(.wd-nav-img, img.wd-nav-img, picture.wd-nav-img img, svg.wd-nav-img),
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu.wd-design-full-width .wd-sub-menu > li > a:hover :is(.wd-nav-img, img.wd-nav-img, picture.wd-nav-img img, svg.wd-nav-img),
html.dark body.infy-custom-layout .whb-header .wd-header-main-nav .wd-dropdown-menu.wd-design-full-width .wd-sub-menu > li.current-menu-item > a :is(.wd-nav-img, img.wd-nav-img, picture.wd-nav-img img, svg.wd-nav-img) {
  filter: brightness(0) saturate(100%) invert(84%) sepia(22%) saturate(847%) hue-rotate(112deg) brightness(103%) contrast(97%);
}

/* Logo: si es PNG/SVG oscuro, lo aclaramos para que se vea */
html.dark .whb-header .wd-logo img,
html.dark .infy-mobile-header__logo-img {
  filter: brightness(0) invert(1);
}

/* ── Sección destacado: intro superior dark + banner navy ────── */
html.dark .section-featured__intro-wrap { background: #0d1b2a !important; }
html.dark .section-featured__intro-title { color: #ffffff !important; }
html.dark .section-featured { background: #0d1b2a !important; }

/* Banner navy del destacado se mantiene oscuro (no turquesa) */
html.dark .featured-banner:not(.featured-banner--has-bg) { background: #0b1623 !important; }
html.dark .featured-banner--has-bg { background-color: #0b1623 !important; }
html.dark .featured-banner__main { background: transparent !important; }
html.dark .featured-banner__product-name { color: #0d1b2a; }
html.dark .featured-banner__product-card { background: #e9eef2; }
html.dark .featured-banner__label { color: #ffffff !important; }
html.dark .infy-custom-layout :is(a, button).btn--primary{
  color:var(--color-gray) !important;
}

html.dark .infy-custom-layout :is(a, button).btn--primary:hover{
  background: var(--color-primary-hover) !important;
  color: var(--color-primary-hover-fg) !important;
  transform: none !important;
}

/* Showcase inferior — modo oscuro */
html.dark .featured-showcase {
  background: #0d1b2a !important;
}

html.dark .featured-showcase__title,
html.dark .featured-showcase__label {
  color: var(--color-text) !important;
}

html.dark .featured-showcase__icon {
  color: var(--color-text) !important;
}

html.dark .featured-showcase__icon svg {
  color: var(--color-text);
}

html.dark .featured-showcase__icon svg [stroke]:not([stroke="none"]) {
  stroke: currentColor !important;
}

html.dark .featured-showcase__icon svg [fill]:not([fill="none"]) {
  fill: currentColor !important;
}

html.dark .featured-showcase__icon-img {
  filter: brightness(0) invert(1);
}

html.dark .featured-showcase__ring-svg circle {
  stroke: #2a4060;
}

/* Legacy panorama */
html.dark .section-featured__panorama,
html.dark .section-featured__panorama-link {
  background: transparent;
}

html.dark .section-featured__panorama-img {
  filter: brightness(0.82) saturate(0.9);
}

html.dark .section-featured__panorama-link:hover .section-featured__panorama-img,
html.dark .section-featured__panorama-link:focus-visible .section-featured__panorama-img {
  filter: brightness(0.62) saturate(0.95);
  box-shadow: inset 0 0 0 100vmax rgba(0, 0, 0, 0.38);
}

/* Nosotros */
html.dark .section-about { background: #0d1b2a !important; }
html.dark .section-about__tagline { color: var(--color-primary); }


html.dark .section-about__logo-tag .section-about__logo-img, html.dark .section-about__logo-tag img, html.dark .site-logo__img.footer__logo{
  filter: brightness(0) invert(1);
}

html.dark .footer__libro-reclamaciones-logo {
  filter: brightness(0) invert(1);
}

html.dark .proyectos-ally__text{
  color:var(--color-text) !important;
}

html.dark .contactanos__form-col .wpcf7-form label{
  color:var(--color-text) !important;
}

html.dark body.infy-custom-layout .contactanos__form-col .wpcf7-form input.wpcf7-submit, body.infy-custom-layout .contactanos__form-col .wpcf7-form button[type="submit"]{
  color:var(--color-gray) !important;
}

html.dark .faq-item.is-open .faq-item__icon {
  color:var(--color-gray) !important;
}

html.dark .proyectos-hero__subtitle{
  color:var(--color-text) !important;
}

html.dark .proyectos-ejecutados-card {
  background: #111f30;
  border-color: #2a4060;
  box-shadow: var(--shadow-md);
}

html.dark .proyectos-ejecutados-card--featured {
  border-color: var(--color-primary);
}

html.dark .proyectos-ejecutados__intro,
html.dark .proyectos-ejecutados-card__location {
  color: #b8c9d4;
}

html.dark .proyectos-ejecutados-card__badge {
  background: var(--color-primary);
  color: #082944;
}

html.dark .proyectos-ejecutados__nav-dot {
  background: #4a6070 !important;
}

html.dark .proyectos-ejecutados__nav-dot.is-active {
  background: var(--color-primary) !important;
}

html.dark .proyectos-ejecutados__nav-dot:hover:not(.is-active) {
  background: #6a8494 !important;
}

html.dark .producto-upsell__nav-dot {
  background: #4a6070 !important;
}

html.dark .producto-upsell__nav-dot.is-active {
  background: var(--color-primary) !important;
}

html.dark .producto-upsell__nav-dot:hover:not(.is-active) {
  background: #6a8494 !important;
}

html.dark body.infy-custom-layout .page-producto .producto-upsell__arrow,
html.dark body.infy-custom-layout button.producto-upsell__arrow {
  background: #1a2f43 !important;
  border-color: #2ff7d0 !important;
  color: #2ff7d0 !important;
}

html.dark body.infy-custom-layout .page-producto .producto-upsell__arrow:hover,
html.dark body.infy-custom-layout .page-producto .producto-upsell__arrow:focus-visible,
html.dark body.infy-custom-layout button.producto-upsell__arrow:hover,
html.dark body.infy-custom-layout button.producto-upsell__arrow:focus-visible {
  background: #2ff7d0 !important;
  border-color: #2ff7d0 !important;
  color: #082944 !important;
}

html.dark .producto-pricing__original,
html.dark .producto-pricing__original .woocommerce-Price-amount,
html.dark .producto-pricing__original .amount,
html.dark [data-infy-price-display] del,
html.dark [data-infy-price-display] del .woocommerce-Price-amount,
html.dark [data-infy-price-display] del .amount {
  color: var(--color-text-muted);
}

/* ── Únete a INFY — modo oscuro ─────────────────────────────── */
html.dark .page-unete .unete-hero {
  background:
    radial-gradient(ellipse 90% 80% at 50% 20%, rgba(47, 247, 208, 0.1) 0%, transparent 58%),
    radial-gradient(ellipse 140% 100% at 50% 100%, #0f2a42 0%, #082944 48%, #051525 100%);
}

html.dark .page-unete .unete-hero__title,
html.dark .page-unete .unete-hero__intro,
html.dark .page-unete .unete-hero__badge {
  color: #ffffff;
}

html.dark .page-unete .unete-hero__highlight {
  color: #2ff7d0;
}

html.dark .page-unete .unete-hero__logo-img {
  filter: brightness(0) invert(1);
}

html.dark .page-unete .unete-benefits {
  background: #0d1b2a;
}

html.dark .page-unete .unete-section-header__title,
html.dark .page-unete .faq-section__title,
html.dark .page-unete .faq-section__title strong {
  color: var(--color-text);
}

html.dark .page-unete .unete-section-header__intro,
html.dark .page-unete .unete-faq__intro {
  color: var(--color-text-muted);
}

html.dark .page-unete .unete-benefit-card {
  background: #1a2f43;
  border-color: #2a4060;
  box-shadow: none;
}

html.dark .page-unete .unete-benefit-card__title {
  color: var(--color-text);
}

html.dark .page-unete .unete-benefit-card__text {
  color: var(--color-text-muted);
}

html.dark .page-unete .unete-benefit-card__icon {
  background: rgba(47, 247, 208, 0.14);
  color: #2ff7d0;
}

html.dark .page-unete .unete-steps {
  background:
    radial-gradient(ellipse 80% 60% at 50% 0%, rgba(47, 247, 208, 0.08) 0%, transparent 60%),
    #082944;
}

html.dark .page-unete .unete-section-header--light .unete-section-header__title,
html.dark .page-unete .unete-section-header--light .unete-section-header__intro,
html.dark .page-unete .unete-step-card__title,
html.dark .page-unete .unete-step-card__text {
  color: #ffffff;
}

html.dark .page-unete .unete-section-tag--light,
html.dark .page-unete .unete-step-card__num {
  color: #2ff7d0;
}

html.dark .page-unete .unete-step-card {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.14);
}

html.dark .page-unete .unete-faq {
  background: #0d1b2a;
}

html.dark .page-unete .faq-item {
  border-color: #2a4060;
  background: #1a2f43;
}

html.dark .page-unete .faq-item.is-open {
  border-color: #2ff7d0;
}

html.dark .page-unete .faq-item__question {
  color: var(--color-text);
}

html.dark .page-unete .faq-item__body {
  color: var(--color-text-muted);
}

html.dark .page-unete .faq-item__icon {
  background: #2a4060;
  color: var(--color-text-muted);
}

html.dark .page-unete .faq-item.is-open .faq-item__icon {
  background: #2ff7d0;
  color: #082944;
}

html.dark .contactanos__form-col .wpcf7-form input.wpcf7-form-control:not([type="submit"]):not([type="checkbox"]):not([type="radio"]), .contactanos__form-col .wpcf7-form select.wpcf7-form-control{
  background: #1a2f43;
}

html.dark .woocommerce-info a.showcoupon{
  color: var(--color-gray-mid) !important;
}

html.dark body.infy-custom-layout .woocommerce :is(a.button, button.button, input.button){
  color: var(--color-gray) !important;
}

html.dark body.infy-custom-layout .infy-account-dropdown__avatar{
background: var(--color-text-muted) !important;
color: var(--color-gray) !important;
}

html.dark .usuario-topbar a:hover{
  color: var(--color-gray) !important;
}

html.dark .infy-custom-layout :is(a, button).btn--outline:hover {
  color: var(--color-gray) !important;
}