/**
 * 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(--gray-900);
}

.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_collections_template_custom_contacts,
.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 30px;
    margin: 0 auto;
}

.contentRender_name_plugins_core_textbox,
.contentRender_name_plugins_nav_sitemap {
    max-width: var(--width-content);
}

.contentRender_name_plugins_core_textbox {
    padding: var(--space-8) 30px;
}

.panel-container > .contentRender_name_plugins_core_textbox {
    padding: var(--space-8) 30px 0;
}

.contentRender_name_plugins_nav_sitemap {
    padding: 0 30px var(--space-8) 30px;
}

@media (min-width: 64em) {
    .contentRender_name_plugins_search_results,
    .contentRender_name_plugins_common_button,
    .contentRender_name_plugins_common_jumplist_outer,
    .contentRender_name_plugins_collections_template_custom_list,
    .contentRender_name_plugins_collections_template_custom_contacts,
    .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_crm_formbuilder {
        max-width: var(--width-content);
    }
}

/* 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: grid;
    gap: 14px;
    width: 100%;
	max-width: 1020px;
    padding: 0 30px;
    margin: 22px auto var(--space-8) auto;
}

.panel-navigation-share .nav-list {
    margin: 0;
}

.panel-navigation-share .interior-nav {
    padding: 0;
}

.panel-intro {
    max-width: var(--width-comfortable);
    margin: 0 auto;
    margin-bottom: var(--space-16);
    padding: 0 30px;
}

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

.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: var(--space-8);
}

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

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

.sv-col > .contentRender > .sv-panel {
    margin-left: calc(-1 * var(--space-5));
    margin-right: calc(-1 * var(--space-5));
}

.panel-countdown-parallax {
	position: relative;
	color: #fff;
	text-align: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	background-attachment: fixed;
	overflow: hidden;
	z-index: 1;
}

.panel-countdown-parallax:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: #33687b;
	opacity: 0.65;
	z-index: -1;
}

@media (min-width: 40em) {
    .panel-navigation-share {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: var(--space-4);
        margin-top: var(--space-10);
    }
}

@media (min-width: 64em) {

    .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); }
}


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

.button-default {
    position: relative;
    display: inline-block;
    padding: var(--space-3) 30px;
    background-color: var(--cactus-alt-1);
    font-family: var(--font-body-bold) !important;
    color: var(--white) !important;
    font-size: var(--text-sm);
    letter-spacing: 1.2px;
    line-height: var(--leading-none);
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: background-color var(--transition-appendix);
}

.button-default::before,
.button-default::after {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 14px;
    height: auto;
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-appendix);
}

.button-default::before {
    left: var(--space-2);
    content: url('/includes/client_public/assets/shared/ornaments/left-ornament.svg');
}

.button-default::after {
    right: var(--space-2);
    content: url('/includes/client_public/assets/shared/ornaments/right-ornament.svg');
}

.button-default.red {
    background-color: var(--disco-light);   
}

.button-default.light-border {
    background-color: transparent;
    border: 2px solid var(--white);
}

.button-link {
	position: relative;
	padding: var(--space-1) 0;
    color: var(--black);
	text-decoration: none;
	font-size: var(--text-lg);
	font-family: var(--font-body-bold);
}

.button-link::after {
    background-color: var(--cactus-alt-1);
    position: absolute;
    height: 3px;
    width: 25px;
    bottom: -2px;
    left: 0;
    transition: width var(--transition-appendix), box-shadow var(--transition-appendix);
    border-radius: var(--rounded-full);
    box-shadow: 0 1px #b8c1a2;
    content: '';
}

/* partial underline under link that expands on hover */
.ul-decoration::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -8px;
    width: 17px;
    height: 3px;
    border-radius: 2px;
    background-color: var(--agave-alt);
    transition: width 400ms;
}

@media (hover: hover) {
    .button-default:hover {
        background-color: var(--cactus-alt);
        text-decoration: none;
    }

    .button-default.red:hover {
        background-color: #8b2055;
    }

    .button-default.light-border:hover {
        background-color: transparent;
    }

    .button-default:hover::before,
    .button-default:hover::after {
        opacity: 1;
    }

    .button-link:hover {
        color: var(--black);
    }

    .button-link:hover::after {
        width: 100%;
        box-shadow: none;
    }
    .ul-decoration:hover::after {
        width: 100%;
    }
}

@media (min-width: 40em) {
    .button-default {
        padding: var(--space-3) var(--space-10);
        font-size: var(--text-base);
    }

    .button-default::before,
    .button-default::after {
        width: 17px;
    }

    .button-default::before {
        left: 10px;
    }
    
    .button-default::after {
        right: 10px;
    }
}
@media (min-width: 64em) {
    .ul-decoration:after {
        width: 24px;
        height: 4px;
    }
}

/*===============================*/
/*=====----- SUBTITLES -----=====*/
/*===============================*/

.subtitle {
    display: block;
    font-family: var(--font-display-script);
    font-weight: normal;
    font-size: 2.28rem;
    line-height: 0.65;
    text-transform: uppercase;
}



/* NextDate */
.mini-date-section {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 7px var(--space-3);
    background-color: rgba(145, 24, 84, .878);
    color: var(--white);
    font-family: var(--font-family);
    text-transform: uppercase;  
    font-weight: 700;
    pointer-events: none;
}
.mini-date-section.small {
    padding: 7px 10px 4px;
}
.mini-date-section.right {
    left: auto;
    right: 0;
}
.mini-date-section::after {
    position: absolute;
    top: -4px;
    right: -4px;
    bottom: -4px;
    left: -4px;
    border: 2px solid var(--disco);
    content: '';
}
.mini-date-section .month,
.mini-date-section .day {
    line-height: var(--leading-none);
    font-feature-settings: "tnum";
    font-variant-numeric: tabular-nums;
    letter-spacing: .1rem;
}
.mini-date-section .month {
    font-family: var(--font-body-bold);
    font-size: var(--text-base);
}
.mini-date-section.small .month {
    font-size: 15px;
}
.mini-date-section .day {
    font-family: var(--font-display);
    font-weight: var(--font-weight-normal);
    font-size: 38px;
}
.mini-date-section.small .day {
    font-size: 37px;
}

@media (min-width: 40em) {
    .mini-date-section .month {
        font-size: var(--text-lg);
        margin-bottom: 2px;
    }

    .mini-date-section .day {
        font-size: 44px;
    }
}

#at-expanded-menu-host .at-expanded-menu-round .at-expanded-menu-service-list li.at3winsvc_email{
    display:none !important;
}

#ae_launcher.ae-cta-position-preset-right-lower {
    bottom: 100px !important;
}

/* FAQ style */
.contentRender_name_plugins_collections_template_custom_faqs {
    max-width: var(--width-content);
    margin: 0 auto;
}

.contentRender_name_plugins_collections_template_custom_faqs .core-faqs {
    padding: 0 30px;
}

@media (max-width: 64em) {
    #ae_launcher.ae-active {
        bottom: 75px !important;
    }
}