button[type=submit],
button.frm_button_submit {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
	font-size: 15px;
	line-height: 1.2;
	min-height: 59px;
	padding: 12px 28px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.25em;
	vertical-align: middle;
	border: none;
	cursor: pointer;
	text-shadow: none;
	text-decoration: none;
	-webkit-transition: all 0.35s ease;
	transition: all 0.35s ease;
}

button.frm_button_submit {
    background-color: transparent;
	border: 2px solid #ece9e7 !important;
	margin: auto;
}

.btn--primary:hover,
button.frm_button_submit:hover {
	background-color: #ece9e7;
}

.frm6, .frm_half, .frm_form_field.frm_three_fifths, .frm_form_field.frm6, .frm_submit.frm6, .frm_form_field.frm_left_half, .frm_form_field.frm_right_half, .frm_form_field.frm_first_half, .frm_form_field.frm_last_half, .frm_form_field.frm_half, .frm_submit.frm_half{
	margin-bottom: 20px;
}

.frm_fields_container .frm_form_field, .frm_fields_container > div{
	margin-bottom: 20px;
}

.frm_error{
	text-align: left;
    margin-top: 2px;
    margin-bottom: -8px;
    font-size: 14px;
	color: #b90000;
}

.frm_error_style{
	border: solid 1px #b90000;
    background: #ffeeed;
    color: #b90000;
    margin-bottom: 50px;
    padding: 10px;
}

.frm_message{
	border: solid 1px #008605;
    background: #f5fef4;
    color: #008605;
    margin-bottom: 50px;
    padding: 10px;	
}

.frm_form_field select{
    color: #999;
}

.frm_form_field select.selected-option{
    color: #071628;
}

@media (max-width: 667px) {

	button.frm_button_submit{
		width: 100%;
	}
}

/* Fix for WordPress admin bar and header interaction */

/* When admin bar is present, adjust the header position */
.admin-bar .header {
  top: 32px; /* Match the height of the WordPress admin bar */
}

/* Media query for mobile admin bar which has different height */
@media screen and (max-width: 782px) {
  .admin-bar .header {
    top: 46px; /* WordPress changes admin bar height on smaller screens */
  }
}

/* Ensure the z-index is appropriate but below admin bar */
.header {
  z-index: 999; /* High but less than admin bar's 99999 */
}

/* Eliminate any potential white gap */
body.admin-bar {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Add some additional padding to the page content to account for fixed header */
body.admin-bar #content,
body.admin-bar .site-content {
  padding-top: calc(0px + /* header-upper height */
                   70px + /* approximate main header height - adjust as needed */
                   20px); /* extra padding for visual comfort */
}

.iziModal#popup-leaving ul.btn-list{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
		margin-top: 50px;

}
.iziModal#popup-leaving #redirect-url{
	margin-bottom: 30px;
	margin-top: 30px;
}
.iziModal#popup-leaving ul.btn-list li{
	padding-left:0;
}
.iziModal#popup-leaving ul.btn-list li:before{
	display: none;
}
.iziModal#popup-leaving ul.btn-list li a{
		padding: 0 40px;
}

@media (max-width: 1023px) {
	.iziModal#popup-leaving ul.btn-list{
			flex-direction: column;
	}
}
.iziModal#popup-leaving-aff ul.btn-list{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
		margin-top: 50px;

}
.iziModal#popup-leaving-aff #redirect-url{
	margin-bottom: 30px;
	margin-top: 30px;
}
.iziModal#popup-leaving-aff ul.btn-list li{
	padding-left:0;
}
.iziModal#popup-leaving-aff ul.btn-list li:before{
	display: none;
}
.iziModal#popup-leaving-aff ul.btn-list li a{
		padding: 0 40px;
}

@media (max-width: 1023px) {
	.iziModal#popup-leaving-aff ul.btn-list{
			flex-direction: column;
	}
}

.hover-content{
	background: #1c2f5b;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
	overflow: auto;
    color: #fff;
    z-index: 1;
    padding: 40px 30px;
	opacity: 0;
	visibility: hidden;
	transition: all 0.5s ease;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
}

.gallery-card__title{
	z-index: 2;
	pointer-events: none;
}

.gallery-card__img:hover .hover-content{
	opacity: 1;
	visibility: visible;
}

.hover-content ul li{
	position: relative;
}

.hover-content ul li::before{
	content: '-';
	margin-right: 10px;
}



@media (min-width:667px) and (max-width:1200px){
	.hover-content{
		padding: 30px 20px;
		font-size: 16px;
		line-height: 180%;
	}

	.gallery-grid.gallery-grid--2:has(.hover-content){
		max-width: 100%;
	}
}


@media (max-width:666px){
	.hover-content{
		padding: 35px 20px 20px;
		font-size: 14px;
		line-height: 180%;
	}
}

.content-columns {
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
    width: 100%;
}

.content-column {
    width: 100%;
}

.content-columns--align-left .content-column,
.content-column--left,
.content-column--right {
    text-align: left;
}

.content-columns--align-center .content-column {
    text-align: center;
}

.highlight-tile .content-columns,
.content-card .content-columns {
    gap: 40px;
}

.content-card__inner .content-columns {
    width: 100%;
}

.highlight-tile .content-columns {
    margin-bottom: 15px;
}

@media (max-width: 767px) {
    .content-columns {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .content-columns--align-center .content-column {
        text-align: center;
    }
    
    .content-columns--align-left .content-column {
        text-align: left;
    }
    
    .highlight-tile .content-columns--align-left .content-column,
    .content-card--sm .content-columns--align-left .content-column {
        text-align: center;
    }
}

@media (min-width: 768px) {
    .content-columns {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
    
    .text-wrap .content-columns {
        gap: 60px;
    }
    
    .content-card__wrap .content-columns {
        gap: 40px;
    }
}

@media (min-width: 1024px) {
    .content-columns {
        gap: 60px;
    }
    
    .content-card .content-columns {
        gap: 80px;
    }
    
    .highlight-tile .content-columns {
        gap: 60px;
    }
}

.content-column ul,
.content-column ol,
.content-column p {
    margin-bottom: 20px;
}

.content-column ul:last-child,
.content-column ol:last-child,
.content-column p:last-child {
    margin-bottom: 0;
}

.content-card--headline .content-columns {
    text-align: left;
}

.content-card--sm .content-columns--align-center .content-column {
    text-align: center;
}

.content-card--sm .content-columns--align-left .content-column {
    text-align: left;
}

.text-wrap--sm .content-columns {
    gap: 30px;
}

@media (min-width: 768px) {
    .text-wrap--sm .content-columns {
        gap: 40px;
    }
}

/* Enroll link styling - left aligned */
.enroll-link-item {
    display: flex;
    align-items: center;
}

.enroll-link {
    color: #000;
    font-size: 14px;
    text-decoration: none;
    font-weight: 600;
    letter-spacing: 0.3px;
    transition: color 0.3s ease;
    display: inline-block;
}

.enroll-link:hover {
    color: #1a3a5c; 
    text-decoration: none;
}