/* Pro Pools Diseño V6 — capa visual reversible. Se carga solamente con body.ppv6-active. */
body.ppv6-active {
  --ppv6-ink: #132d47;
  --ppv6-navy: #102a47;
  --ppv6-aqua: #00aabb;
  --ppv6-soft: #f7fbfd;
  --ppv6-line: #e3edf2;
  --ppv6-radius: 15px;
  --ppv6-shadow: 0 10px 30px rgba(16,42,71,.065);
  color: var(--ppv6-ink);
}

/* El fondo es una imagen de baja carga y sólo decora: nunca tapa enlaces ni contenido. */
body.ppv6-active.ppv6-background #main {
  background-color: #fafcfe;
  background-image: linear-gradient(rgba(250,252,254,var(--ppv6-wash, .80)),rgba(250,252,254,var(--ppv6-wash, .80))), var(--ppv6-art);
  background-position: center top, right top 25px;
  background-repeat: no-repeat, no-repeat;
  background-size: auto, min(1100px, 100%) auto;
}
body.ppv6-active.ppv6-background #main > .page-wrapper,
body.ppv6-active.ppv6-background #main > .shop-container,
body.ppv6-active.ppv6-background #main > .container { background-color: transparent; }

/* Encabezado protegido en 1.0.1: no se retocan ni ocultan top bar, facturación,
   menús, buscador ni íconos de Flatsome hasta evaluar la plantilla real. */

/* Jerarquía visual ligera en las páginas actuales: no reemplazar H1, contenido ni SEO. */
body.ppv6-active h1, body.ppv6-active h2, body.ppv6-active h3 { letter-spacing: -.025em; }
body.ppv6-active #main .page-title-inner h1,
body.ppv6-active #main .entry-title,
body.ppv6-active #main .woocommerce-products-header__title { color: var(--ppv6-navy); }
body.ppv6-active #main .entry-content a:not(.button):hover { color: #008da1; }
body.ppv6-active #main a:focus-visible,
body.ppv6-active #main button:focus-visible,
body.ppv6-active #main input:focus-visible,
body.ppv6-active #main select:focus-visible,
body.ppv6-active #main textarea:focus-visible { outline: 3px solid rgba(0,170,187,.33); outline-offset: 2px; }

/* Catálogo, rejilla y tarjetas: conservan WooCommerce y sus botones reales. */
body.ppv6-active.ppv6-cards #main .product-small.box,
body.ppv6-active.ppv6-cards #main .woocommerce ul.products li.product .product-small,
body.ppv6-active.ppv6-cards #main ul.products li.product .product-small {
  background: #fff;
  border: 1px solid var(--ppv6-line);
  border-radius: var(--ppv6-radius);
  overflow: hidden;
  box-shadow: var(--ppv6-shadow);
  transition: transform .18s ease, box-shadow .18s ease;
}
body.ppv6-active.ppv6-cards #main .product-small.box:hover { transform: translateY(-3px); box-shadow: 0 14px 35px rgba(11,42,70,.105); }
body.ppv6-active.ppv6-cards #main .product-small .box-image img { object-fit: contain; }
body.ppv6-active.ppv6-cards #main .product-small .box-text { padding: 13px 14px 16px; }
body.ppv6-active.ppv6-cards #main .product-small .price,
body.ppv6-active.ppv6-cards #main .product-small .woocommerce-Price-amount { color: #0a6981; font-weight: 750; }
body.ppv6-active.ppv6-cards #main .product-small .name a { color: #24435b; }
body.ppv6-active.ppv6-cards #main .button:not(.is-link),
body.ppv6-active.ppv6-cards #main a.button:not(.is-link),
body.ppv6-active.ppv6-cards #main button.button:not(.is-link) {
  border-radius: 11px;
  transition: background-color .18s ease, transform .18s ease;
}

/* Filtros nativos de YITH y WooCommerce: apariencia, no reemplaza su lógica AJAX. */
body.ppv6-active.ppv6-catalog #main .widget,
body.ppv6-active.ppv6-catalog #main .yith-wcan-filters,
body.ppv6-active.ppv6-catalog #main .yith-wcan-filter {
  border-radius: 14px;
}
body.ppv6-active.ppv6-catalog #main .yith-wcan-filters {
  border: 1px solid var(--ppv6-line);
  background: rgba(255,255,255,.96);
  padding: 15px;
}
body.ppv6-active.ppv6-catalog #main .yith-wcan-filter .filter-title,
body.ppv6-active.ppv6-catalog #main .widget .widget-title { color: #183651; font-weight: 750; }
body.ppv6-active.ppv6-catalog #main .woocommerce-ordering select,
body.ppv6-active.ppv6-catalog #main .yith-wcan-filters select {
  border: 1px solid var(--ppv6-line);
  border-radius: 10px;
  background-color: #fff;
}
body.ppv6-active.ppv6-catalog #main .breadcrumb-container { color: #728798; }

/* Formidable Forms y formularios normales: no altera requeridos, envíos ni validación. */
body.ppv6-active.ppv6-forms #main .frm_forms,
body.ppv6-active.ppv6-forms #main .wpcf7,
body.ppv6-active.ppv6-forms #main .gform_wrapper { border-radius: 18px; }
body.ppv6-active.ppv6-forms #main .frm_forms input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="hidden"]),
body.ppv6-active.ppv6-forms #main .frm_forms select,
body.ppv6-active.ppv6-forms #main .frm_forms textarea,
body.ppv6-active.ppv6-forms #main input[type="text"],
body.ppv6-active.ppv6-forms #main input[type="email"],
body.ppv6-active.ppv6-forms #main input[type="tel"],
body.ppv6-active.ppv6-forms #main select,
body.ppv6-active.ppv6-forms #main textarea {
  border-radius: 10px;
  border-color: #d6e4eb;
}
body.ppv6-active.ppv6-forms #main .frm_submit button,
body.ppv6-active.ppv6-forms #main .frm_submit input[type="submit"] { border-radius: 11px; }
/* No se aplica overlay sobre iframes: mapas existentes permanecen disponibles. */
body.ppv6-active.ppv6-forms #main iframe[src*="google.com/maps"] { max-width: 100%; border-radius: 13px; }

/* Footer nativo de Flatsome. */
body.ppv6-active.ppv6-footer #footer .footer-widgets,
body.ppv6-active.ppv6-footer #footer .footer-1,
body.ppv6-active.ppv6-footer #footer .footer-2 { background-color: #102a47; color: #eaf4f9; }
body.ppv6-active.ppv6-footer #footer a { transition: color .18s ease; }
body.ppv6-active.ppv6-footer #footer a:hover { color: #7ae1e5; }

/* Carruseles dinámicos [ppv6_categorias] y [ppv6_marcas]. */
body.ppv6-active .ppv6-carousel-section { margin: 34px 0 44px; color: var(--ppv6-ink); }
body.ppv6-active .ppv6-carousel-heading { display:flex; align-items:end; justify-content:space-between; gap:16px; margin-bottom:18px; }
body.ppv6-active .ppv6-kicker { margin:0 0 6px; font-size:10px; font-weight:800; letter-spacing:1.45px; color:#008a9d; }
body.ppv6-active .ppv6-carousel-heading h2 { font-size: clamp(19px,2vw,27px); line-height:1.14; margin:0 0 7px; color: var(--ppv6-navy); }
body.ppv6-active .ppv6-carousel-heading .ppv6-subtitle { color:#73899a; font-size:13px; margin:0; }
body.ppv6-active .ppv6-carousel-controls { display:flex; gap:8px; flex-shrink:0; }
body.ppv6-active .ppv6-carousel-controls button { width:35px; height:35px; padding:0; background:#fff; border:1px solid #deebf2; border-radius:11px; color:#255872; font-size:24px; line-height:1; cursor:pointer; }
body.ppv6-active .ppv6-carousel-controls button:hover { background:#eef8fa; border-color:#b6dee4; }
body.ppv6-active .ppv6-carousel-track { display:flex; flex-wrap:nowrap; overflow:auto; gap:12px; width:100%; padding:4px 2px 16px; scroll-behavior:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
body.ppv6-active .ppv6-carousel-track::-webkit-scrollbar { display:none; }
body.ppv6-active .ppv6-carousel-card {
  display:flex; flex:0 0 190px; flex-direction:column; align-items:center; justify-content:center; gap:9px;
  min-width:0; min-height:140px; padding:15px 12px; text-decoration:none !important;
  background:rgba(255,255,255,.98); border:1px solid #e3edf3; border-radius:14px;
  box-shadow:0 6px 22px rgba(16,42,71,.05); color:#24435b !important;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
body.ppv6-active .ppv6-carousel-card:hover { transform:translateY(-3px); border-color:#a9d6dd; box-shadow:0 12px 28px rgba(16,42,71,.08); }
body.ppv6-active .ppv6-carousel-card .ppv6-card-media { width:100%; height:76px; display:flex; align-items:center; justify-content:center; }
body.ppv6-active .ppv6-carousel-card img { display:block; max-height:74px; width:auto; max-width:100%; object-fit:contain; }
body.ppv6-active .ppv6-card-placeholder { font-size:38px; font-weight:300; color:#77adbf; }
body.ppv6-active .ppv6-card-label { text-align:center; font-weight:750; font-size:12px; line-height:1.3; }
body.ppv6-active .ppv6-brand-card { flex-basis:168px; min-height:116px; }
body.ppv6-active .ppv6-brand-card .ppv6-card-media { height:55px; }
body.ppv6-active .ppv6-brand-card img { max-height:52px; }
body.ppv6-active .ppv6-brand-card .ppv6-card-label { font-size:11px; text-transform:uppercase; letter-spacing:.06em; }
body.ppv6-active .ppv6-preview-banner { position:fixed; z-index:999999; bottom:15px; right:15px; background:#102a47; color:#fff; border:1px solid #5abac4; padding:11px 14px; border-radius:12px; box-shadow:0 10px 40px rgba(12,39,66,.2); font-size:12px; }
body.ppv6-active .ppv6-preview-banner a { color:#a5f3ef; margin-left:10px; text-decoration:underline; }

@media (max-width: 849px) {
  body.ppv6-active.ppv6-background #main { background-size:auto, 130% auto; background-position:center top,right top 10px; }
  body.ppv6-active .ppv6-carousel-card { flex-basis:140px; min-height:120px; }
  body.ppv6-active .ppv6-brand-card { flex-basis:136px; min-height:108px; }
  body.ppv6-active .ppv6-card-media { height:55px; }
  body.ppv6-active .ppv6-carousel-card img { max-height:55px; }
  body.ppv6-active .ppv6-carousel-section { margin:24px 0 28px; }
}
@media (prefers-reduced-motion:reduce) {
  body.ppv6-active * { scroll-behavior:auto !important; }
  body.ppv6-active .ppv6-carousel-card,
  body.ppv6-active .product-small.box { transition:none !important; }
}

/* 1.1.0: ejemplo visible únicamente en la vista privada del administrador.
   Sin cambios en el encabezado nativo ni en contenido o URLs. */
body.ppv6-active .ppv6-preview-home-module {
  max-width:1180px; margin:42px auto; padding:30px clamp(16px, 3vw, 36px);
  border:1px solid #d6e8f0; border-radius:24px;
  background:linear-gradient(90deg,rgba(251,254,255,.87),rgba(251,254,255,.90)), var(--ppv6-art) center right/cover no-repeat;
  box-shadow:0 15px 48px rgba(20,61,86,.09);
}
body.ppv6-active .ppv6-preview-home-intro { padding:0 0 18px; border-bottom:1px solid #e0edf3; }
body.ppv6-active .ppv6-preview-home-intro span {display:block;color:#038da2;font-size:11px;font-weight:800;letter-spacing:.1em;margin-bottom:4px;}
body.ppv6-active .ppv6-preview-home-intro strong {font-size:clamp(19px,2.2vw,30px);font-weight:800;color:#12354f;}
body.ppv6-active .ppv6-preview-home-intro p {font-size:12px;color:#648399;margin:5px 0 0;}
body.ppv6-active .ppv6-preview-home-module .ppv6-carousel-section {margin:24px 0 14px;}
@media(max-width:849px){body.ppv6-active .ppv6-preview-home-module{margin:18px 12px;padding:20px 14px;}}
