/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Colorzoo Kindergrime — Enchanted Colorzoo Pop-Art Theme
 Author:       Colorzoo Kindergrime (Isabelle Delaere)
 Author URI:   https://colorzoo.be/
 Template:     bricks
 Version:      2.1.0
 Text Domain:  bricks
*/

:root {
	--cz-magenta: #FF2A85;
	--cz-magenta-dark: #D81B60;
	--cz-magenta-pale: #FFF0F7;
	--cz-aqua: #00C2FF;
	--cz-aqua-dark: #0077B6;
	--cz-aqua-pale: #E0F8FF;
	--cz-orange: #FF7A00;
	--cz-yellow: #FFD600;
	--cz-yellow-pale: #FFF8D6;
	--cz-lime: #00E676;
	--cz-lime-pale: #E8FFF3;
	--cz-violet: #8B5CF6;
	--cz-ink: #1E1035;
	--cz-midnight: #1A0B2E;
	--cz-cream: #FFFDF8;
	--cz-cream-alt: #F7F3ED;
	--cz-font-display: "Bricolage Grotesque", "Syne", sans-serif;
	--cz-font-body: "Plus Jakarta Sans", sans-serif;
	--cz-font-label: "Rubik", sans-serif;
}

html {
	scroll-behavior: smooth;
	background-color: var(--cz-cream);
	overflow-x: clip;
	max-width: 100%;
}

body {
	font-family: var(--cz-font-body);
	color: var(--cz-ink);
	background-color: var(--cz-cream);
	overflow-x: clip;
	max-width: 100%;
}

h1, h2, h3, h4, .cz-heading {
	font-family: var(--cz-font-display);
	color: var(--cz-ink);
	letter-spacing: -0.02em;
}

/* ==========================================================================
   Keyframes & Tactile Animations
   ========================================================================== */
@keyframes cz-float {
	0%, 100% { transform: translateY(0px) rotate(0deg); }
	50% { transform: translateY(-10px) rotate(2deg); }
}

@keyframes cz-float-slow {
	0%, 100% { transform: translateY(0px) scale(1); }
	50% { transform: translateY(-16px) scale(1.04); }
}

@keyframes cz-marquee {
	0% { transform: translateX(0%); }
	100% { transform: translateX(-50%); }
}

@keyframes cz-pop-in {
	0% { opacity: 0; transform: scale(0.85) rotate(-3deg); }
	70% { opacity: 1; transform: scale(1.03) rotate(1deg); }
	100% { opacity: 1; transform: scale(1) rotate(0deg); }
}

@keyframes cz-pulse-ring {
	0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(255, 42, 133, 0.45); }
	50% { transform: scale(1.08); box-shadow: 0 0 0 6px rgba(255, 42, 133, 0); }
}

.cz-animate-float {
	animation: cz-float 4s ease-in-out infinite;
}

.cz-animate-float-slow {
	animation: cz-float-slow 6s ease-in-out infinite;
}

.cz-pop-in {
	animation: cz-pop-in 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

/* ==========================================================================
   Neo-Pop Borders, Shadows & Interactive Cards
   ========================================================================== */
.cz-neo-border {
	border: 3.5px solid var(--cz-ink) !important;
}

.cz-neo-border-sm {
	border: 2.5px solid var(--cz-ink) !important;
}

.cz-neo-shadow {
	box-shadow: 7px 7px 0px var(--cz-ink) !important;
}

.cz-neo-shadow-sm {
	box-shadow: 4px 4px 0px var(--cz-ink) !important;
}

.cz-neo-shadow-aqua {
	box-shadow: 6px 6px 0px var(--cz-aqua) !important;
}

.cz-neo-shadow-magenta {
	box-shadow: 6px 6px 0px var(--cz-magenta) !important;
}

.cz-btn-neo {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.6rem;
	font-family: var(--cz-font-label);
	font-weight: 700;
	border-radius: 9999px;
	border: 3px solid var(--cz-ink) !important;
	box-shadow: 5px 5px 0px var(--cz-ink);
	transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.2s ease, background-color 0.2s ease;
	text-decoration: none !important;
	cursor: pointer;
}

.cz-btn-neo svg {
	flex-shrink: 0;
	transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.cz-btn-neo:hover {
	transform: translate(-2px, -3px) rotate(-1deg);
	box-shadow: 8px 8px 0px var(--cz-ink);
}

.cz-btn-neo:hover svg {
	transform: rotate(-8deg) scale(1.12);
}

.cz-btn-neo:active {
	transform: translate(3px, 3px);
	box-shadow: 1px 1px 0px var(--cz-ink);
}

.cz-footer-fb-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: max-content !important;
	max-width: 100% !important;
	align-self: flex-start !important;
	gap: 7px !important;
	padding: 7px 14px !important;
	font-size: 13px !important;
	line-height: 1.2 !important;
	white-space: nowrap !important;
	border: 2.5px solid var(--cz-ink) !important;
	box-shadow: 3px 3px 0px var(--cz-magenta) !important;
}

.cz-footer-fb-btn svg {
	width: 15px !important;
	height: 15px !important;
	flex-shrink: 0 !important;
}

.cz-footer-fb-btn:hover {
	transform: translate(-1.5px, -2px) !important;
	box-shadow: 5px 5px 0px var(--cz-yellow) !important;
}

/* Navbar Clean Links with Bespoke Paint-Stroke Hover */
#cz-nav-links a {
	position: relative;
	text-decoration: none !important;
	padding: 4px 2px;
	transition: color 0.2s ease, transform 0.2s ease;
}

#cz-nav-links a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -2px;
	height: 3.5px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--cz-magenta), var(--cz-orange), var(--cz-aqua));
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

#cz-nav-links a:hover {
	color: var(--cz-magenta) !important;
	transform: translateY(-1px);
}

#cz-nav-links a:hover::after {
	transform: scaleX(1);
}

/* ==========================================================================
   Bespoke Hero Trust & Social Proof Dock (Anti-Slop Craft)
   ========================================================================== */
.cz-trust-dock {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 14px !important;
	width: 100% !important;
	margin-top: 6px !important;
}

@media (max-width: 640px) {
	.cz-trust-dock {
		grid-template-columns: 1fr !important;
	}
}

.cz-trust-card {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 14px !important;
	background: #FFFFFF !important;
	padding: 12px 16px !important;
	border-radius: 20px !important;
	border: 3px solid var(--cz-ink) !important;
	box-shadow: 4px 4px 0px var(--cz-ink) !important;
	text-decoration: none !important;
	transition: transform 0.22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.22s ease;
	position: relative;
	overflow: hidden;
	width: 100% !important;
}

a.cz-trust-card:hover {
	transform: translate(-2px, -3px);
	box-shadow: 7px 7px 0px var(--cz-magenta) !important;
}

.cz-trust-card--pro:hover {
	transform: translate(-2px, -3px);
	box-shadow: 7px 7px 0px var(--cz-aqua) !important;
}

/* Overlapping Real Photo Avatar Stack */
.cz-avatar-stack {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	flex-shrink: 0 !important;
	width: auto !important;
	padding-left: 2px;
}

.cz-avatar-stack img,
.cz-avatar-stack .brxe-image {
	width: 40px !important;
	height: 40px !important;
	min-width: 40px !important;
	max-width: 40px !important;
	border-radius: 50% !important;
	object-fit: cover !important;
	border: 2.5px solid var(--cz-ink) !important;
	box-shadow: 0 0 0 2px #FFFFFF;
	margin-left: -12px !important;
	background: var(--cz-cream);
	transition: transform 0.2s ease;
	display: block !important;
}

.cz-avatar-stack img:first-child,
.cz-avatar-stack .brxe-image:first-child {
	margin-left: 0 !important;
}

.cz-trust-card:hover .cz-avatar-stack img:nth-child(1) {
	transform: translateY(-2px) rotate(-4deg);
}
.cz-trust-card:hover .cz-avatar-stack img:nth-child(2) {
	transform: translateY(-3px) scale(1.05);
}
.cz-trust-card:hover .cz-avatar-stack img:nth-child(3) {
	transform: translateY(-2px) rotate(4deg);
}

/* Tactile Split-Cake Paint Swatch Badge */
.cz-swatch-badge {
	width: 46px !important;
	height: 46px !important;
	min-width: 46px !important;
	border-radius: 14px !important;
	border: 2.5px solid var(--cz-ink) !important;
	box-shadow: 2.5px 2.5px 0px var(--cz-ink) !important;
	background: linear-gradient(
		135deg,
		#FF2A85 0%, #FF2A85 20%,
		#FF7A00 20%, #FF7A00 40%,
		#FFD600 40%, #FFD600 60%,
		#00E676 60%, #00E676 80%,
		#00C2FF 80%, #00C2FF 100%
	) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	position: relative;
}

.cz-swatch-badge-inner {
	width: 28px !important;
	height: 28px !important;
	border-radius: 8px !important;
	background: #FFFFFF !important;
	border: 2px solid var(--cz-ink) !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: var(--cz-ink) !important;
}

.cz-trust-meta {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 2px !important;
	min-width: 0;
}

.cz-trust-stars {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	margin-bottom: 1px;
}

.cz-trust-title {
	font-family: var(--cz-font-display);
	font-weight: 800;
	font-size: 14.5px;
	line-height: 1.2;
	color: var(--cz-ink);
	display: flex;
	align-items: center;
	gap: 5px;
}

.cz-trust-sub {
	font-family: var(--cz-font-body);
	font-weight: 600;
	font-size: 12px;
	line-height: 1.3;
	color: #4A326D;
}

/* Swatch Dots & Section Kickers (Replaces Emoji Slop) */
.cz-kicker-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 9px !important;
}

.cz-kicker-dot {
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: var(--cz-magenta);
	border: 2px solid var(--cz-ink);
	display: inline-block;
	flex-shrink: 0;
	animation: cz-pulse-ring 2.2s infinite;
}

.cz-swatch-dot {
	width: 11px;
	height: 11px;
	border-radius: 50%;
	border: 2px solid var(--cz-ink);
	display: inline-block;
	flex-shrink: 0;
	margin-right: 6px;
	vertical-align: middle;
	position: relative;
	top: -1px;
}

.cz-split-mini-bar {
	display: inline-flex;
	width: 22px;
	height: 11px;
	border-radius: 999px;
	border: 2px solid var(--cz-ink);
	background: linear-gradient(90deg, #FF2A85 0% 25%, #FF7A00 25% 50%, #FFD600 50% 75%, #00C2FF 75% 100%);
	margin-right: 7px;
	vertical-align: middle;
	position: relative;
	top: -1px;
}

/* Polaroid & Bento Card Physics */
.cz-polaroid-caption {
	display: flex !important;
	flex-direction: row !important;
	justify-content: space-between !important;
	align-items: center !important;
	column-gap: 10px !important;
	width: 100% !important;
	min-height: 42px !important;
	padding: 4px 2px 0 2px !important;
}

.cz-polaroid-caption h4 {
	font-size: 15.5px !important;
	line-height: 1.22 !important;
	font-weight: 800 !important;
	color: var(--cz-ink) !important;
	margin: 0 !important;
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

.cz-polaroid-tag,
.cz-pill-nowrap {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	white-space: nowrap !important;
	flex-shrink: 0 !important;
	width: max-content !important;
	padding: 5px 11px !important;
	border-radius: 9999px !important;
	font-family: var(--cz-font-label) !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	color: var(--cz-ink) !important;
	border: 2px solid var(--cz-ink) !important;
	box-shadow: 2px 2px 0px var(--cz-ink) !important;
}

.cz-card-tilt-left {
	transform: rotate(-1.8deg);
	transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
}

.cz-card-tilt-right {
	transform: rotate(1.8deg);
	transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
}

.cz-card-tilt-left:hover,
.cz-card-tilt-right:hover,
.cz-card-hover:hover {
	transform: translateY(-8px) rotate(0deg) scale(1.02);
	box-shadow: 10px 10px 0px var(--cz-ink) !important;
	z-index: 5;
}

.cz-card-hover {
	transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s ease;
}

/* Wavy Brush Highlight */
.cz-wavy-highlight {
	color: var(--cz-magenta);
	text-decoration: underline;
	text-decoration-color: var(--cz-aqua);
	text-decoration-style: wavy;
	text-underline-offset: 6px;
	text-decoration-thickness: 4px;
}

/* Marquee Ticker Ribbon */
.cz-marquee-wrap {
	overflow: hidden !important;
	width: 103% !important;
	margin-left: -1.5% !important;
	margin-top: -10px !important;
	margin-bottom: -10px !important;
	position: relative;
	z-index: 20;
	display: block !important;
	transform: rotate(-1.6deg);
	box-shadow: 0 8px 0 var(--cz-ink) !important;
}

.cz-marquee-track {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	width: max-content !important;
	gap: 1.75rem !important;
	animation: cz-marquee 28s linear infinite;
}

.cz-marquee-track:hover {
	animation-play-state: paused;
}

.cz-marquee-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
}

/* ==========================================================================
   Interactive Filter Buttons & Form Chips
   ========================================================================== */
.cz-filter-btn {
	display: inline-flex !important;
	align-items: center !important;
	gap: 8px !important;
	font-family: var(--cz-font-label);
	font-weight: 700;
	font-size: 0.95rem;
	padding: 0.65rem 1.35rem;
	border-radius: 9999px;
	border: 3px solid var(--cz-ink) !important;
	background-color: var(--cz-cream);
	color: var(--cz-ink);
	box-shadow: 4px 4px 0px var(--cz-aqua);
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.cz-filter-btn:hover {
	transform: translateY(-3px);
	background-color: var(--cz-yellow-pale);
}

.cz-filter-btn.cz-filter-active {
	background-color: var(--cz-magenta) !important;
	color: #FFFFFF !important;
	box-shadow: 4px 4px 0px var(--cz-yellow) !important;
	transform: scale(1.05);
}

.cz-filter-btn.cz-filter-active .cz-swatch-dot {
	border-color: #FFFFFF !important;
}

.cz-feest-chip {
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	font-family: var(--cz-font-label);
	font-weight: 600;
	font-size: 0.9rem;
	padding: 0.55rem 1.1rem;
	border-radius: 9999px;
	border: 2.5px solid var(--cz-ink) !important;
	background-color: #FFFFFF;
	color: var(--cz-ink);
	box-shadow: 3px 3px 0px var(--cz-ink);
	cursor: pointer;
	transition: all 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
	user-select: none;
}

.cz-feest-chip:hover {
	transform: translateY(-2px);
	background-color: var(--cz-aqua-pale);
}

.cz-feest-chip.cz-chip-active {
	background-color: var(--cz-aqua) !important;
	color: var(--cz-ink) !important;
	font-weight: 700;
	box-shadow: 4px 4px 0px var(--cz-magenta) !important;
	transform: translateY(-2px) scale(1.04);
}

/* ==========================================================================
   Bricks Native Form Neo-Pop Styling (.brxe-form)
   ========================================================================== */
#brxe-czform.cz-booking-form,
.cz-booking-form {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	column-gap: 16px !important;
	row-gap: 16px !important;
	width: 100% !important;
}

#brxe-czform .form-group,
.cz-booking-form .form-group,
#brxe-czform .submit-button-wrapper,
.cz-booking-form .submit-button-wrapper {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-end !important;
}

/* Full-width fields: 7 (Aantal kindjes), 8 (Bericht textarea), 9 (Honeypot), Submit button */
#brxe-czform .form-group:nth-child(7),
#brxe-czform .form-group:nth-child(8),
#brxe-czform .form-group:nth-child(9),
#brxe-czform .submit-button-wrapper,
.cz-booking-form .submit-button-wrapper {
	grid-column: 1 / -1 !important;
}

.cz-booking-form label {
	font-family: var(--cz-font-label) !important;
	font-weight: 700 !important;
	font-size: 0.88rem !important;
	line-height: 1.25 !important;
	color: var(--cz-ink) !important;
	margin-bottom: 0.45rem !important;
	display: block;
}

.cz-booking-form input[type="text"],
.cz-booking-form input[type="email"],
.cz-booking-form input[type="tel"],
.cz-booking-form input[type="date"],
.cz-booking-form select,
.cz-booking-form textarea {
	width: 100%;
	padding: 0.85rem 1.1rem !important;
	border-radius: 1rem !important;
	border: 3px solid var(--cz-ink) !important;
	background-color: var(--cz-cream) !important;
	color: var(--cz-ink) !important;
	font-family: var(--cz-font-body) !important;
	font-size: 0.98rem !important;
	font-weight: 500 !important;
	box-shadow: 3px 3px 0px rgba(30, 16, 53, 0.12);
	transition: all 0.2s ease;
}

.cz-booking-form input:focus,
.cz-booking-form select:focus,
.cz-booking-form textarea:focus {
	outline: none !important;
	border-color: var(--cz-magenta) !important;
	background-color: #FFFFFF !important;
	box-shadow: 4px 4px 0px var(--cz-aqua) !important;
	transform: translateY(-1px);
}

.cz-booking-form .bricks-button,
.cz-booking-form button[type="submit"] {
	width: 100% !important;
	padding: 1.1rem 2rem !important;
	background: linear-gradient(90deg, #FF2A85 0%, #FF7A00 50%, #00C2FF 100%) !important;
	color: #FFFFFF !important;
	font-family: var(--cz-font-label) !important;
	font-size: 1.12rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.02em;
	border-radius: 9999px !important;
	border: 3.5px solid var(--cz-ink) !important;
	box-shadow: 6px 6px 0px var(--cz-ink) !important;
	cursor: pointer !important;
	transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.2s ease !important;
	text-shadow: 0 1px 2px rgba(30, 16, 53, 0.35);
}

.cz-booking-form .bricks-button:hover,
.cz-booking-form button[type="submit"]:hover {
	transform: translate(-2px, -3px) scale(1.01) !important;
	box-shadow: 9px 9px 0px var(--cz-ink) !important;
}

/* ==========================================================================
   Responsive Navbar, Mobile Ergonomics & Viewport Optimization
   ========================================================================== */
#cz-mobile-toggle {
	display: none;
}

.cz-cta-text-short {
	display: none;
}

@media (max-width: 991px) {
	#cz-mobile-toggle {
		display: inline-flex;
	}
	#cz-nav-links {
		display: none !important;
	}
	#cz-nav-links.cz-mobile-open {
		display: flex !important;
		flex-direction: column !important;
		position: absolute;
		top: calc(100% + 10px);
		left: 0;
		right: 0;
		background: var(--cz-cream);
		padding: 1.2rem;
		border-radius: 1.5rem;
		border: 3.5px solid var(--cz-ink);
		box-shadow: 6px 6px 0px var(--cz-ink);
		z-index: 100;
		gap: 0.65rem !important;
		text-align: center;
	}
	#cz-nav-links.cz-mobile-open a {
		display: block !important;
		width: 100% !important;
		padding: 0.75rem 1rem !important;
		background: #FFFFFF;
		border-radius: 14px;
		border: 2.5px solid var(--cz-ink);
		box-shadow: 3px 3px 0px var(--cz-ink);
		font-size: 16px !important;
	}
	#cz-nav-links.cz-mobile-open a::after {
		display: none !important;
	}
	#top {
		padding-top: 136px !important;
		padding-bottom: 64px !important;
	}
}

@media (max-width: 767px) {
	/* 1. Compact Floating Header on Mobile */
	.cz-header-pill {
		padding: 8px 14px !important;
	}
	.cz-header-logo {
		height: 38px !important;
	}
	.cz-cta-text-full {
		display: none !important;
	}
	.cz-cta-text-short {
		display: inline !important;
	}
	.cz-header-cta {
		padding: 8px 14px !important;
		font-size: 13.5px !important;
		box-shadow: 3px 3px 0px var(--cz-ink) !important;
	}
	#cz-mobile-toggle {
		padding: 7px 12px !important;
		font-size: 16px !important;
		box-shadow: 3px 3px 0px var(--cz-ink) !important;
	}

	/* 2. Hero Section Mobile Spacing & Typography */
	#top {
		padding: 108px 16px 52px 16px !important;
	}
	#top .cz-kicker-pill {
		border-radius: 16px !important;
		padding: 7px 13px !important;
		font-size: 12.5px !important;
		line-height: 1.35 !important;
	}
	#top h1 {
		font-size: clamp(1.85rem, 7.2vw, 2.35rem) !important;
		line-height: 1.12 !important;
	}
	#top p {
		font-size: 15.5px !important;
		line-height: 1.55 !important;
	}
	.cz-hero-cta-row {
		width: 100% !important;
		flex-direction: column !important;
		gap: 12px !important;
	}
	.cz-hero-cta-row .cz-btn-neo {
		width: 100% !important;
		justify-content: center !important;
		padding: 14px 20px !important;
		font-size: 15.5px !important;
	}
	.cz-hero-polaroid-img {
		height: 250px !important;
	}
	.cz-hero-fox-badge {
		width: 86px !important;
		padding: 7px !important;
		border-radius: 18px !important;
		top: -6px !important;
		left: -4px !important;
	}

	/* 3. Marquee Ribbon Mobile Sizing */
	.cz-marquee-track span {
		font-size: 15px !important;
		padding: 5px 14px !important;
	}

	/* 4. Global Section Padding & Card Physics on Mobile */
	#creaties,
	#feesten,
	#galerij,
	#over-isabelle,
	#contact {
		padding: 64px 16px !important;
	}
	.cz-neo-shadow {
		box-shadow: 5px 5px 0px var(--cz-ink) !important;
	}
	.cz-card-tilt-left {
		transform: rotate(-0.6deg);
	}
	.cz-card-tilt-right {
		transform: rotate(0.6deg);
	}

	/* 5. Gallery Filter Pills & Polaroid Image Height */
	.cz-filter-btn {
		font-size: 13px !important;
		padding: 8px 13px !important;
		gap: 6px !important;
		box-shadow: 3px 3px 0px var(--cz-aqua) !important;
	}
	.cz-polaroid-img-wrap {
		height: 225px !important;
	}

	/* 6. Over Isabelle Portrait & Compact USP Cards */
	.cz-isabelle-portrait-img {
		height: 320px !important;
	}
	.cz-palette-mini-card {
		width: 135px !important;
		bottom: -10px !important;
		right: 4px !important;
		padding: 7px !important;
	}
	.cz-palette-mini-card img {
		height: 85px !important;
	}
	.cz-usp-grid {
		gap: 12px !important;
	}
	.cz-usp-card {
		padding: 14px 16px !important;
	}

	/* 7. Contact & Booking Form Mobile Ergonomics (Full-Width Fields + iOS Zoom Guard) */
	.cz-vip-ticket {
		padding: 24px 16px !important;
		border-radius: 26px !important;
		gap: 32px !important;
	}
	#brxe-czform.cz-booking-form,
	.cz-booking-form {
		grid-template-columns: 1fr !important;
		row-gap: 14px !important;
	}
	#brxe-czform .form-group,
	.cz-booking-form .form-group {
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-bottom: 0 !important;
	}
	.cz-booking-form input[type="text"],
	.cz-booking-form input[type="email"],
	.cz-booking-form input[type="tel"],
	.cz-booking-form input[type="date"],
	.cz-booking-form select,
	.cz-booking-form textarea {
		font-size: 16px !important;
		padding: 0.8rem 1rem !important;
	}
	.cz-feest-chip {
		font-size: 13px !important;
		padding: 7px 12px !important;
	}
	.cz-booking-form .bricks-button,
	.cz-booking-form button[type="submit"] {
		font-size: 1rem !important;
		padding: 0.95rem 1.25rem !important;
	}
}

@media (max-width: 380px) {
	.cz-header-cta .cz-cta-text-short {
		display: none !important;
	}
	.cz-header-cta {
		padding: 8px 11px !important;
	}
}
