
:root{
  --vshop-blue:#123a9b;
  --vshop-blue-dark:#0b286f;
  --vshop-yellow:#ffd31a;
  --vshop-bg:#f5f6f8;
  --vshop-text:#111827;
  --vshop-muted:#667085;
  --vshop-border:#e6e9ef;
}

body.victoriano-shop-profesional .site-main,
body.victoriano-shop-profesional .ct-container-full {
  background:#fff;
}

body.victoriano-shop-profesional .site-main > .woocommerce,
body.victoriano-shop-profesional .site-main {
  width:100%;
}

body.victoriano-shop-profesional main#main {
  padding-top:0 !important;
}

body.victoriano-shop-profesional .woocommerce-products-header {
  display:none !important;
}

.vshop-hero{
  width:min(1320px, calc(100% - 48px));
  margin:34px auto 50px;
  padding:52px;
  border-radius:30px;
  background:
    radial-gradient(circle at 96% 10%, rgba(255,211,26,.28) 0 90px, transparent 91px),
    linear-gradient(135deg,#f6f7f9 0%,#fff 68%);
  border:1px solid var(--vshop-border);
  overflow:hidden;
}

.vshop-hero-inner{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:54px;
  align-items:center;
}

.vshop-eyebrow,
.vshop-small-label{
  display:block;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  color:var(--vshop-blue);
  margin-bottom:14px;
}

.vshop-hero h1{
  margin:0;
  font-size:clamp(38px,4.8vw,64px);
  line-height:1.03;
  letter-spacing:-.04em;
  color:var(--vshop-text);
}

.vshop-hero p{
  margin:20px 0 0;
  max-width:720px;
  color:var(--vshop-muted);
  font-size:17px;
  line-height:1.7;
}

.vshop-search{
  background:#fff;
  padding:16px;
  border-radius:18px;
  border:1px solid var(--vshop-border);
  box-shadow:0 15px 40px rgba(16,24,40,.05);
}

.vshop-search form,
.vshop-search .dgwt-wcas-search-wrapp{
  margin:0 !important;
  width:100% !important;
  max-width:none !important;
}

.vshop-search input[type="search"],
.vshop-search .dgwt-wcas-search-input{
  min-height:52px !important;
  border-radius:13px !important;
  border:1px solid #dfe3ea !important;
  background:#f8f9fb !important;
  padding-left:18px !important;
  font-size:15px !important;
}

.vshop-search button{
  border-radius:12px !important;
}

.vshop-cat-strip{
  margin-top:38px;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
}

.vshop-cat-card{
  min-height:92px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:18px;
  background:#fff;
  border:1px solid var(--vshop-border);
  border-radius:18px;
  color:#202631;
  text-decoration:none !important;
  font-weight:700;
  font-size:14px;
  transition:.2s ease;
}

.vshop-cat-card:hover{
  transform:translateY(-2px);
  border-color:#d6dbea;
  box-shadow:0 12px 30px rgba(16,24,40,.06);
  color:var(--vshop-blue);
}

.vshop-cat-icon{
  flex:0 0 40px;
  width:40px;
  height:40px;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#eef2ff;
  color:var(--vshop-blue);
  font-size:19px;
  font-weight:800;
}

.vshop-cat-card.is-all .vshop-cat-icon{
  background:#fff4b4;
  color:#111;
}

body.victoriano-shop-profesional .woocommerce{
  width:min(1220px,calc(100% - 48px));
  margin-left:auto;
  margin-right:auto;
}

.vshop-products-heading{
  margin:4px 0 24px;
}

.vshop-products-heading h2{
  margin:0;
  font-size:32px;
  color:var(--vshop-text);
  letter-spacing:-.025em;
}

body.victoriano-shop-profesional .woocommerce-result-count,
body.victoriano-shop-profesional .woocommerce-ordering{
  margin-bottom:30px;
}

body.victoriano-shop-profesional .woocommerce-result-count{
  color:var(--vshop-muted);
  font-size:14px;
}

body.victoriano-shop-profesional .woocommerce-ordering select{
  min-height:44px;
  border-radius:12px;
  border:1px solid var(--vshop-border);
  background:#fff;
  padding:0 36px 0 14px;
  color:#353c47;
}

body.victoriano-shop-profesional .woocommerce ul.products{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px !important;
  margin:0 0 60px !important;
}

body.victoriano-shop-profesional .woocommerce ul.products::before,
body.victoriano-shop-profesional .woocommerce ul.products::after{
  display:none !important;
}

body.victoriano-shop-profesional .woocommerce ul.products li.product{
  width:auto !important;
  margin:0 !important;
  float:none !important;
  background:#fff;
  border:1px solid var(--vshop-border);
  border-radius:22px;
  padding:14px 14px 18px;
  overflow:hidden;
  position:relative;
  transition:.2s ease;
  min-width:0;
}

body.victoriano-shop-profesional .woocommerce ul.products li.product:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 40px rgba(16,24,40,.08);
}

body.victoriano-shop-profesional .woocommerce ul.products li.product a img{
  margin:0 0 16px !important;
  border-radius:16px;
  aspect-ratio:1/1;
  object-fit:contain;
  width:100%;
  background:#f8f9fb;
}

body.victoriano-shop-profesional .woocommerce ul.products li.product .woocommerce-loop-product__title{
  padding:0 !important;
  margin:0 2px 8px !important;
  font-size:16px !important;
  line-height:1.35 !important;
  color:#202631;
  min-height:43px;
}

body.victoriano-shop-profesional .woocommerce ul.products li.product .price{
  margin:0 2px 14px !important;
  color:var(--vshop-blue) !important;
  font-weight:800 !important;
  font-size:17px !important;
}

body.victoriano-shop-profesional .woocommerce ul.products li.product .button{
  width:100%;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:12px !important;
  background:var(--vshop-yellow) !important;
  color:#111 !important;
  font-weight:750 !important;
  padding:10px 12px !important;
  margin-top:6px !important;
  transition:.2s ease;
}

body.victoriano-shop-profesional .woocommerce ul.products li.product .button:hover{
  filter:brightness(.97);
  transform:translateY(-1px);
}

body.victoriano-shop-profesional .woocommerce span.onsale{
  min-height:auto;
  min-width:auto;
  top:24px !important;
  left:24px !important;
  right:auto !important;
  padding:7px 10px !important;
  background:var(--vshop-blue) !important;
  color:#fff !important;
  border-radius:999px !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:800 !important;
  z-index:5;
}

body.victoriano-shop-profesional .woocommerce nav.woocommerce-pagination{
  margin:20px 0 72px;
}

body.victoriano-shop-profesional .woocommerce nav.woocommerce-pagination ul{
  border:0 !important;
  display:flex;
  gap:8px;
  justify-content:center;
}

body.victoriano-shop-profesional .woocommerce nav.woocommerce-pagination ul li{
  border:0 !important;
}

body.victoriano-shop-profesional .woocommerce nav.woocommerce-pagination ul li a,
body.victoriano-shop-profesional .woocommerce nav.woocommerce-pagination ul li span{
  min-width:42px;
  height:42px;
  border:1px solid var(--vshop-border);
  border-radius:11px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#404854;
}

body.victoriano-shop-profesional .woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--vshop-blue);
  color:#fff;
  border-color:var(--vshop-blue);
}

@media(max-width:1024px){
  .vshop-hero{
    width:min(100% - 36px,960px);
    padding:42px;
  }

  .vshop-hero-inner{
    grid-template-columns:1fr;
    gap:28px;
  }

  .vshop-cat-strip{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  body.victoriano-shop-profesional .woocommerce{
    width:min(100% - 36px,960px);
  }

  body.victoriano-shop-profesional .woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(max-width:767px){
  .vshop-hero{
    width:calc(100% - 28px);
    margin:20px auto 34px;
    padding:30px 20px;
    border-radius:24px;
  }

  .vshop-hero h1{
    font-size:38px;
  }

  .vshop-hero p{
    font-size:16px;
    line-height:1.6;
  }

  .vshop-search{
    padding:10px;
  }

  .vshop-cat-strip{
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:26px;
  }

  .vshop-cat-card{
    min-height:76px;
    padding:13px;
    font-size:13px;
  }

  .vshop-cat-icon{
    flex-basis:34px;
    width:34px;
    height:34px;
    border-radius:11px;
  }

  body.victoriano-shop-profesional .woocommerce{
    width:calc(100% - 28px);
  }

  .vshop-products-heading h2{
    font-size:27px;
  }

  body.victoriano-shop-profesional .woocommerce-result-count,
  body.victoriano-shop-profesional .woocommerce-ordering{
    float:none !important;
    width:100%;
  }

  body.victoriano-shop-profesional .woocommerce-ordering select{
    width:100%;
  }

  body.victoriano-shop-profesional .woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px !important;
  }

  body.victoriano-shop-profesional .woocommerce ul.products li.product{
    padding:10px 10px 14px;
    border-radius:17px;
  }

  body.victoriano-shop-profesional .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:14px !important;
    min-height:38px;
  }

  body.victoriano-shop-profesional .woocommerce ul.products li.product .price{
    font-size:15px !important;
  }

  body.victoriano-shop-profesional .woocommerce ul.products li.product .button{
    font-size:12px !important;
    min-height:40px;
  }
}

@media(max-width:430px){
  .vshop-cat-strip{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   V1.1 — Categorías como Home + corrección global FiboSearch
   ========================================================= */

/* Corrige el solapamiento de la lupa con el texto en todo el sitio */
.dgwt-wcas-search-wrapp:not(.dgwt-wcas-layout-icon) .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input,
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type="search"].dgwt-wcas-search-input {
    padding-left:52px !important;
    padding-right:18px !important;
}

.dgwt-wcas-search-wrapp:not(.dgwt-wcas-layout-icon) .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit,
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp .dgwt-wcas-search-submit {
    left:10px !important;
    right:auto !important;
    width:38px !important;
    min-width:38px !important;
}

.dgwt-wcas-search-wrapp:not(.dgwt-wcas-layout-icon) .dgwt-wcas-sf-wrapp .dgwt-wcas-ico-magnifier,
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp .dgwt-wcas-ico-magnifier {
    margin:0 !important;
}

/* El buscador del hero conserva el mismo espaciado corregido */
.vshop-search .dgwt-wcas-search-input {
    padding-left:52px !important;
}

/* En la página principal de Tienda usamos categorías propias, no el loop genérico */
body.victoriano-shop-main .woocommerce-result-count,
body.victoriano-shop-main .woocommerce-ordering,
body.victoriano-shop-main .woocommerce > ul.products,
body.victoriano-shop-main .woocommerce nav.woocommerce-pagination {
    display:none !important;
}

.vshop-category-section {
    margin:0 0 74px;
}

.vshop-category-heading {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:24px;
    margin-bottom:24px;
}

.vshop-category-heading h2 {
    margin:0;
    font-size:clamp(30px,3.2vw,42px);
    line-height:1.08;
    color:var(--vshop-text);
    letter-spacing:-.03em;
}

.vshop-home-categories {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:15px;
}

.vshop-home-category {
    min-height:108px;
    background:#f7f8fa;
    border:1px solid #e8ebef;
    border-radius:20px;
    padding:20px;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:14px;
    color:#111;
    text-decoration:none !important;
    transition:.2s ease;
}

.vshop-home-category:hover {
    transform:translateY(-3px);
    background:#fff;
    box-shadow:0 14px 36px rgba(16,24,40,.08);
    color:#111;
}

.vshop-home-category-icon {
    width:54px;
    height:54px;
    border-radius:17px;
    background:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}

.vshop-home-category-icon svg {
    width:29px;
    height:29px;
    fill:none;
    stroke:var(--vshop-blue);
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.vshop-home-category-name {
    font-weight:800;
    font-size:15px;
    line-height:1.3;
}

.vshop-home-category-arrow {
    font-size:18px;
    color:#929aa6;
}

@media(max-width:1024px) {
    .vshop-home-categories {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:767px) {
    .vshop-category-section {
        margin-bottom:54px;
    }

    .vshop-home-categories {
        grid-template-columns:1fr;
    }

    .vshop-home-category {
        min-height:94px;
    }
}


/* =========================================================
   V1.2 — Oculta las categorías antiguas de WooCommerce
   ========================================================= */

/* En la portada de Tienda usamos exclusivamente nuestras tarjetas minimalistas */
body.victoriano-shop-main .woocommerce ul.products li.product-category {
    display:none !important;
}

/* Si WooCommerce deja un contenedor compuesto solo por categorías antiguas,
   evitamos que genere espacio vacío debajo de nuestras tarjetas. */
body.victoriano-shop-main .woocommerce ul.products:has(li.product-category):not(:has(li.product:not(.product-category))) {
    display:none !important;
    margin:0 !important;
    padding:0 !important;
}


/* =========================================================
   V1.3 — Eliminación definitiva del bloque viejo de categorías
   ========================================================= */
body.victoriano-shop-main .woocommerce li.product-category,
body.victoriano-shop-main .woocommerce .product-category,
body.victoriano-shop-main .woocommerce ul.products li.product-category,
body.victoriano-shop-main .woocommerce ul.products > li[class*="product-category"] {
    display:none !important;
}

/* Evita espacio residual cuando el tema mantiene un loop de categorías vacío */
body.victoriano-shop-main .woocommerce ul.products:empty {
    display:none !important;
}
