
.vizy-commerce-active{background:var(--vc-bg);color:var(--vc-t)}
.vizy-commerce-active,.vizy-commerce-active button,.vizy-commerce-active input,.vizy-commerce-active select,.vizy-commerce-active textarea{font-family:"Rubik",sans-serif!important}
.vizy-commerce-active .woocommerce{color:var(--vc-t)}
.vc-intro{margin:0 0 38px;padding:0 0 26px;border-bottom:1px solid var(--vc-b)}
.vc-intro span,.vc-eye{display:block;color:var(--vc-a);font-size:11px;font-weight:700;letter-spacing:.14em}
.vc-intro h1{margin:8px 0;color:var(--vc-t);font-size:clamp(32px,5vw,56px);line-height:1.03;letter-spacing:-.035em}
.vc-intro p{margin:0;color:var(--vc-m);line-height:1.7}
.vizy-commerce-active ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px!important}
.vizy-commerce-active ul.products:before,.vizy-commerce-active ul.products:after{display:none!important}
.vizy-commerce-active ul.products li.product{float:none!important;width:auto!important;margin:0!important;padding:18px!important;background:var(--vc-s);border:1px solid var(--vc-b)}
.vizy-commerce-active ul.products li.product .woocommerce-loop-product__title{color:var(--vc-t);font-size:20px!important}
.vizy-commerce-active ul.products li.product .price{color:var(--vc-a)!important;font-weight:600!important}
.vizy-commerce-active .button,.vizy-commerce-active button.button,.vizy-commerce-active input.button{border:1px solid var(--vc-a)!important;border-radius:0!important;background:var(--vc-a)!important;color:#0D1113!important;padding:13px 18px!important;font-weight:700!important;box-shadow:none!important}
.vizy-commerce-active .button:hover,.vizy-commerce-active button.button:hover{background:transparent!important;color:var(--vc-a)!important}
.vizy-commerce-active div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);gap:clamp(34px,6vw,80px);align-items:start}
.vizy-commerce-active div.product div.images,.vizy-commerce-active div.product div.summary{float:none!important;width:auto!important;margin:0!important}
.vizy-commerce-active div.product div.images{background:var(--vc-s);border:1px solid var(--vc-b);padding:18px}
.vizy-commerce-active div.product .product_title{color:var(--vc-t);font-size:clamp(34px,4.5vw,54px);line-height:1.03;letter-spacing:-.035em;margin:8px 0 18px}
.vizy-commerce-active div.product p.price{color:var(--vc-a)!important;font-size:28px!important;font-weight:700}
.vizy-commerce-active div.product .woocommerce-product-details__short-description{color:var(--vc-m);line-height:1.7}
.vizy-commerce-active div.product .woocommerce-tabs{grid-column:1/-1;margin-top:35px}
.vizy-commerce-active table.shop_table{border:1px solid var(--vc-b)!important;border-radius:0!important;background:var(--vc-s);border-collapse:collapse!important}
.vizy-commerce-active table.shop_table th,.vizy-commerce-active table.shop_table td{border-color:var(--vc-b)!important;color:var(--vc-t);padding:16px!important}
.vizy-commerce-active .cart_totals,.vizy-commerce-active .woocommerce-checkout-review-order,.vizy-commerce-active .woocommerce-billing-fields,.vizy-commerce-active .woocommerce-additional-fields{background:var(--vc-s);border:1px solid var(--vc-b);padding:24px}
.vizy-commerce-active form .form-row label{color:var(--vc-t)}
.vizy-commerce-active form .input-text,.vizy-commerce-active form textarea,.vizy-commerce-active form select{border:1px solid var(--vc-b)!important;border-radius:0!important;background:var(--vc-s2)!important;color:var(--vc-t)!important;min-height:46px;padding:9px 12px}
.vizy-commerce-active #payment{background:var(--vc-s)!important;border:1px solid var(--vc-b);border-radius:0!important;color:var(--vc-t)}
.vizy-commerce-active #place_order{width:100%}
.vizy-commerce-active .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border:1px solid var(--vc-b)}
.vizy-commerce-active .woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--vc-b)}
.vizy-commerce-active .woocommerce-MyAccount-navigation a{display:block;padding:14px;background:var(--vc-s);color:var(--vc-m)}
.vizy-commerce-active .woocommerce-MyAccount-navigation .is-active a{color:var(--vc-a);background:var(--vc-s2)}
@media(max-width:900px){.vizy-commerce-active ul.products{grid-template-columns:repeat(2,1fr)}.vizy-commerce-active div.product{grid-template-columns:1fr}.vizy-commerce-active div.product .woocommerce-tabs{grid-column:1}}
@media(max-width:620px){.vizy-commerce-active ul.products{grid-template-columns:1fr}}


/* Vizy Commerce 1.0.1 – stronger WooCommerce presentation */
.vizy-commerce-active .site-main,
.vizy-commerce-active main{
  padding-top:clamp(56px,7vw,96px);
  padding-bottom:clamp(72px,8vw,120px);
}
.vizy-commerce-active .woocommerce{
  max-width:1280px;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:clamp(18px,4vw,54px);
  padding-right:clamp(18px,4vw,54px);
}
.vizy-commerce-active.post-type-archive-product .page-title,
.vizy-commerce-active.woocommerce-page .entry-header > .entry-title,
.vizy-commerce-active.woocommerce-cart .entry-header,
.vizy-commerce-active.woocommerce-checkout .entry-header,
.vizy-commerce-active.woocommerce-account .entry-header{
  display:none!important;
}

/* Shop hero */
.vc-shop-hero{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  align-items:center;
  min-height:360px;
  margin:0 0 clamp(48px,6vw,76px);
  padding:clamp(34px,5vw,64px);
  overflow:hidden;
  border:1px solid var(--vc-b);
  background:
    radial-gradient(circle at 80% 55%, color-mix(in srgb,var(--vc-a) 14%, transparent), transparent 28%),
    linear-gradient(135deg,#0d1012 0%,var(--vc-s) 55%,#101417 100%);
}
.vc-shop-hero::after{
  content:"";
  position:absolute;
  inset:auto -12% -65% 38%;
  height:330px;
  transform:rotate(-7deg);
  background:radial-gradient(ellipse at center,color-mix(in srgb,var(--vc-a) 13%, transparent),transparent 68%);
  pointer-events:none;
}
.vc-shop-hero-copy{position:relative;z-index:2;max-width:680px}
.vc-shop-hero h1{
  margin:10px 0 20px;
  color:var(--vc-t);
  font-size:clamp(38px,5.4vw,68px);
  line-height:.98;
  letter-spacing:-.045em;
}
.vc-shop-hero h1 em{
  display:inline-block;
  margin-top:8px;
  color:var(--vc-m);
  font-size:.72em;
  font-style:normal;
  font-weight:400;
  letter-spacing:-.03em;
}
.vc-shop-hero p{
  max-width:620px;
  margin:0;
  color:var(--vc-m);
  font-size:16px;
  line-height:1.75;
}
.vc-shop-points{
  display:flex;
  flex-wrap:wrap;
  gap:18px 28px;
  margin-top:28px;
}
.vc-shop-points span{
  color:#D7DDE1;
  font-size:13px;
}
.vc-shop-points span::first-letter{color:var(--vc-a)}
.vc-wave{
  position:relative;
  min-height:250px;
  z-index:1;
  opacity:.92;
}
.vc-wave b{
  position:absolute;
  left:2%;
  right:-25%;
  top:50%;
  height:1px;
  border-top:1px solid color-mix(in srgb,var(--vc-a) 80%, transparent);
  transform-origin:left center;
  box-shadow:0 0 12px color-mix(in srgb,var(--vc-a) 25%, transparent);
}
.vc-wave b:nth-child(1){transform:translateY(-78px) rotate(7deg) skewX(-16deg)}
.vc-wave b:nth-child(2){transform:translateY(-48px) rotate(4deg) skewX(-20deg)}
.vc-wave b:nth-child(3){transform:translateY(-18px) rotate(2deg) skewX(-22deg)}
.vc-wave b:nth-child(4){transform:translateY(12px) rotate(-1deg) skewX(-18deg)}
.vc-wave b:nth-child(5){transform:translateY(42px) rotate(-4deg) skewX(-22deg)}
.vc-wave b:nth-child(6){transform:translateY(72px) rotate(-7deg) skewX(-17deg)}
.vc-wave b:nth-child(7){transform:translateY(102px) rotate(-10deg) skewX(-14deg)}

/* Section heading */
.vc-products-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  margin:0 0 24px;
}
.vc-products-head h2{
  margin:7px 0 0;
  color:var(--vc-t);
  font-size:clamp(26px,3vw,36px);
  letter-spacing:-.025em;
}

/* Product cards: wider, calmer, software-like */
.vizy-commerce-active ul.products{
  gap:26px!important;
}
.vizy-commerce-active ul.products li.product{
  display:grid!important;
  grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);
  gap:30px;
  align-items:center;
  min-height:330px;
  padding:28px!important;
  border:1px solid var(--vc-b)!important;
  background:linear-gradient(135deg,var(--vc-s) 0%,color-mix(in srgb,var(--vc-s2) 72%,#0f1214) 100%)!important;
}
.vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link{
  display:contents;
}
.vizy-commerce-active ul.products li.product a img{
  grid-row:1 / span 5;
  width:100%!important;
  margin:0!important;
  border:1px solid color-mix(in srgb,var(--vc-b) 75%,transparent);
  background:#080a0c!important;
}
.vizy-commerce-active ul.products li.product .woocommerce-loop-product__title,
.vizy-commerce-active ul.products li.product .price,
.vizy-commerce-active ul.products li.product .button{
  grid-column:2;
}
.vizy-commerce-active ul.products li.product .woocommerce-loop-product__title{
  align-self:end;
  margin:0 0 10px!important;
  font-size:clamp(24px,3vw,34px)!important;
  letter-spacing:-.03em;
}
.vizy-commerce-active ul.products li.product .price{
  margin:4px 0 18px!important;
  font-size:24px!important;
}
.vizy-commerce-active ul.products li.product .price del{
  color:var(--vc-muted)!important;
  opacity:.6;
  margin-right:8px;
}
.vizy-commerce-active ul.products li.product .price ins{
  color:var(--vc-a)!important;
  text-decoration:none!important;
}
.vizy-commerce-active ul.products li.product .button{
  justify-self:start;
  min-width:150px;
  margin:0!important;
}

/* Benefits */
.vc-benefits{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:34px;
  border:1px solid var(--vc-b);
  background:var(--vc-s);
}
.vc-benefits>div{
  min-height:170px;
  padding:28px 24px;
  text-align:center;
  border-right:1px solid var(--vc-b);
}
.vc-benefits>div:last-child{border-right:0}
.vc-benefits strong{
  display:block;
  margin-bottom:13px;
  color:var(--vc-a);
  font-size:30px;
  font-weight:400;
}
.vc-benefits h3{
  margin:0 0 8px;
  color:var(--vc-t);
  font-size:16px;
}
.vc-benefits p{
  margin:0;
  color:var(--vc-m);
  font-size:13px;
  line-height:1.55;
}

/* Cart, checkout and account hero */
.vc-intro{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  min-height:190px;
  margin:0 0 42px!important;
  padding:34px clamp(28px,5vw,54px)!important;
  overflow:hidden;
  border:1px solid var(--vc-b)!important;
  background:linear-gradient(120deg,#0d1012,var(--vc-s));
}
.vc-intro-copy{position:relative;z-index:2}
.vc-intro h1{
  margin:8px 0!important;
  font-size:clamp(34px,4.5vw,54px)!important;
}
.vc-intro p{max-width:620px}
.vc-intro-mark{
  position:relative;
  width:260px;
  height:120px;
  opacity:.7;
}
.vc-intro-mark i{
  position:absolute;
  right:0;
  width:220px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--vc-a));
  transform-origin:right center;
}
.vc-intro-mark i:nth-child(1){top:30px;transform:rotate(-13deg)}
.vc-intro-mark i:nth-child(2){top:60px;transform:rotate(-4deg)}
.vc-intro-mark i:nth-child(3){top:90px;transform:rotate(8deg)}
.vc-section-label{margin:0 0 14px}
.vc-section-label h2{margin:5px 0 0!important;color:var(--vc-t)!important}

/* Spacing toward global CTA/footer */
.vizy-commerce-active .woocommerce:last-child{
  margin-bottom:clamp(26px,4vw,52px)!important;
}

@media(max-width:900px){
  .vc-shop-hero{grid-template-columns:1fr;min-height:0}
  .vc-wave{min-height:140px;margin-top:20px}
  .vc-benefits{grid-template-columns:repeat(2,1fr)}
  .vc-benefits>div:nth-child(2){border-right:0}
  .vc-benefits>div:nth-child(-n+2){border-bottom:1px solid var(--vc-b)}
  .vizy-commerce-active ul.products li.product{grid-template-columns:1fr;gap:18px}
  .vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link{display:block}
  .vizy-commerce-active ul.products li.product a img,
  .vizy-commerce-active ul.products li.product .woocommerce-loop-product__title,
  .vizy-commerce-active ul.products li.product .price,
  .vizy-commerce-active ul.products li.product .button{grid-column:auto;grid-row:auto}
}
@media(max-width:620px){
  .vizy-commerce-active .site-main,
  .vizy-commerce-active main{padding-top:34px;padding-bottom:58px}
  .vc-shop-hero{padding:28px 22px;margin-bottom:42px}
  .vc-shop-points{flex-direction:column;gap:10px}
  .vc-wave{display:none}
  .vc-benefits{grid-template-columns:1fr}
  .vc-benefits>div{border-right:0!important;border-bottom:1px solid var(--vc-b)}
  .vc-benefits>div:last-child{border-bottom:0}
  .vc-intro{align-items:flex-start;min-height:0;padding:28px 22px!important}
  .vc-intro-mark{display:none}
}


/* Product image centering fix */
.vizy-commerce-active ul.products li.product a img{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  max-height:280px;
  margin-left:auto!important;
  margin-right:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
}
.vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link{
  align-items:center;
}
.vizy-commerce-active div.product div.images .woocommerce-product-gallery__image a{
  display:flex!important;
  align-items:center;
  justify-content:center;
}
.vizy-commerce-active div.product div.images img{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  object-fit:contain!important;
  object-position:center center!important;
}


/* Vizy Shop Theme 1.0.2 – single software product cards */
.vizy-commerce-active ul.products{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:26px!important;
  width:100%!important;
  max-width:none!important;
}
.vizy-commerce-active ul.products li.product{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:minmax(260px,34%) minmax(0,66%)!important;
  grid-template-rows:auto!important;
  column-gap:38px!important;
  row-gap:8px!important;
  align-items:center!important;
  width:100%!important;
  max-width:none!important;
  min-height:360px!important;
  margin:0!important;
  padding:30px!important;
}
.vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link{
  display:grid!important;
  grid-template-columns:minmax(260px,34%) minmax(0,66%)!important;
  grid-template-rows:auto auto auto auto!important;
  column-gap:38px!important;
  row-gap:8px!important;
  align-items:center!important;
  grid-column:1 / -1!important;
  width:100%!important;
  text-decoration:none!important;
}
.vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link img{
  grid-column:1!important;
  grid-row:1 / 5!important;
  align-self:center!important;
  justify-self:center!important;
  display:block!important;
  width:100%!important;
  max-width:320px!important;
  max-height:320px!important;
  margin:0 auto!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#080a0c!important;
}
.vizy-commerce-active ul.products li.product .woocommerce-loop-product__title{
  grid-column:2!important;
  grid-row:1!important;
  align-self:end!important;
  margin:0 0 6px!important;
  padding:0!important;
  font-size:clamp(28px,3vw,38px)!important;
  line-height:1.08!important;
}
.vizy-commerce-active ul.products li.product .vc-loop-excerpt{
  grid-column:2!important;
  grid-row:2!important;
  max-width:620px;
  margin:0 0 8px;
  color:var(--vc-m);
  font-size:15px;
  line-height:1.65;
}
.vizy-commerce-active ul.products li.product .price{
  grid-column:2!important;
  grid-row:3!important;
  align-self:start!important;
  margin:6px 0 14px!important;
  font-size:25px!important;
}
.vizy-commerce-active ul.products li.product > .button,
.vizy-commerce-active ul.products li.product .add_to_cart_button{
  grid-column:2!important;
  justify-self:start!important;
  align-self:start!important;
  min-width:155px!important;
  width:auto!important;
  margin:0!important;
}

/* WooCommerce can inject clear/float helpers – neutralise them in the software list */
.vizy-commerce-active ul.products li.product.first,
.vizy-commerce-active ul.products li.product.last{
  clear:none!important;
}
.vizy-commerce-active ul.products.columns-2,
.vizy-commerce-active ul.products.columns-3,
.vizy-commerce-active ul.products.columns-4,
.vizy-commerce-active ul.products.columns-5,
.vizy-commerce-active ul.products.columns-6{
  grid-template-columns:1fr!important;
}

/* Keep section and benefits aligned to the same width */
.vc-products-head,
.vc-benefits{
  width:100%!important;
  max-width:none!important;
}

/* Tablet */
@media(max-width:900px){
  .vizy-commerce-active ul.products li.product,
  .vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link{
    grid-template-columns:minmax(200px,38%) minmax(0,62%)!important;
    column-gap:26px!important;
  }
  .vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link img{
    max-width:250px!important;
    max-height:250px!important;
  }
}

/* Mobile: image above copy, full width */
@media(max-width:650px){
  .vizy-commerce-active ul.products li.product{
    display:block!important;
    min-height:0!important;
    padding:20px!important;
  }
  .vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link{
    display:block!important;
  }
  .vizy-commerce-active ul.products li.product > a.woocommerce-LoopProduct-link img{
    width:100%!important;
    max-width:360px!important;
    max-height:none!important;
    margin:0 auto 22px!important;
  }
  .vizy-commerce-active ul.products li.product .woocommerce-loop-product__title{
    margin-bottom:10px!important;
    font-size:28px!important;
  }
  .vizy-commerce-active ul.products li.product .vc-loop-excerpt{
    margin-bottom:12px;
  }
  .vizy-commerce-active ul.products li.product .price{
    margin-bottom:16px!important;
  }
  .vizy-commerce-active ul.products li.product > .button,
  .vizy-commerce-active ul.products li.product .add_to_cart_button{
    display:inline-flex!important;
  }
}


/* Vizy Shop Theme 1.0.4 – passive Cart/Checkout styling only.
   No WooCommerce Block lifecycle, loading or layout logic is modified. */
.vizy-commerce-active.woocommerce-cart .wc-block-cart,
.vizy-commerce-active.woocommerce-checkout .wc-block-checkout{
  max-width:1280px;
  margin-left:auto;
  margin-right:auto;
  color:var(--vc-t);
}
.vizy-commerce-active.woocommerce-cart .wc-block-components-button,
.vizy-commerce-active.woocommerce-checkout .wc-block-components-button{
  border-color:var(--vc-a)!important;
  border-radius:0!important;
  background:var(--vc-a)!important;
  color:#0D1113!important;
  font-family:"Rubik",sans-serif!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.vizy-commerce-active.woocommerce-cart .wc-block-components-button:hover,
.vizy-commerce-active.woocommerce-checkout .wc-block-components-button:hover{
  background:transparent!important;
  color:var(--vc-a)!important;
}
.vizy-commerce-active.woocommerce-cart .wc-block-components-text-input input,
.vizy-commerce-active.woocommerce-checkout .wc-block-components-text-input input{
  border-radius:0!important;
  border-color:var(--vc-b)!important;
  background:var(--vc-s2)!important;
  color:var(--vc-t)!important;
}
