/*
 * Archetype: events-dynamic
 * Events Dynamisch — Spannende evenementen en entertainment met dynamische, kleurrijke uitstraling.
 * Auto-generated door build-theme-archetype-css.php
 */
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Raleway:wght@400;500;600;700&display=swap');

:root {
    --primary: #9B59B6;
    --primary-dark: color-mix(in srgb, #9B59B6 85%, black);
    --primary-light: color-mix(in srgb, #9B59B6 15%, white);
    --secondary: #E74C3C;
    --accent: #1ABC9C;
    --bg: #FFFFFF;
    --bg-alt: color-mix(in srgb, #FFFFFF 94%, #1A1A1A);
    --text: #1A1A1A;
    --text-dim: #95A5A6;
    --dim: #374151;
    --muted: #95A5A6;
    --radius: 20px;
    --radius-sm: calc(20px * 0.5);
    --radius-lg: calc(20px * 1.5);
    --shadow: 0 20px 40px rgba(0,0,0,.15), 0 8px 16px rgba(0,0,0,.08);
    --font-heading: 'Bebas Neue', system-ui, sans-serif;
    --font-body: 'Raleway', system-ui, sans-serif;
}

body { background: var(--bg); color: var(--text); font-family: var(--font-body); }
h1,h2,h3,h4,h5,h6 { font-family: var(--font-heading); color: var(--text); letter-spacing: .05em; }
a { color: var(--primary); }

.btn-primary { color: #fff !important; background: linear-gradient(135deg, #9B59B6, #E74C3C); border: 0; border-radius: 12px; box-shadow: 0 4px 20px rgba(155,89,182,.3); transition: all .3s ease; }
.btn-primary:hover { transform: translateY(-3px); box-shadow: 0 8px 32px rgba(155,89,182,.4); }
.btn-secondary { background: var(--bg-alt); color: var(--text); border-radius: 12px; }
.card, .itw-card, section.widget { border-radius: 20px; box-shadow: var(--shadow); }
.hero-title, .itw-hero__title { color: var(--text); }
.hero-accent, .itw-hero__accent { color: var(--accent); }

/* === EVENTS: Dynamic energy — gradients, vibrant transitions, bold type === */
h2 { font-size: 2.4rem; letter-spacing: .08em; text-transform: uppercase; }
h3 { letter-spacing: .06em; text-transform: uppercase; }
.sec-badge { background: linear-gradient(135deg, var(--primary), var(--secondary)); color: #fff; border-radius: 8px; padding: 6px 16px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; font-family: var(--font-heading); font-size: .9rem; }
.hero-ov { background: linear-gradient(135deg, rgba(155,89,182,.5), rgba(231,76,60,.3)) !important; }
.hero-badge { background: linear-gradient(135deg, var(--primary), var(--accent)); color: #fff; border-radius: 8px; text-transform: uppercase; letter-spacing: .1em; font-family: var(--font-heading); }
.hero h1 { font-size: 3.2rem; letter-spacing: .08em; text-transform: uppercase; }
.nav { background: linear-gradient(90deg, #2c1340, #1a1a2e); }
.nav a { color: #fff; text-transform: uppercase; letter-spacing: .06em; font-weight: 500; }
.topbar { background: linear-gradient(90deg, #9B59B6, #E74C3C); color: #fff; }
.voordeel-card { border-radius: 16px; background: #fff; border: 2px solid #f0f0f0; transition: all .3s ease; position: relative; overflow: hidden; }
.voordeel-card:hover { border-color: var(--primary); transform: translateY(-6px); }
.voordeel-card::after { content: ''; position: absolute; bottom: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, var(--primary), var(--secondary), var(--accent)); }
.ms12-voordeel-icon { background: linear-gradient(135deg, var(--primary), var(--accent)); color: #fff; width: 48px; height: 48px; border-radius: 12px; display: flex; align-items: center; justify-content: center; }
.ms-price-card { border-radius: 16px; border: 2px solid #eee; position: relative; overflow: hidden; transition: transform .3s; }
.ms-price-card:hover { transform: scale(1.02); }
.ms-price-card--featured { border-color: var(--primary); }
.ms-price-card--featured::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(90deg, var(--primary), var(--secondary), var(--accent)); }
.ms-price-badge { background: linear-gradient(135deg, var(--primary), var(--secondary)); color: #fff; border-radius: 8px; text-transform: uppercase; letter-spacing: .06em; font-family: var(--font-heading); font-size: .85rem; }
.ms-price-amount { font-family: var(--font-heading); font-size: 2rem; letter-spacing: .04em; }
.ms-problem-card { border-radius: 16px; border: 2px solid #eee; }
.ms-problem-card--solution { border-color: var(--accent); background: rgba(26,188,156,.04); }
.ms12-rating-card { border-radius: 16px; background: linear-gradient(135deg, #2c1340, #1a1a2e); color: #fff; }
.ms12-rating-card .ms12-rating-title, .ms12-rating-card .ms12-rating-score, .ms12-rating-card .ms12-rating-meta { color: #fff; }
.ms12-rating-card .ms12-rating-stars i { color: #FFD700; }
.ms12-rating-score { font-family: var(--font-heading); font-size: 3rem; letter-spacing: .06em; }
.ms12-lead-card { border-radius: 16px; border: 2px solid rgba(155,89,182,.15); }
.ms12-input, .ms12-textarea { border-radius: 10px !important; border: 2px solid #eee; }
.footer { background: linear-gradient(135deg, #1a1a2e, #2c1340); }
.sec-alt { background: #f8f5fb; }
.wave-divider svg path { fill: #f8f5fb; }
.sec h2::after { content: ''; display: block; width: 60px; height: 4px; background: linear-gradient(90deg, var(--primary), var(--secondary)); border-radius: 2px; margin-top: 10px; }
