* { box-sizing: border-box; margin: 0; padding: 0; }
:root { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; color: #1d1d1f; background: #f5f7fc; }
body { background: #f5f7fc; line-height: 1.5; color: #111827; }
.container { width: min(1100px, 92%); margin: 0 auto; }
.hero { background: linear-gradient(120deg, #1d4ed8 0%, #2563eb 100%); color: white; padding: 3rem 0; border-radius: 0 0 24px 24px; margin-bottom: 1.5rem; }
.hero .badge { display: inline-flex; align-items: center; font-weight: 700; background: #ef4444; color: white; border-radius: 999px; padding: .25rem .75rem; font-size: .75rem; margin-bottom: .9rem; letter-spacing: .03em; text-transform: uppercase; }
.hero h1 { font-size: clamp(1.8rem, 6vw, 3rem); max-width: 650px; margin-bottom: .8rem; }
.subtitle { color: #e2e8f0; margin-bottom: 1rem; max-width: 640px; }
.cta { background: white; color: #1d4ed8; border-radius: 999px; padding: .7rem 1.2rem; display: inline-block; font-weight: 700; text-decoration: none; margin-top: .5rem; }
.stats { margin-top: 1.2rem; display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem; max-width: 680px; }
.stats div { background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.18); border-radius: 12px; padding: .45rem .7rem; }
.stats strong { display: block; font-size: .95rem; }
.stats span { font-size: .75rem; color: #dbeafe; }
.section-intro { margin: 1rem 0 1.8rem; }
.section-intro h2 { font-size: 1.6rem; margin-bottom: .4rem; }
.section-intro p { color: #4b5563; }
.feature-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px,1fr)); gap: .8rem; margin-top: .9rem; }
.feature { background: white; border: 1px solid #e5e7eb; border-radius: 12px; padding: .85rem; box-shadow: 0 2px 8px rgba(0,0,0,.04); }
.feature h3 { margin-bottom: .3rem; font-size: 1rem; }
.feature p { font-size: .9rem; color: #4b5563; }
.section-header h2 { margin-top: 1.2rem; font-size: 1.6rem; }
.section-header p { color: #4b5563; margin-bottom: .7rem; }
.products { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: .8rem; }
.product { background: white; border: 1px solid #e5e7eb; border-radius: 14px; padding: .9rem; display: flex; flex-direction: column; gap: .45rem; }
.product-image { width: 100%; height: 170px; object-fit: cover; border-radius: 10px; margin-bottom: .6rem; }
.product-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: .3rem; }
.tag { background: #e0e7ff; color: #1d4ed8; font-size: .75rem; border-radius: 999px; padding: .2rem .6rem; font-weight: 700; text-transform: uppercase; letter-spacing: .02em; }
.product h3 { margin: .4rem 0 .2rem; font-size: 1rem; }
.product p { color: #374151; font-size: .9rem; margin-bottom: .4rem; }
.product ul { margin-left: 1rem; color: #4b5563; font-size: .85rem; list-style: disc; margin-bottom: .6rem; }
.product-actions { display: flex; justify-content: flex-start; }
.product-actions .btn-add { margin-top: 0; }
.callout { margin: 1.5rem 0; background: #eef2ff; border: 1px solid #c7d2fe; border-radius: 14px; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem; }
.callout h2 { margin-bottom: .2rem; font-size: 1.3rem; }
.callout p { color: #334155; }
.cta-inverse { background: #1d4ed8; color: white; border-radius: 999px; padding: .5rem .9rem; text-decoration: none; font-weight: 700; }
.alert { margin: .8rem 0; padding: .65rem .9rem; border-radius: 10px; background: #e0f2fe; color: #0c4a6e; border: 1px solid #bae6fd; }
.btn-add { background: #1d4ed8; color: white; border-radius: 8px; text-decoration: none; text-align: center; padding: .5rem .75rem; margin-top: auto; font-weight: 700; display: inline-block; }
.btn-add:hover { background: #2563eb; }
.cart-panel { background: white; border: 1px solid #e5e7eb; border-radius: 14px; padding: 1rem; margin-top: 1.2rem; }
.cart-empty { color: #374151; background: #f8fafc; border: 1px dashed #cbd5e1; padding: .7rem; border-radius: 8px; }
.cart-table { width: 100%; border-collapse: collapse; margin-top: .5rem; font-size: .92rem; }
.cart-table th, .cart-table td { border: 1px solid #e5e7eb; padding: .45rem .5rem; text-align: left; vertical-align: middle; }
.cart-table th { background: #f3f4f6; }
.qty-btn { text-decoration: none; display: inline-block; width: 20px; height: 20px; line-height: 20px; text-align: center; border-radius: 50%; border: 1px solid #d1d5db; color: #1f2937; font-weight: 700; margin: 0 4px; }
.remove-link { color: #dc2626; text-decoration: none; font-weight: 700; }
.remove-link:hover { text-decoration: underline; }
.cart-actions { margin-top: .7rem; }
.cart-actions .cta-inverse { text-decoration: none; }
.footer { padding: 1rem 0; margin-top: 1rem; background: #111827; color: white; font-size: .9rem; }
.footer p { margin-bottom: .2rem; }
@media (max-width: 820px) { .stats { grid-template-columns: 1fr; } .callout { flex-direction: column; align-items: flex-start; } .products { grid-template-columns: 1fr; } .cart-table th, .cart-table td { font-size: .8rem; } }

