/*
Theme Name: Digital Gift Lite Safe
Theme URI: https://digital-cardcodes.com
Author: Aruba Tools
Description: Ultra-safe lightweight WooCommerce theme for digital gift card stores. Built to avoid critical errors in Live Preview.
Version: 1.0.5
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: digital-gift-lite-safe
*/

:root{
  --orange:#ff6426;
  --orange-dark:#ef4f12;
  --text:#171a20;
  --border:#e5e7eb;
  --muted:#6b7280;
}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:16px;line-height:1.45}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto}
.dgl-header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:999}
.dgl-header-inner{min-height:86px;display:grid;grid-template-columns:70px 1fr 70px;align-items:center;padding:8px 22px;max-width:1260px;margin:0 auto}
.dgl-menu-btn{width:48px;height:48px;border:0;background:transparent;display:flex;flex-direction:column;justify-content:center;gap:7px;padding:0;cursor:pointer}
.dgl-menu-btn span{display:block;width:38px;height:4px;background:#111;border-radius:999px}
.dgl-logo{text-align:center;line-height:1}
.dgl-logo img{max-height:74px;width:auto}
.dgl-logo-text{font-size:25px;font-weight:900}
.dgl-cart{justify-self:end;position:relative;width:52px;height:52px;display:flex;align-items:center;justify-content:center}
.dgl-cart svg{width:44px;height:44px;stroke:#111}
.dgl-cart-count{position:absolute;top:0;right:-3px;min-width:27px;height:27px;padding:0 7px;border-radius:999px;background:var(--orange);color:#fff;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center}
.dgl-menu{display:none;background:#fff;border-top:1px solid var(--border);padding:12px 22px 18px}
.dgl-menu.open{display:block}
.dgl-menu ul{list-style:none;padding:0;margin:0;max-width:1260px;margin-left:auto;margin-right:auto}
.dgl-menu li{border-bottom:1px solid #f0f0f0}
.dgl-menu a{display:block;padding:13px 0;font-weight:700}
.dgl-line{height:2px;background:#111;max-width:1210px;margin:72px auto 56px}
.dgl-container{max-width:1260px;margin:0 auto;padding:0 22px 50px}
.dgl-footer{border-top:1px solid var(--border);padding:28px 22px;color:var(--muted);text-align:center;font-size:14px}

/* WooCommerce shop grid */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0!important;margin:0!important;padding:0!important;border-top:1px solid var(--border);border-left:1px solid var(--border)}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto!important;float:none!important;margin:0!important;padding:28px 24px!important;background:#fff;border-right:1px solid var(--border);border-bottom:1px solid var(--border);text-align:left}
.woocommerce ul.products li.product a img{width:100%;aspect-ratio:1/1.22;object-fit:contain;margin:0 0 22px!important;border-radius:12px}
.woocommerce ul.products li.product .price{color:var(--text)!important;font-size:clamp(18px,3vw,25px)!important;font-weight:900!important;margin:0 0 8px!important;display:block}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:clamp(18px,2.9vw,25px);line-height:1.14;font-weight:800;color:var(--text);padding:0!important;margin:8px 0 14px!important}
.woocommerce ul.products li.product .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--orange)!important;color:#fff!important;border-radius:4px!important;border:0!important;font-weight:800!important}
.woocommerce ul.products li.product .button{font-size:clamp(15px,2.5vw,22px)!important;padding:15px 20px!important;margin-top:18px!important}
.woocommerce ul.products li.product .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--orange-dark)!important;color:#fff!important}
.woocommerce div.product .product_title{font-size:clamp(28px,5vw,48px);font-weight:900;line-height:1.05}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--text);font-size:clamp(24px,4vw,36px);font-weight:900}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top-color:var(--orange)}
.woocommerce-message::before,.woocommerce-info::before{color:var(--orange)}

@media(min-width:768px){.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1024px){.woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}.dgl-menu ul{display:flex;gap:26px}.dgl-menu li{border-bottom:0}}
@media(max-width:600px){
  .dgl-header-inner{min-height:78px;grid-template-columns:58px 1fr 58px;padding:7px 20px}
  .dgl-logo img{max-height:68px}
  .dgl-cart{width:48px;height:48px}
  .dgl-cart svg{width:43px;height:43px}
  .dgl-line{margin:58px 22px 56px}
  .dgl-container{padding-left:12px;padding-right:12px}
  .woocommerce ul.products li.product,.woocommerce-page ul.products li.product{padding:18px 16px!important}
}


/* Strong mobile product grid fix */
body.woocommerce-page ul.products,
body.woocommerce ul.products,
body .woocommerce ul.products,
body .products {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  width: 100% !important;
}

body.woocommerce-page ul.products li.product,
body.woocommerce ul.products li.product,
body .woocommerce ul.products li.product,
body .products li.product,
body .product {
  max-width: 100% !important;
}

/* Blonwe / Elementor fallback grid fix */
body .elementor-widget-blonwe-product-grid .elementor-widget-container,
body .elementor-widget-container:has(.aruba-blonwe-fallback-product),
body .blonwe-product-grid,
body .klb-products,
body .products-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border-top: 1px solid var(--border);
  border-left: 1px solid var(--border);
}

body .aruba-blonwe-fallback-product,
body .woocommerce ul.products li.product,
body .products li.product {
  border-radius: 0 !important;
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 1px solid var(--border) !important;
  border-bottom: 1px solid var(--border) !important;
  padding: 18px 16px !important;
  margin: 0 !important;
  background: #fff !important;
}

body .aruba-blonwe-fallback-product img,
body .woocommerce ul.products li.product a img,
body .products li.product a img {
  width: 100% !important;
  max-width: 100% !important;
  height: 210px !important;
  object-fit: contain !important;
  margin: 0 0 16px !important;
}

body .aruba-blonwe-fallback-product .woocommerce-loop-product__title,
body .woocommerce ul.products li.product .woocommerce-loop-product__title,
body .products li.product .woocommerce-loop-product__title {
  font-size: 18px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  margin: 8px 0 10px !important;
  padding: 0 !important;
}

body .aruba-blonwe-fallback-product .price,
body .woocommerce ul.products li.product .price,
body .products li.product .price {
  font-size: 20px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

body .aruba-blonwe-fallback-product .button,
body .woocommerce ul.products li.product .button,
body .products li.product .button {
  font-size: 16px !important;
  padding: 13px 14px !important;
  margin-top: 14px !important;
  min-height: 46px !important;
}

@media (max-width: 430px) {
  body .aruba-blonwe-fallback-product,
  body .woocommerce ul.products li.product,
  body .products li.product {
    padding: 16px 14px !important;
  }

  body .aruba-blonwe-fallback-product img,
  body .woocommerce ul.products li.product a img,
  body .products li.product a img {
    height: 190px !important;
  }

  body .aruba-blonwe-fallback-product .woocommerce-loop-product__title,
  body .woocommerce ul.products li.product .woocommerce-loop-product__title,
  body .products li.product .woocommerce-loop-product__title {
    font-size: 17px !important;
  }

  body .aruba-blonwe-fallback-product .price,
  body .woocommerce ul.products li.product .price,
  body .products li.product .price {
    font-size: 19px !important;
  }
}

@media (min-width: 768px) {
  body.woocommerce-page ul.products,
  body.woocommerce ul.products,
  body .woocommerce ul.products,
  body .products,
  body .elementor-widget-blonwe-product-grid .elementor-widget-container,
  body .elementor-widget-container:has(.aruba-blonwe-fallback-product),
  body .blonwe-product-grid,
  body .klb-products,
  body .products-wrapper {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 1024px) {
  body.woocommerce-page ul.products,
  body.woocommerce ul.products,
  body .woocommerce ul.products,
  body .products,
  body .elementor-widget-blonwe-product-grid .elementor-widget-container,
  body .elementor-widget-container:has(.aruba-blonwe-fallback-product),
  body .blonwe-product-grid,
  body .klb-products,
  body .products-wrapper {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}


/* Professional single product / gift card amount page */
body.single-product .dgl-container {
  max-width: 1180px;
}

body.single-product div.product {
  background: #fff;
}

body.single-product div.product div.images {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 22px;
  padding: 22px;
  box-shadow: 0 8px 28px rgba(15, 23, 42, .06);
}

body.single-product div.product div.images img {
  border-radius: 16px;
  object-fit: contain;
}

body.single-product div.product div.summary {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 22px;
  padding: 26px !important;
  box-shadow: 0 8px 28px rgba(15, 23, 42, .06);
}

body.single-product div.product .product_title {
  font-size: clamp(28px, 6vw, 46px) !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -1px;
  margin-bottom: 14px !important;
}

body.single-product div.product .woocommerce-product-rating {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px !important;
}

body.single-product div.product .star-rating {
  color: #ffc107;
  background: #fff3cd;
  border-radius: 999px;
  padding: 7px 12px;
  width: auto;
  min-width: 72px;
  height: auto;
  line-height: 1;
}

body.single-product div.product .woocommerce-review-link {
  color: #374151;
  font-weight: 700;
}

body.single-product div.product p.price,
body.single-product div.product span.price,
body.single-product div.product .woocommerce-variation-price .price {
  display: block;
  color: #111827 !important;
  font-size: clamp(28px, 5vw, 42px) !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
  margin: 14px 0 20px !important;
}

body.single-product div.product .summary .price::before {
  content: "Price";
  display: block;
  font-size: 13px;
  color: #6b7280;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
  margin-bottom: 5px;
}

body.single-product div.product form.cart {
  margin-top: 22px !important;
}

body.single-product div.product form.variations_form {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 18px;
}

body.single-product div.product table.variations {
  margin: 0 0 18px !important;
  border: 0 !important;
}

body.single-product div.product table.variations tbody,
body.single-product div.product table.variations tr,
body.single-product div.product table.variations th,
body.single-product div.product table.variations td {
  display: block !important;
  width: 100% !important;
  border: 0 !important;
  padding: 0 !important;
}

body.single-product div.product table.variations th.label {
  margin-bottom: 9px !important;
}

body.single-product div.product table.variations th.label label {
  font-size: 15px !important;
  font-weight: 900 !important;
  color: #111827 !important;
  text-transform: uppercase;
  letter-spacing: .06em;
}

body.single-product div.product table.variations td.value {
  position: relative;
}

body.single-product div.product table.variations select {
  width: 100% !important;
  min-height: 58px !important;
  border: 2px solid #e5e7eb !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #111827 !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  padding: 0 46px 0 16px !important;
  outline: none !important;
  box-shadow: none !important;
  appearance: none;
  -webkit-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #111827 50%),
    linear-gradient(135deg, #111827 50%, transparent 50%);
  background-position:
    calc(100% - 24px) 26px,
    calc(100% - 16px) 26px;
  background-size: 8px 8px, 8px 8px;
  background-repeat: no-repeat;
}

body.single-product div.product table.variations select:focus {
  border-color: var(--orange) !important;
  box-shadow: 0 0 0 4px rgba(255,100,38,.14) !important;
}

body.single-product div.product table.variations .reset_variations {
  display: inline-block !important;
  margin-top: 10px !important;
  color: #6b7280 !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
}

body.single-product div.product .woocommerce-variation {
  margin: 14px 0 0;
}

body.single-product div.product .woocommerce-variation-description {
  background: #fff;
  border-radius: 14px;
  padding: 12px 14px;
  border: 1px solid #e5e7eb;
  color: #4b5563;
}

body.single-product div.product .single_variation_wrap {
  margin-top: 14px;
}

body.single-product div.product .woocommerce-variation-add-to-cart {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 12px;
  align-items: center;
  margin-top: 16px;
}

body.single-product div.product form.cart div.quantity {
  margin: 0 !important;
  float: none !important;
}

body.single-product div.product form.cart .quantity input.qty {
  width: 100% !important;
  height: 58px !important;
  border: 2px solid #e5e7eb !important;
  border-radius: 14px !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  color: #111827 !important;
  background: #fff !important;
}

body.single-product div.product form.cart .single_add_to_cart_button {
  width: 100% !important;
  height: 58px !important;
  border-radius: 14px !important;
  background: var(--orange) !important;
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  letter-spacing: -.2px;
  box-shadow: 0 10px 22px rgba(255,100,38,.28);
  transition: transform .15s ease, background .15s ease, box-shadow .15s ease;
}

body.single-product div.product form.cart .single_add_to_cart_button:hover {
  background: var(--orange-dark) !important;
  transform: translateY(-1px);
  box-shadow: 0 14px 28px rgba(255,100,38,.34);
}

body.single-product div.product form.cart .single_add_to_cart_button.disabled,
body.single-product div.product form.cart .single_add_to_cart_button.wc-variation-selection-needed {
  opacity: .6 !important;
  box-shadow: none !important;
  transform: none !important;
}

body.single-product div.product .product_meta {
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  padding: 14px 16px;
  margin-top: 18px;
  color: #6b7280;
  font-size: 14px;
}

body.single-product .woocommerce-tabs {
  margin-top: 34px;
}

body.single-product .woocommerce-tabs ul.tabs {
  padding: 0 !important;
  margin: 0 0 16px !important;
}

body.single-product .woocommerce-tabs ul.tabs::before {
  display: none !important;
}

body.single-product .woocommerce-tabs ul.tabs li {
  border: 1px solid #e5e7eb !important;
  border-radius: 999px !important;
  background: #fff !important;
  margin: 0 8px 8px 0 !important;
  padding: 0 !important;
}

body.single-product .woocommerce-tabs ul.tabs li a {
  padding: 10px 16px !important;
  font-weight: 800 !important;
  color: #111827 !important;
}

body.single-product .woocommerce-tabs .panel {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  padding: 20px !important;
  box-shadow: 0 8px 28px rgba(15, 23, 42, .05);
}

/* Optional nicer variation swatches if variation plugin outputs buttons */
body.single-product .variable-items-wrapper,
body.single-product .variation-radios,
body.single-product .wpcvs-terms {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px !important;
}

body.single-product .variable-item,
body.single-product .variation-radios label,
body.single-product .wpcvs-term {
  min-height: 54px !important;
  border-radius: 14px !important;
  border: 2px solid #e5e7eb !important;
  background: #fff !important;
  font-weight: 900 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.single-product .variable-item.selected,
body.single-product .wpcvs-term.selected {
  border-color: var(--orange) !important;
  box-shadow: 0 0 0 4px rgba(255,100,38,.14) !important;
}

@media (max-width: 768px) {
  body.single-product .dgl-line {
    margin-bottom: 26px;
  }

  body.single-product div.product div.images,
  body.single-product div.product div.summary {
    border-radius: 18px;
    padding: 16px !important;
    box-shadow: 0 6px 20px rgba(15, 23, 42, .05);
  }

  body.single-product div.product form.variations_form {
    padding: 15px;
  }

  body.single-product div.product .woocommerce-variation-add-to-cart {
    grid-template-columns: 82px 1fr;
    gap: 10px;
  }

  body.single-product div.product form.cart .quantity input.qty,
  body.single-product div.product form.cart .single_add_to_cart_button {
    height: 56px !important;
  }

  body.single-product div.product form.cart .single_add_to_cart_button {
    font-size: 18px !important;
  }
}

@media (max-width: 430px) {
  body.single-product div.product .woocommerce-variation-add-to-cart {
    grid-template-columns: 1fr;
  }

  body.single-product div.product form.cart .quantity input.qty {
    max-width: 100% !important;
  }

  body.single-product div.product table.variations select {
    font-size: 17px !important;
  }
}


/* v1.0.3: smaller standard typography + full product images + related products fix */

/* Product cards: more standard text sizes */
body .woocommerce ul.products li.product .woocommerce-loop-product__title,
body .products li.product .woocommerce-loop-product__title,
body .aruba-blonwe-fallback-product .woocommerce-loop-product__title {
  font-size: 15px !important;
  line-height: 1.22 !important;
  font-weight: 750 !important;
  letter-spacing: -0.1px !important;
  margin: 8px 0 8px !important;
}

body .woocommerce ul.products li.product .price,
body .products li.product .price,
body .aruba-blonwe-fallback-product .price {
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  margin: 0 0 6px !important;
}

body .woocommerce ul.products li.product .button,
body .products li.product .button,
body .aruba-blonwe-fallback-product .button {
  font-size: 14px !important;
  line-height: 1.15 !important;
  padding: 11px 12px !important;
  min-height: 42px !important;
  margin-top: 12px !important;
  width: auto !important;
}

/* Product cards: show full image, avoid crop */
body .woocommerce ul.products li.product a img,
body .products li.product a img,
body .aruba-blonwe-fallback-product img {
  height: 150px !important;
  width: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  aspect-ratio: auto !important;
  margin: 0 0 12px !important;
  background: #fff !important;
}

/* Make homepage/shop product cards less tall */
body .woocommerce ul.products li.product,
body .products li.product,
body .aruba-blonwe-fallback-product {
  padding: 14px 12px !important;
  min-height: auto !important;
}

/* Related products: force clean smaller grid */
body.single-product .related.products,
body.single-product .upsells.products {
  margin-top: 34px !important;
  clear: both !important;
}

body.single-product .related.products > h2,
body.single-product .upsells.products > h2 {
  font-size: 22px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
  margin: 0 0 16px !important;
  letter-spacing: -0.3px !important;
}

body.single-product .related.products ul.products,
body.single-product .upsells.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border-top: 1px solid var(--border) !important;
  border-left: 1px solid var(--border) !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .related.products ul.products li.product,
body.single-product .upsells.products ul.products li.product {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  padding: 14px 12px !important;
  border-right: 1px solid var(--border) !important;
  border-bottom: 1px solid var(--border) !important;
  background: #fff !important;
  border-radius: 0 !important;
}

body.single-product .related.products ul.products li.product a img,
body.single-product .upsells.products ul.products li.product a img {
  height: 135px !important;
  width: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 0 10px !important;
  aspect-ratio: auto !important;
}

body.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
body.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title {
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 750 !important;
  margin: 6px 0 7px !important;
}

body.single-product .related.products ul.products li.product .price,
body.single-product .upsells.products ul.products li.product .price {
  font-size: 16px !important;
  font-weight: 850 !important;
}

body.single-product .related.products ul.products li.product .button,
body.single-product .upsells.products ul.products li.product .button {
  font-size: 13px !important;
  padding: 10px 11px !important;
  min-height: 38px !important;
  margin-top: 10px !important;
}

/* Single product title and price slightly smaller */
body.single-product div.product .product_title {
  font-size: clamp(25px, 5vw, 40px) !important;
  line-height: 1.08 !important;
}

body.single-product div.product p.price,
body.single-product div.product span.price,
body.single-product div.product .woocommerce-variation-price .price {
  font-size: clamp(24px, 4.4vw, 34px) !important;
}

/* Mobile tuning */
@media (max-width: 430px) {
  body .woocommerce ul.products li.product,
  body .products li.product,
  body .aruba-blonwe-fallback-product {
    padding: 12px 10px !important;
  }

  body .woocommerce ul.products li.product a img,
  body .products li.product a img,
  body .aruba-blonwe-fallback-product img {
    height: 132px !important;
  }

  body .woocommerce ul.products li.product .woocommerce-loop-product__title,
  body .products li.product .woocommerce-loop-product__title,
  body .aruba-blonwe-fallback-product .woocommerce-loop-product__title {
    font-size: 14px !important;
  }

  body .woocommerce ul.products li.product .price,
  body .products li.product .price,
  body .aruba-blonwe-fallback-product .price {
    font-size: 16px !important;
  }

  body.single-product .related.products ul.products li.product a img,
  body.single-product .upsells.products ul.products li.product a img {
    height: 122px !important;
  }
}

/* Tablet/desktop related products stay neat */
@media (min-width: 768px) {
  body.single-product .related.products ul.products,
  body.single-product .upsells.products ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body .woocommerce ul.products li.product a img,
  body .products li.product a img,
  body .aruba-blonwe-fallback-product img {
    height: 170px !important;
  }
}

@media (min-width: 1024px) {
  body.single-product .related.products ul.products,
  body.single-product .upsells.products ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }

  body .woocommerce ul.products li.product a img,
  body .products li.product a img,
  body .aruba-blonwe-fallback-product img {
    height: 185px !important;
  }

  body.single-product .related.products ul.products li.product a img,
  body.single-product .upsells.products ul.products li.product a img {
    height: 160px !important;
  }
}


/* v1.0.4: remove related products completely */
body.single-product .related.products,
body.single-product .upsells.products {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* v1.0.5: remove the top lines on homepage only */
body.home .dgl-line,
body.front-page .dgl-line,
body.page-template-default.home .dgl-line {
  display: none !important;
}

body.home .dgl-header,
body.front-page .dgl-header {
  border-bottom: 0 !important;
}

/* If the homepage product grid starts with a top border, remove only that first top line */
body.home .woocommerce ul.products,
body.front-page .woocommerce ul.products,
body.home .products,
body.front-page .products {
  border-top: 0 !important;
}
