@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Inter:wght@300;400;500;600&display=swap');

/* ===== OAKGARDEN LLC – Earthy Green & Cream Theme ===== */
:root {
  --primary: #1565c0;
  --primary-dark: #0d47a1;
  --primary-light: #e3f2fd;
  --accent: #1976d2;
  --accent-light: #e3f2fd;
  --bg: #fafaf7;
  --surface: #ffffff;
  --border: #e4e0d8;
  --text: #1a1a1a;
  --text-muted: #6b6b6b;
  --success: #2d7a4f;
  --hero-bg: linear-gradient(135deg, #e3f2fd 0%, #f0f8ff 100%);
  --font-serif: 'Playfair Display', Georgia, serif;
  --font-sans: 'Inter', system-ui, sans-serif;
  --radius: 8px;
  --radius-lg: 16px;
  --shadow: 0 2px 12px rgba(0,0,0,.08);
  --shadow-lg: 0 8px 32px rgba(0,0,0,.12);
  --transition: all .25s ease;
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:var(--font-sans); background:var(--bg); color:var(--text); line-height:1.6; }
img { max-width:100%; display:block; }
a { text-decoration:none; color:inherit; }
ul { list-style:none; }

/* ===== TYPOGRAPHY ===== */
h1,h2,h3,h4 { font-family:var(--font-serif); font-weight:600; line-height:1.2; }
h1 { font-size:clamp(2rem,5vw,3.5rem); }
h2 { font-size:clamp(1.5rem,3vw,2.5rem); }
h3 { font-size:1.2rem; }

/* ===== HEADER ===== */
header { background:var(--surface); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:1000; }
.header-inner { max-width:1400px; margin:0 auto; padding:0 24px; height:70px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.logo-wrap { display:flex; align-items:center; gap:12px; }
.logo-wrap img { height:44px; width:auto; object-fit:contain; }
.logo-text { font-family:var(--font-serif); font-size:1.3rem; font-weight:700; color:var(--primary); letter-spacing:.5px; }
nav#main-nav { display:flex; gap:28px; }
nav#main-nav a { font-size:.9rem; font-weight:500; color:var(--text); padding:6px 0; border-bottom:2px solid transparent; transition:var(--transition); }
nav#main-nav a:hover, nav#main-nav a.active { color:var(--primary); border-bottom-color:var(--primary); }
.header-actions { display:flex; align-items:center; gap:16px; }
.header-actions button { background:none; border:none; cursor:pointer; font-size:1.3rem; color:var(--text-muted); transition:var(--transition); position:relative; }
.header-actions button:hover { color:var(--primary); }
#cart-badge { position:absolute; top:-6px; right:-8px; background:var(--primary); color:#fff; font-size:.65rem; font-weight:700; width:18px; height:18px; border-radius:50%; display:none; align-items:center; justify-content:center; }
#menu-toggle { display:none; }
.search-bar { display:none; padding:12px 24px; border-top:1px solid var(--border); background:var(--surface); }
.search-bar.open { display:block; }
.search-bar input { width:100%; padding:10px 16px; border:1px solid var(--border); border-radius:var(--radius); font-size:.95rem; outline:none; font-family:var(--font-sans); }
.search-bar input:focus { border-color:var(--primary); }

/* ===== HERO ===== */
.hero { background:var(--hero-bg); padding:80px 24px; text-align:center; position:relative; overflow:hidden; }
.hero::before { content:''; position:absolute; top:-50%; left:-20%; width:600px; height:600px; background:radial-gradient(circle,rgba(61,107,79,.08) 0%,transparent 70%); border-radius:50%; }
.hero-inner { max-width:700px; margin:0 auto; position:relative; }
.hero-badge { display:inline-block; background:var(--primary-light); color:var(--primary); font-size:.8rem; font-weight:600; letter-spacing:1.5px; text-transform:uppercase; padding:6px 16px; border-radius:20px; margin-bottom:20px; }
.hero h1 { margin-bottom:20px; color:var(--text); }
.hero p { font-size:1.1rem; color:var(--text-muted); margin-bottom:36px; max-width:500px; margin-left:auto; margin-right:auto; }
.btn-hero { display:inline-flex; align-items:center; gap:8px; background:var(--primary); color:#fff; padding:15px 36px; border-radius:var(--radius); font-weight:600; font-size:1rem; transition:var(--transition); }
.btn-hero:hover { background:var(--primary-dark); transform:translateY(-2px); box-shadow:var(--shadow-lg); }
.hero-stats { display:flex; justify-content:center; gap:40px; margin-top:48px; padding-top:32px; border-top:1px solid var(--border); }
.stat-item { text-align:center; }
.stat-num { font-family:var(--font-serif); font-size:1.8rem; font-weight:700; color:var(--primary); }
.stat-label { font-size:.8rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:1px; }

/* ===== SECTIONS ===== */
.section { padding:64px 24px; max-width:1400px; margin:0 auto; }
.section-header { text-align:center; margin-bottom:48px; }
.section-label { font-size:.8rem; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:var(--primary); margin-bottom:12px; }
.section-header p { color:var(--text-muted); font-size:1rem; margin-top:12px; }

/* ===== PRODUCT GRID ===== */
.product-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:24px; }
.product-card { background:var(--surface); border-radius:var(--radius-lg); overflow:hidden; border:1px solid var(--border); transition:var(--transition); cursor:pointer; }
.product-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); }
.product-img-wrap { aspect-ratio:3/4; overflow:hidden; background:#f5f5f0; }
.product-img-wrap img { width:100%; height:100%; object-fit:cover; transition:transform .4s ease; }
.product-card:hover .product-img-wrap img { transform:scale(1.05); }
.product-info { padding:16px; }
.product-category { font-size:.75rem; font-weight:600; letter-spacing:1px; text-transform:uppercase; color:var(--primary); }
.product-title { font-family:var(--font-serif); font-size:1rem; margin:6px 0; }
.product-price { font-weight:700; font-size:1.1rem; color:var(--accent); margin-bottom:12px; }
.btn-add { width:100%; background:var(--primary); color:#fff; border:none; padding:10px; border-radius:var(--radius); font-size:.9rem; font-weight:600; cursor:pointer; transition:var(--transition); font-family:var(--font-sans); }
.btn-add:hover { background:var(--primary-dark); }

/* ===== FEATURE STRIP ===== */
.features-strip { background:var(--primary-light); padding:32px 24px; }
.features-inner { max-width:1400px; margin:0 auto; display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:24px; }
.feature-item { display:flex; align-items:center; gap:12px; }
.feature-icon { font-size:1.5rem; }
.feature-text h4 { font-size:.9rem; font-weight:600; }
.feature-text p { font-size:.8rem; color:var(--text-muted); }

/* ===== CATEGORY CARDS ===== */
.category-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:16px; }
.category-card { background:var(--primary-light); border-radius:var(--radius-lg); padding:32px 20px; text-align:center; cursor:pointer; transition:var(--transition); border:1px solid transparent; }
.category-card:hover { background:var(--primary); color:#fff; border-color:var(--primary); transform:translateY(-3px); }
.category-card:hover .cat-icon { color:#fff; }
.cat-icon { font-size:2rem; display:block; margin-bottom:10px; }
.category-card h3 { font-size:1rem; font-weight:600; }

/* ===== NEWSLETTER ===== */
.newsletter { background:var(--primary); color:#fff; padding:64px 24px; text-align:center; }
.newsletter-inner { max-width:500px; margin:0 auto; }
.newsletter h2 { color:#fff; margin-bottom:12px; }
.newsletter p { opacity:.85; margin-bottom:28px; }
.newsletter-form { display:flex; gap:8px; }
.newsletter-form input { flex:1; padding:13px 18px; border:none; border-radius:var(--radius); font-size:.95rem; outline:none; font-family:var(--font-sans); }
.newsletter-form button { background:var(--accent); color:#fff; border:none; padding:13px 24px; border-radius:var(--radius); font-weight:600; cursor:pointer; white-space:nowrap; font-family:var(--font-sans); transition:var(--transition); }
.newsletter-form button:hover { background:#7a5f3a; }

/* ===== FOOTER ===== */
footer { background:#1a1a1a; color:#ccc; padding:64px 24px 24px; }
.footer-inner { max-width:1400px; margin:0 auto; display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; margin-bottom:48px; }
.footer-brand .logo-text { color:#fff; font-size:1.4rem; margin-bottom:12px; display:block; }
.footer-brand p { font-size:.9rem; line-height:1.7; color:#aaa; margin-top:12px; }
footer h4 { color:#fff; font-size:.9rem; font-weight:600; margin-bottom:16px; text-transform:uppercase; letter-spacing:1px; }
footer ul li { margin-bottom:10px; }
footer ul a { color:#aaa; font-size:.9rem; transition:var(--transition); }
footer ul a:hover { color:var(--primary); }
.footer-bottom { border-top:1px solid #333; padding-top:24px; display:flex; justify-content:space-between; align-items:center; font-size:.85rem; color:#666; }
.social-links { display:flex; gap:12px; }
.social-links a { width:36px; height:36px; border-radius:50%; background:#333; color:#fff; display:flex; align-items:center; justify-content:center; font-size:.9rem; transition:var(--transition); }
.social-links a:hover { background:var(--primary); }

/* ===== CART NOTIF ===== */
.cart-notif { position:fixed; bottom:24px; right:24px; background:#1a1a1a; color:#fff; padding:14px 20px; border-radius:var(--radius); font-size:.9rem; transform:translateY(80px); opacity:0; transition:all .3s ease; z-index:9999; pointer-events:none; }
.cart-notif.show { transform:translateY(0); opacity:1; }

/* ===== BUTTONS ===== */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:13px 28px; border-radius:var(--radius); font-weight:600; font-size:.95rem; cursor:pointer; transition:var(--transition); border:none; font-family:var(--font-sans); }
.btn-primary { background:var(--primary); color:#fff; }
.btn-primary:hover { background:var(--primary-dark); transform:translateY(-1px); }
.btn-outline { background:transparent; color:var(--primary); border:2px solid var(--primary); }
.btn-outline:hover { background:var(--primary); color:#fff; }
.btn-dark { background:var(--text); color:#fff; }
.btn-dark:hover { background:#333; }

/* ===== BREADCRUMB ===== */
.breadcrumb { max-width:1400px; margin:0 auto; padding:16px 24px; display:flex; gap:8px; font-size:.85rem; color:var(--text-muted); }
.breadcrumb a { color:var(--primary); }
.breadcrumb span { color:var(--border); }

/* ===== SHOP PAGE ===== */
.shop-layout { max-width:1400px; margin:0 auto; padding:32px 24px; display:grid; grid-template-columns:240px 1fr; gap:32px; }
.shop-sidebar h3 { font-size:1rem; font-weight:600; margin-bottom:16px; padding-bottom:8px; border-bottom:1px solid var(--border); }
.filter-group { margin-bottom:28px; }
.filter-group label { display:flex; align-items:center; gap:8px; font-size:.9rem; margin-bottom:8px; cursor:pointer; }
.filter-group input[type=checkbox] { accent-color:var(--primary); }
.price-range input { width:100%; accent-color:var(--primary); }
.shop-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:24px; flex-wrap:wrap; gap:12px; }
.results-count { font-size:.9rem; color:var(--text-muted); }
.sort-select { padding:8px 16px; border:1px solid var(--border); border-radius:var(--radius); background:var(--surface); font-size:.9rem; outline:none; cursor:pointer; font-family:var(--font-sans); }
.sort-select:focus { border-color:var(--primary); }

/* ===== PRODUCT DETAIL ===== */
.product-detail { max-width:1400px; margin:0 auto; padding:32px 24px; display:grid; grid-template-columns:1fr 1fr; gap:64px; }
.product-gallery .main-img { aspect-ratio:3/4; border-radius:var(--radius-lg); overflow:hidden; background:#f5f5f0; }
.product-gallery .main-img img { width:100%; height:100%; object-fit:cover; }
.product-badge { display:inline-block; background:var(--primary-light); color:var(--primary); font-size:.75rem; font-weight:600; letter-spacing:1px; text-transform:uppercase; padding:4px 12px; border-radius:20px; margin-bottom:12px; }
.detail-price { font-size:2rem; font-weight:700; color:var(--primary-dark); margin:12px 0 20px; }
.detail-desc { font-size:.95rem; color:var(--text-muted); line-height:1.8; margin-bottom:24px; }
.variant-label { font-size:.85rem; font-weight:600; text-transform:uppercase; letter-spacing:.5px; margin-bottom:8px; display:block; }
.size-options, .color-options { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:20px; }
.size-btn { padding:8px 16px; border:1.5px solid var(--border); border-radius:var(--radius); background:transparent; font-size:.85rem; cursor:pointer; transition:var(--transition); font-family:var(--font-sans); }
.size-btn:hover, .size-btn.selected { border-color:var(--primary); background:var(--primary); color:#fff; }
.color-btn { padding:8px 16px; border:1.5px solid var(--border); border-radius:var(--radius); background:transparent; font-size:.85rem; cursor:pointer; transition:var(--transition); font-family:var(--font-sans); }
.color-btn:hover, .color-btn.selected { border-color:var(--primary); background:var(--primary-light); color:var(--primary); }
.qty-row { display:flex; align-items:center; gap:12px; margin-bottom:24px; }
.qty-control { display:flex; align-items:center; border:1px solid var(--border); border-radius:var(--radius); overflow:hidden; }
.qty-control button { width:38px; height:38px; background:var(--primary-light); border:none; font-size:1.1rem; cursor:pointer; color:var(--primary); font-weight:700; transition:var(--transition); }
.qty-control button:hover { background:var(--primary); color:#fff; }
.qty-control input { width:48px; height:38px; border:none; text-align:center; font-size:1rem; background:var(--surface); font-family:var(--font-sans); outline:none; }
.add-cart-btn { flex:1; padding:14px; background:var(--primary); color:#fff; border:none; border-radius:var(--radius); font-size:1rem; font-weight:700; cursor:pointer; transition:var(--transition); font-family:var(--font-sans); }
.add-cart-btn:hover { background:var(--primary-dark); transform:translateY(-1px); }
.product-meta { margin-top:24px; padding-top:24px; border-top:1px solid var(--border); font-size:.85rem; color:var(--text-muted); display:flex; gap:24px; }
.product-meta span { display:flex; align-items:center; gap:6px; }

/* ===== CART PAGE ===== */
.cart-layout { max-width:1200px; margin:0 auto; padding:32px 24px; display:grid; grid-template-columns:1fr 360px; gap:32px; }
.cart-items h2 { margin-bottom:24px; }
.cart-item { display:grid; grid-template-columns:90px 1fr auto; gap:16px; padding:20px 0; border-bottom:1px solid var(--border); align-items:start; }
.cart-item-img { aspect-ratio:1; border-radius:var(--radius); overflow:hidden; background:#f5f5f0; }
.cart-item-img img { width:100%; height:100%; object-fit:cover; }
.cart-item-info h4 { font-family:var(--font-serif); margin-bottom:4px; }
.cart-item-meta { font-size:.85rem; color:var(--text-muted); margin-bottom:12px; }
.cart-qty { display:flex; align-items:center; gap:8px; font-size:.9rem; }
.cart-qty button { width:28px; height:28px; border:1px solid var(--border); background:transparent; border-radius:4px; cursor:pointer; font-size:.9rem; }
.cart-qty button:hover { background:var(--primary-light); }
.cart-qty span { min-width:24px; text-align:center; font-weight:600; }
.remove-btn { background:none; border:none; color:var(--text-muted); cursor:pointer; font-size:1.1rem; padding:4px; transition:var(--transition); }
.remove-btn:hover { color:#e53e3e; }
.cart-summary { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:28px; position:sticky; top:90px; height:fit-content; }
.cart-summary h3 { margin-bottom:20px; padding-bottom:12px; border-bottom:1px solid var(--border); }
.summary-row { display:flex; justify-content:space-between; margin-bottom:12px; font-size:.95rem; }
.summary-row.total { font-weight:700; font-size:1.1rem; border-top:1px solid var(--border); padding-top:12px; margin-top:12px; }
.checkout-btn { width:100%; margin-top:20px; }
.empty-cart { text-align:center; padding:64px 24px; }
.empty-cart .icon { font-size:4rem; margin-bottom:16px; }
.empty-cart p { color:var(--text-muted); margin-bottom:24px; }

/* ===== CHECKOUT ===== */
.checkout-layout { max-width:1100px; margin:0 auto; padding:32px 24px; display:grid; grid-template-columns:1fr 360px; gap:32px; }
.checkout-form h2 { margin-bottom:28px; }
.form-section { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:28px; margin-bottom:24px; }
.form-section h3 { margin-bottom:20px; font-size:1.1rem; padding-bottom:12px; border-bottom:1px solid var(--border); }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-grid.full { grid-template-columns:1fr; }
.form-group { display:flex; flex-direction:column; gap:6px; }
.form-group label { font-size:.85rem; font-weight:600; color:var(--text-muted); text-transform:uppercase; letter-spacing:.5px; }
.form-group input, .form-group select, .form-group textarea { padding:11px 14px; border:1px solid var(--border); border-radius:var(--radius); font-size:.95rem; outline:none; font-family:var(--font-sans); background:var(--bg); transition:var(--transition); }
.form-group input:focus, .form-group select:focus { border-color:var(--primary); background:var(--surface); }
.payment-methods { display:flex; flex-direction:column; gap:12px; }
.payment-method { display:flex; align-items:center; gap:12px; padding:16px; border:1.5px solid var(--border); border-radius:var(--radius); cursor:pointer; transition:var(--transition); }
.payment-method:hover { border-color:var(--primary); background:var(--primary-light); }
.payment-method.selected { border-color:var(--primary); background:var(--primary-light); }
.payment-method input[type=radio] { accent-color:var(--primary); width:18px; height:18px; }
.payment-method-info h4 { font-size:.95rem; margin-bottom:2px; }
.payment-method-info p { font-size:.8rem; color:var(--text-muted); }
.cc-fields { display:none; margin-top:16px; }
.cc-fields.show { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.order-summary { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:28px; position:sticky; top:90px; height:fit-content; }
.order-summary h3 { margin-bottom:20px; padding-bottom:12px; border-bottom:1px solid var(--border); }
.order-item { display:flex; gap:12px; margin-bottom:14px; font-size:.9rem; }
.order-item-img { width:50px; height:50px; border-radius:var(--radius); overflow:hidden; background:#f5f5f0; flex-shrink:0; }
.order-item-img img { width:100%; height:100%; object-fit:cover; }
.order-item-info { flex:1; }
.order-item-info strong { display:block; font-size:.85rem; }
.order-item-info span { color:var(--text-muted); font-size:.8rem; }
.order-item-price { font-weight:600; }
.place-order-btn { width:100%; margin-top:20px; padding:16px; background:var(--primary); color:#fff; border:none; border-radius:var(--radius); font-size:1rem; font-weight:700; cursor:pointer; transition:var(--transition); font-family:var(--font-sans); }
.place-order-btn:hover { background:var(--primary-dark); }
.order-success { display:none; text-align:center; padding:48px 24px; background:var(--surface); border-radius:var(--radius-lg); }
.order-success .success-icon { font-size:4rem; margin-bottom:16px; }
.order-success h2 { color:var(--success); margin-bottom:12px; }
.order-success p { color:var(--text-muted); margin-bottom:24px; }

/* ===== ABOUT/CONTACT ===== */
.page-hero { background:var(--hero-bg); padding:60px 24px; text-align:center; }
.page-hero h1 { margin-bottom:12px; }
.page-hero p { color:var(--text-muted); max-width:500px; margin:0 auto; }
.about-content { max-width:900px; margin:64px auto; padding:0 24px; }
.about-content p { color:var(--text-muted); line-height:1.9; margin-bottom:24px; font-size:1rem; }
.team-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:24px; margin-top:48px; }
.team-card { text-align:center; padding:24px; background:var(--surface); border-radius:var(--radius-lg); border:1px solid var(--border); }
.team-avatar { width:72px; height:72px; border-radius:50%; background:var(--primary-light); display:flex; align-items:center; justify-content:center; margin:0 auto 12px; font-size:1.8rem; }
.contact-grid { max-width:900px; margin:64px auto; padding:0 24px; display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.contact-info p { color:var(--text-muted); font-size:.95rem; line-height:1.8; margin-bottom:20px; }
.contact-detail { display:flex; align-items:center; gap:12px; margin-bottom:16px; font-size:.9rem; }
.contact-detail .ic { font-size:1.2rem; }
.contact-form { background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:32px; }
.contact-form h3 { margin-bottom:24px; }
.contact-form .form-group { margin-bottom:16px; }
.contact-form textarea { min-height:120px; resize:vertical; width:100%; }

/* ===== RESPONSIVE ===== */
@media (max-width:1024px) {
  .footer-inner { grid-template-columns:1fr 1fr; }
  .shop-layout { grid-template-columns:1fr; }
  .shop-sidebar { display:none; }
  .product-detail { grid-template-columns:1fr; gap:32px; }
}
@media (max-width:768px) {
  #menu-toggle { display:block; }
  nav#main-nav { display:none; position:absolute; top:70px; left:0; right:0; background:var(--surface); border-bottom:1px solid var(--border); flex-direction:column; padding:16px 24px; gap:0; shadow:var(--shadow-lg); }
  nav#main-nav.open { display:flex; }
  nav#main-nav a { padding:12px 0; border-bottom:1px solid var(--border); border-right:none; }
  .cart-layout, .checkout-layout { grid-template-columns:1fr; }
  .cart-summary, .order-summary { position:static; }
  .form-grid { grid-template-columns:1fr; }
  .footer-inner { grid-template-columns:1fr; gap:32px; }
  .footer-bottom { flex-direction:column; gap:16px; text-align:center; }
  .hero-stats { gap:24px; }
  .contact-grid { grid-template-columns:1fr; }
  .newsletter-form { flex-direction:column; }
  .cc-fields.show { grid-template-columns:1fr; }
}
@media (max-width:480px) {
  .header-inner { padding:0 16px; }
  .product-grid { grid-template-columns:repeat(2,1fr); gap:12px; }
  .hero-stats { flex-direction:column; gap:16px; }
  .cart-item { grid-template-columns:70px 1fr; }
  .cart-item > *:last-child { grid-column:1/-1; }
}


/* ===== HERO UPDATED - FLEX LAYOUT ===== */
.hero { background:var(--hero-bg); padding:60px 24px; }
.hero-content { max-width:1400px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.hero-text { }
.hero-text h1 { margin-bottom:20px; }
.hero-text p { font-size:1.1rem; color:var(--text-muted); margin-bottom:32px; }
.hero-btns { display:flex; gap:16px; flex-wrap:wrap; }
.btn-hero-outline { display:inline-flex; align-items:center; gap:8px; background:transparent; color:var(--primary); border:2px solid var(--primary); padding:13px 28px; border-radius:var(--radius); font-weight:600; font-size:.95rem; transition:var(--transition); }
.btn-hero-outline:hover { background:var(--primary); color:#fff; }
.hero-image img { width:100%; height:480px; object-fit:cover; border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); }
.hero-stats { max-width:1400px; margin:40px auto 0; padding-top:32px; border-top:1px solid var(--border); display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
@media (max-width:900px) { .hero-content { grid-template-columns:1fr; } .hero-image { display:none; } .hero-stats { grid-template-columns:repeat(2,1fr); } }
@media (max-width:480px) { .hero-stats { grid-template-columns:1fr 1fr; } }
/* ===== FA ICON FIX ===== */
.feature-icon { width:48px; height:48px; background:var(--primary); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.1rem; flex-shrink:0; }
.cat-icon { width:52px; height:52px; background:var(--primary); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:1.2rem; margin:0 auto 12px; transition:var(--transition); }
.category-card:hover .cat-icon { background:#fff; color:var(--primary); }