body.woocommerce{--ngw-green:#164a3c;--ngw-gold:#f5a719;--ngw-line:#e5e8e3;--ngw-soft:#f8f8f8;--theme-content-spacing:1.4em}
.ngw-intro{padding-block:30px 34px}
.ngw-breadcrumb{margin-bottom:24px;font-size:12px}
.ngw-intro h1{font-size:clamp(30px,3vw,42px);line-height:1.2;color:var(--ngw-green);margin:0 0 16px}
.ngw-intro .ng-heading-accent{color:var(--ngw-gold)}
.ngw-intro>p{max-width:78ch;color:#596b63;line-height:1.65;margin-bottom:24px}
.woocommerce .ngw-intro+.ct-container{padding-top:12px}
.woocommerce main>.ct-container[data-sidebar]{--sidebar-width:240px;--sidebar-gap:32px}
.woocommerce .ct-sidebar .widget{padding:0 0 24px;border-bottom:1px solid var(--ngw-line);margin-bottom:24px}
.woocommerce .ct-sidebar h3{font-size:18px;color:var(--ngw-green);margin-bottom:16px}
.woocommerce .ct-filter-widget{font-size:14px}
.woocommerce .ct-filter-widget a{min-height:32px;line-height:1.5}
.woocommerce .ct-filter-widget input[type=search]{font-size:13px}
.woocommerce ul.products .product{background:transparent;border:0;border-radius:0;overflow:visible;padding:0;box-shadow:none}
.woocommerce ul.products .product .ct-media-container{border-radius:10px;background:#fafafa}
.woocommerce ul.products .product img{object-fit:contain}
.woocommerce ul.products .woocommerce-loop-product__title{font-size:15px;line-height:1.5;color:var(--ngw-green);margin-top:14px}
.woocommerce .woocommerce-result-count{font-size:13px;text-transform:none}
.woocommerce .ct-active-filters{font-size:13px}
.single-product .product-entry-wrapper{gap:28px}
.single-product .entry-summary .product_title{font-size:clamp(25px,2.3vw,34px);line-height:1.3;color:var(--ngw-green)}
.single-product .entry-summary .ct-breadcrumbs{font-size:11px;line-height:1.7}
.single-product .entry-summary .product_meta{font-size:12px;line-height:1.8;text-transform:none}
.ngw-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:28px}
.ngw-actions .ct-button{min-height:48px;padding:12px 14px}
.ngw-call{font-weight:600;color:var(--ngw-green);padding-block:6px}
.single-product .woocommerce-product-gallery .ct-media-container img{object-fit:contain}
.single-product .woocommerce-tabs{margin-top:56px}
.single-product .woocommerce-tabs .panel{max-width:85ch;font-size:16px;line-height:1.75}
.single-product .woocommerce-tabs h2{font-size:26px;color:var(--ngw-green)}
.ngw-empty{display:flex;gap:20px;flex-wrap:wrap;align-items:center}
.woocommerce :is(a,button,input,select,textarea):focus-visible{outline:2px solid #b2760b;outline-offset:3px}
@media(max-width:600px){
 .ngw-intro{padding-block:24px}
 .woocommerce ul.products{--grid-columns-gap:12px;--grid-rows-gap:16px}
 .woocommerce ul.products .product{padding:0}
 .woocommerce ul.products .woocommerce-loop-product__title{font-size:13px;line-height:1.5}
 .single-product .woocommerce-tabs{margin-top:32px}
}

.woocommerce ul.products .product .ct-media-container{aspect-ratio:1}
.woocommerce ul.products .product .ct-media-container img{height:100%;width:100%}
#woo-filters-panel{--theme-text-color:#253d34}
#woo-filters-panel .ct-panel-inner{background:#fff}

.ngw-intro-layout{display:grid;align-items:center;gap:clamp(24px,5vw,72px)}
.ngw-intro-layout:has(.ngw-category-picture),.ngw-intro-layout:has(.ngw-category-pictures){grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}
.ngw-intro-layout p{max-width:66ch;line-height:1.75;color:#596b63}
.ngw-category-picture{background:#fafafa;border-radius:6px;overflow:hidden}
.ngw-category-picture img{display:block;width:100%;height:clamp(240px,22vw,340px);object-fit:contain}
.ngw-category-pictures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ngw-category-pictures a{background:#fafafa;padding:12px;border-radius:6px;color:#164a3c;display:grid;gap:8px;text-align:center;font-size:14px;font-weight:600}
.ngw-category-pictures img{width:100%;height:120px;object-fit:contain}
.ngw-product-facts{width:100%;font-size:14px;margin:24px 0;border-top:1px solid #e5e8e3}
.ngw-product-facts th{width:30%;font-weight:600;color:#164a3c}
.ngw-product-facts th,.ngw-product-facts td{padding:10px 12px;border-bottom:1px solid #e5e8e3;text-align:left;vertical-align:top;line-height:1.6}
.ngw-product-facts tr:nth-child(odd){background:#fff}
.ngw-product-facts a{color:#52675c}
.ngw-actions{width:100%;align-items:stretch;gap:12px}
.ngw-actions .ct-button{width:100%;border-radius:4px!important}
.ngw-actions .ngw-call{display:flex;align-items:center;justify-content:center;min-height:46px;background:#164a3c;color:white;border-radius:4px}
.single-product .related.products{width:var(--theme-container-width,90%);max-width:var(--theme-normal-container-max-width,1296px);margin-inline:auto}
@media(max-width:700px){
 .ngw-intro-layout:has(.ngw-category-picture),.ngw-intro-layout:has(.ngw-category-pictures){grid-template-columns:1fr}
 .ngw-category-picture img{height:220px}
 .ngw-category-pictures img{height:110px}
 .ngw-product-facts{font-size:13px}
 .ngw-product-facts th,.ngw-product-facts td{padding:10px 8px}
}

/* Archive banner belongs to the results column; filters align alongside it. */
.ngw-intro{padding:0 0 32px}
.ngw-breadcrumb{margin-bottom:18px}
.ngw-intro-layout{position:relative;display:flex;align-items:flex-end;min-height:240px;padding:24px;background:#f1eeea;border-radius:10px;overflow:hidden;isolation:isolate}
.ngw-intro-copy{position:relative;z-index:1;background:#ffffffdf;backdrop-filter:blur(8px);padding:20px 24px;border-radius:8px;max-width:62%}
.ngw-intro h1{font-size:clamp(24px,2.3vw,32px);margin-bottom:12px}
.ngw-intro-layout p{font-size:14px;line-height:1.65;margin:0}
.ngw-intro-layout:has(.ngw-category-picture),.ngw-intro-layout:has(.ngw-category-pictures){display:flex}
.ngw-category-picture{position:absolute;inset:0 0 0 auto;width:62%;background:transparent;border-radius:0;z-index:0}
.ngw-category-picture img{width:100%;height:100%;object-fit:contain}
.ngw-category-pictures{position:absolute;inset:12px 12px 12px auto;width:50%;gap:6px;z-index:0}
.ngw-category-pictures a{padding:4px;background:#ffffff90;gap:2px;font-size:11px}
.ngw-category-pictures img{height:70px}
.ngw-intro-layout:not(:has(.ngw-category-picture)):not(:has(.ngw-category-pictures)){min-height:180px}
.ngw-intro-layout:not(:has(.ngw-category-picture)):not(:has(.ngw-category-pictures)) .ngw-intro-copy{max-width:100%}
.woocommerce ul.products .woocommerce-loop-product__title{text-align:center;font-weight:500;margin-top:14px}
@media(min-width:1000px) and (max-width:1200px){.woocommerce ul.products{--shop-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){
 .ngw-intro{padding-bottom:24px}
 .ngw-intro-layout{padding:16px;min-height:260px}
 .ngw-intro-copy{max-width:90%;padding:16px}
 .ngw-intro-layout:has(.ngw-category-picture){padding-top:150px}
 .ngw-category-picture{width:100%;height:180px}
 .ngw-intro-layout:has(.ngw-category-pictures){padding-top:180px}
 .ngw-category-pictures{inset:8px 8px auto auto;width:calc(100% - 16px);grid-template-columns:repeat(4,minmax(0,1fr))}
 .ngw-category-pictures img{height:90px}
 .ngw-category-pictures a{font-size:10px}
}

/* Full image category banner with a readable frosted panel. */
.ngw-intro-layout:has(.ngw-category-picture){min-height:280px;padding:28px}
.ngw-intro-layout:has(.ngw-category-picture)::after{content:"";position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.14);pointer-events:none}
.ngw-category-picture{width:100%;height:100%;inset:0}
.ngw-category-picture img{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.08)}
.ngw-intro-copy{z-index:2;background:rgba(255,255,255,.64);backdrop-filter:blur(16px) saturate(1.05);-webkit-backdrop-filter:blur(16px) saturate(1.05);border:1px solid rgba(255,255,255,.5);box-shadow:0 3px 14px #0000000c}
.ngw-intro-copy p{color:#34483e}
@media(max-width:700px){
 .ngw-intro-layout:has(.ngw-category-picture){min-height:320px;padding:16px}
 .ngw-category-picture{width:100%;height:100%;inset:0}
 .ngw-intro-copy{max-width:100%}
 .ngw-shop-intro .ngw-category-picture img{object-position:right center}
}
@supports not (backdrop-filter:blur(1px)){.ngw-intro-copy{background:rgba(255,255,255,.9)}}

/* Long category copy opens within the introduction, below the image. */
.ngw-intro-more{position:relative;z-index:2;margin:12px 0 0;border:1px solid rgba(255,255,255,.8);border-radius:8px;background:rgba(255,255,255,.64);box-shadow:0 2px 8px #00000006}
.ngw-intro-more summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;padding:14px 22px;color:#164a3c;cursor:pointer;font-weight:600;font-size:14px}
.ngw-intro-more summary::-webkit-details-marker{display:none}
.ngw-intro-more summary:hover{background:#ffffff80}
.ngw-intro-more summary:focus-visible{outline:2px solid #a56c08;outline-offset:3px;border-radius:6px}
.ngw-less-label{display:none}
.ngw-intro-more[open] .ngw-more-label{display:none}
.ngw-intro-more[open] .ngw-less-label{display:inline}
.ngw-intro-more[open] summary{border-bottom:1px solid #e5e8e3}
.ngw-intro-more[open] summary svg{transform:rotate(180deg)}
.ngw-intro-article{padding:26px clamp(20px,4vw,44px);background:rgba(255,255,255,.9);border-radius:0 0 8px 8px;color:#40564b;font-size:15px;line-height:1.8;overflow-wrap:anywhere}
.ngw-intro-article>*{max-width:100%}
.ngw-intro-article p{margin:0 0 1.3em}
.ngw-intro-article h2,.ngw-intro-article h3{color:#164a3c;font-size:clamp(20px,2vw,26px);line-height:1.4;margin:1.5em 0 .7em}
.ngw-intro-article>:first-child{margin-top:0}
.ngw-intro-article>:last-child{margin-bottom:0}
.ngw-intro-article img{max-width:100%;height:auto;border-radius:6px}
@media(max-width:600px){.ngw-intro-more summary{padding:14px 16px}.ngw-intro-article{font-size:14px;padding:20px 16px}}

.single-product .woocommerce-tabs{width:var(--theme-container-width,90%);max-width:var(--theme-normal-container-max-width,1296px);margin-inline:auto}
.single-product .woocommerce-tabs .panel{max-width:none}
.ngw-order-guide{margin-top:24px;font-size:14px;line-height:1.75;color:#40564b}
.ngw-order-guide h2{font-size:21px;line-height:1.4;color:#164a3c;margin-bottom:14px}
.ngw-order-guide p{margin-bottom:16px}
.ngw-order-guide ol{padding-left:22px;margin-bottom:0}
.ngw-order-guide li{padding-left:4px;margin-bottom:8px}

@media(min-width:1000px){.single-product .product-entry-wrapper .entry-summary{margin-inline-start:0}}
.ngw-product-facts,.ngw-product-facts tr,.ngw-product-facts th,.ngw-product-facts td{background:#fff}
.ngw-actions>a{display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;min-height:48px}
.ngw-actions svg{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.7}
@media(max-width:600px){
 .ngw-actions{gap:10px}
 .ngw-actions .ct-button,.ngw-actions .ngw-call{padding:12px 8px;font-size:13px}
 .ngw-actions svg{width:18px;height:18px;flex-basis:18px}
}
