:root{
  --primary:#0b68d3; /* Ryans-like blue */
  --accent:#00a86b;
  --muted:#6c757d;
  --card-radius:12px;
  --shadow: 0 6px 20px rgba(13,38,77,0.06);
  font-family: "Poppins", "Helvetica Neue", Arial, sans-serif;
}

body { background:#f5f7fb; color:#222; margin:0; }

/* Header */
.site-header { z-index: 1100; }
.site-title { color:var(--primary); font-weight:700; letter-spacing:0.2px; }
.cart-badge { top: -6px; right: -8px; font-size:12px; padding:4px 6px; }

/* Hero */
.hero { background: linear-gradient(90deg, rgba(11,104,211,0.06), rgba(0,168,107,0.03)); padding:30px 0; border-radius:12px; }

/* Product card */
.product-card { border-radius: var(--card-radius); overflow:hidden; background:#fff; box-shadow:var(--shadow); transition: transform .18s ease, box-shadow .18s ease; }
.product-card:hover { transform: translateY(-6px); box-shadow: 0 10px 30px rgba(13,38,77,0.08); }
.product-card .card-img-top { background:#fff; padding:18px; height:200px; object-fit:contain; }
.product-card .card-body { padding:12px; }
.product-card .card-footer { border-top:1px solid #eee; background:#fff; padding:10px; }

/* Badges */
.badge-offer { background:var(--primary); color:#fff; font-weight:600; padding:6px 8px; border-radius:6px; }
.badge-out { background:#d9534f; color:#fff; padding:6px 8px; border-radius:6px; }

/* Buttons */
.btn-primary { background:var(--primary); border-color:var(--primary); }
.btn-primary:hover { background:#094fb0; border-color:#094fb0; }

/* Footer */
footer { background:#0e1724; color:#e9eef6; padding:40px 0; }
footer a { color: #cfe6ff; text-decoration:none; }

/* Responsive tweaks */
@media (max-width:767px){
  .product-card .card-img-top { height:140px; padding:12px; }
  .site-title { display:none; }
}
.topbar { font-size: 13px; }
.site-title { font-weight: 700; color:#0b68d3; }
.nav-link:hover { background: rgba(255,255,255,0.2); }
.mobile-nav a { color:#333; text-decoration:none; }
.cart-badge { top:-6px; right:-8px; font-size:11px; padding:3px 6px; }