/* =========================================================
   Solidium3D Clean Custom CSS
   Keep only current header, cart, WooCommerce, footer, mobile,
   reviews and general site polish.
   Old p3d / quote plugin CSS removed.
========================================================= */


/* =========================================================
   WooCommerce cart / checkout tables
========================================================= */

.woocommerce table.shop_table {
  width: 100%;
  border-collapse: separate;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  text-align: left;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  padding: 9px 12px;
  vertical-align: middle;
  line-height: 1.5;
}

.woocommerce td.product-name dl.variation,
.woocommerce td.product-name .wc-item-meta {
  margin-bottom: 0;
  font-size: 0.725rem;
  text-transform: none;
}

.woocommerce td.product-name dl.variation p,
.woocommerce td.product-name .wc-item-meta p {
  margin: 0;
  padding: 0;
  font-size: 0.725rem;
}

.woocommerce td.product-name dl.variation dt,
.woocommerce td.product-name dl.variation dd,
.shop_table dt,
.shop_table dd {
  display: inline-block;
  margin: 0 5px 0 0;
  font-weight: 700;
}

.shop_table a {
  color: #1e73be;
  text-decoration: none;
}

.shop_table a:hover {
  text-decoration: underline;
}


/* =========================================================
   Mini cart
========================================================= */

#mini-cart .quantity,
#mini-cart .quantity .amount {
  font-weight: 700;
  font-size: 0.825rem;
}

#mini-cart .cart-popup {
  width: 350px;
  right: -10px;
  margin-top: 0;
  padding: 0;
  box-shadow: 0 5px 8px rgb(0 0 0 / 15%);
  text-align: left;
  z-index: 1003;
}


/* =========================================================
   Header
========================================================= */

#header .header-main {
  background-color: #ffffff;
  border-bottom: 1px solid rgb(224, 224, 224);
  padding-top: 10px;
  padding-bottom: 10px;
}

#header .logo img {
  max-width: 100%;
  transform-origin: left center;
}

#header.sticky-header .logo .sticky-logo {
  display: inline-block;
  margin-left: 20px !important;
}

#header .main-menu > li.menu-item > a {
  font-family: Poppins, sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 25px;
  letter-spacing: 0;
  color: #000000;
  padding: 9px;
}

#header .main-menu .narrow li.menu-item > a {
  font-family: Poppins, sans-serif;
  font-size: 15px;
  font-weight: 500;
  color: #000000;
}

.vc_custom_1640526891232 {
  border-bottom: 1px solid rgba(234, 234, 234, 1) !important;
  padding-top: 1px !important;
  padding-bottom: 1px !important;
  background: rgb(245, 245, 245) !important;
}


/* Hide desktop quote button on very small mobile screens */
@media (max-width: 480px) {
  #header .vc_btn3.vc_btn3-shape-round {
    display: none;
  }
}


/* =========================================================
   Buttons
========================================================= */

.btn,
.btn-group-md > .btn,
.vc_btn3.vc_btn3-size-md {
  font-size: 13px;
  font-weight: 600;
}

.vc_btn3-container {
  margin-top: 20px;
  margin-bottom: 20px;
}


/* =========================================================
   Mobile side navigation
========================================================= */

#side-nav-panel {
  background-color: #1e73be;
}

#side-nav-panel .accordion-menu li.menu-item.active > a,
#side-nav-panel .accordion-menu li.menu-item:hover > a,
#side-nav-panel .menu-custom-block a:hover {
  background-color: #00319b;
}

#nav-panel .accordion-menu .arrow {
  background: none !important;
  right: 5px;
  top: 0;
  width: 100px;
  line-height: 35px;
}


/* =========================================================
   Product pages
========================================================= */

.price,
.product-summary-wrap .price {
  color: #0088cc;
}

.price {
  font-size: 1.5714em;
}

.single-product .product-summary-wrap .price {
  font: var(--porto-h5-fst, normal) var(--porto-h5-fw, 500) var(--porto-h5-fs, 20px) / var(--porto-h5-lh, 18px) var(--porto-h5-ff, var(--porto-body-ff)), sans-serif;
}

.product-summary-wrap .stock {
  color: #ff0000;
}

.single-product .woocommerce-product-rating .star-rating span:before,
.star-rating span:before {
  color: #ffa216;
}

.woocommerce-product-rating .review-link {
  color: #2ea3f2;
}

@media (min-width: 768px) {
  .single-product .col-md-5,
  .single-product .col-md-7 {
    width: 50%;
  }
}


/* =========================================================
   Reviews
========================================================= */

#reviews.cr-reviews-ajax-reviews .cr-ajax-search {
  display: none;
}

#comments > h2 {
  display: none;
}

#tab-title-reviews {
  font-size: 18px;
}

#reviews .commentlist .img-thumbnail img {
  display: none;
}


/* =========================================================
   Testimonials / carousel
========================================================= */

.porto-testimonial {
  min-height: 380px;
}

.owl-carousel {
  margin-bottom: 0;
}


/* =========================================================
   Footer / spacing
========================================================= */

.p-b-xlg {
  padding-bottom: 20px !important;
}

.p-t-xlg {
  padding-top: 20px !important;
  padding-bottom: 0 !important;
}


/* =========================================================
   Misc site polish
========================================================= */

.wpb_single_image .vc_figure-caption {
  font-size: 14px;
}

p.demo_store {
  background-color: #4be7c7;
  color: #000;
}

html #topcontrol {
  display: none;
}

.grecaptcha-badge {
  visibility: hidden;
}

.stats-block .stats-number,
div.stats-desc > div.counter_prefix,
div.stats-desc > div.counter_suffix {
  font-size: 50px;
  font-weight: 700;
}


/* =========================================================
   Homepage-specific adjustment
========================================================= */

.home .main-content {
  margin-top: -30px;
}


/* =========================================================
   Slide cart / side cart if still used
   Remove this section if the plugin is no longer active.
========================================================= */

span.xoo-wsc-ecl {
  padding: 0;
  margin-top: 0;
  margin-bottom: -10px;
}

.xoo-wsc-header {
  padding: 10px;
  color: #000;
  margin-bottom: -5px;
}

/* Our Works carousel — WCAG 2.5.5 touch targets (48×48px) */
.custom-dots-style-1 .owl-dots .owl-dot {
  min-width: 48px;
  min-height: 48px;
  padding: 20px 10px;
  margin: 0 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 0;
}
.custom-dots-style-1 .owl-dots .owl-dot span {
  width: 10px;
  height: 10px;
  margin: 0;
}

#footer { padding-bottom: 0px !important;}
#footer .footer-bottom { padding: 12px 0 !important; }
.footer-main > .container { padding-bottom: 10px !important; }