/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
:root {
    --transition: 300ms ease-in-out;
    --Couleurssaule500: #1D6C54;
    --white: #fff;
    --bg1: #FFFBF6;
    --cool-grey: #EBEBEB;
    --grey: #F9F9F9;
    --body: #151515;
    --black: #000;
    --blue: #194556;
    --reditsans: "Reddit Sans";
    --lora: "Lora";
    --outfit: "Outfit";
    --orange: #DE6B50;
    /* Radius */
    --radius_sm: 8px;
    --radius_l: 20px;
    --radius_m: 12px;
    /* Spacing */
    --spacing_s: 16px;
    --spacing_xs: 8px;
    --spacing_m: 8px;
    --spacing_sm: 24px;
    /* font-weight */
    --medium: 500;
    --semibold: 600;
    --regular: 400;
    --bold: 700;
}

b,
strong {
    font-weight: 600;
}

body {
    color: var(--body);
    line-height: 1.4;
    font-size: 16px;
}

.elementor-widget-text-editor p:last-child,
p:last-child {
    margin-bottom: 0;
    margin-block-end: 0;
}

.elementor-widget-text-editor p:not(:last-child),
p:not(:last-child) {
    margin-block-end: 1.5rem;
}

div.elementor-element.home_hero_slider div.swiper-wrapper div.swiper-slide div.elementor-element::before {
    background: radial-gradient(29.05% 85.75% at 50% 50%, rgba(12, 35, 28, 0.3) 0%, rgba(13, 39, 31, 0.3) 51.92%, rgba(33, 61, 53, 0.3) 100%)
        /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */
    ;
}

.riverly-main-slider .slick-dots li,
.riv-accordion-slider .slick-dots li,
.blog-teaser-grid .slick-dots li {
    width: auto;
    height: auto;
}

.riverly-main-slider .slick-dots li,
.riv-accordion-slider .slick-dots li {
    margin: 0 2px;
}

.riverly-main-slider .slick-dots li button,
.riv-accordion-slider .slick-dots li button,
.blog-teaser-grid .slick-dots li button,
div.elementor-element.home_hero_slider div.swiper-pagination span.swiper-pagination-bullet {
    opacity: 1;
    transition: var(--transition);
    border-radius: 64px;
    position: relative;
    overflow: hidden;
}

.riverly-main-slider .slick-dots li button,
.riv-accordion-slider .slick-dots li button,
.blog-teaser-grid .slick-dots li button {
    width: 8px;
    height: 8px;
    padding: 0;
    background-color: var(--cool-grey);
}

.blog-teaser-grid .slick-dots {
    position: static;
    margin-top: 20px;
}

.riv-accordion-slider .slick-dots li button::before,
.blog-teaser-grid .slick-dots li button::before,
div.elementor-element.home_hero_slider div.swiper-pagination span.swiper-pagination-bullet::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--Couleurssaule500);
    transform: translateX(-100%);
    border-radius: 64px;
    opacity: 1;
}

.riv-accordion-slider .slick-dots li.slick-active button,
.blog-teaser-grid .slick-dots li.slick-active button,
div.elementor-element.home_hero_slider div.swiper-pagination span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 65px;
}

.riv-accordion-slider .slick-dots li.slick-active button::before,
.blog-teaser-grid .slick-dots li.slick-active button::before,
div.elementor-element.home_hero_slider div.swiper-pagination span.swiper-pagination-bullet.swiper-pagination-bullet-active::before {
    transform: translateX(0);
    transition: 5500ms ease-in-out;
    opacity: 1;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-text {
    display: flex;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-text img {
    margin-left: -10px;
    width: 63px;
    margin-top: -10px;
    margin-bottom: -10px;
}

.riverly-main-slider .slick-dots {
    bottom: 16px;
}

div.riverly-main-slider.slick-slider {
    margin: 0;
}

.riverly-main-slider .slick-dots li.slick-active button {
    background-color: var(--white);
}

div.faq_accordion.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

div.faq_accordion.elementor-widget-n-accordion .e-n-accordion-item {
    border-radius: var(--radius_sm);
}

/* Less Offer slider 
====================================== */
body:not(.elementor-editor-active) .elementor div.elementor-element.les_offer_slider.slick-slider {
    display: block;
}

div.custom__slider,
div.custom__slider .elementor-widget,
div.les_offer_slider .elementor-widget,
.favorites_slider .elementor-widget,
.boat-cruise-cards-wrapper.slick-slider,
body:not(.elementor-editor-active) .elementor div.elementor-element.les_offer_slider.slick-slider,
.tab-content-grids.slick-slider,
.tab-content-grid.slick-slider,
div.river_slider .elementor-widget {
    position: static;
}

body:not(.elementor-editor-active) .elementor div.elementor-element.les_offer_slider.slick-slider .slick-slide {
    display: grid;
}

.offer-cards-container .slick-list,
.boat-cruise-cards-wrapper.slick-slider .slick-list {
    margin: 0 -12px;
}

.boats-grid .slick-list .slick-slide,
.offer-cards-container .slick-list .offer-card,
.boat-cruise-cards-wrapper.slick-slider .slick-slide,
body:not(.elementor-editor-active) .elementor div.elementor-element.les_offer_slider.slick-slider .slick-slide,
.tab-content-grids.slick-slider .slick-list .slick-slide,
.tab-content-grid.slick-slider .slick-list .slick-slide {
    margin: 0 12px;
}

.offer-cards-container .slick-list .slick-slide.slick-current~.slick-slide,
.offer-cards-container .slick-list .slick-slide.slick-current,
body:not(.elementor-editor-active) .elementor div.elementor-element.les_offer_slider.slick-slider .slick-slide.slick-current~.slick-slide,
body:not(.elementor-editor-active) .elementor div.elementor-element.les_offer_slider.slick-slider .slick-slide.slick-current {
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.25);
}

.boats-grid .slick-list,
.offer-cards-container .slick-list,
.tab-content-grids.slick-slider .slick-list,
.tab-content-grid.slick-slider .slick-list,
.elementor div.elementor-element.les_offer_slider.slick-slider .slick-list {
    overflow: visible;
    margin: 0 -12px;
}

.boats-grid .slick-list::before,
.offer-cards-container .slick-list::before,
.tab-content-grids.slick-slider .slick-list::before,
.tab-content-grid.slick-slider .slick-list::before,
.elementor div.elementor-element.les_offer_slider.slick-slider .slick-list::before {
    content: "";
    position: absolute;
    top: -20px;
    bottom: -20px;
    right: calc(100% + 10px);
    background-color: var(--white);
    z-index: 22;
    width: 100vw;
}

.boat-cruise-cards-wrapper.slick-slider .slick-arrow,
.tab-content-grids.slick-slider .slick-arrow,
.tab-content-grid.slick-slider .slick-arrow,
.elementor div.elementor-element.les_offer_slider.slick-slider .slick-arrow {
    width: 48px;
    height: 48px;
    border-radius: 99px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0;
    padding: 0;
    transition: var(--transition);
    z-index: 55;
    background-color: transparent;
    border: none;
    top: calc(50% + 70px);
    transform: translateY(calc(50% - 70px));
}

.boat-cruise-cards-wrapper.slick-slider .slick-arrow:hover,
.tab-content-grids.slick-slider .slick-arrow:hover,
.tab-content-grid.slick-slider .slick-arrow:hover,
.elementor div.elementor-element.les_offer_slider.slick-slider .slick-arrow:hover {
    background-color: var(--white);
}

.boat-cruise-cards-wrapper.slick-slider .slick-arrow::before,
.tab-content-grids.slick-slider .slick-arrow::before,
.tab-content-grid.slick-slider .slick-arrow::before,
.elementor div.elementor-element.les_offer_slider.slick-slider .slick-arrow::before {
    content: "";
    background-image: url(./img/arrow_grey.svg);
    width: 20px;
    height: 20px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    transition: var(--transition);
}

.boat-cruise-cards-wrapper.slick-slider .slick-arrow.slick-next::before,
.tab-content-grids.slick-slider .slick-arrow.slick-next::before,
.tab-content-grid.slick-slider .slick-arrow.slick-next::before,
.elementor div.elementor-element.les_offer_slider.slick-slider .slick-arrow.slick-next::before {
    background-image: url(./img/right_black_arrow.svg);
}

.boat-cruise-cards-wrapper.slick-slider .slick-arrow.slick-next,
.tab-content-grid.slick-slider .slick-arrow.slick-next,
.tab-content-grids.slick-slider .slick-arrow.slick-next,
.elementor div.elementor-element.les_offer_slider.slick-slider .slick-arrow.slick-next {
    right: 0;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    background-color: var(--white);
}

.boat-cruise-cards-wrapper.slick-slider .slick-arrow.slick-prev,
.tab-content-grid.slick-slider .slick-arrow.slick-prev,
.tab-content-grids.slick-slider .slick-arrow.slick-prev,
.elementor div.elementor-element.les_offer_slider.slick-slider .slick-arrow.slick-prev {
    left: 0;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

/* Boat rentla list
=============================== */
.destinations-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 32px;
}

div.boat-people-image,
div.image-column-inner,
div.unmissable-image-wrapper,
div.image-slider-wrapper,
div.riv-accordion-slider .slick-slide>div,
div.image-wrapper,
div.image-badge-wrapper,
.teaser-card a.teaser-thumb,
div.hover-right-image,
div.riv-card-image,
div.tab-content-image-wrapper,
.card-image {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 80%;
}

.card-image {
    border-radius: 20px;
}

.card-image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 1;
    background: linear-gradient(180deg, rgba(21, 21, 21, 0) 0%, rgba(21, 21, 21, 0.4) 77.4%);
    opacity: 0.7;
    transition: var(--transition);
}

.card-image:hover:before {
    opacity: 0;
}

div.boat-people-image img,
div.video-teaser-thumbnail-wrapper img,
div.image-column-inner img,
div.unmissable-image-wrapper img,
div.image-slider-wrapper img,
div.riv-accordion-slider .slick-slide>div img,
div.image-wrapper img,
div.image-badge-wrapper img,
.teaser-card a.teaser-thumb img,
div.hover-right-image img,
div.riv-card-image img,
div.tab-content-image-wrapper img,
div.card-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: var(--transition);
}

div.hover-right-image img {
    transition: none;
}

div.boat-people-image:hover img,
.teaser-card a.teaser-thumb:hover img,
div.card-image:hover img {
    transform: scale(1.1);
}

body div .card-title {
    color: white;
    padding: 10px;
    font-size: 16px;
    font-weight: var(--medium);
    gap: 8px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 22;
    margin: 0;
}

.riv-card-location,
.tab-title-image-wrapper,
.content-btn,
.riverly-destinations-grid .destinations-main-title,
.card-title,
div.read-more-wrapper button {
    display: flex;
    align-items: center;
    justify-content: center;
}

.destination-card,
.destination-cards {
    position: relative;
}

body .elementor-widget-n-menu div.e-n-menu-content:not(.e-active),
.hidden-items,
.hidden-item {
    display: none;
}

.read-more-wrapper {
    text-align: center;
    margin-top: 20px;
}

div.read-more-wrapper button {
    padding: 0;
    border: none;
    border-radius: 0;
    background-color: transparent;
    color: #15151566;
    gap: 10px;
    padding-bottom: 5px;
    margin-inline: auto;
}

div.read-more-wrapper button:hover {
    border-width: 0;
}

.riverly-destinations-grid .destinations-main-title {
    justify-content: flex-start;
    font-weight: var(--regular);
    margin: 0 0 10px;
    gap: 8px;
}

.riverly-destinations-grid .destinations-main-title svg {
    width: 12px;
    height: 12px;
}

.scrollable_div::-webkit-scrollbar {
    display: none;
}

.riverly-destinations-grid:not(:has(.read-more-wrapper)) {
    margin-bottom: 32px;
}

/* river cruises slider 
================================= */
.boat-cruise-card,
.tab-content-wrapper {
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid #1515151A;
}

.tab-content-wrapper {
    background-color: var(--bg1);
    border: none;
}

.riv-card-content,
.tab-meta-wrapper {
    background-color: var(--bg1);
    padding: 16px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}

.tab-meta-wrapper {
    display: flex;
    flex-direction: column;
    gap: 8px;
    height: 100%;
}

div.tab-meta-wrapper h3 {
    margin: 0;
    font-size: 24px;
    font-weight: 500;
}

.tab-meta-wrapper .content-btn {
    padding: 16px 0 0;
    color: var(--Couleurssaule500);
    font-weight: var(--medium);
    gap: 8px;
    border-top: 1px solid var(--cool-grey);
    margin-top: auto;
}

.tab-meta-wrapper p {
    margin-block-end: 0.5rem;
}

.riv-card-location,
.tab-title-image-wrapper {
    gap: 5px;
    margin-bottom: 3px;
    justify-content: flex-start;
}

div.riv-card-location img,
div.tab-title-image-wrapper img {
    width: 15px;
    border-radius: 3px;
}

div.riv-card-content h3 {
    color: #052F33;
    margin: 0 0 15px;
    font-size: 24px;
    font-weight: 500;
}

.riv-card-location span,
.tab-title-image-wrapper span {
    font-size: 16px;
    font-weight: var(--medium);
    color: var(--body);
}

.tab-content-grids.slick-slider .slick-list,
.tab-content-grid.slick-slider .slick-list {
    padding-right: 120px;
}

div.tab-content-image-wrapper {
    padding-bottom: 72%;
    margin: -16px -16px 8px;
}

.tab-content-grids.slick-slider .slick-list::before,
.tab-content-grid.slick-slider .slick-list::before {
    background-color: #4a8976;
}

.tab-content-grids.slick-slider .slick-arrow,
.tab-content-grid.slick-slider .slick-arrow {
    background-color: rgba(255, 255, 255, 0.2);
}

.tab-content-grids.slick-slider .slick-arrow.slick-prev::before,
.tab-content-grids.slick-slider .slick-arrow.slick-next::before,
.tab-content-grid.slick-slider .slick-arrow.slick-prev::before,
.tab-content-grid.slick-slider .slick-arrow.slick-next::before {
    background-image: url(./img/arrow_right_green.svg);
    width: 30px;
    height: 30px;
}

.tab-content-grids.slick-slider .slick-arrow.slick-prev::before,
.tab-content-grid.slick-slider .slick-arrow.slick-prev::before {
    background-image: url(./img/arrow_left_green.svg);
    opacity: 0.2;
}

.custom-tabs ul {
    margin: 0 0 24px;
    padding: 0;
    list-style: none;
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    padding-right: 260px;
}

.custom-tabs ul li {
    display: block;
    border: 1px solid #FBFBFB80;
    border-radius: 30px;
    padding: 6px 16px;
    color: var(--white);
    transition: var(--transition);
    cursor: pointer;
    min-width: fit-content;
}

.custom-tabs ul li:hover,
.custom-tabs ul li.active {
    background-color: var(--white);
    color: var(--Couleurssaule500);
}

.tab-pane {
    display: none;
}

.tab-pane.active {
    display: block;
}

/* Current favorites slider
========================================== */
.riv-card-content {
    background-color: var(--white);
    display: flex;
    flex-direction: column;
    height: calc(100% - 200px);
}

.boat-card .riv-card-content {
    background-color: var(--bg1);
}

.starting_price {
    font-size: 16px;
    font-weight: var(--medium);
    color: var(--Couleurssaule500);
    text-align: center;
    margin-bottom: 12px;
}

.boat-cruise-cards-wrapper .riv-card-content {
    background-color: var(--white);
}

.cruise-grid a.btn-discover.elementor-button,
.boat-cruise-cards-wrapper a.btn-discover.elementor-button {
    padding: 8px;
}

div.riv-card-image {
    padding-bottom: 0;
    height: 200px;
}

.riv-card-details {
    display: grid;
    gap: 10px;
    margin-bottom: 16px;
    margin-top: auto;
    grid-template-columns: repeat(2, 1fr);
}

.riv-card-details>div:nth-child(even) {
    text-align: right;
}

.riv-detail-row {
    color: #0E4D46;
    font-size: 14px;
    font-weight: var(--medium);
}

.boat-card .riv-detail-row {
    color: var(--blue);
    display: flex;
    align-items: center;
    gap: 3px;
}

.boat-card .riv-detail-row * {
    display: block;
}

.riv-card-price {
    text-align: center;
    margin-bottom: 16px;
    color: var(--Couleurssaule500);
    font-weight: var(--medium);
}

.page-offer-container .offer-content .offer-btn,
a.btn-discover.elementor-button {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: auto;
}

.boat-grid a.btn-discover.elementor-button {
    background-color: var(--blue);
    border-color: var(--blue);
    padding: 16px;
}

.boat-grid a.btn-discover.elementor-button:hover,
.boat-grid a.btn-discover.elementor-button:focus {
    background-color: transparent;
    color: var(--blue);
}

.boat-grid a.btn-discover.elementor-button:hover svg path,
.boat-grid a.btn-discover.elementor-button:focus svg path {
    fill: var(--blue);
}

a.btn-discover.elementor-button:hover svg path {
    fill: var(--Couleurssaule500);
}

a.btn-discover.elementor-button:hover {
    color: var(--Couleurssaule500);
}

.slick-slider .slick-track {
    display: flex;
}

.slick-slider .slick-track .slick-slide {
    height: auto;
    display: flex;
    flex-direction: column;
}

.boat-cruise-cards-wrapper.slick-slider .slick-arrow.slick-next,
.boat-cruise-cards-wrapper.slick-slider .slick-arrow {
    background-color: #1515151A;
}

.boat-cruise-cards-wrapper.slick-slider .slick-arrow.slick-next:hover,
.boat-cruise-cards-wrapper.slick-slider .slick-arrow:hover {
    background-color: var(--Couleurssaule500);
}

.destination_single_boat_slider .custom-control-wrapper>div {
    background-color: var(--Couleurssaule500);
}

.trip-boat-slider .custom-control-wrapper>div.disabled,
.destination_single_boat_slider .custom-control-wrapper>div.disabled {
    background-color: #1515151A;
}

.destination_single_boat_slider .custom-control-wrapper>div svg path {
    fill: var(--white);
}

.destination_single_boat_slider .custom-control-wrapper>div.disabled svg path {
    fill: #15151533;
}

.trip-boat-slider .custom-control-wrapper>div {
    background-color: var(--blue);
}

.trip-boat-slider .custom-control-wrapper>div svg path {
    fill: var(--white);
}

.trip-boat-slider .custom-control-wrapper>div.disabled svg path {
    background-color: #15151533;
}

/* Content hover section
====================================== */
.simple-hover-widget {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
}

.content-item {
    background-color: var(--bg1);
    border: 1px solid #1515151A;
    border-radius: 4px;
    padding: 32px;
    font-size: 14px;
    transition: var(--transition);
}

.content-item:not(:last-child) {
    margin-bottom: 16px;
}

.content-item.active {
    background-color: #0C293D;
    color: var(--white);
}

div.hover-right-image {
    border-radius: 4px;
    height: auto;
    padding-bottom: 20%;
}

div.hover-right-image h4 {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 22;
    display: flex;
    gap: 20px;
    align-items: center;
    justify-content: center;
    color: var(--white);
    font-family: "Lora";
    margin: 0;
    padding: 20px;
    font-weight: var(--regular);
    font-size: 16px;
}

div.hover-right-image h4::before,
div.hover-right-image h4::after {
    content: "";
    width: 25px;
    height: 1px;
    background-color: var(--white);
}

/* latest posts
=========================================== */
.blog-teaser-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.teaser-card a.teaser-thumb {
    display: block;
    border-radius: 20px;
    padding-bottom: 60%;
    margin-bottom: 16px;
}

.teaser-meta {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 18px;
    justify-content: space-between;
}

.related-blog-teaser .teaser-meta {
    justify-content: flex-start;
    gap: 15px;
}

.related-blog-teaser .teaser-meta h4 {
    margin: 0;
}

.teaser-meta .teaser-date {
    margin-left: auto;
}

.teaser-meta .author-name {
    color: var(--white);
    display: flex;
    align-items: center;
    gap: 6px;
}

.teaser-meta .author-name svg {
    margin-bottom: -3px;
}

div.teaser-meta img {
    width: 32px;
    height: 32px;
    object-fit: cover;
    border-radius: 99px;
}

.teaser-card a.teaser-link {
    color: var(--Couleurssaule500);
    font-size: 18px;
    display: inline-block;
    margin-top: 8px;
    width: fit-content;
}

.teaser-card a.teaser-link svg {
    margin-left: 8px;
    width: 12px;
    height: 12px;
}

.destination_river .tab-content-grids.slick-slider .slick-list::before,
.destination_river .tab-content-grid.slick-slider .slick-list::before {
    background-color: var(--Couleurssaule500);
}

/* Les Offer Slider */
.offer-cards-container .slick-list .offer-card {
    padding: 8px;
    border-radius: var(--radius_sm);
    background-color: var(--grey);
    display: grid;
    grid-template-columns: 244px 1fr;
}

.offer-cards-container .slick-list .offer-card .offer-content {
    padding: 16px 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.offer-cards-container .slick-list .offer-card .offer-content>* {
    margin: 0;
}

.single-country .elementor-heading-title span,
.offer-cards-container .slick-list .offer-card .offer-content>h4 span {
    color: var(--Couleurssaule500);
}

.offer-cards-container .slick-list .offer-card .offer-content>.offer-btn {
    margin-top: auto;
    padding: 11px 24px;
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
}

.offer-cards-container .slick-list .offer-card:not(.slick-current) .offer-content>.offer-btn {
    background-color: var(--blue);
    border-color: var(--blue);
}

.offer-cards-container .slick-list .offer-card:not(.slick-current) .offer-content>.offer-btn:hover {
    background-color: transparent;
    color: var(--blue);
    border-color: var(--blue);
}

.offer-cards-container .slick-list .offer-card:not(.slick-current) .offer-content>.offer-btn:hover svg path {
    fill: var(--blue);
}

.offer-cards-container .slick-list .offer-card .offer-content>.offer-btn:hover svg path {
    fill: var(--Couleurssaule500);
}

.offer-image {
    position: relative;
    border-radius: var(--radius_sm);
}

div.offer-image img {
    width: 100%;
    height: auto;
    border-radius: var(--radius_sm);
}

.offer-cards-container .slick-list {
    padding-right: 8rem;
}

.custom-control-wrapper>div {
    position: absolute;
    top: calc(50% + 90px);
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    background-color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 99px;
    z-index: 55;
    cursor: pointer;
}

.riverly-main-slider+.custom-slider-controls .custom-control-wrapper>div {
    top: 50%;
}

.single-destination .boat-cruise-cards-wrapper+.custom-slider-controls .custom-control-wrapper>div,
.offer-cards-container+.custom-slider-controls .custom-control-wrapper>div {
    top: calc(50% + 35px);
}

.custom-tabs .custom-control-wrapper>div {
    top: calc(50% + 50px);
}

.custom-control-wrapper>div svg path {
    transition: var(--transition);
    fill-opacity: 1;
}

.single-boat .custom-control-wrapper>div svg path {
    stroke: var(--blue);
}

.custom-control-wrapper>div.disabled {
    cursor: auto;
}

.custom-control-wrapper>div.disabled {
    background-color: rgba(255, 255, 255, 0.2);
}

.custom-control-wrapper>div.disabled svg path {
    fill-opacity: 0.2;
}

.custom-control-wrapper>div.custom-prev {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    left: 0;
}

.custom-control-wrapper>div.custom-next {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    right: 0;
}

.riverly-top-bar-left,
.news-card.is-hidden,
.is-hidden {
    display: none;
}

/* Discover licensed boat slider 
================================================*/
.boats-grid .boat-card {
    background: var(--bg1);
    padding: var(--spacing_s);
    border-radius: var(--radius_l);
}

.boats-wrapper a.btn-discover.elementor-button {
    background-color: var(--blue);
    border-color: var(--blue);
}

.boats-wrapper a.btn-discover.elementor-button:focus,
.boats-wrapper a.btn-discover.elementor-button:hover {
    background-color: transparent;
    color: var(--blue);
}

.boats-wrapper a.btn-discover.elementor-button:hover svg path {
    fill: var(--blue);
}

.boats-grid .slick-list::before {
    background-color: var(--blue);
}

div.image-badge-wrapper {
    margin: -16px -16px 16px;
    padding-bottom: 55%;
}

.boat-badge {
    position: absolute;
    top: 8px;
    left: 8px;
    background-color: #15151533;
    backdrop-filter: blur(8px);
    padding: var(--spacing_xs);
    border-radius: var(--radius_sm);
    font-size: 12px;
    text-transform: uppercase;
    color: var(--white);
    z-index: 22;
}

.boats-grid .slick-list .slick-slide {
    overflow: hidden;
}

.boat-meta-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.single-boat .boat-meta-wrapper {
    display: grid;
    column-gap: 20px;
    grid-template-columns: repeat(2, 1fr);
}

.tp-stars.tp-stars--4.tp-stars--4--half>div {
    padding-bottom: 8% !important;
    text-align: left !important;
}

.tp-widget-stars {
    width: 45% !important;
}

.trustpilot-widget {
    transform: scale(0.8);
}

.boat-card h4 {
    margin: 0 0 8px;
}

.boat-card p,
.boat-meta-wrapper span,
.boat-card h4 {
    color: var(--blue);
}

.boat-meta-wrapper span {
    font-weight: var(--medium);
    font-size: 14px;
    padding: 6px 4px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.boat-card p {
    text-align: center;
    font-weight: var(--medium);
    font-size: 16px;
    margin: 24px 0 16px;
}

.top-tab-wrapper {
    display: flex;
    margin-bottom: 24px;
    flex-wrap: wrap;
    gap: 64px;
}

.top-tab-wrapper>div {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.top-tab-wrapper .our-boat-button {
    color: var(--white);
    display: flex;
    align-items: center;
    gap: 20px;
    padding-bottom: 4px;
    font-size: 18px;
    transition: var(--transition);
}

.top-tab-wrapper .our-boat-button:hover {
    color: var(--white);
}

.top-tab-wrapper>div button:focus,
.top-tab-wrapper>div button {
    background-color: transparent;
    color: var(--white);
    border: 1px solid #FBFBFB80;
    padding: 10px 16px;
    border-radius: 99px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.top-tab-wrapper>div button img {
    width: 43px;
}

.top-tab-wrapper>div button.active,
.top-tab-wrapper>div button:hover {
    background-color: var(--white);
    color: var(--blue);
}

.boats-grid .slick-list {
    padding-right: 2rem;
}

.mobile-version {
    display: none;
}

div.elementor-element.hidden_section {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: opacity 0.25s ease, max-height 0.4s ease;
}

div.elementor-element.hidden_section.is-open {
    display: flex;
    max-height: 1200px;
    opacity: 1;
}

/* Home tab form
=============================================== */
.rs-tab-content {
    display: none;
}

.rs-tab-content.active {
    display: block;
}

.riv-filters,
form.rs-search-form {
    display: flex;
    align-items: center;
    gap: 32px;
}

.riv-filters>*,
form.rs-search-form>* {
    flex: 1;
}

.riv-search-wrapper .riv-filters>* {
    flex: none;
    width: calc(20% - 19.2px);
}

.search-filter-section .rs-field input,
form.rs-search-form select,
form.rs-search-form input {
    border-radius: 0;
    border: none;
    outline: none;
    text-align: left;
    padding-inline: 0;
    padding: 4.5px 0;
    height: 34px;
}

form.rs-search-form input::placeholder,
.search-filter-section .rs-field input,
.search-filter-section .rs-field input::placeholder,
body .select2-container--default .select2-selection--single,
form.rs-search-form select,
form.rs-search-form input,
body .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: rgba(5, 47, 51, 1);
}

.date-field {
    position: relative;
}

body .select2-container--default .select2-selection--single {
    border: none;
    border-radius: 0;
    background-color: transparent;
}

.search-filter-section .rs-field input,
form.rs-search-form select,
form.rs-search-form input,
body .select2-container--default .select2-selection--single {
    border-bottom: 1px solid rgba(5, 47, 51, 0.5);
}

body .select2-container--default .select2-selection--multiple .select2-selection__rendered,
body .select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 34px;
    padding-left: 0;
}

body .select2-container--default .select2-selection--multiple .select2-selection__rendered {
    line-height: normal;
}

body .select2-container--default .select2-selection--single,
body .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 34px;
}

body .select2-container--default .select2-selection--single .select2-selection__arrow {
    width: 10px;
}

body .select2-container--default .select2-selection--multiple .select2-selection__rendered::before,
.date-field::before,
body .select2-container--default .select2-selection--single .select2-selection__arrow::before {
    content: "";
    top: 50%;
    transform: translateY(-50%);
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 10px;
    height: 10px;
    background-image: url(./img/black_down_arrow.svg);
    opacity: 0.5;
}

body .select2-container--default .select2-selection--multiple .select2-selection__rendered::before {
    right: 0;
}

.flatpickr-input[readonly] {
    position: relative;
    background-color: transparent;
}

body .flatpickr-calendar.open {
    z-index: 99999;
}

.date-field::before {
    position: absolute;
    top: auto;
    transform: none;
    right: 0;
    bottom: 10px;
}

body .mobile-select-wrapper .select2-container--default .select2-selection--single .select2-selection__arrow::before {
    opacity: 1;
}

body .select2-container--default .select2-selection--single .select2-selection__arrow b {
    display: none;
}

.rs-tab-content-wrapper {
    padding: 24px 32px;
    background: var(--white);
    box-shadow: 0px 4px 20px 0px #00000026;
    border-radius: 4px;
    border-top-left-radius: 0;
}

.rs-tab-content-wrapper label {
    font-size: 16px;
    font-weight: var(--medium);
    color: #052F33;
    margin-bottom: 8px;
}

.rs-tab-content-wrapper .rs-tab-content:nth-child(2) label {
    color: var(--blue);
}

body div label {
    display: block;
    margin-bottom: 10px;
}

body .select2-results__option {
    padding: 8px 16px;
    background-color: #F9F9F9;
    border-radius: 8px;
    color: #041529;
    line-height: 1;
}

body .select2-results__option:not(:last-child) {
    margin-bottom: 8px;
}

.riverly-search-box .rs-tabs>button,
.rs-tab-content-wrapper button[type="submit"] {
    padding: 16px;
    font-weight: var(--regular);
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    border-radius: 4px;
}

.rs-tab-content-wrapper button[type="submit"] {
    font-size: 18px;
    box-shadow: 0px 0px 20px 0px #00000073;
    gap: 20px;
    max-width: fit-content;
    padding: 17.5px 16px;
}

.rs-tab-content-wrapper button[type="submit"]:focus svg path,
.rs-tab-content-wrapper button[type="submit"]:hover svg path {
    fill: var(--Couleurssaule500);
}

.riverly-search-box .rs-tabs>button {
    border-radius: 0;
    background-color: #1D6C5466;
    backdrop-filter: blur(10px);
    transition: var(--transition);
    border: none;
}

.elementor-button .elementor-button-icon svg {
    width: 10px;
    height: 10px;
    margin-bottom: -3px;
}

.button_outline svg,
.page-offer-container .offer-content .offer-btn svg,
.trips_custom_button svg,
div.testimonial-content a svg,
.content-wrapper .riv-link svg,
.tab-meta-wrapper .content-btn svg,
.rs-tab-content-wrapper button[type="submit"] svg,
.offer-cards-container .slick-list .offer-card .offer-content>.offer-btn svg,
.teaser-card a.teaser-link svg,
.top-tab-wrapper .our-boat-button svg,
.elementor-button .elementor-button-icon svg,
a.btn-discover.elementor-button svg {
    transition: var(--transition);
    position: relative;
    right: 0;
}

.button_outline:hover svg,
.page-offer-container .offer-content .offer-btn:hover svg,
.trips_custom_button:hover svg,
div.testimonial-content a:hover svg,
.content-wrapper .riv-link:hover svg,
.tab-meta-wrapper .content-btn:hover svg,
.rs-tab-content-wrapper button[type="submit"]:hover svg,
.offer-cards-container .slick-list .offer-card .offer-content>.offer-btn:hover svg,
.teaser-card a.teaser-link:hover svg,
.top-tab-wrapper .our-boat-button:hover svg,
a.btn-discover.elementor-button:hover svg,
.elementor-button:hover .elementor-button-icon svg {
    right: -6px
}

header .elementor-button .elementor-button-icon svg {
    position: static;
    right: auto;
}

.page-offer-container .offer-content .offer-btn svg path,
.trips_custom_button:hover svg path,
body .elementor .elementor-element.trips_custom_button *,
.elementor-button .elementor-button-icon svg path {
    transition: var(--transition);
}

body .elementor .elementor-element.trips_custom_button:hover * {
    color: var(--Couleurssaule500);
}

.page-offer-container .offer-content .offer-btn:hover svg path,
.trips_custom_button:hover svg path,
.border_arrow_light_green .elementor-button .elementor-button-icon svg path {
    fill: var(--Couleurssaule500);
}

.elementor-button:hover .elementor-button-icon svg path {
    fill: var(--Couleurssaule500);
}

div.elementor-element.faq_border.blue_border .elementor-button:hover svg path,
.blue_button .elementor-button:hover .elementor-button-icon svg path {
    fill: var(--blue);
}

.orange_button .elementor-button:hover .elementor-button-icon svg path,
.pink_border .elementor-button:hover .elementor-button-icon svg path {
    fill: var(--orange);
}

.grey_button .elementor-button:hover .elementor-button-icon svg path {
    fill: var(--bg1);
}

.white_button .elementor-button:hover .elementor-button-icon svg path {
    stroke: var(--white);
}

.white_border .elementor-button:hover .elementor-button-icon svg path,
.button_pink .elementor-button:hover .elementor-button-icon svg path {
    fill: var(--white);
}

.riverly-search-box .rs-tabs>button:first-child {
    border-top-left-radius: 4px;
}

.riverly-search-box .rs-tabs>button:nth-child(2) {
    border-top-right-radius: 4px;
}

.rs-tabs {
    display: flex;
}

.riverly-search-box .rs-tabs>button.active,
.riverly-search-box .rs-tabs>button:hover {
    background-color: var(--Couleurssaule500);
    color: var(--white);
    border: none;
}

.rs-tab-content form .select2-container {
    width: 100% !important;
}

.riverly-search-box .rs-tabs:has(button:nth-child(2).active)>button:first-child {
    background-color: #19455666;
}

.riverly-search-box .rs-tabs:has(button:nth-child(2).active)>button:nth-child(2).active,
.riverly-search-box .rs-tabs:has(button:nth-child(2).active)>button:nth-child(2):hover {
    background-color: var(--blue);
}

.rs-tab-content:nth-child(2) form button.rs-submit {
    background-color: var(--blue);
    border-color: var(--blue);
}

.rs-tab-content:nth-child(2) form button.rs-submit:hover,
.rs-tab-content:nth-child(2) form button.rs-submit:focus {
    background-color: transparent;
    color: var(--blue);
}

.rs-tab-content:nth-child(2) form button.rs-submit:hover svg path,
.rs-tab-content:nth-child(2) form button.rs-submit:focus svg path {
    fill: var(--blue);
}

body .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--Couleurssaule500);
}

body.tax-number-of-people .select2-container--default .select2-results__option--highlighted[aria-selected],
body.tax-boat-type .select2-container--default .select2-results__option--highlighted[aria-selected],
body.tax-boat-level .select2-container--default .select2-results__option--highlighted[aria-selected],
body.page-id-5600 .select2-container--default .select2-results__option--highlighted[aria-selected],
body:has(.rs-tab:nth-child(2).active) .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--blue);
}

body.admin-bar .select2-container--open .select2-dropdown--below {
    margin-top: 34px;
}

body .select2-container--open .select2-dropdown--below {
    margin-top: 2px;
}

body .select2-container--default .select2-results>.select2-results__options {
    padding: 16px;
    border-radius: 4px;
    border: 1px solid var(--blue);
    box-shadow: 0px 0px 15px 0px #0000001A;
    max-height: 300px;
}

body .flatpickr-day:hover,
body .flatpickr-day:focus,
body .flatpickr-day.selected {
    background-color: var(--Couleurssaule500);
    color: var(--white);
    border-color: var(--Couleurssaule500);
}

.flatpickr-current-month select option:hover,
.flatpickr-current-month select option:checked {
    background-color: var(--Couleurssaule500);
}

/**  STYLE 3 */
.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-track {
    background-color: #F5F5F5;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar {
    width: 2px;
    background-color: #F5F5F5;
}

.select2-container--default .select2-results>.select2-results__options::-webkit-scrollbar-thumb {
    background-color: var(--Couleurssaule500);
    border-radius: 6px;
}

.select2-container--open .select2-dropdown {
    border: none;
}

body .select2-dropdown {
    z-index: 92;
}

/* Destination list filter
=============================================== */
.cruise-card {
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 0.6s ease forwards;
}

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.cruise-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    position: relative;
    overflow: hidden;
}

.cruise-grid::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -75px;
    right: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) -16.97%, var(--white) 61.33%);
    height: 213px;
}

.trip-boat-slider .cruise-grid::after {
    content: none;
}

.cruise-grid.load-end::after {
    content: none;
}

.cruise-card {
    border: 1px solid #1515151A;
    border-radius: var(--radius_l);
    overflow: hidden;
}

.cruise-filters {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    margin-bottom: 40px;
}

.filter-wrapper>span {
    width: 100% !important;
}

.boat_type_archive .cruise-filters {
    grid-template-columns: repeat(3, 1fr);
}

.cruise-filters>div {
    width: 100%;
}

div.load-more-wrap,
div#load-more-wrap {
    text-align: center;
    position: relative;
    margin-top: 20px;
}

body div.load-more-wrap button.load-more-btn,
div#load-more-wrap button {
    background-color: transparent;
    border: none;
    padding: 0;
    border-radius: 0;
    color: var(--body);
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid #1515151A;
    margin-inline: auto;
}

/* Your next adventure
=============================================== */
.riv-item,
.riv-grid {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    gap: 42px;
}

.riv-item {
    gap: 16px;
    margin-bottom: 16px;
    background-color: var(--bg1);
    border-radius: var(--radius_l);
    overflow: hidden;
    border: 1px solid #1515151A;
}

div.image-wrapper {
    height: auto;
    padding-bottom: 0;
    min-height: 192px;
    cursor: pointer;
}

.riv-item .content-wrapper h3 {
    margin: 0 0 8px;
    font-size: 24px;
    font-weight: var(--medium);
}

.riv-item .content-wrapper h3 span {
    font-size: 20px;
}

.content-wrapper {
    padding: 8px 16px 8px 0;
    display: flex;
    flex-direction: column;
}

div.riv-map img {
    width: 100%;
    border-radius: var(--radius_l);
}

.riv-filters {
    margin-bottom: 24px;
}

.content-wrapper .riv-link {
    color: var(--Couleurssaule500);
    font-weight: var(--medium);
    display: flex;
    align-items: center;
    gap: 8px;
    justify-content: center;
    margin: 10px;
}

.riv-list-wrapper {
    position: relative;
    overflow: hidden;
    min-height: 600px;
}

.riv-list-wrapper::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) -16.97%, var(--white) 61.33%);
    height: 192px;
    z-index: 22;
}

div.riv-list {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow-y: auto;
    padding-bottom: 192px;
}

.riv-list::-webkit-scrollbar {
    display: none;
}

/* Accordion slider
============================================== */
.riv-accordion-wrapper {
    display: flex;
    gap: 32px;
}

.riv-accordion-wrapper>div.riv-accordion-left {
    width: 55%;
}

.riv-accordion-wrapper>div.riv-accordion-right {
    width: 45%;
}

.riv-accordion-left {
    border: 2px solid #12352A0F;
    backdrop-filter: blur(15px);
    background-color: rgba(255, 255, 255, 0.86);
    border-radius: var(--radius_m);
    padding: var(--spacing_sm);
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.riv-accordion-content,
.riv-accordion-desktop-gallery,
.riv-accordion-mobile-gallery {
    display: none;
}

.riv-accordion-desktop-gallery {
    animation: fadeOut 0.6s ease-in-out;
}

.riv-accordion-desktop-gallery.active {
    display: block;
    animation: fadeIn 0.6s ease-in-out;
}

.riv-accordion-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 30px 5px 5px;
    border-radius: var(--radius_m);
    transition: var(--transition);
    position: relative;
    cursor: pointer;
}

div.riv-accordion-header img {
    max-width: 63px;
}

.e-n-menu-title-text {
    cursor: pointer;
}

div.riv-accordion-header h4 {
    margin: 0;
    font-weight: var(--regular);
    color: #052F33;
}

.riv-accordion-item.active .riv-accordion-header {
    background-color: #F6F6F6;
}

.riv-accordion-header svg {
    width: 50px;
}

.riv-accordion-content {
    padding-top: 16px;
    font-size: 18px;
}

div.riv-accordion-slider .slick-slide>div {
    border-radius: var(--radius_m);
}

div.riv-accordion-slider .slick-slide>div span {
    position: absolute;
    background-color: #FBFBFB1A;
    left: 16px;
    bottom: 16px;
    width: fit-content;
    border-radius: var(--radius_sm);
    padding: 8px;
    color: var(--white);
    display: flex;
    align-items: center;
    gap: 8px;
    z-index: 22;
    backdrop-filter: blur(6px);
    text-transform: uppercase;
}

div.riv-accordion-slider .slick-slide>div span::before {
    content: "";
    width: 8px;
    height: 8px;
    border-radius: var(--radius_l);
    background-color: var(--white);
}

span.accordion-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 16px;
    transition: var(--transition);
}

span.accordion-arrow svg {
    width: 13px;
}

.riv-accordion-item.active span.accordion-arrow {
    transform: translateY(-50%) rotate(180deg);
}

div.riv-accordion-slider.slick-slider {
    margin: 0;
    border-radius: var(--radius_m);
    overflow: hidden;
}

.riv-accordion-slider .slick-dots {
    position: absolute;
    bottom: 16px;
    right: 16px;
    width: auto;
    z-index: 2;
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

/* destination sinlge template image slider
=============================================== */
div.image-slider-wrapper {
    border-radius: var(--radius_m);
    padding-bottom: 75%;
}

div.image-slider-wrapper {
    padding-bottom: 68.2%;
}

.single-boat div.image-slider-wrapper {
    padding-bottom: 60%;
}

.main-slider-wrapper .custom-control-wrapper>div {
    transition: var(--transition);
}

.main-slider-wrapper .custom-control-wrapper>div.disabled {
    opacity: 0.2;
}

.main-slider-wrapper .custom-prev svg {
    transform: rotate(180deg);
}

.riverly-main-slider .slick-list {
    border-radius: var(--radius_m);
    overflow: hidden;
}

.riverly-thumb-slider.slick-slider .slick-track {
    flex-direction: column;
    gap: 6px;
}

.riverly-thumb-slider.slick-slider .slick-list {
    overflow-y: auto;
}

/* Chrome, Safari, Edge */
.riverly-thumb-slider.slick-slider .slick-list::-webkit-scrollbar {
    display: none;
}

.riverly-slider-wrapper {
    display: flex;
    flex-direction: row-reverse;
    overflow: hidden;
}

.main-slider-wrapper {
    width: calc(100% - 110px);
    position: relative;
}

div.riverly-thumb-slider {
    width: 110px;
    padding-right: 24px;
    height: 100%;
    position: absolute;
    overflow: hidden;
    left: 0;
    top: 0;
}

.riverly-thumb-slider.slick-slider .slick-track,
.riverly-thumb-slider.slick-slider .slick-list {
    height: 100% !important;
}

.riverly-thumb-slider.slick-slider .slick-track .slick-slide {
    position: relative;
    overflow: hidden;
    border-radius: var(--radius_m);
    height: 0 !important;
    padding-bottom: 100%;
}

.riverly-thumb-slider.slick-slider .slick-track .slick-slide img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Itinery tab section 
=============================================== */
.itinerary-right {
    padding: 32px;
    border-radius: var(--radius_m);
    background-color: var(--Couleurssaule500);
}

.itinerary-meta-wrapper h4 {
    margin: 0;
}

.itinerary-title-wrapper {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0 0 16px;
}

.itinerary-content {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    display: none;
    animation: fadeOutRight 0.6s ease forwards;
}

.itinerary-content.active {
    display: grid;
    animation: fadeInRight 0.6s ease forwards;
}

div.itinerary-content img {
    aspect-ratio: 10 / 6;
    overflow: hidden;
    border-radius: var(--radius_m);
}

.itinerary-container {
    display: flex;
    gap: 40px;
}

.itinerary-container>div:first-child {
    width: 35%;
    position: relative;
    padding-top: 32px;
}

.itinerary-container>div:first-child::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 110px;
    background: linear-gradient(0deg, var(--white) 23.44%, rgba(255, 255, 255, 0) 100%);
    z-index: 22;
    display: none;
}

.itinerary-container>div:nth-child(2) {
    width: 65%;
}

.itinerary-meta-wrapper {
    color: var(--white);
}

.step-marker {
    display: flex;
    align-items: center;
    gap: 8px;
    backdrop-filter: blur(15px);
    border: 1px solid #1515151A;
    padding: 16px;
    border-radius: 12px;
    color: var(--Couleurssaule500);
    transition: var(--transition);
    cursor: pointer;
}

.step-marker svg circle {
    stroke: var(--Couleurssaule500);
}

.itinerary-step .step-marker svg {
    width: 20px;
    transition: var(--transition);
}

.itinerary-step.active .step-marker svg {
    width: 0;
    overflow: hidden;
}

.e-n-menu-content>div {
    overflow: hidden;
}

.tab-pane.active .tab-content-grids,
.rs-tab-content.active,
/* .e-n-menu-content>div *,
.e-n-tabs-content>div,
.e-n-tabs-content,
.e-n-tabs-content .e-con-inner>div,
.e-n-tabs-heading, */
.boats-grid,
.additional-item,
.itinerary-step .step-marker svg {
    animation: fadeInRight 0.6s ease forwards;
}

.hidden-item,
.itinerary-step.active .step-marker svg {
    animation: fadeOutRight 0.6s ease forwards;
}

.itinerary-step.active .step-marker,
.step-marker:hover {
    background-color: #D3F7DE;
    border-color: #D3F7DE;
}

.itinerary-step.active .step-marker {
    gap: 0;
}

div.step-marker h4 {
    margin: 0;
    font-size: 18px;
    font-weight: var(--regular);
}

.itinerary-step {
    padding-bottom: 8px;
    padding-left: 48px;
    position: relative;
}

.itinerary-step:not(:last-child)::before {
    content: "";
    position: absolute;
    width: 4px;
    height: 100%;
    background-color: var(--Couleurssaule500);
    left: 6.5px;
    top: 50%;
}

.step-line {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 16px;
    height: 16px;
    border-radius: var(--radius_l);
    background-color: var(--Couleurssaule500);
}

.itinerary-step:first-child .step-line,
.itinerary-step:last-child .step-line {
    width: 24px;
    height: 24px;
    left: -3px;
}

.itinerary-step:first-child .step-line::before,
.itinerary-step:last-child .step-line::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 10px;
    background-image: url(./img/location_on.png);
}

.itinerary-step:last-child .step-line::before {
    background-image: url(./img/sports_score.png);
}

.itinerary-left-wrapper {
    position: absolute;
    top: 32px;
    left: 0;
    bottom: 0;
    right: 0;
    overflow-y: auto;
    /* padding-bottom: 110px; */
    padding-bottom: 32px;
    padding-right: 32px;
    padding-left: 24px;
}

.itinerary-left-wrapper::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: #1515151A;
}

.itinerary-left-wrapper::-webkit-scrollbar {
    width: 4px;
}

.itinerary-left-wrapper::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: #15151580;
}

/* Destinatino Itinerary tab 
=============================================== */
.itinerary-tab .elementor-icon-list-items li a {
    transition: var(--transition);
    opacity: 0.5;
}

.itinerary-tab .elementor-icon-list-items li a:hover,
.itinerary-tab .elementor-icon-list-items li a.active {
    opacity: 1;
}

div.elementor-element.itinerary-tab .elementor-icon-list-items li a svg {
    margin: 0;
}

/* Destination table
=============================================== */
.table-title-section {
    margin-bottom: 24px;
    padding-right: 170px;
}

div.table-title-section h2 {
    margin: 0;
    color: var(--Couleurssaule500);
}

div.table-title-section h2.mobile-title {
    margin-bottom: 14px;
    text-align: center;
    display: none;
}

div.table-title-section h2 span {
    color: var(--body);
    font-size: 26px;
}

div.table-title-section h2 span strong {
    font-weight: var(--bold);
}

div.table-title-section>span {
    color: #15151580;
    font-family: var(--reditsans);
    display: block;
}

span.search-filter-button {
    position: absolute;
    right: 0;
    top: 15px;
    border: 2px solid var(--Couleurssaule500);
    border-radius: 8px;
    padding: 8px 16px;
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 16px;
    font-weight: var(--medium);
    color: var(--Couleurssaule500);
    cursor: pointer;
    z-index: 22;
    transition: var(--transition);
}

span.search-filter-button svg path {
    transition: var(--transition);
}

span.search-filter-button:hover svg path {
    fill: var(--white);
}

span.search-filter-button:hover {
    background-color: var(--Couleurssaule500);
    color: var(--white);
}

.search-button-wrapper>span:first-child {
    display: none;
    font-size: 14px;
    color: var(--black);
}

.booking-slider>span {
    position: absolute;
    margin-top: 45px;
    margin-left: -12px;
    cursor: pointer;
    z-index: 66;
}

.booking-slider>span.slider_arrow_right {
    right: 0;
}

.booking-table {
    width: fit-content;
    border-collapse: separate;
    border-spacing: 6px;
    min-width: max-content;
    margin-right: -6px;
}

.booking-slider {
    width: 100%;
    display: block;
    overflow: hidden;
    margin: 0 -15px;
    padding: 0 15px;
}

span.divider {
    display: block;
    width: 80%;
    height: 1px;
    background: #555555;
    margin-top: 5px;
    margin-bottom: 5px;
    margin-inline: auto;
    position: relative;
}

.active span.divider::after {
    content: "\f063";
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    display: block;
    position: absolute;
    right: -14px;

}

th.active span.divider {
    background-color: var(--white);
}

th {
    background: #e9efe9;
    padding: 14px;
    text-align: center;
    border-radius: 6px;
    font-weight: var(--semibold);
    vertical-align: middle;
}

th.itineraires {
    background: #1f6b4d;
    color: var(--white);
    width: 264px;
}

th.itineraires,
th.bateaux {
    font-size: 18px;
    font-weight: var(--medium);
    vertical-align: middle;
}

th.bateaux {
    background: #1e4a5a;
    color: var(--white);
    width: 360px;
}

table tbody>tr:nth-child(odd)>td,
table tbody>tr:nth-child(odd)>th {
    background-color: var(--grey);
}

.booking-table td.boat,
.booking-table td.itinerary {
    background-color: var(--bg1);
}

th.active {
    background: #1f6b4d;
    color: var(--white);
    box-shadow: 0px 0px 6px 0px #0000004f;
}

.date-head {
    font-size: 14px;
    line-height: 1.4;
    font-weight: var(--regular);
    color: #555555;
    height: 100px;
    vertical-align: middle;
}

.booking-table thead th {
    height: 104px;
    vertical-align: middle;
}

.booking-table tbody tr td {
    height: 110px;
    vertical-align: middle;
    overflow: hidden;
}

.booking-table tbody tr td.itinerary {
    vertical-align: top;
}

table td {
    background: var(--grey);
    border-radius: var(--radius_sm);
    padding: 12px;
    vertical-align: middle;
}

/* sliders */
.slick-slider {
    min-width: 0
}

.itinerary img,
.boat img {
    width: 100%;
    border-radius: var(--radius_sm);
}

.slick-dots {
    bottom: 6px
}

/* itinerary */
.itinerary h4 {
    margin: 10px 0 6px;
    font-size: 15px
}

.itinerary p {
    margin: 4px 0;
    font-size: 13px
}

/* boat */
.boat strong {
    display: block;
    font-size: 14px;
    font-weight: var(--medium);
}

.boat ul {
    margin: 0;
    padding-left: 16px
}

.boat li {
    font-size: 12px;
    line-height: 1.5
}

/* price */
.price {
    text-align: center;
    position: relative;
    padding-top: 15px;
    vertical-align: bottom !important;
    padding-bottom: 20px;
}

td.itinerary {
    vertical-align: text-bottom;
}

.price strong {
    font-size: 15px;
    display: inline;
}

span.red_text {
    display: block;
    color: #C90000;
    font-size: 10px;
    font-weight: var(--medium);
    margin: 2px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

table .price button {
    margin-top: 6px;
    background: #1f6b4d;
    color: var(--white);
    border: 0;
    padding: 6px 14px;
    border-radius: 4px;
    cursor: pointer;
    border: 1px solid var(--Couleurssaule500);
    transition: var(--transition);
}

table .price button:hover {
    background-color: transparent;
    color: var(--Couleurssaule500);
}

.old {
    display: inline;
    color: #151515;
    text-decoration: line-through;
    font-size: 12px;
    margin-right: 2px;
}

.discount {
    display: inline-block;
    background: var(--orange);
    color: var(--white);
    font-size: 10px;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: var(--semibold);
    margin-bottom: 4px;
    position: absolute;
    top: 3px;
    right: 3px;
}

.last {
    display: block;
    color: #c00;
    font-size: 11px;
    margin-top: 4px
}

.unavailable {
    color: #bcbcbc;
    font-weight: var(--medium);
    text-align: center;
    font-size: 13px;
    vertical-align: middle;
}

td.price.active {
    box-shadow: 0px 0px 8px 0px #0000005c;

}

table td,
table th {
    border-color: #1515151A;
}

.boat .slick-td-wrapper {
    display: flex;
    gap: 6px;
}

.boat .slick-td-wrapper>div {
    width: 50%;
    flex: 1;
}

.boat .slick-td-wrapper>div.slick-boat-wrapper {
    margin: -17px 0;
    margin-left: -6px;
}

div.slick-boat.slick-slider .slick-list .slick-slide {
    position: relative;
    overflow: hidden;
    height: 109px;
    border-radius: 3px;
}

div.boat-type-image img,
div.slick-itinerary img,
.slick-boat div img {
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

div.itinerary-tab-content h4 {
    margin: 8px 0;
    font-size: 14px;
    font-weight: var(--medium);
}

.slick-slider.slick-itinerary .slick-track .slick-slide {
    position: relative;
    border-radius: 4px;
    height: 137px;
    overflow: hidden;
}

.slick-boat.slick-initialized.slick-slider.slick-dotted,
div.slick-slider.slick-itinerary,
div.slick-right-content strong {
    margin: 0;
}

div.slick-slider.slick-itinerary {
    margin: -6px -6px 0;
}

div.slick-slider.slick-itinerary .slick-list {
    width: calc(100% + 12px);
}

.slick-right-content ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.itinerary_iconlist {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 6px;
}

.itinerary_iconlist p,
.slick-right-content ul li {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--blue);
    font-size: 12px;
    font-weight: var(--regular);
    margin: 0;
}

.itinerary_iconlist p {
    color: #0E4D46;
}

.itinerary_iconlist p svg,
.slick-right-content ul li svg {
    width: 9px;
    height: 9px;
}

.slick-slider.slick-boat .slick-track,
.slick-slider.slick-itinerary .slick-track {
    display: block;
    margin-bottom: -10px;
}

.slick-boat,
.slick-itinerary {
    min-width: 100%;
    width: 0;
}

.slick-td-wrapper .slick-slider .slick-arrow {
    padding: 0;
    border-radius: 0;
    background-color: transparent;
    border: none;
    z-index: 22;
    opacity: 0;
    transition: var(--transition);
}

.slick-itinerary:hover .slick-arrow,
.slick-boat-wrapper:hover .slick-slider .slick-arrow {
    opacity: 1;
}

.slick-td-wrapper .slick-dots {
    bottom: 15px;
}

.slick-boat-wrapper div {
    height: 100%;
}

.slick-td-wrapper .slick-boat-wrapper .slick-dots {
    display: none;
    opacity: 0;
    visibility: hidden;
}

.slick-td-wrapper .slick-dots li {
    width: auto;
    height: auto;
    margin: 0 2px;
}

.slick-td-wrapper .slick-dots li button {
    width: 8px;
    height: 8px;
    background-color: #FBFBFB80;
    border-radius: 99px;
    padding: 0;
}

.slick-td-wrapper .slick-dots li.slick-active button {
    background-color: var(--white);
}

.slick-slider.slick-boat .slick-track::before,
.slick-slider.slick-itinerary .slick-track::before,
.slick-td-wrapper .slick-slider .slick-arrow::before,
.slick-td-wrapper .slick-dots li button::before {
    content: none;
}

.slick-td-wrapper .slick-slider .slick-arrow.slick-prev {
    left: 10px;
}

.slick-td-wrapper .slick-slider .slick-arrow.slick-next {
    right: 10px;
}

table td,
table th {
    padding: 6px;
}

span.price_wrapper {
    display: flex;
    align-items: center;
    gap: 4px;
}

.price_wrapper .old {
    color: var(--body);
    font-size: 14px;
    font-weight: var(--regular);
}

.search-filter-section {
    display: flex;
    gap: 16px;
    margin-bottom: 32px;
    flex-wrap: wrap;
}

.search-filter-section>div {
    flex: 1;
}

.search-filter-section>div>span {
    width: 100% !important;
}

.table__wrapper {
    display: flex;
}

.hidden_section {
    display: none;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition:
        max-height 0.4s ease,
        opacity 0.25s ease;
}

/* expanded state */
.content-block.expanded .hidden_section {
    display: flex;
    opacity: 1;
    max-height: 2000px;
    /* safe value */
}

/* button visibility */
.content-block.expanded .show_more_button,
.is-hidden,
.show_less_button {
    display: none;
}

.content-block.expanded .show_less_button {
    display: inline-flex;
}

.table-scroll-wrapper {
    overflow-x: auto;
    scroll-behavior: smooth;
    /* fallback handled by JS */
    position: relative;
    white-space: nowrap;
}

/* optional: hide scrollbar */
.mobile_table_wrapper,
.table-scroll-wrapper::-webkit-scrollbar {
    display: none;
}

.table-scroll-wrapper {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Destinatino Mobile Table
===============================================  */
.mobile_table {
    border-radius: var(--radius_sm);
    border: 1px solid var(--cool-grey);
}

.mobile_table .itinerary-tab-content {
    padding: 6px 13px;
}

.mobile_table .table__wrapper>.booking-table {
    width: 210px;
    min-width: 210px;
    background-color: var(--white);
    z-index: 55;
    position: relative;
}

.mobile_table_wrapper .booking-table thead th {
    font-size: 12px;
    font-weight: var(--regular);
    background-color: var(--Couleurssaule500);
    height: 52px;
    color: var(--white);
}

.mobile_table_wrapper .booking-table thead th.bateaux {
    background-color: var(--blue);
}

.mobile_table_wrapper .booking-table thead th.itineraires {
    font-weight: var(--medium);
    background-color: var(--Couleurssaule500);
}

.mobile_table_wrapper .booking-slider>span {
    margin-top: 23px;
}

.mobile_table_wrapper .booking-slider svg {
    width: 16px;
    height: 16px;
}

.mobile_table_wrapper .booking-slider>span {
    margin-left: -6px;
}

.mobile_table_wrapper .booking-slider>span.slider_arrow_right {
    right: -8px;
}

.mobile_table_wrapper .booking-table {
    border-spacing: 3px;
    margin-right: -3px;
}

.mobile_table_wrapper .boat strong {
    font-size: 11px;
}

.mobile_table_wrapper .slick-right-content ul li {
    font-size: 10px;
}

.mobile_table_wrapper .slick-boat-wrapper .slick-arrow,
.mobile_table_wrapper .slick-boat-wrapper .slick-dots {
    display: none;
    opacity: 0;
    visibility: hidden;
}

.mobile_table_wrapper div.slick-boat.slick-slider .slick-list .slick-slide {
    height: 90px;
}

.mobile_table_wrapper .price button {
    font-size: 12px;
}

/* .mobile_table_wrapper .booking-table tbody tr td {
    height: auto;
} */
.mobile_show_more_less {
    text-align: center;
    padding: 0 0 20px;
}

.mobile_show_more {
    display: block;
    width: fit-content;
    margin-inline: auto;
    border-bottom: 1px solid #15151580;
    color: var(--body);
    padding-bottom: 5px;
    cursor: pointer;
    font-size: 12px;
}

.mobile_show_more svg {
    margin-left: 8px;
}

.mobile_table:not(:last-child) {
    margin-bottom: 18px;
}

/* Mega menu dropdown menu lists
=============================================== */
div.elementor-element.menu__lists div.elementor-widget-nav-menu {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
}

.menu__lists nav.elementor-nav-menu--main ul.elementor-nav-menu li a,
.menu__lists .elementor-icon-list-items li a {
    padding: 16px 8px;
    border-radius: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: var(--transition);
    gap: 8px;
    border-bottom: 1px solid #1515151A;
}

.menu__lists nav.elementor-nav-menu--main ul.elementor-nav-menu li a .sub-arrow {
    transform: rotate(-90deg) !important;
    padding: 0;
}

/* .menu__lists nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item-has-children {
    position: static !important;
}
.menu__lists nav.elementor-nav-menu--main ul.elementor-nav-menu li.menu-item-has-children .sub-menu {
    display: block !important;
    top: 0 !important;
    left: 100%;
    margin-top: 0 !important;
    position: absolute;
    transform: none !important;
    transition: var(--transition) !important;
} */

.elementor-widget-n-tabs .e-n-tab-title-text a {
    display: block;
    position: relative;
    z-index: 22;
}

.menu__lists .elementor-widget-n-tabs .e-n-tab-title {
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    padding: 16px 8px;
}

.menu__lists .elementor-widget-n-tabs .e-n-tab-title .e-n-tab-icon svg {
    width: 7px;
    height: 11px;
    display: none;
}

.elementor div.menu__lists .elementor-element.elementor-widget-n-tabs>.e-n-tabs>.e-n-tabs-heading>.e-n-tab-title[aria-selected="true"] svg,
.elementor div.menu__lists .elementor-element.elementor-widget-n-tabs>.e-n-tabs[data-touch-mode='false']>.e-n-tabs-heading>.e-n-tab-title[aria-selected="false"]:hover svg {
    display: block;
}

.elementor div.menu__lists .elementor-element.elementor-widget-n-tabs>.e-n-tabs>.e-n-tabs-heading>.e-n-tab-title[aria-selected="true"],
.elementor div.menu__lists .elementor-element.elementor-widget-n-tabs>.e-n-tabs[data-touch-mode='false']>.e-n-tabs-heading>.e-n-tab-title[aria-selected="false"]:hover {
    border-radius: 8px;
}

.menu__lists nav.elementor-nav-menu--main ul.elementor-nav-menu li.active a,
.menu__lists nav.elementor-nav-menu--main ul.elementor-nav-menu li a:hover,
.menu__lists .elementor-icon-list-items li a:hover {
    background-color: var(--grey);
    border-bottom-color: transparent;
    border-radius: 8px;
}

.menu__lists .elementor-icon-list-items li .elementor-icon-list-icon {
    opacity: 0;
    visibility: hidden;
    transition: var(--transition);
}

.menu__lists .elementor-icon-list-items li a:hover .elementor-icon-list-icon {
    opacity: 1;
    visibility: visible;
}

/* header contact dropdown
=============================================== */
.elementor div.elementor-element.contact_dropdown div.elementor-widget-n-tabs div.e-n-tabs .e-n-tabs-heading>button:nth-child(2) {
    background-color: #0E4D46 !important;
    color: var(--white);
    border-color: #0E4D46 !important;
}

.elementor div.elementor-element.contact_dropdown div.elementor-widget-n-tabs div.e-n-tabs .e-n-tabs-heading>button:nth-child(2)[aria-selected="true"] {
    background-color: transparent !important;
    color: var(--white);
    border-color: var(--white) !important;
}

div.elementor-element.contact_dropdown {
    opacity: 0;
    visibility: hidden;
    transform: translateY(2em);
    transition: var(--transition);
}

div.elementor-element.contact_dropdown.active {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

header.elementor-location-header div.elementor-element.secondary_header div.elementor-element.contact_dropdown,
header.elementor-location-header div.elementor-element.elementor-sticky--effects div.elementor-element.contact_dropdown {
    background-color: #194556b8;
}

header.elementor-location-header div.elementor-element.elementor-sticky--effects div.elementor-element.contact_dropdown svg path {
    fill: #194556b8;
}

header div.elementor-element.elementor-sticky--effects {
    width: 100% !important;
}

body div.trip_vide_section:not(:has(.video-teaser-grid)),
body div.trip_destination_list:not(:has(#cruise-wrapper)),
body div.elementor-element.trip_read_more_less_section:not(:has(.item-inner)),
body .elementor div.elementor-element.trip_testimonial_section:not(:has(.trip-testimonial-slide)),
header .secondary_header:nth-child(2) .contact_dropdown,
header .header_transparent:nth-child(2) .contact_dropdown {
    display: none;
}

/* destination unmissable section
=============================================== */
.unmissable-section-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

div.unmissable-section-grid div.unmissable-card {
    border: 1px solid #1515151A;
    background-color: var(--bg1);
    border-radius: var(--radius_l);
    overflow: hidden;
    padding: var(--spacing_s);
    display: flex;
    flex-direction: column;
    gap: 16px;
}

div.unmissable-content h4 {
    margin: 0 0 8px;
}

div.unmissable-content {
    font-family: var(--reditsans);
}

div.unmissable-image-wrapper {
    margin: -16px -16px 0;
    padding-bottom: 57%;
}

.departure-card {
    background-color: var(--white);
    padding: var(--spacing_s);
    border-radius: var(--radius_m);
    display: flex;
    align-items: center;
    gap: 20px;
}

.departure-card:not(:last-child) {
    margin-bottom: 24px;
}

.departure-content span {
    display: block;
    color: var(--Couleurssaule500);
    font-size: 18px;
    font-weight: var(--medium);
}

div.departure-card img {
    width: 40px;
    height: 40px;
    object-fit: contain;
}

.departure-card .departure-content p a {
    color: var(--Couleurssaule500);
}

/* Mobile menu 
=============================================== */
.mobile_menu_list .elementor-icon-list-items li,
.mobile_menu_list .elementor-icon-list-items li a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: row-reverse;
}

/* FAQ accordion 
=============================================== */

.riv-faq-accordion-wrapper .riv-faq-heading {
    margin-bottom: 45px;
    text-align: center;
}

.riv-faq-accordion-wrapper .riv-faq-item {
    padding: 16px 32px;
    border-radius: var(--radius_sm);
    background-color: rgb(249 249 249 / 45%);
    transition: var(--transition);
    backdrop-filter: blur(12px);
}

.riv-faq-accordion-wrapper .riv-faq-item.active {
    background-color: rgb(211 247 222 / 45%);
}

.riv-faq-accordion-wrapper .riv-faq-item:not(:last-child) {
    margin-bottom: 8px;
}

.riv-faq-accordion-wrapper .riv-faq-item .riv-faq-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.riv-faq-header {
    cursor: pointer;
}

.riv-faq-accordion-wrapper .riv-faq-item h4 {
    color: var(--Couleurssaule500);
    font-weight: var(--regular);
    margin: 0;
}

span.riv-faq-toggle-icon {
    display: block;
    min-width: fit-content;
    transition: var(--transition);
}

.riv-faq-accordion-wrapper .riv-faq-item.active span.riv-faq-toggle-icon {
    transform: rotate(-180deg);
}

.riv-faq-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.riv-faq-accordion-wrapper .riv-faq-item.active .riv-faq-content {
    max-height: 1000px;
}

.riv-faq-answer {
    padding: 16px 0 0;
    color: var(--Couleurssaule500);
    font-size: 18px;
}

.second_level_menu>div {
    display: none;
}

.mobile_menu_parent,
.second_level_menu.menu-experience-active>.experience,
.second_level_menu.menu-bateaux-active>.bateaux,
.second_level_menu.menu-ideas-active>.ideas,
.second_level_menu.menu-destination-active>.destination {
    display: block;
    animation: fadeInRight 0.4s ease forwards;
}

.mobile_menu_container:has(.second_level_menu.menu-experience-active) .mobile_menu_parent,
.mobile_menu_container:has(.second_level_menu.menu-bateaux-active) .mobile_menu_parent,
.mobile_menu_container:has(.second_level_menu.menu-ideas-active) .mobile_menu_parent,
.mobile_menu_container:has(.second_level_menu.menu-destination-active) .mobile_menu_parent {
    display: none;
    animation: fadeOutRight 0.4s ease forwards;
}

/* Keyframes */
@keyframes fadeInRight {
    from {
        opacity: 0;
        transform: translateX(30px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes fadeOutRight {
    from {
        opacity: 1;
        transform: translateX(0);
    }

    to {
        opacity: 0;
        transform: translateX(30px);
    }
}

/* France blue section content image repeater
=============================================== */
.item-inner.grid-container {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 80px;
}

.item-inner.grid-container div.text-column {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.single-country .content_collapsible_dark div.description a,
.item-inner.grid-container div.text-column,
div.text-column h2 {
    margin: 0;
    color: var(--white);
}

.single-country div.description a {
    text-decoration: underline;
}

.single-country div.description a:hover {
    text-decoration: none;
}

.region_content_section div.text-column .description,
.region_content_section div.text-column h2 {
    color: var(--body);
}

.region_content_section div.text-column h2 span,
.region_content_section div.text-column button {
    color: var(--orange);
}

.region_content_section div.text-column button svg path {
    fill: var(--orange);
}

div.description {
    font-family: var(--reditsans);
}

.text-column .toggle-button-container button {
    background-color: transparent;
    border-radius: 0;
    border: none;
    padding: 0 0 8px;
    font-weight: var(--regular);
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.additional-item:nth-child(even) .grid-container button {
    flex-direction: row-reverse;
}

.last-item-btn button svg,
.additional-item:nth-child(even) .grid-container button svg {
    transform: rotate(-180deg);
}

.text-column .toggle-button-container button:hover,
.text-column .toggle-button-container button:focus {
    outline: none;
    color: var(--white);
    border-width: 0;
}

.region_content_section .text-column .toggle-button-container button:focus,
.region_content_section .text-column .toggle-button-container button:hover {
    color: var(--orange);
}

.trip-additional-content-section .text-column .toggle-button-container button {
    color: var(--body);
}

.trip-additional-content-section .text-column .toggle-button-container button svg path {
    fill: var(--body);
}

div.image-column-inner {
    padding-bottom: 56.25%;
    height: 100%;
    border-radius: 30px;
    overflow: hidden;
}

.mobile-trip-image-column {
    display: none;
}

.mobile-svg,
div.image-column-inner svg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 22;
}

.mobile-svg {
    display: none;
    width: 100%;
    top: -30px;
}

.mobile-svg svg {
    width: 100%;
}

.additional-items-container {
    display: flex;
    flex-direction: column;
    gap: 100px;
}

.additional-item:nth-child(even) .grid-container {
    direction: rtl;
}

.additional-item:nth-child(even) .grid-container div.text-column {
    text-align: left;
    align-items: flex-start;
    direction: ltr;
}

/* France grey section content image repeater
=============================================== */
.explore-content-section .item-inner.grid-container div.text-column,
.explore-content-section div.text-column h2 {
    color: var(--body);
}

.explore-content-section div.text-column h2 {
    max-width: 400px;
}

.tax-number-of-people .explore-content-section div.text-column h2 {
    max-width: 100%;
}

.nos_bateaux_content .explore-content-section div.text-column h2 {
    max-width: 100%;
}

.explore-content-section div.text-column h2 span,
.explore-content-section .text-column .toggle-button-container button {
    color: var(--orange);
}

.explore-content-section .text-column .toggle-button-container button svg path {
    fill: var(--orange);
}

.explore-content-section div.image-column-inner svg {
    top: auto;
    left: 40px;
    bottom: 0;
    width: 100%;
}

.nos_bateaux_content .explore-content-section div.image-column-inner svg {
    top: -25px;
    left: 0;
    bottom: auto;
    opacity: 0.6;
}

/* header sticky css
=============================================== */
div.top_header:has(.fade-out)+div.elementor-element.transparent_header {
    top: 0;
}

div.top_header:has(.riverly-top-bar.fade-out) {
    display: none;
}

div.elementor-element.transparent_header {
    position: absolute;
    top: 38px;
}

.riverly-top-bar-inner {
    background-color: var(--orange);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    color: var(--white);
    font-size: 16px;
    font-weight: var(--regular);
    gap: 4px;
}

.riverly-top-bar-content>*:not(a) {
    color: #FBD6BB;
    font-weight: var(--bold);
    font-family: var(--lora);
}

.riverly-top-bar-content p a {
    color: var(--white);
    font-weight: var(--regular);
    font-family: var(--outfit);
    transition: var(--transition);
}

.riverly-top-bar-content p a:hover {
    color: var(--bg1);
}

.riverly-top-bar-right {
    padding-left: 2px;
}

.riverly-top-bar-right svg {
    width: 11px;
    height: 11px;
}

header.elementor-location-header {
    position: relative;
    z-index: 9999;
}

header.elementor-location-header>div {
    width: 100% !important;
}

header.elementor-location-header>div.elementor-element>div {
    width: 100% !important;
}

header.elementor-location-header .logo_img a img,
header.elementor-location-header .elementor-widget-theme-site-logo a img,
header.elementor-location-header div.elementor-element {
    transition: var(--transition);
}

header.elementor-location-header div.elementor-element.elementor-sticky--effects {
    box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 0px 1px;
}

body .contact-bubble {
    color: var(--white);
    font-size: 14px;
}

body .bubble-popup-title h4 {
    margin: 0 0 5px;
    font-size: 20px;
    font-weight: var(--semibold);
}

body .contact-bubble .elementor-button {
    height: 40px;
    display: flex;
    align-items: center;
    padding: 6px;
    border-radius: 12px;
    width: fit-content;
    font-size: 24px;
    font-weight: 500;
    margin: 10px 0;
    gap: 5px;
}

body .contact-bubble .elementor-button.timezone-button {
    font-size: 18px;
}

body .contact-bubble .elementor-button:hover,
body .contact-bubble .elementor-button:focus {
    background-color: var(--Couleurssaule500);
    color: var(--white);
    gap: 8px;
}

body .slick-slider .slick-list .slick-track style {
    display: none;
}

.period_mobile_slider .slick-slider .slick-list {
    margin: 0 -12px;
    padding-right: 40%;
}

.period_mobile_slider .slick-slider .slick-list .slick-slide {
    margin: 0 12px;
}

/* header.elementor-location-header div.elementor-element.elementor-sticky--effects .logo_img a img,
header.elementor-location-header div.elementor-element.elementor-sticky--effects .elementor-widget-theme-site-logo a img {
    max-width: 120px;
} */
header:not(.change-color) div.elementor-element.elementor-sticky--effects .main_header_element {
    background-color: var(--Couleurssaule500);
}

header:not(.change-color) .elementor-sticky--effects .main_header_element .right_header_column>.elementor-element:nth-child(1) .elementor-button,
header:not(.change-color) .elementor-sticky--effects .main_header_element .right_header_column>.elementor-element:nth-child(2) .elementor-button {
    background-color: var(--orange);
    border-color: var(--orange);
}

header:not(.change-color) .elementor-sticky--effects .v2_main_header .wpml-lang-current {
    color: var(--white);
}

header:not(.change-color) .elementor-sticky--effects .main_header_element .right_header_column>.elementor-element:nth-child(1) .elementor-button:hover,
header:not(.change-color) .elementor-sticky--effects .main_header_element .right_header_column>.elementor-element:nth-child(2) .elementor-button:hover {
    background-color: transparent;
    color: var(--orange);
}

header:not(.change-color) div.elementor-element.elementor-sticky--effects .v2_main_header .logo_img a img {
    filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
}

header:not(.change-color) .elementor-sticky--effects .v2_main_header .wpml-lang-current svg path,
header:not(.change-color) .elementor-sticky--effects .v2_main_header .right_header_column>.elementor-element:last-child .elementor-button svg path {
    fill: var(--white);
}

header:not(.change-color) .elementor-sticky--effects .v2_main_header .right_header_column>div:last-child .elementor-button,
header:not(.change-color) .elementor-sticky--effects .v2_main_header .elementor-widget-n-menu .e-n-menu-title:hover .e-n-menu-title-container .e-n-menu-title-text,
header:not(.change-color) .elementor-sticky--effects .v2_main_header .elementor-widget-n-menu .e-n-menu-title.e-current .e-n-menu-title-container .e-n-menu-title-text,
header:not(.change-color) .elementor-sticky--effects .v2_main_header .elementor-widget-n-menu .e-n-menu-title:not(.e-current):not(:hover) .e-n-menu-title-container .e-n-menu-title-text {
    color: var(--white);
}

/* animated border animation
=============================================== */
.button_outline,
.trips_custom_button,
header div.elementor-element .e-n-menu-heading .e-n-menu-item .e-n-menu-title-text,
.departure-card p a,
div.elementor-element.pink_border,
.elementor-widget-text-editor p a,
.text-column .toggle-button-container button,
.read-more-btn,
.teaser-card a.teaser-link,
div.elementor-element.black_border,
.top-tab-wrapper .our-boat-button,
div.elementor-element.green_border,
div.elementor-element.faq_border,
div.elementor-element.white_border {
    position: relative;
}

.button_outline {
    padding-bottom: 8px;
}

.button_outline::after,
.trips_custom_button::after,
.testimonial-content a::before,
header div.elementor-element .e-n-menu-heading .e-n-menu-item .e-n-menu-title-text::after,
.departure-card p a::after,
div.elementor-element.pink_border::after,
/* .elementor-widget-text-editor p a::after, */
.text-column .toggle-button-container button::after,
.read-more-btn::after,
.teaser-card a.teaser-link::after,
div.elementor-element.black_border::after,
.top-tab-wrapper .our-boat-button::after,
div.elementor-element.green_border::after,
div.elementor-element.faq_border::after,
div.elementor-element.white_border::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: var(--white);
    bottom: 0;
    left: 0;
    transform-origin: left;
    transform: scaleX(1);
    transition: transform .3s ease-in-out;
}

.text-column .toggle-button-container button::after {
    background-color: #1515151A;
}

.type-content-left .button_outline::after,
.boat-type-item .boat-type-link::after,
.teaser-card a.teaser-link::after,
.top-tab-wrapper .our-boat-button::after,
div.elementor-element.faq_border::after {
    height: 2px;
}

.content-block-dark .text-column .toggle-button-container button::after {
    background-color: var(--white);
}

.read-more-btn::after {
    background-color: #15151566;
}

div.elementor-element.black_border::after {
    background-color: var(--body);
}

.boat-type-item .boat-type-link::after,
div.elementor-element.faq_border.blue_border::after,
div.elementor-element.faq_border::after {
    background-color: var(--blue);
}

.elementor-widget-text-editor p a {
    transition: var(--transition);
    display: inline-block;
}

.button_outline::after,
.testimonial-content a::before,
header div.elementor-element .e-n-menu-heading .e-n-menu-item .e-n-menu-title-text::after,
.departure-card p a::after,
.elementor-widget-text-editor p a::after {
    background-color: currentColor;
}

.trips_custom_button::after,
div.border_arrow_light_green.faq_border::after,
.teaser-card a.teaser-link::after,
div.elementor-element.green_border::after {
    background-color: var(--Couleurssaule500);
}

.elementor-widget-text-editor p a:hover {
    color: var(--Couleurssaule500);
}

.region_content_section .text-column .toggle-button-container button::after,
div.elementor-element.pink_border::after,
.explore-content-section .text-column .toggle-button-container button::after {
    background-color: var(--orange);
}

.button_outline:hover::after,
.trips_custom_button:hover:after,
.testimonial-content a:hover::before,
.departure-card p a:hover:after,
div.elementor-element.pink_border:hover:after,
.elementor-widget-text-editor p a:hover:after,
.text-column .toggle-button-container button:hover:after,
.read-more-btn:hover:after,
.teaser-card a.teaser-link:hover:after,
div.elementor-element.black_border:hover:after,
.top-tab-wrapper .our-boat-button:hover:after,
div.elementor-element.green_border:hover:after,
div.elementor-element.faq_border:hover::after,
div.elementor-element.white_border:hover::after {
    transform-origin: right;
    transform: scaleX(0);
}

header div.elementor-element .e-n-menu-heading .e-n-menu-item .e-n-menu-title-text {
    padding: 5px 0;
}

header div.elementor-element .e-n-menu-heading .e-n-menu-item .e-n-menu-title-text::after {
    transform-origin: right;
    transform: scaleX(0);
}

header div.elementor-element .e-n-menu-heading .e-n-menu-item:hover .e-n-menu-title-text::after {
    transform-origin: left;
    transform: scaleX(1);
}

div.destination_single_map div,
div.destination_single_map div.elementor-shortcode div.destination-map-wrapper iframe {
    height: 100%;
}

body .slick-track,
.custom-tabs .slick-track {
    margin-left: 0;
}

body.admin-bar:has(.riverly-top-bar.fade-out) div.elementor-element.itinerary-tab-section.elementor-sticky--effects {
    top: 114px !important;
}

body:has(.riverly-top-bar.fade-out) div.elementor-element.itinerary-tab-section.elementor-sticky--effects {
    top: 82px !important;
}

/* Thématiques vertical scroll
============================================== */
div.elementor-element.vertical_scroll_wrapper ul.elementor-icon-list-items li.elementor-icon-list-item a {
    flex-direction: row-reverse;
    gap: 10px;
    line-height: 1.5;
}

div.elementor-element.vertical_scroll_wrapper {
    overflow: hidden;
}

div.elementor-element.vertical_scroll_wrapper:first-child>div.elementor-element {
    animation: scrollUp 8s linear infinite;
}

@keyframes scrollUp {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-100%);
    }
}

div.elementor-element.vertical_scroll_wrapper:nth-child(2)>div.elementor-element {
    animation: scrollDown 8s linear infinite;
}

@keyframes scrollDown {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(100%);
    }
}

div.elementor-element.vertical_scroll_section {
    height: 750px;
}

/* News card section 
============================================== */
.news-cards-wrapper .news-cards-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.news-cards-wrapper .news-cards-grid>div {
    padding: 16px;
    background-color: var(--white);
    border-radius: 12px;
}

.news-content * {
    color: var(--Couleurssaule500);
    font-size: 18px;
    font-weight: var(--medium);
}

.news-card {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 16px;
    align-items: center;
}

.news-cards-wrapper .news-cards-grid>div svg {
    width: 12px;
    height: 20px;
    text-align: center;
    margin-left: 14px;
}

.news-cards-wrapper div.read-more-wrapper {
    margin-top: 32px;
}

.news-cards-wrapper div.read-more-wrapper button:hover,
.news-cards-wrapper div.read-more-wrapper button:focus {
    border: none;
    outline: none;
}

.news-cards-wrapper div.read-more-wrapper button::after {
    background-color: #FBFBFB1A;
}

.news-cards-wrapper div.read-more-wrapper button {
    color: var(--white);
    font-weight: var(--regular);
}

.news-cards-wrapper div.read-more-wrapper button svg {
    transition: var(--transition);
}

.news-cards-wrapper .expanded+div.read-more-wrapper button svg {
    transform: scale(-1, -1);
}

/* Nicole slider
=============================================== */
div.elementor-element.nicole_slider div.elementor-image-carousel-wrapper {
    overflow: visible;
    position: relative;
    padding-right: 10rem;
}

div.elementor-element.nicole_slider div.elementor-image-carousel-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    bottom: 0;
    width: 100vw;
    background-color: #EBF5F9;
    z-index: 2;
}

.nicole_slider .elementor-image-carousel-wrapper .swiper-slide-inner {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 59%;
    border-radius: 30px;
}

.nicole_slider .elementor-image-carousel-wrapper .swiper-slide-inner img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.spin_animation .elementor-icon svg {
    animation-name: spin;
    animation-duration: 6000ms;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* Image Carousel Section
=============================================== */
.image_carousel_section .swiper {
    overflow: visible;
}

/* boat single accordion
=============================================== */
.boat-accordion .boat-accordion-item .boat-accordion-header {
    background-color: transparent;
    color: var(--white);
    border: none;
    border-radius: 0;
    padding: 24px;
    margin: -24px;
    font-size: 24px;
    font-weight: var(--medium);
    transition: var(--transition);
}

.boat-accordion .boat-accordion-item:hover .boat-accordion-header,
.boat-accordion .boat-accordion-item.active .boat-accordion-header {
    color: var(--blue);
}

.boat-accordion .boat-accordion-item {
    border: 1px solid var(--white);
    border-radius: 12px;
    padding: 24px;
    background-color: var(--blue);
    transition: var(--transition);
    color: var(--white);
}

.boat-accordion .boat-accordion-item:hover,
.boat-accordion .boat-accordion-item.active {
    background-color: var(--white);
    border-color: var(--blue);
}

.boat-accordion .boat-accordion-item:not(.active):not(:last-child) {
    padding-bottom: 34px;
}

.boat-accordion .boat-accordion-item:not(:first-child) {
    margin-top: -10px;
}

.boat-accordion .boat-accordion-item:not(:last-child) {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

div.accordion-inner-image img {
    border-radius: 12px;
    aspect-ratio: 11.7 / 8;
    width: 100%;
}

.boat-accordion-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    max-height: 0;
    overflow: hidden;
    transition: var(--transition);
}

.boat-accordion-header {
    display: flex;
    align-items: center;
    gap: 18px;
}

.boat-accordion-header span img {
    width: 26px;
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(103%) contrast(103%);
    transition: var(--transition);
}

.boat-accordion .boat-accordion-item:hover img,
.boat-accordion .boat-accordion-item.active img {
    filter: none;
}

span.feature-icon img {
    width: 18px;
    min-width: max-content;
}

.boat-accordion-item.active .boat-accordion-content {
    padding-top: 24px;
    padding-bottom: 10px;
}

.boat-accordion-item:last-child.active .boat-accordion-content {
    padding-bottom: 0;
}

.accordion-inner .accordion-sub-title {
    margin: 0 0 8px;
    color: var(--blue);
}

.accordion-inner .section-has-icon .accordion-sub-title {
    margin: 0 0 24px;
}

.boat-accordion-content ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.boat-accordion-content ul:has(li.has-icon) {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.boat-accordion-content ul:has(li.has-icon) li {
    font-size: 16px;
}

.boat-accordion-content ul li {
    color: var(--blue);
    font-size: 18px;
}

.boat-accordion-content ul li span {
    display: block;
    line-height: 1;
    min-width: fit-content;
}

.boat-accordion-content ul li:not(:last-child) {
    margin-bottom: 8px;
}

.accordion-detail-section:not(:last-child) {
    margin-bottom: 24px;
}

.feature-row {
    display: flex;
    gap: 10px;
    align-items: center;
}

/* Nicole slider
=============================================== */
.year-info-slider-inner .slick-list {
    overflow: visible;
}

.year-info-slider-inner .slick-list::before {
    content: "";
    position: absolute;
    top: 0;
    right: 100%;
    bottom: 0;
    width: 100vw;
    height: 100%;
    z-index: 2;
    background-color: var(--white);
}

.year-info-slider-inner .slick-list .slick-slide .year-info-item {
    background-color: #F3F6F7;
    padding: 25px;
    min-height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    border-radius: 20px;
    color: var(--white);
    font-family: "Reddit Sans Condensed", Sans-serif;
    position: relative;
    transition: var(--transition);
}

.year-info-slider-inner .slick-list .slick-active .year-info-item {
    background-color: var(--blue);
}

.year-info-slider-inner .slick-list .slick-active+.slick-slide .year-info-item {
    background-color: #BAC7CC;
}

.year-info-slider-inner .slick-list .slick-active+.slick-slide+.slick-slide .year-info-item {
    background-color: #E8ECEE;
}

.year-info-slider-inner .slick-list .slick-slide.slick-active~.slick-slide {
    margin-left: -8rem;
    z-index: -1;
}

.year-info-slider-inner .slick-list .slick-slide {
    position: relative;
    z-index: 1;
    transition: var(--transition);
}

.year-info-slider-inner .slick-list .slick-slide.slick-active {
    z-index: 2222;
}

.year-info-slider-inner .slick-list .slick-slide.slick-active+.slick-slide {
    z-index: 222;
}

.year-info-slider-inner .slick-list .slick-slide.slick-active+.slick-slide+.slick-slide {
    z-index: 22;
}

.year-info-slider-inner .slick-list .slick-slide.slick-active+.slick-slide+.slick-slide+.slick-slide {
    z-index: 2;
}

.year-info-section {
    background: var(--white);
    margin-top: 40px;
    opacity: 0;
    visibility: hidden;
    transition: var(--transition);
}

.year-info-slider-inner .slick-list .slick-slide.slick-active .year-info-section {
    opacity: 1;
    visibility: visible;
}

.year-info-section h3 {
    font-size: 24px;
    font-weight: var(--regular);
    color: var(--blue);
    margin: 0;
    text-align: center;
}

.elementor-widget-year_info_slider .custom-control-wrapper>div {
    top: auto;
    bottom: 0;
    transform: none;
}

/* Static carousel 
============================================== */
.static_carousel .swiper {
    overflow: visible;
}

.elementor div.elementor-element.static_carousel div.elementor-swiper-button.elementor-swiper-button-prev svg {
    transform: scale(-1, -1);
}

.marquee_list_main>div {
    transform: translateX(50%);
    animation: marquee 30s linear infinite;
    will-change: transform;
}

@keyframes marquee {
    from {
        transform: translateX(50%);
    }

    to {
        transform: translateX(-50%);
    }
}

.marquee_list_main.right>div {
    transform: translateX(50%);
    animation: marquee-left-to-right 30s linear infinite;
    will-change: transform;
}

@keyframes marquee-left-to-right {
    from {
        transform: translateX(-50%);
        /* start from center */
    }

    to {
        transform: translateX(50%);
        /* scroll to right */
    }
}

/* Blog
=============================================== */
.category-pagination,
.elementor-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4px;
}

.category-pagination {
    margin-top: 32px;
}

.category-pagination>*,
.elementor-pagination>* {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #1515151A;
    border-radius: 4px;
    transition: var(--transition);
}

.category-pagination>* {
    color: var(--Couleurssaule500);
    font-weight: var(--medium);
    transition: var(--transition);
}

.category-pagination>.prev,
.category-pagination>.next,
.elementor-pagination>.prev,
.elementor-pagination>.next {
    font-size: 0;
    position: relative;
}

.category-pagination>.prev::before,
.category-pagination>.next::before,
.elementor-pagination>.prev::before,
.elementor-pagination>.next::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(./img/green-right.svg);
    background-size: 10px;
    width: 100%;
    height: 100%;
}

.category-pagination>.prev,
.elementor-pagination>.prev {
    transform: scale(-1, -1);
}

body div.category-pagination>*:hover,
.category-pagination>.current,
.elementor-pagination>*:hover,
.elementor-pagination>.current {
    background-color: var(--Couleurssaule500);
    border-color: var(--Couleurssaule500);
    color: var(--white);
}

.category-pagination>.prev:hover:before,
.category-pagination>.next:hover:before,
.elementor-pagination>.prev:hover::before,
.elementor-pagination>.next:hover::before {
    filter: brightness(0) saturate(100%) invert(100%) sepia(90%) saturate(109%) hue-rotate(325deg) brightness(114%) contrast(101%);
}

.archive_blog_lists .elementor-widget-loop-grid .elementor-grid .e-loop-item a {
    margin: 0;
    width: 100%;
}

.archive_blog_lists .elementor-widget-loop-grid .elementor-grid.change-layout .e-loop-item:nth-child(7) .elementor-widget-spacer,
.archive_blog_lists .elementor-widget-loop-grid .elementor-grid.change-layout .e-loop-item:nth-child(5) .elementor-widget-spacer {
    padding-bottom: 100%;
}

.related-blog-teaser {
    grid-template-columns: repeat(4, 1fr);
}

.related-blog-teaser .teaser-thumb {
    position: relative;
    display: block;
    height: 0;
    overflow: hidden;
    border-radius: 12px;
    padding-bottom: 100%;
}

.related-blog-teaser .teaser-thumb::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--body);
    opacity: 0.4;
    z-index: 1;
}

.related-blog-teaser .teaser-thumb img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.teaser-category {
    color: var(--white);
    text-transform: uppercase;
    background-color: #FBFBFB1A;
    padding: 8px;
    border-radius: 8px;
}

.teaser-meta-wrapper,
.teaser-meta {
    position: absolute;
    left: 16px;
    bottom: 16px;
    right: 16px;
    color: var(--white);
    z-index: 2;
}

.teaser-meta-wrapper {
    top: 16px;
    bottom: auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.teaser-meta-wrapper>* {
    margin: 0;
    width: fit-content;
}

.teaser-meta-wrapper>h4 {
    margin-top: -10px;
}

.category-archive-wrap h2 {
    margin: 0 0 32px;
    color: var(--body);
}

.category-archive-wrap h2 span {
    color: var(--Couleurssaule500);
}

/* single single-post
=============================================== */
.single-post .elementor-widget-theme-post-content img {
    border-radius: 20px;
}

.single-post .elementor-widget-theme-post-content .wp-block-group {
    background-color: var(--Couleurssaule500);
    padding: 16px;
    border-radius: 20px;
    margin-top: 32px;
}

.single-post .elementor-widget-theme-post-content .wp-block-group * {
    color: var(--white);
}

.single-post .elementor-widget-theme-post-content .wp-block-group .wp-element-button {
    background-color: var(--white);
    border-radius: 8px;
    padding: 8px 16px;
    color: var(--Couleurssaule500);
    border: 1px solid var(--white);
    transition: var(--transition);
    margin-top: 16px;
}

.single-post .elementor-widget-theme-post-content .wp-block-group figure {
    margin-bottom: 40px;
}

.single-post .elementor-widget-theme-post-content .wp-block-group .wp-element-button:hover {
    background-color: transparent;
    color: var(--white);
}

.single-post .elementor-widget-theme-post-content .wp-block-group .wp-block-heading:first-child {
    margin-top: 40px;
}

.single-post .elementor-widget-theme-post-content .wp-block-heading:not(:first-child):not(:nth-child(2)) {
    margin-top: 32px;
}

.single-post .elementor-widget-theme-post-content table thead {
    border-bottom: none;
}

.single-post .elementor-widget-theme-post-content table {
    margin-top: 10px;
}

.single-post .elementor-widget-theme-post-content table thead tr th {
    background-color: var(--Couleurssaule500);
    padding: 10px 12px;
    color: var(--white);
    font-weight: var(--semibold);
    font-size: 12px;
    border-radius: 0;
    border-color: var(--Couleurssaule500);
}

.single-post .elementor-widget-theme-post-content table tbody tr td {
    border-color: var(--Couleurssaule500);
}

/* Boat tabs
=============================================== */
.boat-tabs-content.boat-accordion-content {
    max-height: inherit;
    overflow: visible;
    border: 1px solid var(--blue);
    border-top: none;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    padding: 24px;
    display: block;
}

.boat-accordion {
    display: none;
}

.boat-tabs-nav {
    display: flex;
    border-bottom: 1px solid var(--blue);
    gap: 9px;
}

.boat-tabs-nav>div {
    flex: 1;
    padding: 12px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    background-color: var(--blue);
    border: 1px solid var(--blue);
    color: var(--white);
    font-weight: var(--medium);
    font-size: 24px;
    transition: var(--transition);
    border-bottom: none;
    line-height: 1;
    position: relative;
    cursor: pointer;
    min-width: fit-content;
}

.boat-tabs-nav>div::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 1px;
    background-color: var(--white);
    z-index: 2;
    opacity: 0;
    transition: var(--transition);
}

.boat-tabs-nav>div:hover:before,
.boat-tabs-nav>div.active::before {
    opacity: 1;
}

.boat-tabs-nav>div img {
    transition: var(--transition);
    filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
}

.boat-tabs-nav>div:hover,
.boat-tabs-nav>div.active {
    background-color: transparent;
    color: var(--blue);
}

.boat-tabs-nav>div:hover img,
.boat-tabs-nav>div.active img {
    filter: none;
}

.boat-tab-panel {
    display: none;
}

.boat-tab-panel.active {
    display: grid;
    grid-template-columns: 1fr .7fr;
    gap: 32px;
}

.boat-tabs-content .boat-tab-panel:last-child .accordion-detail-section:last-child .feature-text,
.boat-accordion-item:last-child .section-has-icon:nth-child(2) .accordion-feature-list .feature-row,
.boat-tab-panel:last-child .section-has-icon:nth-child(2) .feature-row,
.additional-info-boat {
    color: #de6b50;
}

body .select2-container--default .select2-selection--single .select2-selection__placeholder,
body .boat-filters .select2-container--default .select2-selection--single .select2-selection__rendered .select2-selection__placeholder {
    color: rgba(5, 47, 51, 0.5);
    font-weight: var(--regular);
}

body .boat-filters .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: rgba(5, 47, 51, 1);
}

.custom_nos_slider .swiper-wrapper {
    transition-timing-function: linear;
}

/* body:has(.boat-filters .filter-wrapper .select2-container--open) .select2-results__options li:first-child {
    display: none;
} */
/* Trips single template */
.trip-additional-content-section .item-inner.grid-container div.text-column,
.trip-additional-content-section div.text-column h2 {
    color: var(--body);
}

.trip-additional-content-section div.text-column h2 span {
    color: var(--Couleurssaule500);
}

.main_header_element>.e-con-inner {
    transition: var(--transition);
}

.elementor-sticky--effects .main_header_element>.e-con-inner {
    padding-top: 5px;
    padding-bottom: 5px;
}

.trip-boat-slider .boat-grid .slick-list {
    margin: 0 -12px;
}

.trip-boat-slider .boat-grid .slick-list .slick-slide {
    margin: 0 12px;
}

/* Trips testimonial */
.testimonial-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 10px;
}

div.testimonial-content h3 {
    margin: 0;
    font-family: var(--lora);
    color: var(--Couleurssaule500);
    font-weight: var(--medium);
}

.testimonial-content p {
    color: var(--body);
    font-size: 32px;
    max-width: 786px;
}

.slick-slider div.testimonial-content-wrapper:has(.testimonial-image) {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 48px;
    align-items: center;
}

.video-teaser-thumbnail-wrapper,
.slick-slider div.testimonial-content-wrapper:has(.testimonial-image) .testimonial-image {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    padding-bottom: 66%;
}

.slick-slider div.testimonial-content-wrapper:has(.testimonial-image) .testimonial-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

div.testimonial-content a {
    padding-bottom: 8px;
    color: #093E3E;
    position: relative;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 15px;
    transition: var(--transition);
}

div.testimonial-content a::before {
    height: 2px;
}

div.testimonial-content a svg {
    width: 1em;
    height: 1em;
    font-size: 12px;
}

div.testimonial-content img {
    max-width: 185px;
}

/* Trips single video */
.video-teaser-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.video-teaser-thumbnail-wrapper {
    border-radius: 12px;
    padding-bottom: 43%;
}

.video-teaser-thumbnail-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #07070733;
    z-index: 1;
}

.play-overlay {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

.play-button {
    display: block;
    max-width: 90px;
}

.play-button svg {
    width: 100%;
}

div.video-teaser-item h4 {
    margin: 24px 0 0;
    color: #052F33;
    font-weight: var(--regular);
}

.fancybox__viewport .fancybox__track {
    max-width: 1100px;
    margin-inline: auto;
    transform: none !important;
}

.fancybox__viewport .fancybox__track .fancybox__content {
    padding: 1px;
    height: 0 !important;
    padding-bottom: 56.25%;
    position: relative;
}

.fancybox__viewport .fancybox__track .fancybox__content iframe {
    position: absolute;
    top: 0;
    left: 0;
}

body .fancybox__content>.f-button.is-close-btn {
    background-color: transparent;
    padding: 0;
    border: none;
}

body .fancybox__backdrop {
    opacity: 0.5;
}

/* Bon Plans */
div.discount_custom_slider button.slick-arrow {
    padding: 0;
    background-color: transparent;
    border: none;
    width: 36px;
    z-index: 22;
    height: 36px;
}

div.discount_custom_slider button.slick-arrow.slick-next {
    right: -40px;
}

div.discount_custom_slider button.slick-arrow.slick-prev {
    left: -40px;
}

div.discount_custom_slider button.slick-arrow::before {
    content: none;
}

div.discount_custom_slider .slick-list {
    margin: 0 -10px;
}

div.discount_custom_slider .slick-list .slick-slide {
    margin: 0 10px;
}

/* page-offer-container */
.page-offer-container .slick-list {
    margin: 0 -8px;
    overflow: visible;
}

.page-offer-container .slick-list .slick-slide {
    margin: 0 8px;
    border-radius: 20px;
    border: 1px solid #D9D9D9;
    overflow: hidden;
}

.page-offer-container .slick-list .slick-slide .page-offer-img-wrapper {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 60%;
}

.page-offer-container .slick-list .slick-slide .page-offer-img-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page-offer-container .offer-content {
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.page-offer-container .offer-btn {
    margin-top: auto;
}

div.offer-label {
    position: absolute;
    z-index: 22;
    border-radius: 20px;
    padding: 2px 12px;
    color: var(--white);
    top: 12px;
    right: 12px;
    background-color: #4BA682;
    font-weight: var(--medium);
    font-family: var(--lora);
}

div.offer-label.Orange {
    background-color: var(--orange);
}

div.offer-label.Orange.top {
    border-radius: 0 0 0 20px;
    bottom: auto;
    top: 0;
}

div.offer-label span {
    display: block;
    width: fit-content;
    text-align: center;
}

div.offer-label .offer-percent {
    font-size: 25px;
    font-weight: var(--medium);
    font-family: var(--outfit);
}

div.offer-label.Bottom {
    top: auto;
    bottom: 0;
    right: 0;
    border-radius: 20px 0 0;
    font-family: var(--outfit);
}

.page-offer-container .offer-content .offer-btn {
    max-width: 210px;
    margin-inline: auto;
    padding: 12px;
}

#boats-results>p {
    color: var(--white);
}

.swiper-slide:empty {
    display: none !important;
}

.swiper-wrapper {
    align-items: stretch;
}

.swiper-slide {
    height: auto !important;
}

div.custom_nos_slider>div.swiper {
    margin-right: -100px;
}

/* Multi select js style */

/* .select2-selection--multiple .select2-selection__choice:not(:first-child) {
  display: none;
} */

.select2-selection--multiple .select2-selection__rendered::after {
    content: '…';
    padding-left: 6px;
}

body:has(.select2-selection--multiple[aria-expanded="true"]) .select2-results__option {
    position: relative;
    padding-left: 30px;
}

body:has(.select2-selection--multiple[aria-expanded="true"]) .select2-results__option:has(.select2-region-option) {
    width: calc(100% - 20px);
    margin-left: 20px;
}

body:has(.select2-selection--multiple[aria-expanded="true"]) .select2-results__option::before {
    content: '';
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    border: 1px solid #194556;
    border-radius: 3px;
    background: #ffffff;
}

body:has(.select2-selection--multiple[aria-expanded="true"]) .select2-results__option[aria-selected="true"]::after {
    content: '✓';
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    color: #194556;
}

/* Multi select */
body .select2-container--default.select2-container--focus .select2-selection--multiple,
body .select2-container--default .select2-selection--multiple {
    height: 36px;
    border-width: 0 0 1px;
    border-color: rgba(5, 47, 51, 0.5);
    border-style: solid;
    border-radius: 0;
    padding-inline: 0;
    overflow-y: auto;
}

body.single-offer>header,
body .select2-container--default.select2-container--focus .select2-selection--multiple::-webkit-scrollbar,
body .select2-container--default .select2-selection--multiple::-webkit-scrollbar {
    display: none;
}

body .select2-container--default .select2-search--inline .select2-search__field::placeholder,
body .select2-container--default .select2-search--inline .select2-search__field {
    opacity: 1;
    color: rgba(5, 47, 51, 0.5);
    font-weight: var(--regular);
}

body .select2-container--default .select2-selection--multiple .select2-selection__choice {
    font-size: 14px;
    line-height: 1;
    padding: 5px;
    color: #052F33;
    background-color: transparent;
    border: 1px solid #052F33;
}

.select2-selection--multiple .select2-selection__choice:not(:first-child):not(:nth-child(2)) {
    display: none;
}

.breadcrum_fade .elementor-shortcode a {
    color: #15151580;
    font-size: 14px;
}

/* Faq page  */
div.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 32px;
    cursor: pointer;
}

div.faq-question h3 {
    font-size: 20px;
    margin: 0;
    color: var(--Couleurssaule500);
}

.faq-widget .faq-item .faq-question {
    padding: 16px 32px;
}

.faq-question svg {
    transition: var(--transition);
    min-width: 20px;
}

.active .faq-question svg {
    transform: scale(-1, -1);
}

.faq-widget .faq-item {
    border-radius: 8px;
    background-color: #F9F9F9;
    transition: var(--transition);
}

.faq-widget .faq-item:not(:last-child) {
    margin-bottom: 24px;
}

.faq-widget .faq-item.active {
    background-color: #D3F7DE;
}

.faq-answer {
    padding: 16px 32px;
    color: var(--Couleurssaule500);
    font-size: 18px;
    padding-top: 8px;
}

div#faq-list {
    margin-top: 18px;
}

.faq-select-wrapper {
    width: 100%;
    max-width: 306px;
}

.page-id-4404 .select2-results__options li:first-child,
.faq-item:not(.active) .faq-answer {
    display: none;
}

.page-id-4404 .select2-results__options li span {
    display: block;
}

/* Boat type list */
.boat-type-item-footer,
.boat-type-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.boat-type-item-footer {
    gap: 40px;
    align-items: center;
}

.boat-type-list {
    gap: 19%;
    row-gap: 64px;
}

.boat-type-item .boat-type-name {
    font-size: 20px;
    font-weight: var(--semibold);
    color: var(--blue);
    margin: 0 0 10px;
}

div a.button_outline {
    font-size: 18px;
    font-weight: var(--reditsans);
    color: var(--blue);
    display: flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    margin-top: auto;
}

.button_outline svg {
    width: 1em;
    height: 1em;
    font-size: 16px;
}

.type-content-left .button_outline svg {
    font-size: 24px;
}

.boat-type-item {
    display: flex;
    flex-direction: column;
}

.boat-type-description {
    font-family: var(--reditsans);
    margin-bottom: 32px;
}

div a.button_outline:hover {
    color: var(--blue);
}

div.boat-type-image {
    position: relative;
    height: 0;
    overflow: hidden;
    padding-bottom: 45%;
}

div.boat-type-image img {
    object-fit: contain;
}

/* boat-levels-list */
.boat-people-list,
.boat-levels-list {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    justify-content: center;
}

.boat-level-item {
    width: calc(25% - 18px);
}

.boat-level-card {
    height: 190px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 8px;
    border-radius: var(--radius_m);
    overflow: hidden;
    padding: 10px;
}

.boat-level-card .boat-level-name {
    color: var(--white);
    margin: 0;
    font-weight: var(--bold);
    font-size: 24px;
}

.boat-level-title-wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
}

.boat-level-title-wrapper svg {
    width: 25px;
    height: 25px;
}

.boat-level-rating {
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap;
}

.boat-level-rating svg {
    width: 36px;
    height: 36px;
}

.boat-level-description {
    margin-top: 16px;
}

.elementor-shortcode>h2 {
    margin: 0;
}

div.type-content-left h3 {
    font-size: 36px;
    font-weight: var(--medium);
    margin: 0 0 16px;
}

/* number of people  */
.boat-people-link {
    display: block;
    width: calc(33.33% - 16px);
}

div.boat-people-image {
    border-radius: var(--radius_l);
    padding-bottom: 49%;
    min-height: 200px;
}

.boat-people-image::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(21, 21, 21, 0) 0%, rgba(21, 21, 21, 0.4) 77.4%);
    z-index: 1;
}

.boat-people-item .boat-people-name {
    font-size: 24px;
    font-weight: var(--medium);
    color: var(--white);
    margin: 0;
}

.boat-people-item {
    position: relative;
}

.people-title-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.people-title-wrapper {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 10px;
    z-index: 2;
}

body header.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs>.e-n-tabs-heading .e-n-tab-title[aria-selected=true] {
    background-color: #EBEBEB;
}

body header.elementor .elementor-element.elementor-widget-n-tabs:not(:has(>.elementor-widget-container))>.e-n-tabs>.e-n-tabs-content .e-n-tab-title[aria-selected=true] {
    background-color: transparent;
}

div.header-contact-wrapper .elementor-button:hover,
div.header-contact-wrapper .elementor-button {
    background-color: var(--white);
    color: var(--Couleurssaule500);
    border-color: var(--white);
    cursor: pointer;
    min-width: max-content;
    padding: 11px 16px;
}

.secondary_header div.header-contact-wrapper .elementor-button {
    background-color: #F9F9F9;
    border-color: #F9F9F9;
}

.secondary_header div.header-contact-wrapper .elementor-button:hover,
div.header-contact-wrapper .elementor-button:hover {
    background-color: #effffa;
}

@media(max-width: 1350px) and (min-width:1025px) {
    div.elementor-element.header_transparent .mobile_version {
        margin-bottom: -98.6px !important;
    }
    header .main_header_element {
        display: none !important;
    }

    header .mobile_version,
    header .mobile_header {
        display: flex ! Important;
    }

    .header_transparent .elementor-element.mobile_version .elementor-icon svg,
    .header_transparent .elementor-element.mobile_version .elementor-widget-image img,
    .header_transparent .elementor-element.mobile_version {
        transition: var(--transition);
    }

    .header_transparent .elementor-element.mobile_version .elementor-widget-image img {
        filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(341deg) brightness(112%) contrast(112%);
    }

    .elementor-sticky--effects.header_transparent .elementor-element.mobile_version .elementor-widget-image img {
        filter: none;
    }
    div.header_transparent div.elementor-element.mobile_version div.elementor-widget-icon .elementor-icon svg {
        fill: var(--white);
    }
    .elementor-sticky--effects.header_transparent .elementor-element.mobile_version {
        background-color: var(--white);
    }
}

/* Responsive 
===============================================*/
@media (min-width:768px) {
    .type-content-right .button_outline {
        display: none;
    }
}

@media (max-width:1240px) and (min-width:1025px) {
    header.elementor-location-header div.elementor-element nav.e-n-menu .e-n-menu-heading .e-n-menu-item:not(:last-child) {
        margin-inline-end: 10px;
    }

    header.elementor-location-header div.elementor-element.right_header_column>div.elementor-element:first-child {
        display: none;
    }
}

/* 
@media (max-width:1200px) and (min-width:1025px) {
    header.elementor-location-header div.elementor-element.right_header_column>div.elementor-element:nth-child(2) {
        display: none;
    }
} */

@media (max-width:1100px) and (min-width:1025px) {
    header.elementor-location-header div.elementor-element.main_header_element>.e-con-inner>div.elementor-element:nth-child(3) {
        display: none;
    }
}

@media (max-width:1400px) {
    .boat-tabs-nav>div {
        font-size: 20px;
    }

    .boat-accordion-content ul:has(li.has-icon) {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width:1200px) {
    .boat-tabs-nav>div {
        gap: 10px;
        font-size: 18px;
    }

    .boat-accordion-header span img {
        width: 20px;
    }

    .offer-cards-container .slick-list {
        padding-right: 2rem;
    }

    .offer-cards-container .slick-list .offer-card {
        grid-template-columns: 220px 1fr;
    }

    .boat-accordion-content ul:has(li.has-icon) li {
        font-size: 16px;
    }
}

@media (max-width:1024px) {
    .dialog-lightbox-widget-content .e-n-accordion-item-title-text a {
        color: var(--body);
    }

    body .elementor-popup-modal .dialog-message {
        overflow: visible;
    }

    .wpml-lang-current .dropdown-arrow svg path {
        fill: var(--Couleurssaule500);
    }

    .wpml-lang-current {
        color: var(--Couleurssaule500);
    }

    .menu__lists .elementor-icon-list-items li a {
        flex-direction: row-reverse;
    }

    .riv-search-wrapper .riv-filters>* {
        width: calc(33.33% - 21.33px);
    }

    div.type-content-left h3 {
        font-size: 30px;
    }

    .boat-people-item .boat-people-name,
    .boat-level-card .boat-level-name {
        font-size: 20px;
    }

    .boat-people-link,
    .boat-level-item {
        width: calc(50% - 12px);
    }

    .boat-type-list {
        gap: 64px;
    }

    .play-button {
        max-width: 60px;
    }

    body.admin-bar:has(.riverly-top-bar.fade-out) div.elementor-element.itinerary-tab-section.elementor-sticky--effects {
        top: 121px !important;
    }

    .header_transparent .elementor-element.mobile_version .elementor-icon svg,
    .header_transparent .elementor-element.mobile_version .elementor-widget-image img,
    .header_transparent .elementor-element.mobile_version {
        transition: var(--transition);
    }

    .header_transparent .elementor-element.mobile_version .elementor-widget-image img {
        filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(341deg) brightness(112%) contrast(112%);
    }

    .elementor-sticky--effects.header_transparent .elementor-element.mobile_version .elementor-widget-image img {
        filter: none;
    }

    div.header_transparent div.elementor-element.mobile_version div.elementor-widget-icon .elementor-icon svg {
        fill: var(--white);
    }

    div.header_transparent.elementor-sticky--effects div.elementor-element.mobile_version div.elementor-widget-icon .elementor-icon svg {
        fill: transparent;
    }

    .elementor-sticky--effects.header_transparent .elementor-element.mobile_version {
        background-color: var(--white);
    }

    .related-blog-teaser {
        grid-template-columns: repeat(2, 1fr);
    }

    body.archive:not(.paged) .related-blog-teaser>.related-teaser-card:nth-child(2),
    .archive_blog_lists .elementor-widget-loop-grid .elementor-grid .e-loop-item:nth-child(5),
    body.archive:not(.paged) .related-blog-teaser>.related-teaser-card:first-child,
    .archive_blog_lists .elementor-widget-loop-grid .elementor-grid .e-loop-item:nth-child(3) {
        grid-column: span 1;
        grid-row: span 1;
    }

    body.archive:not(.paged) .related-blog-teaser>.related-teaser-card:nth-child(2) a,
    .archive_blog_lists .elementor-widget-loop-grid .elementor-grid .e-loop-item:nth-child(5) .elementor-widget-spacer {
        padding-bottom: 100%;
    }

    .cruise-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .image_carousel_section .swiper {
        padding: 0 2rem;
    }

    .additional-items-container {
        gap: 64px;
    }

    .item-inner.grid-container {
        gap: 48px;
    }

    body .dialog-type-lightbox {
        height: calc(100% - 120px);
    }

    body .elementor-popup-modal .dialog-message {
        max-height: calc(100vh - 120px);
    }

    body.admin-bar div.dialog-type-lightbox {
        position: fixed;
    }

    body .dialog-type-lightbox {
        z-index: 9999;
    }

    .riv-accordion-content,
    .riv-faq-answer {
        font-size: 16px;
    }

    #elementor-popup-modal-3191 .dialog-widget-content {
        overflow-y: auto;
    }

    .menu__lists .elementor-icon-list-items li .elementor-icon-list-icon {
        opacity: 1;
        visibility: visible;
    }

    .destinations-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .rs-tab-content-wrapper {
        padding: 25px;
        border-radius: 0;
    }
}

@media (max-width:991px) {
    .mobile_table_wrapper .booking-slider>span.slider_arrow_right {
        right: 5px;
    }

    .boat .slick-td-wrapper>div.slick-boat-wrapper {
        margin: -6px 0 -6px -6px;
    }

    .slick-slider.slick-itinerary .slick-track .slick-slide {
        height: 170px;
    }

    div.slick-slider.slick-itinerary .slick-list {
        width: 100%;
    }

    div.slick-slider.slick-itinerary {
        margin: 0;
    }

    .boat-tabs,
    .desktop_table {
        display: none;
    }

    .boat-accordion,
    .mobile_table_wrapper {
        display: block;
    }

    div.elementor-element.unmissable-mobile-slider {
        grid-template-columns: 1fr;
        gap: 0;
    }

    form.rs-search-form {
        flex-wrap: wrap;
        gap: 24px;
    }

    .offer-cards-container .slick-list .offer-card {
        grid-template-columns: 1fr;
        padding: 16px;
    }

    .offer-cards-container .slick-list .offer-card .offer-content {
        padding: 16px 0 0;
    }

    .boat-cruise-cards-wrapper.slick-slider .slick-list,
    .offer-cards-container .slick-list {
        padding-right: 4rem;
    }

    .simple-hover-widget {
        gap: 24px;
    }

    .blog-teaser-grid .slick-list {
        margin: 0 -12px;
    }

    .blog-teaser-grid .slick-list .slick-slide {
        margin: 0 12px;
    }

    .blog-teaser-grid .slick-dots li {
        margin: 0 2px;
    }

    .slick-dotted.slick-slider.blog-teaser-grid {
        margin: 0;
    }

    .riv-grid {
        gap: 32px;
    }

    .blog-teaser-grid.unmissable-mobile-slider .slick-dots {
        position: absolute;
    }

    .offer-image {
        min-height: auto;
        height: 0;
        padding-bottom: 75%;
    }

    .boat-accordion-content {
        grid-template-columns: 1fr;
    }

    div.accordion-inner-image img {
        aspect-ratio: 10 / 5;
    }

    body .elementor-widget-taxonomy-filter .e-filter {
        flex-wrap: nowrap;
        overflow-x: auto;
    }

    .testimonial-content p {
        font-size: 24px;
    }
}

@media (max-width:767px) {

    .boat-people-list .slick-list {
        overflow: visible;
        padding-right: 20%;
    }

    div.type-content-left h3 {
        font-size: 24px;
    }

    .boat-level-title-wrapper svg {
        width: 22px;
        height: 22px;
    }

    div a.button_outline,
    .boat-level-card .boat-level-name {
        font-size: 16px;
        font-weight: var(--medium);
    }

    .boat-level-card {
        height: 155px;
    }

    .boat-type-item-footer,
    .boat-type-list {
        gap: 32px;
        grid-template-columns: 1fr;
    }

    .boat-type-item-footer {
        gap: 20px;
    }

    .type-content-left .boat-type-description {
        margin: 0;
    }

    .faq-select-wrapper {
        max-width: 100%;
    }

    div#faq-list {
        margin-top: 44px;
    }

    div.custom_nos_slider>div.swiper {
        margin-right: 0;
    }

    .page-offer-container .slick-list {
        padding-right: 2rem;
    }

    .mobile-trip-image-column {
        display: block;
        width: 100%;
        margin-top: 32px;
    }

    .trip-additional-content-section .text-column .toggle-button-container button {
        margin-inline: auto;
    }

    .toggle-button-container {
        margin-top: 10px;
        margin-inline: auto;
    }

    .type-content-left .button_outline,
    .image-column {
        display: none;
    }

    .additional-content-section .image-column {
        display: block;
    }

    div.video-teaser-item h4 {
        margin: 16px 0 0;
    }

    .slick-slider div.testimonial-content-wrapper:has(.testimonial-image) .testimonial-image {
        width: 100%;
        max-width: 90%;
        margin-inline: auto;
    }

    div.testimonial-content h3 {
        font-size: 22px;
    }

    .boat-people-item .boat-people-name,
    .testimonial-content p {
        font-size: 18px;
    }

    .slick-slider div.testimonial-content-wrapper:has(.testimonial-image) {
        gap: 32px;
    }

    .boat_type_archive .cruise-filters,
    .slick-slider div.testimonial-content-wrapper:has(.testimonial-image),
    .video-teaser-grid {
        grid-template-columns: 1fr;
    }

    .boat-accordion-content ul:has(li.has-icon) {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .boat-accordion-item:last-child .section-has-icon:nth-child(2) .accordion-feature-list {
        grid-template-columns: repeat(2, 1fr);
    }

    div.accordion-inner-image img {
        aspect-ratio: 10 / 6;
    }

    .related-blog-teaser .teaser-thumb,
    body.archive:not(.paged) .related-blog-teaser>.related-teaser-card:nth-child(2) a,
    .archive_blog_lists .elementor-widget-loop-grid .elementor-grid .e-loop-item:nth-child(5) .elementor-widget-spacer {
        padding-bottom: 60%;
    }

    .boat-accordion .boat-accordion-item .boat-accordion-header {
        font-size: 20px;
    }

    .boat-people-list .slick-list,
    .comfort_level_slider .slick-list,
    .comfort_mobile_slider .slick-list {
        margin: 0 -8px;
    }

    .boat-people-list .slick-list {
        margin: 0 -12px;
    }

    .boat-people-list .slick-list .slick-slide,
    .comfort_level_slider .slick-list .slick-slide,
    .comfort_mobile_slider .slick-list .slick-slide {
        margin: 0 8px;
    }

    .boat-people-list .slick-list .slick-slide {
        margin: 0 12px;
    }

    .related-blog-teaser,
    .news-cards-wrapper .news-cards-grid {
        grid-template-columns: 1fr;
    }

    .custom-tabs ul {
        padding-right: 0;
    }

    .bottom_footer_menu.elementor-nav-menu__align-end .elementor-nav-menu {
        justify-content: flex-start;
        row-gap: 8px;
    }

    footer div.elementor-element .bottom_footer_menu.elementor-nav-menu__align-end .elementor-nav-menu>li:not(:last-child)>a {
        margin-inline-end: 0;
    }

    footer div.elementor-element .bottom_footer_menu.elementor-nav-menu__align-end .elementor-nav-menu>li:not(:first-child)>a {
        margin-inline-start: 0;
    }

    footer div.elementor-element .bottom_footer_menu.elementor-nav-menu__align-end .elementor-nav-menu li a {
        margin: 0 16px 0 0 !important;
    }

    div.riv-card-content h4 {
        margin: 0 0 5px;
    }

    .single-country .riverly-destinations-grid:not(:has(.read-more-wrapper)) {
        margin-bottom: 0;
    }

    .single-country .destinations-grid {
        margin: 0 0 16px;
    }

    .riv-accordion-left {
        padding: 16px;
    }

    div.elementor-element.mobile_absolute {
        position: absolute;
        left: -16px;
        bottom: 0;
        right: -16px;
        background: linear-gradient(0deg, #9BDBF8, #9BDBF8),
            linear-gradient(0deg, rgba(242, 242, 242, 0.6), rgba(242, 242, 242, 0.6));
        backdrop-filter: blur(15px);
        width: calc(100% + 32px);
        z-index: 22;
    }

    .single-country div.elementor-element.mobile_absolute {
        background: #F2F2F299;
    }

    .offer-cards-container .slick-list {
        padding-right: 3rem;
    }

    .riverly-top-bar-content {
        font-size: 14px;
    }

    .item-inner.grid-container {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    div.image-column-inner {
        padding-bottom: 85%;
    }

    body.single .search-filter-section .select2-container--default .select2-selection--single,
    .single .search-filter-section .rs-field input {
        border: 1px solid rgba(5, 47, 51, 0.5);
        border-radius: var(--radius_sm);
        color: rgba(5, 47, 51, 0.5);
    }

    body.single .search-filter-section .select2-container--default .select2-selection--single .select2-selection__rendered {
        padding-left: 20px;
    }

    body.single .select2-container--default .select2-selection--single .select2-selection__arrow {
        width: 20px;
    }

    .table-title-section {
        padding-right: 0;
    }

    .single-region-footer,
    div.table-title-section>span {
        text-align: center;
    }

    .search-filter-section .rs-field input {
        padding: 8px;
        padding-left: 20px;
    }

    div.table-title-section h2:not(.mobile-title),
    div.table-title-section h2 span,
    div.image-column-inner>svg,
    .search-filter-section .rs-field label {
        display: none;
    }

    .single-region-footer span,
    div.table-title-section h2.mobile-title,
    .explore-content-section div.image-column-inner svg,
    .mobile-svg,
    .search-button-wrapper>span:first-child {
        display: block;
    }

    .search-button-wrapper {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 15px;
    }

    span.search-filter-button {
        position: static;
    }

    .custom-tabs ul {
        margin: 0 0 25px;
        flex-wrap: nowrap;
        overflow-x: auto;
        width: calc(100% + 16px);
        padding-right: 16px;
    }

    .departure-content span {
        font-size: 16px;
    }

    .departure-card {
        gap: 16px;
    }

    .departure-card:not(:last-child) {
        margin-bottom: 16px;
    }

    .custom-control-wrapper>div svg {
        width: 20px;
        height: 20px;
    }

    .riv-grid {
        display: flex;
        flex-direction: column-reverse;
        position: relative;
        margin-left: -16px;
        width: calc(100% + 32px);
    }

    .boat-level-description {
        font-size: 14px;
    }

    div.riv-map img {
        border-radius: 0;
    }

    .boat-level-rating svg {
        width: 30px;
        height: 30px;
    }

    .riv-search-wrapper .riv-filters>*,
    .search-filter-section>div,
    .riv-filters>*,
    .riv-accordion-wrapper>div.riv-accordion-left {
        width: 100%;
        flex: none;
    }

    .riv-accordion-wrapper {
        flex-direction: column;
    }

    .rs-tab-content-wrapper {
        padding: 16px 16px 56px;
        box-shadow: none;
    }

    form.rs-search-form>* {
        flex: 100%;
        width: 100%;
    }

    .cruise-grid::after,
    div#riverly-single-thumbs-slider,
    .itinerary-step .step-marker svg,
    .desktop-version,
    .riv-accordion-wrapper>div.riv-accordion-right,
    .custom-slider-controls {
        display: none;
    }

    .riverly-slider-wrapper .custom-slider-controls {
        display: block;
    }

    .tab-content-grids.slick-slider .slick-arrow,
    .tab-content-grid.slick-slider .slick-arrow,
    .riv-accordion-slider .slick-dots {
        opacity: 0;
        visibility: hidden;
        position: absolute;
    }

    .cruise-filters,
    .simple-hover-widget {
        grid-template-columns: 1fr;
    }

    div.hover-right-image {
        padding-bottom: 56.25%;
    }

    .top-tab-wrapper {
        justify-content: flex-start;
        gap: 20px;
    }

    .teaser-card a.teaser-link {
        font-size: 16px;
    }

    .riv-accordion-mobile-gallery {
        margin-top: 10px;
    }

    .riv-accordion-mobile-gallery,
    .mobile-version {
        display: block;
    }

    /* Destination list */
    .mobile-select-wrapper {
        font-size: 18px;
        position: relative;
        display: flex;
        align-items: center;
        width: fit-content;
        margin-bottom: 15px;
    }

    .mobile-select-wrapper svg {
        position: absolute;
        right: 0;
    }

    .mobile-select-wrapper>span.mobile-select-title {
        position: absolute;
        top: -2px;
    }

    body .riverly-destinations-grid .select2-container .select2-selection--single .select2-selection__rendered {
        color: var(--body);
        padding-left: 162px;
    }

    body .riverly-destinations-grid .select2-container--default .select2-selection--single {
        background-color: transparent;
        border: none;
        border-radius: 0;
    }

    body .riverly-destinations-grid .select2-container--default .select2-selection--single .select2-selection__arrow,
    body .riverly-destinations-grid .select2-container--default .select2-selection--single {
        height: 20px;
    }

    body .riverly-destinations-grid .select2-container--default .select2-selection--single .select2-selection__rendered {
        line-height: 20px;
        position: relative;
        z-index: 55;
    }

    .destinations-mobile-select:focus,
    .destinations-mobile-select:focus-visible {
        outline: none;
    }

    .destinations-mobile-select {
        border: none;
        padding: 0;
        border-radius: 0;
        padding-left: 160px;
        padding-right: 12px;
        appearance: none;
        position: relative;
        background-color: transparent;
        margin-bottom: 15px;
        box-shadow: none;
        outline: none;
    }

    select.destinations-mobile-select {
        width: fit-content;
        margin-bottom: 0;
    }

    .card-image {
        padding-bottom: 45%;
    }

    .blog-teaser-grid .slick-list,
    .destination-single-slider .slick-list,
    .riv-list .slick-list,
    .cruise-grid .slick-list,
    .destinations-grid.mobile-grid .slick-list {
        margin: 0 -8px;
        padding-right: 4rem;
        overflow: visible;
    }

    .blog-teaser-grid .slick-list {
        padding-right: 0;
        overflow: hidden;
    }

    .destination-single-slider .slick-list {
        padding-right: 45%;
        margin: 0 -12px;
    }

    .destination-single-slider .card-image {
        padding-bottom: 60%;
    }

    .destination-single-slider .slick-list .slick-slide,
    .riv-list .slick-list .slick-slide,
    .cruise-grid .slick-list .slick-slide,
    .destinations-grid.mobile-grid .slick-list .slick-slide {
        margin: 0 8px;
    }

    .destination-single-slider .slick-list .slick-slide {
        margin: 0 12px;
    }

    .riverly-search-box .rs-tabs>button {
        font-size: 14px;
        padding: 16px 12px;
        flex: 1;
        gap: 4px;
    }

    .riverly-destinations-grid .custom-control-wrapper>div {
        position: static;
        width: auto;
        height: auto;
        background-color: transparent;
        border-radius: 0;
        transform: none;
    }

    .unmissable-mobile-slider .slick-dots,
    .riverly-destinations-grid .custom-control-wrapper>div.custom-prev {
        opacity: 0;
        visibility: hidden;
    }

    .riverly-destinations-grid .custom-control-wrapper>div svg path {
        fill: var(--body);
        opacity: 0.5;
    }

    .riverly-destinations-grid .custom-control-wrapper>div svg {
        width: 12px;
        height: 15px;
    }

    .riverly-destinations-grid .custom-control-wrapper {
        display: flex;
        position: absolute;
        right: 0;
        top: 5px;
        gap: 10px;
    }

    .offer-cards-container .slick-list .slick-slide {
        box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.25);
    }

    .itinerary-container {
        flex-direction: column;
        gap: 24px;
    }

    .rs-tab-content-wrapper button[type="submit"] {
        max-width: inherit;
    }

    .rs-tab-content-wrapper button[type="submit"],
    .main-slider-wrapper,
    .itinerary-container>div:nth-child(2),
    .itinerary-container>div:first-child {
        width: 100%;
    }

    .itinerary-left-wrapper {
        position: static;
        display: flex;
        overflow-x: auto;
        padding-bottom: 0;
        padding-left: 0;
        padding-top: 14px;
    }

    .itinerary-content {
        grid-template-columns: 1fr;
    }

    div.itinerary-content img {
        aspect-ratio: 4 / 3.5;
    }

    .itinerary-right {
        padding: 16px;
    }

    .step-marker {
        padding: 9.5px 16px;
    }

    .itinerary-step {
        padding-left: 0;
        padding-top: 36px;
        padding-bottom: 24px;
        padding-right: 16px;
        min-width: fit-content;
    }

    .itinerary-step:not(:last-child)::before {
        width: 100%;
        height: 4px;
        left: 0;
        top: -2px;
    }

    div.step-marker h4 {
        font-size: 14px;
    }

    .itinerary-container>div:first-child::before {
        left: auto;
        background: linear-gradient(270deg, var(--white) 11.72%, rgba(255, 255, 255, 0) 88.28%);
        width: 100px;
        height: 100%;
    }

    .itinerary-step:first-child .step-line,
    .itinerary-step:last-child .step-line,
    .step-line {
        left: 0;
        top: 0;
    }

    .itinerary-left-wrapper::-webkit-scrollbar-track {
        border-radius: 10px;
    }

    .itinerary-left-wrapper::-webkit-scrollbar {
        height: 4px;
    }

    .itinerary-left-wrapper::-webkit-scrollbar-thumb {
        border-radius: 10px;
    }

    .boats-grid .slick-list,
    .tab-content-grids.slick-slider .slick-list,
    .tab-content-grid.slick-slider .slick-list {
        padding: 0 4rem 0 0;
    }

    .riv-list-wrapper::before {
        content: none;
    }

    div.riv-list {
        position: static;
        padding: 0;
        overflow-y: visible;
    }

    .riv-list-wrapper {
        /* position: absolute;
        bottom: 35px;
        left: 16px;
        right: 16px; */
        overflow: visible;
        min-height: auto;
    }

    .riv-list-wrapper .slick-slider .slick-track .slick-slide {
        display: grid;
        box-shadow: 0px 0px 8px 0px #00000040;
        grid-template-columns: 1fr 1.5fr;
    }

    .riv-card-details {
        padding-bottom: 0;
        margin-top: 5px;
        border-bottom: none;
    }

    .riv-card-price {
        padding-top: 16px;
        margin-top: auto;
        border-top: 1px solid #EBEBEB;
    }

    .content-wrapper .riv-link {
        margin: 10px 0 0;
        margin-top: auto;
        padding-top: 10px;
        border-top: 1px solid var(--cool-grey);
    }

    .riv-filters {
        gap: 24px;
        flex-wrap: wrap;
    }

    .riv-grid .riv-list .slick-list {
        padding-right: 1rem;
    }

    .top-tab-wrapper>div {
        flex-wrap: nowrap;
        overflow-x: auto;
        min-width: calc(100% + 16px);
        padding-right: 16px;
    }

    .custom-tabs ul::-webkit-scrollbar,
    .top-tab-wrapper>div::-webkit-scrollbar {
        display: none;
    }

    body .flatpickr-calendar.open {
        left: 0px !important;
        right: 0px !important;
        margin: 0 auto;
    }

}

@media (max-width:480px) {

    .booking-slider,
    .mobile_table_wrapper .booking-table thead th {
        width: 140px;
    }

    .mobile_table .table__wrapper>.booking-table {
        width: calc(100% - 140px);
        min-width: calc(100% - 140px);
    }
}