/* Nuevo Color Palette para Juego La Fortuna — Versión Rojo/Naranja */
:root {
/* Primary Colors (renombradas pero reutilizando las mismas variables) */
--primary-purple: #b71c1c;
--primary-purple-dark: #7f0000;
--primary-purple-light: #ff7043;

/* Secondary (antes "gold" → ahora ámbar/naranja) */
--accent-gold: #ff6f00;
--accent-gold-dark: #e65100;
--accent-gold-light: #ffa726;

/* Tertiary */
--success-emerald: #00c853;
--warning-orange: #f57c00;
--danger-red: #d32f2f;

/* Neutros cálidos */
--text-primary: #1b1717;
--text-secondary: #5a4e4e;
--text-light: #7d6d6d;
--text-white: #ffffff;
--bg-white: #fffcf7;
--bg-light: #fff3e9;
--bg-dark: #1f1b24;
--border-light: #f7d6c4;

/* Spacing Scale (8px grid) */
--space-xs: 4px;
--space-sm: 8px;
--space-md: 16px;
--space-lg: 24px;
--space-xl: 32px;
--space-2xl: 40px;
--space-3xl: 48px;
--space-4xl: 64px;
--space-5xl: 80px;
--space-6xl: 96px;

/* Breakpoints */
--mobile: 320px;
--tablet: 768px;
--desktop: 1024px;
--large-desktop: 1440px;
}

/* Reset and Base Styles */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  }

body {
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
line-height: 1.6;
color: var(--text-primary);
background-color: var(--bg-white);
font-size: 16px;
}

.container {
max-width: 1200px;
margin: 0 auto;
padding: 0 var(--space-md);
}

@media (min-width: 768px) {
.container {
padding: 0 var(--space-lg);
}
}

@media (min-width: 1024px) {
.container {
padding: 0 var(--space-xl);
}
}

/* Age Verification Overlay */
.age-verification-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(183, 28, 28, 0.95);
display: flex;
align-items: center;
justify-content: center;
z-index: 9999;
}

.age-verification-content {
background: var(--bg-white);
padding: var(--space-3xl);
border-radius: 16px;
text-align: center;
max-width: 500px;
margin: var(--space-md);
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.age-warning-icon {
font-size: 3rem;
color: var(--warning-orange);
margin-bottom: var(--space-md);
}

.age-verification-content h2 {
color: var(--primary-purple);
margin-bottom: var(--space-md);
font-size: clamp(1.5rem, 4vw, 2rem);
}

.age-verification-content p {
margin-bottom: var(--space-md);
color: var(--text-secondary);
}

.age-verification-buttons {
display: flex;
gap: var(--space-md);
flex-wrap: wrap;
justify-content: center;
}

.btn-confirm, .btn-deny {
padding: var(--space-md) var(--space-lg);
border: none;
border-radius: 8px;
font-weight: 600;
cursor: pointer;
min-width: 44px;
min-height: 44px;
font-size: 1rem;
}

.btn-confirm {
background-color: var(--success-emerald);
color: var(--text-white);
}

.btn-deny {
background-color: var(--danger-red);
color: var(--text-white);
}

.btn-confirm:hover, .btn-deny:hover {
opacity: 0.9;
}

/* Header */
.header {
background-color: var(--bg-white);
border-bottom: 1px solid var(--border-light);
position: static;
height: 60px;
}

.header-content {
display: flex;
align-items: center;
justify-content: space-between;
height: 60px;
}

.logo img {
height: 40px;
width: auto;
}

.nav-list {
display: none;
list-style: none;
margin: 0;
padding: 0;
}

@media (min-width: 768px) {
.nav-list {
display: flex;
gap: var(--space-lg);
}
}

.nav-link {
text-decoration: none;
color: var(--text-primary);
font-weight: 500;
padding: var(--space-sm) var(--space-md);
border-radius: 6px;
display: flex;
align-items: center;
gap: var(--space-xs);
}

.nav-link.active {
background-color: var(--primary-purple);
color: var(--text-white);
}

.nav-link:hover {
background-color: var(--primary-purple-light);
color: var(--text-white);
}

.nav-toggle {
display: block;
background: none;
border: none;
font-size: 1.5rem;
color: var(--primary-purple);
cursor: pointer;
min-width: 44px;
min-height: 44px;
}

@media (min-width: 768px) {
.nav-toggle {
display: none;
}
}

/* Hero Section */
.hero {
background: linear-gradient(135deg, var(--primary-purple) 0%, var(--primary-purple-dark) 100%);
color: var(--text-white);
padding: var(--space-lg) 0;
min-height: auto;
overflow: visible;
}

@media (min-width: 768px) {
.hero {
padding: var(--space-xl) 0;
}
}

@media (min-width: 1024px) {
.hero {
padding: var(--space-2xl) 0;
}
}

.hero-content {
text-align: center;
}

.hero-title {
font-size: clamp(1.5rem, 4vw, 2rem);
font-weight: 800;
margin-bottom: var(--space-sm);
line-height: 1.2;
}

@media (min-width: 768px) {
.hero-title {
font-size: clamp(2rem, 5vw, 2.5rem);
margin-bottom: var(--space-md);
}
}

@media (min-width: 1024px) {
.hero-title {
font-size: clamp(2.5rem, 4vw, 3rem);
margin-bottom: var(--space-md);
}
}

.hero-subtitle {
font-size: clamp(0.875rem, 3vw, 1rem);
margin-bottom: var(--space-md);
opacity: 0.9;
}

@media (min-width: 768px) {
.hero-subtitle {
font-size: clamp(1rem, 3vw, 1.125rem);
margin-bottom: var(--space-md);
}
}

@media (min-width: 1024px) {
.hero-subtitle {
font-size: clamp(1.125rem, 2vw, 1.25rem);
margin-bottom: var(--space-lg);
}
}

.hero-features {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: var(--space-sm);
margin: var(--space-lg) 0;
padding: var(--space-lg);
background: rgba(255, 255, 255, 0.15);
border-radius: 16px;
backdrop-filter: blur(10px);
border: 2px solid rgba(255, 111, 0, 0.4);
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

@media (min-width: 768px) {
.hero-features {
margin: var(--space-xl) 0;
padding: var(--space-xl);
gap: var(--space-md);
flex-wrap: nowrap;
}
}

.feature-text {
font-weight: 700;
color: var(--text-white);
font-size: 1.1rem;
margin-right: var(--space-md);
text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);
flex-shrink: 0;
}

@media (min-width: 768px) {
.feature-text {
font-size: 1.2rem;
}
}

.feature-item {
color: var(--primary-purple-dark);
font-weight: 800;
font-size: 0.95rem;
display: flex;
align-items: center;
gap: var(--space-xs);
padding: var(--space-sm) var(--space-md);
background: var(--accent-gold);
border-radius: 25px;
border: 2px solid rgba(255, 255, 255, 0.3);
text-shadow: none;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
white-space: nowrap;
}

@media (min-width: 768px) {
.feature-item {
font-size: 1rem;
padding: var(--space-md) var(--space-lg);
}
}

.hero-warning {
font-size: 0.8rem;
font-weight: 600;
color: var(--accent-gold);
display: flex;
align-items: center;
justify-content: center;
gap: var(--space-xs);
flex-wrap: wrap;
text-align: center;
}

@media (min-width: 768px) {
.hero-warning {
font-size: 0.9rem;
}
}

/* Casino Cards Section */
.casinos-section {
padding: var(--space-lg) 0;
}

@media (min-width: 768px) {
.casinos-section {
padding: var(--space-xl) 0;
}
}

@media (min-width: 1024px) {
.casinos-section {
padding: var(--space-2xl) 0;
}
}

.casinos-grid {
display: flex;
flex-direction: column;
gap: var(--space-md);
}

@media (min-width: 768px) {
.casinos-grid {
gap: var(--space-lg);
}
}

@media (min-width: 1024px) {
.casinos-grid {
gap: var(--space-xl);
}
}

.casino-card {
background: var(--bg-white);
border-radius: 16px;
box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
overflow: hidden;
display: flex;
flex-direction: column;
}

@media (min-width: 768px) {
.casino-card {
flex-direction: row;
min-height: 200px;
}
}

.casino-left {
background: linear-gradient(135deg, var(--primary-purple) 0%, var(--primary-purple-dark) 100%);
color: var(--text-white);
padding: var(--space-lg);
position: relative;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
min-height: 200px;
}

@media (min-width: 768px) {
.casino-left {
width: 280px;
flex-shrink: 0;
justify-content: center;
}
}

.casino-rank {
position: absolute;
top: var(--space-md);
left: var(--space-md);
background: rgba(255, 255, 255, 0.2);
backdrop-filter: blur(10px);
border-radius: 50%;
width: 50px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
color: var(--accent-gold);
}

.casino-rank i {
font-size: 0.8rem;
margin-bottom: 2px;
}

.rank-number {
font-size: 1.2rem;
font-weight: 800;
}

.casino-logo {
margin: var(--space-md) 0;
}

.casino-logo-img {
height: 60px;
width: auto;
filter: brightness(0) invert(1);
max-width: 150px;
}

.casino-stars {
font-size: 1.5rem;
color: var(--accent-gold);
margin-bottom: var(--space-sm);
}

.casino-evaluations {
font-size: 0.9rem;
opacity: 0.8;
display: flex;
align-items: center;
gap: var(--space-xs);
}

.casino-right {
padding: var(--space-lg);
background: var(--bg-light);
display: grid;
grid-template-columns: 1fr;
gap: var(--space-md);
align-items: center;
}

@media (min-width: 768px) {
.casino-right {
grid-template-columns: 1fr auto 1fr;
flex: 1;
}
}

.casino-bonus {
text-align: center;
}

@media (min-width: 768px) {
.casino-bonus {
text-align: left;
}
}

.bonus-title {
font-size: 0.8rem;
font-weight: 600;
color: var(--primary-purple);
margin-bottom: var(--space-xs);
letter-spacing: 1px;
}

.bonus-amount {
font-size: 1.2rem;
font-weight: 800;
color: var(--text-primary);
}

.casino-score {
display: flex;
justify-content: center;
}

.score-circle {
width: 80px;
height: 80px;
border-radius: 50%;
background: var(--bg-white);
border: 3px solid var(--success-emerald);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
text-align: center;
}

.score-number {
font-size: 1.8rem;
font-weight: 800;
color: var(--success-emerald);
line-height: 1;
}

.score-label {
font-size: 0.7rem;
color: var(--text-secondary);
font-weight: 500;
}

.casino-buttons {
display: flex;
flex-direction: column;
gap: var(--space-sm);
}

@media (min-width: 768px) {
.casino-buttons {
align-items: flex-end;
}
}

.btn-primary {
background: var(--success-emerald);
color: var(--text-white);
padding: var(--space-md) var(--space-lg);
border-radius: 8px;
text-decoration: none;
font-weight: 600;
display: flex;
align-items: center;
justify-content: center;
gap: var(--space-xs);
min-height: 44px;
text-align: center;
}

.btn-primary:hover {
background: var(--primary-purple);
}

.btn-secondary {
color: var(--primary-purple);
text-decoration: underline;
font-weight: 600;
display: flex;
align-items: center;
justify-content: center;
gap: var(--space-xs);
padding: var(--space-sm);
min-height: 44px;
}

.btn-secondary:hover {
color: var(--primary-purple-dark);
}

/* Educational Section */
.educational-section {
background: var(--bg-light);
padding: var(--space-2xl) 0;
}

@media (min-width: 768px) {
.educational-section {
padding: var(--space-4xl) 0;
}
}

@media (min-width: 1024px) {
.educational-section {
padding: var(--space-5xl) 0;
}
}

.educational-section h2 {
text-align: center;
color: var(--primary-purple);
font-size: clamp(1.5rem, 4vw, 2.5rem);
margin-bottom: var(--space-2xl);
font-weight: 800;
}

.educational-grid {
display: flex;
flex-wrap: wrap;
gap: var(--space-lg);
justify-content: center;
}

.educational-item {
background: var(--bg-white);
padding: var(--space-xl);
border-radius: 16px;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
text-align: center;
flex: 1;
min-width: 280px;
max-width: 100%;
}

@media (min-width: 768px) {
.educational-item {
flex-basis: calc(50% - 12px);
max-width: calc(50% - 12px);
}
}

@media (min-width: 1024px) {
.educational-item {
flex-basis: calc(33.333% - 16px);
max-width: calc(33.333% - 16px);
}
}

.educational-icon {
width: 60px;
height: 60px;
background: linear-gradient(135deg, var(--primary-purple) 0%, var(--primary-purple-light) 100%);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto var(--space-lg);
color: var(--text-white);
font-size: 1.5rem;
}

.educational-item h3 {
color: var(--primary-purple);
font-size: 1.2rem;
font-weight: 700;
margin-bottom: var(--space-md);
}

.educational-item p {
color: var(--text-secondary);
line-height: 1.7;
}

/* Tips Section */
.tips-section {
padding: var(--space-2xl) 0;
}

@media (min-width: 768px) {
.tips-section {
padding: var(--space-4xl) 0;
}
}

@media (min-width: 1024px) {
.tips-section {
padding: var(--space-5xl) 0;
}
}

.tips-section h2 {
text-align: center;
color: var(--primary-purple);
font-size: clamp(1.5rem, 4vw, 2.5rem);
margin-bottom: var(--space-2xl);
font-weight: 800;
}

.tips-grid {
display: flex;
flex-wrap: wrap;
gap: var(--space-lg);
justify-content: center;
}

.tip-item {
background: var(--bg-white);
padding: var(--space-xl);
border-radius: 16px;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
border-left: 4px solid var(--accent-gold);
flex: 1;
min-width: 280px;
max-width: 100%;
}

@media (min-width: 768px) {
.tip-item {
flex-basis: calc(50% - 12px);
max-width: calc(50% - 12px);
}
}

@media (min-width: 1024px) {
.tip-item {
flex-basis: calc(33.333% - 16px);
max-width: calc(33.333% - 16px);
}
}

.tip-number {
width: 40px;
height: 40px;
background: var(--accent-gold);
color: var(--primary-purple);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-weight: 800;
font-size: 1.2rem;
margin-bottom: var(--space-md);
}

.tip-item h3 {
color: var(--primary-purple);
font-size: 1.2rem;
font-weight: 700;
margin-bottom: var(--space-md);
}

.tip-item p {
color: var(--text-secondary);
line-height: 1.7;
}

/* Conclusion Section */
.conclusion-section {
background: linear-gradient(135deg, var(--primary-purple) 0%, var(--primary-purple-dark) 100%);
color: var(--text-white);
padding: var(--space-4xl) 0;
}

.conclusion-content {
text-align: center;
max-width: 800px;
margin: 0 auto;
}

.conclusion-content h2 {
font-size: clamp(1.5rem, 4vw, 2.5rem);
font-weight: 800;
margin-bottom: var(--space-lg);
color: var(--accent-gold);
}

.conclusion-content p {
font-size: 1.1rem;
line-height: 1.8;
margin-bottom: var(--space-lg);
opacity: 0.9;
}

.conclusion-content p:last-child {
margin-bottom: 0;
}

/* Footer - Professional Design */
.footer {
background: linear-gradient(135deg, #1a1a1a 0%, #2c2c2c 100%);
color: var(--text-white);
padding: var(--space-4xl) 0 var(--space-lg) 0;
position: relative;
}

.footer::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(90deg, var(--primary-purple) 0%, var(--accent-gold) 50%, var(--primary-purple) 100%);
}

.responsible-gaming-logos {
background: linear-gradient(135deg, var(--primary-purple-dark), var(--primary-purple));
padding: var(--space-lg);
border-radius: 12px 12px 0 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: var(--space-md);
margin-bottom: 0;
position: relative;
}

.responsible-gaming-logos::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(90deg, var(--accent-gold), var(--accent-gold-light));
}

@media (max-width: 767px) {
.responsible-gaming-logos {
gap: var(--space-sm);
padding: var(--space-md);
}
}

.logo-link {
display: inline-block;
padding: var(--space-xs);
border-radius: 8px;
background: rgba(255, 255, 255, 0.1);
transition: all 0.3s ease;
text-decoration: none;
}

.logo-link:hover {
background: rgba(255, 255, 255, 0.2);
transform: translateY(-2px);
}

.logo-link img {
display: block;
max-width: 100%;
height: auto;
border-radius: 6px;
transition: opacity 0.3s ease;
}

.logo-link img:hover {
opacity: 0.9;
}

.footer-content {
display: grid;
grid-template-columns: 1fr;
gap: var(--space-2xl);
margin-bottom: var(--space-2xl);
}

@media (min-width: 768px) {
.footer-content {
grid-template-columns: 1fr 1fr;
gap: var(--space-4xl);
}
}

@media (min-width: 1024px) {
.footer-content {
grid-template-columns: 2fr 1fr;
align-items: start;
}
}

.footer-left {
display: flex;
flex-direction: column;
gap: var(--space-lg);
}

.footer-logo {
max-width: 250px;
height: auto;
margin-bottom: var(--space-md);
}

.responsible-gaming-text {
background: rgba(255, 111, 0, 0.1);
padding: var(--space-lg);
border-radius: 12px;
border-left: 4px solid var(--accent-gold);
}

.responsible-gaming-text p {
margin-bottom: var(--space-md);
line-height: 1.7;
font-size: 0.95rem;
}

.responsible-gaming-text p:last-child {
margin-bottom: 0;
}

.warning-text {
color: var(--accent-gold);
font-weight: 700;
font-size: 1rem;
text-transform: uppercase;
letter-spacing: 0.5px;
}

.hotline {
color: var(--accent-gold);
font-weight: 700;
font-size: 1.1rem;
display: flex;
align-items: center;
gap: var(--space-sm);
padding: var(--space-md);
background: rgba(255, 111, 0, 0.2);
border-radius: 8px;
border: 1px solid var(--accent-gold);
margin-top: var(--space-md);
}

.footer-right {
display: flex;
flex-direction: column;
gap: var(--space-lg);
}

.footer-nav-title {
color: var(--accent-gold);
font-size: 1.2rem;
font-weight: 700;
margin-bottom: var(--space-md);
text-transform: uppercase;
letter-spacing: 1px;
}

.legal-links {
display: flex;
flex-direction: column;
gap: var(--space-md);
}

.legal-links a {
color: var(--text-white);
text-decoration: none;
display: flex;
align-items: center;
gap: var(--space-sm);
padding: var(--space-md);
border-radius: 8px;
background: rgba(255, 255, 255, 0.05);
border: 1px solid transparent;
font-weight: 500;
transition: all 0.2s ease;
}

.legal-links a:hover {
background: rgba(183, 28, 28, 0.3);
border-color: var(--primary-purple-light);
transform: translateX(4px);
}

.legal-links a i {
color: var(--accent-gold);
width: 16px;
text-align: center;
}

.footer-bottom {
border-top: 2px solid rgba(255, 255, 255, 0.1);
padding-top: var(--space-xl);
background: rgba(0, 0, 0, 0.3);
margin: 0 calc(-1 * var(--space-xl));
padding-left: var(--space-xl);
padding-right: var(--space-xl);
}

.company-info {
text-align: center;
max-width: 800px;
margin: 0 auto;
}

.company-info p {
margin-bottom: var(--space-sm);
font-size: 0.9rem;
line-height: 1.6;
color: rgba(255, 255, 255, 0.8);
}

.company-info p:first-child {
font-size: 1rem;
font-weight: 600;
color: var(--accent-gold);
margin-bottom: var(--space-md);
}

.company-info p:last-child {
margin-bottom: 0;
font-weight: 600;
color: var(--text-white);
}

/* Hidden class for age verification */
.hidden {
display: none !important;
}

/* Responsive utilities */
@media (max-width: 767px) {
.mobile-hidden {
display: none;
}
}

@media (min-width: 768px) {
.desktop-hidden {
display: none;
}
}

/* Accessibility */
.sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border: 0;
}

/* Focus styles */
*:focus {
outline: 2px solid var(--accent-gold);
outline-offset: 2px;
}

/* Additional Styles for Guides Page */

/* Guides Categories Section */
.guides-categories {
padding: var(--space-4xl) 0;
background: var(--bg-light);
}

.guides-categories h2 {
text-align: center;
color: var(--primary-purple);
font-size: clamp(1.5rem, 4vw, 2.5rem);
margin-bottom: var(--space-2xl);
font-weight: 800;
}

.categories-grid {
display: flex;
flex-wrap: wrap;
gap: var(--space-lg);
justify-content: center;
}

.category-card {
background: var(--bg-white);
padding: var(--space-xl);
border-radius: 16px;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
text-align: left;
flex: 1;
min-width: 300px;
max-width: 100%;
border-top: 4px solid var(--accent-gold);
}

@media (min-width: 768px) {
.category-card {
flex-basis: calc(50% - 12px);
max-width: calc(50% - 12px);
}
}

@media (min-width: 1024px) {
.category-card {
flex-basis: calc(33.333% - 16px);
max-width: calc(33.333% - 16px);
}
}

.category-icon {
width: 60px;
height: 60px;
background: linear-gradient(135deg, var(--primary-purple) 0%, var(--primary-purple-light) 100%);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: var(--space-lg);
color: var(--text-white);
font-size: 1.5rem;
}

.category-card h3 {
color: var(--primary-purple);
font-size: 1.3rem;
font-weight: 700;
margin-bottom: var(--space-md);
}

.category-card p {
color: var(--text-secondary);
line-height: 1.6;
margin-bottom: var(--space-md);
}

.category-card ul {
list-style: none;
padding: 0;
margin: 0;
}

.category-card li {
color: var(--text-secondary);
font-size: 0.9rem;
padding: var(--space-xs) 0;
border-bottom: 1px solid var(--border-light);
position: relative;
padding-left: var(--space-md);
}

.category-card li:before {
content: '✓';
color: var(--success-emerald);
font-weight: bold;
position: absolute;
left: 0;
}

.category-card li:last-child {
border-bottom: none;
}

/* Featured Guides Section */
.featured-guides {
padding: var(--space-4xl) 0;
}

.featured-guides h2 {
text-align: center;
color: var(--primary-purple);
font-size: clamp(1.5rem, 4vw, 2.5rem);
margin-bottom: var(--space-2xl);
font-weight: 800;
}

.guides-grid {
display: flex;
flex-wrap: wrap;
gap: var(--space-lg);
justify-content: center;
}

.guide-card {
background: var(--bg-white);
border-radius: 16px;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
overflow: hidden;
flex: 1;
min-width: 320px;
max-width: 100%;
display: flex;
flex-direction: column;
}

@media (min-width: 768px) {
.guide-card {
flex-basis: calc(50% - 12px);
max-width: calc(50% - 12px);
}
}

@media (min-width: 1024px) {
.guide-card {
flex-basis: calc(33.333% - 16px);
max-width: calc(33.333% - 16px);
}
}

.guide-image {
background: linear-gradient(135deg, var(--primary-purple) 0%, var(--primary-purple-dark) 100%);
height: 120px;
display: flex;
align-items: center;
justify-content: center;
color: var(--text-white);
}

.guide-card-icon {
font-size: 2.5rem;
}

.guide-content {
padding: var(--space-lg);
flex: 1;
display: flex;
flex-direction: column;
}

.guide-content h3 {
color: var(--primary-purple);
font-size: 1.2rem;
font-weight: 700;
margin-bottom: var(--space-md);
line-height: 1.3;
}

.guide-content p {
color: var(--text-secondary);
line-height: 1.6;
margin-bottom: var(--space-md);
flex: 1;
}

.guide-meta {
display: flex;
gap: var(--space-md);
margin-bottom: var(--space-md);
font-size: 0.85rem;
}

.guide-meta span {
color: var(--text-light);
display: flex;
align-items: center;
gap: var(--space-xs);
}

.difficulty {
color: var(--accent-gold);
font-weight: 600;
}

.guide-tags {
display: flex;
flex-wrap: wrap;
gap: var(--space-xs);
}

.tag {
background: var(--bg-light);
color: var(--primary-purple);
font-size: 0.75rem;
font-weight: 600;
padding: var(--space-xs) var(--space-sm);
border-radius: 12px;
border: 1px solid var(--border-light);
}

/* Quick Tips Section */
.quick-tips {
background: var(--bg-light);
padding: var(--space-4xl) 0;
}

.quick-tips h2 {
text-align: center;
color: var(--primary-purple);
font-size: clamp(1.5rem, 4vw, 2.5rem);
margin-bottom: var(--space-2xl);
font-weight: 800;
}

.tips-carousel {
display: flex;
flex-wrap: wrap;
gap: var(--space-lg);
justify-content: center;
}

.tip-card {
background: var(--bg-white);
padding: var(--space-xl);
border-radius: 16px;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
text-align: center;
flex: 1;
min-width: 250px;
max-width: 100%;
border-left: 4px solid var(--accent-gold);
}

@media (min-width: 768px) {
.tip-card {
flex-basis: calc(50% - 12px);
max-width: calc(50% - 12px);
}
}

@media (min-width: 1024px) {
.tip-card {
flex-basis: calc(33.333% - 16px);
max-width: calc(33.333% - 16px);
}
}

@media (min-width: 1440px) {
.tip-card {
flex-basis: calc(16.666% - 16px);
max-width: calc(16.666% - 16px);
}
}

.tip-icon {
width: 50px;
height: 50px;
background: var(--accent-gold);
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto var(--space-md);
color: var(--primary-purple);
font-size: 1.2rem;
}

.tip-card h4 {
color: var(--primary-purple);
font-size: 1.1rem;
font-weight: 700;
margin-bottom: var(--space-md);
}

.tip-card p {
color: var(--text-secondary);
line-height: 1.6;
font-size: 0.9rem;
}

/* Hover effects for interactive elements */
.category-card:hover,
.guide-card:hover,
.tip-card:hover {
transform: translateY(-2px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

/* Print styles */
@media print {
.age-verification-overlay,
.nav-toggle,
.footer {
display: none;
}

.hero {
background: none !important;
color: var(--text-primary) !important;
}

.casino-left {
background: none !important;
color: var(--text-primary) !important;
}

.guide-image,
.category-icon,
.tip-icon {
background: none !important;
color: var(--text-primary) !important;
}
}

/* Legal Pages Styles */
.legal-content {
max-width: 800px;
margin: 0 auto;
padding: var(--space-2xl) 0;
}

.legal-header {
text-align: center;
margin-bottom: var(--space-4xl);
}

.legal-header h1 {
color: var(--primary-purple);
font-size: clamp(2rem, 5vw, 3rem);
margin-bottom: var(--space-md);
font-weight: 700;
}

.legal-header .subtitle {
color: var(--text-secondary);
font-size: 1.1rem;
margin-bottom: var(--space-lg);
}

.last-updated {
background: var(--bg-light);
padding: var(--space-md);
border-radius: 8px;
border-left: 4px solid var(--accent-gold);
font-size: 0.9rem;
color: var(--text-secondary);
}

.legal-section {
margin-bottom: var(--space-4xl);
padding: var(--space-2xl);
background: var(--bg-white);
border-radius: 12px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
border: 1px solid var(--border-light);
}

.section-title {
color: var(--primary-purple);
font-size: 1.5rem;
margin-bottom: var(--space-lg);
display: flex;
align-items: center;
gap: var(--space-sm);
font-weight: 600;
}

.section-title i {
color: var(--accent-gold);
font-size: 1.2rem;
}

.section-content {
color: var(--text-primary);
line-height: 1.7;
}

.section-content p {
margin-bottom: var(--space-md);
}

.legal-list {
list-style: none;
padding: 0;
margin: var(--space-lg) 0;
}

.legal-list li {
padding: var(--space-sm) 0;
display: flex;
align-items: flex-start;
gap: var(--space-sm);
border-bottom: 1px solid var(--border-light);
}

.legal-list li:last-child {
border-bottom: none;
}

.legal-list i {
color: var(--success-emerald);
margin-top: 2px;
flex-shrink: 0;
}

.text-link {
color: var(--primary-purple);
text-decoration: none;
font-weight: 500;
border-bottom: 1px solid transparent;
transition: border-color 0.2s ease;
}

.text-link:hover {
border-bottom-color: var(--primary-purple);
}

/* Security Features Grid */
.security-features {
display: grid;
gap: var(--space-lg);
margin-top: var(--space-lg);
}

@media (min-width: 768px) {
.security-features {
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
}

.security-item {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
text-align: center;
}

.security-item i {
font-size: 2rem;
color: var(--success-emerald);
margin-bottom: var(--space-md);
}

.security-item h3 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
font-size: 1.1rem;
}

.security-item p {
color: var(--text-secondary);
font-size: 0.9rem;
margin: 0;
}

/* Rights Grid */
.rights-grid {
display: grid;
gap: var(--space-lg);
margin-top: var(--space-lg);
}

@media (min-width: 768px) {
.rights-grid {
grid-template-columns: repeat(2, 1fr);
}
}

.right-item {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
border-left: 4px solid var(--accent-gold);
}

.right-item i {
font-size: 1.5rem;
color: var(--primary-purple);
margin-bottom: var(--space-sm);
}

.right-item h3 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
font-size: 1.1rem;
}

.right-item p {
color: var(--text-secondary);
font-size: 0.9rem;
margin: 0;
}

/* Contact Information */
.contact-info {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
margin-top: var(--space-lg);
}

.contact-item {
display: flex;
align-items: center;
gap: var(--space-sm);
padding: var(--space-sm) 0;
border-bottom: 1px solid var(--border-light);
}

.contact-item:last-child {
border-bottom: none;
}

.contact-item i {
color: var(--primary-purple);
width: 20px;
flex-shrink: 0;
}

/* Responsible Gaming Notice */
.responsible-gaming-notice {
background: linear-gradient(135deg, var(--warning-orange), var(--danger-red));
color: var(--text-white);
padding: var(--space-2xl);
border-radius: 12px;
margin-top: var(--space-4xl);
}

.notice-content {
display: flex;
align-items: flex-start;
gap: var(--space-lg);
}

.notice-content i {
font-size: 2rem;
flex-shrink: 0;
margin-top: var(--space-xs);
}

.notice-text h3 {
font-size: 1.3rem;
margin-bottom: var(--space-sm);
}

.notice-text p {
margin-bottom: var(--space-sm);
line-height: 1.6;
}

.notice-text p:last-child {
margin: 0;
font-weight: 600;
}

/* Contact Form Styles */
.contact-form {
background: var(--bg-white);
padding: var(--space-2xl);
border-radius: 12px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
margin-bottom: var(--space-2xl);
}

.form-group {
margin-bottom: var(--space-lg);
}

.form-group label {
display: block;
margin-bottom: var(--space-sm);
color: var(--primary-purple);
font-weight: 600;
}

.form-group input,
.form-group select,
.form-group textarea {
width: 100%;
padding: var(--space-md);
border: 2px solid var(--border-light);
border-radius: 8px;
font-size: 1rem;
transition: border-color 0.3s ease;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
outline: none;
border-color: var(--primary-purple);
}

.form-group textarea {
resize: vertical;
min-height: 120px;
}

.form-group.required label::after {
content: " *";
color: var(--danger-red);
}

.btn-submit {
background: linear-gradient(135deg, var(--primary-purple), var(--primary-purple-dark));
color: var(--text-white);
padding: var(--space-md) var(--space-2xl);
border: none;
border-radius: 8px;
font-size: 1.1rem;
font-weight: 600;
cursor: pointer;
transition: transform 0.2s ease;
display: flex;
align-items: center;
gap: var(--space-sm);
}

.btn-submit:hover {
transform: translateY(-2px);
}

/* FAQ Section */
.faq-section {
margin-top: var(--space-4xl);
}

.faq-item {
background: var(--bg-white);
border: 1px solid var(--border-light);
border-radius: 8px;
margin-bottom: var(--space-md);
overflow: hidden;
}

.faq-question {
padding: var(--space-lg);
cursor: pointer;
display: flex;
justify-content: space-between;
align-items: center;
background: var(--bg-light);
font-weight: 600;
color: var(--primary-purple);
}

.faq-question:hover {
background: var(--border-light);
}

.faq-answer {
padding: var(--space-lg);
color: var(--text-primary);
line-height: 1.6;
}

/* Cookie Types */
.cookie-types {
display: grid;
gap: var(--space-lg);
margin: var(--space-lg) 0;
}

.cookie-type {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
border-left: 4px solid var(--accent-gold);
}

.cookie-type h3 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
display: flex;
align-items: center;
gap: var(--space-sm);
}

.cookie-type h3 i {
color: var(--accent-gold);
}

.cookie-type p {
color: var(--text-secondary);
margin: 0;
line-height: 1.6;
}

/* Browser Instructions */
.browser-instructions {
background: var(--bg-light);
padding: var(--space-2xl);
border-radius: 8px;
margin: var(--space-lg) 0;
}

.browser-grid {
display: grid;
gap: var(--space-lg);
margin-top: var(--space-lg);
}

@media (min-width: 768px) {
.browser-grid {
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
}

.browser-item {
background: var(--bg-white);
padding: var(--space-lg);
border-radius: 8px;
border: 1px solid var(--border-light);
}

.browser-item h4 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
display: flex;
align-items: center;
gap: var(--space-sm);
}

.browser-item h4 i {
color: var(--accent-gold);
}

.browser-steps {
list-style: none;
padding: 0;
}

.browser-steps li {
padding: var(--space-xs) 0;
color: var(--text-secondary);
font-size: 0.9rem;
}

.browser-steps li::before {
content: "→";
color: var(--primary-purple);
margin-right: var(--space-xs);
}

/* Warning Signs Grid */
.warning-signs {
display: grid;
gap: var(--space-lg);
margin: var(--space-lg) 0;
}

@media (min-width: 768px) {
.warning-signs {
grid-template-columns: repeat(2, 1fr);
}
}

.warning-item {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
border-left: 4px solid var(--warning-orange);
}

.warning-item i {
color: var(--warning-orange);
font-size: 1.2rem;
margin-right: var(--space-sm);
}

.warning-item p {
margin: 0;
color: var(--text-primary);
}

/* Self-Exclusion Tools */
.exclusion-tools {
background: var(--bg-light);
padding: var(--space-2xl);
border-radius: 8px;
margin: var(--space-lg) 0;
}

.tools-grid {
display: grid;
gap: var(--space-lg);
margin-top: var(--space-lg);
}

@media (min-width: 768px) {
.tools-grid {
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
}

.tool-item {
background: var(--bg-white);
padding: var(--space-lg);
border-radius: 8px;
text-align: center;
border: 1px solid var(--border-light);
}

.tool-item i {
font-size: 2rem;
color: var(--success-emerald);
margin-bottom: var(--space-md);
}

.tool-item h4 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
}

.tool-item p {
color: var(--text-secondary);
font-size: 0.9rem;
margin: 0;
}

/* Crisis Contacts */
.crisis-contacts {
background: linear-gradient(135deg, var(--danger-red), var(--warning-orange));
color: var(--text-white);
padding: var(--space-2xl);
border-radius: 12px;
margin: var(--space-2xl) 0;
}

.crisis-contacts h3 {
text-align: center;
margin-bottom: var(--space-lg);
font-size: 1.5rem;
}

.contacts-grid {
display: grid;
gap: var(--space-lg);
}

@media (min-width: 768px) {
.contacts-grid {
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
}

.contact-card {
background: rgba(255, 255, 255, 0.1);
padding: var(--space-lg);
border-radius: 8px;
text-align: center;
}

.contact-card i {
font-size: 2rem;
margin-bottom: var(--space-md);
}

.contact-card h4 {
margin-bottom: var(--space-sm);
font-size: 1.1rem;
}

.contact-card p {
margin: 0;
font-size: 0.9rem;
opacity: 0.9;
}

.contact-card .phone {
font-size: 1.2rem;
font-weight: 700;
margin-top: var(--space-sm);
}

/* Footer Section Styles for Legal Pages */
.footer-section {
margin-bottom: var(--space-lg);
}

.footer-company {
margin-top: var(--space-md);
color: var(--text-light);
font-size: 0.9rem;
}

.footer-company p {
margin-bottom: var(--space-xs);
}

.footer-nav {
margin-top: var(--space-md);
}

.footer-nav h4 {
color: var(--text-white);
margin-bottom: var(--space-sm);
font-size: 1rem;
}

.footer-nav ul {
list-style: none;
padding: 0;
}

.footer-nav li {
margin-bottom: var(--space-xs);
}

.footer-nav a {
color: var(--text-light);
text-decoration: none;
font-size: 0.9rem;
display: flex;
align-items: center;
gap: var(--space-xs);
}

.footer-nav a:hover {
color: var(--accent-gold);
}

/* Additional Footer Styles for Legal Pages */
.footer-title {
color: var(--text-white);
font-size: 1.1rem;
margin-bottom: var(--space-md);
font-weight: 600;
}

.footer-links {
list-style: none;
padding: 0;
margin: 0;
}

.footer-links li {
margin-bottom: var(--space-sm);
}

.footer-link {
color: var(--text-light);
text-decoration: none;
font-size: 0.9rem;
transition: color 0.3s ease;
display: flex;
align-items: center;
gap: var(--space-xs);
}

.footer-link:hover {
color: var(--accent-gold);
}

.footer-link.current-page {
color: var(--accent-gold);
font-weight: 600;
}

.footer-link.current-page::before {
content: "▶";
font-size: 0.7rem;
}

/* Legal Pages Additional Styles */
.legal-ordered-list {
padding-left: var(--space-lg);
margin: var(--space-lg) 0;
}

.legal-ordered-list li {
margin-bottom: var(--space-md);
line-height: 1.6;
}

.dispute-process {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
margin-top: var(--space-lg);
}

.dispute-process h4 {
color: var(--primary-purple);
margin-bottom: var(--space-md);
}

.disclaimer-box {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
border-left: 4px solid var(--warning-orange);
margin-top: var(--space-lg);
display: flex;
align-items: flex-start;
gap: var(--space-md);
}

.disclaimer-box i {
color: var(--warning-orange);
font-size: 1.5rem;
flex-shrink: 0;
margin-top: var(--space-xs);
}

.disclaimer-box h4 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
}

.disclaimer-box p {
margin: 0;
color: var(--text-secondary);
}

.warning-box,
.update-notice,
.consent-info {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
border-left: 4px solid var(--warning-orange);
margin-top: var(--space-lg);
}

.warning-box i,
.update-notice i {
color: var(--warning-orange);
font-size: 1.2rem;
margin-right: var(--space-sm);
}

.warning-box h4,
.update-notice h4 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
display: flex;
align-items: center;
}

.warning-box p,
.update-notice p {
margin: 0;
color: var(--text-secondary);
}

.consent-info h3 {
color: var(--primary-purple);
margin-bottom: var(--space-md);
}

/* Responsive adjustments for legal pages */
@media (max-width: 767px) {
.legal-content {
padding: var(--space-lg) 0;
}

.legal-section {
padding: var(--space-lg);
margin-bottom: var(--space-lg);
}

.section-title {
font-size: 1.3rem;
flex-direction: column;
align-items: flex-start;
gap: var(--space-xs);
}

.notice-content {
flex-direction: column;
gap: var(--space-md);
}

.contact-form {
padding: var(--space-lg);
}

.browser-grid,
.tools-grid,
.contacts-grid {
grid-template-columns: 1fr;
}
}

/* Responsible Gaming Page Styles */
.rg-section {
margin-bottom: var(--space-4xl);
padding: var(--space-2xl);
background: var(--bg-white);
border-radius: 12px;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
border: 1px solid var(--border-light);
}

.support-resources {
display: grid;
gap: var(--space-lg);
margin-top: var(--space-lg);
}

@media (min-width: 768px) {
.support-resources {
grid-template-columns: repeat(2, 1fr);
}
}

.resource-item {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
border-left: 4px solid var(--success-emerald);
}

.resource-item i {
color: var(--success-emerald);
font-size: 1.5rem;
margin-bottom: var(--space-md);
}

.resource-item h3 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
}

.resource-item p {
color: var(--text-secondary);
margin-bottom: var(--space-sm);
}

.resource-link {
color: var(--primary-purple);
text-decoration: none;
font-weight: 500;
border-bottom: 1px solid transparent;
transition: border-color 0.2s ease;
}

.resource-link:hover {
border-bottom-color: var(--primary-purple);
}

.protection-measures {
display: grid;
gap: var(--space-lg);
margin-top: var(--space-lg);
}

@media (min-width: 768px) {
.protection-measures {
grid-template-columns: repeat(3, 1fr);
}
}

.measure-item {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
text-align: center;
border: 1px solid var(--border-light);
}

.measure-item i {
font-size: 2rem;
color: var(--primary-purple);
margin-bottom: var(--space-md);
}

.measure-item h3 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
}

.measure-item p {
color: var(--text-secondary);
font-size: 0.9rem;
margin: 0;
}

.emergency-section {
background: linear-gradient(135deg, var(--danger-red), var(--warning-orange));
color: var(--text-white);
}

.emergency-content {
display: flex;
align-items: flex-start;
gap: var(--space-lg);
}

.emergency-content i {
font-size: 2.5rem;
flex-shrink: 0;
margin-top: var(--space-xs);
}

.emergency-content h2 {
margin-bottom: var(--space-md);
font-size: 1.5rem;
}

.emergency-contacts {
display: flex;
flex-direction: column;
gap: var(--space-md);
margin-top: var(--space-lg);
}

@media (min-width: 768px) {
.emergency-contacts {
flex-direction: row;
gap: var(--space-2xl);
}
}

.emergency-contact {
display: flex;
align-items: center;
gap: var(--space-sm);
background: rgba(255, 255, 255, 0.1);
padding: var(--space-md);
border-radius: 8px;
}

.emergency-contact i {
font-size: 1.2rem;
flex-shrink: 0;
}

.final-message {
background: var(--bg-light);
padding: var(--space-2xl);
border-radius: 12px;
margin-top: var(--space-2xl);
border: 2px solid var(--accent-gold);
}

.message-content {
display: flex;
align-items: flex-start;
gap: var(--space-lg);
}

.message-content i {
font-size: 2rem;
color: var(--accent-gold);
flex-shrink: 0;
margin-top: var(--space-xs);
}

.message-content h3 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
font-size: 1.3rem;
}

.message-content p {
color: var(--text-primary);
margin: 0;
line-height: 1.6;
}

/* Contact Form Additional Styles */
.error-message {
color: var(--danger-red);
font-size: 0.9rem;
margin-top: var(--space-xs);
display: none;
}

.success-message {
background: var(--success-emerald);
color: var(--text-white);
padding: var(--space-lg);
border-radius: 8px;
margin-bottom: var(--space-lg);
display: none;
align-items: center;
gap: var(--space-sm);
}

.success-message i {
font-size: 1.2rem;
}

.faq-list {
margin-top: var(--space-lg);
}

.faq-list .faq-item {
background: var(--bg-light);
padding: var(--space-lg);
border-radius: 8px;
margin-bottom: var(--space-md);
border-left: 4px solid var(--accent-gold);
}

.faq-list .faq-item h4 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
font-size: 1.1rem;
}

.faq-list .faq-item p {
color: var(--text-secondary);
margin: 0;
line-height: 1.6;
}

/* Browser Item Styles for Cookies Page */
.browser-item {
display: flex;
align-items: flex-start;
gap: var(--space-md);
background: var(--bg-white);
padding: var(--space-lg);
border-radius: 8px;
border: 1px solid var(--border-light);
}

.browser-item i {
font-size: 1.5rem;
color: var(--primary-purple);
flex-shrink: 0;
margin-top: var(--space-xs);
}

.browser-item h4 {
color: var(--primary-purple);
margin-bottom: var(--space-sm);
font-size: 1.1rem;
}

.browser-item p {
color: var(--text-secondary);
margin: 0;
font-size: 0.9rem;
}

/* Skip Link for Accessibility */
.skip-link {
position: absolute;
top: -40px;
left: 6px;
background: var(--primary-purple);
color: var(--text-white);
padding: 8px;
text-decoration: none;
border-radius: 4px;
font-weight: 600;
z-index: 10000;
transition: top 0.3s ease;
}

.skip-link:focus {
top: 6px;
}
