/*
Theme Name: Pioniers
Theme URI: https://pioniers.be
Description: Custom FSE theme for Pioniers - Belgian youth movement
Author: De Pioniers
Author URI: https://pioniers.be
Version: 1.1.0
Requires at least: 6.4
Tested up to: 6.7
Requires PHP: 8.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pioniers
*/

/* ==========================================================================
   GLOBAL VARIABLES & HEADER HEIGHT
   ========================================================================== */

:root {
	--pioniers-header-height: 158px;
}

/* ==========================================================================
   EVENT ARCHIVE - Camp Cards (based on campcard.png)
   ========================================================================== */

/* Camp Card Styling */
.pioniers-camp-card {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	overflow: visible;
}

.pioniers-camp-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

/* Featured Image Container */
.pioniers-camp-card .wp-block-post-featured-image {
	position: relative;
}

/* Badge positioning - overlaid at bottom of image */
.pioniers-camp-card .wp-block-group {
	position: relative;
	z-index: 2;
}

/* Category/Age badges styling */
.pioniers-camp-card .wp-block-post-terms {
	display: inline-block;
	border-radius: 0;
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

/* Button styling matching campcard.png */
.pioniers-camp-card .wp-block-button__link {
	border-radius: 0;
	padding: 12px 16px;
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	transition: opacity 0.2s ease;
}

.pioniers-camp-card .wp-block-button__link:hover {
	opacity: 0.9;
}

/* Price in button */
.event-price-meta {
	font-weight: 700;
}

/* Location text */
.event-location-meta {
	display: inline-block;
}

/* ==========================================================================
   HERO SECTION - Full Viewport
   ========================================================================== */

/* Full viewport hero accounting for header */
.hero-fullscreen {
	min-height: calc(100vh - var(--pioniers-header-height));
	min-height: calc(100dvh - var(--pioniers-header-height));
}

.admin-bar .hero-fullscreen {
	min-height: calc(100vh - var(--pioniers-header-height) - var(--wp-admin--admin-bar--height, 32px));
	min-height: calc(100dvh - var(--pioniers-header-height) - var(--wp-admin--admin-bar--height, 32px));
}

.hero-fullscreen-overlap {
	min-height: 100vh;
	min-height: 100dvh;
	margin-top: calc(-1 * var(--pioniers-header-height));
	padding-top: calc(var(--pioniers-header-height) + var(--wp--preset--spacing--70));
}

.admin-bar .hero-fullscreen-overlap {
	min-height: calc(100vh - var(--wp-admin--admin-bar--height, 32px));
	min-height: calc(100dvh - var(--wp-admin--admin-bar--height, 32px));
}

/* ==========================================================================
   PATTERN BACKGROUND - Parent Container Fix
   ========================================================================== */

/* Ensure parent has positioning context for absolute pattern backgrounds and section transitions */
.wp-block-group:has(> .wp-block-pioniers-pattern-background),
.wp-block-group:has(> .pioniers-section-transition) {
	position: relative;
}

/* ==========================================================================
   SECTION TRANSITIONS - Stacking Context
   ========================================================================== */

/* Transition stays at z-index 0 and breaks out of parent padding */
.pioniers-section-transition {
	z-index: 1;
    margin: 0;
    width: 100%;
    max-width: none;
    padding-left: 0px;
    padding-right: 0px;
}

/* Ensure all content within groups containing transitions stays above transitions */
.wp-block-group:has(.pioniers-section-transition) > :not(.pioniers-section-transition):not(.wp-block-pioniers-pattern-background) {
	position: relative;
	z-index: 1;
}

/* ==========================================================================
   TESTIMONIALS - Post Template Overflow
   ========================================================================== */

/* Allow testimonial cards to rotate beyond their containers */
.wp-block-post-template {
	overflow: visible;
	position: relative;
	z-index: 2; /* Cards > Section Transition (z-1) */
}

/* ==========================================================================
   EQUAL HEIGHT CARDS - Column Layouts
   ========================================================================== */

/* Force columns to stretch to equal heights */
.equal-height-cards.wp-block-columns {
	align-items: stretch;
}

/* ==========================================================================
   HEADER STYLING
   ========================================================================== */

.header-bottom-border {
	border-bottom: 4px solid var(--wp--preset--color--pioniers-yellow);
}

/* ==========================================================================
   UTILITY CLASSES
   ========================================================================== */

/* Hide elements completely (for Forminator form fields) */
.no-display {
	display: none !important;
}

/* ==========================================================================
   MODAL POPUP - FORMINATOR FIXES
   ========================================================================== */

/* Hide Forminator's default popup close button (conflicts with our modal close button) */
.forminator-popup-close {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}
