:root{--ppg-primary:#1A6FB4;--ppg-primary-d:#0E5C9E;--ppg-navy:#0B2C47;--ppg-navy-d:#07203A;--ppg-accent:#F4A024;--ppg-accent-d:#DC8410;--ppg-text:#33495E;--ppg-muted:#647A8E;--ppg-line:#E0E8F1;--ppg-canvas:#F4F8FC;--ppg-mist:#E9F1F8;--ppg-sand:#FAF6EF;--ppg-coral:#F26A35;--ppg-green:#2FA24E;--ppg-teal:#16A6B6;--ppg-purple:#6B3FA0;--ppg-magenta:#E22A8A;--ppg-head:'Poppins','Montserrat',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--ppg-body:'Inter',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--ppg-radius:16px;--ppg-shadow:0 6px 24px rgba(11,44,71,.08);--ppg-shadow-h:0 16px 40px rgba(11,44,71,.16)}

.woocommerce,.woocommerce-page{font-family:var(--ppg-body);color:var(--ppg-text)}
.woocommerce .woocommerce-breadcrumb{font-size:.82rem;color:var(--ppg-muted);margin-bottom:1.4rem;letter-spacing:.01em}
.woocommerce .woocommerce-breadcrumb a{color:var(--ppg-primary);text-decoration:none}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--ppg-navy)}

.woocommerce ul.products{display:grid !important;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:28px;margin:0 0 2.5rem;padding:0;list-style:none}
.woocommerce ul.products:before,.woocommerce ul.products:after{content:none !important;display:none !important}
.woocommerce ul.products li.product{width:auto !important;margin:0 !important;float:none !important;background:#fff;border:1px solid var(--ppg-line);border-radius:var(--ppg-radius);padding:14px 14px 22px;box-shadow:var(--ppg-shadow);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;display:flex;flex-direction:column;position:relative;overflow:hidden}
.woocommerce ul.products li.product:hover{transform:translateY(-6px);box-shadow:var(--ppg-shadow-h);border-color:#C9DCEC}
.woocommerce ul.products li.product a img{border-radius:12px;margin-bottom:14px;aspect-ratio:1/1;object-fit:cover;width:100%;height:auto;background:var(--ppg-mist)}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--ppg-head);font-weight:600;font-size:1.02rem;color:var(--ppg-navy);padding:0 4px 2px;line-height:1.35}
.woocommerce ul.products li.product .price{color:var(--ppg-primary);font-weight:700;font-family:var(--ppg-head);padding:0 4px;margin-top:auto;font-size:1.05rem}
.woocommerce ul.products li.product .price del{color:var(--ppg-muted);font-weight:400}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .button{margin-top:12px;align-self:flex-start}
.woocommerce span.onsale{background:var(--ppg-coral);color:#fff;border-radius:999px;font-family:var(--ppg-head);font-weight:600;min-height:auto;min-width:auto;padding:.35em .8em;top:18px;left:18px;margin:0}

.woocommerce .woocommerce-result-count{color:var(--ppg-muted)}
.woocommerce .woocommerce-ordering select{border:1px solid var(--ppg-line);border-radius:10px;padding:8px 12px;color:var(--ppg-navy);background:#fff}

.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,.woocommerce .button,.woocommerce-page .button{background:var(--ppg-primary);color:#fff;border-radius:999px;font-family:var(--ppg-head);font-weight:600;letter-spacing:.01em;padding:.7em 1.6em;border:none;transition:background .2s ease,transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 14px rgba(26,111,180,.25)}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover,.woocommerce .button:hover{background:var(--ppg-navy);color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px rgba(11,44,71,.28)}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce .single_add_to_cart_button{background:var(--ppg-accent);color:var(--ppg-navy-d);box-shadow:0 4px 14px rgba(244,160,36,.32)}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,.woocommerce .single_add_to_cart_button:hover{background:var(--ppg-accent-d);color:#fff}

.single-product div.product .product_title{font-family:var(--ppg-head);font-weight:700;color:var(--ppg-navy);font-size:2rem;line-height:1.15;margin-bottom:.3em}
.single-product div.product p.price,.single-product div.product span.price{color:var(--ppg-primary);font-size:1.5rem;font-weight:700;font-family:var(--ppg-head)}
.single-product .woocommerce-product-gallery{border-radius:var(--ppg-radius);overflow:hidden}
.single-product .woocommerce-product-gallery img{border-radius:14px}
.single-product .woocommerce-product-gallery .flex-viewport{border-radius:14px;border:1px solid var(--ppg-line)}
.single-product .flex-control-thumbs li{border-radius:10px;overflow:hidden}
.woocommerce div.product form.cart .quantity input.qty{border:1px solid var(--ppg-line);border-radius:10px;padding:.6em;width:4.5em;color:var(--ppg-navy);text-align:center}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin-bottom:1.2em}
.woocommerce div.product .woocommerce-tabs ul.tabs:before{border-bottom-color:var(--ppg-line)}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent;border:none;border-radius:0;font-family:var(--ppg-head);font-weight:600}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{color:var(--ppg-muted)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ppg-navy)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--ppg-accent);border-radius:3px}
.woocommerce div.product .woocommerce-tabs ul.tabs li{position:relative}
.woocommerce .star-rating span{color:var(--ppg-accent)}
.woocommerce .related.products>h2,.woocommerce .upsells.products>h2,.woocommerce .cross-sells>h2{font-family:var(--ppg-head);color:var(--ppg-navy);font-weight:700;margin-bottom:1rem}

.ppg-share{display:flex;align-items:center;gap:10px;margin:22px 0 4px;flex-wrap:wrap}
.ppg-share .ppg-share__label{font-family:var(--ppg-head);font-weight:600;color:var(--ppg-muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em}
.ppg-share a,.ppg-share button.ppg-copy{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ppg-mist);color:var(--ppg-navy);text-decoration:none;transition:transform .2s,background .2s,color .2s;border:1px solid var(--ppg-line);cursor:pointer;padding:0}
.ppg-share a:hover,.ppg-share button.ppg-copy:hover{transform:translateY(-3px);background:var(--ppg-primary);color:#fff}
.ppg-share .dashicons{width:20px;height:20px;font-size:20px;line-height:1}

.ppg-enquiry{margin:44px 0 8px;background:linear-gradient(180deg,var(--ppg-canvas),#fff);border:1px solid var(--ppg-line);border-radius:var(--ppg-radius);padding:30px}
.ppg-enquiry h3{font-family:var(--ppg-head);color:var(--ppg-navy);margin:0 0 .3em;font-size:1.4rem}
.ppg-enquiry .ppg-enquiry__intro{color:var(--ppg-muted);margin-bottom:20px}
.ppg-enquiry form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ppg-enquiry .ppg-full{grid-column:1/-1}
.ppg-enquiry label{display:block;font-weight:600;color:var(--ppg-navy);margin-bottom:6px;font-size:.9rem;font-family:var(--ppg-head)}
.ppg-enquiry input,.ppg-enquiry textarea{width:100%;border:1px solid var(--ppg-line);border-radius:10px;padding:.7em .9em;font-family:var(--ppg-body);color:var(--ppg-text);background:#fff;box-sizing:border-box}
.ppg-enquiry input:focus,.ppg-enquiry textarea:focus{outline:none;border-color:var(--ppg-primary);box-shadow:0 0 0 3px rgba(26,111,180,.15)}
.ppg-enquiry textarea{min-height:120px;resize:vertical}
.ppg-enquiry__notice{background:var(--ppg-green);color:#fff;padding:12px 16px;border-radius:10px;margin-bottom:16px;font-weight:600}
.ppg-enquiry__notice.error{background:var(--ppg-coral)}
@media(max-width:600px){.ppg-enquiry form{grid-template-columns:1fr}}

@keyframes ppgFadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.woocommerce ul.products li.product{animation:ppgFadeUp .5s ease both}
.woocommerce ul.products li.product:nth-child(2){animation-delay:.05s}
.woocommerce ul.products li.product:nth-child(3){animation-delay:.1s}
.woocommerce ul.products li.product:nth-child(4){animation-delay:.15s}
.woocommerce ul.products li.product:nth-child(5){animation-delay:.2s}
.woocommerce ul.products li.product:nth-child(n+6){animation-delay:.25s}

.woocommerce-message,.woocommerce-info{border-top-color:var(--ppg-primary);border-radius:10px}
.woocommerce-message:before,.woocommerce-info:before{color:var(--ppg-primary)}
.woocommerce-error{border-top-color:var(--ppg-coral);border-radius:10px}

.woocommerce a:focus-visible,.woocommerce button:focus-visible,.woocommerce input:focus-visible,.woocommerce select:focus-visible,.ppg-enquiry :focus-visible,.ppg-share a:focus-visible{outline:3px solid var(--ppg-accent);outline-offset:2px}

@media(prefers-reduced-motion:reduce){.woocommerce *,.ppg-share *,.ppg-enquiry *{animation:none !important;transition:none !important}}

/* ================= MOBILE / RESPONSIVE ================= */
.woocommerce,.woocommerce-page,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{max-width:100%}
.woocommerce img,.wc-block-cart img,.wc-block-checkout img{max-width:100%;height:auto}
.wc-block-cart,.wc-block-checkout{overflow-wrap:break-word}

@media (max-width:781px){
 .wc-block-components-sidebar-layout{display:flex;flex-direction:column}
 .wc-block-components-sidebar-layout .wc-block-components-main,
 .wc-block-components-sidebar-layout .wc-block-components-sidebar{max-width:100%;width:100%;padding-left:0;padding-right:0}
 .wc-block-cart__sidebar,.wc-block-checkout__sidebar{margin-top:24px}
 .wc-block-cart-item__image,.wc-block-cart-items__row .wc-block-cart-item__image{max-width:72px}
 .wc-block-components-quantity-selector{max-width:120px}
 .wc-block-checkout__main,.wc-block-checkout__sidebar{float:none}
}

@media (max-width:768px){
 .woocommerce table.shop_table_responsive thead{display:none}
 .woocommerce table.shop_table_responsive tr{display:block;margin:0 0 16px;border:1px solid var(--ppg-line);border-radius:12px;background:#fff;overflow:hidden}
 .woocommerce table.shop_table_responsive tr td{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:right;padding:10px 14px;border-bottom:1px solid var(--ppg-line);width:auto}
 .woocommerce table.shop_table_responsive tr td:last-child{border-bottom:0}
 .woocommerce table.shop_table_responsive tr td::before{content:attr(data-title);font-weight:600;color:var(--ppg-navy);font-family:var(--ppg-head);text-align:left}
 .woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{float:none;width:100%}
 .woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px;padding:0;list-style:none}
 .woocommerce-account .woocommerce-MyAccount-navigation li{margin:0;border:0}
 .woocommerce-account .woocommerce-MyAccount-navigation li a{display:block;padding:8px 14px;background:var(--ppg-mist);border-radius:999px;color:var(--ppg-navy);text-decoration:none;font-family:var(--ppg-head);font-weight:600;font-size:.85rem}
 .woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{background:var(--ppg-primary);color:#fff}
 .single-product div.product .woocommerce-product-gallery,.single-product div.product .summary.entry-summary{width:100%;float:none;margin:0 0 24px}
 .single-product div.product .product_title{font-size:1.55rem}
 .single-product div.product p.price,.single-product div.product span.price{font-size:1.3rem}
 .woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
 .woocommerce div.product form.cart .quantity{margin:0}
 .woocommerce div.product form.cart .single_add_to_cart_button{flex:1 1 60%}
 .woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button{min-height:44px}
 .ppg-enquiry{padding:22px}
 .woocommerce .woocommerce-ordering,.woocommerce .woocommerce-result-count{float:none;width:100%;margin-bottom:10px}
 .woocommerce .woocommerce-ordering select{width:100%}
}

@media (max-width:600px){
 .woocommerce ul.products{grid-template-columns:repeat(2,1fr);gap:14px}
 .woocommerce ul.products li.product{padding:10px 10px 16px}
 .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.9rem}
 .woocommerce ul.products li.product .price{font-size:.95rem}
 .woocommerce ul.products li.product .button{width:100%;text-align:center}
 .ppg-share{gap:8px}
}

@media (max-width:360px){
 .woocommerce ul.products{grid-template-columns:1fr}
}

