/* ==========================================================================
   MAI Events Child Theme - Global Variables & Reset
   ========================================================================== */

:root {
	/* Colors */
	--color-bg: #030712;
	--color-text: #f3f4f6;
	--color-text-muted: #9ca3af;
	--color-primary: #0ea5e9; /* Cyan */
	--color-primary-hover: #38bdf8;
	--color-accent: #f59e0b; /* Amber */
	--color-accent-rgb: 245, 158, 11;
	--color-card-bg: rgba(17, 24, 39, 0.7);
	--color-border: rgba(255, 255, 255, 0.08);
	
	/* Fonts */
	--font-primary: 'Inter', sans-serif;
	--font-title: 'Outfit', sans-serif;

	/* Transitions */
	--transition-smooth: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	--transition-fast: all 0.2s ease;
}

/* Reset & Base Styles */
*, *::before, *::after {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

html, body {
	background-color: var(--color-bg);
	color: var(--color-text);
	font-family: var(--font-primary);
	font-size: 16px;
	line-height: 1.6;
	overflow-x: clip;
	width: 100%;
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-title);
	font-weight: 700;
	color: #ffffff;
	line-height: 1.2;
}

a {
	color: inherit;
	text-decoration: none;
	transition: var(--transition-fast);
}

img {
	max-width: 100%;
	height: auto;
	display: block;
}

button, .btn {
	cursor: pointer;
	border: none;
	background: none;
	font-family: var(--font-primary);
}

/* Utility Scroll Behavior */
html.lenis, html.lenis body {
	height: auto;
}

.lenis-smooth {
	scroll-behavior: auto !important;
}

.lenis-smooth [data-lenis-prevent] {
	overscroll-behavior: contain;
}

.lenis-stopped {
	overflow: hidden;
}

.lenis-scrolling iframe {
	pointer-events: none;
}
