/**
 * This file will be included in header in every page after reboot.
 * It should be used for content that relates
 * to your site as a whole, it should not be used for plugin-specific css.
 */
html {
    overflow-y: scroll;
}

body > .contentRender {
    min-height: 100%;
    height: 100%;
}

/* This ensures that the page always has a scrollbar to ensure that some headers load correctly without FOUC */
html, body {
    height: 100%;
    font-family: var(--font-body);
    color: var(--black);
    background-color: #fff;
}

.sr-only {
    border: 0;
    clip: rect(0,0,0,0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* Skip links */
.skip-link[href] {
    z-index: 5000000;
    display: block;
    margin: 0;
    padding: var(--space-8) var(--space-12);
    width: auto;
    height: auto;
    font-size: var(--text-3xl);
    line-height: var(--leading-tight);
    color: var(--gray-100);
    text-align: center;
    border: 4px dashed var(--gray-100);
    background: var(--gray-900);
    opacity: 0;
    clip: auto;
    pointer-events: none;
    transition: opacity 200ms cubic-bezier(0,0,0.3,1);
}

.skip-link[href]:focus {
    opacity: 1;
    pointer-events: all;
}

/* Set General max-width of site content */
.contentRender_name_plugins_core_textbox,
.contentRender_name_plugins_nav_sitemap,
.contentRender_name_plugins_search_results,
.contentRender_name_plugins_common_button,
.contentRender_name_plugins_collections_template_custom_list,
.contentRender_name_plugins_blog_leisure_blog_posts,
.contentRender_name_plugins_blog_articles_posts,
.contentRender_name_plugins_crm_formbuilder,
.contentRender_name_plugins_events_submitevent,
.contentRender_name_plugins_crm_rfp,
.contentRender_name_plugins_crm_rsvp {
    width: 100%;
    padding: 0 20px;
    margin: 0 auto;
}

.contentRender_name_plugins_core_textbox {
    padding-bottom: 25px;
}

.contentRender_name_plugins_common_jumplist_outer .core-styles > ul {
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
}

@media (min-width: 64em) {
    .contentRender_name_plugins_core_textbox,
    .contentRender_name_plugins_search_results,
    .contentRender_name_plugins_nav_sitemap,
    .contentRender_name_plugins_common_button,
    .contentRender_name_plugins_common_jumplist_outer .core-styles > ul,
    .contentRender_name_plugins_common_jumplist_outer .jumplist-item-title,
    .contentRender_name_plugins_collections_template_custom_list,
    .contentRender_name_plugins_crm_formbuilder,
    .contentRender_name_plugins_events_submitevent,
    .contentRender_name_plugins_crm_rfp,
    .contentRender_name_plugins_crm_rsvp  {
        max-width: var(--width-base);
    }

	.contentRender_name_plugins_common_jumplist_outer .jumplist-item-title {
		margin-left: auto;
		margin-right: auto;
	}

    .contentRender_name_plugins_core_textbox {
        padding-bottom: 60px;
    }
}

/* Panels */
.panel-page {
    position: relative;
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: auto auto 1fr auto;
    min-height: 100%;
}

.panel-navigation-share {
    display: flex;
	justify-content: flex-start;
	align-items: center;
	max-width: 1355px;
    padding: 0 var(--space-5);
    margin: 0 auto;
    margin-bottom: var(--space-8);
    padding: var(--space-5) var(--space-5) 0;
}

.panel-navigation-share .navigation-container { 
	display: none; 
}

.panel-navigation-share .share-container { 
	margin-left: auto;
}

.panel-social {
    max-width: var(--width-base);
    margin: 0 auto;
    padding: 0 var(--space-5);
}

.panel-social .title-container {
    text-align: center;
}

.panel-three-column,
.panel-two-column {
    max-width: var(--width-base);
    padding: 0;
    margin: 0 auto;
    margin-bottom: 0;
}

.panel-three-column :is(.left-container, .center-container, .right-container),
.panel-two-column :is(.left-container, .right-container) {
    padding: 0 20px;
}

.panel-three-column:has(.bwmodule) :is(.left-container, .center-container, .right-container),
.panel-two-column:has(.bwmodule) :is(.left-container, .right-container) {
    padding: 0;
}

:is(.panel-social, .panel-three-column, .panel-two-column, .panel-accordion) .contentRender_name_plugins_core_textbox {
    padding: 0;
}

.sv-col > .contentRender > .sv-panel {
    margin-left: calc(-1 * 20px);
    margin-right: calc(-1 * 20px);
}

@media (min-width: 64em) {
    .panel-navigation-share .navigation-container { display: block; }

    .panel-three-column,
    .panel-two-column {
        display: flex;
    }

    .panel-two-column.sidebar-left .left-container {
        order: 1;
        flex-basis: 40%;
    }

    .panel-two-column.sidebar-left .right-container {
        order: 2;
        flex-basis: 60%;
    }

    .panel-two-column.sidebar-right .left-container {
        order: 1;
        flex-basis: 60%;
    }

    .panel-two-column.sidebar-right .right-container {
        order: 2;
        flex-basis: 40%;
    }

    .panel-two-column.even :is(.left-container, .right-container) {
        flex-basis: 50%;
    }

    .panel-three-column > * { flex-basis: calc(100% / 3); }
        
}


/*====================================*/
/*=====-----  CUSTOM ICONS  -----=====*/
/*====================================*/

.circle-icon,
.circle-icon:is(.fa, .fab, .fad, .fal, .far, .fas) {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 36px;
	height: 36px;
    flex-shrink: 0;
    padding: 0;
    border-radius: var(--rounded-circle);
    background-color: var(--robins-egg);
    font-size: var(--text-lg);
    line-height: var(--leading-none);
}

.map-marker,
.phone-icon {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 20px;
}

.map-marker {
    background-image: url('/includes/public/assets/shared/map-pin-detail.svg');
}

.phone-icon {
    background-image: url('/includes/public/assets/shared/phone.svg');
}

@media (min-width: 64em) {
    .circle-icon,
    .circle-icon:is(.fa, .fab, .fad, .fal, .far, .fas) {
        width: 44px;
        height: 44px;
        font-size: 1.35rem;
    }

    .map-marker,
    .phone-icon {
        background-size: auto 26px;
    }
}

/*===============================*/
/*=====-----  BUTTONS  -----=====*/
/*===============================*/

/*=====----- DEFAULT BUTTON -----=====*/

.base-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px var(--space-4);
    border-radius: 22px;
    border: 2px solid var(--true-white);
    background-color: var(--blue);
    color: var(--navy);
    font-weight: var(--font-weight-strong);
    font-size: var(--text-xs);
    line-height: 1;
    letter-spacing: 0.05rem;
    text-transform: uppercase;
    text-align: center;
}

.base-button::after {
    display: inline-block;
    margin-left: var(--space-1);
    font-family: 'Font Awesome 6 Pro';
    font-weight: 900;
    content: '\f105';
    text-decoration: none !important;
}

.base-button.dark {
    background: var(--navy);
    color: var(--true-white);
}

@media (hover: hover) {
    .base-button:hover {
        text-decoration: underline;
        color: var(--navy);
        background-color: var(--blue);
    }

    .base-button.dark:hover {
        color: var(--true-white);
        background: var(--navy);
    }
}

@media (min-width: 64em) {
    .base-button {
        padding: 11px 23px;
        font-size: var(--text-sm);
    }
}

/*=====----- CIRCLE BUTTON -----=====*/

.circle-btn {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--space-10);
    height: var(--space-10);
    flex-shrink: 0;
    padding: 0;
    background-color: var(--gray);
    border: 2px solid var(--true-white);
    border-radius: var(--rounded-circle);
    text-decoration: none !important;
    color: var(--black) !important;
    font-size: var(--text-xl);
    transition: background-color var(--transition-appendix), color var(--transition-appendix);
}

.circle-btn.disabled {
    cursor: auto;
    pointer-events: none;
}

.circle-btn.disabled i {
    opacity: .35;
}

.circle-btn.teal {
    background-color: var(--blue);
    color: var(--navy) !important;
}

.circle-btn.dark {
    background-color: var(--black);
    color: var(--true-white) !important;
}

.circle-btn:focus {
    outline: 1px dashed rgba(57, 76, 140, .5);
	outline-offset: var(--space-1);
}

@media (hover: hover) {
    .circle-btn:hover {
        background-color: var(--blue);
        color: var(--navy) !important;
    }

    .circle-btn.teal:hover {
        background-color: var(--gray);
        color: var(--black) !important;
    }
}

@media (min-width: 64em) {
    .circle-btn {
        width: 50px;
        height: 50px;
        font-size: var(--text-2xl);
    }
}

/*=============================================*/
/*=====-----  PANEL FEATURED EVENTS  -----=====*/
/*=============================================*/

.panel-featured-events {
    display: flex;
    flex-direction: column;
	margin-bottom: 40px;
}

.panel-featured-events .left-container {
    order: 1;
}

.slideshow-container .panel-featured-events {
    margin-bottom: 0;
}

.slideshow-container .panel-featured-events .left-container {
    order: 0;
}

@media screen and (min-width: 64em) {
    .panel-featured-events {
        flex-direction: row;
    }

    .panel-featured-events .right-container,
    .panel-featured-events .left-container {
        width: 50%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-height: 720px;
        margin-bottom: 0;
    }

    .panel-featured-events .right-container {
        background-color: var(--gray-light);
        padding-right: 60px;
    }

    .panel-featured-events .left-container {
        background-color: rgb(229, 228, 225);
        order: 0;
    }

    .slideshow-container .panel-featured-events .right-container,
    .slideshow-container .panel-featured-events .left-container {
        min-height: 600px;
        max-height: 600px;
        background-color: var(--gray);
    }

    .slideshow-container .panel-featured-events .left-container {
        width: calc(100% - 480px);
    }

    .slideshow-container .panel-featured-events .right-container {
        width: 480px;
        padding-right: 0;
    }

    .panel-featured-events .right-container > div,
    .panel-featured-events .left-container > div {
        width: 100%;
        max-width: 720px;
    }

    .slideshow-container .panel-featured-events .right-container > div,
    .slideshow-container .panel-featured-events .left-container > div {
        width: 100%;
        height: 100%;
        max-width: none;
    }

    .panel-featured-events .left-container > div {
        margin-left: auto;
    }

    .slideshow-container .panel-featured-events .left-container > div {
        max-width: none;
    }

    .panel-featured-events .right-container > div {
        margin-right: auto;
    }

    .slideshow-container .panel-featured-events .right-container > div {
        display: flex;
        align-items: center;
    }
}

/*===================================*/
/*=====-----  INTRO PANEL  -----=====*/
/*===================================*/

.panel-intro {
    width: 100%;
    max-width: var(--width-base);
    padding: 0 var(--space-5);
    margin: 0 auto 34px auto;
}

.panel-intro .contentRender_name_plugins_core_textbox {
    padding: 0;
    margin: 0;
    max-width: none;
}

.panel-intro .contentRender_name_plugins_core_textbox p {
    margin-bottom: var(--space-5);
}

.panel-intro .contentRender_name_plugins_core_textbox *:last-child {
    margin-bottom: 0;
}

.panel-intro .bottom-link-row {
    margin-top: var(--space-2);
}

.panel-intro .bottom-link {
    font-size: var(--text-xs);
    font-weight: var(--font-weight-strong);
    letter-spacing: .05rem;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--navy);
}

.panel-intro .bottom-link i {
    display: inline;
}

@media (hover: hover) {
    .panel-intro .bottom-link:hover {
        text-decoration: underline;
    }
}

@media (min-width: 64em) {
    .panel-intro {
        margin-bottom: 60px;
        padding-top: 53px;
    }

    .panel-intro .bottom-link-row {
        margin-top: var(--space-5);
    }

    .panel-intro .bottom-link {
        font-size: var(--text-sm);
    }
}

.sv-share {
    z-index: 8;
}