:root{
  --gwlpp-bg:#000;
  --gwlpp-panel:#050505;
  --gwlpp-panel-2:#071a31;
  --gwlpp-blue:#0968c9;
  --gwlpp-blue-2:#2f8df0;
  --gwlpp-blue-soft:rgba(9,104,201,.18);
  --gwlpp-text:#fff;
  --gwlpp-muted:#aab4c2;
  --gwlpp-line:rgba(255,255,255,.13);
  --gwlpp-green:#35d17b;
}

.gwlpp-wrap{
  width:100%;
  max-width:1280px;
  margin:0 auto;
  padding:38px 24px 70px;
  color:var(--gwlpp-text);
  background:transparent;
  box-sizing:border-box;
  font-family:Arial,Helvetica,sans-serif;
}
.gwlpp-wrap *,
.gwlpp-wrap *::before,
.gwlpp-wrap *::after{box-sizing:border-box}
.gwlpp-wrap a{transition:color .2s ease,background .2s ease,border-color .2s ease,transform .2s ease}

/* Product hero: clean black and PreferredPeps-style electric blue */
.gwlpp-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:54px;
  align-items:center;
  min-height:520px;
}
.gwlpp-gallery-card{
  position:relative;
  min-height:500px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(9,104,201,.28);
  border-radius:3px;
  background:
    radial-gradient(ellipse at 50% 45%,rgba(9,104,201,.20) 0%,rgba(9,104,201,.07) 35%,transparent 68%),
    linear-gradient(180deg,#02070e 0%,#000 82%);
}
.gwlpp-gallery-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.42;
  background-image:
    linear-gradient(115deg,transparent 0 47%,rgba(47,141,240,.14) 48%,transparent 49%),
    linear-gradient(65deg,transparent 0 54%,rgba(47,141,240,.10) 55%,transparent 56%);
  background-size:100% 100%;
  z-index:-1;
}
.gwlpp-glow{
  position:absolute;
  width:78%;height:78%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(9,104,201,.30) 0%,rgba(9,104,201,.12) 36%,transparent 72%);
  filter:blur(12px);
  z-index:-2;
}
.gwlpp-image-stage{
  position:relative;
  width:100%;
  height:100%;
  min-height:500px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:28px 18px 58px;
}
.gwlpp-main-image{
  position:relative;
  z-index:2;
  max-width:min(78%,430px)!important;
  width:auto!important;
  max-height:430px!important;
  height:auto!important;
  object-fit:contain;
  filter:drop-shadow(0 18px 26px rgba(0,0,0,.78));
}
.gwlpp-pedestal{
  position:absolute;
  left:50%;bottom:32px;
  transform:translateX(-50%);
  width:72%;height:62px;
  border-radius:50%;
  background:radial-gradient(ellipse at center,rgba(9,104,201,.42) 0%,#071a31 40%,#020509 72%);
  border:1px solid rgba(47,141,240,.72);
  box-shadow:0 -4px 28px rgba(9,104,201,.32),inset 0 10px 24px rgba(255,255,255,.05);
  z-index:1;
}
.gwlpp-wrap .gwlpp-zoom{
  position:absolute!important;
  right:18px!important;top:18px!important;z-index:5!important;
  width:42px!important;height:42px!important;
  min-width:42px!important;max-width:42px!important;
  min-height:42px!important;max-height:42px!important;
  margin:0!important;padding:0!important;
  border:1px solid rgba(47,141,240,.60)!important;
  border-radius:50%!important;
  outline:0!important;box-shadow:none!important;
  background:#061a31!important;color:#fff!important;
  display:grid!important;place-items:center!important;
  cursor:pointer!important;float:none!important;line-height:1!important;
  appearance:none!important;-webkit-appearance:none!important;
}
.gwlpp-wrap .gwlpp-zoom svg{width:18px!important;height:18px!important;display:block!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important}
.gwlpp-wrap .gwlpp-zoom:hover{transform:scale(1.05)!important;background:#0b4e91!important;border-color:#2f8df0!important}
.gwlpp-wrap .gwlpp-zoom:focus,.gwlpp-wrap .gwlpp-zoom:focus-visible{outline:2px solid rgba(47,141,240,.65)!important;outline-offset:3px!important}

.gwlpp-summary{padding:12px 0}
.gwlpp-eyebrow{
  color:#4da0f4;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:12px;
  font-weight:700;
  margin-bottom:16px;
}
.gwlpp-title{
  margin:0 0 20px!important;
  color:#fff!important;
  font-size:clamp(34px,3.7vw,58px)!important;
  line-height:1.04!important;
  font-weight:800!important;
  letter-spacing:-.035em;
  text-transform:none;
}
.gwlpp-price{font-size:30px;font-weight:800;color:#fff;margin-bottom:20px}
.gwlpp-price del{opacity:.45;font-size:.65em;margin-right:8px}.gwlpp-price ins{text-decoration:none;color:#4da0f4}
.gwlpp-stock-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px;color:#aab4c2;font-size:13px}
.gwlpp-stock-dot{width:8px;height:8px;border-radius:50%;background:var(--gwlpp-green);box-shadow:0 0 0 4px rgba(53,209,123,.10)}
.gwlpp-stock-value{margin:0!important;padding:0!important;color:var(--gwlpp-green)!important;font-weight:700!important;background:none!important;line-height:1.4!important}
.gwlpp-stock-value.gwlpp-stock-out-of-stock{color:#ff6565!important}.gwlpp-stock-value.gwlpp-stock-on-backorder{color:#4da0f4!important}
.gwlpp-short-description{color:#b9c4d1;line-height:1.75;margin-top:20px;max-width:650px;font-size:14px}
.gwlpp-short-description p:last-child{margin-bottom:0}
.gwlpp-divider{height:1px;background:rgba(255,255,255,.13);margin:25px 0}

/* Purchase controls - preserve WooCommerce behavior */
.woocommerce div.product .gwlpp-wrap form.cart.gwlpp-main-cart,
.single-product .gwlpp-wrap form.cart.gwlpp-main-cart,
.gwlpp-wrap form.cart.gwlpp-main-cart{
  display:grid!important;
  grid-template-columns:126px minmax(0,1fr)!important;
  grid-template-rows:54px!important;
  gap:12px!important;
  align-items:stretch!important;
  width:100%!important;max-width:none!important;
  margin:0!important;padding:0!important;float:none!important;clear:both!important;
}
.gwlpp-wrap form.cart.gwlpp-main-cart>.gwlpp-qty-control{
  grid-column:1!important;grid-row:1!important;
  display:grid!important;grid-template-columns:36px minmax(0,1fr) 36px!important;align-items:center!important;
  width:126px!important;min-width:126px!important;max-width:126px!important;
  height:54px!important;min-height:54px!important;margin:0!important;padding:0!important;
  float:none!important;clear:none!important;
  border:1px solid rgba(47,141,240,.45)!important;border-radius:3px!important;
  background:#050d18!important;overflow:hidden!important;
}
.gwlpp-wrap .gwlpp-qty-control>button{
  width:36px!important;min-width:36px!important;max-width:36px!important;height:52px!important;min-height:52px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0!important;
  background:transparent!important;color:#fff!important;font-size:20px!important;font-weight:400!important;line-height:1!important;
  display:grid!important;place-items:center!important;cursor:pointer!important;float:none!important;appearance:none!important;-webkit-appearance:none!important;
}
.gwlpp-wrap .gwlpp-qty-control>button:hover{background:rgba(47,141,240,.13)!important;color:#4da0f4!important}
.gwlpp-wrap .gwlpp-qty-input,.gwlpp-wrap .gwlpp-qty-control input.qty{
  display:block!important;position:static!important;float:none!important;width:100%!important;min-width:0!important;max-width:none!important;
  height:52px!important;min-height:52px!important;margin:0!important;padding:0 2px!important;
  border:0!important;border-radius:0!important;outline:0!important;box-shadow:none!important;
  background:transparent!important;color:#fff!important;text-align:center!important;font-size:16px!important;font-weight:600!important;line-height:52px!important;
  -moz-appearance:textfield!important;appearance:textfield!important;
}
.gwlpp-wrap .gwlpp-qty-control input.qty::-webkit-outer-spin-button,.gwlpp-wrap .gwlpp-qty-control input.qty::-webkit-inner-spin-button{-webkit-appearance:none!important;margin:0!important}
.woocommerce div.product .gwlpp-wrap form.cart.gwlpp-main-cart>button.single_add_to_cart_button.gwlpp-main-add,
.single-product .gwlpp-wrap form.cart.gwlpp-main-cart>.gwlpp-main-add,
.gwlpp-wrap form.cart.gwlpp-main-cart>.gwlpp-main-add{
  grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;max-width:none!important;
  height:54px!important;min-height:54px!important;margin:0!important;padding:0 22px!important;float:none!important;clear:none!important;flex:none!important;
  border-radius:3px!important;border:1px solid #2f8df0!important;outline:0!important;
  background:#0968c9!important;color:#fff!important;font-weight:800!important;font-size:14px!important;line-height:1.2!important;
  text-transform:none!important;letter-spacing:0!important;white-space:nowrap!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;
  box-shadow:0 8px 22px rgba(9,104,201,.22),inset 0 1px 0 rgba(255,255,255,.14)!important;transition:.2s ease!important;
}
.gwlpp-wrap form.cart.gwlpp-main-cart>.gwlpp-main-add:hover{transform:translateY(-1px)!important;background:#1478df!important;filter:none!important;box-shadow:0 12px 28px rgba(9,104,201,.34)!important}
.gwlpp-cart-icon{font-size:16px;line-height:1}
.gwlpp-native-cart form.cart{margin:0!important}.gwlpp-native-cart .single_add_to_cart_button{background:#0968c9!important;color:#fff!important;border-radius:3px!important;font-weight:800!important;min-height:50px}
.gwlpp-native-cart .variations select{background:#050d18!important;color:#fff!important;border:1px solid rgba(47,141,240,.4)!important;border-radius:3px!important}.gwlpp-native-cart .quantity input{background:#050d18!important;color:#fff!important;border:1px solid rgba(47,141,240,.4)!important}

.gwlpp-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.gwlpp-trust-item{display:flex;align-items:center;gap:10px;padding:0 15px;color:#dbe6f2;text-transform:none;font-size:11px;line-height:1.45;letter-spacing:.01em;border-right:1px solid rgba(255,255,255,.14)}
.gwlpp-trust-item:first-child{padding-left:0}.gwlpp-trust-item:last-child{border-right:0;padding-right:0}
.gwlpp-trust-icon{width:28px;height:28px;min-width:28px;border:1px solid #0968c9;border-radius:50%;display:grid;place-items:center;color:#4da0f4;font-size:14px}

/* Information and reviews */
.gwlpp-tabs{margin-top:42px;border:1px solid rgba(255,255,255,.13);border-radius:3px;background:#030303;overflow:hidden}
.gwlpp-tab-buttons{display:flex;gap:0;border-bottom:1px solid rgba(255,255,255,.12);padding:0 12px;background:#050505}
.gwlpp-tab-btn{position:relative;border:0;background:transparent;color:#9daabd;padding:19px 22px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}
.gwlpp-tab-btn:after{content:"";position:absolute;left:16px;right:16px;bottom:-1px;height:2px;background:transparent}.gwlpp-tab-btn.is-active{color:#4da0f4}.gwlpp-tab-btn.is-active:after{background:#0968c9}
.gwlpp-tab-panel{padding:0}.gwlpp-specs{width:100%}.gwlpp-spec-row{display:grid;grid-template-columns:190px 1fr;border-bottom:1px solid rgba(255,255,255,.09)}.gwlpp-spec-row:last-child{border-bottom:0}
.gwlpp-spec-name,.gwlpp-spec-value{padding:17px 22px;font-size:13px}.gwlpp-spec-name{font-weight:700;border-right:1px solid rgba(255,255,255,.09)}.gwlpp-spec-value{color:#cbd6e2}.gwlpp-empty-info{padding:22px;color:#9daabd}.gwlpp-reviews-inner{padding:24px;color:#ddd}.gwlpp-reviews-inner #comments,.gwlpp-reviews-inner #review_form_wrapper{color:#ddd}.gwlpp-reviews-inner input,.gwlpp-reviews-inner textarea{background:#050d18!important;color:#fff!important;border:1px solid rgba(47,141,240,.35)!important;border-radius:3px!important}

/* Related products: match the compact blue product cards */
.gwlpp-related{margin-top:42px}.gwlpp-related-heading{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:22px}.gwlpp-related-heading span{height:1px;width:54px;background:linear-gradient(90deg,transparent,#0968c9)}.gwlpp-related-heading span:last-child{background:linear-gradient(90deg,#0968c9,transparent)}
.gwlpp-related-heading h2{margin:0!important;color:#fff!important;text-transform:none;font-size:22px!important;letter-spacing:-.02em!important;font-weight:800!important}
.gwlpp-product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.gwlpp-product-card{position:relative;border:1px solid rgba(255,255,255,.16);border-radius:3px;padding:12px;background:#030303;text-align:left;overflow:hidden;transition:.22s ease}
.gwlpp-product-card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:#0968c9;opacity:.9}.gwlpp-product-card:hover{transform:translateY(-3px);border-color:rgba(47,141,240,.75);box-shadow:0 12px 28px rgba(0,0,0,.35)}
.gwlpp-card-image-link{position:relative;z-index:1;text-decoration:none!important}.gwlpp-card-image-wrap{height:190px;display:flex;align-items:center;justify-content:center;margin-bottom:8px;background:#0968c9;border-radius:2px;overflow:hidden}
.gwlpp-card-image{max-width:100%!important;width:auto!important;max-height:175px!important;height:auto!important;object-fit:contain!important;filter:drop-shadow(0 12px 18px rgba(0,0,0,.5))}
.gwlpp-card-title{position:relative;z-index:1;margin:11px 0 8px!important;font-size:15px!important;line-height:1.35!important;font-weight:700!important;min-height:41px}.gwlpp-card-title a{color:#fff!important;text-decoration:none!important}.gwlpp-card-title a:hover{color:#4da0f4!important}
.gwlpp-card-price{position:relative;z-index:1;color:#fff;font-weight:800;font-size:18px;margin-bottom:13px}.gwlpp-card-price del{font-size:.68em;opacity:.5}.gwlpp-card-price ins{text-decoration:none;color:#4da0f4}
.gwlpp-card-actions{position:relative;z-index:1;display:grid;gap:8px}.gwlpp-card-add{width:100%;min-height:38px;border:1px solid #0968c9!important;border-radius:3px!important;background:#0968c9!important;color:#fff!important;font-weight:700!important;text-transform:none;font-size:11px!important;letter-spacing:0;text-decoration:none!important;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:.2s ease;padding:8px 10px!important}.gwlpp-card-add:hover,.gwlpp-card-add.is-added{background:#1478df!important;border-color:#2f8df0!important}.gwlpp-card-add.is-loading{opacity:.65;pointer-events:none}.gwlpp-view-product{color:#9daabd!important;text-decoration:none!important;font-size:11px!important;font-weight:700!important;letter-spacing:0;text-align:center}.gwlpp-view-product:hover{color:#4da0f4!important}

/* Lightbox */
.gwlpp-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:999999;display:none;align-items:center;justify-content:center;padding:40px}.gwlpp-lightbox.is-open{display:flex}.gwlpp-lightbox img{max-width:min(90vw,900px);max-height:88vh;object-fit:contain}.gwlpp-lightbox-close{position:absolute;right:24px;top:18px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(47,141,240,.65);background:#061a31;color:#fff;font-size:28px;cursor:pointer}

.single-product .gwlpp-wrap .woocommerce-product-gallery,.single-product .gwlpp-wrap .summary.entry-summary{float:none;width:auto;margin:0}.single-product .gwlpp-wrap form.cart:before,.single-product .gwlpp-wrap form.cart:after{display:none!important}

@media (max-width:1024px){
  .gwlpp-wrap{padding:34px 20px 56px}.gwlpp-hero{grid-template-columns:1fr 1fr;gap:30px}.gwlpp-gallery-card,.gwlpp-image-stage{min-height:430px}.gwlpp-main-image{max-height:360px!important}.gwlpp-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  .gwlpp-wrap{padding:24px 14px 44px}.gwlpp-hero{grid-template-columns:1fr;gap:8px}.gwlpp-gallery-card,.gwlpp-image-stage{min-height:380px}.gwlpp-main-image{max-width:72%!important;max-height:320px!important}.gwlpp-zoom{right:12px;top:12px}.gwlpp-summary{padding-top:8px}.gwlpp-title{font-size:clamp(32px,9vw,46px)!important}.gwlpp-price{font-size:28px}
  .woocommerce div.product .gwlpp-wrap form.cart.gwlpp-main-cart,.single-product .gwlpp-wrap form.cart.gwlpp-main-cart,.gwlpp-wrap form.cart.gwlpp-main-cart{grid-template-columns:1fr!important;grid-template-rows:54px 54px!important;gap:10px!important}
  .gwlpp-wrap form.cart.gwlpp-main-cart>.gwlpp-qty-control{grid-column:1!important;grid-row:1!important;width:100%!important;min-width:0!important;max-width:none!important;height:54px!important;min-height:54px!important}
  .woocommerce div.product .gwlpp-wrap form.cart.gwlpp-main-cart>button.single_add_to_cart_button.gwlpp-main-add,.single-product .gwlpp-wrap form.cart.gwlpp-main-cart>.gwlpp-main-add,.gwlpp-wrap form.cart.gwlpp-main-cart>.gwlpp-main-add{grid-column:1!important;grid-row:2!important;height:54px!important;min-height:54px!important}
  .gwlpp-trust-grid{grid-template-columns:1fr;gap:13px}.gwlpp-trust-item{border-right:0;padding:0}.gwlpp-tab-buttons{overflow-x:auto;padding:0 6px}.gwlpp-tab-btn{white-space:nowrap;padding:17px 14px;font-size:11px}.gwlpp-spec-row{grid-template-columns:120px 1fr}.gwlpp-spec-name,.gwlpp-spec-value{padding:14px 12px}.gwlpp-product-grid{grid-template-columns:1fr 1fr;gap:10px}.gwlpp-product-card{padding:10px}.gwlpp-card-image-wrap{height:145px}.gwlpp-card-image{max-height:132px!important}.gwlpp-card-title{font-size:13px!important;min-height:36px}.gwlpp-card-price{font-size:17px}.gwlpp-card-add{font-size:10px!important}
}
@media (max-width:480px){
  .gwlpp-gallery-card,.gwlpp-image-stage{min-height:335px}.gwlpp-main-image{max-height:285px!important}.gwlpp-product-grid{grid-template-columns:1fr}.gwlpp-card-image-wrap{height:210px}.gwlpp-card-image{max-height:195px!important}
}


/* Variation / cart alignment fixes */
.gwlpp-purchase .variations_form{
  width:100%;
}
.gwlpp-native-cart .single_variation_wrap{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.gwlpp-native-cart .woocommerce-variation-add-to-cart{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.gwlpp-native-cart .quantity{
  margin:0!important;
}
.gwlpp-native-cart .single_add_to_cart_button{
  min-height:48px;
}
.gwlpp-tabs{
  clear:both;
  margin-top:35px;
}
.gwlpp-tab-panel[hidden]{
  display:none!important;
}
.gwlpp-tab-buttons{
  display:flex;
  flex-wrap:wrap;
}
.gwlpp-main-image{
  transition:opacity .25s ease, transform .25s ease;
}

/* Product long description tab – version 1.0.4 */
.gwlpp-wrap .gwlpp-long-description{padding:26px 28px 30px;color:#cbd6e2;font-size:14px;line-height:1.85;overflow-wrap:anywhere;min-width:0}
.gwlpp-wrap .gwlpp-long-description p{margin:0 0 16px;color:inherit;line-height:inherit}
.gwlpp-wrap .gwlpp-long-description > :last-child{margin-bottom:0}
.gwlpp-wrap .gwlpp-long-description h1,.gwlpp-wrap .gwlpp-long-description h2,.gwlpp-wrap .gwlpp-long-description h3,.gwlpp-wrap .gwlpp-long-description h4,.gwlpp-wrap .gwlpp-long-description h5,.gwlpp-wrap .gwlpp-long-description h6{color:#fff;margin:22px 0 12px;line-height:1.35;font-weight:700}
.gwlpp-wrap .gwlpp-long-description h2{font-size:22px}.gwlpp-wrap .gwlpp-long-description h3{font-size:18px}
.gwlpp-wrap .gwlpp-long-description ul,.gwlpp-wrap .gwlpp-long-description ol{margin:0 0 18px;padding-left:24px;color:inherit;list-style-position:outside}
.gwlpp-wrap .gwlpp-long-description ul{list-style-type:disc}.gwlpp-wrap .gwlpp-long-description ol{list-style-type:decimal}
.gwlpp-wrap .gwlpp-long-description li{margin:0 0 7px;line-height:1.7}
.gwlpp-wrap .gwlpp-long-description a{color:#4da0f4;text-decoration:underline}
.gwlpp-wrap .gwlpp-long-description img,.gwlpp-wrap .gwlpp-long-description video,.gwlpp-wrap .gwlpp-long-description iframe{max-width:100%;height:auto}
.gwlpp-wrap .gwlpp-long-description .wp-block-embed__wrapper{max-width:100%}
.gwlpp-wrap .gwlpp-long-description table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:0 0 18px}
.gwlpp-wrap .gwlpp-long-description th,.gwlpp-wrap .gwlpp-long-description td{border:1px solid rgba(255,255,255,.17);padding:10px 14px;text-align:left}
.gwlpp-wrap .gwlpp-long-description blockquote{border-left:3px solid #0968c9;margin:16px 0;padding:10px 20px;color:#dce8f7}
.gwlpp-wrap .gwlpp-description-empty{color:#9daabd}
@media(max-width:767px){.gwlpp-wrap .gwlpp-long-description{padding:20px 16px 24px;font-size:13px}.gwlpp-wrap .gwlpp-long-description h2{font-size:19px}}
