/* 70bet - CSS Modules Architecture */
/* Reset */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Poppins', sans-serif; line-height: 1.6; color: #333; }
img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; color: inherit; }

/* Layout Modules */
.layout-container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.layout-grid { display: grid; gap: 24px; }
.layout-flex { display: flex; gap: 16px; }

/* Header Module */
.header-primary { background: #000; color: #fff; padding: 20px 0; position: sticky; top: 0; z-index: 100; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
.header-content { display: flex; justify-content: space-between; align-items: center; }
.header-logo { display: flex; align-items: center; gap: 12px; }
.header-logo img { height: 50px; }
.header-brand { font-size: 28px; font-weight: 900; color: #FF8C00; }

/* Navigation Module */
.nav-primary { display: flex; gap: 24px; align-items: center; }
.nav-link { color: #fff; font-weight: 500; transition: color 0.3s; }
.nav-link:hover { color: #FF8C00; }

/* Button Module */
.btn-primary { background: linear-gradient(135deg, #FF8C00, #FFA500); color: #fff; padding: 12px 32px; border-radius: 8px; font-weight: 700; transition: transform 0.3s, box-shadow 0.3s; border: none; cursor: pointer; display: inline-block; }
.btn-primary:hover { transform: translateY(-2px); box-shadow: 0 8px 16px rgba(255,140,0,0.3); }

/* Hero Module */
.hero-section { background: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.7)), url('/images/hero-background.jpg') center/cover; color: #fff; padding: 100px 0; text-align: center; }
.hero-title { font-size: 48px; font-weight: 900; margin-bottom: 20px; color: #FF8C00; text-shadow: 2px 2px 4px rgba(0,0,0,0.5); }
.hero-subtitle { font-size: 24px; margin-bottom: 30px; }

/* Card Module */
.card-game { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 4px 12px rgba(0,0,0,0.1); transition: transform 0.3s, box-shadow 0.3s; }
.card-game:hover { transform: translateY(-8px); box-shadow: 0 8px 24px rgba(255,140,0,0.2); }
.card-image { width: 100%; height: 200px; object-fit: cover; }
.card-content { padding: 20px; }
.card-title { font-size: 22px; font-weight: 700; color: #FF8C00; margin-bottom: 12px; }
.card-text { color: #666; margin-bottom: 16px; }

/* Games Grid Module */
.games-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 32px; padding: 60px 0; }

/* FAQ Module */
.faq-section { background: #f8f9fa; padding: 60px 0; }
.faq-item { background: #fff; border-radius: 8px; padding: 24px; margin-bottom: 16px; box-shadow: 0 2px 8px rgba(0,0,0,0.05); }
.faq-question { font-size: 18px; font-weight: 700; color: #FF8C00; margin-bottom: 12px; }
.faq-answer { color: #666; line-height: 1.8; }

/* Review Module */
.review-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 24px; padding: 60px 0; }
.review-card { background: #fff; border-radius: 12px; padding: 24px; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
.review-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.review-author { font-weight: 700; color: #333; }
.review-rating { color: #FF8C00; font-size: 18px; }
.review-text { color: #666; line-height: 1.8; }

/* Footer Module */
.footer-primary { background: #000; color: #fff; padding: 60px 0 20px; }
.footer-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 40px; margin-bottom: 40px; }
.footer-title { color: #FF8C00; font-size: 18px; font-weight: 700; margin-bottom: 16px; }
.footer-links { list-style: none; }
.footer-link { color: #ccc; margin-bottom: 8px; transition: color 0.3s; }
.footer-link:hover { color: #FF8C00; }
.footer-bottom { text-align: center; padding-top: 20px; border-top: 1px solid #333; color: #999; }

/* Utility Modules */
.text-center { text-align: center; }
.mb-4 { margin-bottom: 40px; }
.py-16 { padding: 60px 0; }
.section-title { font-size: 36px; font-weight: 900; color: #FF8C00; margin-bottom: 40px; text-align: center; }
