/*
Theme Name: IFL Genesis
Theme URI: https://insight.org
Description: Make a stunning first impression, grab attention, and dynamically tell your story with beautiful images and clean typography.
Author: Insight for Living Ministries
Author URI: https://insight.org

Version: 3.0.17

Tags: accessibility-ready, block-styles, custom-colors, custom-header, custom-menu, e-commerce, editor-style, featured-images, footer-widgets, full-width-template, left-sidebar, one-column, right-sidebar, sticky-post, theme-options, threaded-comments, translation-ready, two-columns, wide-blocks
Template: genesis
License: GPL-2.0-or-later
License URI: http://www.opensource.org/licenses/gpl-license.php
Text Domain: ifl-genesis
Requires at least: 5.4
Requires PHP: 5.6
*/
---------------------------------------------------------------------------- */
/* stylelint-disable */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.5;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}
/* stylelint-enable */

/* Utility Classes — extracted from inline styles across templates
---------------------------------------------------------------------------- */
.text-center { text-align: center; }
.text-left   { text-align: left; }
.text-right  { text-align: right; }
.pos-relative { position: relative; }
.float-right  { float: right; }

/* Spacer divs — replace inline height spacers */
.spacer-xs  { height: 5px; }
.spacer-sm  { height: 24px; }
.spacer-md  { height: 30px; }
.spacer-lg  { height: 50px; }

/* Form validation error text (contact forms, share-your-story, etc.) */
.form-error { color: #f31515; }

/* Contact form submit button */
.btn-contact {
	color: #fff;
	border-radius: 5px;
	background-color: #37518c;
	border: none;
	padding: 12px 20px;
	font-weight: 700;
	cursor: pointer;
}
.btn-contact:hover,
.btn-contact:focus {
	background-color: #2c4170;
}

/* Author/article float image */
.img-inline-left {
	padding: 0 15px 15px 0;
}

/* Article feature image with border */
.img-article-feature {
	width: 325px;
	float: right;
	padding: 5px;
	margin: 5px;
	border: 1px solid #eee;
}

/* Slider cover images (front-page, church-leaders, international) */
.slider-cover-img {
	max-height: 45%;
	width: 100%;
	object-fit: cover;
}

/* Broadcast player slider image */
.broadcast-slider-img {
	border-radius: 5px;
	max-height: 450px;
	width: 100%;
	object-fit: cover;
}

/* Text size utilities */
.text-lg { font-size: 18px; }

/* Table column width utilities (Bible books template) */
.col-w-20 { width: 20%; }
.col-w-25 { width: 25%; }
.col-w-35 { width: 35%; }

/* Front page hero section */
.fp-hero-section {
	padding: 6em 1em;
	color: #1f1f1f;
}
.fp-content-section {
	padding: 4em 1em;
	background-color: #fff;
	color: #000;
}
.fp-max-width {
	max-width: 1200px;
}
.fp-heading {
	color: #1f1f1f;
	font-size: 40px;
}
.fp-subheading {
	color: #1f1f1f;
	font-size: 26px;
}
.fp-text-dark {
	color: #1f1f1f;
}
.fp-cta-btn {
	border-radius: 4px;
	color: #ffffff;
	background-color: #006CD8;
	padding: 12px 20px;
	display: inline-block;
	text-decoration: none;
	font-weight: 700;
}
.fp-cta-btn:hover,
.fp-cta-btn:focus {
	background-color: #0058b3;
	color: #ffffff;
}

/* International pastor highlight */
.intl-pastor-highlight {
	padding: 20px 50px;
	background-color: #ececec;
	border-radius: 15px;
}

/* Broadcast player feature image */
.broadcast-feature-img {
	border-radius: 5px;
}

/* Slider wrapper centered dots */
.slider-dots-wrap {
	text-align: center;
}

/* International home slider offset */
.intl-slider-offset {
	margin: -30px auto -20px auto;
}
.intl-slider-overlay {
	padding: 25px;
	color: #ffffff;
	background-color: #151515;
	flex-basis: 950px;
}

/* Monthly companion page header (dashboard + single resource) */
.ifl-companion-page-header {
	text-align: center;
	padding: 30px 20px;
	margin-bottom: 30px;
}
.ifl-companion-page-header .entry-title {
	font-size: 2.2em;
	color: #37518c;
	margin: 0;
	border: none;
	padding-bottom: 0;
	font-family: 'Arno Pro', 'Garamond', 'Georgia', serif;
}
.ifl-companion-page-desc {
	color: #475569;
	font-size: 1.05em;
	line-height: 1.6;
	max-width: 700px;
	margin: 15px auto 0;
}

/* Companion resource cards */
.mc-resource-list {
	display: flex;
	flex-direction: column;
	gap: 15px;
}
.mc-resource-card {
	display: block;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 8px;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	transition: box-shadow 0.2s, transform 0.2s;
}
.mc-resource-card:hover {
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
	transform: translateY(-2px);
}
.mc-resource-thumb-wrap {
	height: 120px;
	width: 100%;
	background: #f1f5f9;
}
.mc-resource-thumb {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mc-resource-body {
	padding: 12px;
}
.mc-resource-badge {
	display: inline-block;
	background: #fee2e2;
	color: #b91c1c;
	padding: 2px 8px;
	border-radius: 12px;
	font-size: 0.7em;
	font-weight: bold;
	margin-bottom: 6px;
}
.mc-resource-title {
	margin: 0 0 4px 0;
	color: #1e293b;
	font-size: 0.95em;
	line-height: 1.3;
}
.mc-resource-excerpt {
	margin: 0;
	color: #64748b;
	font-size: 0.8em;
	line-height: 1.4;
}
.mc-resource-cta-wrap {
	text-align: center;
}
.mc-resource-cta {
	display: block;
	background: #37518c;
	color: #fff;
	padding: 12px 20px;
	border-radius: 6px;
	text-decoration: none;
	font-weight: bold;
	font-size: 0.95em;
}
.mc-resource-cta:hover,
.mc-resource-cta:focus {
	background: #2c4170;
	color: #fff;
}

/* Video series grid */
.video-series-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin-left: 20px;
}

/* Box Sizing
--------------------------------------------- */
html,
input[type="search"] {
	box-sizing: border-box;
}

.btn-wide {
	width: 100% !important;
}

.btn-medium {
	width: 350px !important;
}

.btn-auto {
	width: unset !important;
}

/* Custom Components — filters, cards, series, topics, devotionals, buttons
---------------------------------------------------------------------------- */

/* Flex-wrap grid — shared layout for card/grid containers */
.filter-controls-top-wrap,
.devo-top-container,
.series-container,
.topic-featured-article-wrap,
.timeless-insight-container,
.conversations-with-chuck-container,
.topics-container-topic-page,
.topics-container-main,
.topics-container,
.devotional-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}

.filter-group {
    flex: 1;
    min-width: 250px;
    color: #393a3f;
    padding: 10px;
    margin: 10px;
    font-size: 14px;
    line-height: 1.6;
}

.filter-group select,
.filter-group input {
	font-size: 14px !important;
	padding: 2px !important;
	width: 80% !important;
}

.filter-group label {
	min-width: 100px;
}

.contact-form {
    border: 1px solid #ddd;
    border-radius: 3px;
    box-shadow: inset 0 0 20px 5px rgba(0,0,0,.05);
    padding: 18px;
}

.site-footer .mc4wp-alert p {
	font-size: 18px;
	font-weight: 700;
	color: #872c26;
	text-align: center;
}

.tax-topic .entry-title {
	margin: 0px;
}

.topic-title {
	border-bottom: 1px solid #ddd;
	padding: 0px 0px 20px 0px;
}

.search-results-block {
	padding: 5px 5px 20px 5px;
	margin: 5px 5px 20px 5px;	
	min-height: 100px;
	border-bottom: 1px solid #ddd;
}

.sidebar-subtitle {
    font-size:12px;
	font-weight: 700;
	text-transform: capitalize;
	color: #852c2c;
    margin-bottom: 5px;
}

.nav-links {
	margin-top: 30px
}

.nav-previous {
	float:left;	
}

.nav-next {
	float:right;
}

.mc-form-email {
    width: 540px;
    max-width: none !important;
}

.pastor-image {
	width: 250px;
}

.sign-up-footer {
    max-width: 350px;
    text-align: center;
    margin: 0 auto !important;
}

.single-daily-devotional .site-container .wp-block-quote p {
	font-family: Open Sans, sans-serif !important;
    font-size: 14px !important;
    margin: 0 50px !important;
}

.devo-highlighted-scripture {
	text-align:center;
}

.devo-highlighted-scripture .wp-block-quote em {
    font-family: Georgia, sans;
    font-size: 24px !important;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 0px;
	color: #872c26;
}

.devo-date {
  flex: 1; /* Allows divs to grow and shrink proportionally */
  padding: 20px 20px 20px 0;
  font-weight: 500;
}

.devo-author {
  flex: 1; /* Allows divs to grow and shrink proportionally */
  padding: 20px 0 20px 20px;
  text-align: right;
  font-weight: 500;
}
	
.footnote {
    border-top: 1px solid #ddd;
    color: #39393f;
    padding-top: 25px;
	font-size: 12px;
}

.widget .sub-menu {
    margin-top: 10px;
    margin-bottom: 10px;
}

.menu-item-has-children > a::after {
	content: '\203A'; /* Right angle quote, rotated to point down */
	display: inline-block;
	transform: rotate(90deg);
	margin-left: 6px;
	font-size: 1.2em;
	line-height: 1;
	vertical-align: -2px;
}

.box-heading {
	padding: 30px 50px;
	margin: 30px 0px 30px -50px;
	border-bottom: 1px solid #eee;
	font-size: 24px;
	font-weight: 300;
	background-color: #f7f7f7;
}

.tax-topic .box-heading,
.single-article .box-heading {
	margin: 30px 0px 30px -50px;
}
	
/* Broadcast Player page — portable class added by template (replaces hardcoded .page-id-535) */
.ifl-broadcast-player {
    margin-top: -32px !important;
}
.ifl-broadcast-player .ifl-hamburger,
.ifl-broadcast-player .ifl-mobile-nav,
.ifl-broadcast-player .grecaptcha-badge,
.ifl-broadcast-player #wpadminbar {
    display: none !important;
}
.ifl-broadcast-player.admin-bar {
    margin-top: 0 !important;
}
.ifl-broadcast-player.admin-bar html {
    padding-top: 0 !important;
}

.page-template-international-home-template-page .wp-block-cover {
    width: 950px;
    margin: -50px 0 0 -50px;
}

.page-template-international-home-template-page .gb-block-layout-column-gap-2 {
    grid-gap: 0 1em;
}
.page-template-international-home-template-page .wp-block-cover p {
    padding:50px;
}

.page-id-986 .wp-block-image img,
.page-template-international-home-template-page .wp-block-image img {
	border-radius: 15px;
}

.page-template-international-home-template-page .offset-margin-up {
    margin: -80px 20px 40px 20px;
}

/* Mailchimp / Newsletter Signup
--------------------------------------------- */
.widget_mc4wp_form_widget {
    background-color: #eee;
	border: 1px solid #bcbcbc;
    padding: 1em .5em;
	border-radius: 15px;
}

.footer-widget-area img {
    float: none !important;
    padding: 0 !important;
}

.footer-mc-signup-header {
	text-align: left;	
	text-transform: none !important;
	font-family: Georgia, sans;
	font-size: 28px;
	padding: 30px 0 0 30px;
}

.mc4wp-form-fields {
	text-transform: none !important;
}

.mc4wp-form-fields input[type="submit"] {
	border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 2px;
    padding: 12px 25px;
    text-transform: none;
    -webkit-font-smoothing: antialiased;
    white-space: normal;
    width: auto;
	margin-top: 20px;
}

.mc4wp-form-fields input[type="submit"]:hover {
	background-color: #872c26;
	border: none;
}

.mc4wp-form-fields input, select, textarea {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 0;
    box-shadow: none;
    color: #000;
    font-size: 20px;
    font-weight: 200;
    padding: 5px;
	max-width: 300px;
}

.mc-form-container {
	display: flex; /* Makes children display side-by-side by default */
	flex-wrap: wrap; /* Allows columns to wrap to the next line if needed */
}

.mc-form-outer {
    margin: -50px 0 0 0;
}

.mc-form-column-1 {
	flex: 1; /* Allows columns to grow and shrink proportionally */
	padding: 65px 30px 20px 30px;
	box-sizing: border-box; /* Includes padding in the element's total width */
	max-width: 600px;
}

.mc-form-column-2 {
	flex: 1; /* Allows columns to grow and shrink proportionally */
	padding: 0 20px 0 20px;
	box-sizing: border-box; /* Includes padding in the element's total width */
	max-width: 600px;
}

.mc-form-column-2 h4 {
	font-weight: 700;
	padding: 0 0 0 40px;
	margin: 30px 0 10px 0;
}

.mc-form-footer-section {
	font-weight:400;
	text-align: center;
	padding: 15px;
	max-width: 720px;
	margin: -20px auto 0 auto;
}

.series {
	flex:1;
	min-width:240px;
	max-width:450px;
    color: #393a3f;
	padding: 10px;
	margin:10px;
	font-size: 14px;
    line-height: 1.6;
}

.series p {
	font-weight: 600;
	margin: 0 0 10px 0 !important;
}

.tax-topic .no-bottom-margin {
	margin: 0 !important;
}

.tax-topic h3,
.series h3 {
	font-size: 16px;
	font-weight: 700;
}
.series a {
	text-decoration: none;
}

/* Series Discovery Section
---------------------------------------------------------------------------- */

.series-discovery {
	margin: 20px 0 10px;
}

/* Current Series Banner */
.current-series-banner {
	display: flex;
	align-items: center;
	gap: 24px;
	background: linear-gradient(135deg, #1a2a4a 0%, #2c4070 100%);
	border-radius: 12px;
	padding: 24px;
	margin-bottom: 24px;
	color: #fff;
}

.current-series-image-link {
	flex-shrink: 0;
	width: 280px;
}

.current-series-banner img {
	width: 100%;
	height: auto;
	border-radius: 8px;
	display: block;
}

.current-series-info {
	flex: 1;
}

.current-series-label {
	display: inline-block;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: rgba(255,255,255,0.7);
	margin-bottom: 6px;
}

.current-series-title {
	font-size: 24px;
	font-weight: 700;
	margin: 0 0 6px;
	color: #fff;
}

.current-series-dates {
	font-size: 14px;
	color: rgba(255,255,255,0.8);
	margin: 0 0 12px;
}

.current-series-cta {
	display: inline-block;
	padding: 8px 20px;
	background: #c4933f;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	font-size: 14px;
	font-weight: 600;
	transition: background 0.2s;
}

.current-series-cta:hover {
	background: #d4a34f;
	color: #fff;
}

/* Search Bar */
.series-search-wrap {
	margin-bottom: 18px;
}

.series-search-input-group {
	position: relative;
	display: flex;
	align-items: center;
}

.series-search-input-group #post-search {
	flex: 1;
	padding: 12px 40px 12px 16px !important;
	font-size: 16px !important;
	border: 2px solid #ddd;
	border-radius: 8px;
	outline: none;
	width: 100% !important;
	transition: border-color 0.2s;
}

.series-search-input-group #post-search:focus {
	border-color: #37518c;
}

.series-search-clear {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	background: none;
	border: none;
	font-size: 20px;
	color: #999;
	cursor: pointer;
	padding: 4px 8px;
	line-height: 1;
}

.series-search-clear:hover {
	color: #333;
}

/* Autocomplete Dropdown */
.series-autocomplete {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #fff;
	border: 1px solid #ddd;
	border-top: none;
	border-radius: 0 0 8px 8px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.1);
	z-index: 100;
	max-height: 300px;
	overflow-y: auto;
}

.series-autocomplete-item {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 16px;
	text-decoration: none;
	color: #333;
	border-bottom: 1px solid #f0f0f0;
	transition: background 0.15s;
}

.series-autocomplete-item:hover {
	background: #f5f7fa;
	color: #37518c;
}

.series-autocomplete-thumb {
	width: 60px;
	height: 45px;
	object-fit: cover;
	border-radius: 4px;
	flex-shrink: 0;
}

.series-autocomplete-text {
	flex: 1;
	min-width: 0;
}

.series-autocomplete-item:last-child {
	border-bottom: none;
}

.series-autocomplete-title {
	font-weight: 600;
	display: block;
	font-size: 14px;
}

.series-autocomplete-excerpt {
	display: block;
	font-size: 12px;
	color: #666;
	margin-top: 2px;
	line-height: 1.4;
}

.series-autocomplete-meta {
	display: block;
	font-size: 11px;
	color: #37518c;
	margin-top: 3px;
}

.series-autocomplete-smart-link {
	display: block;
	padding: 10px 16px;
	text-decoration: none;
	color: #37518c;
	background: #f5f7fa;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
	border-top: 1px solid #ddd;
	transition: background 0.15s;
}

.series-autocomplete-smart-link:hover {
	background: #e8ecf5;
	color: #2a3d6b;
}

/* Pill Rows */
.series-pill-row {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	flex-wrap: wrap;
}

.pill-row-label {
	font-size: 13px;
	font-weight: 600;
	color: #666;
	white-space: nowrap;
}

.theme-pills,
.trending-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.theme-pill,
.trending-pill {
	display: inline-block;
	padding: 5px 14px;
	font-size: 13px;
	font-weight: 500;
	border: 1px solid #37518c;
	color: #37518c;
	background: #fff;
	border-radius: 20px;
	cursor: pointer;
	transition: all 0.2s;
	line-height: 1.4;
}

.theme-pill:hover,
.trending-pill:hover {
	background: #37518c;
	color: #fff;
}

.theme-pill.active {
	background: #37518c;
	color: #fff;
}

.trending-pill {
	border-color: #c4933f;
	color: #8a6620;
}

.trending-pill:hover,
.trending-pill.active {
	background: #c4933f;
	color: #fff;
	border-color: #c4933f;
}

/* Browse By Row */
.browse-by-row {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 4px;
	margin-bottom: 10px;
	flex-wrap: wrap;
	justify-content: flex-start !important;
}

.browse-by-row select {
	padding: 6px 10px !important;
	font-size: 13px !important;
	border: 1px solid #ddd;
	border-radius: 6px;
	background: #fafafa;
	min-width: 150px;
}

/* Active Filters */
.active-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 8px;
	padding: 10px 0;
}

.active-filter-pill {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 10px;
	font-size: 12px;
	font-weight: 500;
	background: #e8ecf5;
	color: #37518c;
	border-radius: 14px;
}

.active-filter-search {
	background: #fdf2dc;
	color: #8a6620;
}

.active-filter-remove {
	background: none;
	border: none;
	font-size: 14px;
	color: inherit;
	cursor: pointer;
	padding: 0 2px;
	line-height: 1;
	opacity: 0.7;
}

.active-filter-remove:hover {
	opacity: 1;
}

/* Responsive */
@media only screen and (max-width: 768px) {
	.current-series-banner {
		flex-direction: column;
		text-align: center;
		padding: 20px;
	}

	.current-series-image-link {
		width: 100%;
		max-width: 300px;
	}

	.browse-by-row select {
		min-width: 120px;
		flex: 1;
	}
}

/* Theme .btn base — single source of truth (was duplicated 5× across contexts) */
.btn {
    padding: 12px;
    width: 130px;
    margin: 0 0 10px 10px;
    clear: none;
    background: linear-gradient(to bottom, #fff 0, #f0f0ef 100%);
    border: 1px solid #ddd;
    box-shadow: 1px 1px 2px 0 rgba(0,0,0,.1);
    color: #6c6665;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    touch-action: manipulation;
    vertical-align: middle;
    user-select: none;
    text-decoration: none;
}

.btn:hover,
.btn:focus {
    text-decoration: none;
    background-color: transparent;
    color: #872c26;
    border: 1px solid #872c26;
}
.topic-featured-article-left {
    flex: 1;
	padding: 0 15px 0 0;
    min-width: 250px;
    max-width: 450px;
    font-size: 14px;
    line-height: 1.6;
    position: relative;
    margin: 0 auto 0;
}

.topic-featured-article-right {
    flex: 1;
	padding: 0 0 15px 0;
    min-width: 250px;
    max-width: 450px;
    font-size: 14px;
    line-height: 1.6;
    position: relative;
    margin: 0 auto 15px;
}

.timeless-video {
	flex:1;
	min-width:250px;
    color: #393a3f;
	padding: 10px;
	margin:10px;
    font-size: 14px;
    line-height: 1.6;
	position: relative;
}

.conversation-with-chuck {
	flex:1;
	min-width:400px;
    color: #393a3f;
	padding: 20px;
	border: 1px solid #ddd;
	margin:10px;
    font-size: 14px;
    line-height: 1.6;
	position: relative;
}

.conversation-with-chuck h3 {
    font-size: 14px;
    font-weight: 700;
	color: #852C2C;
}

.conversation-with-chuck p {
	padding: 0 0 30px;
}

.conversation-with-chuck .btn {
    position: absolute;
    left: 0;
    bottom: 0;
    margin: 15px 0 15px 15px;
    width: auto;
}
.intl-pastors-container {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

@media only screen and (max-width: 900px) {
	.intl-pastors-container {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media only screen and (max-width: 600px) {
	.intl-pastors-container {
		grid-template-columns: repeat(2, 1fr);
	}
}

.pastor {
	color: #393a3f;
	padding: 10px;
	font-size: 14px;
	line-height: 1.6;
	position: relative;
	text-align: center;
}

.topic-list-topic-page {
	flex:1;
	min-width:300px;
	max-width:450px;
	color: #393a3f;
	padding: 10px;
	font-size: 14px;
	font-weight: 700;
    line-height: 1.6;
	position: relative;
	border: 1px solid #ddd;
}

.topic-list-topic-page-image {	
	flex:1;
	color: #393a3f;
	font-size: 14px;
	font-weight: 700;
    line-height: 1.6;
	position: relative;
}

.topic-list-topic-page-info {	
	flex:1;
	min-height: 275px;
	min-width:65%;
    height: 100%;
	color: #393a3f;
	padding: 10px;
	font-size: 14px;
	font-weight: 400;
    line-height: 1.6;
	position: relative;
}

.topic-list-topic-page-info h2 {
    font-size: 18px;
    font-weight: 700;
}

.topic-list-topic-page-info a {
    font-size: 14px;
	font-weight: 400;
}

.topic-list {
	flex:1;
	text-align: center;
	min-width:150px;
    color: #393a3f;
	padding: 10px;
	margin:10px;
    font-size: 14px;
	font-weight: 700;
    line-height: 1.6;
	position: relative;
	min-height: 215px;
}

.topic-list a {
    font-size: 14px;
	font-weight: 700;
}
.devotional-block {
	flex:1;
	min-width:225px;
    color: #393a3f;
	padding: 10px;
    font-size: 14px;
    line-height: 1.6;
	position: relative;
}

.devotional-block p{
	padding:0;
	margin: 0;
}

.video-heading {
    font-weight: 700;
    font-size: 16px;
	margin: 20px 0 20px 0;
}

.intl-pastor-heading {
    font-family: Georgia, sans;
    font-weight: 700;
    font-size: 14px;
	margin: 10px 0 0 0;
}

.pastor p {
    font-family: Georgia, sans;
    font-weight: 200;
    font-size: 11px;
	margin: 0 0 10px 0 !important;
}

.pastor img {
	border-radius: 15px;
}

.intl-pastor-a {
	text-decoration: none;
	padding: 10px 0;
}

.intl-pastor-a a{
    font-size: 13px;
	font-weight: 600;
	color: #0062D2;
	text-decoration: none;
}

.intl-pastor-a a:hover{
	text-decoration: underline;
}

.intl-a {
    font-family: Georgia, sans;
    font-weight: 200;
    font-size: 11px;
	margin: 0 0 10px 0 !important;
	padding: 10px 0 10px 10px;
}

.intl-a a{
    font-size: 13px;
	font-weight: 600;
	color: #0062D2;
	text-decoration: none;
}

.intl-a a:hover{
	text-decoration: underline;
}

.pastor .btn {
	position: absolute;
	bottom: 0;
	left: 0;
	margin: 0 0 10px 10px;
}
*,
*::before,
*::after {
	box-sizing: inherit;
}
.sidebar-secondary .widget-wrap {
    border: 1px solid #ddd;
    border-radius: 3px;
    box-shadow: inset 0 0 20px 5px rgba(0,0,0,.05);
	padding: 18px
}
.footer-widget-entry-content p {
    font-family: Georgia,serif;
    font-size: 20px;
    font-style: italic;
    line-height: 34px;
    margin: 5px 0 20px;
	text-align:left;
}
.footer-widget-entry-content cite {
    color: #fff;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
	float:left;
	padding: 0 40px 40px 0;
	width: 100%;
}
.footer-widget-area .btn {
	float: left;
	color: #892d28 !important;
	width: 100%;
}

/* Old utility nav background-image icons removed — replaced by inline SVGs
   added via ifl_secondary_nav_icons() in functions.php. The CSS classes
   .nav-account-login, .nav-shopping-cart, .nav-change-country can also be
   removed from the WordPress menu items in Appearance → Menus. */
  
.status-msg {
	color: #f31515;
}

/* Social Media Icons
--------------------------------------------- */
.sm-follow-text {
	font-weight:600;
	font-style:italic;
	margin:6px;
	float:left;
}
.fbsm {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/fb-icon.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
	float:left;
}
.fbsm:hover {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/fb-icon-hover.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
}
.xsm {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/x-icon.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
	float:left;
}
.xsm:hover {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/x-icon-hover.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
}
.instsm {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/inst-icon.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
	float:left;
}
.instsm:hover {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/inst-icon-hover.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
}
.ytsm {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/yt-icon.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
	float:left;
}
.ytsm:hover {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/yt-icon-hover.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
}
.ptsm {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/pt-icon.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
	float:left;
}
.ptsm:hover {
	margin:3px;
	width: 30px;
	height: 30px;
	background: url('images/pt-icon-hover.png') no-repeat;
	background-size: 30px 30px;
    background-position: center;
}

/* Screen-reader-only text — single definition for both class names */
.hidden-text,
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}
.footer-widget-area .widget-title {
	font-size: 30px;
	font-weight: 800;
}
/* Legacy .menu-item-search removed — search now uses #search-dropdown-container */

.slider-control {
	width: 100%;
	position:relative;
	padding: 0 0 0 0;
    margin-left: auto;
    margin-right: auto;
	margin-top: -45px;
}

.page-template-template-broadcast-player-page .slider-control,
.page-template-church-leaders-home-template-page .slider-control {
	display:none;
}

/* Home Page Layout — broadcast, devotional, featured sections
---------------------------------------------------------------------------- */
.home-top {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
	background:#fff;
}

.home-main-bg {
    width: 1200px;
	background: #fff;
    box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
    margin-left: auto;
    margin-right: auto;
	margin-bottom: 20px;
    padding-left: 0;
    padding-right: 0;
    position: relative;
    top: 0;
    z-index: 20;
}

.page-top {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
	padding:15px 50px 50px 50px;
	background:#fff;
}

.page-main-bg {
	float:right;
    width: 950px;
	background: #fff;
    box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
    margin-left: auto;
    margin-right: auto;
	margin-bottom: 40px;
    padding-left: 0;
    padding-right: 0;
    position: relative;
    top: 0;
    z-index: 20;
}

.page-full-main-bg {
	width: 100%;
	background: #fff;
    box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
    margin-left: auto;
    margin-right: auto;
	margin-bottom: 40px;
    padding-left: 0;
    padding-right: 0;
    position: relative;
    top: 0;
    z-index: 20;
}

.home-broadcast-devotional {
    display: flex; /* Enables flexbox layout */
    align-items: stretch; /* Ensures children stretch to fill the container's height */
    justify-content: center;
    gap: 0px 50px; /* Optional: Adds space between child divs */
}

.todays-broadcast, .todays-devotional {
	position: relative;	
    background: #f7f7f7;
    border: 1px solid #ddd;
    margin: 20px auto 15px;
	float: left;
	padding: 15px 0 15px 0;
    flex: 1; /* Allows child divs to grow and shrink proportionally */
}

.todays-broadcast-img, .todays-devotional-img {
	float: left;
	padding: 0 15px 15px 15px;
}

.todays-broadcast i, .todays-devotional i {
    color: #882e2d;
    display: block;
    float: left;
    font-size: 42px;
    height: 40px;
    width: 30px;
}

.todays-broadcast i+div, .todays-devotional i+div {
    width: 58%;
}

.todays-broadcast h3, .todays-devotional h3 {
    color: #882e2d;
    letter-spacing: 1px;
    line-height: 1;
    margin-bottom: 5px;
    text-transform: uppercase;
	font-size: 14px;
	font-weight: 700;
}

.todays-broadcast h4, .todays-devotional h4 {
    color: #000;
    letter-spacing: 1px;
    line-height: 1.25;
    margin-bottom: 20px;
    font-size: 16px;
	font-weight: 700;
}

.broadcast-listen-now, .devotional-read-now {
	float:right;
	padding: 0 15px 15px 0;
	position: absolute;
    bottom: 0;
    right: 0;	
}

.todays-broadcast {
    border-left: none;
    float: left;
}

.todays-devotional {
    border-right: none;
    float: right;
}

.todays-broadcast-wrap, .todays-devotional-wrap {
	padding: 0 20px 15px 0px;
	float:left;
	width: 50%;
}

.video-player-wrapper .btn,
.wp-block-button__link,
.todays-broadcast .btn,
.todays-devotional .btn {
	margin: 15px 0 0 42px;
	padding: 12px;
	width: 130px;
	clear: none;
	float: right;
	background: linear-gradient(to bottom, #fff 0, #f0f0ef 100%);
	border: 1px solid #ddd;
	box-shadow: 1px 1px 2px 0 rgba(0,0,0,.1);
	color: #6c6665;
	cursor: pointer;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	touch-action: manipulation;
	vertical-align: middle;
	user-select: none;
	text-decoration: none;
}

.wp-block-button__link:not(.has-background),
.wp-block-pullquote.is-style-solid-color:not(.has-background) {
	color: #6c6665 !important;
}

.wp-block-button__link:not(.has-background):focus,
.wp-block-button__link:not(.has-background):hover,
.wp-block-button__link:hover,
.video-player-wrapper .btn:hover,
.video-player-wrapper .btn:focus,
.todays-broadcast .btn:hover,
.todays-devotional .btn:hover {
	text-decoration: none;
	background-color: transparent;
	color: #872c26 !important;
	border: 1px solid #872c26;
}

.broadcast-devotional-links {
		position:absolute;
		bottom:0;
		left:0;
		padding: 0 0 15px 80px;
}

.broadcast-devotional-links a {
    color: #3a3a3a;
    font-size: 12px;
    font-weight: 600;
}

.devotional {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 3px;
    box-shadow: inset 0 0 20px 0 rgba(0,0,0,.1);
    padding: 30px 40px;
}
.devotional h6 {
    font-size: 14px;
    font-weight: 700;
    margin: 0 0 20px;
    text-align: center;
    text-transform: uppercase;
}
.devotional p {
    border-bottom: 1px solid #ececec;
    border-top: 1px solid #ececec;
    color: #39393f;
    font-family: Georgia,serif;
    font-style: italic;
    margin: 0 0 20px;
    padding: 15px 0;
    text-align: center;
}
.devotional .form-group {
    margin-bottom: 0;
    position: relative;
}
.devotional input[type=submit] {
    background: linear-gradient(to bottom, #872f2f 0, #401000 100%);
    border: 1px solid #ddd;
    border-radius: 1px;
    box-shadow: 1px 1px 2px 0 rgba(0,0,0,.1);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    height: 40px;
    margin-top: 10px;
    position: relative;
    width: 100%;
}
.home-devo-form {
    background: #39393f;
    box-shadow: inset 0 0 0 4px #f7f7f7;
	margin:16px auto 0 auto;
	display:flex;
	width: 80%;
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.home-devo-form .envelope {
    background: url(images/home-devo-lg-bg.png) no-repeat;
    border: none;
    float: left;
    height: 105px;
    padding: 15px 20px 0 15px;
    position: relative;
    width: 110px;
    color: #882d2b;
    font-size: 36px;
    text-align: center;
}
.home-devo-form .form-inline {
    border: 3px solid #39393f;
    border-left: none;
    text-align: center;
    padding: 20px 0 17px 15px;
    position: relative;
    flex-grow: 1;	
}
.home-devo-form .form-inline>.form-group {
    margin-right: 20px;
    width: 24%;
}

.home-devo-form h5 {
    color: #fff;
    letter-spacing: 1px;
    font-size: 12px;
    margin-bottom: 10px;
    text-align: center;
	font-weight: 700;
	line-height: 1.25;
	text-transform: uppercase;
}

.btn.btn-burgundy {
    background: linear-gradient(to bottom, #872f2f 0, #401000 100%);
    border-color: #fff;
    color: #fff;
}
.home-devo-form .btn {
    padding: 9px 16px 10px;
    width: 65%;
	margin: 0 auto 0 auto;
}
.form-inline .control-label, .form-inline .form-group {
    margin-bottom: 0;
    vertical-align: middle;
}
.form-inline .form-control-static, .form-inline .form-group {
    display: inline-block;
}

.form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
}

.home-devo-form .form-inline>.form-group input {
    height: 35px;
    width: 100%;
	font-size: 16px;
}
label {
	font-weight:600;
    color: #393939;
    display: inline-block;
    font-size: 14px;
    margin-bottom: 10px;
}

.home-featured-section {
	padding-top:2em;
	padding-right:5em;
	padding-bottom:2em;
	padding-left:5em;
	background-color:#fff;
	color:#1f1f1f;
}

.home-featured {
	color: #393a3f;
	height: 100%;
	padding: 20px;
	border: 1px solid #ddd;
    font-size: 14px;
    line-height: 1.6;
	position:relative;	
}

.home-featured h3 {
    font-size: 14px;
    font-weight: 700;
	color: #852C2C;
}

.home-featured-link {
	position: absolute;
	bottom: 20px;
	left: 29px;
	right: 29px;
}

.home-featured .btn {
	position: absolute;
	left: 0;
	bottom: 0;
	margin: 15px 0 15px 15px;
}

.sidebar-secondary .widget-area .wp-block-heading h6 {
    color: #852c2c;
	font-size: 12px;
    margin-bottom: 5px;
}
/* Float Clearing
--------------------------------------------- */
.author-box::before,
.clearfix::before,
.entry::before,
.entry-content::before,
.pagination::before,
.site-container::before,
.site-footer::before,
.site-header::before,
.site-inner::before,
.widget::before,
.wrap::before {
	content: " ";
	display: table;
}

.author-box::after,
.clearfix::after,
.entry::after,
.entry-content::after,
.pagination::after,
.site-container::after,
.site-footer::after,
.site-header::after,
.site-inner::after,
.widget::after,
.wrap::after {
	clear: both;
	content: " ";
	display: table;
}

/* Defaults
---------------------------------------------------------------------------- */
/* Smooth Scroll
--------------------------------------------- */
html {
	scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

/* Typographical Elements
--------------------------------------------- */
body {
	background-color: #eee;
	color: #000;
	font-family: Open Sans, sans-serif;
	font-size: 14px;
	font-weight: 300;
	line-height: 1.5;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
}

a,
input:focus,
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea:focus,
.button,
html:not([data-scroll="0"]) .site-header {
	transition: all 0.2s ease-in-out;
}

::selection {
	background-color: #000;
	color: #fff;
}

a {
	font-weight:400;
	color: #872c26;
	text-decoration: underline;
}

.underline {
	text-decoration: underline;
}

a:focus,
a:hover {
	color: #872c26;
	text-decoration: none;
}

p {
	margin: 0 0 30px;
	padding: 0;
}

.broadcast-schedule {
	margin: 0 0 0px;
	padding: 0;
}

ol,
ul {
	margin: 0;
	padding: 0;
}

li {
	list-style-type: none;
	margin: 0 0 0 -3px;
}

.single-daily-devotional .entry-content li {
	margin: 0 0 10px -3px;
}
b,
strong {
	font-weight: 800;
}

cite,
em,
i {
	font-style: italic;
}

.image-section .widget:first-of-type cite {
	font-size: 16px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: 3px;
	text-transform: uppercase;
}

figure {
	margin: 0;
}

mark {
	background: #ddd;
	color: #000;
}

blockquote {
	color: currentColor;
	margin: 40px;
}

.image-section .widget:first-of-type blockquote {
	color: #fff;
	font-size: 80px;
	font-weight: 200;
	line-height: 1;
	margin: 0 0 20px;
}

.image-section blockquote::before {
	display: none;
}

hr {
	border: 0;
	border-collapse: collapse;
	border-top: 2px solid currentColor;
	clear: both;
	color: #eee;
	margin: 1.65em auto;
}

/* Headings
--------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: Open Sans, sans-serif;
	font-weight: 200;
	line-height: 1.2;
	margin: 0 0 20px;
}

h1 {
	font-size: 30px;
}

h2 {
	font-size: 28px;
}

.station-finder-search-results h2,
.international-pastor-template h2 {
	font-size: 20px;
	font-weight: 700;
}

.front-page-1 .widget:first-of-type h4,
.front-page-2 .widget:first-of-type h4 {
	font-size: 80px;
	font-weight: 200;
	letter-spacing: normal;
	line-height: 1;
	text-transform: none;
}

h3 {
	font-size: 26px;
}

.widget-title {
	font-size: 14px;
	font-weight: 700;
	border-bottom: 1px solid #ddd;
	padding: 0 0 10px 0;
}

h4 {
	font-size: 20px;
}

.image-section h4,
.solid-section h4,
.image-section .widget-title,
.solid-section .widget-title {
	border-width: 0;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: 3px;
	padding-bottom: 0;
	text-transform: uppercase;
}

h5 {
	font-size: 20px;
}

h6 {
	font-size: 18px;
}

/* Objects
--------------------------------------------- */
embed,
iframe,
img,
object,
video,
.wp-caption {
	max-width: 100%;
}

img {
	height: auto;
}

.full-width-content img.pull-left {
	float: left;
	margin: 0 40px 40px -200px;
}

.full-width-content img.pull-right {
	float: right;
	margin: 0 -200px 40px 40px;
}

/* Gallery
--------------------------------------------- */
.gallery {
	margin-bottom: 28px;
	overflow: hidden;
}

.gallery-item {
	float: left;
	margin: 0;
	padding: 0 4px;
	text-align: center;
}

.gallery-columns-1 .gallery-item {
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	width: 50%;
}

.gallery-columns-3 .gallery-item {
	width: 33%;
}

.gallery-columns-4 .gallery-item {
	width: 25%;
}

.gallery-columns-5 .gallery-item {
	width: 20%;
}

.gallery-columns-6 .gallery-item {
	width: 16.6666%;
}

.gallery-columns-7 .gallery-item {
	width: 14.2857%;
}

.gallery-columns-8 .gallery-item {
	width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	width: 11.1111%;
}

.gallery-columns-2 .gallery-item:nth-child(2n+1),
.gallery-columns-3 .gallery-item:nth-child(3n+1),
.gallery-columns-4 .gallery-item:nth-child(4n+1),
.gallery-columns-5 .gallery-item:nth-child(5n+1),
.gallery-columns-6 .gallery-item:nth-child(6n+1),
.gallery-columns-7 .gallery-item:nth-child(7n+1),
.gallery-columns-8 .gallery-item:nth-child(8n+1),
.gallery-columns-9 .gallery-item:nth-child(9n+1) {
	clear: left;
}

.gallery .gallery-item img {
	border: none;
	height: auto;
	margin: 0;
}

/* Forms
--------------------------------------------- */
input,
select,
textarea {
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 0;
	box-shadow: none;
	color: #000;
	font-size: 16px;
	font-weight: 200;
	padding: 5px;
	width: 100%;
	max-width: none;
}

.zip-search {
	font-size: 12px;
	font-weight: 200;
	width: 300px;
}
input:focus,
textarea:focus {
	border: 1px solid #999;
	outline: none;
}

.front-page input:focus,
.front-page textarea:focus {
	border: 1px solid #0680a2;
	outline: none;
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

::-moz-placeholder {
	color: #000;
	opacity: 1;
}

::-webkit-input-placeholder {
	color: #000;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form button[type="submit"],
.widget .button {
    background: #fff;
    background: linear-gradient(180deg,#fff 0,#f0f0ef);
    border: 1px solid #ddd;
    box-shadow: 1px 1px 2px 0 #0000001a;
    color: #6c6665;
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0;
    padding: 13px 16px;
    text-align: center;
    touch-action: manipulation;
    -webkit-user-select: none;
    user-select: none;
    vertical-align: middle;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button {
	display: none;
}

/* Buttons
--------------------------------------------- */
button:focus,
button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover,
.button.clear:focus,
.button.clear:hover,
.button:focus,
.button:hover,
.footer-widgets .widget .button,
.footer-widgets button,
.footer-widgets input[type="button"],
.footer-widgets input[type="reset"],
.footer-widgets input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:hover,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
.widget .button.clear:focus,
.widget .button.clear:hover,
.widget .button:focus,
.widget .button:hover {
	background-color: #eee;
	color: #000;
	border: 1px solid #eee;
}

.button {
	display: inline-block;
}

button.small,
input[type="button"].small,
input[type="reset"].small,
input[type="submit"].small,
.button.small {
	padding: 8px 16px;
}

.footer-widgets .widget .button.clear,
.widget .button.clear {
	background-color: transparent;
	border: 2px solid #000;
	color: #000;
}

.image-section .button {
	margin-left: 5px;
	margin-right: 5px;
	margin-top: 20px;
}

.image-section .widget .button.clear {
	background-color: transparent;
	border-color: #fff;
	color: #fff;
}

.footer-widgets .widget button:focus,
.footer-widgets .widget button:hover,
.footer-widgets .widget input[type="button"]:focus,
.footer-widgets .widget input[type="button"]:hover,
.footer-widgets .widget input[type="reset"]:focus,
.footer-widgets .widget input[type="reset"]:hover,
.footer-widgets .widget input[type="submit"]:focus,
.footer-widgets .widget input[type="submit"]:hover,
.footer-widgets .widget .button:focus,
.footer-widgets .widget .button:hover,
.image-section button:focus,
.image-section button:hover,
.image-section input[type="button"]:focus,
.image-section input[type="button"]:hover,
.image-section input[type="reset"]:focus,
.image-section input[type="reset"]:hover,
.image-section input[type="submit"]:focus,
.image-section input[type="submit"]:hover,
.image-section .widget .button:focus,
.image-section .widget .button:hover {
	background-color: #fff;
	border: 2px solid #fff;
	color: #000;
}

.site-container button:disabled,
.site-container button:disabled:hover,
.site-container input:disabled,
.site-container input:disabled:hover,
.site-container input[type="button"]:disabled,
.site-container input[type="button"]:disabled:hover,
.site-container input[type="reset"]:disabled,
.site-container input[type="reset"]:disabled:hover,
.site-container input[type="submit"]:disabled,
.site-container input[type="submit"]:disabled:hover,
.site-container .footer-widgets .widget input[type="submit"]:disabled,
.site-container .footer-widgets .widget input[type="submit"]:disabled:hover {
	background-color: #ddd;
	border-color: #ddd;
	color: #444;
	cursor: not-allowed;
}

.post-password-form input[type="password"] {
	margin-bottom: 15px;
}

/* Tables
--------------------------------------------- */
table {
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 40px;
	width: 100%;
	word-break: break-all;
}

tbody {
	border-bottom: 1px solid #eee;
}

td,
th {
	line-height: 2;
	text-align: left;
	vertical-align: top;
}

td {
	padding: 0.5em;
}

tr {
	border-top: 1px solid #eee;
}

th {
	font-weight: 800;
	padding: 0.5em;
}

.topic {
    border-top: 1px solid #dad9d9;
    border-bottom: 1px solid #dad9d9;
    content: '';
    display: table;
    clear: both;
    margin-bottom: 1.5em;
    width: 100%;
}

.topic ul.lcp_catlist, ul.two-list {
    -webkit-perspective: 1;
    -moz-columns: 2;
    -webkit-columns: 2;
    columns: 2;
    -moz-column-fill: balance;
    -webkit-column-fill: balance;
    column-fill: balance;
    -webkit-column-gap: 2em;
    -moz-column-gap: 2em;
    column-gap: 2em;
	margin-top: 1.5em;
}

.topic .lcp_catlist li, .two-list li {
    display: list-item;
    padding-bottom: .5em;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}

.topic-list-image {
  display: inline-block;
  padding: 1rem 1rem;
}

.topic-image {
  display: inline-block;
  padding: 1rem 1rem;
  vertical-align: middle;
  height: 200px;
}

.topic-page-image {
  display: inline-block;
  padding: 0 2rem 2rem 2rem;
  vertical-align: middle;
  float:right;
  height: 200px;
  width: 250px;
}

.topic-inner {
  display: inline-block;
  padding: 1rem 1rem;
  vertical-align: middle;
  float:left;
  width: 70%;
  height: 200px;
}

.topic-block-separator {
    border: none;
    border-top: 1px solid currentColor;
    color: #eee;
    margin: 2.75em auto 1em auto;
}

/* Screen Reader Text
--------------------------------------------- */
.screen-reader-shortcut,
.screen-reader-text,
.screen-reader-text span {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.genesis-nav-menu .search input[type="submit"]:focus,
.screen-reader-shortcut:focus,
.screen-reader-text:focus,
.widget_search input[type="submit"]:focus {
	background: #fff;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #000;
	display: block;
	font-size: 1em;
	font-weight: 800;
	height: auto;
	padding: 15px 23px 14px;
	text-decoration: none;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

.more-link {
	position: relative;
}

/* Structure and Layout
---------------------------------------------------------------------------- */
/* Site Containers
--------------------------------------------- */
.site-inner,
.wrap {
	float: none;
	margin: 0 auto;
	max-width: 1200px;
}

.site-header .wrap {
	max-width: 100%;
	position: relative;
}
.site-footer .wrap {
	max-width: 100%;
}

.nav-primary .wrap {
	max-width: 1200px;
	display: flex;
	align-items: center;
}

.site-inner {
	clear: both;
	margin-top: 170px;
	position: relative;
	z-index: 9;
	word-wrap: break-word;
}

/* Front page: ensure all containers are full-width so slider stretches edge-to-edge */
.front-page .site-container .site-inner {
	margin-top: 130px;
	max-width: 100%;
	width: 100%;
}
.front-page .content-sidebar-wrap,
.front-page .content {
	max-width: 100%;
	width: 100%;
}

.secondary-nav .site-inner {
	margin-top: 170px;
}

/* Column Classes
--------------------------------------------- */
/* Link: http://twitter.github.io/bootstrap/assets/css/bootstrap-responsive.css */
.five-sixths,
.four-sixths,
.one-fourth,
.one-half,
.one-sixth,
.one-third,
.three-fourths,
.three-sixths,
.two-fourths,
.two-sixths,
.two-thirds {
	float: left;
	margin-left: 2.564102564102564%;
}

.one-half,
.three-sixths,
.two-fourths {
	width: 48.717948717948715%;
}

.one-third,
.two-sixths {
	width: 31.623931623931625%;
}

.four-sixths,
.two-thirds {
	width: 65.81196581196582%;
}

.one-fourth {
	width: 23.076923076923077%;
}

.three-fourths {
	width: 74.35897435897436%;
}

.one-sixth {
	width: 14.52991452991453%;
}

.five-sixths {
	width: 82.90598290598291%;
}

.first {
	clear: both;
	margin-left: 0;
}

/* Common Classes
---------------------------------------------------------------------------- */
/* Avatar
--------------------------------------------- */
.avatar {
	border-radius: 50%;
	float: left;
}

.author-box .avatar {
	height: 88px;
	width: 88px;
}

.entry-comments .avatar {
	height: 60px;
	width: 60px;
}

.alignleft .avatar,
.author-box .avatar {
	margin-right: 24px;
}

.alignright .avatar {
	margin-left: 24px;
}

.comment .avatar {
	margin: 0 20px 24px 0;
}

/* Genesis
--------------------------------------------- */
.breadcrumb {
	border-bottom: 2px solid #f5f5f5;
	font-size: 16px;
	margin-bottom: 25px;
	padding-bottom: 10px;
	font-weight: 700;
}

.custom-breadcrumbs {
	font-size: 16px;
	font-weight: 700;
}

.custom-breadcrumbs ol {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.custom-breadcrumbs li {
    display: inline-block;
}

.custom-breadcrumbs a {
	color: #882d2b;
	text-decoration: underline;
	font-weight: 700;
}

.custom-breadcrumbs a:hover {
	text-decoration: none;
}

.custom-breadcrumbs .breadcrumb-separator {
    margin: 0 0.5em;
	color: #882d2b;
    pointer-events: none;
}

/* The last item (current page) has no link */
.custom-breadcrumbs li:last-child span {
    font-weight: bold;
    color: #000;
}

.archive-description,
.author-box {
	border-bottom: 1px solid #000;
	border-top: 1px solid #000;
	font-size: 20px;
	margin-bottom: 100px;
	padding: 40px 0;
}

.author-box-title {
	font-size: 22px;
	margin-bottom: 8px;
}

.archive-description p:last-child,
.author-box p:last-child {
	margin-bottom: 0;
}

/* Search Form
--------------------------------------------- */
.search-form {
	overflow: hidden;
	position: relative;
}

.search-form input[type="submit"] {
	padding: 25px;
}

.widget_search input[type="submit"] {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	padding: 0;
	position: absolute;
	width: 1px;
}

.widget_search input[type="submit"]:focus {
	background: #000;
	border-radius: 0;
	box-shadow: none;
	color: #fff;
	padding: 20px 23px;
	right: 0;
	top: 0;
}

.error404 .content .search-form {
	margin-bottom: 40px;
}

.error404 .content input[type="search"] {
	margin-right: 10px;
	width: auto;
}

/* Titles
--------------------------------------------- */
.archive-title {
	font-size: 24px;
	line-height: 1;
	margin-bottom: 20px;
}

.entry-title {
	font-size: 30px;
}

.sidebar .entry-title {
	font-size: 24px;
	text-align: left;
}

.entry-title a {
	color: #000;
}

.entry-title a:focus,
.entry-title a:hover {
	color: #0680a2;
}

/* WordPress
--------------------------------------------- */
.alignleft {
	float: left;
	text-align: left;
}

.alignright {
	float: right;
	text-align: right;
}

a.alignleft,
a.alignnone,
a.alignright {
	max-width: 100%;
}

a.alignnone {
	display: inline-block;
}

a.aligncenter img {
	display: block;
	margin: 0 auto;
}

img.centered,
.aligncenter {
	display: block;
	margin: 0 auto 24px;
}

img.alignnone,
.alignnone {
	margin: 0 0 12px;
}

a.alignleft,
img.alignleft,
.wp-caption.alignleft {
	margin: 0 24px 24px 0;
}

a.alignright,
img.alignright,
.wp-caption.alignright {
	margin: 0 0 24px 24px;
}

.wp-caption-text {
	color: #000;
	font-family: Open Sans, sans-serif;
	font-size: 18px;
	font-style: normal;
	line-height: 1.2;
	text-align: center;
}

.entry-content p.wp-caption-text {
	margin-bottom: 0;
}

.gallery-caption,
.entry-content .gallery-caption {
	margin: 0 0 10px;
}

.post-password-form input {
	width: auto;
}

.post-password-form input[type="submit"] {
	padding: 25px;
}

.wp-audio-shortcode,
.wp-playlist,
.wp-video {
	margin: 0 0 28px;
}

/* Widgets
---------------------------------------------------------------------------- */
.widget {
	word-wrap: break-word;
}

.widget ol > li {
	list-style-position: inside;
	list-style-type: decimal;
	padding-left: 20px;
	text-indent: -20px;
}

.widget ul li {
	margin-bottom: 0px;
	padding-bottom: 10px;
	margin:0 0 0 3px;
}

.widget li li {
	border: none;
	margin: 15px 0px 15px 10px;
	padding: 0;
}

.widget_calendar table {
	width: 100%;
}

.widget_calendar td,
.widget_calendar th {
	text-align: center;
}

.form-control {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 0;
    box-shadow: none;
    color: #393a3f;
    font-size: 14px;
    font-weight: 200;
    padding: 10px;
    width: 100%;
}

/* Featured Content
--------------------------------------------- */
.featured-content .entry-title {
	font-size: 24px;
}

/* Plugins
---------------------------------------------------------------------------- */
/* Genesis eNews Extended
--------------------------------------------- */
.enews-widget input {
	font-size: 18px;
	margin-bottom: 20px;
}

.enews-widget input[type="submit"] {
	margin: 0;
	width: 100%;
}

.enews form + p {
	margin-top: 24px;
}

/* WP Forms
--------------------------------------------- */
.entry-content .wpforms-container {
	margin-bottom: 40px;
}

.entry-content .wpforms-form .wpforms-field {
	clear: both;
	margin: 20px 0;
	overflow: hidden;
}

.site-container .wpforms-container .wpforms-form .wpforms-field input {
	border-radius: 0;
	height: auto;
	padding: 20px;
}

.site-container .entry-content .wpforms-form .wpforms-field-label {
	font-weight: 800;
}

.site-container .entry-content .wpforms-form .wpforms-field-sublabel {
	font-size: 16px;
}

.entry-content .wpforms-form .wpforms-field-hp {
	display: none !important;
	left: -9000px !important;
	position: absolute !important;
}

.site-container .entry-content .wpforms-form textarea {
	padding: 20px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-small {
	height: 120px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-medium {
	height: 200px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-large {
	height: 300px;
}

/* Skip Links
---------------------------------------------------------------------------- */
.genesis-skip-link {
	margin: 0;
}

.genesis-skip-link li {
	height: 0;
	width: 0;
	list-style: none;
}

/* Display outline on focus */
:focus {
	color: #333;
	outline: #ccc solid 1px;
}

/* Site Header
---------------------------------------------------------------------------- */
.site-header {
	background-color: #fff;
	left: 0;
	position: fixed;
	width: 100%;
	z-index: 999;
}

.featured-section .site-header {
	background-color: transparent;
}

.featured-section .site-header > .wrap {
	border-bottom: 1px solid #fff;
}

/* Title Area
--------------------------------------------- */
.title-area {
	padding: 0;
	width: 1200px;
	margin: 0 auto;
}

.site-title {
	font-size: 24px;
	font-weight: 800;
	letter-spacing: 2px;
	line-height: 1;
	margin-bottom: 0;
	text-transform: uppercase;
}

.site-title a,
.site-title a:focus,
.site-title a:hover {
	color: #fff !important;
}

.header-image .site-title > a {
	background-size: contain !important;
	display: block;
	height: 107px;
	max-width: 480px;
	text-indent: -9999px;
}

.site-description {
	display: block;
	height: 0;
	margin-bottom: 0;
	text-indent: -9999px;
}
.header-widget-area {
float: right;
width: 25%;
line-height: 1.6875;
font-family: Georgia, Times, "Times New Roman", serif;
font-size: 16px;    
font-size: 1rem;
color: #fff;
}

/* ==========================================================================
   Site Navigation — Desktop · Tablet · Mobile
   Consolidated nav styles matching the Figma "New IFL Navigation" design.
   ========================================================================== */

/* --- Genesis Nav Menu (base) ------------------------------------------- */
.genesis-nav-menu {
	line-height: 1;
}
.genesis-nav-menu .menu-item {
	display: inline-block;
	text-align: left;
}
.genesis-nav-menu li li {
	margin-left: 0;
}
.genesis-nav-menu a {
	color: #fff;
	display: block;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 17px;
	font-weight: 400;
	letter-spacing: 0.3px;
	padding: 14px 18px;
	text-transform: capitalize;
	text-decoration: none;
}
.genesis-nav-menu > .menu-item > a {
	text-transform: capitalize;
}

/* Active / hover indicator — white underline */
.front-page .genesis-nav-menu li.current-menu-item > a,
.genesis-nav-menu > li > a {
	border-bottom: 2px solid transparent;
}
.front-page .genesis-nav-menu li.current-menu-item > a:focus,
.front-page .genesis-nav-menu li.current-menu-item > a:hover,
.genesis-nav-menu li.current-menu-item > a,
.genesis-nav-menu > li > a:focus,
.genesis-nav-menu > li > a:hover {
	border-color: #fff;
}

/* --- Dropdown Menus (desktop) ------------------------------------------ */
.genesis-nav-menu .sub-menu {
	left: -9999px;
	letter-spacing: 0;
	opacity: 0;
	position: absolute;
	top: calc(100% - 10px);
	transform: translateY(8px);
	transition: opacity 0.25s ease, transform 0.25s ease;
	width: 250px;
	z-index: 99;
	box-shadow: 0 6px 16px rgba(0,0,0,0.15);
	border-radius: 8px;
	overflow: hidden;
}
.genesis-nav-menu .sub-menu a {
	color: #222;
	background-color: #e8e8e8;
	border: none;
	outline: none;
	padding: 12px 20px;
	position: relative;
	width: 250px;
	text-transform: none;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-weight: 400;
	font-size: 14px;
	transition: background-color 0.15s ease, color 0.15s ease;
}
.genesis-nav-menu .sub-menu a:focus,
.genesis-nav-menu .sub-menu a:hover,
.genesis-nav-menu .sub-menu li.current-menu-item > a {
	color: #fff;
	background-color: #37518c;
}
.genesis-nav-menu .sub-menu .sub-menu {
	margin: -46px 0 0 249px;
}
.genesis-nav-menu .menu-item:hover {
	position: static;
}
.genesis-nav-menu .menu-item:hover > .sub-menu {
	left: auto;
	opacity: 1;
	transform: translateY(0);
}

/* --- Store mega-menu (STORE submenu only) ----------------------------- */
/* Two-column flyout — "Shop by category" | "Collections" + a full-width
   "Browse all categories" footer. Scoped to .mega-store: add that CSS class
   to the Store item in Appearance -> Menus. Menu structure under Store:
   ("Shop by category" group > the category terms) + ("Collections" group >
   collection links) + "Browse all categories" (link, no children = footer).
   Builds on the existing dropdown (still reveals on hover) — we just widen the
   panel, lay it into columns, and keep the 3rd level always visible inline. */
.genesis-nav-menu .mega-store > .sub-menu {
	width: 560px;
	margin-left: -200px;       /* shift left so the right edge sits at the search icon, not past it (tune if needed) */
	padding: 4px 0 0;
	background-color: #fff;
	display: flex;
	flex-wrap: wrap;
}
.genesis-nav-menu .mega-store > .sub-menu > .menu-item-has-children {
	flex: 1 1 50%;
	box-sizing: border-box;
	padding: 14px 14px 16px;
}
.genesis-nav-menu .mega-store > .sub-menu > .menu-item-has-children > a {
	background: transparent !important;
	color: #9aa0ad !important;
	text-transform: uppercase;
	letter-spacing: 0.6px;
	font-size: 11px;
	font-weight: 500;
	width: auto;
	padding: 4px 12px 8px;
	pointer-events: none;
}
.genesis-nav-menu .mega-store > .sub-menu > .menu-item-has-children > a::after {
	content: none !important;
}
.genesis-nav-menu .mega-store .sub-menu .sub-menu {
	position: static !important;
	left: auto !important;
	opacity: 1 !important;
	transform: none !important;
	display: block !important;
	margin: 0;
	width: 100%;
	box-shadow: none;
	overflow: visible;
}
/* Stack the items vertically (override the nav's inline-block) */
.genesis-nav-menu .mega-store .sub-menu .sub-menu .menu-item {
	display: block !important;
	width: 100%;
}
.genesis-nav-menu .mega-store .sub-menu .sub-menu a {
	background: transparent !important;
	color: #26303f !important;
	width: auto;
	padding: 8px 12px;
	border-radius: 5px;
	font-size: 14px;
}
.genesis-nav-menu .mega-store .sub-menu .sub-menu a:hover,
.genesis-nav-menu .mega-store .sub-menu .sub-menu a:focus {
	background-color: #f0f4fa !important;
	color: #1e3a6e !important;
}
.genesis-nav-menu .mega-store .menu-item-object-product_category > a {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.genesis-nav-menu .mega-store .menu-item-object-product_category > a::after {
	content: '\203A';
	color: #b9bec8;
	font-size: 16px;
	margin-left: 12px;
}
.genesis-nav-menu .mega-store > .sub-menu > .menu-item:not(.menu-item-has-children) {
	flex: 1 1 100%;
	order: 2;
	border-top: 1px solid #eef0f3;
	margin-top: 2px;
}
.genesis-nav-menu .mega-store > .sub-menu > .menu-item:not(.menu-item-has-children) > a {
	background: transparent !important;
	color: #2d4f8c !important;
	font-weight: 500;
	width: auto;
	padding: 13px 18px;
}
.genesis-nav-menu .mega-store > .sub-menu > .menu-item:not(.menu-item-has-children) > a::after {
	content: ' \2192';
}

/* --- Primary Navigation (blue bar) ------------------------------------- */
.nav-primary {
	background-color: #37518c !important;
	color: #fff;
	text-align: center;
	box-shadow: 0 3px 2px 0 rgba(0,0,0,.15);
	border-top: 1px solid #c3cbdc;
	margin-top: 0;
}
.nav-primary .genesis-nav-menu {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex: 1;
}
.nav-primary .genesis-nav-menu li {
	border: none;
}

/* "Ways to Give" — red pill button */
.nav-donate-link {
	background-color: transparent !important;
	border: none !important;
}
.nav-donate-link > a,
.nav-primary .genesis-nav-menu .nav-donate-link > a {
	background-color: #882d2b !important;
	color: #fff !important;
	border-radius: 8px !important;
	padding: 9px 22px !important;
	font-weight: 700;
	letter-spacing: 0.5px;
	border: 1px solid rgba(255,255,255,0.6) !important;
	transition: background-color 0.2s;
	margin: 3px 8px;
	display: inline-block;
	line-height: 1.4;
}
.nav-donate-link > a:hover,
.nav-donate-link > a:focus {
	background-color: #6e2321 !important;
	border-color: transparent !important;
}

/* --- Search Icon (in nav bar) ------------------------------------------ */
.search-toggle-item {
	display: inline-block;
}
.search-toggle-item a {
	display: flex !important;
	align-items: center;
	justify-content: center;
	padding: 10px 18px !important;
	border-bottom: none !important;
	line-height: 1;
}
.ifl-custom-search-icon {
	width: 26px;
	height: 26px;
	fill: #fff;
	transition: opacity 0.2s;
}
.search-toggle-item a:hover .ifl-custom-search-icon,
.search-toggle-item a:focus .ifl-custom-search-icon {
	opacity: 0.7;
}

/* --- Search Dropdown (slides below nav) -------------------------------- */
/* Fixed position so it layers directly below the fixed .site-header.
   `top` is set dynamically by ifl-nav.js to match the header height.
   Design: full-width white bar, dark-blue underline, single input field. */
#search-dropdown-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background-color: #253458;
	border-bottom: 3px solid #37518c;
	padding: 12px 0;
	z-index: 998;
	box-sizing: border-box;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
	transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
}
#search-dropdown-container.is-active {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
#search-dropdown-container > .wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 30px;
}
/* Override Genesis base .search-form styles inside dropdown */
#search-dropdown-container .search-form {
	display: flex !important;
	width: 100%;
	min-width: 320px;
	align-items: stretch;
	overflow: visible;
	position: relative;
}
#search-dropdown-container .search-form label,
#search-dropdown-container .search-form .search-form-label {
	display: none !important;
}
#search-dropdown-container .search-form .search-form-input,
#search-dropdown-container .search-form input[type="search"] {
	flex: 1;
	padding: 11px 16px !important;
	font-size: 15px;
	border: 1px solid #bbb !important;
	border-radius: 3px;
	outline: none;
	background: #fff !important;
	color: #333 !important;
	-webkit-appearance: none;
	appearance: none;
	height: auto;
	min-height: 42px;
	box-sizing: border-box;
	width: 100%;
}
#search-dropdown-container .search-form input[type="search"]:focus {
	border-color: #37518c !important;
	box-shadow: 0 0 0 1px #37518c;
}
/* Hide the submit button — search triggers on Enter key */
#search-dropdown-container .search-form .search-form-submit,
#search-dropdown-container .search-form input[type="submit"] {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* --- Hamburger Button (hidden on desktop, shown on mobile) ------------- */
.ifl-hamburger {
	display: none;
}

/* --- Secondary Navigation (utility links: Intl Offices, Account, Cart) - */
/* Absolutely positioned so it doesn't push the logo/title-area down.
   Centered at 1200px with items floated right inside.
   pointer-events:none lets clicks pass through to the logo underneath. */
.nav-secondary {
	border: none;
	position: absolute;
	left: 0;
	right: 0;
	top: 20px;
	z-index: 10;
	max-width: 1200px;
	margin: 0 auto;
	pointer-events: none;
}
.menu-secondary {
	float: right !important;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 0;
	pointer-events: auto;
}
/* All secondary nav links: flex row, vertically centered, consistent sizing */
.nav-secondary .genesis-nav-menu a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 10px 14px;
	text-transform: none;
	color: #37518c;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	border-bottom: none;
	text-decoration: none;
	cursor: pointer;
	transition: color 0.2s, opacity 0.2s;
}
.nav-secondary .genesis-nav-menu a:hover,
.nav-secondary .genesis-nav-menu a:focus {
	color: #1e3a6e;
	text-decoration: underline;
}
/* Secondary nav inline SVG icons — consistent 18px sizing */
.ifl-secondary-icon {
	width: 18px;
	height: 18px;
	stroke: #37518c;
	flex-shrink: 0;
	transition: stroke 0.2s;
}
.nav-secondary .genesis-nav-menu a:hover .ifl-secondary-icon,
.nav-secondary .genesis-nav-menu a:focus .ifl-secondary-icon {
	stroke: #1e3a6e;
}
/* Hide any residual <img> icons left in menu item labels */
.nav-secondary .genesis-nav-menu a img {
	display: none !important;
}

/* --- Tablet Search Bar (inside header, between logo and nav) ----------- */
/* Hidden on desktop — only visible at tablet breakpoint via media query */
#tablet-search-bar {
	display: none;
}

/* --- Admin Bar offset (when logged in to WordPress) -------------------- */
.admin-bar .site-header {
	top: 32px;
}
.admin-bar #search-dropdown-container {
	/* ifl-nav.js calculates top from header.offsetHeight;
	   the extra 32px is handled by reading header's actual position. */
}
@media screen and (max-width: 782px) {
	.admin-bar .site-header {
		top: 46px;
	}
}

/* --- Mobile Nav Overlay (hidden on desktop) ---------------------------- */
.ifl-mobile-nav {
	display: none;
}
/* Footer Navigation
--------------------------------------------- */
.nav-footer .genesis-nav-menu {
	padding: 6px 0;
}

.nav-footer .genesis-nav-menu a {
	border: none;
	font-weight: 800;
	letter-spacing: 3px;
	margin: 0;
	padding: 14px 25px;
}

/* Responsive Menu
--------------------------------------------- */
.menu .menu-item:focus {
	position: static;
}

.menu .menu-item > a:focus + ul.sub-menu,
.menu .menu-item.sfHover > ul.sub-menu {
	left: auto;
	opacity: 1;
}

.sub-menu-toggle,
.menu-toggle {
	display: none;
	visibility: hidden;
}

/* Content Area
---------------------------------------------------------------------------- */
/* Front Page
--------------------------------------------- */
.image-section,
.solid-section {
	clear: both;
	text-align: center;
	width: 100%;
}

.image-section {
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.5) 30%, rgba(0, 0, 0, 0.8) 80%, rgba(0, 0, 0, 0.9) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#33000000", endColorstr="#e6000000", GradientType=0);
	display: table;
	overflow: hidden;
	table-layout: fixed;
	width: 100%;
	height: 100vh;
}

.image-section .widget-area {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

.image-section,
.image-section a {
	color: #fff;
}

.image-section a:focus,
.image-section a:hover,
.image-section .featured-content .entry-title a:focus,
.image-section .featured-content .entry-title a:hover {
	color: #0680a2;
}

.solid-section {
	background-color: #fff;
}

.front-page-2,
.front-page-3,
.front-page-4,
.front-page-5,
.front-page-6,
.front-page-7 {
	border-top: 54px solid transparent;
	margin-top: -54px;
	-webkit-background-clip: padding-box;
	-moz-background-clip: padding;
	background-clip: padding-box;
	position: relative;
	z-index: 9;
}

.front-page-1,
.front-page-3,
.front-page-5,
.front-page-7 {
	background-attachment: fixed;
	background-color: #fff;
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: cover;
}

.front-page-1 {
	position: relative;
}

.front-page-1 .image-section {
	padding-top: 75px;
}

.secondary-nav .front-page-1 .image-section {
	padding-top: 150px;
}

.front-page-4 .solid-section {
	background-color: #f3f3f3;
}

.bottom-image {
	margin-bottom: -120px;
	margin-top: 100px;
}

.bottom-image img {
	margin-bottom: -10px;
}

.front-page .field-wrap:last-child {
	margin-bottom: 0;
}

.small-disclaimer {
	font-size: 14px;
	font-style: italic;
}
/* Dashicons
--------------------------------------------- */
.front-page .dashicons {
	font-size: 40px;
	height: 40px;
	margin-bottom: 20px;
	width: 40px;
}

/* Flexible Widgets
--------------------------------------------- */
.flexible-widgets {
	padding-bottom: 60px;
	padding-top: 100px;
}

.flexible-widgets .widget {
	float: left;
	margin: 0 0 40px 2.564102564102564%;
}

.flexible-widgets.widget-full .widget,
.flexible-widgets.widget-area .widget:nth-of-type(1),
.flexible-widgets.widget-halves.uneven .widget:last-of-type {
	background: none;
	margin-left: 0;
	padding: 0;
	width: 100%;
}

.widget-area.flexible-widgets.widget-half .widget,
.flexible-widgets.widget-halves .widget {
	width: 48.717948717948715%;
}

.flexible-widgets.widget-thirds .widget {
	width: 31.623931623931625%;
}

.flexible-widgets.widget-fourths .widget {
	width: 23.076923076923077%;
}

.flexible-widgets.widget-halves .widget:nth-child(even),
.flexible-widgets.widget-thirds .widget:nth-child(3n+2),
.flexible-widgets.widget-fourths .widget:nth-child(4n+2) {
	clear: left;
	margin-left: 0;
}

.solid-section .widget {
	background-color: #fff;
	padding: 40px;
}

.solid-section .widget:not(:first-child) .widget-title {
	border-bottom: 1px solid #ddd;
	margin-bottom: 30px;
	padding-bottom: 30px;
}

.flexible-widgets p.large {
	font-size: 36px;
	line-height: 1;
}

.flexible-widgets p.price {
	font-size: 32px;
	font-weight: 800;
	line-height: 1.2;
	margin-bottom: 20px;
}

/* Content
--------------------------------------------- */
.content {
	float: left;
	width: 700px;
}

.page .content {
	padding-bottom: 50px;
}

.sidebar-content .content {
	float: right;
}

.full-width-content .content {
	padding: 50px 200px 50px;
	width: 100%;
}

.full-width-content .content-sidebar-wrap .content {
	padding: 0px 0px 0px;
}
.full-width-content.front-page .content {
	background: #eee;
	padding: 0;
}

/* Entries
--------------------------------------------- */
.entry {
	margin-bottom: 0px;
}

.widget .entry {
	margin-bottom: 40px;
}

.footer-widget-area .widget .entry {
	margin-bottom: 40px;
	display:flex;
	flex-wrap: wrap;
}

.footer-widget-entry-content,
.footer-widget-entry-image {
	flex:1;
	padding: 40px;
}

.entry-content ol,
.entry-content ul {
	margin-bottom: 30px;
	padding-left: 40px;
}

.entry-content ol > li {
	list-style-type: decimal;
}

.entry-content ul > li {
	list-style-type: disc;
}

.entry-content ol ul > li,
.entry-content ul ul > li {
	list-style-type: circle;
}

.entry-content ol ol,
.entry-content ul ul {
	margin-bottom: 0;
}

.entry-content code {
	background-color: #000;
	color: #ddd;
}

/* Entry Meta
--------------------------------------------- */
p.entry-meta {
	font-size: 20px;
	margin-bottom: 0;
}

.entry-header,
.entry-footer {
	text-align: left;
}
.entry-header {
	height: 120px;
	background: linear-gradient(to bottom,#fff 0,#eee 100%);
}
.entry-header p.entry-meta {
	font-weight: 700;
	letter-spacing: 2px;
	margin-bottom: 16px;
	text-transform: uppercase;
}

.entry-header::after {
	content: "";
	display: block;
	margin: 0 auto 10px;
	padding-bottom: 10px;
}

.image-section .entry-header::after {
	border-color: #fff;
}

.entry-footer::before {
	content: "";
	display: block;
	margin: 10px auto 0;
	padding-top: 10px;
}

.sidebar .entry-header::after {
	display: none;
}

.entry-categories::before,
.entry-tags::before {
	display: inline-block;
	font: 20px/1 dashicons;
	/* stylelint-disable-line font-family-no-missing-generic-family-keyword */
	margin-right: 5px;
	margin-top: 2px;
	vertical-align: top;
	-webkit-font-smoothing: antialiased;
}

.entry-comments-link::before {
	content: "\2014";
	margin: 0 6px 0 2px;
}

/* After Entry
--------------------------------------------- */
.after-entry {
	border-top: 1px solid #000;
	padding: 40px 0;
}

.after-entry .widget {
	margin-bottom: 40px;
}

.after-entry p:last-child,
.after-entry .widget:last-child {
	margin: 0;
}

.after-entry li {
	list-style-type: none;
}

/* Pagination
--------------------------------------------- */
.pagination {
	clear: both;
	margin: 40px 0;
}

.adjacent-entry-pagination {
	margin-bottom: 0;
}

.archive-pagination li {
	display: inline;
}

.archive-pagination li a {
	background-color: #000;
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.1);
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 8px 12px;
	text-transform: uppercase;
}

.archive-pagination li a:focus,
.archive-pagination li a:hover,
.archive-pagination .active a {
	background-color: #0680a2;
	color: #fff;
}

/* Comments
--------------------------------------------- */
.comment-respond,
.entry-comments,
.entry-pings {
	margin-bottom: 100px;
}

p.comment-meta,
.entry-comments .comment,
.entry-comments .comment-reply {
	margin-bottom: 40px;
}

.comment-header {
	font-size: 20px;
}

.entry-comments .comment {
	border-bottom: 1px solid #000;
}

.comment-content,
.entry-comments .comment {
	clear: both;
}

p.form-submit,
.entry-comments .children .comment,
.entry-comments .comment-author {
	margin: 0;
}

.entry-comments .children .comment {
	border: none;
}

.comment-respond label {
	display: block;
	font-weight: 800;
}

.comment-respond input[type="email"],
.comment-respond input[type="text"],
.comment-respond input[type="url"] {
	width: 100%;
}

.comment-list li,
.ping-list li {
	list-style-type: none;
}

.entry-comments ul.children {
	margin-left: 40px;
}

.ping-list .reply {
	display: none;
}

/* Sidebar
---------------------------------------------------------------------------- */
.sidebar {
	margin: 0px 0 20px 0;
	float: left;
	max-width: 225px;
}

.sidebar-content .sidebar {
	float: left;
}

.sidebar-primary .current-menu-item {
    font-weight: 700;
}

.sidebar-primary .current-menu-item a {
    text-decoration: none;
}

.sidebar p:last-child {
	margin-bottom: 0;
}

.sidebar li {
	list-style-type: none;
	margin-bottom: 6px;
	word-wrap: break-word;
}

.sidebar ul > li:last-child {
	margin-bottom: 0;
}

.sidebar .widget {
	margin-bottom: 40px;
}

/* Footer Widgets
---------------------------------------------------------------------------- */
.footer-widgets {
	background-color: #3a3c3f;
	clear: both;
	text-align: center;
	position: relative;
	z-index: 9;
}

.footer-widgets .wrap {
	padding-bottom: 0px;
	padding-top: 40px;
}

.footer-widgets,
.footer-widgets .wrap a,
.footer-widgets .wrap a.button {
	color: #fff;
}

.footer-widgets a:focus,
.footer-widgets a:hover {
	color: #000;
}

.footer-widgets li {
	margin-bottom: 10px;
	padding-bottom: 10px;
}

.footer-widgets .widget {
	margin-bottom: 0px;
}

.footer-widgets p:last-child {
	margin-bottom: 0;
}

/* Site Footer
---------------------------------------------------------------------------- */
.site-footer {
	background-color: #ddd;
	padding: 0px 0px 30px 0px;
	text-align: left;
}

.site-footer,
.site-footer a,
.site-footer p {
	color: #393a3f;
	font-size: 12px;
}

.site-footer a:focus,
.site-footer a:hover {
	color: #0680a2;
}

.site-footer p {
	font-size: 12px;
	letter-spacing: 1px;
	margin-bottom: 10px;
	text-transform: none;
}

.sign-up-footer p {
    font-size: 14px;
    letter-spacing: 1px;
    margin-bottom: 0;
    text-transform: none;
	font-style:normal;
}

.bottom-footer {
	padding-top: 30px;
	max-width: 1200px;
	margin: 0 auto 0 auto;
	display:flex;
}
.footer-widget-left,
.footer-widget-center-left,
.footer-widget-center-right,
.footer-widget-right,
.footer-widget-far-right {
	flex: 1;
}

.mc-footer {
	margin: 0 auto;
	max-width: 1200px;
}

.footer-widget-far-right {
	width: 100%;
	padding:40px 0px 40px 0px;
	margin: 0 auto;
}

.footer-widget-left,
.footer-widget-center-left,
.footer-widget-center-right,
.footer-widget-right {
	border-left: 1px solid #bbb;
	padding: 10px 0 10px 40px;
	margin: 0 0 15px 15px;
}

.footer-notice {
	font-size: 12px;
	font-weight: 600;
	float:left;
	text-align: left;
}

.social-wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;    /* Centers vertically */
}

.social-links {
	margin: 40px 40px 0 0;
}

.after-footer-area .social-links {
  	margin: 0px 0px 0 0;
}

.footer-email-icon {
    background: url(images/envelope-2x.png);
    background-size: contain;
    content: '';
    display: block;
    height: 26px;
    margin: 0 auto 15px;
    width: 48px;
}

.after-footer-area {
	color: #393a3f;
    background: #ddd;
	padding: 0px 10px 0px 10px;
}

.after-footer-area .wrap {
    border-top: 1px solid #bbb;
	max-width:1200px;
	margin:0 auto 0 auto;
	padding: 20px 10px 10px 10px;
}

.page-template-template-broadcast-player-page .site-container {
	border: 1px solid #ddd;
	border-top: 5px solid #37518c;
	background-color: #fff;
}

.broadcast-player-bg {
	background: #fff;
	padding: 250px 25px 30px 30px;
	margin: -250px 0 0 0;
	max-width: 777px;
	display: flow-root;
}

@media only screen and (max-width: 600px) {
	.broadcast-player-bg {
		margin: 0;
		padding: 30px 25px;
	}
}

/* Slideshow / Slider
---------------------------------------------------------------------------- */
.slideshow-container {
	max-width: 100%;
	position: relative;
	margin: auto;
	padding: 0;
}

.broadcast-slideshow-container {
	max-width: 70%;
	position: relative;
	margin: auto;
	padding-top:25px;
	float:right;
}
.broadcast-player-feature{
	max-width: 30%;
	position: relative;
	margin: auto;
	padding:25px 25px 0 0;
	float:left;
}
/* Hide the images by default */
.mySlides {
	display: none;
}

/* Next & previous buttons */
.prev, .next {
	cursor: pointer;
	position: absolute;
	top: 50%;
	width: auto;
	margin-top: -22px;
	padding: 16px;
	color: white;
	font-weight: bold;
	font-size: 18px;
	transition: 0.6s ease;
	border-radius: 0 3px 3px 0;
	user-select: none;
	border: none;
	background: transparent;
	line-height: 1;
}

/* Position the "next button" to the right */
.next {
	right: 0;
	border-radius: 3px 0 0 3px;
	margin: -20px 0 0 0;
}

/* On hover, add a black background color with a little bit of transparency */
.prev:hover, .next:hover {
	background-color: rgba(0, 0, 0, 0.8);
}

/* Caption text */
.slidertext-left {
	color: #f2f2f2;
	font-size: 5em;
	padding: 0px 10%;
	position: absolute;
	bottom: 10px;
	width: 100%;
	text-align: left;
	background: rgba(0,0,0,0.5);
}

.slidertext-right {
	color: #f2f2f2;
	font-size: 5em;
	padding: 0px 10%;
	position: absolute;
	bottom: 10px;
	width: 100%;
	text-align: right;
	background: rgba(0,0,0,0.5);
}

.slidertext-center {
	color: #f2f2f2;
	font-size: 5em;
	padding: 0px 0%;
	position: absolute;
	bottom: 10px;
	width: 100%;
	text-align: center;
	background: rgba(0,0,0,0.5);
}
/* Number text (1/3 etc) */
.numbertext {
	color: #f2f2f2;
	font-size: 12px;
	padding: 25px 12px 10px 12px;
	position: absolute;
	top: 0;
}

/* The dots/bullets/indicators */
.dot {
	cursor: pointer;
	height: 15px;
	width: 15px;
	margin: 0 2px;
	background-color: #bbb;
	border-radius: 50%;
	display: inline-block;
	transition: background-color 0.6s ease;
}
.active, .dot:hover {
	background-color: #717171;
}

/* Fading animation */
.fade {
	animation-name: fade;
	animation-duration: 1.5s;
}

@keyframes fade {
	from {
		opacity: 0.4;
	}
	to {
		opacity: 1;
	}
}

/* Page Template Layout — flex layout, h1 styling, entry-content/sidebar splits,
   and wp-block-heading overrides shared across all standard page templates
---------------------------------------------------------------------------- */
.page-template-church-leaders-home-template-page .page-top,
.page-template-beyond-the-broadcast-template-page .page-top,
.page-template-broadcast-schedule-template-page .page-top,
.tax-topic .page-top,
.tax-church-leaders-topic .page-top,
.search-results .page-top,
.search-no-results .page-top,
.page-template-full-content-sidebar-template-page .page-top,
.author .page-top,
.single-churchleaderarticle .page-top,
.single-article .page-top,
.single-video .page-top,
.single-message .page-top,
.single-daily-devotional .page-top,
.single-insight-product .page-top,
.page-template-daily-devotional-home-template-page .page-top, 
.message-template-series-single-message-template-page .page-top, 
.series-template-series-full-messages-template-page .page-top,
.video-series-template-series-video-series-template-page .page-top,
.page-template-series-template-page .page-top,
.page-template-general-contact-us-template-page .page-top,
.page-template-share-your-story-template-page .page-top,
.page-template-biblical-counseling-template-page .page-top,
.page-template-copyrights-permission-requests-template-page .page-top,
.page-template-station-finder-template-page .page-top,
.page-template-sts-studies-template-page .page-top,
.page-template-student-summit-template-page .page-top,
.page-template-books-of-bible-template-page .page-top,
.page-template-broadcast-archive-template-page .page-top,
.page-template-sidebar-content-sidebar-template-page .page-top {
    display: flex; /* Enables flexbox layout */
    align-items: stretch; /* Ensures children stretch to fill the container's height */
    gap: 0px 50px; /* Optional: Adds space between child divs */
}

.page-template-church-leaders-home-template-page .page-main-bg h1,
.page-template-beyond-the-broadcast-template-page .page-main-bg h1,
.page-template-broadcast-schedule-template-page .page-main-bg h1,
.search-no-results .page-main-bg h1,
.search-results .page-main-bg h1,
.page-template .page-main-bg h1,
.page-template .page-full-main-bg h1,
.tax-church-leaders-topic .page-main-bg h1,
.tax-topic .page-main-bg h1,
.author .page-main-bg h1,
.single-churchleaderarticle .page-main-bg h1,
.single-article .page-main-bg h1,
.single-video .page-main-bg h1,
.single-message .page-main-bg h1,
.single-insight-product .page-main-bg h1,
.message-template-series-single-message-template-page .page-main-bg h1, 
.series-template-series-full-messages-template-page .page-full-main-bg h1, 
.page-template-student-summit-template-page .page-full-main-bg h1,
.page-template-sts-studies-template-page .page-main-bg h1,
.page-template-full-width-template-page .page-full-main-bg h1,
.page-template-international-home-template-page .page-main-bg h1, 
.international-pastor-template .page-main-bg h1, 
.page-template-sidebar-content-template-page .page-main-bg h1,
.video-series-template-series-video-series-template-page .page-full-main-bg h1,
.page-template-series-template-page .page-main-bg h1,
.page-template-general-contact-us-template-page .page-main-bg h1,
.page-template-share-your-story-template-page .page-main-bg h1,
.page-template-biblical-counseling-template-page .page-main-bg h1,
.page-template-copyrights-permission-requests-template-page .page-main-bg h1,
.page-template-station-finder-template-page .page-main-bg h1,
.international-pastor-template-sidebar-content-template-page .page-main-bg h1,
.page-template-daily-devotional-home-template-page .page-main-bg h1,
.page-template-full-content-sidebar-template-page .page-main-bg h1,
.page-template-books-of-bible-template-page .page-main-bg h1,
.page-template-broadcast-archive-template-page .page-main-bg h1,
.page-template-sidebar-content-sidebar-template-page .page-main-bg h1 {
	font-family: Georgia, sans;
	font-weight: 400;
	font-size: 30px;
	line-height: 1.5em;
	float:left;
	max-width: 550px;
	margin: 10px 40px 40px 40px;
}

.single-daily-devotional .page-main-bg h2 {
	font-family: Georgia, sans;
	font-weight: 400;
	font-size: 30px;
	line-height: 1.5em;
	text-align:center;
}

.single-daily-devotional .page-main-bg h1{
	font-family: Georgia, sans;
	font-weight: 400;
	font-size: 30px;
	line-height: 1.5em;
	float:left;
	margin: 15px 40px 40px 40px;
}

.single-daily-devotional .sub-h1 {
	font-size:20px;
	font-weight:400;
	color: #777;
}

.sidebar-secondary .widgettitle {
    text-align: center !important;
    border-bottom: 1px solid #ddd !important;
    font-size: 14px !important;
	text-transform: uppercase !important;
    font-family: inherit !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    color: inherit !important;
	padding: 0 0 20px 0 !important;
}

.search-results .page-top .entry-content,
.search-no-results .page-top .entry-content,
.video-series-template-series-video-series-template-page .page-top .entry-content,
.series-template-series-full-messages-template-page .page-top .entry-content,
.page-template-international-home-template-page .page-top .entry-content,
.international-pastor-template-sidebar-content-template-page .page-top .entry-content,
.international-pastor-template .page-top .entry-content,
.page-template-daily-devotional-home-template-page .page-top .entry-content,
.page-template-sidebar-content-template-page .page-top .entry-content {
    margin: 20px auto 15px;
	float: left;
	padding: 15px 0 15px 0;
	width: 100%;
}

.page-template-beyond-the-broadcast-template-page .page-top .entry-content,
.tax-church-leaders-topic .page-top .entry-content,
.tax-topic .page-top .entry-content,
.author .page-top .entry-content,
.single-churchleaderarticle .page-top .entry-content,
.single-article .page-top .entry-content,
.single-video .page-top .entry-content,
.single-message .page-top .entry-content,
.single-daily-devotional .page-top .entry-content,
.single-insight-product .page-top .entry-content,
.message-template-series-single-message-template-page .page-top .entry-content, 
.page-template-sts-studies-template-page .page-top .entry-content,
.page-template-student-summit-template-page .page-top .entry-content,
.page-template-full-content-sidebar-template-page .page-top .entry-content,
.video-series-template-series-video-series-template-page .page-top .entry-content,
.page-template-series-template-page .page-top .entry-content,
.page-template-station-finder-template-page .page-top .entry-content,
.page-template-books-of-bible-template-page .page-top .entry-content,
.page-template-broadcast-schedule-template-page .page-top .entry-content,
.page-template-general-contact-us-template-page .page-top .entry-content,
.page-template-share-your-story-template-page .page-top .entry-content,
.page-template-church-leaders-home-template-page .page-top .entry-content,
.page-template-biblical-counseling-template-page .page-top .entry-content,
.page-template-broadcast-archive-template-page .page-top .entry-content,
.page-template-copyrights-permission-requests-template-page .page-top .entry-content,
.page-template-sidebar-content-sidebar-template-page .page-top .entry-content {
	flex: 1 1 75%; /* flex-grow: 1, flex-shrink: 1, flex-basis: 80% */
	margin: 20px auto 15px;
	float: left;
	padding: 15px 0 15px 0;
}

.page-template-beyond-the-broadcast-template-page .sidebar-secondary,
.tax-church-leaders-topic .sidebar-secondary,
.tax-topic .page-top .sidebar-secondary,
.page-template-full-width-template-page .page-top .sidebar-secondary,
.page-template-student-summit-template-page .page-top .sidebar-secondary,
.author .page-top .sidebar-secondary,
.single-churchleaderarticle .page-top .sidebar-secondary,
.single-article .page-top .sidebar-secondary,
.single-video .page-top .sidebar-secondary,
.single-message .page-top .sidebar-secondary,
.single-daily-devotional .page-top .sidebar-secondary,
.single-insight-product .page-top .sidebar-secondary,
.message-template-series-single-message-template-page .page-top .sidebar-secondary,
.series-template-series-full-messages-template-page .page-top .sidebar-secondary, 
.page-template-sts-studies-template-page .page-top .sidebar-secondary,
.page-template-daily-devotional-home-template-page .page-top .sidebar-secondary,
.page-template-full-content-sidebar-template-page .page-top .sidebar-secondary,
.video-series-template-series-video-series-template-page .sidebar-secondary,
.page-template-series-template-page .page-top .sidebar-secondary,
.page-template-station-finder-template-page .page-top .sidebar-secondary,
.page-template-books-of-bible-template-page .page-top .sidebar-secondary,
.page-template-broadcast-schedule-template-page .page-top .sidebar-secondary,
.page-template-general-contact-us-template-page .page-top .sidebar-secondary,
.page-template-church-leaders-home-template-page .page-top .sidebar-secondary,
.page-template-share-your-story-template-page .page-top .sidebar-secondary,
.page-template-biblical-counseling-template-page .page-top .sidebar-secondary,
.page-template-copyrights-permission-requests-template-page .sidebar-secondary,
.page-template-broadcast-archive-template-page .sidebar-secondary,
.page-template-sidebar-content-sidebar-template-page .page-top .sidebar-secondary {
	flex: 1 1 25%; /* flex-grow: 1, flex-shrink: 1, flex-basis: 20% */
	margin: 20px auto 15px;
	float: left;
	padding: 15px 0 15px 0;
}

.page-template-beyond-the-broadcast-template-page .wp-block-heading,
.search-results .wp-block-heading,
.search-no-results .wp-block-heading,
.author .wp-block-heading,
.single-churchleaderarticle .wp-block-heading,
.single-article .wp-block-heading,
.single-video .wp-block-heading,
.single-message .wp-block-heading,
.single-daily-devotional .wp-block-heading,
.single-insight-product .wp-block-heading,
.message-template-series-single-message-template-page .wp-block-heading,
.video-series-template-series-video-series-template-page .wp-block-heading,
.series-template-series-full-messages-template-page .wp-block-heading,
.page-template-sts-studies-template-page .wp-block-heading,
.page-template-student-summit-template-page .wp-block-heading,
.page-template-full-width-template-page .wp-block-heading,
.international-pastor-template-sidebar-content-template-page .wp-block-heading,
.page-template-sidebar-content-template-page .wp-block-heading,
.page-template-daily-devotional-home-template-page .wp-block-heading,
.page-template-full-content-sidebar-template-page .wp-block-heading,
.page-template-series-template-page .wp-block-heading,
.page-template-station-finder-template-page .wp-block-heading,
.page-template-books-of-bible-template-page .wp-block-heading,
.page-template-broadcast-schedule-template-page .wp-block-heading,
.page-template-general-contact-us-template-page .wp-block-heading,
.page-template-share-your-story-template-page .wp-block-heading,
.page-template-church-leaders-home-template-page .wp-block-heading,
.page-template-biblical-counseling-template-page .wp-block-heading,
.page-template-copyrights-permission-requests-template-page .wp-block-heading,
.page-template-broadcast-archive-template-page .wp-block-heading,
.page-template-sidebar-content-sidebar-template-page .wp-block-heading {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.25;
    color: inherit;
    margin-bottom: 20px;
}

.page-template-international-home-template-page .wp-block-heading {
    font-size: 40px;
    font-family: Georgia, sans;
	padding: 30px 0 20px 0;
    font-weight: 500;
    line-height: 1.25;
    color: inherit;
    margin-bottom: 0px;
}

.message-key-facts > h3 {
    margin-top: 30px;
}

.page-template-international-home-template-page .intl-h3 {
    font-size: 20px;
    font-family: Georgia, sans;
	padding: 30px 0 20px 0;
    font-weight: 500;
    line-height: 1.25;
    color: inherit;
    margin-bottom: 0px;	
}

.international-pastor-template-sidebar-content-template-page .wp-block-heading {
    font-size: 40px;
	padding-right: 100px;
}

.heading-line {
    color: #fff;
    font: 400 30px Georgia,serif;
    letter-spacing: -1px;
    margin: 0 0 25px;
    position: relative;
    text-align: center;
}

.heading-line span {
    display: inline-block;
    position: relative;
}

.heading-line span:after, .heading-line span:before {
    border-bottom: 1px solid #8c8d8e;
    content: '';
    height: 1px;
    position: absolute;
    top: 50%;
    width: 49.25%;
}

.heading-line span:before {
    margin-right: 20px;
    right: 100%;
}
.heading-line span:after {
    left: 100%;
    margin-left: 20px;
}

/* 1. Style the control buttons (optional) */
.font-controls {
    margin-bottom: 15px;
}
.btn-font-size {
    padding: 5px 10px;
    font-weight: bold;
    cursor: pointer;
    border: 1px solid #ccc;
    background: #f9f9f9;
}
.btn-font-size:hover {
    background: #eee;
}

/* Hide the mobile image by default on desktop/tablet views */
.mobile-slide-img {
    display: none;
}

/* Ensure the desktop image is visible by default */
.desktop-slide-img {
    display: block;
}

/* Hide the mobile image by default on desktop/tablet views */
.mobile-terry-boyle-intl-img {
    display: none;
}

/* Ensure the desktop image is visible by default */
.desktop-terry-boyle-intl-img {
    display: block;
}

body .site-container .wp-block-quote {
	margin: 40px !important;
}

body .site-container .wp-block-quote p {
    font-family: unset;
    font-size: unset !important;
    font-weight: unset !important;
    line-height: unset !important;
    margin-bottom: 30px !important;
}
/* Font Resizer
---------------------------------------------------------------------------- */

/* 1. ADD THE SMOOTH TRANSITION */
/* Targets all elements we plan to resize */
.resizable-content .entry-title,
.resizable-content p,
.resizable-content li,
.resizable-content blockquote,
.resizable-content .devo-date,
.resizable-content .devo-author,
.resizable-content .footnote {
    transition: font-size 0.2s ease-in-out;
}

/* 2. DEFINE EXPLICIT SIZES FOR EACH STATE */

/* --- FONT-SMALL (Base 14px) --- */
.resizable-content.font-small p                         { font-size: 14px !important; line-height: 1.6; }
.resizable-content.font-small .entry-title              { font-size: 25px !important; }
.resizable-content.font-small .devo-highlighted-scripture p { font-size: 15px !important; }
.resizable-content.font-small .devo-date,
.resizable-content.font-small .devo-author              { font-size: 13px !important; }
.resizable-content.font-small .footnote                 { font-size: 11px !important; }
.resizable-content.font-small li,
.resizable-content.font-small blockquote                { font-size: 14px !important; }

/* --- FONT-MEDIUM (Base 16px) --- */
.resizable-content.font-medium p                         { font-size: 16px !important; line-height: 1.6; }
.resizable-content.font-medium .entry-title              { font-size: 29px !important; }
.resizable-content.font-medium .devo-highlighted-scripture p { font-size: 18px !important; }
.resizable-content.font-medium .devo-date,
.resizable-content.font-medium .devo-author              { font-size: 14px !important; }
.resizable-content.font-medium .footnote                 { font-size: 13px !important; }
.resizable-content.font-medium li,
.resizable-content.font-medium blockquote                { font-size: 16px !important; }

/* --- FONT-LARGE (Base 19px) --- */
.resizable-content.font-large p                         { font-size: 19px !important; line-height: 1.6; }
.resizable-content.font-large .entry-title              { font-size: 34px !important; }
.resizable-content.font-large .devo-highlighted-scripture p { font-size: 21px !important; }
.resizable-content.font-large .devo-date,
.resizable-content.font-large .devo-author              { font-size: 17px !important; }
.resizable-content.font-large .footnote                 { font-size: 15px !important; }
.resizable-content.font-large li,
.resizable-content.font-large blockquote                { font-size: 19px !important; }

/* --- FONT-XLARGE (Base 22px) --- */
.resizable-content.font-xlarge p                         { font-size: 22px !important; line-height: 1.6; }
.resizable-content.font-xlarge .entry-title              { font-size: 40px !important; }
.resizable-content.font-xlarge .devo-highlighted-scripture p { font-size: 24px !important; }
.resizable-content.font-xlarge .devo-date,
.resizable-content.font-xlarge .devo-author              { font-size: 20px !important; }
.resizable-content.font-xlarge .footnote                 { font-size: 18px !important; }
.resizable-content.font-xlarge li,
.resizable-content.font-xlarge blockquote                { font-size: 22px !important; }

/* Media Queries
---------------------------------------------------------------------------- */
@media only screen and (max-width: 1280px) {
	.site-inner,
	.wrap {
		max-width: 1140px;
	}
}

@media only screen and (max-width: 1199px) {
	.site-inner,
	.wrap {
		max-width: 1060px;
	}
	.site-header .widget-area {
		width: 580px;
	}
	.content {
		width: 520px;
	}
	.full-width-content .content {
		padding: 0 110px;
	}
	.front-page-1,
	.front-page-3,
	.front-page-5,
	.front-page-7 {
		background-attachment: scroll;
	}
	.home-main-bg {
		width: 95%;
		background: #fff;
		box-shadow: 0 0 10px 0 rgba(0,0,0,.1);
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 20px;
		padding-left: 0;
		padding-right: 0;
		position: relative;
		top: 0;
		z-index: 20;
	}

	.home-devo-form .form-inline>.form-group {
		width: 20%;
	}

	.sidebar-primary {
		display: none;
	}
	/* Mobile: make main content area full-width, no floats */
	.page-main-bg {
		float: none !important;
		width: 100% !important;
	}
	.page-main-bg h1,
	.page-full-main-bg h1 {
		float: none !important;
		max-width: 100% !important;
		margin: 0 15px 15px !important;
		font-size: 20px !important;
		font-weight: 300 !important;
		font-family: Georgia, 'Times New Roman', serif !important;
		letter-spacing: -0.3px;
		line-height: 1.3 !important;
	}
	.page-main-bg .page-top .entry-content,
	.page-full-main-bg .page-top .entry-content {
		float: none !important;
		width: 100% !important;
		flex-basis: 100% !important;
	}

	.breadcrumb {
		padding: 15px;
	}

	/* Mobile: Store category hero → clean slim H1 */
	.ifl-category-hero {
		background: none !important;
		min-height: 0 !important;
		margin-bottom: 10px !important;
		box-shadow: none !important;
		border-radius: 0 !important;
		display: block !important;
		color: #333 !important;
		padding: 0 !important;
	}
	.ifl-category-hero img {
		display: none !important;
	}
	.ifl-category-hero > div {
		padding: 0 15px !important;
	}
	.ifl-category-hero .entry-title {
		font-family: Georgia, 'Times New Roman', serif !important;
		font-size: 20px !important;
		font-weight: 300 !important;
		letter-spacing: -0.3px !important;
		line-height: 1.3 !important;
		color: #333 !important;
		text-shadow: none !important;
		margin: 0 0 10px 0 !important;
		padding: 0 !important;
	}
	.ifl-category-hero .social-wrap {
		display: none !important;
	}
	.ifl-category-hero .taxonomy-description,
	.ifl-category-hero > div > div:not(:first-child):not(.social-wrap) {
		font-size: 0.95em !important;
		color: #555 !important;
		text-shadow: none !important;
	}

	.page-template-international-home-template-page .wp-block-cover {
		width: 100%;
		margin: 0 auto 0;
	}

}

@media only screen and (max-width: 1199px) {

	.mc-form-email {
		width: 100%;
		max-width: 300px;
	}

	.site-inner {
		width: 95%;
	}

	.breadcrumb {
		padding: 15px;
		margin-bottom: 0;
	}	

	.home-broadcast-devotional {
		flex-direction: column;
	}

	.home-devo-form .form-inline>.form-group {
		width: 20%;
	}

	.footer-widget-area .widget .entry {
		flex-direction: column;
	}

	.broadcast-listen-now, .devotional-read-now {
		margin: 0 0 0 0;
		padding: 0 15px 15px 40px;
		float: left;
		position: relative;
	}
	
	.todays-broadcast, .todays-devotional {
		width: 100%;
	}

	.broadcast-devotional-links {
		padding: 0 0 5px 80px;
		position: relative;
	}

	.home-featured-section {
		padding-top:2em;
		padding-right:1em;
		padding-bottom:2em;
		padding-left:1em;
		background-color:#fff;
		color:#1f1f1f;
	}

	.todays-broadcast-wrap, .todays-devotional-wrap {
		padding: 0 20px 0px 0px;
		float: none;
		width: 100%;
	}

	.slider-control {
		margin-top: 5px;
	}

	.secondary-nav .site-inner {
		margin-top: 0px;
	}
	.front-page .site-container .site-inner {
		margin-top: 0px;
		max-width: 100%;
	}
	.front-page .site-inner {
		max-width: none;
	}
	.site-header {
		position: static;
		background-color: #37518c !important;
	}
	.front-page .site-header > .wrap,
	.featured-section .site-header > .wrap,
	.site-header > .wrap {
		border: none !important;
	}
	/* Tablet: white text/icons on blue header */
	.site-title a,
	.site-title a:focus,
	.site-title a:hover {
		color: #fff !important;
	}
	.nav-secondary .genesis-nav-menu a {
		color: #fff !important;
	}
	.nav-secondary .genesis-nav-menu a:hover,
	.nav-secondary .genesis-nav-menu a:focus {
		color: #ccc !important;
	}
	.nav-secondary .genesis-nav-menu .ifl-secondary-icon {
		stroke: #fff;
	}
	.nav-secondary .genesis-nav-menu a:hover .ifl-secondary-icon,
	.nav-secondary .genesis-nav-menu a:focus .ifl-secondary-icon {
		stroke: #ccc;
	}
	.content,
	.site-header .widget-area,
	.title-area {
		width: 100%;
	}
	.genesis-nav-menu,
	.site-header .widget-area,
	.site-title {
		padding: 0 20px 0 20px;
		text-align: center;
	}
	/* Tablet: shrink logo so it doesn't collide with secondary nav */
	.header-image .site-title > a {
		background-position: left center !important;
		max-width: 280px;
		height: 75px;
		filter: brightness(0) invert(1);
	}
	.site-title {
		text-align: left !important;
	}
	/* Tablet: secondary nav — show all labels, smaller font */
	.nav-secondary {
		max-width: 100%;
		top: 15px;
	}
	.nav-secondary .genesis-nav-menu a {
		font-size: 11px;
		padding: 8px 6px;
		gap: 4px;
	}
	.nav-secondary .genesis-nav-menu .ifl-secondary-icon {
		width: 16px;
		height: 16px;
	}
	/* Tablet: remove border between search bar and nav */
	.nav-primary {
		border-top: none !important;
	}
	.nav-primary .genesis-nav-menu {
		float: none;
	}
	/* Tablet: tighter nav spacing, keep Georgia capitalize from desktop */
	.genesis-nav-menu a {
		padding: 15px 0px;
		font-size: 12px;
		font-family: Georgia, 'Times New Roman', serif;
		text-transform: capitalize;
		letter-spacing: 0.3px;
	}
	/* Tablet: keep Ways to Give button compact */
	.nav-donate-link > a,
	.nav-primary .genesis-nav-menu .nav-donate-link > a {
		padding: 8px 14px !important;
		font-size: 11px !important;
		white-space: nowrap;
	}
	/* Tablet: nav items still justify across full width */
	.nav-primary .genesis-nav-menu {
		display: flex;
		justify-content: space-between;
	}
	.nav-primary .genesis-nav-menu > .menu-item {
		flex: 1;
		text-align: center;
	}
	/* Tablet: hide the desktop search dropdown (after header) */
	#search-dropdown-container {
		display: none !important;
	}
	/* Tablet: show the in-header search bar between logo and nav */
	#tablet-search-bar {
		display: block !important;
		clear: both;
		background-color: #37518c;
		padding: 8px 20px;
		border-bottom: none;
	}
	#tablet-search-bar .wrap {
		max-width: 720px;
		margin: 0 auto;
	}
	#tablet-search-bar .search-form {
		display: flex !important;
		width: 100%;
		align-items: stretch;
	}
	#tablet-search-bar .search-form label,
	#tablet-search-bar .search-form .search-form-label {
		display: none !important;
	}
	#tablet-search-bar .search-form input[type="search"] {
		flex: 1;
		padding: 8px 14px !important;
		font-size: 14px;
		border: 1px solid #ccc !important;
		border-radius: 3px;
		background: #fff !important;
		color: #333 !important;
		-webkit-appearance: none;
		appearance: none;
		height: auto;
		min-height: 38px;
		box-sizing: border-box;
		width: 100%;
	}
	#tablet-search-bar .search-form input[type="search"]:focus {
		border-color: #37518c !important;
		box-shadow: 0 0 0 1px #37518c;
	}
	/* Hide the submit button — search triggers on Enter */
	#tablet-search-bar .search-form input[type="submit"] {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		padding: 0 !important;
		margin: -1px !important;
		overflow: hidden !important;
		clip: rect(0,0,0,0) !important;
		border: 0 !important;
	}
	/* Hide the search icon in nav since bar is always shown */
	.search-toggle-item {
		display: none !important;
	}
	.front-page .site-inner {
		margin-top: 0;
	}
	.site-inner {
		margin-top: 0;
	}
	.footer-notice {
		width: 100%;
		text-align: center;
	}

	.full-width-content .content {
		padding: 0;
	}
	.full-width-content img.pull-left {
		margin-left: 0;
	}
	.full-width-content img.pull-right {
		margin-right: 0;
	}
	.five-sixths,
	.four-sixths,
	.one-fourth,
	.one-half,
	.one-sixth,
	.one-third,
	.three-fourths,
	.three-sixths,
	.two-fourths,
	.two-sixths,
	.two-thirds {
		margin: 0;
		width: 100%;
	}
	.flexible-widgets.widget-full .widget,
	.flexible-widgets.widget-halves .widget,
	.flexible-widgets.widget-thirds .widget,
	.flexible-widgets.widget-fourths .widget {
		margin: 0 auto 20px;
		width: 100%;
	}
	.front-page-1 .widget:first-of-type h4,
	.front-page-2 .widget:first-of-type h4 {
		font-size: 60px;
	}
	.front-page-1 .image-section,
	.secondary-nav .front-page-1 .image-section {
		padding-top: 0;
	}
	.bottom-footer {
		padding-top: 30px;
		max-width: 1200px;
		margin: 0 auto 0 auto;
		display: flex;
		flex-wrap: wrap;
	}
	  /* Columns 1 and 2 in the first row */
	.footer-widget-left,
	.footer-widget-center-left {
		flex-basis: calc(50% - 20px); /* 50% width minus margins */
	}
	  /* Columns 3 and 4 in the second row */
	.footer-widget-center-right,
	.footer-widget-right {
		flex-basis: calc(50% - 20px); /* 50% width minus margins */
	}
	  /* Column 5 (form) takes full width in the third row */
	.footer-widget-far-right {
		flex-basis: 100%; /* Occupy full width */ 
		min-width: unset; /* Remove min-width to allow shrinking on small screens */
		padding: 50px;
	}

	.entry-header {
		height: 170px;
	}	

	.social-wrap {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		width: 90%;
		margin: 0 0 0 40px;
	}

	.social-links {
		margin: 10px 40px 0 0;
	}

	.page-template-beyond-the-broadcast-template-page .page-main-bg h1,
	.tax-church-leaders-topic .page-main-bg h1,
	.tax-topic .page-main-bg h1,
	.search-results .page-main-bg h1,
	.search-no-results .page-main-bg h1,
	.page-template .page-main-bg h1,
	.page-template .page-full-main-bg h1,
	.author .page-main-bg h1,
	.single-churchleaderarticle .page-main-bg h1,
	.single-article .page-main-bg h1,
	.single-video .page-main-bg h1,
	.single-message .page-main-bg h1,
	.single-insight-product .page-main-bg h1,
	.page-template-broadcast-schedule-template-page .page-main-bg h1, 
	.message-template-series-single-message-template-page .page-main-bg h1,
	.video-series-template-series-video-series-template-page .page-full-main-bg h1, 
	.series-template-series-full-messages-template-page .page-full-main-bg h1, 
	.page-template-student-summit-template-page .page-full-main-bg h1,
	.page-template-sts-studies-template-page .page-main-bg h1,
	.page-template-full-width-template-page .page-full-main-bg h1,
	.page-template-international-home-template-page .page-main-bg h1, 
	.international-pastor-template .page-main-bg h1, 
	.page-template-sidebar-content-template-page .page-main-bg h1,
	.international-pastor-template-sidebar-content-template-page .page-main-bg h1,
	.page-template-daily-devotional-home-template-page .page-main-bg h1,
	.page-template-full-content-sidebar-template-page .page-main-bg h1,
	.page-template-series-template-page	.page-main-bg h1,
	.page-template-station-finder-template-page	.page-main-bg h1,
	.page-template-books-of-bible-template-page .page-main-bg h1,
	.page-template-general-contact-us-template-page .page-main-bg h1,
	.page-template-share-your-story-template-page .page-main-bg h1,
	.page-template-church-leaders-home-template-page .page-main-bg h1,
	.page-template-biblical-counseling-template-page .page-main-bg h1,
	.page-template-copyrights-permission-requests-template-page .page-main-bg h1,
	.page-template-broadcast-archive-template-page .page-main-bg h1,
	.page-template-sidebar-content-sidebar-template-page .page-main-bg h1 {
		margin: 20px 40px 0px 40px;
	}	

	.single-daily-devotional .page-main-bg h1 {
		margin: 5px 40px 0px 40px;
	}

	
}

@media only screen and (max-width: 800px) {
    
    /* Fix for leadership page image wrapping */
    .alignleft,
    .alignright,
    img.alignleft,
    img.alignright,
    figure.alignleft,
    figure.alignright,
    .wp-block[data-align="left"],
    .wp-block[data-align="right"],
    .wp-block-image .alignleft,
    .wp-block-image .alignright {
        float: none !important;
        display: block !important;
        margin: 0 auto 20px auto !important;
        max-width: 100% !important; 
        text-align: center !important;
    }

    /* Hide the large desktop image */
    .desktop-slide-img {
        display: none;
    }

    /* Show the mobile image */
    .mobile-slide-img {
        /* Use 'block' or 'inline-block' based on your specific layout needs */
        display: block; 
    }

    /* Hide the large desktop image */
	.desktop-terry-boyle-intl-img {
		display: none;
	}

    /* Show the mobile image */
	.mobile-terry-boyle-intl-img {
		display: block;
	}

	.title-area {
		margin: 0px auto 0px auto;
	}

	.single-daily-devotional .sub-h1 {
		font-size:14px;
	}

	/* Mobile blockquote fix — prevent single-word-per-line on phones */
	blockquote,
	body .site-container .wp-block-quote {
		margin: 15px 0 !important;
		padding: 10px 15px !important;
	}

	.single-daily-devotional .site-container .wp-block-quote p {
		margin: 0 !important;
	}

	.devo-highlighted-scripture .wp-block-quote em {
		font-size: 18px !important;
		line-height: 1.4;
	}

	.page-top .entry-content,
	.page-top .sidebar-secondary {
		flex-basis: 100%; /* Make both divs take full width on small screens */
	  }

	.page-template-beyond-the-broadcast-template-page .page-top,
	.tax-church-leaders-topic .page-top,
	.tax-topic .page-top,
	.page-template-full-content-sidebar-template-page .page-top,
	.author .page-top,
	.single-article .page-top,
	.single-video .page-top,
	.single-message .page-top,
	.single-churchleaderarticle .page-top,
	.single-daily-devotional .page-top,
	.single-insight-product .page-top,
	.page-template-broadcast-schedule-template-page .page-top,
	.page-template-daily-devotional-home-template-page .page-top,
	.message-template-series-single-message-template-page .page-top,
	.video-series-template-series-video-series-template-page .page-top,
	.series-template-series-full-messages-template-page .page-top,
	.page-template-series-template-page .page-top,
	.page-template-station-finder-template-page .page-top,
	.page-template-sts-studies-template-page .page-top,
	.page-template-student-summit-template-page .page-top,
	.page-template-books-of-bible-template-page .page-top,
	.page-template-general-contact-us-template-page .page-top,
	.page-template-share-your-story-template-page .page-top,
	.page-template-church-leaders-home-template-page .page-top,
	.page-template-biblical-counseling-template-page .page-top,
	.page-template-copyrights-permission-requests-template-page .page-top,
	.page-template-broadcast-archive-template-page .page-top,
	.page-template-sidebar-content-sidebar-template-page .page-top {
		flex-direction: column; /* Stacks items vertically on smaller screens */
		align-items: center; /* Centers stacked items */
	}

	.video-series-template-series-video-series-template-page .page-top .entry-content,
	.series-template-series-full-messages-template-page .page-top .entry-content {
		margin: 0px;
		float: left;
		padding: 0px;
		width: 100%;
	}

	.video-series-template-series-video-series-template-page .page-top,
	.series-template-series-full-messages-template-page .page-top {
		padding:0px;
	}

	.entry-header {
        background: #212e60;
        color: #fff;
        text-align: center;
        display: block;
        overflow: auto;
        height: unset;
        padding: 0 0 25px 0;
	}

	.social-wrap:first-of-type {
		position: absolute;
		left: -9999px;
	}

	/* --- Mobile Page Header Cleanup (all pages) --- */
	/* Remove the blue/grey header box */
	.entry-header {
		background: none !important;
		padding: 0 15px;
		height: auto;
		text-align: left;
		overflow: visible;
	}
	.entry-header::after {
		display: none !important;
	}
	/* Hide social links on mobile */
	.entry-header .social-wrap {
		display: none;
	}
	/* H1: slim, narrow feel — slightly bigger than breadcrumbs */
	.entry-header .entry-title,
	.page-template .page-main-bg h1,
	.page-template .page-full-main-bg h1 {
		font-family: Georgia, 'Times New Roman', serif;
		font-size: 20px;
		font-weight: 300;
		letter-spacing: -0.3px;
		line-height: 1.3;
		color: #333;
		margin: 0px 0 15px;
		padding: 15px 0 0 0;
		max-width: 100%;
		float: none;
	}
	/* Breadcrumbs: hide the last item (current page) — redundant with H1 */
	.custom-breadcrumbs li:last-child {
		display: none;
	}
	/* Hide the separator before the hidden last item */
	.custom-breadcrumbs li:nth-last-child(2) .breadcrumb-separator {
		display: none;
	}
	/* Tighten breadcrumb spacing on mobile */
	.breadcrumb {
		font-size: 14px;
		margin-bottom: 0;
		padding-bottom: 8px;
		border-bottom: none;
	}

	.message-content {
		padding: 0 25px 0 25px;
	}
	
	.sidebar-secondary {
		width: 100%; /* Adjust width for stacked layout */
		min-width: unset; /* Remove min-width constraint when stacking */
	}

	.sidebar {
		max-width: unset;
	}
	
	.pastor-image {
		width: 150px;
	}

	.site-inner,
	.wrap {
		max-width: none;
		width: 100%;
		padding: 0;
	}
	.front-page .site-inner {
		padding: 0;
	}

	.home-devo-form .form-inline>.form-group {
		width: 100%;
	}

	.home-devo-form .envelope {
		display: none;
	}

	.home-devo-form .btn {
		margin: 10px;
	}
	
	.home-devo-form .form-inline {
		border: 3px solid #39393f;
		position: relative;
		flex-grow: 1;
	}
	
	.mc-form-container {
	flex-direction: column; /* Stacks columns vertically on smaller screens */
	align-items: center; /* Center items when stacked */
	}
	
	.mc-form-column-1 {
	flex: none; /* Prevents columns from growing/shrinking on small screens */
	width: 100%; /* Ensures columns take full width when stacked */
	}

	.mc-form-column-2 {
	flex: none; /* Prevents columns from growing/shrinking on small screens */
	width: 100%; /* Ensures columns take full width when stacked */
	}
	
	.mc-form-footer-section {
		margin: 0px auto 0 auto;
	}
	
	.series-container {
		flex-direction: column; /* Stack vertically on smaller screens */
		align-items: center; /* Center items when stacked */
	}

	.topic-list-topic-page {
		flex-direction: column; /* Stacks items vertically on smaller screens */
		align-items: center; /* Centers stacked items */
	}

	.series {
		width: 90%; /* Adjust width for better mobile display */
	}
	
	/* =================================================================
	   Mobile Navigation — Custom overlay (replaces Genesis responsive menu)
	   ================================================================= */

	/* Reset header back to white for mobile (tablet made it blue) */
	.site-header {
		background-color: #fff !important;
	}
	/* Mobile: use white mobile logo, filtered dark on white header */
	.header-image .site-title > a {
		background-image: url(images/ifl-logo-mobile.png) !important;
		filter: brightness(0) !important;
		max-width: 280px;
		height: 50px;
		background-position: center center !important;
	}
	/* Mobile nav open: show white logo on blue overlay */
	body.mobile-nav-open .header-image .site-title > a {
		filter: none !important;
	}
	/* Reset secondary nav text color back for mobile header */
	.site-title a,
	.site-title a:focus,
	.site-title a:hover {
		color: #333 !important;
	}
	/* Center the logo on mobile */
	.site-title {
		text-align: center !important;
	}
	.title-area {
		width: 100%;
	}

	/* Hide desktop nav on mobile */
	.nav-primary,
	.nav-secondary,
	#search-dropdown-container,
	#tablet-search-bar {
		display: none !important;
	}

	/* Hide any leftover Genesis menu-toggle buttons */
	.menu-toggle {
		display: none !important;
	}

	/* Show hamburger button */
	.ifl-hamburger {
		display: flex;
		align-items: center;
		justify-content: center;
		background: none;
		border: none;
		padding: 12px;
		cursor: pointer;
		position: absolute;
		right: 15px;
		top: 50%;
		transform: translateY(-50%);
		z-index: 1001;
	}
	.ifl-hamburger__lines,
	.ifl-hamburger__lines::before,
	.ifl-hamburger__lines::after {
		display: block;
		width: 26px;
		height: 3px;
		background-color: #37518c;
		border-radius: 2px;
		transition: transform 0.3s, opacity 0.3s;
	}
	.ifl-hamburger__lines {
		position: relative;
	}
	.ifl-hamburger__lines::before,
	.ifl-hamburger__lines::after {
		content: '';
		position: absolute;
		left: 0;
	}
	.ifl-hamburger__lines::before {
		top: -8px;
	}
	.ifl-hamburger__lines::after {
		top: 8px;
	}
	/* Keep hamburger clean on hover/active — no dark bg, border, or color change */
	.ifl-hamburger:hover,
	.ifl-hamburger:focus,
	.ifl-hamburger:active {
		background: none !important;
		outline: none !important;
		border: none !important;
		box-shadow: none !important;
	}
	.ifl-hamburger:hover .ifl-hamburger__lines,
	.ifl-hamburger:hover .ifl-hamburger__lines::before,
	.ifl-hamburger:hover .ifl-hamburger__lines::after,
	.ifl-hamburger:focus .ifl-hamburger__lines,
	.ifl-hamburger:focus .ifl-hamburger__lines::before,
	.ifl-hamburger:focus .ifl-hamburger__lines::after,
	.ifl-hamburger:active .ifl-hamburger__lines,
	.ifl-hamburger:active .ifl-hamburger__lines::before,
	.ifl-hamburger:active .ifl-hamburger__lines::after {
		background-color: #37518c !important;
	}

	/* Title area: relative for hamburger positioning */
	.title-area {
		position: relative;
	}

	/* Full-screen mobile overlay — slides down from top */
	.ifl-mobile-nav {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: #37518c;
		z-index: 9999;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		display: flex;
		flex-direction: column;
		padding: 20px 24px;
		color: #fff;
		transform: translateY(-100%);
		transition: transform 0.35s ease-in-out;
		visibility: hidden;
	}
	.ifl-mobile-nav.is-open {
		transform: translateY(0);
		visibility: visible;
	}
	/* Admin bar offset — push overlay below WP admin bar when logged in */
	.admin-bar .ifl-mobile-nav {
		top: 46px;
	}
	@media screen and (min-width: 783px) {
		.admin-bar .ifl-mobile-nav {
			top: 32px;
		}
	}
	/* Scroll lock when mobile nav is open */
	body.mobile-nav-open {
		overflow: hidden;
	}

	/* --- Mobile overlay: header (logo + close) --- */
	.ifl-mobile-nav__header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 20px;
		flex-shrink: 0;
	}
	.ifl-mobile-nav__logo img {
		height: 50px;
		width: auto;
	}
	.ifl-mobile-nav__close {
		background: none;
		border: none;
		color: #fff;
		cursor: pointer;
		padding: 8px;
		line-height: 1;
	}
	.ifl-mobile-nav__close:hover,
	.ifl-mobile-nav__close:focus,
	.ifl-mobile-nav__close:active {
		background: none !important;
		color: #ccc !important;
		outline: none !important;
		border: none !important;
		box-shadow: none !important;
	}
	.ifl-mobile-nav__close svg {
		display: block;
	}

	/* --- Mobile overlay: search --- */
	.ifl-mobile-nav__search {
		margin-bottom: 20px;
		flex-shrink: 0;
	}
	.ifl-mobile-nav__search .search-form {
		display: flex;
		width: 100%;
	}
	.ifl-mobile-nav__search .search-form-input {
		flex: 1;
		padding: 12px 16px;
		border: none;
		border-radius: 4px;
		font-size: 16px;
		background: #fff;
		color: #333;
	}
	.ifl-mobile-nav__search .search-form-submit {
		display: none;
	}

	/* --- Mobile overlay: navigation list --- */
	.ifl-mobile-nav__menu {
		flex: 1;
	}
	.ifl-mobile-nav__list {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.ifl-mobile-nav__list > .menu-item {
		position: relative;
	}
	.ifl-mobile-nav__list > .menu-item > a {
		color: #fff;
		display: block;
		padding: 14px 40px 14px 0;
		font-size: 17px;
		font-weight: 600;
		text-transform: capitalize;
		text-decoration: none;
		border-bottom: 1px solid rgba(255,255,255,0.15);
		letter-spacing: 0.5px;
		font-family: Georgia, 'Times New Roman', serif;
	}
	.ifl-mobile-nav__list > .menu-item > a:hover,
	.ifl-mobile-nav__list > .menu-item > a:focus {
		opacity: 0.8;
	}
	/* Ways to Give — red background bar with white text */
	.ifl-mobile-nav__list > .nav-donate-link {
		background-color: #882d2b !important;
		margin-left: -24px;
		margin-right: -24px;
		padding-left: 24px;
		padding-right: 24px;
	}
	.ifl-mobile-nav__list > .nav-donate-link > a {
		background: none !important;
		border-radius: 0 !important;
		border: none !important;
		color: #fff !important;
		padding: 14px 40px 14px 0 !important;
		font-size: 17px !important;
		font-weight: 600 !important;
		text-align: left !important;
		display: block !important;
		border-bottom: none !important;
	}
	/* Ways to Give submenu — also red background, white text */
	.ifl-mobile-nav__list > .nav-donate-link .sub-menu a {
		color: #fff !important;
		border-bottom-color: rgba(255,255,255,0.2) !important;
	}
	.ifl-mobile-nav__list > .nav-donate-link .sub-menu a:hover,
	.ifl-mobile-nav__list > .nav-donate-link .sub-menu a:focus,
	.ifl-mobile-nav__list > .nav-donate-link .sub-menu .current-menu-item > a {
		background-color: #e8edf5 !important;
		color: #37518c !important;
	}
	/* Override the grey submenu-open background for Ways to Give — keep red */
	.ifl-mobile-nav__list > .nav-donate-link.submenu-open {
		background-color: #882d2b !important;
	}
	.ifl-mobile-nav__list > .nav-donate-link.submenu-open > a {
		color: #fff !important;
		border-bottom-color: rgba(255,255,255,0.2) !important;
	}
	/* Align Ways to Give chevron with the others (offset for negative margins) */
	.ifl-mobile-nav__list > .nav-donate-link .ifl-mobile-nav__chevron {
		right: 24px;
	}
	/* When submenu is open, let it shift to the edge like the others do */
	.ifl-mobile-nav__list > .nav-donate-link.submenu-open .ifl-mobile-nav__chevron {
		right: 0;
	}
	/* Hide search icon from mobile menu list */
	.ifl-mobile-nav__list > .search-toggle-item {
		display: none;
	}

	/* Hide the inline ▼ arrow from menu item text in mobile overlay */
	.ifl-mobile-nav__list .menu-item-has-children > a::after {
		display: none !important;
	}

	/* Chevron toggle button (injected by JS) — visible tap target */
	.ifl-mobile-nav__chevron {
		position: absolute;
		right: 0;
		top: 8px;
		background: rgba(255,255,255,0.1);
		border: 1px solid rgba(255,255,255,0.25);
		border-radius: 4px;
		color: #fff;
		padding: 6px 10px;
		cursor: pointer;
		transition: transform 0.25s ease, background 0.2s;
	}
	.ifl-mobile-nav__chevron:hover,
	.ifl-mobile-nav__chevron:focus {
		background: rgba(255,255,255,0.2);
		outline: none;
		color: #fff;
	}
	.ifl-mobile-nav__chevron.is-rotated {
		transform: rotate(180deg);
	}
	/* Keep chevron aligned when submenu expands (compensate for negative margin) */
	.ifl-mobile-nav__list > .menu-item-has-children.submenu-open > .ifl-mobile-nav__chevron {
		right: 24px;
	}

	/* Parent item + submenu gets grey background when open */
	.ifl-mobile-nav__list > .menu-item-has-children.submenu-open {
		background-color: #d0d0d0;
		margin-left: -24px;
		margin-right: -24px;
		padding-left: 24px;
		padding-right: 24px;
	}
	.ifl-mobile-nav__list > .menu-item-has-children.submenu-open > a {
		color: #37518c;
		border-bottom-color: rgba(55,81,140,0.2);
	}

	/* Sub-menus in overlay */
	.ifl-mobile-nav__list .sub-menu {
		display: none;
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.ifl-mobile-nav__list .sub-menu.is-open {
		display: block;
	}
	.ifl-mobile-nav__list .sub-menu a {
		color: #37518c;
		display: block;
		padding: 10px 20px;
		font-size: 15px;
		font-weight: 400;
		text-transform: none;
		text-decoration: none;
		font-family: Georgia, 'Times New Roman', serif;
		border-bottom: 1px solid rgba(55,81,140,0.15);
	}
	.ifl-mobile-nav__list .sub-menu li:last-child a {
		border-bottom: none;
	}
	.ifl-mobile-nav__list .sub-menu a:hover,
	.ifl-mobile-nav__list .sub-menu a:focus,
	.ifl-mobile-nav__list .sub-menu .current-menu-item > a {
		color: #1e3a6e;
		background-color: #fff;
	}

	/* --- Mobile overlay: separator + buttons --- */
	.ifl-mobile-nav__separator {
		display: none;
	}
	.ifl-mobile-nav__give-btn {
		display: none;
	}

	/* --- Mobile overlay: utility links --- */
	.ifl-mobile-nav__utility {
		display: flex;
		justify-content: center;
		gap: 28px;
		margin: 16px 0;
		flex-shrink: 0;
	}
	.ifl-mobile-nav__utility-link {
		color: #fff;
		text-decoration: none;
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 6px;
		font-size: 12px;
		font-weight: 500;
		text-transform: uppercase;
		letter-spacing: 0.3px;
	}
	.ifl-mobile-nav__utility-link svg {
		opacity: 0.9;
	}
	.ifl-mobile-nav__utility-link:hover,
	.ifl-mobile-nav__utility-link:focus {
		color: #fff;
		opacity: 0.8;
	}

	/* --- Mobile overlay: Give Now button --- */
	.ifl-mobile-nav__give-outline {
		display: block;
		text-align: center;
		background-color: #fff;
		color: #37518c;
		border: 2px solid #fff;
		padding: 12px 30px;
		border-radius: 8px;
		font-size: 16px;
		font-weight: 700;
		text-transform: uppercase;
		text-decoration: none;
		letter-spacing: 0.5px;
		flex-shrink: 0;
		margin-top: auto;
		transition: background-color 0.2s, color 0.2s;
	}
	.ifl-mobile-nav__give-outline:hover {
		background-color: #e8edf5;
		color: #37518c;
	}
	.footer-widgets .wrap {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.front-page-2,
	.front-page-3,
	.front-page-4,
	.front-page-5,
	.front-page-6,
	.front-page-7 {
		border-top: 0;
		margin-top: 0;
	}
	.image-section .flexible-widgets {
		padding-bottom: 80px;
	}
	.solid-section .flexible-widgets {
		padding-bottom: 40px;
		padding-top: 60px;
	}
	.bottom-image {
		margin-top: 60px;
		margin-bottom: -80px;
	}

	.home-devo-form .form-inline>.form-group input {
		width: 85%;
		margin: 10px;
	}

	.home-devo-form h5 {
		margin: 0 40px 0 0px;
		text-align: center;
	}

	/* Slideshow container */
	.slideshow-container {
		padding: 0 0px 0 0px;
	}
	
	.wp-block-cover, .wp-block-cover-image {
		min-height: 100px !important;
	}

	.heading-line span:after, .heading-line span:before {
		display:none;
	}

}

/* Employment Page Accordion
---------------------------------------------------------------------------- */
#candidate-resources .gb-accordion-item,
#candidate-resources .wp-block-genesis-blocks-gb-accordion-item,
#candidate-resources .wp-block-details,
#candidate-resources details,
#candidate-resources .gb-accordion-item-wrap {
	margin-bottom: 20px !important;
	padding-bottom: 20px;
}

/* Fallback: if the ID is on a heading preceding the accordion */
h3#candidate-resources + .gb-block-accordion .gb-accordion-item,
h3#candidate-resources + .wp-block-genesis-blocks-gb-accordion .gb-accordion-item,
#candidate-resources + .gb-block-accordion .gb-accordion-item,
#candidate-resources + * .gb-accordion-item {
     margin-bottom: 20px !important;
}

/* --- Clean Method: Custom Class --- */
.employment-accordion-list .gb-accordion-item,
.employment-accordion-list .gb-accordion__item,
.employment-accordion-list details {
    margin-bottom: 20px !important;
}

/* --- Accordion Sub-header Style --- */
.accordion-sub-header {
    display: block;
    font-size: 16px !important;
    color: #666;
    margin-top: -10px; /* Pull it closer to the title if needed */
    margin-bottom: 15px !important;
    font-weight: 500;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.wp-block-accordion-heading__toggle,
.gb-accordion-item-title,
.gb-accordion-item-title button {
	color: #872c26 !important;
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

.wp-block-accordion-heading__toggle:hover,
.wp-block-accordion-heading__toggle:focus,
.gb-accordion-item-title:hover,
.gb-accordion-item-title:focus,
.gb-accordion-item-title button:hover,
.gb-accordion-item-title button:focus {
	color: #872c26 !important;
	background-color: transparent !important;
	border: none !important;
	box-shadow: none !important;
	text-decoration: none;
}

@media only screen and (max-width: 700px) {

	.broadcast-slideshow-container,
	.broadcast-player-feature{
		max-width: none;
		width: 100%;
	}
	
}

@media only screen and (max-width: 480px) {

	.front-page-1 .widget:first-of-type h4,
	.front-page-2 .widget:first-of-type h4 {
		font-size: 40px;
	}

}

/* reCAPTCHA badge — keep above all page content */
.grecaptcha-badge {
	z-index: 9999 !important;
}

/* ==========================================================================
   ACCESSIBILITY TOOLBAR — CSS Custom Properties & Theme Modes
   ========================================================================== */

:root {
	--ifl-bg-body: #eee;
	--ifl-bg-primary: #fff;
	--ifl-bg-secondary: #f5f5f5;
	--ifl-bg-footer: #ddd;
	--ifl-text-primary: #000;
	--ifl-text-secondary: #393a3f;
	--ifl-text-heading: #333;
	--ifl-link-color: #37518c;
	--ifl-link-hover: #1e3a6e;
	--ifl-brand-blue: #37518c;
	--ifl-brand-dark-blue: #1e3a6e;
	--ifl-brand-red: #882d2b;
	--ifl-header-bg: #fff;
	--ifl-nav-bg: #37518c;
	--ifl-card-bg: #fff;
	--ifl-border-color: #ddd;
	--ifl-widget-bg: #fff;
	--ifl-input-bg: #fff;
	--ifl-input-border: #ccc;
	--ifl-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

/* --- Site-Wide Font Scaling (zoom approach for px-heavy stylesheet) --- */
html.ifl-font-small  { zoom: 0.9; }
html.ifl-font-large  { zoom: 1.15; }
html.ifl-font-xlarge { zoom: 1.3; }

/* ==========================================================================
   DARK MODE
   ========================================================================== */
html.ifl-dark {
	--ifl-bg-body: #121212;
	--ifl-bg-primary: #1e1e1e;
	--ifl-bg-secondary: #2a2a2a;
	--ifl-bg-footer: #1a1a1a;
	--ifl-text-primary: #e0e0e0;
	--ifl-text-secondary: #b0b0b0;
	--ifl-text-heading: #f0f0f0;
	--ifl-link-color: #7ba3d9;
	--ifl-link-hover: #a8c8f0;
	--ifl-header-bg: #1a1a1a;
	--ifl-nav-bg: #1e3a6e;
	--ifl-card-bg: #2a2a2a;
	--ifl-border-color: #3a3a3a;
	--ifl-widget-bg: #2a2a2a;
	--ifl-input-bg: #333;
	--ifl-input-border: #555;
	--ifl-shadow: 0 2px 8px rgba(0,0,0,0.3);
}

/* Dark: Nuclear background reset — overrides all #fff/#eee backgrounds sitewide */
html.ifl-dark body,
html.ifl-dark .site-inner { background-color: var(--ifl-bg-body) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark .site-header { background-color: var(--ifl-header-bg) !important; }
html.ifl-dark .site-header > .wrap { background-color: transparent !important; }
html.ifl-dark .nav-secondary { background-color: transparent !important; }
html.ifl-dark .nav-secondary .wrap,
html.ifl-dark .nav-secondary .menu-secondary { background-color: transparent !important; }
html.ifl-dark .header-image .site-title > a { filter: brightness(0) invert(1) !important; }
html.ifl-dark .breadcrumb { border-bottom-color: var(--ifl-border-color) !important; }
html.ifl-dark .site-container,
html.ifl-dark .site-inner .wrap,
html.ifl-dark .content-sidebar-wrap,
html.ifl-dark .content,
html.ifl-dark .sidebar,
html.ifl-dark .sidebar-primary,
html.ifl-dark .sidebar-secondary,
html.ifl-dark main,
html.ifl-dark article,
html.ifl-dark aside,
html.ifl-dark .wrap:not(.nav-primary .wrap):not(.nav-secondary .wrap):not(#search-dropdown-container .wrap),
html.ifl-dark .page .content,
html.ifl-dark .single .content,
html.ifl-dark .archive .content,
html.ifl-dark .full-width-content .content,
html.ifl-dark .full-width-content.front-page .content,
html.ifl-dark .entry { background-color: var(--ifl-bg-primary) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark .sidebar .widget,
html.ifl-dark .widget-wrap { background-color: var(--ifl-bg-primary) !important; }
html.ifl-dark .breadcrumb { background-color: var(--ifl-bg-primary) !important; color: var(--ifl-text-secondary) !important; }
html.ifl-dark .archive-description,
html.ifl-dark .taxonomy-description,
html.ifl-dark .page-header,
html.ifl-dark .entry-header,
html.ifl-dark .entry-footer { background: var(--ifl-bg-primary) !important; }
html.ifl-dark .page-top { background: var(--ifl-bg-primary) !important; }
html.ifl-dark .page-main-bg,
html.ifl-dark .page-full-main-bg { background: var(--ifl-bg-primary) !important; }
html.ifl-dark .entry,
html.ifl-dark .entry-content { color: var(--ifl-text-primary) !important; }
html.ifl-dark .entry-content p,
html.ifl-dark .entry-content li,
html.ifl-dark .entry-content span { color: var(--ifl-text-primary) !important; }
html.ifl-dark h1, html.ifl-dark h2, html.ifl-dark h3,
html.ifl-dark h4, html.ifl-dark h5, html.ifl-dark h6,
html.ifl-dark .entry-title,
html.ifl-dark .entry-title a,
html.ifl-dark .archive-title,
html.ifl-dark .widgettitle { color: var(--ifl-text-heading) !important; }
html.ifl-dark a { color: var(--ifl-link-color) !important; }
html.ifl-dark a:hover,
html.ifl-dark a:focus { color: var(--ifl-link-hover) !important; }
html.ifl-dark .nav-primary a:not(.sub-menu a) { color: #fff !important; }
html.ifl-dark .nav-secondary a { color: var(--ifl-text-secondary) !important; }

/* Dark: Cards, Widgets, Boxes */
html.ifl-dark .widget,
html.ifl-dark .widget-wrap { background-color: var(--ifl-bg-primary) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark .home-broadcast-devotional .todays-broadcast,
html.ifl-dark .home-broadcast-devotional .todays-devotional { background-color: var(--ifl-bg-secondary) !important; border-color: var(--ifl-border-color) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark .home-top { background-color: var(--ifl-bg-primary) !important; }
html.ifl-dark .home-featured-section { background-color: var(--ifl-bg-primary) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark .home-featured { background-color: var(--ifl-card-bg) !important; color: var(--ifl-text-secondary) !important; border-color: var(--ifl-border-color) !important; }
html.ifl-dark .home-featured h3,
html.ifl-dark .home-featured h4 { color: var(--ifl-text-heading) !important; }
html.ifl-dark .home-devo-form { background-color: var(--ifl-bg-secondary) !important; box-shadow: inset 0 0 0 4px var(--ifl-border-color) !important; }
html.ifl-dark .home-devo-form .form-inline { border-color: var(--ifl-border-color) !important; }
html.ifl-dark .home-devo-form h5 { color: var(--ifl-text-heading) !important; }
html.ifl-dark .card,
html.ifl-dark .panel { background-color: var(--ifl-card-bg) !important; border-color: var(--ifl-border-color) !important; }

/* Dark: Mailchimp / Newsletter form */
html.ifl-dark .widget_mc4wp_form_widget { background-color: var(--ifl-bg-secondary) !important; border-color: var(--ifl-border-color) !important; }
html.ifl-dark .mc4wp-form-fields,
html.ifl-dark .mc4wp-form-fields label,
html.ifl-dark .mc4wp-form-fields p,
html.ifl-dark .mc4wp-form-fields span,
html.ifl-dark .mc-form-column-1,
html.ifl-dark .mc-form-column-2,
html.ifl-dark .mc-form-column-2 h4,
html.ifl-dark .mc-form-footer-section,
html.ifl-dark .footer-mc-signup-header { color: #fff !important; }
html.ifl-dark .mc4wp-form-fields input[type="submit"] { color: #000 !important; }
html.ifl-dark .footer-widget-left,
html.ifl-dark .footer-widget-center-left,
html.ifl-dark .footer-widget-center-right,
html.ifl-dark .footer-widget-right { border-left-color: var(--ifl-border-color) !important; }

/* Dark: Footer */
html.ifl-dark .footer-widgets { background-color: var(--ifl-bg-primary) !important; }
html.ifl-dark .site-footer { background-color: var(--ifl-bg-footer) !important; }
html.ifl-dark .site-footer,
html.ifl-dark .site-footer a,
html.ifl-dark .site-footer p { color: var(--ifl-text-secondary) !important; }
html.ifl-dark .after-footer-area { background-color: var(--ifl-bg-footer) !important; color: var(--ifl-text-secondary) !important; }
html.ifl-dark .after-footer-area .wrap { border-top-color: var(--ifl-border-color) !important; }
html.ifl-dark .after-footer-area,
html.ifl-dark .after-footer-area p,
html.ifl-dark .after-footer-area a { color: var(--ifl-text-secondary) !important; }

/* Dark: Forms */
html.ifl-dark input,
html.ifl-dark textarea,
html.ifl-dark select { background-color: var(--ifl-input-bg) !important; color: var(--ifl-text-primary) !important; border-color: var(--ifl-input-border) !important; }
html.ifl-dark input::placeholder,
html.ifl-dark textarea::placeholder { color: #888 !important; }

/* Dark: Breadcrumbs */
html.ifl-dark .breadcrumb,
html.ifl-dark .breadcrumb a { color: var(--ifl-text-secondary) !important; }
html.ifl-dark .custom-breadcrumbs li:last-child span { color: var(--ifl-text-heading) !important; }

/* Dark: Borders */
html.ifl-dark hr,
html.ifl-dark .widget,
html.ifl-dark .sidebar section { border-color: var(--ifl-border-color) !important; }

/* Dark: Images - slightly dimmed to reduce eye strain */
html.ifl-dark img { filter: brightness(0.92); }
html.ifl-dark img:hover { filter: brightness(1); }

/* Dark: Mobile Nav Overlay */
html.ifl-dark .ifl-mobile-nav-overlay { background-color: var(--ifl-bg-primary) !important; }
html.ifl-dark .ifl-mobile-nav-overlay a { color: var(--ifl-text-primary) !important; }

/* Dark: WooCommerce */
html.ifl-dark .woocommerce .product,
html.ifl-dark .woocommerce-page .product { background-color: var(--ifl-card-bg) !important; }
html.ifl-dark .woocommerce .price { color: var(--ifl-text-primary) !important; }

/* Dark: Misc */
html.ifl-dark .archive-description { background-color: var(--ifl-bg-secondary) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark blockquote { border-color: var(--ifl-brand-blue) !important; background-color: var(--ifl-bg-secondary) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark code,
html.ifl-dark pre { background-color: var(--ifl-bg-secondary) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark table,
html.ifl-dark th,
html.ifl-dark td { border-color: var(--ifl-border-color) !important; color: var(--ifl-text-primary) !important; }
html.ifl-dark th { background-color: var(--ifl-bg-secondary) !important; }

/* ==========================================================================
   HIGH CONTRAST MODE
   ========================================================================== */
html.ifl-high-contrast body { color: #000 !important; background-color: #fff !important; }
html.ifl-high-contrast .site-inner { background-color: #fff !important; }
html.ifl-high-contrast .content,
html.ifl-high-contrast .entry-content,
html.ifl-high-contrast .entry-content p,
html.ifl-high-contrast .entry-content li,
html.ifl-high-contrast .entry-content span { color: #000 !important; }
html.ifl-high-contrast h1, html.ifl-high-contrast h2, html.ifl-high-contrast h3,
html.ifl-high-contrast h4, html.ifl-high-contrast h5, html.ifl-high-contrast h6 { color: #000 !important; }
html.ifl-high-contrast a { color: #0000cc !important; text-decoration: underline !important; }
html.ifl-high-contrast a:hover { color: #000066 !important; }
html.ifl-high-contrast *:focus { outline: 3px solid #000 !important; outline-offset: 2px !important; }
html.ifl-high-contrast button,
html.ifl-high-contrast input,
html.ifl-high-contrast select,
html.ifl-high-contrast textarea { border: 2px solid #000 !important; }
html.ifl-high-contrast .widget,
html.ifl-high-contrast .home-featured,
html.ifl-high-contrast .card { border: 2px solid #000 !important; }
html.ifl-high-contrast img { filter: contrast(1.15); }
html.ifl-high-contrast .nav-primary { background-color: #000 !important; }
html.ifl-high-contrast .nav-primary a:not(.sub-menu a) { color: #fff !important; text-decoration: none !important; }
html.ifl-high-contrast .nav-primary a:not(.sub-menu a):hover,
html.ifl-high-contrast .nav-primary a:not(.sub-menu a):focus { color: #ccc !important; }

/* High Contrast + Dark Mode Combined */
html.ifl-dark.ifl-high-contrast body { background-color: #000 !important; color: #fff !important; }
html.ifl-dark.ifl-high-contrast .site-inner { background-color: #000 !important; }
html.ifl-dark.ifl-high-contrast .content,
html.ifl-dark.ifl-high-contrast .entry-content,
html.ifl-dark.ifl-high-contrast .entry-content p { color: #fff !important; }
html.ifl-dark.ifl-high-contrast a { color: #6db3f2 !important; text-decoration: underline !important; }
html.ifl-dark.ifl-high-contrast *:focus { outline: 3px solid #fff !important; }
html.ifl-dark.ifl-high-contrast .widget,
html.ifl-dark.ifl-high-contrast .home-featured,
html.ifl-dark.ifl-high-contrast .card { border: 2px solid #fff !important; background-color: #111 !important; }
html.ifl-dark.ifl-high-contrast h1, html.ifl-dark.ifl-high-contrast h2,
html.ifl-dark.ifl-high-contrast h3, html.ifl-dark.ifl-high-contrast h4 { color: #fff !important; }

/* ==========================================================================
   ACCESSIBILITY TOOLBAR — Component Styles
   ========================================================================== */

/* Trigger Button */
.ifl-a11y-trigger {
	position: fixed;
	bottom: 90px;
	right: 20px;
	z-index: 1050;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #37518c;
	color: #fff;
	border: 2px solid #fff;
	box-shadow: 0 4px 12px rgba(0,0,0,0.25);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.25s ease;
	padding: 0;
	line-height: 1;
}
.ifl-a11y-trigger:hover {
	background: #1e3a6e;
	transform: scale(1.08);
	box-shadow: 0 6px 16px rgba(0,0,0,0.3);
}
.ifl-a11y-trigger:focus {
	outline: 3px solid #7ba3d9;
	outline-offset: 2px;
}
.ifl-a11y-trigger svg {
	width: 24px;
	height: 24px;
	fill: currentColor;
}
.ifl-a11y-trigger.is-open {
	background: #882d2b;
}

/* Panel */
.ifl-a11y-panel {
	position: fixed;
	bottom: 150px;
	right: 20px;
	z-index: 1051;
	width: 300px;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.18);
	border: 1px solid #e0e0e0;
	opacity: 0;
	visibility: hidden;
	transform: translateY(12px);
	transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
	font-family: 'Open Sans', sans-serif;
	overflow: hidden;
}
.ifl-a11y-panel.is-open {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* Panel Header */
.ifl-a11y-panel__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px 12px;
	border-bottom: 1px solid #eee;
}
.ifl-a11y-panel__title {
	font-size: 15px;
	font-weight: 700;
	color: #333;
	letter-spacing: -0.3px;
}
.ifl-a11y-panel__close {
	background: none;
	border: none;
	cursor: pointer;
	padding: 4px;
	color: #999;
	line-height: 1;
	border-radius: 4px;
	transition: color 0.2s;
}
.ifl-a11y-panel__close:hover { color: #333; }
.ifl-a11y-panel__close svg { width: 18px; height: 18px; }

/* Panel Body */
.ifl-a11y-panel__body {
	padding: 16px 20px 20px;
}

/* Control Group */
.ifl-a11y-group {
	margin-bottom: 18px;
}
.ifl-a11y-group:last-child {
	margin-bottom: 0;
}
.ifl-a11y-group__label {
	display: block;
	font-size: 11px;
	font-weight: 600;
	color: #888;
	text-transform: uppercase;
	letter-spacing: 0.8px;
	margin-bottom: 8px;
}

/* Font Size Controls */
.ifl-a11y-font-controls {
	display: flex;
	align-items: center;
	gap: 8px;
}
.ifl-a11y-font-controls button {
	width: 36px;
	height: 36px;
	border-radius: 8px;
	border: 1px solid #ddd;
	background: #f8f8f8;
	color: #333;
	font-weight: 700;
	font-size: 13px;
	cursor: pointer;
	transition: all 0.15s;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	line-height: 1;
}
.ifl-a11y-font-controls button:hover {
	background: #37518c;
	color: #fff;
	border-color: #37518c;
}
.ifl-a11y-font-level {
	flex: 1;
	text-align: center;
	font-size: 12px;
	font-weight: 600;
	color: #555;
}
.ifl-a11y-font-controls .ifl-a11y-reset-btn {
	width: auto;
	padding: 0 12px;
	font-size: 11px;
	font-weight: 600;
}

/* Toggle Switch */
.ifl-a11y-toggle-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.ifl-a11y-toggle {
	position: relative;
	width: 46px;
	height: 26px;
	background: #ccc;
	border-radius: 13px;
	border: none;
	cursor: pointer;
	padding: 0;
	transition: background 0.25s ease;
	flex-shrink: 0;
}
.ifl-a11y-toggle::after {
	content: '';
	position: absolute;
	top: 3px;
	left: 3px;
	width: 20px;
	height: 20px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 1px 3px rgba(0,0,0,0.2);
	transition: transform 0.25s ease;
}
.ifl-a11y-toggle[aria-checked="true"] {
	background: #37518c;
}
.ifl-a11y-toggle[aria-checked="true"]::after {
	transform: translateX(20px);
}
.ifl-a11y-toggle:focus {
	outline: 3px solid #7ba3d9;
	outline-offset: 2px;
}

/* Dark Mode Panel Override */
html.ifl-dark .ifl-a11y-panel { background: #2a2a2a !important; border-color: #444 !important; }
html.ifl-dark .ifl-a11y-panel__header { border-color: #444 !important; }
html.ifl-dark .ifl-a11y-panel__title { color: #e0e0e0 !important; }
html.ifl-dark .ifl-a11y-panel__close { color: #888 !important; }
html.ifl-dark .ifl-a11y-group__label { color: #999 !important; }
html.ifl-dark .ifl-a11y-font-controls button { background: #333 !important; color: #e0e0e0 !important; border-color: #555 !important; }
html.ifl-dark .ifl-a11y-font-controls button:hover { background: #7ba3d9 !important; color: #fff !important; }
html.ifl-dark .ifl-a11y-font-level { color: #b0b0b0 !important; }

/* Mobile: Full-Width Bottom Sheet */
@media only screen and (max-width: 800px) {
	.ifl-a11y-trigger {
		width: 42px;
		height: 42px;
		bottom: 80px;
		right: 14px;
	}
	.ifl-a11y-trigger svg {
		width: 20px;
		height: 20px;
	}
	.ifl-a11y-panel {
		bottom: 0;
		right: 0;
		left: 0;
		width: 100%;
		border-radius: 20px 20px 0 0;
		transform: translateY(100%);
	}
	.ifl-a11y-panel.is-open {
		transform: translateY(0);
	}
}

/* Print: Hide Toolbar */
@media print {
	.ifl-a11y-trigger,
	.ifl-a11y-panel { display: none !important; }
}

/* Books of Bible — chart sidebar block (per-page map_image + map_pdf) */
.chart-block .widget-wrap {
	text-align: center;
}
.chart-block-subtitle {
	color: #872c26;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 1.1em;
	font-weight: bold;
	margin: 0 0 0.5em 0;
}
.chart-block .widget-wrap img {
	max-width: 100%;
	height: auto;
	margin: 0.5em 0;
}
.chart-block .widget-wrap p {
	margin-top: 0.75em;
}