
:root{
  --bg:#020609;
  --bg-2:#04111b;
  --panel:#071018;
  --border:rgba(0,153,255,.26);
  --blue:#129cff;
  --cyan:#38c8ff;
  --text:#fff;
  --muted:#a8b4be;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{text-decoration:none}
img{max-width:100%;height:auto}
.pt-shell{width:min(1240px,calc(100% - 48px));margin:0 auto}

/* Header */
.pt-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:#010407;
  border-bottom:1px solid rgba(0,153,255,.18);
}
.admin-bar .pt-header{top:32px}
.pt-header-inner{
  height:82px;
  display:grid;
  grid-template-columns:320px 1fr 155px;
  align-items:center;
  gap:28px;
}
.pt-brand{display:flex;align-items:center}
.pt-brand img{display:block;width:300px;max-height:64px;object-fit:contain;object-position:left center}
.pt-nav{height:100%}
.pt-menu{
  list-style:none;
  margin:0;
  padding:0;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:42px;
}
.pt-menu li{height:100%;position:relative}
.pt-menu a{
  height:100%;
  display:flex;
  align-items:center;
  color:#eef6fb;
  font-size:14px;
  font-weight:650;
  transition:.2s ease;
}
.pt-menu a:hover{color:var(--cyan)}
.pt-menu .current-menu-item>a:after,
.pt-menu .current_page_item>a:after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:12px;
  height:2px;
  border-radius:99px;
  background:var(--blue);
  box-shadow:0 0 9px rgba(18,156,255,.5);
}
.pt-menu .sub-menu{
  display:none;
  position:absolute;
  top:76px;
  left:-16px;
  min-width:210px;
  padding:10px;
  margin:0;
  list-style:none;
  background:#071018;
  border:1px solid var(--border);
  border-radius:8px;
}
.pt-menu li:hover>.sub-menu{display:block}
.pt-menu .sub-menu li{height:auto}
.pt-menu .sub-menu a{height:auto;padding:10px 12px}

.pt-header-tools{display:flex;align-items:center;justify-content:flex-end;gap:10px}
.pt-icon-button,.pt-mobile-toggle{
  position:relative;
  width:36px;height:36px;
  display:inline-flex;
  align-items:center;justify-content:center;
  color:#eef8ff;
  background:transparent;
  border:0;border-radius:50%;
  cursor:pointer;
  transition:.2s ease;
}
.pt-icon-button:hover,.pt-mobile-toggle:hover{color:var(--cyan);background:rgba(0,153,255,.08)}
.pt-icon-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pt-cart-count{
  position:absolute;
  top:-2px;right:-2px;
  min-width:17px;height:17px;
  padding:0 4px;
  display:flex;align-items:center;justify-content:center;
  border-radius:99px;
  background:var(--blue);
  color:#fff;font-size:10px;font-weight:800;
}
.pt-mobile-toggle{display:none;flex-direction:column;gap:4px}
.pt-mobile-toggle span{width:19px;height:2px;background:currentColor;border-radius:2px}

.pt-search-panel,.pt-mobile-menu{display:none;background:#041018;border-top:1px solid rgba(0,153,255,.14)}
.pt-search-panel.is-open,.pt-mobile-menu.is-open{display:block}
.pt-search-panel .pt-shell{padding:14px 0}
.pt-search-panel form{max-width:650px;margin:0 auto}
.pt-search-panel input[type="search"]{
  width:100%;height:44px;
  padding:0 14px;
  color:#fff;background:#071018;border:1px solid #1a3544;border-radius:7px;
}
.pt-search-panel button{display:none}

/* Hero */
.pt-hero{
  position:relative;
  min-height:600px;
  overflow:hidden;
  display:flex;align-items:center;
  background:
    radial-gradient(circle at 79% 44%,rgba(0,153,255,.21) 0%,rgba(0,89,160,.08) 27%,transparent 55%),
    linear-gradient(110deg,#020507 0%,#03080d 58%,#04111b 100%);
  border-bottom:1px solid rgba(0,153,255,.11);
}
.pt-hero:after{
  content:"";
  position:absolute;
  width:570px;height:570px;
  right:2%;top:50%;
  transform:translateY(-50%);
  border-radius:50%;
  border:1px solid rgba(0,174,255,.24);
  box-shadow:0 0 45px rgba(0,153,255,.12),0 0 110px rgba(0,100,255,.08);
  pointer-events:none;
}
.pt-hero-grid{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:43% 57%;
  align-items:center;
  gap:10px;
  padding:54px 0 46px;
}
.pt-eyebrow{
  display:inline-block;
  margin-bottom:20px;
  padding:7px 15px;
  color:#36bdff;
  border:1px solid #078fff;
  border-radius:100px;
  font-size:12px;font-weight:800;letter-spacing:.8px;
}
.pt-hero h1{
  margin:0 0 22px;
  color:#fff;
  font-size:clamp(50px,4.5vw,68px);
  line-height:.98;
  letter-spacing:-2.8px;
  font-weight:800;
}
.pt-hero h1 span{
  background:linear-gradient(90deg,#087dff,#19aaff,#59ccff);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.pt-hero-copy p{
  max-width:500px;
  margin:0 0 30px;
  color:var(--muted);
  font-size:17px;line-height:1.63;
}
.pt-actions{display:flex;flex-wrap:wrap;gap:13px}
.pt-button{
  min-height:50px;padding:0 25px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:7px;font-size:14px;font-weight:750;
  transition:.22s ease;
}
.pt-button:hover{transform:translateY(-2px)}
.pt-button-primary{
  color:#fff;background:linear-gradient(135deg,#0799ff,#086be5);
  border:1px solid rgba(73,192,255,.45);
  box-shadow:0 8px 26px rgba(0,121,255,.2);
}
.pt-button-secondary{color:#eef9ff;background:rgba(3,10,16,.62);border:1px solid #078fff}
.pt-hero-art{
  position:relative;z-index:3;
  min-height:450px;
  display:flex;align-items:center;justify-content:center;
  transform:translateX(4px);
}
.pt-hero-art:after{
  content:"";
  position:absolute;left:6%;right:1%;bottom:8%;
  height:35px;
  background:radial-gradient(ellipse,rgba(0,145,255,.26),transparent 70%);
  filter:blur(16px);z-index:0;
}
.pt-hero-art img{
  position:relative;z-index:2;
  width:94%;max-width:760px;
  filter:drop-shadow(0 28px 36px rgba(0,0,0,.6));
}

/* Sections */
.pt-section{padding:68px 0;background:#020609}
.pt-section-head{
  display:flex;justify-content:space-between;align-items:flex-end;
  gap:20px;margin-bottom:30px;
}
.pt-kicker{margin-bottom:8px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:1.15px}
.pt-section h2{margin:0;font-size:36px;line-height:1.08;letter-spacing:-1px}
.pt-section-head>a{color:#35b8ff;font-size:13px}

/* Categories */
.pt-category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pt-category-card{
  position:relative;overflow:hidden;
  min-height:290px;padding:28px;
  color:#fff;
  border:1px solid var(--border);border-radius:14px;
  background:radial-gradient(circle at 88% 16%,rgba(0,151,255,.13),transparent 38%),linear-gradient(145deg,#0a151e,#03080d);
  box-shadow:0 15px 42px rgba(0,0,0,.23);
  transition:.25s ease;
}
.pt-category-card:hover{transform:translateY(-4px);border-color:rgba(0,174,255,.62)}
.pt-card-number{color:var(--blue);font-size:12px;font-weight:800}
.pt-card-art{height:92px;position:relative;margin:8px 0 4px}
.pt-category-card h3{margin:0 0 11px;font-size:25px;line-height:1.07}
.pt-category-card p{max-width:88%;margin:0 0 20px;color:#aab5bf;font-size:14px;line-height:1.55}
.pt-category-card>span:last-child{color:#38bbff;font-size:13px;font-weight:750}

/* Simple decorative research-supply silhouettes */
.pt-mini-bottle{
  position:absolute;right:28px;bottom:0;width:45px;height:70px;
  border:2px solid rgba(210,239,255,.72);border-radius:8px 8px 12px 12px;
  box-shadow:0 0 18px rgba(0,153,255,.14);
}
.pt-mini-bottle:before{content:"";position:absolute;left:7px;right:7px;top:-13px;height:14px;border:2px solid rgba(210,239,255,.72);border-bottom:0;border-radius:5px 5px 0 0}
.pt-mini-vial{position:absolute;right:65px;bottom:0;width:42px;height:64px;border:2px solid rgba(210,239,255,.7);border-radius:7px 7px 12px 12px}
.pt-mini-syringe{position:absolute;right:2px;bottom:17px;width:92px;height:10px;border:2px solid rgba(210,239,255,.7);border-radius:5px;transform:rotate(-10deg)}
.pt-mini-pen{position:absolute;right:12px;bottom:18px;width:126px;height:18px;border-radius:99px;background:linear-gradient(90deg,#081018,#1d2d38);border:1px solid #3b6179;transform:rotate(-9deg);box-shadow:0 0 18px rgba(0,153,255,.12)}

/* Benefits */
.pt-benefits-section{padding:0 0 58px;background:#020609}
.pt-benefit-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  overflow:hidden;border:1px solid #152733;border-radius:13px;background:#061018;
}
.pt-benefit{min-height:112px;padding:24px 22px;display:flex;gap:14px;border-right:1px solid #152733}
.pt-benefit:last-child{border-right:0}
.pt-benefit b{
  flex:0 0 36px;height:36px;
  display:flex;align-items:center;justify-content:center;
  color:#31baff;border:1px solid #128ee8;border-radius:9px;font-size:12px
}
.pt-benefit strong{display:block;color:#fff;font-size:14px}
.pt-benefit span{display:block;margin-top:6px;color:#8998a5;font-size:11px;line-height:1.4}

/* WooCommerce */
.pt-products .woocommerce ul.products{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:14px!important;margin:0!important;
}
.pt-products .woocommerce ul.products:before,.pt-products .woocommerce ul.products:after{display:none!important}
.pt-products .woocommerce ul.products li.product{
  float:none!important;width:auto!important;margin:0!important;padding:12px!important;
  background:#071018!important;border:1px solid #172b38!important;border-radius:10px!important;
  transition:.22s ease;
}
.pt-products .woocommerce ul.products li.product:hover{transform:translateY(-3px);border-color:#087fe2!important}
.pt-products .woocommerce ul.products li.product img{border-radius:7px}
.pt-products .woocommerce-loop-product__title{color:#fff!important;font-size:13px!important;line-height:1.35}
.pt-products .woocommerce .price{color:#fff!important;font-weight:800;font-size:14px!important}
.pt-products .woocommerce a.button{
  width:100%;margin-top:9px!important;padding:9px 7px!important;text-align:center;
  color:#2ab8ff!important;background:transparent!important;border:1px solid #087ed7!important;border-radius:5px!important;font-size:12px!important;
}
.pt-products .woocommerce a.button:hover{color:#fff!important;background:#087ed7!important}

.pt-shop-page{padding:60px 0 80px;min-height:70vh}
.woocommerce .woocommerce-breadcrumb{color:#82929e}
.woocommerce .woocommerce-breadcrumb a{color:#32b8ff}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{color:#b4c0c9}
.woocommerce ul.products li.product .woocommerce-loop-product__title{color:#fff}
.woocommerce ul.products li.product .price{color:#fff}
.woocommerce div.product{color:#d5e0e7}
.woocommerce div.product .product_title{color:#fff}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:#35b8ff}
.woocommerce button.button.alt,.woocommerce a.button.alt{background:#078fff!important}
.woocommerce-message,.woocommerce-info{background:#071018;color:#dce8ef;border-top-color:#078fff}

/* Info / FAQ */
.pt-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.pt-info-card{padding:31px;border:1px solid #142833;border-radius:14px;background:linear-gradient(145deg,#08121a,#03080d)}
.pt-info-card h3{margin:0 0 12px;font-size:24px}
.pt-info-card p{margin:0;color:#9facb6;line-height:1.65}
.pt-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px 16px}
.pt-faq-grid details{border:1px solid #172b37;border-radius:8px;background:#071018;color:#fff}
.pt-faq-grid summary{cursor:pointer;padding:15px 17px;font-size:13px;font-weight:700}
.pt-faq-grid p{margin:0;padding:0 17px 16px;color:#9eabb5;font-size:12px;line-height:1.55}
.pt-cta{
  margin-top:52px;padding:48px 32px;text-align:center;
  border:1px solid rgba(0,153,255,.23);border-radius:14px;
  background:radial-gradient(circle at 50% 120%,rgba(0,142,255,.18),transparent 48%),#061018;
}
.pt-cta h2{margin:0 0 10px}
.pt-cta p{max-width:620px;margin:0 auto 23px;color:#9caab4}

/* Generic pages */
.pt-generic-page{padding:62px 0 90px;min-height:70vh}
.pt-content-shell{max-width:900px}
.pt-article h1{font-size:42px}
.pt-entry{color:#b5c1c9;line-height:1.75}
.pt-entry a{color:#35b8ff}

/* Footer */
.pt-footer{padding:46px 0 18px;background:#010407;border-top:1px solid #11232f}
.pt-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:38px}
.pt-footer-brand img{width:260px;max-height:60px;object-fit:contain;object-position:left center}
.pt-footer p{max-width:330px;color:#8897a2;font-size:12px;line-height:1.55}
.pt-footer h4{margin:5px 0 13px;font-size:13px}
.pt-footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:8px}
.pt-footer a{color:#9facb6;font-size:12px}.pt-footer a:hover{color:var(--cyan)}
.pt-footer-bottom{margin-top:34px;padding-top:16px;border-top:1px solid #10222d;display:flex;justify-content:space-between;color:#71808b;font-size:11px}

/* Responsive */
@media(max-width:1050px){
  .pt-header-inner{grid-template-columns:270px 1fr 145px}
  .pt-brand img{width:255px;max-height:56px}
  .pt-menu{gap:24px}
  .pt-hero-grid{grid-template-columns:45% 55%}
  .pt-hero h1{font-size:52px}
  .pt-hero-art img{width:105%;max-width:700px}
  .pt-products .woocommerce ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:782px){.admin-bar .pt-header{top:46px}}
@media(max-width:767px){
  .pt-shell{width:min(100% - 28px,1240px)}
  .pt-header-inner{height:70px;grid-template-columns:1fr auto}
  .pt-brand img{width:220px;max-height:50px}
  .pt-nav{display:none}.pt-mobile-toggle{display:inline-flex}
  .pt-header-tools{gap:4px}
  .pt-mobile-menu-list{list-style:none;margin:0;padding:14px 0}
  .pt-mobile-menu-list a{display:block;padding:11px 0;color:#fff;font-weight:650}

  .pt-hero{min-height:auto}
  .pt-hero:after{width:330px;height:330px;right:50%;top:74%;transform:translate(50%,-50%);opacity:.55}
  .pt-hero-grid{grid-template-columns:1fr;padding:50px 0 30px;text-align:center}
  .pt-hero h1{font-size:42px;letter-spacing:-1.7px}
  .pt-hero-copy p{margin-left:auto;margin-right:auto}
  .pt-actions{justify-content:center}.pt-button{width:100%}
  .pt-hero-art{min-height:330px;transform:none}.pt-hero-art img{width:100%;max-width:560px}

  .pt-section{padding:50px 0}
  .pt-section-head{flex-direction:column;align-items:flex-start}
  .pt-category-grid,.pt-benefit-grid,.pt-info-grid,.pt-faq-grid{grid-template-columns:1fr}
  .pt-benefit{border-right:0;border-bottom:1px solid #152733}.pt-benefit:last-child{border-bottom:0}
  .pt-products .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-footer-grid{grid-template-columns:1fr 1fr}.pt-footer-brand{grid-column:1/-1}
}
@media(max-width:480px){
  .pt-products .woocommerce ul.products{grid-template-columns:1fr}
  .pt-footer-grid{grid-template-columns:1fr}
  .pt-footer-brand{grid-column:auto}
  .pt-footer-bottom{flex-direction:column;gap:6px}
}


/* =========================================================
   v1.1 VISUAL REFINEMENT — closer to approved homepage mockup
   ========================================================= */

/* Slightly tighter, stronger header */
.pt-header-inner{
  height:78px;
  grid-template-columns:355px 1fr 150px;
  gap:22px;
}
.pt-brand img{
  width:338px;
  max-height:66px;
}
.pt-menu{
  gap:38px;
}
.pt-menu a{
  font-size:14px;
}
.pt-menu .current-menu-item>a:after,
.pt-menu .current_page_item>a:after{
  bottom:10px;
}

/* Hero proportions */
.pt-hero{
  min-height:575px;
  background:
    radial-gradient(circle at 80% 43%,rgba(0,153,255,.19) 0%,rgba(0,89,160,.065) 26%,transparent 53%),
    linear-gradient(110deg,#020507 0%,#03080d 58%,#04111b 100%);
}

/* Replace the dominant full circle with a subtler partial arc */
.pt-hero:after{
  width:520px;
  height:520px;
  right:-18px;
  top:48%;
  border:2px solid transparent;
  border-top-color:rgba(0,174,255,.34);
  border-right-color:rgba(0,174,255,.28);
  box-shadow:
    22px -18px 42px rgba(0,153,255,.10),
    45px -5px 90px rgba(0,100,255,.055);
  transform:translateY(-50%) rotate(12deg);
}

.pt-hero-grid{
  grid-template-columns:46% 54%;
  gap:0;
  padding:44px 0 40px;
}

.pt-hero-copy{
  padding-right:8px;
}

/* Exact 3 visual lines on desktop */
.pt-hero h1{
  margin:0 0 20px;
  font-size:clamp(52px,4.2vw,62px);
  line-height:.99;
  letter-spacing:-2.7px;
}
.pt-h1-line{
  display:block;
  white-space:nowrap;
}
.pt-h1-blue{
  background:linear-gradient(90deg,#087dff,#19aaff,#59ccff);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.pt-hero-copy p{
  max-width:470px;
  font-size:16px;
  line-height:1.6;
  margin-bottom:27px;
}

/* Make products the visual anchor of the right side */
.pt-hero-art{
  min-height:455px;
  justify-content:flex-start;
  transform:translateX(-26px);
}
.pt-hero-art img{
  width:118%;
  max-width:890px;
}
.pt-hero-art:after{
  left:2%;
  right:0;
  bottom:7%;
  height:34px;
  opacity:.9;
}

/* Bring next section closer, like the concept */
.pt-section{
  padding-top:58px;
  padding-bottom:58px;
}
.pt-categories-section{
  padding-top:52px;
}

/* Slightly more premium category proportions */
.pt-category-card{
  min-height:275px;
  padding:26px 27px;
}
.pt-card-art{
  height:82px;
}
.pt-category-card h3{
  font-size:24px;
}

/* Tablet */
@media(max-width:1050px){
  .pt-header-inner{
    height:76px;
    grid-template-columns:300px 1fr 140px;
  }
  .pt-brand img{
    width:285px;
    max-height:58px;
  }
  .pt-menu{
    gap:22px;
  }
  .pt-hero-grid{
    grid-template-columns:47% 53%;
  }
  .pt-hero h1{
    font-size:48px;
  }
  .pt-hero-art{
    transform:translateX(-18px);
  }
  .pt-hero-art img{
    width:114%;
    max-width:735px;
  }
  .pt-hero:after{
    width:440px;
    height:440px;
    right:-70px;
  }
}

/* Mobile: allow natural wrapping and centre composition */
@media(max-width:767px){
  .pt-header-inner{
    height:70px;
  }
  .pt-brand img{
    width:225px;
    max-height:50px;
  }
  .pt-hero-grid{
    grid-template-columns:1fr;
    padding:48px 0 28px;
  }
  .pt-h1-line{
    white-space:normal;
  }
  .pt-hero h1{
    font-size:42px;
  }
  .pt-hero-art{
    transform:none;
    justify-content:center;
  }
  .pt-hero-art img{
    width:100%;
    max-width:570px;
  }
  .pt-hero:after{
    width:320px;
    height:320px;
    right:50%;
    top:75%;
    transform:translate(50%,-50%) rotate(12deg);
    opacity:.55;
  }
}


/* =========================================================
   v1.2 TARGETED VISUAL FIXES
   ========================================================= */

/* Headline: first two lines white, only Delivered uses gradient */
.pt-hero h1 .pt-h1-line{
  background:none !important;
  -webkit-background-clip:border-box !important;
  background-clip:border-box !important;
  -webkit-text-fill-color:#ffffff !important;
  color:#ffffff !important;
}

.pt-hero h1 .pt-h1-blue{
  background:linear-gradient(90deg,#087dff,#19aaff,#59ccff) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  color:transparent !important;
}

/* Slightly stronger logo presence */
.pt-header-inner{
  grid-template-columns:375px 1fr 150px;
}
.pt-brand img{
  width:355px;
  max-height:68px;
}

/* Right-side product composition */
.pt-hero-art{
  transform:translateX(-38px);
}
.pt-hero-art img{
  width:124%;
  max-width:930px;
}

/* Decorative arc pushed right and softened */
.pt-hero:after{
  width:535px;
  height:535px;
  right:-110px;
  top:49%;
  border-top-color:rgba(0,174,255,.22);
  border-right-color:rgba(0,174,255,.17);
  box-shadow:
    28px -18px 36px rgba(0,153,255,.065),
    52px -2px 78px rgba(0,100,255,.035);
}

/* Tablet */
@media(max-width:1050px){
  .pt-header-inner{
    grid-template-columns:315px 1fr 140px;
  }
  .pt-brand img{
    width:300px;
    max-height:60px;
  }
  .pt-hero-art{
    transform:translateX(-22px);
  }
  .pt-hero-art img{
    width:118%;
    max-width:770px;
  }
  .pt-hero:after{
    right:-120px;
  }
}

/* Mobile */
@media(max-width:767px){
  .pt-header-inner{
    grid-template-columns:1fr auto;
  }
  .pt-brand img{
    width:230px;
    max-height:50px;
  }
  .pt-hero-art{
    transform:none;
  }
  .pt-hero-art img{
    width:100%;
    max-width:570px;
  }
  .pt-hero:after{
    right:50%;
  }
}


/* =========================================================
   v1.3 — OPERATIONAL HOMEPAGE REFINEMENT
   Dynamic category imagery + concept-matched lower sections
   ========================================================= */

/* Keep hero stable; just reduce the visual weight of the arc */
.pt-hero:after{
  opacity:.72;
  right:-155px;
}
.pt-hero-art img{
  width:127%;
  max-width:950px;
}

/* Category section closer to approved concept */
.pt-categories-section{
  padding-top:52px;
  padding-bottom:36px;
}

.pt-category-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.pt-category-card{
  min-height:250px;
  padding:0;
  display:grid;
  grid-template-columns:54% 46%;
  align-items:stretch;
  overflow:hidden;
  color:#fff;
  border:1px solid rgba(58,126,169,.48);
  border-radius:13px;
  background:
    radial-gradient(circle at 90% 15%,rgba(0,151,255,.11),transparent 42%),
    linear-gradient(145deg,#09131c,#03080d);
}

.pt-category-card:hover{
  transform:translateY(-4px);
  border-color:rgba(0,174,255,.70);
  box-shadow:0 14px 38px rgba(0,82,155,.11);
}

.pt-card-copy{
  position:relative;
  z-index:2;
  padding:24px 8px 23px 24px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}

.pt-card-number{
  margin-bottom:32px;
}

.pt-category-card h3{
  margin:0 0 9px;
  font-size:23px;
  line-height:1.03;
  letter-spacing:-.5px;
}

.pt-category-card p{
  max-width:100%;
  margin:0 0 17px;
  color:#9fadb7;
  font-size:12.5px;
  line-height:1.52;
}

.pt-category-card .pt-card-copy>span:last-child{
  margin-top:auto;
  color:#38bbff;
  font-size:12px;
  font-weight:750;
  white-space:nowrap;
}

.pt-card-image{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px 14px 14px 0;
  background:
    radial-gradient(circle at 50% 50%,rgba(0,142,255,.09),transparent 63%);
}

.pt-card-image img{
  display:block;
  width:100%;
  max-width:170px;
  max-height:190px;
  object-fit:contain;
  filter:drop-shadow(0 16px 20px rgba(0,0,0,.50));
  transition:transform .25s ease;
}

.pt-category-card:hover .pt-card-image img{
  transform:scale(1.035);
}

/* Trust strip: more compact, like reference */
.pt-benefits-section{
  padding-bottom:48px;
}
.pt-benefit-grid{
  border-color:#173343;
}
.pt-benefit{
  min-height:98px;
  padding:20px 18px;
}
.pt-benefit b{
  flex-basis:39px;
  height:39px;
  border-radius:10px;
  font-size:12px;
  box-shadow:inset 0 0 12px rgba(0,153,255,.06);
}
.pt-benefit strong{
  font-size:13px;
}
.pt-benefit span{
  font-size:10.5px;
}

/* Essential supplies cards */
.pt-products-section{
  padding-top:28px;
}
.pt-products .woocommerce ul.products li.product{
  padding:10px!important;
  background:linear-gradient(145deg,#0a1117,#05090d)!important;
}
.pt-products .woocommerce ul.products li.product img{
  aspect-ratio:1/1;
  object-fit:contain;
  background:#080e13;
}
.pt-products .woocommerce-loop-product__title{
  min-height:35px;
}
.pt-products .woocommerce a.button{
  min-height:34px;
  display:flex!important;
  align-items:center;
  justify-content:center;
}

/* Responsive category cards */
@media(max-width:1050px){
  .pt-category-card{
    grid-template-columns:58% 42%;
  }
  .pt-card-copy{
    padding-left:20px;
  }
  .pt-card-image img{
    max-width:140px;
  }
}

@media(max-width:767px){
  .pt-hero-art img{
    width:100%;
  }
  .pt-category-card{
    min-height:220px;
    grid-template-columns:58% 42%;
  }
  .pt-card-copy{
    padding:21px 5px 20px 20px;
  }
  .pt-card-number{
    margin-bottom:24px;
  }
  .pt-card-image{
    padding-right:10px;
  }
  .pt-card-image img{
    max-width:145px;
    max-height:160px;
  }
}

@media(max-width:440px){
  .pt-category-card{
    grid-template-columns:1fr;
  }
  .pt-card-image{
    position:absolute;
    width:42%;
    right:0;
    top:28px;
    bottom:18px;
    opacity:.72;
  }
  .pt-card-copy{
    padding-right:39%;
  }
}


/* =========================================================
   v1.4 — HEADER LOGO SCALE
   ========================================================= */

.pt-header-inner{
  grid-template-columns:430px 1fr 150px;
  gap:18px;
}

.pt-brand img{
  width:405px;
  max-width:100%;
  max-height:72px;
}

/* Keep navigation visually centred despite larger logo */
.pt-nav{
  transform:translateX(-10px);
}

/* Tablet */
@media(max-width:1050px){
  .pt-header-inner{
    grid-template-columns:340px 1fr 140px;
  }
  .pt-brand img{
    width:325px;
    max-height:62px;
  }
  .pt-nav{
    transform:none;
  }
}

/* Mobile */
@media(max-width:767px){
  .pt-header-inner{
    grid-template-columns:1fr auto;
  }
  .pt-brand img{
    width:245px;
    max-height:52px;
  }
}


/* =========================================================
   v1.5 — WOOCOMMERCE FUNCTIONAL LAUNCH PASS
   ========================================================= */

/* Common commerce shells */
.pt-generic-commerce{
  padding-top:54px;
  padding-bottom:84px;
}
.pt-content-shell-commerce{
  max-width:1180px;
}
.pt-commerce-page .pt-article>h1,
.pt-product-archive .woocommerce-products-header__title{
  margin:0 0 28px;
  color:#fff;
  font-size:38px;
  line-height:1.05;
  letter-spacing:-1.2px;
}
.pt-commerce-page .pt-entry{
  color:#c6d1d8;
  line-height:1.6;
}

/* Woo notices */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner{
  margin:0 0 20px!important;
  padding:15px 18px!important;
  color:#dce8ef!important;
  background:#071018!important;
  border:1px solid #17384b!important;
  border-top:2px solid var(--blue)!important;
  border-radius:8px!important;
}
.woocommerce-error{
  border-top-color:#e55a68!important;
}
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a{
  color:#38bbff!important;
}

/* Inputs / selects / textareas */
.woocommerce input.input-text,
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="number"],
.woocommerce textarea,
.woocommerce select,
.woocommerce .select2-container--default .select2-selection--single,
.woocommerce .select2-container--default .select2-selection--multiple{
  min-height:45px;
  padding:9px 12px;
  color:#f1f7fa!important;
  background:#071018!important;
  border:1px solid #244050!important;
  border-radius:7px!important;
  box-shadow:none!important;
}
.woocommerce textarea{min-height:105px}
.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus{
  outline:none!important;
  border-color:#078fff!important;
  box-shadow:0 0 0 2px rgba(7,143,255,.10)!important;
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered{
  color:#f1f7fa!important;
  line-height:43px!important;
}
.woocommerce .select2-dropdown{
  color:#e8f2f7!important;
  background:#071018!important;
  border-color:#244050!important;
}
.woocommerce .select2-results__option--highlighted[aria-selected]{
  background:#087ed7!important;
}

/* Global buttons */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit{
  min-height:42px;
  padding:0 17px!important;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  color:#eaf8ff!important;
  background:#071018!important;
  border:1px solid #087ed7!important;
  border-radius:6px!important;
  font-weight:700!important;
  transition:.2s ease!important;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover{
  color:#fff!important;
  background:#087ed7!important;
}
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt{
  color:#fff!important;
  background:linear-gradient(135deg,#0799ff,#086be5)!important;
  border-color:#078fff!important;
}

/* Product archives / category / shop */
.pt-product-archive .pt-shop-page{
  padding-top:50px;
}
.woocommerce .woocommerce-breadcrumb{
  margin:0 0 20px!important;
  color:#7f909b!important;
  font-size:12px!important;
}
.woocommerce .woocommerce-breadcrumb a{color:#36b8ff!important}
.woocommerce .woocommerce-result-count{
  margin:13px 0 24px!important;
  color:#8fa0aa!important;
  font-size:12px;
}
.woocommerce .woocommerce-ordering{
  margin-bottom:24px!important;
}
.woocommerce .woocommerce-ordering select{
  min-height:40px;
  color:#dce7ee;
  background:#071018;
  border:1px solid #244050;
  border-radius:6px;
  padding:0 34px 0 10px;
}

.woocommerce ul.products{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px!important;
  margin:0!important;
}
.woocommerce ul.products:before,
.woocommerce ul.products:after{display:none!important}
.woocommerce ul.products li.product{
  float:none!important;
  width:auto!important;
  margin:0!important;
  padding:12px!important;
  overflow:hidden;
  background:linear-gradient(145deg,#0a1117,#05090d)!important;
  border:1px solid #172b38!important;
  border-radius:11px!important;
  transition:.22s ease;
}
.woocommerce ul.products li.product:hover{
  transform:translateY(-3px);
  border-color:#087fe2!important;
  box-shadow:0 12px 30px rgba(0,91,178,.10);
}
.woocommerce ul.products li.product a img{
  aspect-ratio:1/1;
  width:100%!important;
  margin:0 0 12px!important;
  object-fit:contain;
  background:#080e13;
  border-radius:7px;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  min-height:40px;
  padding:0!important;
  color:#fff!important;
  font-size:14px!important;
  line-height:1.38!important;
}
.woocommerce ul.products li.product .price{
  min-height:24px;
  margin:6px 0 8px!important;
  color:#f5f9fb!important;
  font-size:14px!important;
  font-weight:800!important;
}
.woocommerce ul.products li.product .price del{
  color:#70808a!important;
}
.woocommerce ul.products li.product .price ins{
  color:#36b9ff!important;
  text-decoration:none!important;
}
.woocommerce ul.products li.product .button{
  width:100%;
  margin-top:5px!important;
}
.woocommerce span.onsale{
  min-width:auto!important;
  min-height:auto!important;
  margin:10px!important;
  padding:5px 9px!important;
  line-height:1!important;
  color:#fff!important;
  background:#087ed7!important;
  border-radius:5px!important;
  font-size:11px!important;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination{
  margin-top:34px;
}
.woocommerce nav.woocommerce-pagination ul{
  border:0!important;
  display:inline-flex!important;
  gap:7px;
}
.woocommerce nav.woocommerce-pagination ul li{
  border:0!important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  min-width:38px;
  height:38px;
  display:flex!important;
  align-items:center;
  justify-content:center;
  color:#aab8c2!important;
  background:#071018!important;
  border:1px solid #1d3747!important;
  border-radius:6px;
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover{
  color:#fff!important;
  background:#087ed7!important;
  border-color:#087ed7!important;
}

/* Single product */
.pt-product-page .pt-shop-page{
  padding-top:50px;
}
.woocommerce div.product{
  color:#c9d4db!important;
}
.woocommerce div.product div.images,
.woocommerce div.product div.summary{
  margin-bottom:54px!important;
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
  overflow:hidden;
  background:#080e13;
  border:1px solid #172b38;
  border-radius:12px;
}
.woocommerce div.product div.images img{
  object-fit:contain;
}
.woocommerce div.product .product_title{
  color:#fff!important;
  font-size:38px!important;
  line-height:1.08!important;
  letter-spacing:-1px!important;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  color:#38bbff!important;
  font-size:24px!important;
  font-weight:800!important;
}
.woocommerce div.product .woocommerce-product-details__short-description{
  color:#aebbc4!important;
  line-height:1.7;
}
.woocommerce div.product form.cart{
  margin-top:24px!important;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
}
.woocommerce .quantity .qty{
  width:72px!important;
  min-height:44px!important;
  text-align:center;
}
.woocommerce div.product form.cart .button{
  min-height:44px!important;
}
.woocommerce div.product .product_meta{
  margin-top:25px;
  padding-top:18px;
  border-top:1px solid #17303e;
  color:#758792;
  font-size:12px;
}
.woocommerce div.product .product_meta a{color:#35b8ff}
.woocommerce div.product .woocommerce-tabs ul.tabs{
  margin:0 0 0!important;
  padding:0!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs:before{border-bottom-color:#17303e!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  margin:0 6px 0 0!important;
  background:#071018!important;
  border-color:#17303e!important;
  border-radius:6px 6px 0 0!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{
  background:#0a1721!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  color:#aebbc4!important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{
  color:#fff!important;
}
.woocommerce div.product .woocommerce-tabs .panel{
  padding:24px!important;
  margin:0 0 45px!important;
  color:#aebbc4!important;
  background:#071018;
  border:1px solid #17303e;
  border-top:0;
  border-radius:0 0 9px 9px;
  line-height:1.7;
}
.woocommerce div.product .woocommerce-tabs .panel h2{color:#fff}
.woocommerce .related.products>h2,
.woocommerce .upsells.products>h2{
  margin:0 0 24px;
  color:#fff;
  font-size:28px;
}

/* Variable products */
.woocommerce div.product form.cart .variations{
  width:100%!important;
  margin-bottom:12px!important;
  color:#dce8ef!important;
}
.woocommerce div.product form.cart .variations th{
  padding:8px 14px 8px 0!important;
  color:#fff!important;
}
.woocommerce div.product form.cart .variations td{
  padding:5px 0!important;
}
.woocommerce div.product form.cart .variations select{
  width:100%;
  max-width:340px;
}
.woocommerce-variation-price{
  margin:10px 0;
}
.reset_variations{color:#35b8ff!important}

/* Cart */
.woocommerce-cart-form{
  margin-bottom:26px;
}
.woocommerce table.shop_table{
  overflow:hidden;
  color:#d6e1e7!important;
  background:#071018!important;
  border:1px solid #17303e!important;
  border-collapse:separate!important;
  border-radius:10px!important;
}
.woocommerce table.shop_table th{
  padding:14px!important;
  color:#fff!important;
  background:#09151e!important;
  border-color:#17303e!important;
  font-size:12px;
}
.woocommerce table.shop_table td{
  padding:14px!important;
  border-color:#17303e!important;
}
.woocommerce table.shop_table a{
  color:#e9f3f7;
}
.woocommerce table.shop_table .product-name a:hover{
  color:#38bbff;
}
.woocommerce-cart table.cart img{
  width:72px!important;
  border-radius:6px;
}
.woocommerce a.remove{
  color:#9babb5!important;
}
.woocommerce a.remove:hover{
  color:#fff!important;
  background:#d94f5f!important;
}
.woocommerce-cart table.cart td.actions .coupon{
  display:flex;
  gap:8px;
}
.woocommerce-cart table.cart td.actions .coupon .input-text{
  width:190px!important;
  margin:0!important;
}
.woocommerce .cart-collaterals{
  margin-top:26px;
}
.woocommerce .cart-collaterals .cart_totals{
  width:48%!important;
  padding:24px;
  background:#071018;
  border:1px solid #17303e;
  border-radius:10px;
}
.woocommerce .cart-collaterals .cart_totals h2{
  margin:0 0 16px;
  color:#fff;
  font-size:24px;
}
.woocommerce .wc-proceed-to-checkout{
  padding:12px 0 0!important;
}
.woocommerce .wc-proceed-to-checkout a.checkout-button{
  width:100%;
  margin:0!important;
}

/* Empty cart */
.woocommerce-cart .cart-empty{
  padding:18px!important;
}
.woocommerce-cart .return-to-shop{
  margin-top:20px;
}

/* Checkout */
.woocommerce-checkout .col2-set{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  width:100%!important;
}
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{
  float:none!important;
  width:100%!important;
  padding:23px;
  background:#071018;
  border:1px solid #17303e;
  border-radius:10px;
}
.woocommerce-checkout h3{
  color:#fff!important;
}
.woocommerce-checkout #order_review_heading{
  margin-top:32px;
}
.woocommerce-checkout #order_review{
  padding:23px;
  background:#071018;
  border:1px solid #17303e;
  border-radius:10px;
}
.woocommerce-checkout #payment{
  color:#c8d4db!important;
  background:#09151e!important;
  border:1px solid #17303e;
  border-radius:9px!important;
}
.woocommerce-checkout #payment ul.payment_methods{
  border-bottom-color:#17303e!important;
}
.woocommerce-checkout #payment div.payment_box{
  color:#b7c4cd!important;
  background:#0d1c27!important;
}
.woocommerce-checkout #payment div.payment_box:before{
  border-bottom-color:#0d1c27!important;
}
.woocommerce-checkout .woocommerce-privacy-policy-text{
  color:#8999a4;
  font-size:12px;
}
.woocommerce-checkout .woocommerce-privacy-policy-text a{
  color:#35b8ff;
}
.woocommerce-checkout #place_order{
  width:100%;
  min-height:50px!important;
  margin-top:8px!important;
}

/* My Account */
.woocommerce-account .woocommerce{
  display:grid;
  grid-template-columns:250px 1fr;
  gap:24px;
}
.woocommerce-account .woocommerce-MyAccount-navigation{
  width:100%!important;
  float:none!important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none;
  margin:0;
  padding:10px;
  background:#071018;
  border:1px solid #17303e;
  border-radius:10px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block;
  padding:11px 12px;
  color:#aebbc4;
  border-radius:6px;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover{
  color:#fff;
  background:#0d1c27;
}
.woocommerce-account .woocommerce-MyAccount-content{
  width:100%!important;
  float:none!important;
  padding:24px;
  color:#becbd3;
  background:#071018;
  border:1px solid #17303e;
  border-radius:10px;
}
.woocommerce-account .woocommerce-MyAccount-content a{
  color:#35b8ff;
}
.woocommerce-account .woocommerce-Addresses{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.woocommerce-account .woocommerce-Address{
  width:100%!important;
  float:none!important;
}

/* Login / registration */
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.lost_reset_password{
  margin:0!important;
  padding:24px!important;
  background:#071018;
  border:1px solid #17303e!important;
  border-radius:10px!important;
}
.woocommerce .woocommerce-form-login__rememberme{
  display:block;
  margin:3px 0 15px;
}
.woocommerce-LostPassword a{color:#35b8ff!important}

/* Order received / order details */
.woocommerce-order-received .woocommerce-order-overview{
  padding:18px!important;
  background:#071018;
  border:1px solid #17303e;
  border-radius:9px;
}
.woocommerce-order-received .woocommerce-order-overview li{
  color:#aebbc4;
  border-right-color:#244050!important;
}
.woocommerce-order-received .woocommerce-order-overview strong{
  color:#fff;
}

/* Search results */
.pt-search-results-page{
  min-height:68vh;
  padding:56px 0 82px;
}
.pt-page-heading{
  margin-bottom:28px;
}
.pt-page-heading h1{
  margin:0;
  color:#fff;
  font-size:38px;
  letter-spacing:-1px;
}
.pt-search-results-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.pt-search-result-card{
  overflow:hidden;
  background:#071018;
  border:1px solid #17303e;
  border-radius:10px;
}
.pt-search-result-image{
  height:220px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#080e13;
}
.pt-search-result-image img{
  width:100%;
  height:100%;
  object-fit:contain;
}
.pt-search-placeholder{
  color:#3bbfff;
  font-weight:800;
}
.pt-search-result-copy{
  padding:16px;
}
.pt-search-type{
  color:#159eff;
  font-size:10px;
  font-weight:800;
  letter-spacing:1px;
}
.pt-search-result-copy h2{
  margin:7px 0 8px;
  font-size:17px;
  line-height:1.3;
}
.pt-search-result-copy h2 a{
  color:#fff;
}
.pt-search-result-copy p{
  color:#8fa0aa;
  font-size:12px;
  line-height:1.5;
}
.pt-search-price{
  margin:7px 0;
  color:#fff;
  font-weight:800;
}
.pt-search-link{
  color:#38bbff;
  font-size:12px;
  font-weight:700;
}
.pt-pagination{
  margin-top:32px;
}
.pt-pagination .nav-links{
  display:flex;
  gap:7px;
}
.pt-pagination a,
.pt-pagination span{
  min-width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#aab8c2;
  background:#071018;
  border:1px solid #1d3747;
  border-radius:6px;
}
.pt-pagination span.current,
.pt-pagination a:hover{
  color:#fff;
  background:#087ed7;
  border-color:#087ed7;
}
.pt-empty-state,
.pt-error-card{
  max-width:760px;
  margin:0 auto;
  padding:60px 34px;
  text-align:center;
  background:#071018;
  border:1px solid #17303e;
  border-radius:13px;
}
.pt-empty-state h2,
.pt-error-card h1{
  margin:0 0 12px;
  color:#fff;
}
.pt-empty-state p,
.pt-error-card p{
  margin:0 auto 24px;
  color:#93a3ad;
}
.pt-error-page{
  min-height:65vh;
  padding:80px 0;
}

/* Mobile commerce */
@media(max-width:900px){
  .woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .woocommerce-account .woocommerce{
    grid-template-columns:210px 1fr;
  }
}

@media(max-width:767px){
  .pt-generic-commerce{
    padding-top:40px;
    padding-bottom:64px;
  }
  .pt-commerce-page .pt-article>h1,
  .pt-product-archive .woocommerce-products-header__title{
    font-size:31px;
  }
  .woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px!important;
  }
  .woocommerce ul.products li.product{
    padding:9px!important;
  }
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size:12px!important;
  }

  /* Single product stacks */
  .woocommerce div.product div.images,
  .woocommerce div.product div.summary{
    float:none!important;
    width:100%!important;
  }
  .woocommerce div.product .product_title{
    font-size:31px!important;
  }

  /* Cart becomes stacked cards */
  .woocommerce-cart .woocommerce table.shop_table_responsive tr,
  .woocommerce-page .woocommerce table.shop_table_responsive tr{
    display:block;
    margin-bottom:12px;
    border-bottom:1px solid #17303e;
  }
  .woocommerce table.shop_table td{
    padding:10px!important;
  }
  .woocommerce-cart table.cart td.actions .coupon{
    float:none!important;
    width:100%;
    margin-bottom:10px;
  }
  .woocommerce-cart table.cart td.actions .coupon .input-text{
    width:100%!important;
  }
  .woocommerce-cart table.cart td.actions .button{
    width:100%!important;
    margin-top:8px!important;
  }
  .woocommerce .cart-collaterals .cart_totals{
    float:none!important;
    width:100%!important;
  }

  /* Checkout */
  .woocommerce-checkout .col2-set{
    grid-template-columns:1fr;
  }
  .woocommerce-checkout .col2-set .col-1,
  .woocommerce-checkout .col2-set .col-2,
  .woocommerce-checkout #order_review{
    padding:17px;
  }

  /* Account */
  .woocommerce-account .woocommerce{
    grid-template-columns:1fr;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation ul{
    display:flex;
    gap:5px;
    overflow-x:auto;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation li{
    flex:0 0 auto;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation li a{
    white-space:nowrap;
    font-size:12px;
  }
  .woocommerce-account .woocommerce-Addresses{
    grid-template-columns:1fr;
  }

  /* Search */
  .pt-search-results-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }
  .pt-search-result-image{
    height:160px;
  }
}

@media(max-width:430px){
  .woocommerce ul.products{
    grid-template-columns:1fr;
  }
  .pt-search-results-grid{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   v1.6 — LAUNCH POLISH
   Woo Blocks + product page + shop categories
   ========================================================= */

/* ---------- Shop category cards ---------- */
.woocommerce ul.products li.product-category{
  position:relative;
  padding:10px!important;
  overflow:hidden;
  background:linear-gradient(145deg,#08121a,#03080d)!important;
  border:1px solid #17384b!important;
  border-radius:11px!important;
}
.woocommerce ul.products li.product-category:hover{
  border-color:#078fff!important;
  box-shadow:0 14px 34px rgba(0,105,205,.12);
}
.woocommerce ul.products li.product-category a{
  display:block;
}
.woocommerce ul.products li.product-category a img{
  aspect-ratio:1/1!important;
  width:100%!important;
  height:auto!important;
  margin:0 0 12px!important;
  object-fit:cover!important;
  background:#071018!important;
  border-radius:8px!important;
}
.woocommerce ul.products li.product-category .woocommerce-loop-category__title{
  min-height:auto!important;
  margin:0!important;
  padding:2px 2px 7px!important;
  color:#fff!important;
  font-size:17px!important;
  line-height:1.25!important;
}
.woocommerce ul.products li.product-category .count,
.woocommerce ul.products li.product-category mark.count{
  color:#5fc8ff!important;
  background:transparent!important;
  font-size:12px!important;
  font-weight:700!important;
}

/* Give the shop heading useful breathing room */
.post-type-archive-product .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header{
  margin-bottom:24px;
}
.post-type-archive-product .woocommerce-products-header__title,
.tax-product_cat .woocommerce-products-header__title{
  margin-bottom:0!important;
}

/* ---------- Single product: premium two-column layout ---------- */
.single-product .pt-shop-page{
  padding-top:42px;
}
.single-product .pt-shop-page>.pt-shell{
  width:min(1280px,calc(100% - 48px));
}
.single-product .woocommerce div.product{
  display:grid;
  grid-template-columns:minmax(0,1.06fr) minmax(390px,.94fr);
  column-gap:54px;
  row-gap:30px;
  align-items:start;
}
.single-product .woocommerce div.product:before,
.single-product .woocommerce div.product:after{
  display:none!important;
}
.single-product .woocommerce div.product .woocommerce-product-gallery{
  grid-column:1;
  width:100%!important;
  float:none!important;
  margin:0!important;
}
.single-product .woocommerce div.product .summary{
  grid-column:2;
  width:100%!important;
  float:none!important;
  margin:0!important;
  padding-top:6px;
}
.single-product .woocommerce div.product .woocommerce-tabs,
.single-product .woocommerce div.product .related,
.single-product .woocommerce div.product .upsells{
  grid-column:1/-1;
  width:100%;
}
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
  min-height:560px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    radial-gradient(circle at 50% 46%,rgba(0,126,255,.08),transparent 55%),
    #071018;
}
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image{
  width:100%;
}
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img{
  width:100%!important;
  height:560px!important;
  object-fit:contain!important;
  padding:22px;
  background:transparent!important;
}
.single-product .woocommerce div.product .product_title{
  margin:0 0 16px!important;
  font-size:clamp(34px,3.1vw,46px)!important;
  line-height:1.04!important;
}
.single-product .woocommerce div.product p.price,
.single-product .woocommerce div.product span.price{
  margin:0 0 18px!important;
}
.single-product .woocommerce div.product .stock{
  margin:0 0 18px;
  font-weight:700;
}
.single-product .woocommerce div.product .stock.out-of-stock{
  color:#ff5e6d!important;
}
.single-product .woocommerce div.product .woocommerce-product-details__short-description{
  margin-bottom:20px;
}
.single-product .woocommerce div.product .product_meta{
  clear:both;
}

/* Back-in-stock notifier plugin: make it fit the theme */
.single-product .cwginstock-subscribe-form,
.single-product .cwginstock-subscribe-form .panel{
  width:100%!important;
  max-width:none!important;
}
.single-product .cwginstock-subscribe-form .panel{
  overflow:hidden;
  margin:16px 0 20px!important;
  background:#071018!important;
  border:1px solid #087ed7!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
.single-product .cwginstock-subscribe-form .panel-heading,
.single-product .cwginstock-panel-heading{
  padding:15px 18px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#0b82d8,#075fa8)!important;
  border:0!important;
  font-weight:800!important;
}
.single-product .cwginstock-subscribe-form .panel-body,
.single-product .cwginstock-panel-body{
  padding:18px!important;
  background:#071018!important;
}
.single-product .cwginstock-subscribe-form input{
  color:#fff!important;
  background:#09151e!important;
  border:1px solid #254355!important;
  border-radius:6px!important;
}
.single-product .cwginstock-subscribe-form button,
.single-product .cwginstock-subscribe-form input[type="submit"]{
  min-height:42px!important;
  color:#fff!important;
  background:#078fff!important;
  border:1px solid #27acff!important;
  border-radius:6px!important;
  font-weight:750!important;
}

/* ---------- WooCommerce Cart + Checkout BLOCKS ---------- */
.wc-block-cart,
.wc-block-checkout{
  --wc-block-components-color-accent:#129cff;
  --wc-block-components-color-background:#020609;
  color:#dce7ed!important;
}

.wc-block-cart .wc-block-components-sidebar-layout,
.wc-block-checkout .wc-block-components-sidebar-layout{
  gap:52px;
}

.wc-block-cart .wc-block-components-main,
.wc-block-checkout .wc-block-components-main{
  width:auto!important;
}

.wc-block-cart .wc-block-components-sidebar,
.wc-block-checkout .wc-block-components-sidebar{
  width:auto!important;
}

/* Headings */
.wc-block-cart h2,
.wc-block-cart h3,
.wc-block-checkout h2,
.wc-block-checkout h3,
.wc-block-components-checkout-step__heading{
  color:#fff!important;
}

/* Text */
.wc-block-cart,
.wc-block-checkout,
.wc-block-components-product-name,
.wc-block-components-product-metadata,
.wc-block-components-totals-item,
.wc-block-components-radio-control__label,
.wc-block-components-checkbox__label{
  color:#d7e1e7!important;
}
.wc-block-components-product-name{
  color:#39baff!important;
  font-weight:700!important;
}
.wc-block-components-product-metadata{
  color:#95a6b1!important;
}

/* Panels / summaries */
.wc-block-components-sidebar,
.wc-block-components-totals-wrapper,
.wc-block-components-order-summary,
.wc-block-checkout__payment-method,
.wc-block-components-radio-control-accordion-option{
  background:#050b0f!important;
  border-color:#203847!important;
}
.wc-block-components-sidebar{
  border:1px solid #203847!important;
  border-radius:8px!important;
}
.wc-block-components-totals-wrapper{
  border-top-color:#203847!important;
}
.wc-block-components-order-summary{
  border-bottom-color:#203847!important;
}

/* Cart table lines */
.wc-block-cart-items,
.wc-block-cart-items td,
.wc-block-cart-items th{
  border-color:#203847!important;
}
.wc-block-cart-items__header{
  color:#aebdc6!important;
}
.wc-block-cart-item__image img{
  border-radius:6px!important;
}

/* Quantity selector */
.wc-block-components-quantity-selector{
  background:#071018!important;
  border-color:#264454!important;
  border-radius:6px!important;
}
.wc-block-components-quantity-selector input{
  color:#fff!important;
}
.wc-block-components-quantity-selector button{
  color:#a9bbc5!important;
}
.wc-block-components-quantity-selector button:hover{
  color:#38bbff!important;
}

/* Forms: override the white Woo Blocks fields */
.wc-block-components-text-input input,
.wc-block-components-text-input textarea,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-address-form input,
.wc-block-components-address-form select,
.wc-block-components-address-form textarea{
  color:#f3f8fb!important;
  background:#071018!important;
  border:1px solid #2a4656!important;
  border-radius:6px!important;
  box-shadow:none!important;
}
.wc-block-components-text-input label,
.wc-block-components-combobox .wc-block-components-combobox-control label{
  color:#97a8b3!important;
}
.wc-block-components-text-input input:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus{
  border-color:#078fff!important;
  box-shadow:0 0 0 1px #078fff!important;
}

/* Dropdowns */
.wc-block-components-combobox .components-form-token-field__suggestions-list,
.components-popover__content{
  color:#fff!important;
  background:#071018!important;
  border-color:#294657!important;
}

/* Shipping + payment radio rows */
.wc-block-components-radio-control .wc-block-components-radio-control__option{
  padding:14px 12px!important;
  color:#dce7ed!important;
  background:#050b0f!important;
  border-color:#294657!important;
}
.wc-block-components-radio-control__input{
  accent-color:#129cff!important;
}

/* Coupon accordions / links */
.wc-block-components-panel__button,
.wc-block-components-totals-coupon-link,
.wc-block-components-totals-coupon__button{
  color:#38bbff!important;
}

/* Main CTA buttons — fixes the grey Checkout / Place Order seen in screenshots */
.wc-block-components-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button{
  min-height:48px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#0799ff,#086be5)!important;
  border:1px solid #2bb3ff!important;
  border-radius:6px!important;
  box-shadow:0 8px 22px rgba(0,122,255,.16)!important;
  font-weight:800!important;
}
.wc-block-components-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover{
  background:linear-gradient(135deg,#13a9ff,#0875f0)!important;
}

/* Terms + privacy */
.wc-block-checkout__terms,
.wc-block-checkout__terms a,
.wc-block-components-checkout-return-to-cart-button{
  color:#91a3ae!important;
}
.wc-block-checkout__terms a,
.wc-block-components-checkout-return-to-cart-button:hover{
  color:#38bbff!important;
}

/* Order summary total */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label,
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value{
  color:#fff!important;
  font-size:20px!important;
}

/* ---------- Product thumbnail standardisation ---------- */
.woocommerce ul.products li.product a img,
.pt-products .woocommerce ul.products li.product img{
  background:
    radial-gradient(circle at 50% 45%,rgba(0,131,255,.08),transparent 58%),
    #071018!important;
}

/* ---------- Responsive launch polish ---------- */
@media(max-width:980px){
  .single-product .woocommerce div.product{
    grid-template-columns:1fr 1fr;
    column-gap:30px;
  }
  .single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
    min-height:450px;
  }
  .single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img{
    height:450px!important;
  }
  .wc-block-cart .wc-block-components-sidebar-layout,
  .wc-block-checkout .wc-block-components-sidebar-layout{
    gap:28px;
  }
}

@media(max-width:767px){
  .single-product .pt-shop-page>.pt-shell{
    width:min(100% - 28px,1280px);
  }
  .single-product .woocommerce div.product{
    display:block;
  }
  .single-product .woocommerce div.product .woocommerce-product-gallery{
    margin-bottom:28px!important;
  }
  .single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
    min-height:360px;
  }
  .single-product .woocommerce div.product div.images .woocommerce-product-gallery__image img{
    height:360px!important;
    padding:14px;
  }

  /* Woo Blocks normally stacks itself; these keep spacing neat */
  .wc-block-cart .wc-block-components-sidebar-layout,
  .wc-block-checkout .wc-block-components-sidebar-layout{
    display:block!important;
  }
  .wc-block-cart .wc-block-components-main,
  .wc-block-checkout .wc-block-components-main,
  .wc-block-cart .wc-block-components-sidebar,
  .wc-block-checkout .wc-block-components-sidebar{
    width:100%!important;
  }
  .wc-block-cart .wc-block-components-sidebar,
  .wc-block-checkout .wc-block-components-sidebar{
    margin-top:28px!important;
  }
}


/* =========================================================
   v1.7 — COMMERCE ALIGNMENT + DESKTOP CHECKOUT BALANCE
   Homepage remains untouched.
   ========================================================= */

/* Guarantee all WooCommerce catalogue/product pages align with
   the same centred site width as the header and footer. */
.pt-woocommerce-shell{
  width:min(1280px,calc(100% - 48px))!important;
  max-width:1280px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.post-type-archive-product .pt-shop-page,
.tax-product_cat .pt-shop-page,
.single-product .pt-shop-page{
  padding-top:44px;
}

/* Catalogue headings now align inside the centred content area */
.post-type-archive-product .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header{
  margin:0 0 26px!important;
}

.post-type-archive-product .woocommerce-products-header__title,
.tax-product_cat .woocommerce-products-header__title{
  margin:0!important;
}

/* Shop landing: three category cards should fill the available
   width instead of appearing as three cells of a four-column grid. */
.post-type-archive-product .woocommerce ul.products{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:20px!important;
}

.post-type-archive-product .woocommerce ul.products li.product-category{
  width:auto!important;
  max-width:none!important;
}

/* Category product archives retain a premium four-column grid.
   With only two products, cards remain a sensible ~300px width
   rather than expanding across half the screen. */
.tax-product_cat .woocommerce ul.products{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}

/* Single product is now contained by the explicit Woo shell. */
.single-product .woocommerce div.product{
  width:100%;
  max-width:1280px;
  margin:0 auto;
}

/* Product gallery remains substantial but no longer touches viewport edge. */
.single-product .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{
  border-radius:12px;
}

/* ---------- WooCommerce Blocks: reliable desktop columns ---------- */

/* Basket */
.pt-cart-page .wc-block-cart .wc-block-components-sidebar-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr)!important;
  gap:46px!important;
  align-items:start!important;
}

.pt-cart-page .wc-block-cart .wc-block-components-main,
.pt-cart-page .wc-block-cart .wc-block-components-sidebar{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

/* Checkout */
.pt-checkout-page .wc-block-checkout .wc-block-components-sidebar-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.7fr) minmax(330px,.8fr)!important;
  gap:48px!important;
  align-items:start!important;
}

.pt-checkout-page .wc-block-checkout .wc-block-components-main,
.pt-checkout-page .wc-block-checkout .wc-block-components-sidebar{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

/* Keep summary visible while completing long checkout form. */
@media(min-width:901px){
  .pt-cart-page .wc-block-cart .wc-block-components-sidebar,
  .pt-checkout-page .wc-block-checkout .wc-block-components-sidebar{
    position:sticky!important;
    top:108px!important;
    align-self:start!important;
  }
}

/* Give cart/checkout a little more usable desktop width */
.pt-cart-page .pt-content-shell-commerce,
.pt-checkout-page .pt-content-shell-commerce{
  max-width:1220px!important;
}

/* More deliberate spacing after page titles */
.pt-cart-page .pt-article>h1,
.pt-checkout-page .pt-article>h1{
  margin-bottom:34px!important;
}

/* Tablet */
@media(max-width:1050px){
  .post-type-archive-product .woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .tax-product_cat .woocommerce ul.products{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .pt-cart-page .wc-block-cart .wc-block-components-sidebar-layout,
  .pt-checkout-page .wc-block-checkout .wc-block-components-sidebar-layout{
    grid-template-columns:minmax(0,1.5fr) minmax(280px,.85fr)!important;
    gap:28px!important;
  }
}

/* Mobile */
@media(max-width:767px){
  .pt-woocommerce-shell{
    width:min(100% - 28px,1280px)!important;
  }

  .post-type-archive-product .woocommerce ul.products,
  .tax-product_cat .woocommerce ul.products{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }

  .pt-cart-page .wc-block-cart .wc-block-components-sidebar-layout,
  .pt-checkout-page .wc-block-checkout .wc-block-components-sidebar-layout{
    display:block!important;
  }

  .pt-cart-page .wc-block-cart .wc-block-components-sidebar,
  .pt-checkout-page .wc-block-checkout .wc-block-components-sidebar{
    position:static!important;
    width:100%!important;
    margin-top:28px!important;
  }
}

@media(max-width:430px){
  .post-type-archive-product .woocommerce ul.products,
  .tax-product_cat .woocommerce ul.products{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   v1.8 — SMALL CHECKOUT / BASKET POLISH
   ========================================================= */

/*
 Woo Blocks applies wc-block-components-sidebar-layout to the
 same element as wc-block-cart / wc-block-checkout. Earlier
 selectors targeted it as a descendant. These selectors match
 the live markup directly.
*/

/* Basket: restore compact product + totals sidebar layout */
.pt-cart-page .wc-block-cart.wc-block-components-sidebar-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.72fr) minmax(300px,.72fr)!important;
  gap:46px!important;
  align-items:start!important;
}

.pt-cart-page .wc-block-cart__main{
  grid-column:1!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

.pt-cart-page .wc-block-cart__sidebar{
  grid-column:2!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  position:sticky!important;
  top:108px!important;
  align-self:start!important;
}

/* Checkout: explicitly retain form + order summary columns */
.pt-checkout-page .wc-block-checkout.wc-block-components-sidebar-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.68fr) minmax(320px,.78fr)!important;
  gap:48px!important;
  align-items:start!important;
}

.pt-checkout-page .wc-block-checkout__main{
  grid-column:1!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}

.pt-checkout-page .wc-block-checkout__sidebar{
  grid-column:2!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  position:sticky!important;
  top:108px!important;
  align-self:start!important;
}

/* Prevent shipping/payment radio circles covering the first letters */
.wc-block-components-radio-control .wc-block-components-radio-control__option{
  position:relative!important;
  padding:14px 14px 14px 42px!important;
  min-height:42px!important;
}

.wc-block-components-radio-control .wc-block-components-radio-control__input{
  position:absolute!important;
  left:12px!important;
  top:50%!important;
  margin:0!important;
  transform:translateY(-50%)!important;
}

.wc-block-components-radio-control__label,
.wc-block-components-radio-control__description{
  display:block!important;
  padding-left:0!important;
}

/* Slightly cleaner payment accordion spacing */
.wc-block-checkout__payment-method .wc-block-components-radio-control__option{
  border-bottom:1px solid #203847!important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control__option:last-child{
  border-bottom:0!important;
}

.wc-block-components-radio-control-accordion-content{
  padding:0 14px 14px 42px!important;
  color:#b8c6ce!important;
  line-height:1.5!important;
}

/* Keep checkout comfortably below the header */
.pt-checkout-page .pt-generic-commerce{
  padding-top:58px!important;
}

/* Tighten order-summary product description so the card stays compact */
.pt-checkout-page .wc-block-components-order-summary-item__description{
  line-height:1.35!important;
}

.pt-checkout-page .wc-block-components-order-summary-item__description p{
  margin-top:4px!important;
  margin-bottom:0!important;
}

/* Basket sidebar panel should look deliberately compact */
.pt-cart-page .wc-block-cart__sidebar .wc-block-components-sidebar{
  width:100%!important;
  border-radius:9px!important;
}

.pt-cart-page .wc-block-cart__sidebar .wc-block-cart__submit{
  margin-top:14px!important;
}

/* Tablet */
@media(max-width:1050px){
  .pt-cart-page .wc-block-cart.wc-block-components-sidebar-layout{
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr)!important;
    gap:28px!important;
  }

  .pt-checkout-page .wc-block-checkout.wc-block-components-sidebar-layout{
    grid-template-columns:minmax(0,1.45fr) minmax(285px,.82fr)!important;
    gap:28px!important;
  }
}

/* Mobile */
@media(max-width:767px){
  .pt-cart-page .wc-block-cart.wc-block-components-sidebar-layout,
  .pt-checkout-page .wc-block-checkout.wc-block-components-sidebar-layout{
    display:block!important;
  }

  .pt-cart-page .wc-block-cart__main,
  .pt-cart-page .wc-block-cart__sidebar,
  .pt-checkout-page .wc-block-checkout__main,
  .pt-checkout-page .wc-block-checkout__sidebar{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    position:static!important;
  }

  .pt-cart-page .wc-block-cart__sidebar,
  .pt-checkout-page .wc-block-checkout__sidebar{
    margin-top:28px!important;
  }
}


/* =========================================================
   v1.9 — HERO ARC ALIGNMENT + BASKET TOTALS SPACING
   ========================================================= */

/* ---------------------------------------------------------
   HOMEPAGE HERO
   Reposition the decorative blue arc so it visually sits
   behind / around the right-hand product composition instead
   of looking detached at the far edge of the page.
   --------------------------------------------------------- */
@media(min-width:1060px){
  .pt-hero:after{
    width:500px!important;
    height:500px!important;

    /* Align to the right-hand content column rather than viewport edge */
    right:max(48px, calc((100vw - 1240px) / 2 + 70px))!important;
    top:50%!important;

    transform:translateY(-50%) rotate(12deg)!important;

    opacity:.58!important;

    border-top-color:rgba(0,174,255,.22)!important;
    border-right-color:rgba(0,174,255,.18)!important;

    box-shadow:
      18px -12px 34px rgba(0,153,255,.065),
      38px 0 72px rgba(0,100,255,.035)!important;
  }
}

/* Tablet: keep the arc behind the product artwork */
@media(min-width:768px) and (max-width:1059px){
  .pt-hero:after{
    width:420px!important;
    height:420px!important;
    right:-35px!important;
    top:50%!important;
    transform:translateY(-50%) rotate(12deg)!important;
    opacity:.50!important;
  }
}


/* ---------------------------------------------------------
   WOOCOMMERCE BLOCK BASKET
   Prevent totals / prices being pushed into the card border.
   --------------------------------------------------------- */

.pt-cart-page .wc-block-cart__sidebar{
  min-width:330px!important;
  overflow:visible!important;
}

.pt-cart-page .wc-block-cart__sidebar .wc-block-components-sidebar{
  box-sizing:border-box!important;
  overflow:visible!important;
}

/* Give every totals block comfortable left/right padding */
.pt-cart-page .wc-block-cart__sidebar .wc-block-components-totals-wrapper{
  box-sizing:border-box!important;
  padding-left:16px!important;
  padding-right:16px!important;
  overflow:visible!important;
}

/* Coupon row */
.pt-cart-page .wc-block-cart__sidebar .wc-block-components-totals-coupon{
  box-sizing:border-box!important;
}

/* Force label and amount to share the row cleanly */
.pt-cart-page .wc-block-cart__sidebar .wc-block-components-totals-item{
  width:100%!important;
  box-sizing:border-box!important;

  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;

  gap:14px!important;
  overflow:visible!important;
}

/* Labels can wrap if necessary */
.pt-cart-page .wc-block-cart__sidebar .wc-block-components-totals-item__label{
  min-width:0!important;
  flex:1 1 auto!important;
  padding-right:4px!important;
}

/* Amounts must remain fully visible inside the right border */
.pt-cart-page .wc-block-cart__sidebar .wc-block-components-totals-item__value{
  width:auto!important;
  min-width:72px!important;
  max-width:none!important;

  flex:0 0 auto!important;

  padding-left:8px!important;
  padding-right:4px!important;

  text-align:right!important;
  white-space:nowrap!important;

  overflow:visible!important;
  text-overflow:clip!important;
}

/* Estimated total gets slightly more breathing room */
.pt-cart-page .wc-block-cart__sidebar .wc-block-components-totals-footer-item{
  padding-top:4px!important;
  padding-bottom:4px!important;
}

/* Keep checkout button aligned with the totals content */
.pt-cart-page .wc-block-cart__sidebar .wc-block-cart__submit{
  box-sizing:border-box!important;
  padding-left:16px!important;
  padding-right:16px!important;
  padding-bottom:14px!important;
}

/* Desktop basket proportions */
@media(min-width:1060px){
  .pt-cart-page .wc-block-cart.wc-block-components-sidebar-layout{
    grid-template-columns:minmax(0,1.65fr) 340px!important;
    gap:44px!important;
  }
}

/* Tablet */
@media(min-width:768px) and (max-width:1059px){
  .pt-cart-page .wc-block-cart.wc-block-components-sidebar-layout{
    grid-template-columns:minmax(0,1fr) 315px!important;
    gap:26px!important;
  }

  .pt-cart-page .wc-block-cart__sidebar{
    min-width:315px!important;
  }
}

/* Mobile remains stacked */
@media(max-width:767px){
  .pt-cart-page .wc-block-cart__sidebar{
    min-width:0!important;
  }

  .pt-cart-page .wc-block-cart__sidebar .wc-block-components-totals-wrapper{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}


/* =========================================================
   v2.0 — FINAL LAUNCH HARDENING
   Accessibility, navigation and edge-state polish.
   ========================================================= */

/* Skip navigation */
.pt-skip-link{
  position:fixed;
  z-index:99999;
  left:16px;
  top:12px;
  padding:11px 16px;
  color:#fff;
  background:#087ed7;
  border:1px solid #4bc4ff;
  border-radius:6px;
  font-weight:750;
  transform:translateY(-150%);
  transition:transform .15s ease;
}
.pt-skip-link:focus{
  transform:translateY(0);
}

/* Strong, consistent keyboard focus without changing mouse appearance */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible{
  outline:2px solid #38bbff!important;
  outline-offset:3px!important;
}

/* Navigation focus states */
.pt-menu a:focus-visible,
.pt-mobile-menu-list a:focus-visible,
.pt-footer a:focus-visible{
  border-radius:4px;
}

/* Search form hardening */
.pt-search-panel form{
  width:100%;
}
.pt-search-panel .search-field,
.pt-search-panel input[type="search"]{
  width:100%;
  min-height:46px;
  box-sizing:border-box;
  color:#fff;
  background:#071018;
  border:1px solid #244050;
  border-radius:7px;
}
.pt-search-panel .search-field::placeholder,
.pt-search-panel input[type="search"]::placeholder{
  color:#8496a1;
}

/* Product images should never spill outside their cards */
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product-category img,
.woocommerce-product-gallery img{
  max-width:100%;
}

/* Long product names / prices should remain contained */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.wc-block-components-product-name{
  overflow-wrap:anywhere;
}

/* WooCommerce notices should not overflow on narrow devices */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner{
  box-sizing:border-box!important;
  max-width:100%;
  overflow-wrap:anywhere;
}

/* Footer: accommodate extra legal links cleanly */
.pt-footer-grid>div a{
  line-height:1.55;
}

/* Useful touch targets on mobile */
@media(max-width:767px){
  .pt-icon-button,
  .pt-mobile-toggle{
    min-width:42px;
    min-height:42px;
  }

  .pt-mobile-menu-list a{
    display:block;
    padding:11px 0;
  }

  .woocommerce a.button,
  .woocommerce button.button,
  .wc-block-components-button{
    min-height:44px!important;
  }
}

/* Respect reduced-motion preference */
@media(prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}



/* =========================================================
   v2.8 — HERO BLEND CORRECTION
   Exact v2.4 artwork; broad baked transparency, no square.
   ========================================================= */

.pt-hero-art{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
}

.pt-hero-art img{
  position:relative!important;
  z-index:2!important;
  width:118%!important;
  max-width:900px!important;
  height:auto!important;
  background:transparent!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
  filter:drop-shadow(0 28px 36px rgba(0,0,0,.46))!important;
}

/* One clean circular motif behind the hero products */
.pt-hero-art::before{
  content:""!important;
  position:absolute!important;
  z-index:0!important;

  width:535px!important;
  height:535px!important;

  left:55%!important;
  top:49%!important;
  transform:translate(-50%,-50%)!important;

  border-radius:50%!important;
  border:1px solid rgba(0,174,255,.24)!important;

  box-shadow:
    0 0 46px rgba(0,153,255,.10),
    0 0 115px rgba(0,100,255,.065)!important;

  pointer-events:none!important;
}

/* Ground glow sits between circle and product artwork */
.pt-hero-art::after{
  z-index:1!important;
}

/* Disable old page-level competing circle */
.pt-hero::after{
  opacity:0!important;
}

/* Tablet */
@media(max-width:1050px){
  .pt-hero-art img{
    width:110%!important;
    max-width:690px!important;
  }

  .pt-hero-art::before{
    width:430px!important;
    height:430px!important;
    left:53%!important;
  }
}

/* Mobile */
@media(max-width:767px){
  .pt-hero-art img{
    width:100%!important;
    max-width:560px!important;
  }

  .pt-hero-art::before{
    width:330px!important;
    height:330px!important;
    left:50%!important;
  }
}




/* =========================================================
   v2.9 — HERO REFINEMENT
   Subtle size/position/halo/fade tuning only.
   ========================================================= */

@media(min-width:1060px){
  .pt-hero-grid{
    grid-template-columns:42% 58%!important;
  }

  .pt-hero-art{
    transform:translateX(-4px)!important;
  }

  .pt-hero-art img{
    width:128%!important;
    max-width:980px!important;
    transform:translateX(24px)!important;
    filter:drop-shadow(0 30px 40px rgba(0,0,0,.42))!important;
  }

  .pt-hero-art::before{
    width:600px!important;
    height:600px!important;
    left:59%!important;
    top:49%!important;
    border-color:rgba(0,174,255,.14)!important;
    box-shadow:
      0 0 58px rgba(0,153,255,.075),
      0 0 135px rgba(0,100,255,.045)!important;
  }

  .pt-hero-art::after{
    left:13%!important;
    right:-4%!important;
    bottom:6%!important;
    height:48px!important;
    background:radial-gradient(
      ellipse,
      rgba(0,145,255,.20),
      rgba(0,94,180,.08) 42%,
      transparent 74%
    )!important;
    filter:blur(22px)!important;
  }
}

@media(min-width:768px) and (max-width:1059px){
  .pt-hero-art{
    transform:translateX(4px)!important;
  }

  .pt-hero-art img{
    width:116%!important;
    max-width:735px!important;
    transform:translateX(12px)!important;
  }

  .pt-hero-art::before{
    width:470px!important;
    height:470px!important;
    left:57%!important;
    border-color:rgba(0,174,255,.14)!important;
    box-shadow:
      0 0 48px rgba(0,153,255,.07),
      0 0 110px rgba(0,100,255,.04)!important;
  }
}

@media(max-width:767px){
  .pt-hero-art img{
    width:104%!important;
    max-width:580px!important;
    transform:none!important;
  }

  .pt-hero-art::before{
    width:345px!important;
    height:345px!important;
    left:50%!important;
    border-color:rgba(0,174,255,.13)!important;
    box-shadow:
      0 0 42px rgba(0,153,255,.065),
      0 0 90px rgba(0,100,255,.035)!important;
  }
}




/* =========================================================
   v3.0 — TRUE TRANSPARENT HERO
   Product image has no baked background or blue glow.
   The website itself supplies the circle / lighting.
   ========================================================= */

.pt-hero-art{
  position:relative!important;
  isolation:isolate!important;
  overflow:visible!important;
}

/* Transparent product cutout */
.pt-hero-art img{
  position:relative!important;
  z-index:2!important;
  width:118%!important;
  max-width:900px!important;
  height:auto!important;
  background:transparent!important;
  transform:translateX(18px)!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
  filter:drop-shadow(0 24px 30px rgba(0,0,0,.38))!important;
}

/* The actual hero circle now sits fully behind the transparent products */
.pt-hero-art::before{
  content:""!important;
  position:absolute!important;
  z-index:0!important;
  width:585px!important;
  height:585px!important;
  left:58%!important;
  top:49%!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  border:1px solid rgba(0,174,255,.18)!important;
  background:
    radial-gradient(circle at 50% 48%,
      rgba(0,126,220,.10) 0%,
      rgba(0,91,165,.055) 43%,
      rgba(0,45,86,.018) 66%,
      transparent 76%)!important;
  box-shadow:
    0 0 56px rgba(0,153,255,.075),
    0 0 135px rgba(0,100,255,.04)!important;
  pointer-events:none!important;
}

/* Very subtle grounding glow only — no image box */
.pt-hero-art::after{
  content:""!important;
  position:absolute!important;
  z-index:1!important;
  left:19%!important;
  right:0!important;
  bottom:7%!important;
  height:34px!important;
  background:radial-gradient(
    ellipse,
    rgba(0,145,255,.11),
    rgba(0,90,170,.035) 46%,
    transparent 74%
  )!important;
  filter:blur(20px)!important;
  pointer-events:none!important;
}

/* Remove the older page-level circle so there is only one motif */
.pt-hero::after{
  opacity:0!important;
}

@media(max-width:1050px){
  .pt-hero-art img{
    width:110%!important;
    max-width:720px!important;
    transform:translateX(8px)!important;
  }

  .pt-hero-art::before{
    width:465px!important;
    height:465px!important;
    left:55%!important;
  }
}

@media(max-width:767px){
  .pt-hero-art img{
    width:100%!important;
    max-width:560px!important;
    transform:none!important;
  }

  .pt-hero-art::before{
    width:340px!important;
    height:340px!important;
    left:50%!important;
  }
}



/* =========================================================
   v3.1 — HERO SIZE REFINEMENT
   Reduce hero product cluster by ~10% and nudge right slightly
   so the copy has more breathing room and more of the circle shows.
   ========================================================= */

.pt-hero-art img{
  width:106%!important;
  max-width:810px!important;
  transform:translateX(34px)!important;
}

.pt-hero-art::before{
  width:585px!important;
  height:585px!important;
  left:60%!important;
  top:49%!important;
}

.pt-hero-art::after{
  left:24%!important;
  right:-2%!important;
}

@media(max-width:1050px){
  .pt-hero-art img{
    width:102%!important;
    max-width:660px!important;
    transform:translateX(16px)!important;
  }

  .pt-hero-art::before{
    width:450px!important;
    height:450px!important;
    left:57%!important;
  }
}

@media(max-width:767px){
  .pt-hero-art img{
    width:94%!important;
    max-width:520px!important;
    transform:none!important;
  }

  .pt-hero-art::before{
    width:330px!important;
    height:330px!important;
    left:50%!important;
  }
}


/* =========================================================
   v3.3 — HERO BALANCE REFINEMENT
   Slightly reduce the hero product cluster and enlarge/centre
   the circular motif so the composition sits more comfortably
   within the hero artwork area.
   ========================================================= */

.pt-hero-art img{
  width:94%!important;
  max-width:740px!important;
  transform:translateX(16px) translateY(8px)!important;
}

.pt-hero-art::before{
  width:640px!important;
  height:640px!important;
  left:61%!important;
  top:52%!important;
}

.pt-hero-art::after{
  left:23%!important;
  right:-3%!important;
  bottom:8%!important;
  height:30px!important;
}

@media(max-width:1050px){
  .pt-hero-art img{
    width:96%!important;
    max-width:620px!important;
    transform:translateX(10px) translateY(6px)!important;
  }

  .pt-hero-art::before{
    width:500px!important;
    height:500px!important;
    left:58%!important;
    top:51%!important;
  }
}

@media(max-width:767px){
  .pt-hero-art img{
    width:90%!important;
    max-width:480px!important;
    transform:none!important;
  }

  .pt-hero-art::before{
    width:320px!important;
    height:320px!important;
    left:50%!important;
    top:50%!important;
  }
}



/* =========================================================
   v3.4 — HERO CONTAINMENT PASS
   Smaller transparent product group + larger circle.
   ========================================================= */

@media(min-width:1060px){
  .pt-hero-art{
    transform:none!important;
  }

  .pt-hero-art img{
    width:86%!important;
    max-width:610px!important;
    height:auto!important;
    transform:translate(-24px,-10px)!important;
  }

  .pt-hero-art::before{
    width:700px!important;
    height:700px!important;
    left:57%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    border-color:rgba(0,174,255,.16)!important;
    background:
      radial-gradient(circle at 50% 48%,
        rgba(0,126,220,.085) 0%,
        rgba(0,91,165,.045) 44%,
        rgba(0,45,86,.015) 68%,
        transparent 78%)!important;
    box-shadow:
      0 0 58px rgba(0,153,255,.065),
      0 0 135px rgba(0,100,255,.035)!important;
  }

  .pt-hero-art::after{
    left:25%!important;
    right:5%!important;
    bottom:10%!important;
    height:26px!important;
    opacity:.8!important;
  }
}

@media(min-width:768px) and (max-width:1059px){
  .pt-hero-art img{
    width:88%!important;
    max-width:540px!important;
    transform:translate(-12px,-6px)!important;
  }

  .pt-hero-art::before{
    width:570px!important;
    height:570px!important;
    left:55%!important;
    top:50%!important;
  }
}

@media(max-width:767px){
  .pt-hero-art img{
    width:84%!important;
    max-width:430px!important;
    transform:none!important;
  }

  .pt-hero-art::before{
    width:370px!important;
    height:370px!important;
    left:50%!important;
    top:50%!important;
  }
}




/* =========================================================
   v3.5 — HERO ALIGNMENT PASS
   Keep v3.4 sizing; centre the product group within the circle.
   ========================================================= */

@media(min-width:1060px){
  .pt-hero-art img{
    width:86%!important;
    max-width:610px!important;
    transform:translate(60px,4px)!important;
  }

  .pt-hero-art::before{
    width:700px!important;
    height:700px!important;
    left:57%!important;
    top:50%!important;
  }

  .pt-hero-art::after{
    left:34%!important;
    right:0!important;
    bottom:9%!important;
  }
}

@media(min-width:768px) and (max-width:1059px){
  .pt-hero-art img{
    width:88%!important;
    max-width:540px!important;
    transform:translate(24px,2px)!important;
  }

  .pt-hero-art::before{
    width:570px!important;
    height:570px!important;
    left:55%!important;
    top:50%!important;
  }
}

@media(max-width:767px){
  .pt-hero-art img{
    width:84%!important;
    max-width:430px!important;
    transform:none!important;
  }
}


/* =========================================================
   v3.6 — FINAL HERO HORIZONTAL ALIGNMENT
   Same size, circle and vertical position as v3.5.
   Move product group 38px further right on desktop.
   ========================================================= */

@media(min-width:1060px){
  .pt-hero-art img{
    width:86%!important;
    max-width:610px!important;
    transform:translate(98px,4px)!important;
  }
}


/* =========================================================
   v3.7 — HERO MICRO-ALIGNMENT
   Based on v3.6.
   - Move product cluster slightly UP
   - Move product cluster slightly RIGHT
   - No size changes
   ========================================================= */

@media(min-width:1060px){
  .pt-hero-art img{
    width:86%!important;
    max-width:610px!important;
    transform:translate(118px,-10px)!important;
  }
}


/* v3.8 — Public SKU suppression fallback */
.single-product .sku_wrapper,
.single-product .product_meta .sku,
.single-product [itemprop="sku"],
.woocommerce .sku_wrapper{
  display:none!important;
}

/* =========================================================
   v3.9 — ESTIMATED RESTOCK DATE
   ========================================================= */
.woocommerce div.product p.stock .pt-restock-date,
.pt-product-page p.stock .pt-restock-date{
  display:block;
  width:fit-content;
  max-width:100%;
  margin-top:10px;
  padding:10px 13px;
  border:1px solid rgba(0,174,255,.26);
  border-radius:10px;
  background:rgba(0,126,220,.08);
  color:#d8ebf7;
  font-size:.92rem;
  line-height:1.4;
}
.woocommerce div.product p.stock .pt-restock-date-label,
.pt-product-page p.stock .pt-restock-date-label{
  color:#9fb7c8;
}
.woocommerce div.product p.stock .pt-restock-date strong,
.pt-product-page p.stock .pt-restock-date strong{
  color:#32b7ff;
  font-weight:700;
}


/* =========================================================
   v4.0 — FOUR-CATEGORY HOMEPAGE GRID
   Hero and all v3.9 commerce functionality remain unchanged.
   ========================================================= */

@media(min-width:1200px){
  .pt-category-grid.pt-category-grid-four{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:16px;
  }
  .pt-category-grid-four .pt-category-card{
    min-height:252px;
    grid-template-columns:57% 43%;
  }
  .pt-category-grid-four .pt-card-copy{
    padding:21px 4px 20px 19px;
  }
  .pt-category-grid-four .pt-card-number{
    margin-bottom:25px;
  }
  .pt-category-grid-four .pt-category-card h3{
    font-size:20px;
    letter-spacing:-.35px;
  }
  .pt-category-grid-four .pt-category-card p{
    font-size:11.5px;
    line-height:1.48;
    margin-bottom:14px;
  }
  .pt-category-grid-four .pt-category-card .pt-card-copy>span:last-child{
    font-size:10.5px;
    line-height:1.35;
    white-space:normal;
  }
  .pt-category-grid-four .pt-card-image{
    padding:17px 9px 14px 0;
  }
  .pt-category-grid-four .pt-card-image img{
    max-width:122px;
    max-height:164px;
  }
}

@media(min-width:768px) and (max-width:1199px){
  .pt-category-grid.pt-category-grid-four{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
  }
  .pt-category-grid-four .pt-category-card{
    min-height:240px;
  }
}

@media(max-width:767px){
  .pt-category-grid.pt-category-grid-four{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   v4.1 — CATALOGUE STOCK STATUS MESSAGING
   ========================================================= */

/* Out-of-stock archive button replacing WooCommerce "Read more". */
.woocommerce ul.products li.product .pt-loop-out-of-stock{
  width:100%;
  margin-top:5px!important;
  color:#b8c5cc!important;
  background:rgba(120,138,150,.08)!important;
  border-color:rgba(152,171,183,.28)!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
  box-shadow:none!important;
}

/* Shared status panel beneath catalogue cards. */
.woocommerce ul.products li.product .pt-loop-stock-message{
  display:flex;
  flex-direction:column;
  gap:3px;
  width:100%;
  margin-top:9px;
  padding:9px 10px;
  border-radius:8px;
  font-size:11.5px;
  line-height:1.4;
}

/* Out-of-stock estimated return. */
.woocommerce ul.products li.product .pt-loop-restock-message{
  color:#a8bdca;
  background:rgba(0,126,220,.07);
  border:1px solid rgba(0,174,255,.21);
}
.woocommerce ul.products li.product .pt-loop-restock-message strong{
  color:#32b7ff;
  font-size:12px;
}

/* Low-stock / incoming-stock message. */
.woocommerce ul.products li.product .pt-loop-low-stock-message{
  color:#b8c9d4;
  background:rgba(0,174,255,.055);
  border:1px solid rgba(0,174,255,.17);
}
.woocommerce ul.products li.product .pt-loop-low-stock-message>strong{
  color:#e7f7ff;
  font-size:12px;
}
.woocommerce ul.products li.product .pt-loop-low-stock-message>span:not(.pt-loop-incoming-date){
  color:#45bdff;
  font-weight:700;
}
.woocommerce ul.products li.product .pt-loop-incoming-date{
  margin-top:2px;
  color:#91a8b7;
}
.woocommerce ul.products li.product .pt-loop-incoming-date b{
  color:#32b7ff;
}

/* Single-product / selected variation low-stock notice. */
.woocommerce div.product p.stock .pt-low-stock-incoming,
.pt-product-page p.stock .pt-low-stock-incoming{
  display:block;
  width:fit-content;
  max-width:100%;
  margin-top:10px;
  padding:10px 13px;
  border:1px solid rgba(0,174,255,.22);
  border-radius:10px;
  background:rgba(0,126,220,.07);
  color:#d8ebf7;
  font-size:.92rem;
  line-height:1.4;
}
.woocommerce div.product p.stock .pt-low-stock-incoming>strong,
.pt-product-page p.stock .pt-low-stock-incoming>strong{
  display:block;
  color:#45bdff;
  font-weight:750;
}
.woocommerce div.product p.stock .pt-low-stock-incoming>span,
.pt-product-page p.stock .pt-low-stock-incoming>span{
  display:block;
  margin-top:3px;
  color:#9fb7c8;
}
.woocommerce div.product p.stock .pt-low-stock-incoming b,
.pt-product-page p.stock .pt-low-stock-incoming b{
  color:#32b7ff;
}

