/*
Theme Name: Badminton Store
Theme URI: https://example.com/badminton-store
Author: GBS Tech
Author URI: https://example.com
Description: A lightweight product-catalog theme for a badminton store — product categories, products with prices, and articles. No WooCommerce required. Includes a homepage, product & category pages, article pages, shortcodes, and one-click demo data.
Version: 1.0.0
Requires at least: 5.8
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: badminton-store
*/

:root{
	--bs-green:#14803a;
	--bs-green-dark:#0f5c2b;
	--bs-ink:#1a2420;
	--bs-muted:#6b7770;
	--bs-line:#e6ebe8;
	--bs-bg:#ffffff;
	--bs-soft:#f4f7f5;
	--bs-sale:#b32d2e;
	--bs-radius:14px;
	--bs-shadow:0 8px 26px rgba(15,60,35,.08);
	--bs-max:1160px;
}

*{box-sizing:border-box;}
body{
	margin:0;
	font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
	color:var(--bs-ink);
	background:var(--bs-bg);
	line-height:1.6;
	-webkit-font-smoothing:antialiased;
}
a{color:var(--bs-green);text-decoration:none;}
a:hover{color:var(--bs-green-dark);}
img{max-width:100%;height:auto;display:block;}

.bs-container{max-width:var(--bs-max);margin:0 auto;padding:0 20px;width:100%;}
.bs-shuttle{filter:grayscale(.1);}

/* Header */
.bs-site-header{border-bottom:1px solid var(--bs-line);background:#fff;position:sticky;top:0;z-index:50;}
.bs-header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px;}
.bs-branding{display:flex;align-items:center;gap:12px;}
.bs-site-title{font-weight:800;font-size:20px;color:var(--bs-ink);letter-spacing:-.02em;}
.bs-custom-logo-link img{max-height:44px;width:auto;}
.bs-menu{list-style:none;display:flex;gap:6px;margin:0;padding:0;flex-wrap:wrap;}
.bs-menu li a{
	display:inline-block;padding:8px 14px;border-radius:999px;color:var(--bs-ink);
	font-weight:600;font-size:15px;transition:background .15s ease,color .15s ease;
}
.bs-menu li a:hover,.bs-menu .current-menu-item>a{background:var(--bs-soft);color:var(--bs-green-dark);}

/* Hero */
.bs-hero{
	background:linear-gradient(135deg,#0f5c2b 0%,#14803a 55%,#1a9e49 100%);
	color:#fff;padding:74px 0 82px;text-align:center;
}
.bs-hero-kicker{text-transform:uppercase;letter-spacing:.14em;font-size:13px;font-weight:600;opacity:.85;margin:0 0 14px;}
.bs-hero-title{font-size:clamp(34px,6vw,56px);line-height:1.05;margin:0 0 14px;font-weight:800;letter-spacing:-.02em;}
.bs-hero-sub{font-size:clamp(16px,2.4vw,20px);max-width:640px;margin:0 auto 26px;opacity:.94;}

/* Buttons */
.bs-btn{
	display:inline-block;background:#fff;color:var(--bs-green-dark);font-weight:700;
	padding:12px 24px;border-radius:999px;border:2px solid transparent;transition:transform .12s ease,box-shadow .15s ease;
}
.bs-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(0,0,0,.16);color:var(--bs-green-dark);}
.bs-btn-lg{padding:15px 32px;font-size:17px;}
.bs-hero .bs-btn{box-shadow:0 8px 20px rgba(0,0,0,.14);}

/* Sections */
.bs-section{padding:44px 20px;}
.bs-section-title{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:0 0 18px;}
.bs-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px;}
.bs-section-head .bs-section-title{margin:0;}
.bs-viewall{font-weight:700;white-space:nowrap;}
.bs-page-title{font-size:30px;font-weight:800;letter-spacing:-.02em;margin:0 0 18px;}

/* Grid */
.bs-grid{display:grid;gap:22px;}
.bs-cols-1{grid-template-columns:repeat(1,1fr);}
.bs-cols-2{grid-template-columns:repeat(2,1fr);}
.bs-cols-3{grid-template-columns:repeat(3,1fr);}
.bs-cols-4{grid-template-columns:repeat(4,1fr);}
.bs-cols-5{grid-template-columns:repeat(5,1fr);}
.bs-cols-6{grid-template-columns:repeat(6,1fr);}
@media(max-width:1024px){.bs-cols-4,.bs-cols-5,.bs-cols-6{grid-template-columns:repeat(3,1fr);}}
@media(max-width:760px){.bs-cols-3,.bs-cols-4,.bs-cols-5,.bs-cols-6{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.bs-grid{grid-template-columns:repeat(1,1fr);}}

/* Product card */
.bs-card{
	border:1px solid var(--bs-line);border-radius:var(--bs-radius);overflow:hidden;background:#fff;
	display:flex;flex-direction:column;transition:box-shadow .2s ease,transform .2s ease;
}
.bs-card:hover{box-shadow:var(--bs-shadow);transform:translateY(-3px);}
.bs-card-thumb{position:relative;display:block;aspect-ratio:1/1;background:var(--bs-soft);overflow:hidden;}
.bs-card-thumb img{width:100%;height:100%;object-fit:cover;}
.bs-noimg{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:54px;}
.bs-noimg-lg{aspect-ratio:1/1;border-radius:var(--bs-radius);background:var(--bs-soft);font-size:96px;}
.bs-badge{position:absolute;top:10px;left:10px;font-size:11px;font-weight:800;padding:4px 11px;border-radius:999px;color:#fff;text-transform:uppercase;letter-spacing:.05em;}
.bs-badge-out{background:var(--bs-sale);}
.bs-badge-sale{background:var(--bs-green);}
.bs-card-title{font-size:16px;line-height:1.35;margin:14px 15px 4px;font-weight:700;}
.bs-card-title a{color:inherit;}
.bs-card-cats{margin:0 15px;font-size:12.5px;color:var(--bs-muted);}
.bs-card-price{margin:9px 15px 16px;font-size:18px;font-weight:800;}
.bs-price{color:var(--bs-green-dark);}
.bs-price-sale{color:var(--bs-sale);margin-right:8px;}
.bs-price-old{color:#9aa39d;font-weight:600;text-decoration:line-through;font-size:14px;}

/* Category chips */
.bs-cat-list{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0 0 6px;}
.bs-cat-list li a{
	display:inline-block;padding:9px 17px;border:1px solid var(--bs-line);border-radius:999px;
	background:var(--bs-soft);color:var(--bs-green-dark);font-size:14px;font-weight:600;transition:background .15s ease;
}
.bs-cat-list li a:hover{background:#e6f0e9;}
.bs-cat-count{color:#93a89a;font-weight:500;}

/* Article card */
.bs-article-card{border:1px solid var(--bs-line);border-radius:var(--bs-radius);overflow:hidden;background:#fff;display:flex;flex-direction:column;transition:box-shadow .2s ease,transform .2s ease;}
.bs-article-card:hover{box-shadow:var(--bs-shadow);transform:translateY(-3px);}
.bs-article-thumb{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--bs-soft);}
.bs-article-thumb img{width:100%;height:100%;object-fit:cover;}
.bs-article-body{padding:16px 17px 18px;}
.bs-article-title{font-size:18px;margin:0 0 6px;font-weight:700;line-height:1.3;}
.bs-article-title a{color:inherit;}
.bs-article-meta{font-size:12.5px;color:var(--bs-muted);margin-bottom:8px;}
.bs-article-excerpt{color:#54605a;font-size:14.5px;margin:0 0 12px;}
.bs-readmore{font-weight:700;}

/* Single product */
.bs-single-product{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:44px 20px;align-items:start;}
.bs-single-media img{width:100%;border-radius:var(--bs-radius);border:1px solid var(--bs-line);}
.bs-single-cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px;}
.bs-single-cats a{font-size:12.5px;background:var(--bs-soft);padding:5px 12px;border-radius:999px;font-weight:600;}
.bs-single-title{font-size:32px;font-weight:800;letter-spacing:-.02em;margin:0 0 14px;}
.bs-single-price{font-size:28px;font-weight:800;margin-bottom:10px;}
.bs-stock{display:inline-block;font-size:13px;font-weight:700;padding:5px 13px;border-radius:999px;margin:0 0 16px;}
.bs-stock.is-in{background:#e6f4ea;color:var(--bs-green-dark);}
.bs-stock.is-out{background:#fbe9e9;color:var(--bs-sale);}
.bs-sku{color:var(--bs-muted);font-size:14px;margin:0 0 18px;}
.bs-single-desc{font-size:16px;color:#3a453f;}
.bs-single-desc p{margin:0 0 1em;}
.bs-back{display:inline-block;margin-top:22px;font-weight:700;}
@media(max-width:760px){.bs-single-product{grid-template-columns:1fr;gap:24px;}}

/* Single article / page */
.bs-single-article,.bs-page{max-width:760px;padding:44px 20px;}
.bs-single-article .bs-single-media,.bs-single-article .bs-single-media img{border-radius:var(--bs-radius);margin:18px 0;}
.bs-term-desc{color:var(--bs-muted);margin:0 0 16px;}

/* Pagination */
.bs-pagination{margin-top:30px;}
.bs-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap;}
.bs-pagination a,.bs-pagination .current{padding:8px 14px;border-radius:10px;border:1px solid var(--bs-line);font-weight:600;}
.bs-pagination .current{background:var(--bs-green);color:#fff;border-color:var(--bs-green);}

/* Misc */
.bs-empty{padding:26px;text-align:center;color:var(--bs-muted);background:var(--bs-soft);border-radius:12px;}
.bs-404{text-align:center;}

/* Footer */
.bs-site-footer{border-top:1px solid var(--bs-line);background:var(--bs-soft);margin-top:40px;padding:30px 0;}
.bs-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.bs-footer-brand{font-weight:800;margin:0;}
.bs-footer-copy{color:var(--bs-muted);font-size:14px;margin:0;}
