/* 
 * Custom Column Height Uniformity Fix
 * Windesheim Storing - Homepage Columns (Swift Framework + AI1EC)
 * Target: "Actuele storingen", "Onderhoud", "Contact" columns
 * 
 * Based on actual HTML structure:
 * section.row > div.spb-column-container.col-sm-4.cus_col_1 > div.spb-column-inner
 */

/* ==========================================
   HOMEPAGE COLUMN CONTAINERS (cus_col_1)
   ========================================== */

/* Parent row - enable equal height columns */
section.row:has(.cus_col_1) {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
}

/* Force equal height on the three main columns */
.col-sm-4.cus_col_1,
.spb-column-container.col-sm-4.cus_col_1 {
	display: flex !important;
	flex-direction: column !important;
	min-height: 370px !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
}

/* Inner column wrapper - ensure full height and flex layout */
.spb-column-container.cus_col_1 > .spb-column-inner {
	display: flex !important;
	flex-direction: column !important;
	flex: 1 !important;
	height: 100% !important;
	justify-content: space-between !important;
}

/* Each section.row inside spb-column-inner - allow last one to push down */
.spb-column-inner > section.row {
	flex-shrink: 0 !important;
}

/* Last section.row (contains button) - push to bottom */
.spb-column-inner > section.row:last-child {
	margin-top: auto !important;
	padding-top: 20px !important;
}

/* ==========================================
   COLUMN HEADINGS (H1 with center alignment)
   ========================================== */

/* Target H1 headings in spb_text_column elements */
.spb-column-container.cus_col_1 .spb_text_column h1,
.spb-column-container.cus_col_1 .spb_content_element h1,
.col-sm-4.cus_col_1 h1 {
	font-family: "Roboto Slab", serif !important;
	font-size: 24px !important;
	line-height: 32px !important;
	font-weight: 700 !important;
	margin: 15px 0 20px 0 !important;
	padding: 0 !important;
	text-align: center !important;
	display: block !important;
}

/* Override inline styles on h1[style*="text-align"] */
.spb_text_column h1[style*="text-align"],
.spb_content_element h1[style*="text-align"] {
	font-family: "Roboto Slab", serif !important;
	font-size: 24px !important;
	line-height: 32px !important;
	font-weight: 700 !important;
	text-align: center !important;
}

/* ==========================================
   BLOG WIDGET (Actuele storingen column)
   ========================================== */

/* Blog widget container */
.spb-column-container.cus_col_1 .spb_blog_widget,
.spb-column-container.cus_col_1 .blog-wrap {
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
}

/* Blog items list */
.spb-column-container.cus_col_1 .blog-items-wrap,
.spb-column-container.cus_col_1 .blog-items {
	margin: 0 !important;
	padding: 0 !important;
}

/* Blog item container - no border/background */
.spb-column-container.cus_col_1 .blog-item,
.spb-column-container.cus_col_1 .standard-post-content {
	background: transparent !important;
	border: none !important;
	padding: 15px 0 !important;
	margin: 0 !important;
}

/* Individual blog post titles */
.spb-column-container.cus_col_1 .blog-item h1,
.spb-column-container.cus_col_1 .standard-post-content h1,
.spb-column-container.cus_col_1 .blog-item h1 a {
	font-family: "Roboto Slab", serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 400 !important;
	margin: 0 !important;
	padding: 0 !important;
	text-align: center !important;
	color: #222222 !important;
}

/* Remove any link styling */
.spb-column-container.cus_col_1 .blog-item h1 a:hover {
	color: #222222 !important;
	text-decoration: none !important;
}

/* ==========================================
   AI1EC CALENDAR WIDGET (Onderhoud column)
   ========================================== */

/* Widget area containing calendar */
.spb-column-container.cus_col_1 .spb_widget_area,
.spb-column-container.cus_col_1 .widget_ai1ec_agenda_widget {
	flex: 1 !important;
	display: flex !important;
	flex-direction: column !important;
}

/* Calendar widget wrapper */
.spb-column-container.cus_col_1 .widget_ai1ec_agenda_widget {
	padding: 15px 0 !important;
}

/* Calendar view container */
.spb-column-container.cus_col_1 .ai1ec-agenda-widget-view,
.spb-column-container.cus_col_1 .ai1ec-agenda-widget-view .ai1ec-no-results,
.spb-column-container.cus_col_1 .ai1ec-no-results p {
	font-family: "Roboto Slab", serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 400 !important;
	padding: 0 !important;
	margin: 0 !important;
	text-align: center !important;
	color: #222222 !important;
}

/* Event titles in calendar (if present) */
.spb-column-container.cus_col_1 .ai1ec-single-event-title,
.spb-column-container.cus_col_1 .ai1ec-events-list-item-title,
.spb-column-container.cus_col_1 .ai1ec-event-category-title {
	font-family: "Roboto Slab", serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	margin: 0 !important;
	padding: 0 !important;
	font-weight: 400 !important;
	text-align: center !important;
	color: #222222 !important;
}

/* ==========================================
   TEXT CONTENT IN COLUMNS
   ========================================== */

/* All text elements - uniform Roboto Slab */
.spb-column-container.cus_col_1,
.spb-column-container.cus_col_1 * {
	font-family: "Roboto Slab", serif !important;
}

/* Paragraphs in spb_text_column elements */
.spb-column-container.cus_col_1 .spb_text_column p,
.spb-column-container.cus_col_1 .spb-asset-content p {
	font-family: "Roboto Slab", serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 400 !important;
	margin: 0 0 10px 0 !important;
	padding: 0 !important;
	text-align: center !important;
	color: #222222 !important;
}

/* Strong/bold text in columns */
.spb-column-container.cus_col_1 strong,
.spb-column-container.cus_col_1 .spb_text_column strong,
.spb-column-container.cus_col_1 .spb-asset-content strong {
	font-family: "Roboto Slab", serif !important;
	font-weight: 700 !important;
	font-size: inherit !important;
}

/* Lists in text columns (Contact info) */
.spb-column-container.cus_col_1 .spb_text_column ul,
.spb-column-container.cus_col_1 .spb-asset-content ul {
	font-family: "Roboto Slab", serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 400 !important;
	margin: 0 0 10px 0 !important;
	padding-left: 0 !important;
	list-style-position: inside !important;
	text-align: center !important;
	color: #222222 !important;
}

.spb-column-container.cus_col_1 .spb_text_column li,
.spb-column-container.cus_col_1 .spb-asset-content li {
	font-family: "Roboto Slab", serif !important;
	font-size: 16px !important;
	line-height: 24px !important;
	font-weight: 400 !important;
	margin-bottom: 6px !important;
	padding: 0 !important;
	text-align: center !important;
	list-style: none !important;
	color: #222222 !important;
}

/* ==========================================
   BUTTONS (spb_button elements)
   ========================================== */

/* Button wrapper section - already positioned by :last-child rule above */
.spb-column-container.cus_col_1 .spb_button,
.spb-column-container.cus_col_1 .cus_btn_1 {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* Actual button elements - centered */
.spb-column-container.cus_col_1 .sf-button,
.spb-column-container.cus_col_1 .spb_button .sf-button {
	display: inline-block !important;
	margin: 0 !important;
	text-align: center !important;
	font-family: "Roboto Slab", serif !important;
}

/* Hide icon/arrow in buttons */
.spb-column-container.cus_col_1 .sf-button i,
.spb-column-container.cus_col_1 .sf-button .fa,
.spb-column-container.cus_col_1 .sf-button [class*="fa-"] {
	display: none !important;
}

/* Override any spb-asset-content margins on buttons */
.spb-column-container.cus_col_1 .spb_button .spb-asset-content {
	margin: 0 !important;
	padding: 0 !important;
}

/* ==========================================
   BOOTSTRAP GRID OVERRIDES
   ========================================== */

/* Main row containing the three columns - already handled above with :has() */
/* All other rows inside columns should NOT stretch */
section.row:not(:has(.cus_col_1)) {
	display: block !important;
}

/* All col-sm-4 columns in homepage section */
section.row > .col-sm-4 {
	display: flex !important;
	flex-direction: column !important;
}

/* ==========================================
   FALLBACK / GENERIC SELECTORS
   ========================================== */

/* Catch any missed h1-h4 headings */
.col-sm-4 h1:not(.blog-item h1),
.col-sm-4 h2:not(.blog-item h2),
.col-sm-4 h3:not(.blog-item h3),
.col-sm-4 h4:not(.blog-item h4) {
	font-family: "Roboto Slab", serif !important;
	font-size: 24px !important;
	line-height: 32px !important;
	font-weight: 700 !important;
	text-align: center !important;
	margin: 15px 0 20px 0 !important;
}

/* Ensure all text content uses Roboto Slab */
.cus_col_1 * {
	font-family: "Roboto Slab", serif !important;
}

/* Note: min-height: 370px from theme's User Custom CSS is now replaced by flexbox */

