﻿.main-title {
    margin: 0px 0px 20px 0px;
    padding: 0px 0px 10px 0px;
    border-bottom: 1px solid var(--primary);
}

.main-title h1 {
    font-size: 2.5em;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1em;
    -webkit-text-stroke-color: #000;
    stroke: #000;
    margin-bottom: 0;
}

.no-results {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    line-height: 1.5;
    margin-top: 30px;
    margin-bottom: 50px
}

.no-results img {
    width: 300px;
    height: auto
}

.no-results button {
    border-radius: var(--rounded-default) !important
}

.no-results button a {
    color: #fff !important
}

.content-only {
    position: relative;
    width: 100%;
    min-width: 100vw;
    height: 100%;
    min-height: 100vh
}

@media(max-width: 767px) {
    .blog-heading-content {
        height: auto !important
    }
}

#site-navigation ul.nav-menu li.menu-item>a {
    font-size: 18px !important;
    text-transform: uppercase
}

ul.nav-menu {
    display: flex !important;
}

.nav-menu>li {
    height: 100%;
    display: inline-flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
}

.header-container .account-btn {
    background: #80a459;
    border: none !important;
    padding: 10px 20px !important
}

.header-container:hover .account-btn {
    background: #000
}

.header-container:hover svg {
    fill: #fff !important
}

.header-mobile {
    height: 70px !important;
    border-bottom: 1px solid var(--border) !important;
}

#event-categories-button {
    background: #fff;
    font-family: Barlow Semi Condensed;
    background-color: #f5f5f5;
    letter-spacing: 0;
    color: #292929
}

#event-categories-button .ui-selectmenu-text {
    font-size: 1em !important
}

#event-categories-button .ui-selectmenu-icon {
    margin-top: 5px
}

#event-categories-menu {
    box-shadow: rgba(0, 0, 0, .2) 0 10px 10px
}

#event-categories-menu .ui-menu-item {
    text-transform: uppercase;
    font-family: Barlow Semi Condensed;
    font-size: 1.2em !important;
    font-weight: 500;
    margin: 3px 0;
    padding: 0;
    border: none
}

#event-categories-menu .ui-menu-item-wrapper {
    padding: 6px 8px
}

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
    margin: 0
}

.ui-selectmenu-menu .ui-menu {
    border-radius: var(--rounded-default)
}

.ui-state-active {
    border: none
}

#event-categories-menu .ui-menu-item .ui-state-active {
    color: #000;
    background: #f5f5f5;
    border: none;
    font-weight: 500
}

#event-categories-button .wpfc-cat-icon {
    height: 1.1em !important;
    width: 2em !important
}

.fc-view-container {
    font-family: Barlow Semi Condensed;
    text-transform: uppercase
}

.ui-widget-header {
    padding: 10px;
    background: #f5f5f5
}

.ui-widget-header span {
    font-size: 1.6em !important;
    font-weight: 500
}

.fc-content .fc-title {
    font-size: 1.2em !important;
    font-weight: 400;
    line-height: 1.1em;
    padding: 5px 8px
}

#swal2-title strong {
    font-weight: 600 !important
}

.elementor-post__badge {
    background: #80a459 !important
}

#menu-menu-cavisto {
    display: flex;
    align-items: center
}

@media(min-width: 993px) {
    .nav-menu .menu-item>.sub-menu {
        max-height: 400px;
        overflow-y: scroll
    }
}

.main-navigation ul.nav-menu>li.menu-item>a::after {
    bottom: -10px !important
}

@media(min-width: 1025px) {
    .header-container {
        position: relative
    }

    #menu-item-17872 {
        position: absolute;
        right: 25px
    }

    #menu-item-17872 a:after {
        content: none !important
    }
}

@media(max-width: 1024px) {
    #menu-item-18108 {
        position: absolute;
        bottom: 30px
    }
}

.blog .post-inner,
.category-actualites .post-inner,
.post-template-default .post-inner {
    border-radius: var(--rounded-default);
    border: 1px solid var(--border)
}

.blog .post-inner .entry-image-attachment,
.category-actualites .post-inner .entry-image-attachment,
.post-template-default .post-inner .entry-image-attachment {
    height: 200px
}

.blog .post-inner .entry-title,
.category-actualites .post-inner .entry-title,
.post-template-default .post-inner .entry-title {
    font-size: 25px !important
}

.blog .post-inner .entry-title a,
.category-actualites .post-inner .entry-title a,
.post-template-default .post-inner .entry-title a {
    font-weight: 500
}

.blog .post-inner .info,
.category-actualites .post-inner .info,
.post-template-default .post-inner .info {
    padding: 0 25px 25px
}

.blog .post-inner .info .read-more-btn,
.category-actualites .post-inner .info .read-more-btn,
.post-template-default .post-inner .info .read-more-btn {
    display: block !important;
    border: none !important;
    background: var(--primary);
    color: #fff;
    margin-left: auto;
    border-radius: var(--rounded-default);
    font-size: 1rem !important;
    text-align: center;
    width: auto
}

.blog .post-inner .info .read-more-btn:hover,
.category-actualites .post-inner .info .read-more-btn:hover,
.post-template-default .post-inner .info .read-more-btn:hover {
    color: #fff !important;
    background: var(--primary-dark)
}

.blog .post-inner .info .read-more-btn:after,
.category-actualites .post-inner .info .read-more-btn:after,
.post-template-default .post-inner .info .read-more-btn:after {
    border: 1px solid var(--primary) !important
}

.blog .post-inner .date,
.category-actualites .post-inner .date,
.post-template-default .post-inner .date {
    top: 10px !important;
    left: 10px !important;
    border-radius: var(--rounded-default)
}

.blog .caston_recent_posts,
.category-actualites .caston_recent_posts,
.post-template-default .caston_recent_posts {
    border-radius: var(--rounded-default);
    border: 1px solid var(--border)
}

.blog .caston-posts-list,
.category-actualites .caston-posts-list,
.post-template-default .caston-posts-list {
    border: none !important
}

.blog .post-item,
.category-actualites .post-item,
.post-template-default .post-item {
    margin: 0 !important;
    padding-bottom: 20px !important
}

.blog .fm-search-form,
.category-actualites .fm-search-form,
.post-template-default .fm-search-form {
    border-radius: var(--rounded-default);
    border: 1px solid var(--border);
    overflow: hidden
}

.blog .caston-breadcrumbs .trail-items .trail-item:not(.trail-end)::after,
.category-actualites .caston-breadcrumbs .trail-items .trail-item:not(.trail-end)::after,
.post-template-default .caston-breadcrumbs .trail-items .trail-item:not(.trail-end)::after {
    margin: 0 8px 2px !important
}

.blog .post-header,
.category-actualites .post-header,
.post-template-default .post-header {
    height: 400px
}

.blog .entry-image-attachment,
.category-actualites .entry-image-attachment,
.post-template-default .entry-image-attachment {
    height: 400px
}

.blog .entry-image-attachment img,
.category-actualites .entry-image-attachment img,
.post-template-default .entry-image-attachment img {
    height: 100% !important;
    object-fit: cover
}

.blog .entry-taxonomy,
.category-actualites .entry-taxonomy,
.post-template-default .entry-taxonomy {
    display: none !important
}

.blog .widget-title,
.category-actualites .widget-title,
.post-template-default .widget-title {
    letter-spacing: 0 !important
}

.caston-posts-list .post-item .post-list-thumb {
    flex: 0 0 60px !important
}

#retour_dexperience {
    margin-top: 60px
}

#retour_dexperience .form-submit p {
    display: flex;
    justify-content: flex-end;
    width: 100%
}

#retour_dexperience_inputs {
    display: none
}

#event_informations {
    margin-top: 10px;
    padding: 20px;
    background-color: var(--slate-50);
    border-radius: var(--rounded-default)
}

.content {
    min-height: 70vh
}

.step-content {
    margin-top: 50px
}

.steps-form {
    table-layout: fixed
}

.steps-form .steps-row {
    border-color: var(--border)
}

.steps-form .steps-row .steps-step {
    position: relative;
    flex-grow: 1
}

.steps-form .steps-row .steps-step p {
    font-weight: 600
}

.steps-form .steps-row .steps-step .btn-circle {
    min-width: unset;
    line-height: 18px !important;
    font-size: 20px !important;
    padding: 11px 15px !important;
    box-shadow: none !important;
    border: 5px solid var(--white);
    box-sizing: border-box
}

.steps-form .steps-row .steps-step .btn-circle:active,
.steps-form .steps-row .steps-step .btn-circle:focus {
    box-shadow: none !important
}

.steps-form .steps-row .steps-step:not(:last-child):after {
    display: block;
    content: "";
    position: absolute;
    height: 2px;
    width: 100%;
    background-color: var(--border);
    z-index: -1;
    left: 50%;
    top: 30%
}

.steps-form .steps-row .steps-step p {
    margin-bottom: 0
}

.steps-form .steps-row:before {
    content: none;
    background-color: var(--border) !important;
    width: 75%;
    left: 50%;
    transform: translateX(-50%)
}

.single-post.event h2 {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
    text-transform: uppercase;
    font-size: 2em;
    font-weight: 500 !important
}

.single-post.event h3 {
    text-transform: uppercase;
    font-size: 2em;
    font-weight: 500 !important;
    border-bottom: #80a459 1px solid;
    padding-bottom: 8px
}

.single-post.event table {
    margin-right: 50px
}

.single-post.event table td {
    vertical-align: top;
}

.single-post.event table tr td {
    font-family: Barlow Semi Condensed;
    font-size: 1em !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important
}

.single-post.event table tr:not(:last-child) {
    border-bottom: 1px solid var(--border)
}

.single-post.event span.note {
    font-size: 1.8em !important;
    border-radius: var(--rounded-default);
    padding: 0;
    margin-bottom: -10px;
    color: #f5cd00
}

.single-post.event .retour {
    background: var(--slate-100);
    font-family: Barlow Semi Condensed;
    padding: 10px 20px;
    font-weight: 400;
    font-size: 1em;
    border: none;
    border-radius: var(--rounded-default);
}

.single-post.event .retour:hover {
    background: #8cb65f;
    color: #fff
}

.single-post.event .retour svg {
    fill: currentColor;
    stroke: currentColor;
}

.em.pixelbones td,
.em.pixelbones th {
    border-bottom: none !important
}

.em-item-meta {
    order: 2 !important
}

@media(max-width: 965px) {
    .em.em-item.em-item-single.size-medium .em-item-header {
        display: flex;
        flex-direction: column
    }

    .em.em-item.em-item-single.size-small .em-item-header {
        display: flex;
        flex-direction: column
    }
}

.em-main-side {
    width: 100%
}

.form-logo-container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center
}

.form-logo {
    width: 150px;
    height: auto;
    margin: 0 auto 20px
}

.login-footer {
    position: absolute;
    bottom: 0px;
    left: 0px;
    right: 0px;
    display: flex;
    -webkit-box-pack: center;
    justify-content: center;
    padding: 15px 0px
}

.login-footer-inner {
    display: flex;
    flex-direction: column;
    -webkit-box-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    align-items: center
}

.back-to-login {
    display: block;
    margin-top: 20px
}

@media(max-width: 540px) {
    .fc-toolbar.fc-header-toolbar {
        display: flex;
        flex-direction: column;
        gap: 14px;
        justify-content: center;
        align-items: center
    }

    .fc-toolbar .fc-left,
    .fc-toolbar .fc-right {
        width: 100%;
        display: flex;
        justify-content: space-between
    }

    .fc-toolbar .fc-right .fc-button-group {
        width: 100%;
        display: flex;
        justify-content: space-between
    }

    .fc-toolbar .fc-right .fc-button-group button {
        width: 100% !important
    }
}

.fc-basicDay-button,
.fc-basicWeek-button,
.fc-prev-button,
.fc-next-button {
    color: #fff !important
}

:root {
    --calendar-row-h: 100px;
    --calendar-row-number: 5
}

.page-template .page-heading-wrap .blog-heading-content {
    height: auto;
    padding-bottom: 0;
    background-color: #fff
}

.page-template #content {
    padding-top: 0
}

.page-template .fc-view-container,
.page-template .fc-view,
.page-template .fc-view table,
.page-template .fc-scroller {
    max-height: calc(var(--calendar-row-number)*var(--calendar-row-h) + 43px)
}

.page-template .fc-view table tbody,
.page-template .fc-scroller {
    max-height: calc(var(--calendar-row-number)*var(--calendar-row-h))
}

.page-template .fc-scroller {
    overflow: scroll !important
}

.page-template .fc-row {
    max-height: var(--calendar-row-h)
}

.page-template .fc-row:nth-child(6) {
    display: none
}

.page-template .fc-toolbar.fc-header-toolbar {
    margin-bottom: 0
}

@media(max-width: 992px) {
    .fc-basic-view .fc-body .fc-row {
        min-height: 7em;
    }

    .fc-scroller {
        height: auto !important;
    }
}

.wpfc-calendar .fc-header-toolbar .fc-center h2 {
    font-size: 2.5em !important;
    text-transform: uppercase;
    font-weight: 600
}

.wpfc-calendar .fc-header-toolbar .fc-today-button {
    background: #f5f5f5;
    opacity: 1;
    font-weight: 600;
    letter-spacing: 0;
    font-family: Barlow Semi Condensed;
    font-size: 1.5em !important;
    margin-left: 5px
}

.wpfc-calendar .fc-prev-button,
.wpfc-calendar .fc-next-button {
    border: #fff 1px solid;
    border-radius: var(--rounded-default)
}

.ui-icon {
    transform: scale(1.5);
    margin-bottom: -3px
}

.wpfc-calendar .fc-prev-button:hover,
.wpfc-calendar .fc-next-button:hover {
    background: #000
}

.wpfc-calendar .ui-button {
    background: #000;
    border: #fff 1px solid;
    font-weight: 600;
    letter-spacing: 0;
    margin-right: 2px;
    font-family: Barlow Semi Condensed;
    font-size: 1.5em !important;
    border-radius: var(--rounded-default)
}

.wpfc-calendar .ui-button.ui-state-active {
    background-color: #f5f5f5;
    margin-right: 3px
}

.wpfc-calendar .ui-button.ui-state-active:hover {
    background-color: var(--slate-200) !important
}

.wpfc-calendar-search .select2-container {
    display: none
}

.wpfc-calendar h2 {
    margin-top: 10px !important
}

.header-element.search_box.button {
    width: 40px !important;
    height: 40px !important
}

.header-element.search_box>a {
    width: 40px !important;
    height: 40px !important;
    background-color: var(--primary) !important;
    justify-content: center;
    border-radius: 50%;
    color: #fff !important
}

.header-element.search_box>a svg {
    width: 16px !important;
    height: 16px !important;
    fill: #fff !important
}

@media(min-width: 1024px) {
    .header-element.search_box.button {
        margin-right: 60px
    }
}

.modal-content {
    position: fixed;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    background-color: var(--body) !important;
    color: var(--text);
    padding: 20px !important;
    width: 90% !important;
    min-width: 350px !important;
    max-width: 768px !important;
    max-height: calc(100vh - 150px) !important;
    height: auto !important;
    border-radius: var(--rounded-default) !important
}

.modal-header button.close {
    margin: -20px -20px 0 auto !important
}

.modal-title {
    font-size: 28px !important
}

.search_text_input {
    opacity: 1 !important;
    padding: 10px !important;
    border-radius: var(--rounded-default) !important;
    background-color: var(--neutral-100) !important;
    border: 1px solid var(--border) !important
}

.search_form_content {
    transition: none !important;
    padding: 0 !important;
    margin-top: 20px
}

#fm-search-modal .search_form_content .fm-search-form button[type=submit] {
    margin-right: 20px
}

.breadcrumb {
    margin-bottom: 20px;
    list-style: none
}

.breadcrumb>li {
    display: inline-block
}

.breadcrumb>li+li:before {
    padding: 0px 4px;
    color: #ccc;
    content: "/"
}

.breadcrumb>.active {
    color: #777
}

:root {
    --form-control-disabled: #959495;
}

.form-display {
    font-family: system-ui, sans-serif;
    font-size: 1rem;
    line-height: 1.1;
    display: inline-grid;
    ;
    width: auto;
    grid-template-columns: 1em auto;
    gap: 0;
    padding: 5px 0;
}

.form-display--disabled {
    color: var(--form-control-disabled);
    cursor: not-allowed;
}

.em.em-item.em-item-single .em-item-meta {
    align-self: flex-start;
}

.blog_category_list_wrap {
    display: none
}

.comment-navigation a,
.posts-navigation a,
.post-navigation a {
    font-weight: 400 !important;
}

.nav-post-title {
    font-weight: 600 !important;
}

.nav-previous,
.nav-next {
    padding-left: 5px !important;
    padding-right: 5px !important;
}

@media(max-width: 992px) {
    .post-navigation-arrows {
        display: block;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
    }

    .nav-previous,
    .nav-next {
        position: relative;
        padding-bottom: 30px !important;
    }
}

.site-content {
    overflow-x: visible !important;
    overflow-y: visible !important;
}

.em-notice {
    position: relative;
    display: flex;
    background-color: #161618;
    transition: box-shadow 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
    border-radius: 4px !important;
    box-shadow: none;
    font-size: 1rem;
    line-height: 1.5;
    letter-spacing: 0 !important;
    background-color: rgb(253, 237, 237);
    padding: 6px 16px;
    overflow: hidden;
    margin-bottom: 20px;
    backdrop-filter: blur(10px);
    transform-style: preserve-3d;
    color: var(--danger-color);
    background-color: rgba(var(--danger-rgb), 0.5);
}

.em-notice p {
    margin-bottom: 0 !important;
    color: var(--danger-color);
}

.ui-em_timepicker-wrapper {
    z-index: 100000;
}

#mobile-header-canvas .offcanvas-content .mobile-header-screen-inner .mobile-navigation ul.menu li .sub-menu li {
    padding: 8px 0 !important;
}

.search-page .page-heading-wrap {
    display: none;
}