:root {
    /* Fonts */
    --font-primary: 'Oswald', sans-serif;
    --font-secondary: 'Nunito', sans-serif;

    /* Colors - Gradient Theme */
    --color-bg-light: #e0e5ec;
    --color-bg-medium: #f0f2f5;
    --color-bg-dark: #2c3e50;

    /* Primary Gradient */
    --gradient-primary-start: #5e72e4; /* Modern blue/purple */
    --gradient-primary-end: #825ee4;
    --gradient-primary: linear-gradient(135deg, var(--gradient-primary-start), var(--gradient-primary-end));

    /* Accent Gradient */
    --gradient-accent-start: #f5365c; /* Vibrant pink/red */
    --gradient-accent-end: #f56036;
    --gradient-accent: linear-gradient(135deg, var(--gradient-accent-start), var(--gradient-accent-end));

    /* Text Colors */
    --color-text-light: #f8f9fa;
    --color-text-dark: #34495e;  /* Slightly desaturated dark blue for body text */
    --color-text-darker: #212529; /* Near black for titles */
    --color-text-muted: #7f8c8d; /* Grey for muted text */

    /* Neuromorphism Shadow Colors */
    --shadow-color-light: rgba(255, 255, 255, 0.7);
    --shadow-color-dark: rgba(163, 177, 198, 0.6);

    /* Button/Interactive Element Colors */
    --color-primary: var(--gradient-primary-start);
    --color-primary-darker: #4d5dbf; /* Darker shade of primary start */
    --color-secondary: #6c757d;
    --color-secondary-darker: #545b62;
    --color-tertiary: #11cdef; /* Bright cyan for tertiary actions */
    --color-tertiary-darker: #0da5c0;
    --color-success: #2dce89;
    --color-danger: #f5365c;

    /* Sizes & Spacing */
    --spacing-xs: 0.35rem;
    --spacing-sm: 0.75rem;
    --spacing-md: 1.25rem;
    --spacing-lg: 1.75rem;
    --spacing-xl: 2.5rem;
    --spacing-xxl: 4rem;

    --border-radius-sm: 8px;
    --border-radius-md: 15px;
    --border-radius-lg: 25px;

    /* Transitions */
    --transition-speed-fast: 0.2s;
    --transition-speed-normal: 0.35s;
    --transition-speed-slow: 0.6s;
    --transition-timing-function: cubic-bezier(0.65, 0.05, 0.36, 1); /* Smooth non-linear */

    /* Neuromorphic Shadows */
    --shadow-neu-outer: 6px 6px 12px var(--shadow-color-dark), -6px -6px 12px var(--shadow-color-light);
    --shadow-neu-inner: inset 6px 6px 12px var(--shadow-color-dark), inset -6px -6px 12px var(--shadow-color-light);
    --shadow-neu-flat: 3px 3px 6px var(--shadow-color-dark), -3px -3px 6px var(--shadow-color-light);
}

/* Global Reset & Base Styles */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
body {
    font-family: var(--font-secondary);
    line-height: 1.7;
    color: var(--color-text-dark);
    background-color: var(--color-bg-light);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
}
.page-wrapper { overflow: hidden; }

/* Typography */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-primary);
    font-weight: 700;
    color: var(--color-text-darker);
    margin-bottom: var(--spacing-md);
    line-height: 1.3;
    text-align: center;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.05);
}
h1 { font-size: clamp(2.2rem, 5vw, 3rem); }
h2.section-title { font-size: clamp(1.8rem, 4vw, 2.5rem); margin-bottom: var(--spacing-lg); }
h3 { font-size: clamp(1.4rem, 3vw, 1.8rem); }
h4 { font-size: clamp(1.1rem, 2.5vw, 1.4rem); }

p { margin-bottom: var(--spacing-md); font-size: 1rem; }
a { color: var(--color-primary); text-decoration: none; transition: color var(--transition-speed-fast) ease-in-out; }
a:hover { color: var(--color-primary-darker); text-decoration: underline; }
img { max-width: 100%; height: auto; display: block; }
ul, ol { list-style-position: inside; padding-left: 0; /* Custom list styling */ }
ul li, ol li { margin-bottom: var(--spacing-sm); }
ul { list-style-type: none; }
ul li::before { /* Custom bullet */
    content: "\2022"; /* Bullet character */
    color: var(--color-primary);
    font-weight: bold;
    display: inline-block;
    width: 1em;
    margin-left: -1em;
}


/* Layout */
.container { width: 90%; max-width: 1200px; margin: 0 auto; padding: 0 var(--spacing-md); }
.section { padding: var(--spacing-xxl) 0; position: relative; }
.section-subtitle {
    text-align: center;
    font-size: 1.1rem;
    color: var(--color-text-muted);
    margin-bottom: var(--spacing-xl);
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.6;
}
.section-overlay, .hero-overlay {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background: linear-gradient(rgba(0,0,0,0.55), rgba(0,0,0,0.7));
    z-index: 1;
}
.hero-content, .insights-section .container, .community-section .container, .contact-section .container {
    position: relative; z-index: 2;
}
.has-parallax { background-attachment: fixed; background-position: center; background-repeat: no-repeat; background-size: cover; }

/* Global Button Styles */
.btn, button, input[type="submit"], input[type="button"] {
    display: inline-block;
    font-family: var(--font-primary);
    font-size: 1rem;
    font-weight: 500;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.75px;
    padding: var(--spacing-sm) var(--spacing-lg);
    border-radius: var(--border-radius-md);
    border: none;
    cursor: pointer;
    transition: all var(--transition-speed-normal) var(--transition-timing-function);
    box-shadow: var(--shadow-neu-outer);
    background-color: var(--color-bg-light);
    color: var(--color-primary);
    outline: none;
}
.btn:hover, button:hover, input[type="submit"]:hover, input[type="button"]:hover {
    box-shadow: var(--shadow-neu-inner);
    transform: translateY(1px) scale(0.98);
    color: var(--color-primary-darker);
}
.btn:active, button:active, input[type="submit"]:active, input[type="button"]:active {
    box-shadow: var(--shadow-neu-inner); transform: translateY(2px) scale(0.96);
}

.btn-primary { background-image: var(--gradient-primary); color: var(--color-text-light); }
.btn-primary:hover { filter: brightness(1.1); box-shadow: var(--shadow-neu-inner), 0 0 15px var(--gradient-primary-end); }

.btn-secondary { background-image: var(--gradient-accent); color: var(--color-text-light); }
.btn-secondary:hover { filter: brightness(1.1); box-shadow: var(--shadow-neu-inner), 0 0 15px var(--gradient-accent-end); }

.btn-tertiary, .btn-link {
    background-color: transparent;
    color: var(--color-primary);
    box-shadow: none;
    padding: var(--spacing-xs) var(--spacing-sm);
    text-transform: none;
    font-weight: 600;
    font-family: var(--font-secondary);
}
.btn-tertiary:hover, .btn-link:hover {
    color: var(--color-primary-darker);
    background-color: rgba(var(--color-primary-rgb, 94, 114, 228), 0.1); /* Fallback primary RGB for rgba */
    box-shadow: none; transform: none; text-decoration: underline;
}


/* Header */
.header {
    position: fixed; top: 0; left: 0; width: 100%; z-index: 1000;
    padding: var(--spacing-sm) 0;
    background-color: rgba(224, 229, 236, 0.8);
    backdrop-filter: blur(12px);
    box-shadow: 0 3px 12px rgba(163, 177, 198, 0.3);
    transition: background-color var(--transition-speed-normal) ease, padding var(--transition-speed-normal) ease;
}
.header.scrolled { background-color: rgba(210, 219, 230, 0.9); padding: var(--spacing-xs) 0; }
.navbar { display: flex; justify-content: space-between; align-items: center; }
.navbar-brand { font-family: var(--font-primary); font-size: 1.9rem; font-weight: 700; color: var(--color-primary); }
.navbar-brand .brand-accent { color: var(--color-secondary); }
.navbar-brand:hover { text-decoration: none; }
.navbar-menu { display: flex; }
.navbar-nav { list-style: none; padding-left: 0; display: flex; align-items: center; }
.navbar-nav li { margin-left: var(--spacing-lg); margin-bottom: 0; }
.nav-link {
    font-family: var(--font-secondary); font-weight: 600; color: var(--color-text-dark);
    padding: var(--spacing-sm) var(--spacing-md); border-radius: var(--border-radius-sm);
    transition: color var(--transition-speed-fast) ease, background-color var(--transition-speed-fast) ease;
    position: relative;
}
.nav-link::after { /* Underline effect */
    content: ''; position: absolute; bottom: 0; left: 50%;
    width: 0; height: 2px; background-color: var(--color-primary);
    transition: all var(--transition-speed-normal) var(--transition-timing-function);
    transform: translateX(-50%);
}
.nav-link:hover::after, .nav-link.active::after { width: 70%; }
.nav-link:hover, .nav-link.active { color: var(--color-primary); background-color: transparent; text-decoration: none; }
.navbar-burger { display: none; cursor: pointer; background: none; border: none; padding: 0; z-index: 1001; }
.navbar-burger span { display: block; width: 28px; height: 3px; margin: 6px 0; background-color: var(--color-text-dark); border-radius: 3px; transition: all var(--transition-speed-normal) ease-in-out; }

/* Footer */
.footer { background-color: var(--color-bg-dark); color: var(--color-text-light); padding: var(--spacing-xxl) 0 var(--spacing-lg); }
.footer-content { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--spacing-xl); margin-bottom: var(--spacing-xl); }
.footer-column h4.footer-heading { font-family: var(--font-primary); font-size: 1.4rem; color: var(--gradient-primary-start); margin-bottom: var(--spacing-md); text-align: left; }
.footer-column p { color: #bdc3c7; font-size: 0.95rem; margin-bottom: var(--spacing-sm); }
.footer-links { list-style: none; padding-left: 0; }
.footer-links li { margin-bottom: var(--spacing-sm); }
.footer-links a { color: #ecf0f1; transition: color var(--transition-speed-fast) ease, padding-left var(--transition-speed-fast) ease; }
.footer-links a:hover { color: var(--gradient-primary-start); padding-left: var(--spacing-xs); text-decoration: underline; }
.footer-social-links { list-style: none; padding-left: 0; }
.footer-social-links li { margin-bottom: var(--spacing-sm); }
.footer-social-links a { color: #ecf0f1; font-size: 1rem; } /* Increased font size for text social links */
.footer-social-links a:hover { color: var(--gradient-primary-start); text-decoration: underline; }
.footer-bottom { text-align: center; padding-top: var(--spacing-lg); border-top: 1px solid rgba(255, 255, 255, 0.1); font-size: 0.9rem; color: #bdc3c7; }

/* Hero Section */
.hero-section { min-height: 85vh; display: flex; align-items: center; justify-content: center; text-align: center; color: var(--color-text-light); }
.hero-section .hero-overlay { background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.75)); }
.hero-content { max-width: 850px; padding: var(--spacing-lg); }
.hero-title { font-size: clamp(2.5rem, 6vw, 3.8rem); color: #FFFFFF; text-shadow: 2px 2px 8px rgba(0,0,0,0.75); margin-bottom: var(--spacing-md); }
.hero-subtitle { font-size: clamp(1.1rem, 2.5vw, 1.4rem); color: #FFFFFF; text-shadow: 1px 1px 5px rgba(0,0,0,0.65); margin-bottom: var(--spacing-xl); line-height: 1.7; }
.hero-section .btn-primary { padding: var(--spacing-md) var(--spacing-xl); font-size: 1.15rem; }

/* Our Process Section */
.our-process-section { background-color: var(--color-bg-medium); }
.process-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--spacing-xl); margin-top: var(--spacing-xl); }
.step {
    background-color: var(--color-bg-light); padding: var(--spacing-lg); border-radius: var(--border-radius-md);
    box-shadow: var(--shadow-neu-flat); text-align: center;
    transition: transform var(--transition-speed-normal) var(--transition-timing-function), box-shadow var(--transition-speed-normal) var(--transition-timing-function);
}
.step:hover { transform: translateY(-6px) scale(1.01); box-shadow: var(--shadow-neu-outer); }
.step-icon-container { margin-bottom: var(--spacing-md); display: inline-block; }
.step-icon { width: 70px; height: 70px; border-radius: 50%; object-fit: cover; padding: var(--spacing-xs); background: var(--gradient-primary); box-shadow: var(--shadow-neu-inner); }
.step-title { font-size: 1.5rem; color: var(--color-primary); margin-bottom: var(--spacing-sm); }
.step-description { font-size: 0.95rem; color: var(--color-text-muted); min-height: 110px; }
.progress-bar-container { width: 100%; background-color: #d1d9e6; border-radius: var(--border-radius-sm); margin-top: var(--spacing-md); height: 22px; box-shadow: var(--shadow-neu-inner); overflow: hidden; }
.progress-bar { height: 100%; background-image: var(--gradient-accent); color: white; display: flex; align-items: center; justify-content: center; font-size: 0.85rem; font-weight: 600; border-radius: var(--border-radius-sm); transition: width var(--transition-speed-slow) var(--transition-timing-function); }

/* General Card Styles */
.card {
    background-color: var(--color-bg-light); border-radius: var(--border-radius-lg);
    box-shadow: var(--shadow-neu-outer); overflow: hidden;
    transition: transform var(--transition-speed-normal) var(--transition-timing-function), box-shadow var(--transition-speed-normal) var(--transition-timing-function);
    display: flex; flex-direction: column; align-items: center; text-align: center;
}
.card:hover { transform: translateY(-10px) scale(1.03); box-shadow: 12px 12px 24px var(--shadow-color-dark), -12px -12px 24px var(--shadow-color-light); }
.card-image { width: 100%; height: 230px; overflow: hidden; display: flex; justify-content: center; align-items: center; }
.card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--transition-speed-slow) ease; margin: 0 auto; }
.card:hover .card-image img { transform: scale(1.12); }
.card-content { padding: var(--spacing-lg); width: 100%; display: flex; flex-direction: column; align-items: center; flex-grow: 1; }
.card-title { font-size: 1.6rem; color: var(--color-text-darker); margin-bottom: var(--spacing-sm); }
.card-text { font-size: 0.95rem; color: var(--color-text-muted); margin-bottom: var(--spacing-md); flex-grow: 1; }
.card .btn { margin-top: auto; align-self: center; }

/* Insights Section */
.insights-section .section-title, .insights-section .section-subtitle { color: var(--color-text-light); text-shadow: 1px 1px 4px rgba(0,0,0,0.6); }
.insights-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: var(--spacing-xl); }

/* Behind the Scenes Section */
.behind-the-scenes-section { background-color: var(--color-bg-medium); }
.behind-the-scenes-section .columns { display: flex; flex-wrap: wrap; gap: var(--spacing-xl); align-items: center; }
.behind-the-scenes-section .column { flex: 1; min-width: 300px; }
.behind-the-scenes-section .column.is-two-thirds { flex-basis: 64%; }
.behind-the-scenes-section .content-column p { text-align: left; font-size: 1.05rem; line-height: 1.85; }
.behind-the-scenes-section .image-column .image-container { border-radius: var(--border-radius-lg); overflow: hidden; box-shadow: var(--shadow-neu-outer); }

/* Events Calendar Section */
.events-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(330px, 1fr)); gap: var(--spacing-xl); margin-top: var(--spacing-xl); }
.event-date { font-size: 0.9rem; color: var(--color-primary); font-weight: 600; margin-bottom: var(--spacing-xs); }
.event-description { font-size: 0.9rem; }

/* Community Section */
.community-section .section-title, .community-section .section-subtitle { color: var(--color-text-light); text-shadow: 1px 1px 4px rgba(0,0,0,0.6); }
.community-content { display: flex; flex-wrap: wrap; gap: var(--spacing-xl); align-items: center; color: var(--color-text-light); text-shadow: 1px 1px 2px rgba(0,0,0,0.3); }
.community-text { flex: 2; min-width: 300px; text-align: left; }
.community-text p, .community-text ul li { color: var(--color-text-light); }
.community-text ul { padding-left: 0; } /* Custom bullets handle indent */
.community-text ul li { margin-bottom: var(--spacing-sm); }
.community-actions { flex: 1; text-align: center; min-width: 250px; }
.community-actions .btn { margin: var(--spacing-sm); min-width: 220px; }
.community-actions .btn-secondary { background-color: rgba(255,255,255,0.15); color: var(--color-text-light); border: 1px solid rgba(255,255,255,0.4); box-shadow: none; }
.community-actions .btn-secondary:hover { background-color: rgba(255,255,255,0.25); border-color: var(--color-text-light); }

/* External Resources Section */
.external-resources-section { background-color: var(--color-bg-medium); }
.resources-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)); gap: var(--spacing-lg); margin-top: var(--spacing-xl); }
.resource-item { background-color: var(--color-bg-light); padding: var(--spacing-lg); border-radius: var(--border-radius-md); box-shadow: var(--shadow-neu-flat); transition: all var(--transition-speed-normal) var(--transition-timing-function); display: flex; flex-direction: column; }
.resource-item:hover { transform: translateY(-6px); box-shadow: var(--shadow-neu-outer); }
.resource-title { font-size: 1.25rem; color: var(--color-text-darker); margin-bottom: var(--spacing-sm); text-align: left; }
.resource-description { font-size: 0.9rem; color: var(--color-text-muted); margin-bottom: var(--spacing-md); flex-grow: 1; text-align: left; }
.resource-item .btn-link { margin-top: auto; text-align: left; padding-left: 0; align-self: flex-start; font-weight: 700; }

/* FAQ Section */
.faq-accordion { max-width: 850px; margin: var(--spacing-xl) auto 0; }
.faq-item { background-color: var(--color-bg-light); margin-bottom: var(--spacing-md); border-radius: var(--border-radius-md); box-shadow: var(--shadow-neu-flat); overflow: hidden; transition: box-shadow var(--transition-speed-normal) ease; }
.faq-item:hover { box-shadow: var(--shadow-neu-outer); }
.faq-question { width: 100%; background: transparent; color: var(--color-text-darker); padding: var(--spacing-lg); border: none; text-align: left; font-family: var(--font-primary); font-size: 1.25rem; font-weight: 500; cursor: pointer; display: flex; justify-content: space-between; align-items: center; outline: none; box-shadow: none; }
.faq-question:hover { background-color: rgba(0,0,0,0.015); }
.faq-icon { font-size: 1.6rem; font-weight: 700; transition: transform var(--transition-speed-normal) ease; color: var(--color-primary); }
.faq-item.active .faq-icon { transform: rotate(135deg); } /* Rotated plus to 'x' */
.faq-answer { max-height: 0; overflow: hidden; transition: max-height var(--transition-speed-normal) ease-in-out, padding var(--transition-speed-normal) ease-in-out; padding: 0 var(--spacing-lg); }
.faq-answer p { margin-bottom: var(--spacing-md); font-size: 0.95rem; color: var(--color-text-muted); text-align: left; line-height: 1.7; }
.faq-item.active .faq-answer { padding: var(--spacing-sm) var(--spacing-lg) var(--spacing-lg); }

/* Contact Section */
.contact-section .section-title, .contact-section .section-subtitle { color: var(--color-text-light); text-shadow: 1px 1px 4px rgba(0,0,0,0.6); }
.contact-form-container {
    max-width: 750px; margin: 0 auto var(--spacing-xl);
    background-color: rgba(230, 235, 240, 0.92); /* Slightly more opaque for form */
    padding: var(--spacing-xl); border-radius: var(--border-radius-lg);
    box-shadow: 0 0 30px rgba(0,0,0,0.1), var(--shadow-neu-flat);
    backdrop-filter: blur(8px);
}
.form-group { margin-bottom: var(--spacing-lg); position: relative; }
.form-group input[type="text"], .form-group input[type="email"], .form-group input[type="tel"], .form-group textarea {
    width: 100%; padding: var(--spacing-md); background-color: var(--color-bg-light);
    border: 1px solid #c8d0e0; /* Clearer border */
    border-radius: var(--border-radius-md); font-family: var(--font-secondary);
    font-size: 1rem; color: var(--color-text-dark); box-shadow: var(--shadow-neu-inner);
    transition: border-color var(--transition-speed-fast) ease, box-shadow var(--transition-speed-fast) ease;
    outline: none;
}
.form-group input[type="text"]:focus, .form-group input[type="email"]:focus, .form-group input[type="tel"]:focus, .form-group textarea:focus {
    border-color: var(--color-primary);
    box-shadow: var(--shadow-neu-inner), 0 0 0 3px rgba(var(--color-primary-rgb, 94, 114, 228), 0.2);
}
.form-group textarea { resize: vertical; min-height: 130px; }
.form-group label:not(.checkbox-label) {
    position: absolute; left: var(--spacing-md); top: var(--spacing-md);
    color: var(--color-text-muted); pointer-events: none;
    transition: all var(--transition-speed-fast) ease;
    background-color: var(--color-bg-light); /* Match input for clean float */
    padding: 0 var(--spacing-xs); font-size: 1rem;
}
.form-group input:focus + label, .form-group input:not(:placeholder-shown) + label,
.form-group textarea:focus + label, .form-group textarea:not(:placeholder-shown) + label {
    top: calc(-1 * var(--spacing-sm) - 2px); /* Adjust carefully */
    left: var(--spacing-sm); font-size: 0.8rem; color: var(--color-primary);
}
.form-group input[type="checkbox"] { margin-right: var(--spacing-sm); width: auto; box-shadow: none; vertical-align: middle; accent-color: var(--color-primary); }
.checkbox-label { font-size: 0.9rem; color: var(--color-text-dark); }
.checkbox-label a { color: var(--color-primary); text-decoration: underline; }
.contact-form-container .btn-submit { width: 100%; padding: var(--spacing-md); font-size: 1.15rem; }
.contact-details { text-align: center; color: var(--color-text-light); }
.contact-details p { margin-bottom: var(--spacing-sm); color: var(--color-text-light); }
.contact-details a { color: var(--gradient-primary-start); font-weight: 600; }
.contact-details a:hover { color: var(--color-text-light); }

/* Success Page */
.success-page-container { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100vh; text-align: center; padding: var(--spacing-xl); background-image: var(--gradient-primary); }
.success-content { background-color: var(--color-bg-light); padding: var(--spacing-xxl); border-radius: var(--border-radius-lg); box-shadow: var(--shadow-neu-outer); max-width: 600px; }
.success-content h1 { color: var(--color-success); font-size: clamp(2rem, 5vw, 2.8rem); margin-bottom: var(--spacing-md); }
.success-content p { font-size: 1.1rem; color: var(--color-text-muted); margin-bottom: var(--spacing-xl); }
.success-content .btn { background-image: var(--gradient-accent); color: var(--color-text-light); }

/* Privacy & Terms Pages */
.static-page-content { padding-top: 130px; padding-bottom: var(--spacing-xxl); min-height: calc(100vh - 80px); } /* Adjusted padding */
.static-page-content .container { background-color: #fff; padding: var(--spacing-xl); border-radius: var(--border-radius-md); box-shadow: 0 5px 25px rgba(0,0,0,0.08); }
.static-page-content h1.page-title { font-size: clamp(2rem, 5vw, 2.8rem); margin-bottom: var(--spacing-xl); text-align: left; color: var(--color-text-darker); }
.static-page-content h2 { font-size: clamp(1.5rem, 4vw, 2rem); margin-top: var(--spacing-xl); margin-bottom: var(--spacing-md); text-align: left; color: var(--color-primary); }
.static-page-content p, .static-page-content ul, .static-page-content ol { text-align: left; color: var(--color-text-dark); line-height: 1.85; font-size: 1.05rem; }
.static-page-content ul, .static-page-content ol { margin-left: var(--spacing-lg); }
.static-page-content ul { list-style-type: disc; }
.static-page-content ul li::before { content: ""; margin-left:0; } /* Reset custom bullet for standard disc */
.static-page-content ol { list-style-type: decimal; }


/* Responsive Styles */
@media (max-width: 992px) {
    .behind-the-scenes-section .columns { flex-direction: column; }
    .behind-the-scenes-section .column.is-two-thirds { flex-basis: auto; }
    .behind-the-scenes-section .image-column { order: -1; margin-bottom: var(--spacing-lg); }
}

@media (max-width: 768px) {
    html { font-size: 15px; }
    .navbar-menu {
        display: none; position: absolute; top: 100%; left: 0; width: 100%;
        background-color: var(--color-bg-light); box-shadow: 0 6px 12px rgba(163, 177, 198, 0.35);
        flex-direction: column; align-items: stretch; padding: var(--spacing-sm) 0;
        max-height: 0; overflow: hidden;
        transition: max-height var(--transition-speed-normal) ease-in-out, padding var(--transition-speed-normal) ease-in-out;
    }
    .navbar-menu.is-active { display: flex; max-height: 60vh; } /* Adjust max-height based on content */
    .navbar-nav { flex-direction: column; width: 100%; }
    .navbar-nav li { margin-left: 0; width: 100%; }
    .nav-link { display: block; padding: var(--spacing-md); text-align: center; border-bottom: 1px solid #d1d9e6; }
    .nav-link::after { display: none; } /* Hide underline for mobile menu */
    .navbar-nav li:last-child .nav-link { border-bottom: none; }
    .navbar-burger { display: block; }
    .navbar-burger.is-active span:nth-child(1) { transform: translateY(9px) rotate(45deg); }
    .navbar-burger.is-active span:nth-child(2) { opacity: 0; }
    .navbar-burger.is-active span:nth-child(3) { transform: translateY(-9px) rotate(-45deg); }
    .footer-content { grid-template-columns: 1fr; text-align: center; }
    .footer-column h4.footer-heading, .footer-column p, .footer-social-links, .footer-links { text-align: center; }
    .community-content { flex-direction: column; text-align: center; }
    .community-text { text-align: center; }
    .community-text ul { text-align: left; display: inline-block; }
    .contact-form-container { padding: var(--spacing-lg); }
}

@media (max-width: 576px) {
    html { font-size: 14px; }
    .container { width: 95%; }
    .process-steps, .insights-grid, .events-list, .resources-grid { grid-template-columns: 1fr; }
    .card-image { height: 200px; }
    .static-page-content { padding-top: 110px; }
}