.gps-archive{--a:#f47b00;--ink:#1e2925;--muted:#65716c;--line:#e3e8e3;--soft:#f6f7f4}.gps-category-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:38px}.gps-category-strip>a{display:flex;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);border-radius:11px;color:var(--ink);transition:.2s}.gps-category-strip>a:hover{ border-color: #f8c99b !important; transform: none; }.gps-category-strip img{width:58px;height:58px;border-radius:8px;background:var(--soft);object-fit:contain}.gps-category-strip span{display:grid;min-width:0}.gps-category-strip strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.gps-category-strip small{color:var(--muted);font-size:11px}.gps-archive-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:36px;align-items:start}.gps-filters{position:sticky;top:20px;border:1px solid var(--line);border-radius:13px;background:#fff}.gps-filter-head{display:none}.gps-filters form{padding:0 20px 20px}.gps-filters fieldset{margin:0;padding:21px 0;border:0;border-bottom:1px solid var(--line)}.gps-filters legend{margin-bottom:12px;color:var(--ink);font-size:14px;font-weight:800}.gps-filters fieldset>label{display:flex;align-items:center;gap:8px;margin:10px 0;font-size:13px}.gps-filters input[type=checkbox]{width:17px;height:17px;margin:0;accent-color:var(--a)}.gps-filters label small{margin-left:auto;color:#8b938f}.gps-price{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gps-price label{color:var(--muted);font-size:10px}.gps-price input{width:100%;height:39px;margin-top:5px;padding:7px;font-size:12px}.gps-apply{width:100%;margin-top:20px;padding:11px;border:0;border-radius:7px;background:var(--a);color:#fff;font-size:13px;font-weight:800}.gps-clear{display:block;margin-top:9px;text-align:center;color:var(--muted);font-size:12px;text-decoration:underline}.gps-filter-toggle{display:none}.gps-results{min-width:0}.gps-results .woocommerce-result-count,.gps-results .woocommerce-ordering{margin-bottom:20px}.gps-results ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gps-results ul.products li.product{transition:.2s}.gps-results ul.products li.product:hover{ border-color: #f8c99b !important; transform: none; }.gps-filter-scrim{position:fixed;z-index:998;inset:0;background:rgba(10,25,20,.45)}
@media(max-width:900px){.gps-category-strip{grid-template-columns:repeat(2,1fr)}.gps-archive-layout{display:block}.gps-filter-toggle{display:inline-block;margin-bottom:18px;padding:10px 15px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);font-weight:700}.gps-filters{position:fixed;z-index:999;top:0;bottom:0;left:0;width:min(350px,88vw);overflow:auto;border:0;border-radius:0;transform:translateX(-105%);transition:transform .25s}.gps-filters.open{transform:none}.gps-filter-head{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--line)}.gps-filter-head button{border:0;background:none;font-size:28px}.gps-filter-open{overflow:hidden}.gps-results ul.products{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.gps-category-strip{display:flex;overflow-x:auto}.gps-category-strip>a{min-width:215px}.gps-results ul.products{grid-template-columns:repeat(2,1fr);gap:12px}}
.gps-results{position:relative;transition:opacity .2s}.gps-results.gps-is-loading{min-height:260px;opacity:.5;pointer-events:none}.gps-results.gps-is-loading:after{position:absolute;z-index:2;top:90px;left:50%;width:38px;height:38px;margin-left:-19px;border:4px solid #dce5df;border-top-color:var(--a);border-radius:50%;content:"";animation:gps-spin .7s linear infinite}.gps-filters :disabled{cursor:wait;opacity:.65}.gps-ajax-error{margin-bottom:18px;padding:12px 15px;border-left:4px solid #c9352b;border-radius:5px;background:#fff0ef;color:#7d211b;font-size:13px}@keyframes gps-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.gps-results{transition:none}.gps-results.gps-is-loading:after{animation:none}}
.gps-price{display:block}.gps-price-values{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;color:var(--ink);font-size:12px;font-weight:700}.gps-price-values span{color:#a0a7a3}.gps-range-track{position:relative;height:22px}.gps-range-track:before{position:absolute;top:9px;right:0;left:0;height:4px;border-radius:4px;background:linear-gradient(to right,#dce3df 0 var(--price-min),var(--a) var(--price-min) var(--price-max),#dce3df var(--price-max) 100%);content:""}.gps-range-track input[type=range]{position:absolute;top:0;left:0;width:100%;height:22px;margin:0;padding:0;border:0;background:transparent;box-shadow:none;pointer-events:none;appearance:none;-webkit-appearance:none}.gps-range-track input[type=range]::-webkit-slider-runnable-track{height:4px;background:transparent}.gps-range-track input[type=range]::-webkit-slider-thumb{width:18px;height:18px;margin-top:-7px;border:3px solid #fff;border-radius:50%;background:var(--a);box-shadow:0 0 0 1px var(--a),0 2px 6px rgba(0,0,0,.2);pointer-events:auto;appearance:none;-webkit-appearance:none;cursor:grab}.gps-range-track input[type=range]::-moz-range-track{height:4px;background:transparent}.gps-range-track input[type=range]::-moz-range-thumb{width:13px;height:13px;border:3px solid #fff;border-radius:50%;background:var(--a);box-shadow:0 0 0 1px var(--a),0 2px 6px rgba(0,0,0,.2);pointer-events:auto;cursor:grab}.gps-range-track input[type=range]:focus-visible::-webkit-slider-thumb{outline:3px solid rgba(244,123,0,.25);outline-offset:3px}
/* Refined archive UX and product cards. */
.gps-filter-title{display:grid;padding:20px 20px 16px;border-bottom:1px solid var(--line)}.gps-filter-title strong{color:var(--ink);font:750 17px/1.2 var(--gps-font-heading)}.gps-filter-title small{margin-top:3px;color:var(--muted);font-size:11px}.gps-filters fieldset:first-child{padding-top:18px}.gps-filters fieldset>label{padding:4px 0;border-radius:5px;transition:color .15s}.gps-filters fieldset>label:hover{color:var(--a)}.gps-filters input[type=checkbox]{border-radius:4px}.gps-results .woocommerce-result-count{float:none;margin:0;color:var(--muted);font-size:13px}.gps-results .woocommerce-ordering{float:none;margin:0}.gps-results .woocommerce-ordering select{min-width:190px;height:43px;padding:8px 36px 8px 13px;border:1px solid var(--line);border-radius:8px;background-color:#fff;color:var(--ink);font-size:13px}.gps-results>.woocommerce-result-count+.woocommerce-ordering{float:right;margin-top:-43px}.gps-results ul.products{clear:both;padding-top:22px;border-top:1px solid var(--line)}.gps-results ul.products li.product{display:flex;flex-direction:column;overflow:hidden;padding:0!important;border-color:#e5e7e5!important;border-radius:14px!important}.gps-results ul.products li.product .woocommerce-LoopProduct-link{display:flex;flex:1;flex-direction:column;padding:0 14px;color:var(--ink)}.gps-results ul.products li.product .woocommerce-image__wrapper,.gps-results ul.products li.product>a:first-child>img{margin:0 -14px 16px!important;width:calc(100% + 28px)!important;max-width:none!important;border-radius:13px 13px 0 0!important;background:#f5f6f4}.gps-results ul.products li.product img{aspect-ratio:1.08/1;padding:16px;object-fit:contain;transition:transform .35s ease}.gps-results ul.products li.product:hover img{ transform: none; }.gps-card-category{display:block;margin:1px 0 5px;color:var(--a);font-size:10px;font-weight:800;letter-spacing:.075em;text-transform:uppercase}.gps-results .woocommerce-loop-product__title{min-height:2.9em;margin:0!important;padding:0!important;color:var(--ink);font-size:15px!important;font-weight:750;line-height:1.45}.gps-results .star-rating{margin:8px 0 2px!important;font-size:12px}.gps-results .price{margin:9px 0 0!important;color:var(--ink)!important;font-size:15px!important}.gps-card-support{display:block;margin:8px 0 12px;color:#66736e;font-size:10px;font-weight:650}.gps-card-support span{color:#2d8a62}.gps-results .commercekit-swatch-wrap,.gps-results .cgkit-swatch-form{margin:9px 14px!important;max-height:76px;overflow:auto}.gps-results ul.products li.product>.button{display:flex;align-items:center;justify-content:center;min-height:45px;margin:8px 14px 14px!important;padding:10px 13px!important;border-radius:8px!important;background:var(--gps-green)!important;color:#fff!important;font-size:13px;font-weight:800}.gps-results ul.products li.product>.button:hover{background:var(--a)!important}.gps-results .onsale{top:12px!important;left:12px!important;padding:5px 9px!important;border-radius:30px!important}.gps-filter-toggle b{display:inline-grid;place-items:center;min-width:18px;height:18px;border-radius:50%;background:var(--a);color:#fff;font-size:10px}
@media(max-width:700px){.gps-filter-title{display:none}.gps-results>.woocommerce-result-count+.woocommerce-ordering{float:none;margin:12px 0 0}.gps-results .woocommerce-ordering select{width:100%}.gps-results ul.products{padding-top:16px}.gps-results ul.products li.product .woocommerce-LoopProduct-link{padding-inline:10px}.gps-results ul.products li.product .woocommerce-image__wrapper,.gps-results ul.products li.product>a:first-child>img{margin-inline:-10px!important;width:calc(100% + 20px)!important}.gps-results .woocommerce-loop-product__title{font-size:13px!important}.gps-results .price{font-size:13px!important}.gps-card-support{font-size:9px}.gps-results ul.products li.product>.button{margin:7px 9px 9px!important;font-size:12px}}
.gps-filters fieldset:first-child{padding-top:0}.gps-filters fieldset:first-child legend{width:100%;margin:0;padding:20px 0 10px}.gps-filters fieldset:first-child legend+label{margin-top:4px}
.gps-results .onsale{right:auto!important;left:12px!important;width:auto!important;min-width:0!important;max-width:max-content!important;line-height:1.2!important}.gps-results .woocommerce-pagination{clear:both;margin:0!important;padding-top:38px}.gps-results .woocommerce-pagination ul{margin:0!important}.gps-results ul.products li.product>.button:after{margin-left:7px;content:"\2192"}.gps-results ul.products li.product>.added_to_cart{margin:-5px 14px 12px;text-align:center;font-size:12px;font-weight:700}
.gps-results .cgkit-as-single-atc-wrap,.gps-results .cgkit-as-empty-atc-wrap{margin-top:auto;padding:8px 14px 14px}.gps-results .cgkit-as-single-atc-wrap .button,.gps-results .cgkit-as-empty-atc-wrap .button{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:45px;margin:0!important;padding:10px 13px!important;border-radius:8px!important;background:var(--gps-green)!important;color:#fff!important;font-size:13px;font-weight:800}.gps-results .cgkit-as-single-atc-wrap .button:hover,.gps-results .cgkit-as-empty-atc-wrap .button:hover{background:var(--a)!important}@media(max-width:700px){.gps-results .cgkit-as-single-atc-wrap,.gps-results .cgkit-as-empty-atc-wrap{padding:7px 9px 9px}.gps-results .cgkit-as-single-atc-wrap .button,.gps-results .cgkit-as-empty-atc-wrap .button{font-size:12px}}
.gps-results .gps-card-category{margin:2px 0 7px;font-size:10px;font-weight:400;letter-spacing:.055em}.gps-results .woocommerce-loop-product__title{min-height:3em;margin:0 0 12px!important;line-height:1.5}.gps-results .price{display:block;margin:0 0 8px!important;line-height:1.35}.gps-results .gps-card-support{margin:0 0 13px;line-height:1.4}.gps-results .commercekit-swatch-wrap,.gps-results .cgkit-swatch-form{margin-top:2px!important}@media(max-width:700px){.gps-results .gps-card-category{margin-bottom:5px;font-size:9px}.gps-results .woocommerce-loop-product__title{min-height:3.2em;margin-bottom:9px!important;line-height:1.45}.gps-results .price{margin-bottom:7px!important}}
.gps-results .cgkit-as-variation-price{min-height:0;margin:0!important;padding:0!important}.gps-results .cgkit-as-variation-price:empty{display:none}.gps-results .cgkit-as-variation-price .price{margin:0 0 8px!important}
.gps-results .woocommerce-loop-product__title{min-height:auto!important}
.gps-results .commercekit-swatch-wrap,.gps-results .cgkit-swatch-form{max-height:none!important;overflow:visible!important}
.gps-results ul.products li.product,.gps-results ul.products li.product img{transition:none!important}.gps-results ul.products li.product:hover{ border-color: #f8c99b !important; transform: none; }.gps-results ul.products li.product:hover img{ transform: none; }
.gps-results ul.products li.product{overflow:visible!important}
.gps-archive .gps-category-strip {
	display: grid;
	grid-template-columns: none;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 42px) / 4);
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	padding-block: 4px 12px;
}
.gps-archive .gps-category-strip > a { min-width: 0; scroll-snap-align: start; }
.gps-archive .gps-category-strip > a { transition: border-color .2s ease; }
.gps-archive .gps-category-strip > a:hover { border-color: #f8c99b !important; transform: none; }
@media (max-width: 900px) { .gps-archive .gps-category-strip { grid-auto-columns: calc((100% - 14px) / 2); } }
@media (max-width: 600px) { .gps-archive .gps-category-strip { grid-auto-columns: min(85%, 280px); } }

.gps-archive .gps-filter-head button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid var(--gps-color-border);
	border-radius: 0;
	background: var(--gps-color-surface);
	color: var(--gps-color-primary);
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}
.gps-archive .gps-filter-head button:hover {
	border-color: var(--gps-color-primary);
	background: var(--gps-color-primary);
	color: #fff;
}

/* Give the product grid breathing room below the sorting controls. */
.woocommerce .gps-results ul.products {
	margin-top: 24px;
	padding-top: 32px;
}
@media (max-width: 600px) {
	.woocommerce .gps-results ul.products { padding-top: 24px; }
}

/* Separate, touch-friendly page buttons below the catalogue. */
.woocommerce .gps-results nav.woocommerce-pagination {
	margin-top: 28px !important;
	padding-top: 24px;
	border-top: 1px solid var(--gps-color-border);
}
.woocommerce .gps-results nav.woocommerce-pagination ul.page-numbers {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-width: 0;
	min-height: 0;
	margin: 0 !important;
	padding: 0;
	border: 0;
	border-radius: 0;
}
.woocommerce .gps-results nav.woocommerce-pagination ul li {
	float: none;
	margin: 0;
	padding: 0;
	border: 0;
	overflow: visible;
}
.woocommerce .gps-results nav.woocommerce-pagination ul li .page-numbers {
	display: inline-flex;
	box-sizing: border-box;
	align-items: center;
	justify-content: center;
	min-width: 46px;
	min-height: 46px;
	padding: 10px 14px;
	border: 1px solid var(--gps-color-border);
	border-radius: var(--gps-control-radius, 11px);
	background: var(--gps-color-background);
	color: var(--gps-color-heading);
	font-size: 14px;
	font-weight: 650;
	line-height: 1;
	text-decoration: none;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}
.woocommerce .gps-results nav.woocommerce-pagination ul li a:hover {
	border-color: var(--gps-color-accent);
	background: var(--gps-color-surface);
	color: var(--gps-color-heading);
}
.woocommerce .gps-results nav.woocommerce-pagination ul li .current {
	border-color: var(--gps-color-primary);
	background: var(--gps-color-primary);
	color: #fff;
	box-shadow: 0 3px 10px rgb(24 24 24 / 12%);
}
.woocommerce .gps-results nav.woocommerce-pagination ul li :is(.prev, .next) {
	font-size: 20px;
}
.woocommerce .gps-results nav.woocommerce-pagination ul li .dots {
	min-width: 24px;
	padding-inline: 2px;
	border-color: transparent;
	background: transparent;
	color: var(--gps-color-muted);
}
.woocommerce .gps-results nav.woocommerce-pagination a:focus-visible {
	outline: 2px solid var(--gps-color-primary);
	outline-offset: 3px;
}
@media (max-width: 600px) {
	.woocommerce .gps-results nav.woocommerce-pagination { margin-top: 22px !important; padding-top: 20px; }
	.woocommerce .gps-results nav.woocommerce-pagination ul.page-numbers { gap: 6px; }
	.woocommerce .gps-results nav.woocommerce-pagination ul li .page-numbers { min-width: 44px; min-height: 44px; padding-inline: 10px; }
	.woocommerce .gps-results nav.woocommerce-pagination ul li .dots { min-width: 20px; padding-inline: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.woocommerce .gps-results nav.woocommerce-pagination ul li .page-numbers { transition: none; }
}
/* Empty catalogue and search results keep a clear next step. */
.gps-catalogue-empty { padding: var(--gps-card-padding); border: 1px solid var(--gps-color-border); border-radius: var(--gps-card-radius); background: var(--gps-color-surface); text-align: center; }
.gps-catalogue-empty h2 { margin-top: 0; font-size: 27px; }
