html{scrollbar-width:thin;scrollbar-color:#5be074 rgba(20,29,24,.6)}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:rgba(20,29,24,.6)}
::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#7cf08a,#5be074);border-radius:999px;
  border:3px solid rgba(12,19,15,.9);
}
::-webkit-scrollbar-thumb:hover{background:#7cf08a}
::-webkit-scrollbar-corner{background:transparent}
html[data-theme="light"]{scrollbar-color:#16a34a #dfeee4}
html[data-theme="light"] ::-webkit-scrollbar-track{background:#dfeee4}
html[data-theme="light"] ::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#19b257,#0f8a3c);border-color:#eef4ee}

html[data-theme="light"] .btn-primary,
html[data-theme="light"] .gm-product form.cart .single_add_to_cart_button,
html[data-theme="light"] .woocommerce a.button,
html[data-theme="light"] .woocommerce button.button,
html[data-theme="light"] .woocommerce input.button,
html[data-theme="light"] .woocommerce .button,
html[data-theme="light"] .woocommerce #respond input#submit,
html[data-theme="light"] .wp-block-button__link,
html[data-theme="light"] .wp-element-button,
html[data-theme="light"] .wpcf7 input[type=submit],
html[data-theme="light"] .gm-main .search-submit{
  color:#fff !important;
  background:linear-gradient(135deg,#19b257,#0f8a3c) !important;
}
html[data-theme="light"] .btn-ghost{color:var(--fg)}
html[data-theme="light"] .gm-chips a,
html[data-theme="light"] .cat-tag,
html[data-theme="light"] .prod-tag{color:#0f8a3c}

html[data-theme="light"] input[type="text"],
html[data-theme="light"] input[type="email"],
html[data-theme="light"] input[type="tel"],
html[data-theme="light"] input[type="url"],
html[data-theme="light"] input[type="number"],
html[data-theme="light"] input[type="search"],
html[data-theme="light"] input[type="password"],
html[data-theme="light"] textarea,
html[data-theme="light"] select,
html[data-theme="light"] .form-input,
html[data-theme="light"] .gm-landing .form-input,
html[data-theme="light"] .gm-landing .wpcf7 input,
html[data-theme="light"] .gm-landing .wpcf7 textarea,
html[data-theme="light"] .woocommerce form .form-row input.input-text,
html[data-theme="light"] .woocommerce form .form-row textarea{
  background:#ffffff !important;color:#0f1a13 !important;border-color:rgba(22,163,74,.28) !important;
}
html[data-theme="light"] ::placeholder{color:#8a9a90 !important;opacity:1}
html[data-theme="light"] .gm-product form.cart .quantity{background:#fff}
html[data-theme="light"] .gm-product form.cart .quantity .qty{background:transparent !important}

html[data-theme="light"] .gm-landing .badge{
  background:rgba(22,163,74,.10) !important;border-color:rgba(22,163,74,.30) !important;color:#0f8a3c !important;
}
html[data-theme="light"] .gm-landing .badge .badge-dot{background:#16a34a}
html[data-theme="light"] .gm-landing .kicker{color:#0f8a3c}

html[data-theme="light"] .gm-landing .feature,
html[data-theme="light"] .gm-landing .testi,
html[data-theme="light"] .gm-landing .prod,
html[data-theme="light"] .gm-landing .stat,
html[data-theme="light"] .gm-landing .step-num,
html[data-theme="light"] .gm-landing .contact-form{
  box-shadow:0 14px 40px -24px rgba(20,60,35,.45);
}
html[data-theme="light"] .gm-landing .hero-image-overlay{background:linear-gradient(to top, rgba(238,244,238,.6), transparent 55%)}
html[data-theme="light"] .gm-landing .cat-overlay{background:linear-gradient(to top, rgba(238,244,238,.85), rgba(238,244,238,.25), transparent)}
html[data-theme="light"] .gm-landing .cat-body h3{color:#0f1a13}
html[data-theme="light"] .gm-landing .matrix-rain{opacity:.5}

a,button,.btn-primary,.btn-ghost,.icon-btn,.gm-cart-link,.gm-theme-toggle,
.cat-card,.prod,.feature,.gm-chips a,.gm-share-btn,.wp-block-button__link,.wp-element-button{
  transition:transform .25s ease, box-shadow .25s ease, background-color .25s ease, color .2s ease, opacity .25s ease;
}
.btn-primary:active,.btn-ghost:active,.woocommerce .button:active,
.wp-block-button__link:active,.wp-element-button:active,.gm-product form.cart .single_add_to_cart_button:active{transform:translateY(0) scale(.97)}
:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:6px}
.gm-nav-links a,.gm-footer-menu a,.gm-mobile-links a{position:relative}
.gm-nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:2px;background:var(--primary);transition:right .3s ease;border-radius:2px}
.gm-nav-links a:hover::after,.gm-nav-links .current-menu-item>a::after{right:0}
.woocommerce ul.products li.product{transition:transform .3s ease, box-shadow .3s ease}
.woocommerce ul.products li.product:hover{transform:translateY(-5px);box-shadow:0 18px 44px -22px rgba(0,0,0,.7)}
.cat-card:hover{transform:translateY(-4px)}
.gm-product .woocommerce-tabs ul.tabs li a:hover{color:var(--primary) !important}

@media(min-width:993px){
  .gm-landing .cat-card img,
  .gm-landing .prod-img img{will-change:transform}
  .gm-landing .collage-grid img{animation:gm-float-soft 7s ease-in-out infinite}
  .gm-landing .collage-grid img:nth-child(2){animation-duration:8s;animation-delay:1s}
  .gm-landing .collage-grid img:nth-child(3){animation-duration:9s;animation-delay:.5s}
  .gm-landing .collage-grid img:nth-child(4){animation-duration:7.5s;animation-delay:1.5s}
  .gm-product .woocommerce-product-gallery{animation:gm-float-soft 9s ease-in-out infinite}
}

.gm-shop-content ul.products{
  display:grid !important;grid-template-columns:repeat(3,1fr);gap:1rem;margin:0;padding:0;list-style:none;
}
.gm-shop-content ul.products::before,.gm-shop-content ul.products::after{display:none !important}
.gm-shop-content ul.products li.product{
  width:auto !important;margin:0 !important;float:none !important;clear:none !important;
  display:flex;flex-direction:column;
}
.gm-shop-content ul.products li.product .woocommerce-loop-product__link{display:flex;flex-direction:column;flex:1}
.gm-shop-content ul.products li.product .button,
.gm-shop-content ul.products li.product .added_to_cart{
  width:100%;text-align:center;margin-top:.6rem !important;justify-content:center;
}
.gm-shop-content ul.products li.product .price{margin-top:auto}
@media(max-width:900px){.gm-shop-content ul.products{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.gm-shop-content ul.products{grid-template-columns:1fr}}

.gm-landing .prod-grid{gap:1rem}
.gm-landing .cat-grid{gap:1rem}

.woocommerce-cart .gm-main,
.woocommerce-checkout .gm-main,
.woocommerce-account .gm-main{padding-top:7rem}
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content{max-width:1100px}
.woocommerce-cart table.cart td,
.woocommerce-cart table.cart th{padding:1rem !important;vertical-align:middle}
.woocommerce-cart table.cart td.product-thumbnail img{width:64px;border-radius:.6rem}
.woocommerce .cart-collaterals,.woocommerce-cart .cart-collaterals{margin-top:2rem}
.woocommerce .cart_totals,.woocommerce-checkout #order_review{padding:1.5rem !important}
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2{margin-bottom:1.5rem}
.woocommerce form.checkout_coupon,
.woocommerce .checkout_coupon{padding:1.25rem !important;border-radius:1rem !important;border:1px solid var(--border) !important;background:var(--surface) !important}
.woocommerce-cart .actions,.woocommerce-cart .actions .button{margin-top:.5rem}
.woocommerce #payment,.woocommerce-checkout #payment{padding:1.25rem;border-radius:1rem;background:var(--surface-2)}
.woocommerce-checkout #payment ul.payment_methods{padding:0 0 1rem;margin:0}
.woocommerce-checkout #payment ul.payment_methods li{list-style:none;padding:.6rem 0}

.wpcf7{margin:0}
.wpcf7-form p{margin:0 0 1rem}
.gm-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
@media(max-width:560px){.gm-form-grid{grid-template-columns:1fr}}
.wpcf7 .gm-field{margin:0 0 1rem}
.wpcf7 label{display:block;font-family:'JetBrains Mono',monospace;font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin-bottom:.45rem;font-weight:500}
.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 input[type=tel],
.wpcf7 input[type=url],
.wpcf7 textarea,
.wpcf7 select{
  width:100%;padding:.85rem 1.1rem;background:rgba(12,19,15,.55);
  border:1px solid var(--primary-border);border-radius:.85rem;color:var(--fg);
  font-size:.95rem;font-family:inherit;outline:none;transition:border-color .2s, box-shadow .2s;
}
html[data-theme="light"] .wpcf7 input[type=text],
html[data-theme="light"] .wpcf7 input[type=email],
html[data-theme="light"] .wpcf7 input[type=tel],
html[data-theme="light"] .wpcf7 textarea{background:#fff;color:var(--fg)}
.wpcf7 input:focus,.wpcf7 textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(124,240,138,.18)}
.wpcf7 input::placeholder,.wpcf7 textarea::placeholder{color:#7a8a80}
.wpcf7 textarea{resize:vertical;min-height:120px}
.wpcf7 .gm-consent{display:flex;align-items:flex-start;gap:.6rem;font-size:.85rem;color:var(--muted-strong)}
.wpcf7 .gm-consent label{display:inline;margin:0;text-transform:none;letter-spacing:normal;font-family:inherit;font-size:.85rem;color:var(--muted-strong)}
.wpcf7 .wpcf7-list-item{margin:0}
.wpcf7 input[type=submit]{
  width:100%;background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#0c130f;
  border:0;border-radius:999px;padding:.95rem 1.6rem;font-weight:700;font-size:.98rem;cursor:pointer;
  box-shadow:0 12px 36px -14px rgba(124,240,138,.6);transition:transform .25s,box-shadow .25s;
}
.wpcf7 input[type=submit]:hover{transform:translateY(-2px)}
.wpcf7-not-valid-tip{color:#ff8a8a;font-size:.8rem;margin-top:.3rem}
.wpcf7 .wpcf7-not-valid{border-color:#ff8a8a !important}
.wpcf7 .wpcf7-spinner{margin:.5rem auto 0;display:block}

.wpcf7 .wpcf7-response-output{display:none !important}

.gm-toast{
  position:fixed;left:50%;bottom:28px;transform:translateX(-50%) translateY(20px);
  z-index:2000;max-width:90vw;padding:1rem 1.4rem;border-radius:1rem;opacity:0;pointer-events:none;
  background:var(--surface);border:1px solid var(--primary-border);color:var(--fg);
  box-shadow:0 18px 50px -18px rgba(0,0,0,.7);transition:opacity .35s ease, transform .35s ease;font-size:.95rem;
  display:flex;align-items:center;gap:.6rem;
}
.gm-toast.gm-show{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto}
.gm-toast.gm-ok{border-color:var(--primary);border-left:4px solid var(--primary)}
.gm-toast.gm-err{border-color:#ff8a8a;border-left:4px solid #ff8a8a}

.gm-burger{display:none;width:42px;height:42px;border-radius:50%;place-items:center;
  background:rgba(124,240,138,.06);border:1px solid var(--primary-border);color:var(--fg);cursor:pointer}
.gm-burger svg{width:20px;height:20px}
.gm-mobile-menu{
  position:fixed;inset:0 0 0 auto;width:min(82vw,360px);z-index:1200;transform:translateX(105%);
  transition:transform .35s cubic-bezier(.4,0,.2,1);padding:6rem 1.5rem 2rem;overflow-y:auto;
  background:linear-gradient(160deg, rgba(20,29,24,.96), rgba(12,19,15,.98));
  border-left:1px solid var(--primary-border);backdrop-filter:blur(18px);
}
html[data-theme="light"] .gm-mobile-menu{background:linear-gradient(160deg, rgba(255,255,255,.97), rgba(243,248,243,.98))}
.gm-mobile-menu .gm-mobile-links{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column;gap:.25rem}
.gm-mobile-menu .gm-mobile-links a{display:block;padding:.9rem .5rem;color:var(--fg);font-size:1.1rem;border-bottom:1px solid var(--border);text-decoration:none}
.gm-mobile-menu .gm-mobile-links a:hover{color:var(--primary)}
.gm-mobile-menu .btn-primary{width:100%}
.gm-menu-overlay{position:fixed;inset:0;z-index:1100;background:rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:opacity .35s}
html.gm-menu-open .gm-mobile-menu{transform:translateX(0)}
html.gm-menu-open .gm-menu-overlay{opacity:1;pointer-events:auto}
html.gm-menu-open{overflow:hidden}

.gm-nav{transition:transform .4s cubic-bezier(.4,0,.2,1)}
html.gm-nav-hidden .gm-nav{transform:translateY(-130%)}

@media(max-width:880px){
  .gm-burger{display:grid}
  .gm-nav-links{display:none !important}
}
@media(max-width:680px){
  
  .gm-landing .hero-cta,.gm-landing .cta-buttons{flex-direction:column;align-items:stretch}
  .gm-landing .hero-cta .btn-primary,.gm-landing .hero-cta .btn-ghost,
  .gm-landing .cta-buttons .btn-primary,.gm-landing .cta-buttons .btn-ghost{width:100%}
  .gm-product form.cart{flex-direction:column}
  .gm-product form.cart .quantity,.gm-product form.cart .single_add_to_cart_button{width:100%}
  .gm-product form.cart .quantity{justify-content:center}
  
  .gm-landing .hero-badges{grid-template-columns:1fr}
  .gm-landing .stats{grid-template-columns:1fr 1fr}
  .gm-shop-toolbar{flex-direction:column;align-items:stretch;border-radius:1rem}
  .gm-shop-toolbar .woocommerce-ordering select{width:100%}
  
  .gm-nav-inner{padding:.6rem .8rem}
  .gm-nav-bar{padding:.5rem .5rem .5rem 1rem}
  .gm-nav-cta .btn-primary{display:none} 
  .gm-product{padding-top:6rem}
  .gm-shop{padding-top:6rem}
  
  .gm-footer-grid{grid-template-columns:1fr;text-align:center}
  .gm-footer-social{justify-content:center}
  .gm-footer-bottom{flex-direction:column;align-items:center;text-align:center}
}
@media(max-width:420px){
  .gm-landing .stats{grid-template-columns:1fr}
}

.gm-filter-toggle{display:none}
@media(max-width:992px){
  .gm-filter-toggle{
    display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.25rem;cursor:pointer;
    padding:.7rem 1.3rem;border-radius:999px;background:var(--primary-soft);
    border:1px solid var(--primary-border);color:var(--primary);font-weight:600;
  }
  .gm-shop-sidebar{
    position:fixed;inset:0 0 0 auto;width:min(86vw,340px);z-index:1200;transform:translateX(105%);
    transition:transform .35s cubic-bezier(.4,0,.2,1);padding:5.5rem 1.25rem 2rem;overflow-y:auto;
    background:linear-gradient(160deg, rgba(20,29,24,.97), rgba(12,19,15,.99));
    border-left:1px solid var(--primary-border);
  }
  html[data-theme="light"] .gm-shop-sidebar{background:linear-gradient(160deg,#fff,#f3f8f3)}
  html.gm-filters-open .gm-shop-sidebar{transform:translateX(0)}
  html.gm-filters-open .gm-menu-overlay{opacity:1;pointer-events:auto}
}

.gm-scroll-star{position:fixed;top:0;bottom:0;right:22px;width:24px;z-index:40;pointer-events:none;display:none}
body.home .gm-scroll-star,
body.page-template-template-greenmatrix-home .gm-scroll-star{display:block}
.gm-scroll-track{position:absolute;top:11vh;bottom:11vh;left:50%;transform:translateX(-50%);width:2px;border-radius:2px;background:linear-gradient(rgba(124,240,138,.14),rgba(124,240,138,.04))}
.gm-scroll-fill{position:absolute;top:0;left:0;width:100%;height:0;border-radius:2px;background:linear-gradient(to bottom, rgba(124,240,138,0), #7cf08a);box-shadow:0 0 12px rgba(124,240,138,.8)}

.gm-scroll-dot{
  position:absolute;left:50%;top:0;width:30px;height:30px;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(circle,#ffffff 0%,#c9ffd2 16%,#7cf08a 38%,rgba(124,240,138,.5) 60%,rgba(124,240,138,0) 78%);
  filter:drop-shadow(0 0 8px rgba(124,240,138,1)) drop-shadow(0 0 22px rgba(124,240,138,.85)) drop-shadow(0 0 44px rgba(124,240,138,.5));
  animation:gm-comet-pulse 2.4s ease-in-out infinite;will-change:top;
}
@keyframes gm-comet-pulse{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.2)}}
@media(max-width:768px){.gm-scroll-star{display:none !important}}
