/**
 * 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.
 */

 @font-face {
    font-family: "BornReadySlanted-Regular";
    src: url('/includes/public/assets/shared/fonts/BornReadySlantedRegular/font.woff2') format('woff2'), url('/includes/public/assets/shared/fonts/BornReadySlantedRegular/font.woff') format('woff');
 } 

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 {
    width: 100%;
    height: 100%;
    font-family: var(--font-body);
    color: var(--gray);
}

a { font-weight: bold; }

@media (min-width: 768px) {
    a { font-weight: normal; }
}

.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 var(--space-5);
    margin: 0 auto;
}

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


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

@media (min-width: 64em) {
    .contentRender_name_plugins_search_results,
    .contentRender_name_plugins_common_button,
    .contentRender_name_plugins_collections_template_custom_list,
    .contentRender_name_plugins_collections_template_custom_contacts {
        max-width: var(--width-base);
    }

    .contentRender_name_plugins_crm_formbuilder,
    .contentRender_name_plugins_events_submitevent {
        max-width: var(--width-comfortable);
    }

    .contentRender_name_plugins_crm_rfp,
    .contentRender_name_plugins_crm_rsvp {
        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: flex;
	justify-content: flex-start;
	align-items: center;
	max-width: var(--width-base);
    padding: var(--space-5);
    margin: 0 auto;
    margin-bottom: var(--space-8);
}

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

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

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

: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-container.contained-width,
.panel-two-column.contained-width,
.panel-three-column.contained-width {
    margin: 0 auto;
    padding: var(--space-8) var(--space-5);
    max-width: var(--width-content);
}

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

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

.circle-icon {
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    width: var(--space-6);
    height: var(--space-6);
    background: var(--citrus);
    border: none;
    border-radius: var(--rounded-circle);
    color: var(--white);
}

.circle-icon::before,
.circle-icon::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    content: '';
    background: var(--white);
    border-radius: 1px;
}

.circle-icon::before {
    width: 10px;
    height: 2px;
}

.circle-icon::after {
    width: 2px;
    height: 10px;
    transition: transform .3s ease;
}

.circle-icon.active::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

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

.button-default {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 18px;
    background: var(--citrus);
    border: none;
    color: var(--white);
    font-family: var(--font-display);
    font-weight: var(--font-weight-bold);
    font-size: 17px;
    letter-spacing: 1.7px;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
}

.button-default .button-icon {
    pointer-events: none;
}

.button-default .button-icon .arrow,
.button-default .button-icon .top,
.button-default .button-icon .middle,
.button-default .button-icon .bottom {
    display: block;
}

.button-default .button-icon .top,
.button-default .button-icon .middle,
.button-default .button-icon .bottom {
    position: absolute;
    border-radius: 1.5px;
    background: var(--white);
}

.button-default .button-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--space-6);
    height: var(--space-6);
    flex-shrink: 0;
}

.button-default .button-icon .arrow {
    position: relative;
    width: var(--space-3);
    height: var(--space-3);
}

.button-default .button-icon .top,
.button-default .button-icon .bottom {
    left: 50%;
    transform: translateX(-50%);
    width: 3px;
    height: 6px;
    transition: transform .4s ease-in-out;
}

.button-default .button-icon .top {
    top: -1px;
    transform-origin: right top;
}

.button-default .button-icon .bottom {
    bottom: -1px;
    transform-origin: right bottom;
}

.button-default .button-icon .middle {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    height: 3px;
}

.button-default .circle {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.button-default .circle path {
    transform: rotate(90deg) translate(1px, -23px);
    stroke-dasharray: 100;
    stroke-dashoffset: 100;
    transition: stroke-dashoffset ease-in-out 0.4s;
    stroke: var(--white);
}

.button-default.transparent {
    padding: 0;
    background-color: transparent;
    color: var(--citrus);
}

.button-default.transparent .button-icon .top,
.button-default.transparent .button-icon .middle,
.button-default.transparent .button-icon .bottom {
    background: var(--citrus);
}

.button-default.transparent .circle path {
    stroke: var(--citrus);
}

.button-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--space-6);
    height: var(--space-6);
    flex-shrink: 0;
    border: none;
    border-radius: var(--rounded-circle);
    background-color: var(--citrus);
    color: var(--white);
    line-height: var(--leading-none);
}

.button-arrow::before {
    display: block;
    width: var(--space-3);
    height: var(--space-3);
    background: url('/includes/public/assets/shared/btn-arrow.svg') no-repeat center center / contain;
    content: '';
}

.button-arrow-white {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--space-6);
    height: var(--space-6);
    flex-shrink: 0;
    border-radius: var(--rounded-circle);
    background: var(--white);
    color: var(--citrus);
    line-height: var(--leading-none);
}

.button-arrow-white::before {
    display: block;
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    font-size: var(--text-xs);
    content: '\f061';
}

.button-arrow-transparent {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    flex-shrink: 0;
    background: transparent;
    border: 2px solid var(--citrus);
    border-radius: var(--rounded-circle);
    color: var(--citrus);
    line-height: var(--leading-none);
}

.button-arrow-transparent::before {
    display: block;
    width: 14px;
    height: 14px;
    background: url('/includes/public/assets/shared/btn-arrow-red.svg') no-repeat center center / contain;
    content: '';
}

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

    .button-default.transparent:hover {
        color: var(--citrus);
    }

    .button-default:hover .button-icon .top {
        transform: rotate(-45deg) translate(-2px, -2px) scaleY(1.3);
    }
    
    .button-default:hover .button-icon .bottom {
        transform: rotate(45deg) translate(-2px, 2px) scaleY(1.3);
    }

    .button-default:hover .circle path {
        stroke-dashoffset: 0;
    }

    .button-arrow:hover {
        animation: gradientBtn 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
    }
}

@keyframes gradientBtn {
    0% {
      background: radial-gradient(#f8ad61 100%, #e96059 100%);
    }
    25% {
      background: radial-gradient(#f8ad61 50%, #e96059 100%);
    }
    50% {
      background: radial-gradient(#f8ad61 0%, #e96059 100%);
    }
    75% {
      background: radial-gradient(#f8ad61 0%, #e96059 50%);
    }
    100% {
      background: radial-gradient(#f8ad61 0%, #e96059 0%);
    }
  }

/*=============================*/
/*=====----- HASHTAG -----=====*/
/*=============================*/

.hashtag {
    display: flex;
    align-items: center;
    line-height: var(--leading-none);
    color: var(--pool-blue);
}

.hash-start {
    font-family: var(--font-display);
    font-weight: var(--font-weight-bold);
    font-size: 30px;
    letter-spacing: .04rem;
}

.hash-end {
    font-family: var(--font-display-script);
    font-weight: normal;
    font-size: 75px;
    letter-spacing: .06rem;
}

body.mobile-nav-open #divSatisfiChat, 
body.mobile-nav-open #monsido-pageassist,
body.hamburger-open #divSatisfiChat, 
body.hamburger-open #monsido-pageassist {
    display: none !important;
}