section {
    margin: 0 auto;
    padding: 0 3em 6em 3em;
}

img {
    max-width: 100%;
    height: auto;
}

img.alignleft {
    margin: 0;
    padding: 0 1em 1em 0;
}

img.alignright {
    padding: 0 0 1em 1em;
}

.has-text-align-center{
	text-align: center;
}

.has-text-align-right{
	text-align: right;
}

section.content-over-image .inner{
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 900px;
	text-align: center;
}

section.content-over-image .inner>*{
	color: #fff;
}

section.content-over-image .subtitle{
	color: #fff;
	font-size: 3em;
	font-weight: 700;
	line-height: 1.2;
	margin-bottom: .5em;
}

.footer-up a[href=""],
.footer-up a[href="tel:"],
.footer-up a[href="mailto:"]{
	display: none !important;
}

.tribe-events-view,
#tribe-events,
#tribe-events-pg-template,
.tribe-events-pg-template {
    margin: 0 auto;
    padding: 6em 3em;
}

main>section:first-child,
section.content-over-image+section,
section.images-above-content-section+section,
section.left-text-right-image+section,
section.side-by-side+section,
section.no-pad+section {
    padding-top: 6em
}

main>section.images-above-content-section:first-child {
    padding-top: 0;
}

section.no-pad {
    padding: 0 !important;
}

section.title-section {
    padding-bottom: 0;
}

section.title-section+section {
    padding-top: 1em;
}

.content hr {
    margin: 3em 0
}

nf-field+nf-field {
    margin-top: 1.25em !important;
    display: block;
}

nf-field + nf-field .hidden-container{
	margin-top: -1.25em !important;
}

hr.ninja-forms-field {
    height: 1px !important;
    margin: 1.5em 0 !important;
}

nf-field+nf-field hr.ninja-forms-field {
    margin-top: 0.5em !important;
}

.ninja-forms-form-wrap h4 {
    margin-top: 0 !important;
}

.nf-field-element p:last-child {
    margin-bottom: 0;
}

select.hour,
select.minute,
select.ampm {
    border: 1px solid #cfd0d3;
    border-radius: 0;
    padding: 8px 12px !important;
}

select.hour:hover,
select.minute:hover,
select.ampm:hover {
    border-color: #3b5eab
}

select.hour {
    padding: 8px 6px 8px 12px !important;
}

select.minute {
    padding: 8px 12px 8px 6px !important;
}

.tribe-events .tribe-events-c-search__button:focus,
.tribe-events .tribe-events-c-search__button:hover,
.tribe-events button.tribe-events-c-search__button:focus,
.tribe-events button.tribe-events-c-search__button:hover {
    border-radius: 3em !important;
}

.nf-error.field-wrap .nf-field-element:after {
    width: 36px !important;
    height: 36px !important;
    line-height: 36px !important;
}

.list-container .nf-field-label {
    margin-bottom: 0.75em !important;
}

.form-and-image-section .nf-form-content input[type=submit] {
    min-width: 120px;
    font-weight: 800;
    font-size: 1em;
    padding: 1em 1.5em;
    height: auto !important;
    width: auto;
}

section.full-width-content-above-image .image-wrapper img {
    margin: auto;
}

.buttons {
    justify-content: center;
}

.btn-red{
	background-color: #D24C3B !important;
	border-color: #D24C3B !important;
}

.btn-red:hover{
	background-color: #eb3720 !important;
	border-color: #eb3720 !important;
}

.wp-block-button__link,
.wp-element-button,
.nf-form-content button,
.nf-form-content input[type=button],
.nf-form-content input[type=submit],
.gform_button{
    border-radius: 3em !important;
    color: #fff !important;
    font-size: 1em !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    padding: 1em 1.5em !important;
    text-decoration: none !important;
    transition: all 200ms ease !important;
    background: #3b5eab !important;
    border: 3px solid #3b5eab !important;
    height: auto !important;
}

.wp-block-button__link:hover,
.wp-element-button:hover,
.nf-form-content button:hover,
.nf-form-content input[type=button]:hover,
.nf-form-content input[type=submit]:hover,
.gform_button:hover{
    background: #00bbd3 !important;
    border-color: #00bbd3 !important;
    color: #fff !important;
}

.wp-block-separator {
    margin: 0 !important;
}

.content .video-container {
    margin-bottom: 1em;
}

.content :last-child {
    margin-bottom: 0 !important;
}

.wp-caption {
    margin-bottom: 1em;
    display: inline-block;
	max-width: 100%;
}

.wp-caption.aligncenter {
	display: block;
}

.wp-caption-text {
    text-align: center;
    font-size: 0.85em;
    margin-top: 0.5em;
}

.image-grid {
    display: flex;
    width: 100%;
    gap: 0.5em;
    flex-wrap: wrap;
    margin-bottom: 1em;
}

.image-grid .wp-caption {
    margin-bottom: 0;
}

.image-grid.align-center {
    justify-content: center;
}

.image-grid.align-right {
    justify-content: flex-end;
}

.esu-basic-full-width .wrapper-links .links a i {
    transition: left 0.25s ease;
}

.esu-basic-full-width .buttons {
    margin-top: 2em;
}

.ecs-events.default.default-1 {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 3em;
}

.ecs-events.default.default-1 .ecs-event {
    display: flex;
    flex-direction: column;
    padding: 0 !important;
}

.ecs-events.default.default-1 img,
.ecs-events .ecs-thumbnail{
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 16/9;
    margin-bottom: 1em;
    order: -1;
}

.ecs-event .entry-title,
.ecs-event h2 {
    font-size: 1.5em !important;
    line-height: 1.3 !important;
    margin-bottom: 0.25em !important;
}

.ecs-events.default.default-1 .ecs-event .duration.time {
    font-size: 1.1em;
}

.ecs-events.default.default-1 .ecs-venue-details {
    margin-bottom: 0 !important;
}

.ecs-events.default.default-1 .ecs-events-list-event-description {
    margin-top: 1em;
}

.ecs-events.default.default-1 .ecs-event a {
    transition: color 0.25s ease;
}

.ecs-events.default.default-1 .ecs-event a:hover {
    color: #00bbd3 !important;
}

.single-tribe_events .tribe-blocks-editor .tribe-events-single-event-title {
    font-size: 2em !important;
    color: rgb(39, 54, 108) !important;
    line-height: 1.2em;
}

.tribe-events-single .tribe-events-back,
.tribe-events-single .tribe-events-single-event-title,
.tribe-events-single .tribe_events > * {
    max-width: 800px;
    margin-left: auto !important;
    margin-right: auto !important;
}

.tribe-events-single .tribe_events .tribe-block__event-price__cost{
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.tribe-block__event-price{
	padding: 0 !important;
	margin-bottom: 20px;
}

.tribe_events .icofont-arrow-right{
	font-family: "IcoFont" !important;
	color: #3b5eab !important;
}

.tribe_events a:hover .icofont-arrow-right{
	color: #27366c !important;
}

.tribe-events-single a.btn-solid{
	color: #fff !important;
}

.tribe-events-single .tribe_events figure,
.tribe-events-single .tribe_events .tribe-related-events,
.tribe-events-single .tribe_events .tribe-block__related-events__title {
    max-width: 100% !important;
}

.tribe_events .wp-block-image img {
    max-width: 100%;
    max-height: 65vh;
    object-fit: contain;
    display: block;
	margin-left: auto;
	margin-right: auto;
}

.tribe-block__event-website a {
    border-radius: 3em !important;
    color: #fff !important;
    font-size: 1em !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    padding: 1em 1.5em !important;
    text-decoration: none !important;
    transition: all 200ms ease !important;
    background: #3b5eab !important;
    border: 3px solid #3b5eab !important;
    min-height: auto !important;
}

.tribe-block__event-website a:hover {
    background: #00bbd3 !important;
    border-color: #00bbd3 !important;
    color: #fff !important;
}

.form-and-image-section .wrapper>.image {
    position: sticky;
    top: 5em;
}

.nf-progress{
	background-color: #00bbd3 !important;
}

.nf-form-content input[type=button].nf-next, 
.nf-form-content input[type=button].nf-previous{
	font-size: .85em !important;
	padding: .75em 1em !important;
	background: transparent !important;
	border: 3px solid #3b5eab !important;
	color: #3b5eab !important;
}

.nf-next:hover, .nf-previous:hover{
	border-color: #00bbd3 !important;
	background-color: #00bbd3 !important;
	color: #fff !important;
}

.nf-breadcrumbs li a{
	background: #27366c !important;
	color: #fff !important;
}

.nf-breadcrumbs li a:hover{
	background: #00bbd3 !important;
	color: #fff !important;
}

.nf-breadcrumbs li.active a{
	background: #fff !important;
	color: #27366c !important;
}

.hide-this{
	display: none !important;
}

.simple-form-section .wrapper{
	flex-direction: column;
	gap: 3em;
	padding: 5em 3em;
}

.simple-form-section .flex-child{
	padding: 0 !important;
	flex-basis: 100%;
}

.simple-form-section .flex-child-form{
	padding: 0 !important;
	margin: 0 auto;
	max-width: 800px;
	flex-basis: 100%;
	width: 100%;
}

.side-scrolling .card-item .card-image{
	height: auto;
	aspect-ratio: 16/9;
}

.side-scrolling .card-item .paragraph:last-child{
	margin-bottom: 0;
}

/*announcements section */

section#announcements.left-image-right-text .inner{
	display: flex;
	gap: 3rem;
	flex-wrap: wrap;
	justify-content: center;
}

section#announcements.left-image-right-text .flex-container{
	padding: 0 !important;
	border-bottom: none !important;
	flex-direction: column;
	gap: 2em;
	flex: 1;
	max-width: calc(50% - 3rem);
	min-width: calc(33.333333% - 3rem);
}

section#announcements.left-image-right-text h3{
	font-size: 1em;
	font-weight: 500;
}

section#announcements.left-image-right-text caps-link{
	font-size: 1em;
}

@media screen and (max-width: 991px) {
    .form-and-image-section .wrapper>.image {
        top: 4em;
    }
}

@media screen and (max-width: 768px) {
    section {
        padding: 0 2em 5em 2em;
    }

    .form-and-image-section .wrapper>.image {
        position: relative;
        top: 0;
    }

    .tribe-events-view,
    #tribe-events,
    #tribe-events-pg-template,
    .tribe-events-pg-template {
        margin: 0 auto;
        padding: 5em 2em;
    }
	

    main>section:first-child,
    main>div:first-child,
    section.content-over-image+section,
    section.images-above-content-section+section,
    section.left-text-right-image+section,
    section.side-by-side+section,
    section.no-pad+section {
        padding-top: 5em
    }
	
	.ecs-events.default.default-1 {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 3em;
	}

    .ecs-events.default.default-1 {
        grid-gap: 2em;
    }

    .ecs-event .entry-title,
	.ecs-event h2 {
        font-size: 1.25em !important;
	}

    .single-tribe_events .tribe-blocks-editor .tribe-events-single-event-title {
        font-size: 1.75em !important;
    }

    .tribe-block__event-website a {
        padding: .75em 1.25em !important;
    }
	
	section#announcements.left-image-right-text .inner{
		gap: 2em;
	}
	
	section#announcements.left-image-right-text .flex-container{
		max-width: calc(50% - 1rem);
	}
}

@media screen and (max-width: 568px) {
    header.top-nav .menu {
        flex-wrap: wrap;
        gap: 0.25rem 0.625rem;
    }

    header.top-nav .menu li a {
        border-right: none;
        padding: 0;
    }

    section {
        padding: 0 1.5em 3em 1.5em;
        font-size: 0.9em !important;
    }

    .tribe-events-view,
    #tribe-events,
    #tribe-events-pg-template,
    .tribe-events-pg-template {
        margin: 0 auto;
        padding: 3em 1.5em;
    }

    main>section:first-child,
    main>div:first-child,
    section.content-over-image+section,
    section.images-above-content-section+section,
    section.left-text-right-image+section,
    section.side-by-side+section,
    section.no-pad+section {
        padding-top: 3em
    }

    .form-and-image-section .nf-form-content input[type=submit] {
        width: 100%;
    }

    .ecs-events.default.default-1 {
        grid-template-columns: 1fr;
    }

    .single-tribe_events .tribe-blocks-editor .tribe-events-single-event-title {
        font-size: 1.5em !important;
    }

    img.alignleft,
    img.aligncenter,
    img.alignright {
        float: none;
        margin: 0 auto;
        padding: 0;
    }
	
	section#announcements.left-image-right-text .inner{
		flex-direction: column
		gap: 3rem;
		flex-wrap: wrap;
	}

	section#announcements.left-image-right-text .flex-container{
		max-width: 100%;
	}
}