/*
Theme Name: YabaPaw Luxury
Theme URI: https://yabastore.com
Author: YabaPaw
Description: Premium luxury pet boutique theme for dogs and cats. Built for WooCommerce.
Version: 3.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.0
License: Private
Text Domain: yabapaw
*/

:root {
  --cream: #FAF7F2; --blush: #F5E6DA; --blush-mid: #E8C9B0;
  --caramel: #C9A882; --caramel-dark: #A8845E;
  --mocha: #7A5C42; --espresso: #3D2B1F;
  --sage: #B8C9A8; --gold: #D4AF7A; --gold-light: #EDD9A8;
  --bg-primary: #FAF7F2; --bg-secondary: #F2EDE4; --bg-accent: #F5E6DA;
  --text-primary: #3D2B1F; --text-mid: #7A5C42; --text-soft: #A8845E; --text-muted: #9B8070;
  --border: #E8DDD4; --border-soft: #F0E8DF;
  --font-serif: 'Cormorant Garamond', Georgia, serif;
  --font-sans: 'Jost', system-ui, sans-serif;
  --radius-sm: 6px; --radius-md: 12px; --radius-lg: 20px; --radius-xl: 32px; --radius-pill: 100px;
  --shadow-sm: 0 2px 8px rgba(61,43,31,.06); --shadow-md: 0 4px 20px rgba(61,43,31,.10);
  --shadow-lg: 0 8px 40px rgba(61,43,31,.14); --shadow-xl: 0 16px 60px rgba(61,43,31,.18);
  --ease: cubic-bezier(.4,0,.2,1); --trans-fast: 150ms var(--ease); --trans-mid: 300ms var(--ease); --trans-slow: 500ms var(--ease);
  --space-sm: 1rem; --space-md: 1.5rem; --space-lg: 2.5rem; --space-xl: 4rem; --space-2xl: 6rem;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { font-size: 16px; scroll-behavior: smooth; -webkit-font-smoothing: antialiased; }
body { font-family: var(--font-sans); background: var(--bg-primary); color: var(--text-primary); line-height: 1.7; overflow-x: hidden; }
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; border: none; background: none; font-family: inherit; }
ul { list-style: none; }
h1,h2,h3,h4,h5,h6 { font-family: var(--font-serif); font-weight: 600; line-height: 1.2; color: var(--text-primary); }
h1 { font-size: clamp(2.5rem,5vw,4.5rem); }
h2 { font-size: clamp(2rem,3.5vw,3rem); }
h3 { font-size: clamp(1.4rem,2.5vw,2rem); }
p { margin-bottom: 1rem; }
.container { width: 100%; max-width: 1280px; margin: 0 auto; padding: 0 var(--space-md); }
.section { padding: var(--space-2xl) 0; }
.label-tag { font-family: var(--font-sans); font-size: .7rem; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; color: var(--caramel-dark); }
.section-header { text-align: center; margin-bottom: var(--space-xl); }
.section-header .label-tag { display: block; margin-bottom: .75rem; }
.section-header h2 { margin-bottom: .75rem; }
.section-header p { color: var(--text-muted); max-width: 540px; margin: 0 auto; font-size: 1.05rem; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; font-family: var(--font-sans); font-size: .875rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; padding: 1rem 2.5rem; border-radius: var(--radius-pill); transition: all var(--trans-mid); white-space: nowrap; }
.btn-primary { background: var(--espresso); color: var(--cream); box-shadow: var(--shadow-sm); }
.btn-primary:hover { background: var(--mocha); transform: translateY(-1px); box-shadow: var(--shadow-md); }
.btn-gold { background: linear-gradient(135deg, var(--gold), var(--caramel)); color: #fff; box-shadow: 0 4px 20px rgba(201,168,130,.4); }
.btn-gold:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(201,168,130,.5); }
.btn-outline { background: transparent; color: var(--espresso); border: 1.5px solid var(--border); }
.btn-outline:hover { background: var(--bg-accent); border-color: var(--caramel); }
.btn-lg { padding: 1.25rem 3rem; font-size: 1rem; }
.btn-sm { padding: .6rem 1.5rem; font-size: .75rem; }
.badge { display: inline-flex; align-items: center; font-family: var(--font-sans); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; padding: .3rem .85rem; border-radius: var(--radius-pill); }
.badge-sale { background: #FFE8E8; color: #C0392B; }
.badge-new { background: var(--lavender,#E8E0F0); color: #6B4E9B; }
.badge-bestseller { background: var(--gold-light); color: #7A5C10; }
#site-header { position: sticky; top: 0; z-index: 1000; background: rgba(250,247,242,.95); backdrop-filter: blur(12px); border-bottom: 1px solid var(--border-soft); transition: box-shadow var(--trans-mid); }
#site-header.scrolled { box-shadow: var(--shadow-md); }
.header-announce { background: var(--espresso); color: var(--gold-light); font-size: .75rem; letter-spacing: .1em; text-align: center; padding: .5rem var(--space-md); font-family: var(--font-sans); overflow: hidden; white-space: nowrap; }
.marquee-inner { display: inline-flex; animation: marquee 30s linear infinite; }
.marquee-inner span { padding: 0 2.5rem; }
.marquee-inner span::before { content: '✦'; margin-right: 2.5rem; color: var(--caramel); }
@keyframes marquee { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
.header-main { display: flex; align-items: center; justify-content: space-between; padding: 1rem var(--space-md); max-width: 1280px; margin: 0 auto; gap: var(--space-md); }
.site-logo img { height: 50px; width: auto; }
.primary-nav ul { display: flex; align-items: center; gap: .25rem; }
.primary-nav a { font-family: var(--font-sans); font-size: .85rem; font-weight: 500; letter-spacing: .06em; color: var(--text-mid); padding: .5rem 1rem; border-radius: var(--radius-sm); transition: all var(--trans-fast); position: relative; }
.primary-nav a::after { content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:0; height:2px; background:var(--caramel); border-radius:2px; transition:width var(--trans-mid); }
.primary-nav a:hover,.primary-nav .current-menu-item a { color: var(--espresso); }
.primary-nav a:hover::after,.primary-nav .current-menu-item a::after { width: 60%; }
.header-actions { display: flex; align-items: center; gap: .5rem; }
.header-icon-btn { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: var(--radius-sm); color: var(--text-mid); transition: all var(--trans-fast); position: relative; }
.header-icon-btn:hover { background: var(--bg-accent); color: var(--espresso); }
.cart-count { position: absolute; top: 4px; right: 4px; width: 16px; height: 16px; background: var(--caramel); color: #fff; font-size: .6rem; font-weight: 700; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.header-search input { background: var(--bg-secondary); border: 1px solid var(--border); border-radius: var(--radius-pill); padding: .5rem 1rem .5rem 2.5rem; font-size: .85rem; font-family: var(--font-sans); color: var(--text-primary); width: 220px; transition: all var(--trans-mid); outline: none; }
.header-search input:focus { width: 280px; border-color: var(--caramel); box-shadow: 0 0 0 3px rgba(201,168,130,.15); }
.header-search { position: relative; }
.search-icon-pos { position: absolute; left: .875rem; top: 50%; transform: translateY(-50%); color: var(--text-muted); pointer-events: none; font-size: .85rem; }
.mobile-menu-toggle { display: none; flex-direction: column; gap: 5px; width: 28px; padding: 4px; }
.mobile-menu-toggle span { display: block; height: 2px; background: var(--espresso); border-radius: 2px; }
.hero { position: relative; min-height: 88vh; display: grid; grid-template-columns: 1fr 1fr; overflow: hidden; background: var(--blush); }
.hero-content { display: flex; flex-direction: column; justify-content: center; padding: var(--space-2xl) var(--space-lg) var(--space-2xl) var(--space-xl); position: relative; z-index: 2; }
.hero-eyebrow { font-family: var(--font-sans); font-size: .75rem; font-weight: 600; letter-spacing: .25em; text-transform: uppercase; color: var(--caramel-dark); margin-bottom: var(--space-sm); display: flex; align-items: center; gap: .75rem; }
.hero-eyebrow::before { content:''; display:block; width:32px; height:1px; background:var(--caramel); }
.hero-title { font-size: clamp(3rem,6vw,5.5rem); line-height: 1.05; margin-bottom: var(--space-md); color: var(--espresso); }
.hero-title em { font-style: italic; color: var(--caramel); }
.hero-subtitle { font-family: var(--font-sans); font-size: 1.1rem; color: var(--text-mid); max-width: 460px; line-height: 1.8; margin-bottom: var(--space-lg); }
.hero-ctas { display: flex; gap: var(--space-sm); flex-wrap: wrap; margin-bottom: var(--space-lg); }
.hero-trust { display: flex; align-items: center; gap: var(--space-md); flex-wrap: wrap; }
.hero-trust-item { display: flex; align-items: center; gap: .5rem; font-size: .8rem; color: var(--text-soft); }
.hero-image { position: relative; overflow: hidden; }
.hero-image img { width: 100%; height: 100%; object-fit: cover; }
.hero-image-placeholder { width:100%; height:100%; min-height:500px; background:linear-gradient(135deg,#E8C9B0,#C9A882,#A8845E); display:flex; align-items:center; justify-content:center; flex-direction:column; gap:1rem; color:rgba(255,255,255,.7); font-family:var(--font-serif); }
.hero-floating-card { position:absolute; bottom:var(--space-lg); left:var(--space-lg); background:rgba(250,247,242,.95); backdrop-filter:blur(12px); border-radius:var(--radius-lg); padding:var(--space-sm) var(--space-md); box-shadow:var(--shadow-lg); z-index:5; display:flex; align-items:center; gap:var(--space-sm); border:1px solid rgba(255,255,255,.8); animation:float 4s ease-in-out infinite; }
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-8px)} }
.category-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1.25rem; }
.category-card { position:relative; border-radius:var(--radius-xl); overflow:hidden; aspect-ratio:3/4; cursor:pointer; }
.category-card img { width:100%; height:100%; object-fit:cover; transition:transform var(--trans-slow); }
.category-card:hover img { transform:scale(1.06); }
.category-card-placeholder { width:100%; height:100%; display:flex; align-items:center; justify-content:center; font-size:5rem; transition:transform var(--trans-slow); }
.category-card:hover .category-card-placeholder { transform:scale(1.06); }
.category-card-overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(61,43,31,.8) 0,transparent 55%); }
.category-card-body { position:absolute; bottom:0; left:0; right:0; padding:var(--space-md); }
.category-card-body h3 { color:#fff; font-size:1.4rem; margin-bottom:.25rem; }
.category-card-body span { font-size:.8rem; color:rgba(255,255,255,.7); font-family:var(--font-sans); }
.product-card { background:var(--bg-primary); border-radius:var(--radius-xl); overflow:hidden; border:1px solid var(--border-soft); transition:all var(--trans-mid); position:relative; }
.product-card:hover { box-shadow:var(--shadow-lg); transform:translateY(-4px); border-color:var(--blush-mid); }
.product-card-image { position:relative; aspect-ratio:1; overflow:hidden; background:var(--bg-secondary); display:flex; align-items:center; justify-content:center; }
.product-card-image img { width:100%; height:100%; object-fit:cover; transition:transform var(--trans-slow); }
.product-card:hover .product-card-image img { transform:scale(1.05); }
.product-card-image-placeholder { font-size:5rem; transition:transform var(--trans-slow); }
.product-card:hover .product-card-image-placeholder { transform:scale(1.05); }
.product-card-badges { position:absolute; top:.875rem; left:.875rem; display:flex; flex-direction:column; gap:.4rem; }
.product-card-actions { position:absolute; top:.875rem; right:.875rem; display:flex; flex-direction:column; gap:.4rem; opacity:0; transform:translateX(8px); transition:all var(--trans-mid); }
.product-card:hover .product-card-actions { opacity:1; transform:translateX(0); }
.product-action-btn { width:36px; height:36px; background:rgba(250,247,242,.95); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:.9rem; color:var(--text-mid); box-shadow:var(--shadow-sm); transition:all var(--trans-fast); }
.product-action-btn:hover { background:var(--espresso); color:#fff; transform:scale(1.1); }
.product-card-body { padding:1.25rem; }
.product-card-category { font-size:.7rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--caramel-dark); margin-bottom:.4rem; font-family:var(--font-sans); }
.product-card-title { font-family:var(--font-serif); font-size:1.15rem; font-weight:600; color:var(--text-primary); margin-bottom:.5rem; line-height:1.3; }
.product-card-title a { color:inherit; }
.product-card-rating { display:flex; align-items:center; gap:.4rem; margin-bottom:.75rem; }
.stars { display:flex; gap:2px; }
.star { color:var(--gold); font-size:.75rem; }
.star.empty { color:var(--border); }
.rating-count { font-size:.75rem; color:var(--text-muted); font-family:var(--font-sans); }
.product-card-price { display:flex; align-items:baseline; gap:.5rem; flex-wrap:wrap; }
.price-current { font-family:var(--font-sans); font-size:1.2rem; font-weight:700; color:var(--espresso); }
.price-original { font-size:.9rem; color:var(--text-muted); text-decoration:line-through; font-family:var(--font-sans); }
.price-save { font-size:.75rem; font-weight:600; color:#C0392B; background:#FFE8E8; padding:.15rem .5rem; border-radius:var(--radius-pill); }
.product-card-footer { padding:0 1.25rem 1.25rem; }
.btn-add-to-cart { width:100%; background:var(--espresso); color:var(--cream); font-family:var(--font-sans); font-size:.8rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; padding:.875rem; border-radius:var(--radius-md); transition:all var(--trans-mid); border:1.5px solid var(--espresso); cursor:pointer; }
.btn-add-to-cart:hover { background:transparent; color:var(--espresso); }
.trust-strip { padding:1.25rem 0; border-top:1px solid var(--border-soft); border-bottom:1px solid var(--border-soft); background:var(--bg-primary); }
.trust-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:var(--space-md); }
.trust-item { display:flex; align-items:center; gap:1rem; }
.trust-icon-wrap { width:52px; height:52px; border-radius:var(--radius-md); background:var(--blush); display:flex; align-items:center; justify-content:center; font-size:1.4rem; flex-shrink:0; }
.trust-text-title { font-family:var(--font-sans); font-size:.85rem; font-weight:700; color:var(--text-primary); margin-bottom:.15rem; }
.trust-text-desc { font-size:.75rem; color:var(--text-muted); line-height:1.4; font-family:var(--font-sans); }
.newsletter-section { padding:3rem 0 2rem; background:var(--espresso); }
.newsletter-inner { max-width:640px; margin:0 auto; text-align:center; }
.newsletter-inner h2 { color:var(--cream); margin:.75rem 0; }
.newsletter-inner p { color:rgba(250,247,242,.65); margin-bottom:1.25rem; }
.newsletter-form { display:flex; gap:.75rem; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.15); border-radius:var(--radius-pill); padding:.35rem .35rem .35rem 1.5rem; }
.newsletter-form input { flex:1; background:transparent; border:none; font-family:var(--font-sans); font-size:.9rem; color:var(--cream); outline:none; min-width:0; }
.newsletter-form input::placeholder { color:rgba(250,247,242,.45); }
#site-footer { background:var(--espresso); color:rgba(250,247,242,.75); padding:2.5rem 0 1rem; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1.5fr; gap:2rem; margin-bottom:1.75rem; padding-bottom:1.75rem; border-bottom:1px solid rgba(255,255,255,.1); }
.footer-logo { filter:brightness(0) invert(1) opacity(.9); height:44px; margin-bottom:var(--space-sm); }
.footer-brand-col p { font-size:.875rem; line-height:1.7; margin-bottom:var(--space-md); color:rgba(250,247,242,.6); }
.social-links { display:flex; gap:.75rem; }
.social-link { width:38px; height:38px; border-radius:var(--radius-sm); background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; font-size:.9rem; transition:all var(--trans-fast); color:rgba(250,247,242,.7); }
.social-link:hover { background:var(--caramel); color:#fff; transform:translateY(-2px); }
.footer-col-title { font-family:var(--font-sans); font-size:.75rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; color:var(--cream); margin-bottom:1.25rem; }
.footer-links { display:flex; flex-direction:column; gap:.625rem; }
.footer-links a { font-size:.875rem; color:rgba(250,247,242,.6); transition:color var(--trans-fast); }
.footer-links a:hover { color:var(--gold-light); }
.footer-bottom { display:flex; align-items:center; justify-content:space-between; font-size:.8rem; color:rgba(250,247,242,.4); flex-wrap:wrap; gap:var(--space-sm); }
.payment-icons { display:flex; gap:.5rem; align-items:center; }
.payment-icon { background:rgba(255,255,255,.1); border-radius:4px; padding:.2rem .5rem; font-size:.7rem; font-weight:700; color:rgba(250,247,242,.6); font-family:var(--font-sans); letter-spacing:.05em; }
.cart-drawer-overlay { position:fixed; inset:0; background:rgba(61,43,31,.5); z-index:2000; opacity:0; visibility:hidden; transition:all var(--trans-mid); backdrop-filter:blur(4px); }
.cart-drawer-overlay.open { opacity:1; visibility:visible; }
.cart-drawer { position:fixed; top:0; right:0; bottom:0; width:440px; background:var(--bg-primary); z-index:2001; transform:translateX(100%); transition:transform var(--trans-slow); display:flex; flex-direction:column; box-shadow:var(--shadow-xl); }
.cart-drawer.open { transform:translateX(0); }
.cart-drawer-header { padding:var(--space-md) var(--space-lg); border-bottom:1px solid var(--border); display:flex; align-items:center; justify-content:space-between; }
.cart-drawer-title { font-family:var(--font-serif); font-size:1.4rem; color:var(--espresso); }
.cart-drawer-items { flex:1; overflow-y:auto; padding:var(--space-md) var(--space-lg); }
.cart-drawer-footer { padding:var(--space-md) var(--space-lg); border-top:1px solid var(--border); background:var(--bg-secondary); }
.urgency-block { background:var(--blush); border:1px solid var(--blush-mid); border-radius:var(--radius-md); padding:1rem 1.25rem; margin-bottom:var(--space-md); display:flex; flex-direction:column; gap:.75rem; }
.countdown-timer { display:flex; gap:.5rem; align-items:center; }
.countdown-unit { background:var(--espresso); color:var(--cream); border-radius:var(--radius-sm); padding:.4rem .75rem; text-align:center; min-width:52px; }
.countdown-unit .num { display:block; font-family:var(--font-sans); font-size:1.5rem; font-weight:800; line-height:1; }
.countdown-unit .lbl { display:block; font-size:.6rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; opacity:.7; margin-top:.2rem; }
.countdown-sep { font-size:1.5rem; font-weight:700; color:var(--mocha); padding-bottom:.5rem; }
.stock-bar { height:6px; background:rgba(61,43,31,.12); border-radius:var(--radius-pill); overflow:hidden; }
.stock-bar-fill { height:100%; border-radius:var(--radius-pill); background:linear-gradient(90deg,var(--caramel),#C0392B); transition:width 1s var(--ease); }
.product-info-title { font-size:clamp(1.8rem,3vw,2.8rem); margin-bottom:.5rem; line-height:1.15; }
.product-price-current { font-family:var(--font-sans); font-size:2.2rem; font-weight:800; color:var(--espresso); }
.btn-buy-now { display:flex; align-items:center; justify-content:center; gap:.75rem; width:100%; padding:1.25rem; background:linear-gradient(135deg,var(--gold),var(--caramel)); color:#fff; font-family:var(--font-sans); font-size:1rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; border-radius:var(--radius-lg); box-shadow:0 6px 24px rgba(201,168,130,.45); transition:all var(--trans-mid); border:none; cursor:pointer; }
.btn-buy-now:hover { transform:translateY(-2px); box-shadow:0 10px 36px rgba(201,168,130,.55); }
.btn-cart-full { display:flex; align-items:center; justify-content:center; gap:.75rem; width:100%; padding:1.1rem; background:var(--espresso); color:var(--cream); font-family:var(--font-sans); font-size:.9rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; border-radius:var(--radius-lg); transition:all var(--trans-mid); border:1.5px solid var(--espresso); cursor:pointer; }
.btn-cart-full:hover { background:transparent; color:var(--espresso); }
.guarantee-bar { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; padding:var(--space-md); background:var(--bg-secondary); border-radius:var(--radius-lg); margin-bottom:var(--space-md); border:1px solid var(--border-soft); }
.guarantee-item { display:flex; flex-direction:column; align-items:center; text-align:center; gap:.4rem; }
.review-card { background:var(--bg-primary); border-radius:var(--radius-xl); padding:var(--space-md) var(--space-lg); border:1px solid var(--border-soft); margin-bottom:var(--space-sm); }
.reviewer-avatar { width:44px; height:44px; border-radius:50%; background:var(--blush); display:flex; align-items:center; justify-content:center; font-family:var(--font-serif); font-size:1.1rem; font-weight:600; color:var(--caramel-dark); flex-shrink:0; }
.reveal { opacity:0; transform:translateY(32px); transition:opacity .7s var(--ease),transform .7s var(--ease); }
.reveal.visible { opacity:1; transform:translateY(0); }
#social-proof-toast.visible { opacity:1 !important; transform:translateY(0) !important; }
.woocommerce ul.products { display:grid !important; grid-template-columns:repeat(4,1fr); gap:var(--space-md); margin:0 !important; }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select { border:1.5px solid var(--border); border-radius:var(--radius-md); padding:.875rem 1rem; font-family:var(--font-sans); font-size:.9rem; color:var(--text-primary); background:var(--bg-primary); transition:all var(--trans-fast); width:100%; outline:none; }
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus,.woocommerce form .form-row select:focus { border-color:var(--caramel); box-shadow:0 0 0 3px rgba(201,168,130,.15); }
#place_order,.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button { background:linear-gradient(135deg,var(--gold),var(--caramel)) !important; color:#fff !important; font-family:var(--font-sans) !important; font-size:.95rem !important; font-weight:700 !important; letter-spacing:.1em !important; text-transform:uppercase !important; padding:1.1rem 2.5rem !important; border-radius:var(--radius-pill) !important; border:none !important; box-shadow:0 6px 24px rgba(201,168,130,.4) !important; transition:all var(--trans-mid) !important; }
.tab-btn { font-family:var(--font-sans); font-size:.85rem; font-weight:600; letter-spacing:.06em; color:var(--text-muted); padding:1rem 1.5rem; white-space:nowrap; border-bottom:2px solid transparent; margin-bottom:-1px; transition:all var(--trans-fast); cursor:pointer; background:none; border-top:none; border-left:none; border-right:none; }
.tab-btn.active { color:var(--espresso); border-bottom-color:var(--caramel); }
.tab-pane { display:none; } .tab-pane.active { display:block; }
.variant-btn { font-family:var(--font-sans); font-size:.85rem; font-weight:500; padding:.5rem 1.25rem; border:1.5px solid var(--border); border-radius:var(--radius-md); color:var(--text-mid); background:var(--bg-primary); transition:all var(--trans-fast); cursor:pointer; }
.variant-btn:hover,.variant-btn.active { border-color:var(--espresso); background:var(--espresso); color:var(--cream); }
.qty-control { display:flex; align-items:center; border:1.5px solid var(--border); border-radius:var(--radius-md); overflow:hidden; }
.qty-btn { width:44px; height:44px; background:var(--bg-secondary); color:var(--text-mid); font-size:1.2rem; border:none; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all var(--trans-fast); }
.qty-btn:hover { background:var(--blush); color:var(--espresso); }
.qty-input { width:56px; height:44px; text-align:center; border:none; border-left:1.5px solid var(--border); border-right:1.5px solid var(--border); font-family:var(--font-sans); font-size:1rem; font-weight:600; color:var(--text-primary); background:var(--bg-primary); outline:none; }
@media(max-width:1024px){.hero{grid-template-columns:1fr;min-height:auto}.hero-content{padding:var(--space-xl) var(--space-md)}.hero-image{height:400px}.category-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.trust-grid{grid-template-columns:repeat(2,1fr)}.primary-nav{display:none}.mobile-menu-toggle{display:flex}}
@media(max-width:640px){.hero-ctas{flex-direction:column}.newsletter-form{flex-direction:column;border-radius:var(--radius-lg)}.footer-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr}.trust-grid{grid-template-columns:1fr}.cart-drawer{width:100%}.guarantee-bar{grid-template-columns:1fr}}
