/* Basics */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

.summer-time:root {
    --color-primary: #faaa03;
    --color-secondary: #153760;
    --color-tile: #FFE9B0;
    --color-other-primary: #52A3FF;
    --color-other-tile: #DDE9F6;
}

.winter-time:root {
    --color-primary: #52A3FF;
    --color-secondary: #153760;
    --color-tile: #DDE9F6;
    --color-other-primary: #faaa03;
    --color-other-tile: #FFE9B0;
}

:root {
    /* gaps width */
    --gap-60: 60px;
    --gap-50: 50px;
    --gap-40: 40px;
    --gap-30: 30px;
    --gap-25: 25px;
    --section-gap: calc(var(--gap-50) * 4);
    --container-padding: calc(var(--gap-50) * 2);
    /* font size */
    --font-30: 24px;
    --font-25: 20px;
    --font-18: 14px;
    --small-text: clamp(16px, 1.1vw, 18px);
    --title-font-size: clamp(36px, 2.5vw, 40px);
}

div, section {
    scroll-margin-top: calc(var(--header-height) + var(--gap-40));
}

a {
    text-decoration: none;
    color: inherit;
}

.text a {
    color: var(--color-primary);
    transition: color, 300ms;
    text-decoration: underline;
}

.text a:hover {
    color: var(--color-secondary);
}

.text {
    font-size: var(--small-text);
    line-height: 1.6;
    color: var(--color-secondary);
    font-weight: 500;
}

textarea {
    resize: none;
}

li {
    list-style: none;
}

.text li {
    list-style: disc;
    margin-left: 25px;

}

.text ol li {
    list-style: auto;
}

.text ol li[data-list="bullet"] {
    list-style: disc;
}

.text img {
    max-width: 100%;
    display: block;
}

body {
    color: var(--color-secondary);
    font-family: 'Poppins', sans-serif;
}


#page {
    overflow: hidden;
    margin: 0 auto;
}

.container {
    max-width: max(1870px, 70vw);
    padding: 0 calc(var(--gap-50) * 2);
    margin: 0 auto;
    width: 100%;
}

.container-medium {
    max-width: 1760px;
}

.container-small {
    max-width: 1580px;
}

.container-very-small {
    max-width: 1400px;
}

.img-wrapper img {
    max-width: 100%;
    display: block;
}

/* icons */

.icon-mask {
    -webkit-mask-size: contain;
    -mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background-color: currentColor;
}

.icon-search {
    -webkit-mask-image: url(../img/icons/search.svg);
    mask-image: url(../img/icons/search.svg);
}

.icon-arrow-right {
    -webkit-mask-image: url(../img/icons/arrow-right.svg);
    mask-image: url(../img/icons/arrow-right.svg);
    width: 17px;
    height: 17px;
    color: inherit;
    display: inline-block;
}

.icon-slider-arrow-left {
    -webkit-mask-image: url(../img/icons/slider-arrow-left.svg);
    mask-image: url(../img/icons/slider-arrow-left.svg);
    width: 23px;
    height: 17px;
    color: inherit;
}

.icon-slider-arrow-right {
    -webkit-mask-image: url(../img/icons/slider-arrow-right.svg);
    mask-image: url(../img/icons/slider-arrow-right.svg);
    width: 23px;
    height: 17px;
    color: inherit;
}

.icon-arrow-top {
    -webkit-mask-image: url(../img/icons/arrow-top.svg);
    mask-image: url(../img/icons/arrow-top.svg);
    width: 17px;
    height: 23px;
    color: inherit;
}

.icon-arrow-bottom {
    -webkit-mask-image: url(../img/icons/arrow-top.svg);
    mask-image: url(../img/icons/arrow-top.svg);
    width: 17px;
    height: 23px;
    color: inherit;
    transform: rotate(-180deg);
}

/* global */


.btn .icon-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
}

.btn:not(.btn-arrow) {
    display: inline-flex;
    border-radius: 30px;
    white-space: nowrap;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    border: 1px solid transparent;
    transition: 300ms;
}

.btn-sm {
    min-height: 35px;
    font-size: clamp(14px, 1vw, 16px);
    line-height: 1.5;
    font-weight: 600;
    padding: 3px var(--gap-25);

}

.btn-md:not(.btn-arrow) {
    height: 46px;
    font-weight: 600;
    padding: 0 15px;
    font-size: clamp(14px, 1vw, 16px);
}


.btn-lg {
    font-size: max(16px, calc(var(--font-18) + 2px));
    font-weight: 600;
    line-height: 1.5;
    min-height: 56px;
    padding: 5px 15px;
    min-width: 134px;
    border-radius: 40px;
}

.btn-arrow {
    transition: all 300ms;
}

.btn-arrow .icon {
    transition: all 300ms;
    margin-left: 10px;
}

.btn-arrow:hover .btn-arrow-inner {
    margin-right: -20px;
}

.btn-arrow:hover {
    padding-left: 20px;
}

.btn-arrow:hover .icon {
    margin-left: 20px;
}

.btn-primary:not(.btn-arrow) {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}

.btn-secondary.btn-arrow:hover .btn-arrow-inner {
    background-color: #fff;
    color: var(--color-secondary);
}
.btn-primary.btn-arrow:hover .btn-arrow-inner {
    background-color: var(--color-secondary);

}
.text-image-section .btn{
    margin-top: var(--gap-40);
    display: block;
}
.text-image-section .section-title{
    margin-bottom: var(--gap-25);
}
.btn-arrow-inner {
    display: inline-flex;
    border-radius: 30px;
    white-space: nowrap;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    border: 1px solid transparent;
    transition: 300ms;
    height: 46px;
    font-weight: 600;
    padding: 0 15px;
    font-size: clamp(14px, 1vw, 16px);
}

.btn-primary .btn-arrow-inner {
    background-color: var(--color-primary);
    border-color: var(--color-primary);
    color: #fff;
}
.btn-secondary .btn-arrow-inner {
    background-color: var(--color-secondary);
    border-color: var(--color-secondary);
    color: #fff;
}

.btn-other:not(.btn-arrow) {
    color: var(--color-secondary);
    background-color: var(--color-other-tile);
    border-color: var(--color-other-tile);
}

.btn-other .btn-arrow-inner {
    background-color: var(--color-other-tile);
    border-color: var(--color-other-tile);
    color: var(--color-secondary);
}

.btn-secondary:not(.btn-arrow) {
    background-color: var(--color-secondary);
    border-color: var(--color-secondary);
    color: #fff;
}

.btn-white {
    background-color: #fff;
    border-color: rgba(0, 0, 0, 0.1);
    color: var(--color-primary);
}

.btn.btn-transparent {
    background: transparent;
    color: var(--color-secondary);
    border: 1px solid var(--color-other-primary);
}

.btn-link::before {
    content: "";
    width: 95%;
    left: 0;
    transition: width 300ms;
    position: absolute;
    bottom: -5px;
    height: 4px;
    pointer-events: none;

    background: var(--color-primary);
    display: inline-block;
}

.btn-link::after {
    content: "";
    width: 45%;
    height: 4px;
    position: absolute;
    transition: width 300ms;
    pointer-events: none;
    left: 0;
    bottom: -15px;
    background: var(--color-primary);
}

.btn-link {
    display: inline-flex;
    text-transform: uppercase;
    font-size: var(--font-30);
    font-family: 'Peace Sans';
    align-items: center;
    position: relative;
    color: #fff;
    transition: 300ms;
    font-weight: 400;
}

.btn-tag.active {
    color: #fff;
    background: var(--color-other-primary);
}

@media screen and (min-width: 1140px) {
    .btn.btn-transparent:hover {
        color: #fff;
        background: var(--color-other-primary);
    }

    .btn-link:hover::before {
        width: 100%;
    }

    .btn-link:hover::after {
        width: 100%;
    }

    .btn-primary:not(.btn-arrow):hover {
        background-color: var(--color-secondary);
    }

    .btn-secondary:not(.btn-arrow):hover {
        background-color: #fff;
        color: var(--color-secondary);
        border-color: var(--color-secondary);
    }

    .btn-white:hover {
        background-color: var(--color-primary);
        border-color: var(--color-primary);
        color: #fff !important;
    }
}

.color-primary {
    color: var(--color-primary) !important;
}

.section-title {
    font-family: 'Peace Sans';
    text-transform: uppercase;
    font-size: var(--title-font-size);
    font-weight: 400;
    color: var(--color-secondary);

}


.section-subtitle {
    font-size: calc(var(--font-18) + 2px);
    color: var(--color-secondary);
    font-weight: 400;
}

.section-subtitle a {
    transition: color 300ms;
}

.section-subtitle a:hover {
    color: var(--color-primary);
}

.section-header {
    margin-bottom: var(--gap-40);
}

/* form */

.form-element-name {
    display: block;
    font-weight: 700;
    font-size: var(--font-18);
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 10px;
}


.form-element:focus, .form-element::selection, .form-element:focus-within, .form-element:focus-visible {
    border: 1px solid rgba(0, 0, 0, 0.1);

}

.form .btn {
    border-radius: 20px;
}

.add-col-btn-wrapper {
    order: 1;
    justify-content: center;
    align-items: center;
}

select:focus-within{
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

select option:last-child {
    border-radius: 0 0 20px 20px;
}

select option:hover {
    background-color: #ddd;
}

.form-element-row:has(select:focus-within):before {
    transform: translateY(-50%) scale(-1);
}

.form-element-row:has(select):before {
    pointer-events: none;
    font-family: var(--fa-style-family, "Font Awesome 6 Free");
    font-weight: var(--fa-style, 900);
    --fa: "\f107";
    content: var(--fa);
    position: absolute;
    top: 50%;
    right: 20px;
    z-index: 3;
    font-size: 16px;
    transform: translate(0, -50%);
    color: #000;
}

.form-element-row:has(select):after {
    pointer-events: none;
    position: absolute;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    content: "";
    background-color: var(--color-other-tile);
    top: 2px;
    right: 2px;
    bottom: 2px;
    width: 40px;
}

.form-element-row select {
    position: relative;
}

select option {
    cursor: pointer;

}


.form-element {
    width: 100%;
    min-height: 50px;
    border-radius: 20px;
    padding: 0 25px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    font-size: var(--small-text);
    line-height: 1.5;
    font-family: 'DM Sans', sans-serif;
}

.form-element-row {
    display: flex;
    gap: 7px;
}

.form-element-row .btn {
    min-width: 134px;
    height: 46px;
    width: unset;
    font-size: var(--font-18);
}

textarea.form-element {
    padding: var(--gap-25) 25px;
    min-height: 200px;
}

.form-cols {
    display: flex;
    flex-wrap: wrap;
    margin: calc(var(--gap-25) * -1) calc(var(--gap-30) * -1);
}

.form-col {
    padding: var(--gap-25) var(--gap-30);
    width: 33.333%;
}

.add-col-btn-wrapper {
    display: flex;
    padding-top: calc(var(--gap-60) * 2) !important;
    padding-bottom: calc(var(--gap-60) * 2) !important;;
    align-items: center;
}

.offer-form .form-element {
    border: none;
    background-color: var(--color-other-tile);
}

.form-consents {
    margin-top: var(--gap-50);
}

.form-informations {
    margin-bottom: var(--gap-30);
    margin-top: var(--gap-50);
}

.form-informations .caption {
    font-size: var(--font-25);
}

.form-informations .caption a {
    color: #52A3FF;
    font-weight: 300;
    margin-left: 5px;
}

.offer-date-btn {
    color: #52A3FF;
    font-weight: 300;
    background-color: transparent;
    border: none;
    margin-left: 5px;
    transition: color, 300ms;
    font-size: var(--font-25);
    cursor: pointer;
}

.small-text {
    font-size: 10px;
    font-weight: 600;
}

.offer-date-btn:hover, .offer-date-btn.active {
    color: var(--color-primary);
}

.offer-date-section {
    font-size: var(--font-25);
    margin-bottom: 10px;
}

.form-informations .cost {
    font-size: calc(var(--font-30) + 5px);
    font-family: "Peace Sans";

}

#cost-euro {
    display: none;
}

#cost-euro.active {
    display: block;
}

.form-element-row + .form-element-row {
    margin-top: 12px;
}

.form-col-title {
    color: var(--color-primary);
    margin-bottom: var(--gap-30);
    text-transform: uppercase;
    font-family: "Peace Sans";
    font-size: calc(var(--font-30) + 5px);
    font-weight: 400;
}
form .btn-md:not(.btn-arrow){
    font-size: var(--small-text);
}

.user-col {
    position: relative;
}

.user-col-delete {
    border-radius: 6px !important;
    width: calc(var(--font-30) + 18px);
    height: calc(var(--font-30) + 18px);
    position: absolute;
    top: var(--gap-25);
    right: var(--gap-30);
    background: var(--color-primary);
}

.user-col-delete span {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    transform: rotate(45deg);
    margin: auto;
    bottom: 0;
    width: 70%;
    background: #fff;
    height: 2px;
}

.user-col-delete span:nth-child(2) {
    transform: rotate(-45deg);
}

/* header logo */
.logo img {
    width: 72px;
    display: block;
}

.logo svg {
    width: 72px;
    display: block;
}

.logo {
    max-width: 72px;
    position: relative;
    z-index: 3;
}

.logo a {
    display: block;
}

/* Header */

header {
    position: fixed;
    top: calc(var(--gap-50) - 15px);
    left: var(--gap-50);
    right: var(--gap-50);
    margin: 0 auto;
    max-width: max(70vw, 1920px);
    z-index: 10001;
    background-color: #fff;
    transition-property: background-color, box-shadow;
    transition-duration: 300ms;
    border-radius: 40px;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}


.header-inner {
    padding: 10px 15px;
    display: grid;
    grid-template-columns: 33.33333% 33.33333% 33.33333%;
    justify-content: center;
    transition: background-color, 300ms;
    width: 100%;
    align-items: center;
}


/* Header scrolled */
header.active .header-inner {
    padding: var(--gap-25) 0;

}

header.active {
    background-color: #fff;
    box-shadow: 0 5px 5px rgba(37, 57, 121, 0.2);
}

/* Main Menu */
#main-menu ul {
    display: flex;
    justify-content: center;
    align-items: center;
}

.header-left {
    gap: 10px;
}

.header-left, .header-right {
    display: flex;
    align-items: center;
}

.header-right {
    justify-content: flex-end;
}

.header-center {
    display: flex;
    justify-content: center;
}


#main-menu ul li a, .offer-link-btn {
    font-size: calc(var(--font-18) + 2px);
    transition: color, 300ms;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px var(--gap-30);
    border-radius: 40px;
    color: var(--color-secondary);
    min-height: calc((var(--font-18) + 2px) * 2.7);
    border: 1px solid var(--color-secondary);
}

#main-menu ul li a:hover, .offer-link-btn:hover {
    border-color: var(--color-tile);
    background-color: var(--color-tile);
}

#main-menu ul li + li {
    margin-left: 10px;
}

#main-menu ul li a:hover {
    color: var(--color-secondary);
}

#main-menu ul li.active > a {
    color: var(--color-secondary);
}


/* season button */
.season-caption {
    text-transform: uppercase;
    font-size: 20px;
    position: absolute;
}

.summer-time .caption-winter {
    display: none;
}

.winter-time .caption-summer {
    display: none;
}

.caption-summer:after {
    left: 0;
}

.caption-winter:after {
    right: 0;
}

.summer-time .caption-summer:after {
    width: 0;
}

.winter-time .caption-winter:after {
    width: 0;
}

/*.summer-time .season-button:hover .caption-summer:after {*/
/*    width: 100%;*/
/*    background: #DDE9F6;*/
/*}*/

/*.summer-time .season-button:hover .caption-winter:after {*/
/*    width: 0;*/
/*    background: #DDE9F6;*/
/*}*/

/*.winter-time .season-button:hover .caption-winter:after {*/
/*    width: 100%;*/
/*    background: #FFE9B0;*/
/*}*/

/*.winter-time .season-button:hover .caption-summer:after {*/
/*    width: 0;*/
/*    background: #FFE9B0;*/
/*}*/

/*.summer-time .season-button:hover .season-button-thumb {*/
/*    left: calc(100% - 7px - 44px);*/
/*    background-color: var(--color-secondary);*/
/*}*/

/*.winter-time .season-button:hover .season-button-thumb {*/
/*    left: 7px;*/
/*    background-color: #FFB800;*/
/*}*/

.winter-time .season-button:hover {
    background: #FFE9B0;
}

.summer-time .season-button:hover {
    background: #DDE9F6;
}

.caption-summer {
    right: 15%;
}

.caption-winter {
    left: 15%;
}

.winter-time .season-button-thumb {
    left: calc(100% - 7px - 33px);
    background-color: var(--color-secondary);
}

.season-button-thumb {
    z-index: 2;
    position: absolute;
    transition: left 300ms, background-color 300ms;
    left: 7px;
    top: 5px;
    width: 33px;
    height: 33px;
    background-color: var(--color-primary);
    border-radius: 50%;
}

.season-button {
    display: flex;
    position: relative;
    justify-content: center;
    align-items: center;
    border-radius: 40px;
    padding: 5px 7px;
    transition: background-color 300ms;
    width: 120px;
    background-color: var(--color-tile);
    height: 43px;
}


/* languages */
.header-languages {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

/* Social List */
.footer-socials {
    height: 78px;
}

.social-list {
    display: flex;
    align-items: center;
}

.social-list li + li {
    margin-left: calc(var(--gap-30) + 5px);
}

.social-icon {
    display: block;
    height: 30px;
    width: unset;
    transition: color, 300ms;
    color: #fff;
}

.youtube.social-icon svg {
    width: 40px;
}

.social-icon svg {
    color: inherit;
    height: 30px;
    width: 30px;
    display: block;
}

.social-icon svg * {
    color: inherit;
    fill: currentColor;
}

@media screen and (min-width: 1140px) {
    .social-icon:hover {
        color: var(--color-primary);
    }
}


/* error page*/

.error-page {
    padding: var(--section-gap) 0;
    min-height: calc(100vh - var(--footer-height) - var(--header-height));
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.error-box {
    background-color: #fff;
    border-radius: 25px;
    width: 100%;
    max-width: 500px;
    padding: 10vh 10px;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.error-box h1 {
    font-size: calc(var(--font-30) * 2);
}

.error-box P {
    font-size: var(--font-25);
}

/* alerts */
form {
    position: relative;
}

.alert {
    display: inline-block;
    padding: 5px 10px;
    text-align: center;
    width: 100%;
    position: absolute;
    border-radius: 5px;
    left: 0;
    bottom: -40px;
    border: 1px solid;
}

.alert-success {
    color: #FFF;
    background-color: rgba(0, 255, 0, 0.3);
    border-color: rgba(0, 255, 0, 0.8);
}

.alert-error {
    color: red;
    background-color: rgba(255, 0, 0, 0.3);
    border-color: rgba(255, 0, 0, 0.8);
}

.alert-close {
    position: absolute;
    top: 0;
    right: 5px;
    font-size: 14px;
    cursor: pointer;
    color: #000;
}

/*modal*/
.modal-content-holder {
    display: none;
}

.modal {
    z-index: 10001;
    position: fixed;
    height: 100vh;
    width: 100vw;
    align-items: center;
    justify-content: center;
    top: 0;
    left: 0;
    display: none;
}

.modal-background-shadow {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    background-color: rgba(37, 57, 121, 0.5);
}

.modal-content {
    width: 100%;
    max-width: 600px;
    max-height: 70vh;
    background-color: #fff;
    padding: var(--gap-25);
    box-shadow: 0 8px 8px rgba(0, 0, 0, 0.5);

    position: relative;
    border-radius: 25px;
}

.modal-content .close {
    border: 1px solid var(--color-primary);
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1;
    width: 25px;
    overflow: hidden;
    border-radius: 50%;
    top: 15px;
    right: 15px;
    font-size: 23px;
    cursor: pointer;
    transition-property: color, background-color;
    transition-duration: 300ms;
}

.modal-content .close:hover {
    background-color: var(--color-primary);
    color: #fff;
}

.modal-header {
    text-align: center;
    padding-bottom: var(--gap-25);
    margin-bottom: var(--gap-60);
    border-bottom: 1px solid var(--color-primary);
}

.modal-title {
    font-size: var(--font-25);
    font-weight: 600;
}


/* main slider */
.mainSlider {
    max-height: 100vh;
    overflow: hidden;
}

.mainSlider-nav {
    max-width: max(1870px, 70vw);
    padding: 0 calc(var(--gap-50) * 2);
    margin: 0 auto;
    position: absolute;
    display: flex;
    pointer-events: none;
    width: 100%;
    height: 100%;
    padding-top: min(232px, 18vh);
    z-index: 4;
    left: 0;
}

.mainSlider-arrows {
    display: flex;
    flex-direction: column;
    gap: 18px;
}


.mainSlider-arrow {
    background-color: transparent !important;
    border: none !important;
    transition: padding 300ms, margin 300ms;
    pointer-events: auto;
    cursor: pointer;


}

.mainSlider-arrow-inner {
    width: 60px;
    height: 60px;
    cursor: pointer;
    pointer-events: auto;
    border: 1px solid var(--color-other-tile) !important;
    background-color: var(--color-other-tile);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 36px;
    transition: width 300ms, height 300ms, padding 300ms, margin 300ms;
}

.mainSlider-arrow-prev:hover .mainSlider-arrow-inner {
    padding-bottom: 20px;
    margin-top: -30px;
    margin-bottom: 10px;
    height: 92px;
}

.mainSlider-arrow-next:hover .mainSlider-arrow-inner {
    padding-top: 20px;
    margin-top: 10px;
    margin-bottom: -30px;
    height: 92px;
}

.offerSlider-arrow-next:hover .mainSlider-arrow-inner {
    padding-left: 20px;
    margin-right: -30px;
    margin-left: 10px;
    width: 92px;
}

.offerSlider-arrow-prev:hover .mainSlider-arrow-inner {
    padding-right: 20px;
    margin-right: 10px;
    margin-left: -30px;
    width: 92px;
}

.mainSlider-wrapper {
    position: relative;
}

.mainSlider .mainSlider-slide {
    position: relative;
}

.mainSlider:not(.swiper-initialized) .mainSlider-slide + .mainSlider-slide {
    display: none;
}

.mainSlider-section {
    margin-bottom: var(--section-gap);
}

.mainSlider {
    pointer-events: none;
}

.mainSlider-slide a.btn-link {
    margin-top: var(--gap-25);
}

.mainSlider-slide a {
    pointer-events: auto;
}

.mainSlider-bg {
    position: relative;
    height: 100%;
}

.mainSlider-bg:after {
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    content: "";
    position: absolute;
    background: rgba(0, 0, 0, 0.40);
    display: block;
}


.mainSlider-bg img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    min-height: 400px;
}

.mainSlider-content {
    position: absolute;
    top: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.2) 50%, rgba(0, 0, 0, 0) 100%);

    padding-bottom: calc(var(--gap-50) * 2);
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    z-index: 2;
}

.mainSlider-nav + .mainSlider .mainSlider-content {
    padding-left: calc(var(--gap-50) + 72px);
}

.mainSlider-content-inner {
    max-width: 900px;

}

.mainSlider .mainSlider-slide + .mainSlider-slide {
}

.mainSlider-title {
    font-size: min(70px, max(40px, 4vw));
    line-height: 1;
    color: #fff;
    font-family: 'Peace Sans';
    text-transform: uppercase;
    text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
    letter-spacing: -0.7px;
    margin-bottom: 15px;
    font-weight: 400;
}

.mainSlider-text {
    color: #fff;
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    font-size: var(--font-30);
    letter-spacing: -0.15px;
    font-weight: 600;
}

.mainSlider-box-wrapper {
    position: absolute;
    bottom: calc(var(--gap-60) + 15px);
    width: 100%;
}

.mainSlider-box-holder {
    display: flex;
    width: 100%;
    justify-content: flex-end;
    pointer-events: none;
}

.mainSlider-box {
    width: 40%;
    max-width: 600px;
}

.mainSlider-box .text {
    margin-bottom: 10px;
}

.mainSlider-box-thumbnail {
    width: 43%;
    align-self: stretch;
    flex-shrink: 0;
}

.mainSlider-box-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 20px;
}

.mainSlider-box-content {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    padding-left: var(--gap-40);
    padding-right: 11px;
}

.mainSlider-box-title {
    font-family: 'Peace Sans';
    margin-bottom: 5px;
    font-weight: 400;
    font-size: var(--small-text);
}
.mainSlider-box .text{
    font-size: clamp(12px, 0.8vw, 14px);

}
.mainSlider-box-content-top {
    flex-grow: 1;
}

.text-small {
    font-size: 15px;
}

.mainSlider-box-inner .btn {
    pointer-events: none;
}

.mainSlider-box-inner {
    background-color: #fff;
    display: flex;
    pointer-events: auto;
    padding: 16px;
    position: relative;
    z-index: 2;
    border-radius: 28px;
}

.mainSlider-box-inner:hover .btn-arrow-inner {
    margin-right: -30px;
    margin-left: 10px;
}

.mainSlider-box-inner:hover .btn .icon {
    margin-left: 30px;
}

/* cadre section */
.cadre-section {
    margin-bottom: var(--section-gap);
}

.cadre-section-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cadre-section-left {
    width: 55%;
    padding-right: var(--gap-60);
}

.cadre-text {
    margin-bottom: var(--gap-30);
    font-weight: 600;
}

.cadre-section-right {
    width: 45%;
    align-self: center;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.cadre-section-right .img-wrapper {
    position: relative;
    margin-top: min(15%, 60px);
}

.cadre-section-right .img-wrapper:before {
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    position: absolute;
    top: max(-15%, -60px);
    right: max(-15%, -60px);
    border-radius: 20px;
    background-color: var(--color-tile);

}

.cadre-section-right img {
    max-width: 100%;
    display: block;
    border-radius: 20px;
}

/* offer */
.offer-slider-section {
    margin-bottom: var(--section-gap);
}

.offer-slider-wrapper {
    display: flex;
    align-items: stretch;
}

.offer-slider-wrapper .swiper-slide {
    height: unset;
}

.offer-item-top {
    display: flex;
    flex-grow: 1;
    align-items: center;
    justify-content: center;
}

.offer-item {
    width: 25%;
    flex-direction: column;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
}

.offer-item img {
    object-fit: cover;
}

@media screen and (min-width: 3100px) {
    .offer-item {
        width: 20%;
    }
}

.offer-slider {
    overflow: hidden;
}

.offer-slider .offer-item {
    width: 100%;
    height: 100%;
    padding: 0;
}

.category-item .offer-item-inner {
    width: 100%;
    height: 100%;
    padding: 15px;
}


.category-item .offer-item-left, .category-item .offer-item-left .img-wrapper, .category-item .offer-item-left img {
    width: 100%;
    height: 100%;

}

.offer-item-right {
    flex-shrink: 0;
    writing-mode: tb;
    display: flex;
}

.category-item .offer-item-left img {
    object-fit: cover;

}

.offer-item-left img {
    transition: transform 300ms;
}

.offer-item-inner {
    height: 100%;
    width: 100%;
    flex-direction: column;
    max-width: 440px;
    transition: background-color 300ms;
    display: flex;
    border-radius: 25px;
    background-color: var(--color-tile);
    padding: 15px;
}

.offer-item-inner:hover img {
    transform: scale(1.07);
}

.offer-item-left {
    width: 100%;
    height: 100%;
}

.offer-item-left .img-wrapper {
    border-radius: 20px;
    height: 100%;
    overflow: hidden;
}

.offer-slider:not(.swiper-initialized) .swiper-slide {
    width: 25%;
    padding-right: var(--gap-50);

}

.offer-slider:not(.swiper-initialized) {
    margin-right: calc(var(--gap-50) * -1);
}

.offer-slider:not(.swiper-initialized) .swiper-slide:nth-child(n + 5) {
    display: none;
}

.offer-item-left {
    aspect-ratio: 0.8;
    position: relative;
}

.offer-item-left .img-wrapper img {
    border-radius: 20px;
    height: 100%;
    width: 100%;
}

.offer-item-left .img-wrapper {
    position: relative;

}

.offer-item-content {
    display: flex;
    flex-grow: 1;
    flex-direction: column;
    text-align: center;
}

.offer-item-date {
    margin-top: var(--gap-25);
    font-size: calc(var(--font-25) - 4px);
    font-weight: 400;
    overflow-wrap: break-word;
}

.offer-list .offer-thumb {
    aspect-ratio: 1.672727273;
}

.offer-item-spots {
    text-align: center;
    margin-bottom: 5px;
    font-size: clamp(12px, 1vw, 14px);
    margin-top: -0.5em;
}

.offer-item-left .img-wrapper:after {
    content: "";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    border-radius: 20px;
    display: block;
    background-color: rgba(0, 0, 0, 0.3);
}

.offer-thumb img {
    width: 100%;
    height: 100%;
    display: block;
    transition: transform 300ms;
    object-fit: cover;
}

.offer-thumb .img-wrapper {
    width: 100%;
    display: block;
    height: 100%;
}

.offer-thumb {
    border-radius: 10px;
    margin-bottom: var(--gap-30);
    display: flex;
    aspect-ratio: 1.226666667;
    overflow: hidden;
}

.offer-item .btn {
    margin-top: var(--gap-25);
    min-height: 47px;
    height: unset;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.offer-item-title:first-letter {
    text-transform: uppercase;
}

.offer-item-title {
    overflow: hidden;
    flex-grow: 1;
    font-size: var(--font-25);
    color: var(--color-secondary);
    text-align: center;
    font-weight: 700;
}

.offer-slider-timer-wrapper {
    flex-grow: 1;
    background: #aaa;
    height: 3px;
}

.offer-slider-timer {
    height: 3px;
    width: 100%;
    background-color: var(--color-secondary);
}

.offer-tags {
    display: flex;
    writing-mode: tb;
    font-size: 18px;
    font-family: 'Peace Sans';
    margin-left: 5px;
    max-height: 400px;
    text-align: center;
    line-height: 1.25;
    max-width: calc(1.25 * 1em);
    overflow: hidden;
}

.offer-slider-nav {
    margin-top: var(--gap-50);
    display: flex;
    align-items: center;
}

.offer-slider-arrows {
    display: flex;
    gap: 18px;
    padding-right: var(--gap-60);
    align-items: center;
}

/* banner */

.banner {
    position: relative;
}

.banner-bg img {
    width: 100%;
    height: 100vh;
    max-height: 1024px;
    object-fit: cover;
    display: block;
}

.banner-content {
    position: absolute;
    color: #fff;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.banner-top {
    border-bottom: 1px solid #fff;
}

.banner-title {
    font-size: min(70px, max(40px, 4vw));
    font-weight: 400;
    text-transform: uppercase;
    font-family: 'Peace Sans';

}

.banner-text {
    color: #fff;
    padding-right: var(--gap-25);
    width: max(60%, 1100px);
    text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
    font-weight: 600;
    letter-spacing: -0.125px;
}

.banner-bottom {
    display: flex;
    padding: var(--gap-25) 0 var(--gap-40);
    justify-content: space-between;
    align-items: center;
}

/* friends section */
.friends-section {
    margin: var(--gap-60) 0;
}

.friends-section .section-title {
    margin: 0 auto var(--gap-60);
    text-align: center;
}

.friends-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-around;
}

.friend-wrapper {
    max-width: min(350px, 45%);
    transition: transform 300ms;

}
.footer-top-btns{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.friend-wrapper:hover {
    transform: scale(1.05);
}

.friends-list img {
    max-width: 100%;
    display: block;
    max-height: 100%;
}

.deepwater-friend {
    display: block;
}

.deepwater-friend svg {
    display: block;
    width: 100%;
}

footer {
    color: #fff;
    background-color: var(--color-secondary);
}

.footer-top-content {
    padding-top: calc(var(--gap-50) + var(--gap-40));
    padding-bottom: var(--gap-50);
    border-bottom: 1px solid #fff;
}

.footer-logo img {
    max-width: 100%;
    display: block;
}

.footer-logo {
    width: 128px;
    display: block;
    margin-bottom: var(--gap-25);
}

.footer-title {
    font-size:  var(--title-font-size);
    text-transform: uppercase;
    font-family: "Peace Sans";
    margin-bottom: var(--gap-30);
    font-weight: 400;
}

.footer-address {
    color: #fff;
    line-height: 1.5;
    font-weight: 600;
}

.footer-logos-list a {
    width: 15%;
    padding: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.footer-logos-list {
    display: flex;
    flex-wrap: wrap;
    margin: -7px;
    margin-top: var(--gap-50);

}

.footer-logos-list a[href]:hover img {
    transform: scale(1.1);
}


.footer-logos-list img {
    max-width: 100%;
    max-height: 100%;
    transition: transform 300ms;
    display: block;
}

.footer-middle-content {
    padding-top: var(--gap-50);
    padding-bottom: calc(var(--gap-50) + var(--gap-40));
}

.footer-bottom-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: var(--small-text);
    font-weight: 500;
    line-height: 1.5;
    border-top: 1px solid #fff;
    padding: var(--gap-25) 0;
}

.footer-bottom-content a:hover {
    text-decoration: underline;
}

.footer-cols {
    display: flex;
    justify-content: space-between;
}

.footer-col.col1 {
    width: 33%;
}

.footer-col.col2 {
    width: 38%;
}

.deepwater {
    align-items: center;
}

.deepwater a {
    display: inline-flex;
    align-items: center;
}

.deepwater svg {
    display: inline-block;
    width: 23px;
    margin-left: 10px;
}

.footer-caption {
    color: #fff;
    font-size: var(--small-text);
    margin-top: var(--gap-25);
    display: block;
}

.footer-socials-caption {
    margin-top: 0;
    margin-bottom: var(--gap-25);
}

/* offer  view */
.top-banner-bg {
    height: 100%;
    position: relative;
}

.top-banner {
    margin-bottom: calc(var(--gap-40) * 2);
    position: relative;
    overflow: hidden;
}

.top-banner-bg:after {
    position: absolute;
    content: "";
    display: block;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(21, 55, 96, 0.60);
}

.top-banner-bg img {
    height: 100%;
    width: 100%;
    min-height: 400px;
    max-height: 1000px;
    display: block;
    object-fit: cover;
    aspect-ratio: 2;

}

.top-banner-content {
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    padding-bottom: calc(var(--gap-50) * 2);
    bottom: 0;
}

.top-banner-content .btn .icon {
    width: 12px;
    height: 19px;
}

.top-banner-content .btn {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 5px var(--gap-40);
}

.top-banner-title {
    font-size: min(70px, max(29px, 4vw));
    font-weight: 400;
    text-transform: uppercase;
    margin-bottom: 10px;
    font-family: 'Peace Sans';
    color: #fff;

}

.offer-top-text {
    margin-bottom: calc(var(--gap-40) * 2);

}

.toggle-row {
    width: 100%;
}

.toggle-row-top {
    display: flex;
    align-items: center;
    padding-bottom: 10px;
    cursor: pointer;
    justify-content: space-between;
    border-bottom: 1px solid #000000;
}

.toggle-row-title {
    transition: color 300ms;

    padding-right: 15px;
    font-family: "Peace Sans";
    font-size: calc(var(--font-30) + 5px);
}

.toggle-row + .toggle-row {
    margin-top: var(--gap-30);
}

.toggle-row-top:hover .toggle-row-title {
    color: var(--color-primary);
}

.toggle-row-top:hover .toggle-row-icon {
    color: var(--color-primary);
}

.toggle-row-icon {
    width: 20px;
    height: 20px;
    position: relative;
    color: var(--color-secondary);
    transition: width 300ms, color 300ms;
}

.toggle-row-icon span {
    height: 3px;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    color: inherit;
    background-color: currentColor;
    display: block;
    bottom: 0;
    margin: auto;
}

.toggle-row-icon span:nth-child(2) {
    transform: rotate(90deg);
    transition: transform 300ms;
}

.toggle-row-bottom {
    height: 0;
    transition: height 300ms;
    overflow: hidden;
}

.toggle-row-bottom-inner {
    padding: var(--gap-40) var(--gap-25) var(--gap-25);
}

.toggle-row-top.active .toggle-row-icon span:nth-child(2) {
    transform: rotate(0deg);
}

.toggle-rows {
    margin-bottom: calc(var(--gap-50) * 2);
}

.offer-form {
    margin-bottom: var(--section-gap);
}

/* offer banner */
.offer-banner {
    margin-bottom: var(--gap-60);
}

.offer-banner-inner {
    display: flex;
    height: min(100vh, 1000px);
    align-items: stretch;
    justify-content: space-between;
}

.offer-banner-left {
    height: 100%;
    flex-grow: 1;
    padding-right: var(--gap-25);
    display: flex;
    align-items: center;
    width: 93.5%;
    background-color: var(--color-secondary);
    padding-left: calc((1671px - 100vw) / -2);
    margin-left: calc((1671px - 100vw) / 2);
}

.offer-banner-title + .offer-banner-title {
    margin-top: var(--gap-25)
}

.offer-tags-list {
    margin-top: var(--gap-25);
}

.offer-banner-title:before {
    z-index: 5;
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: block;
    margin-top: 8px;
    background-color: var(--color-primary);
    left: -15px;
    opacity: 0;
    transform: translateX(-8px);
    transition: all 300ms;
}

.offer-banner-title.active:before {
    opacity: 1;
    transform: none;
}

.offer-banner-title.active {
    margin-right: -18px;
    margin-left: 18px;
    color: var(--color-primary);
    -webkit-text-stroke-color: currentColor;
}

.offer-banner-titles {
    text-transform: lowercase;

}

.offer-banner-title:hover {
    color: var(--color-primary);
}

.offer-banner-title {

    position: relative;
    text-transform: capitalize;
    cursor: pointer;
    color: #fff;
    transition: all 300ms;
    -webkit-text-stroke: 0.5px transparent;
    font-size: calc(var(--font-25) - 2px);
    line-height: 1.375;
}

.offer-banner-right {
    width: 100%;
    position: relative;
    margin-right: calc((1671px - 100vw) / 2);
}


.offer-banner-images {
    height: 100%;
    position: relative;
}

.offer-banner-img {
    width: 100vw;
    height: 100vh;
    display: block;
}

.offer-banner-inner .btn-scroll {
    opacity: 1;
    pointer-events: auto;
    z-index: 5;
    width: 70%;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.btn-scroll .icon {
    margin: 0 !important;
    margin-right: -1px !important;
}

.btn-scroll {
    position: absolute;
    flex-direction: column;
    min-height: unset;
    left: 0;
    height: 50px !important;
    aspect-ratio: 1;
    width: 50px !important;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: unset;
    padding: 0 !important;
    overflow: hidden;
    border-radius: 50%;
    right: 0;
    margin: 0 auto;
    bottom: var(--gap-60);
}

.btn-scroll:hover {
    height: 60px !important;
    bottom: calc(var(--gap-60) - 10px);
}

.btn-scroll:hover .icon {
    margin-top: 15px !important;
}

.btn-scroll .icon {
    transition: margin 300ms;
    width: 25px;
    transform: rotate(90deg);
    margin: 10px 0 0 0;
    height: 25px;
}

.offer-banner-img img {
    width: 100%;
    display: block;
    object-fit: cover;
    height: 100%;
}

.offer-banner-img.active {
    opacity: 1;
}

@media screen and (max-width: 1824px) {
    .offer-banner-right {
        margin-right: calc(var(--gap-50) * -2);
    }

    .offer-banner-img .btn {
        right: calc(var(--gap-50) * 2);
    }

    .offer-banner-left {
        padding-left: calc(var(--gap-50) * 2);
        margin-left: calc(var(--gap-50) * -2);
    }
}

/* offer list */
.offer-list {
    display: flex;
    margin: -5px;
    flex-wrap: wrap;
}

.offer-list .offer-item-title {
    font-size: max(16px, calc(var(--font-25) - 2px));
}

.offer-list-section {
    margin-bottom: var(--section-gap);
}

.offer-list-section {
    margin-top: var(--section-gap);
}

.offer-categories-wrapper {
    width: 22%;
    min-width: 280px;
    position: relative;
    align-self: stretch;
}

.offer-categories-list.absolute {
    position: absolute;
}

.categories-list-title {
    margin-top: -0.5em;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    width: 100%;
    padding-bottom: 15px;
    font-size: calc(var(--font-25) + 1px);
    font-weight: 600;
    color: #fff;
    margin-bottom: var(--gap-25);
}

.mobile-only {
    display: none;
}

.aside-toggle {
    display: inline-flex;
    margin-top: var(--gap-40);
}

.offer-categories-list.fixed {
    position: fixed;
}

.offer-categories-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    flex-direction: column;
    position: static;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
    border-radius: 16px;
    padding: var(--gap-50) var(--gap-40);
    background: var(--color-secondary);
}

.offer-list-right {
    padding-left: var(--gap-60);
    width: 78%;
}

/* aboutUs */
.aboutUs-bg img {
    width: 100%;
    display: block;
    height: 100%;
    object-fit: cover;
}

.aboutUs-banner {
    position: relative;
    margin-bottom: var(--section-gap);
}

.aboutUs-banner-content:before {
    left: 0;
    clip-path: polygon(0 0, 100% 0, 73% 100%, 0% 100%);
    background-color: var(--color-primary);
    top: 0;
    bottom: 0;
    width: 55%;
    height: 100%;
    display: block;
    position: absolute;
    z-index: -1;
    content: "";
}

.aboutUs-banner-content {
    z-index: 2;
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    height: 100%;
    display: flex;
    align-items: stretch;
}

.aboutUs-banner-title {
    font-weight: 400;
    font-family: "Peace Sans";
    line-height: 1.428571429;
    letter-spacing: -1px;
    font-size: min(70px, max(30px, 4vw));;
}

.aboutUs-banner-inner {
    max-width: 50%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.aboutUs-bg {
    height: min(100vh, 1000px);
}

.text-image-section {
    margin-bottom: var(--section-gap);
}

.text-image-section-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.text-image-section .image {
    width: 60%;
    padding-left: var(--gap-60);
}

.text-image-section-inner .images-gallery {
    display: flex;
    flex-wrap: wrap;
    margin: -10px;
}

.text-image-section .images-gallery .img-wrapper {
    padding: 10px;
    width: 33.3333%;
    flex-grow: 1;
}

.text-image-section-inner .images-gallery img {
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 20px;
    object-fit: cover;
    overflow: hidden;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
    max-height: 100%;
}

.text-image-section .text-wrapper {
    width: 40%;
}

/* blog */

.subpage.blog {
    padding-top: var(--section-gap);
}

.post-list {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    margin: calc(var(--gap-25) * -1) calc(var(--gap-40) * -1);
}

.post-wrapper {
    width: 33.333%;
    padding: var(--gap-25) var(--gap-40);
}

.post-wrapper .post {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.post-thumbnail {
    width: 100%;
    display: flex;
    align-items: center;
}

.post-view-thumbnail {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    max-height: 1024px;
}

.post-view-thumbnail img {
    max-width: 100%;
    box-shadow: 0 0 4px 4px rgba(0, 0, 0, 0.1);
    max-height: 100%;
    border-radius: 20px;
    display: block;
    object-fit: cover;
}

.post-thumbnail .img-wrapper {
    height: 100%;
    width: 100%;
}

.post-thumbnail img {
    width: 100%;
    height: 100%;
    aspect-ratio: 503/325;
    display: block;
    object-fit: cover;
    border-radius: 20px;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.post-information {
    display: flex;
    justify-content: space-between;
    flex-grow: 1;
    align-items: flex-start;
}

.post-title {
    font-weight: 600;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    padding-right: 10px;
    font-size: calc(var(--font-25) - 1px);
}

.post-category {
    display: inline;
    line-height: 2.5;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    padding: 5px 15px;
    color: var(--color-secondary);
    font-size: calc(var(--font-25) - 1px);
    background: #fff;
    border-radius: 500px;
    font-weight: 400;

}

.post-category-wrapper {
    position: absolute;
    top: 19px;
    display: inline-block;
    max-width: calc(100% - 70px);
    text-align: right;
    z-index: 2;
    right: 25px;
}

.post-thumbnail {
    position: relative;
    flex-shrink: 0;
}

.post:hover .post-arrow {
    padding-left: 20px;
    width: 90px;
    margin-left: 10px;

}

.post-list-wrapper .post-arrow:hover {
    width: 70px;
}

.post-list-wrapper .post-arrow {
    width: 50px;
    height: 50px;
}

.post-arrow {
    width: 64px;
    height: 64px;
    transition: width 300ms, padding 300ms, margin 300ms;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 10px;
    left: 10px;
    background-color: #fff;
    border-radius: 36px;
}

.post-arrow .icon {
    width: 45%;
}

.blog-post {
    padding-top: calc(var(--header-height) + var(--gap-50) * 2);
}

.blog-post img {
    width: 100%;
    display: block;
    min-height: 240px;
    aspect-ratio: 3;
    object-position: center;
    object-fit: cover;
}

.featured-posts {
    display: flex;
    align-items: stretch;
    margin-bottom: var(--section-gap);
}

.featured-posts-header {
    margin-bottom: var(--gap-60);
}


.featured-posts .post-wrapper {
    width: 100%;
    padding: 0;
}

.featured-posts-left {
    width: 64%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-right: var(--gap-50);
}

.featured-posts-right {
    width: 36%;
}

.featured-posts-right .post-wrapper + .post-wrapper {
    margin-top: var(--gap-50);
}

.post-list {
    margin-bottom: calc(var(--section-gap) / 2) !important;
}

.load-more-button {
    color: #ababab;
    font-size: calc(var(--font-25) - 1px);
    font-weight: 600;
}

.load-more-wrapper {
    display: flex;
    flex-direction: column;
    gap: var(--gap-60);
    justify-content: center;
    align-items: center;
    margin-bottom: calc(var(--section-gap) / 2);
    display: none;
}

.load-more-wrapper .alert-wrapper {
    display: none;
}

.scroll-btn {
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
}

.section-title-secondary {
    font-family: "Peace Sans";
    font-weight: 400;
    font-size: var(--title-font-size);
    letter-spacing: -1px;
    margin-bottom: var(--gap-30);
}

.search-box-wrapper {
    position: relative;
    display: inline-block;
    max-width: 720px;
    margin-bottom: var(--gap-25);
    width: 100%;

}

.search-button {
    position: absolute;
    right: 25px;
    width: 36px;
    height: 36px;
    top: 0;
    bottom: 0;
    margin: auto;
    display: block;
    color: var(--color-secondary);
}

.categories-filter-list {
    gap: 10px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.categories-filter-list button.active {
    color: #fff;
    background-color: var(--color-other-primary);
}

.search-box {
    padding-right: 70px;
    max-width: 720px;
    width: 100%;
    height: 63px;
    border-radius: 40px;
    border: 1px solid #BABABA !important;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.post-list-header {
    margin-bottom: calc(var(--gap-40) * 2);
}

.wp-block-image img {
    border-radius: 30px;

}

#post-container {
    min-height: 100vh;
    margin-bottom: var(--gap-60);
}

.blog-post-title {

    text-align: center;
}

.post-thumbnail img {
    max-width: 100%;
    display: block;
    border-radius: 16px;
}

.post-thumbnail {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 15px;
}

.post-top {
    margin-bottom: calc(var(--gap-50) * 2);
}

/* contact page */
.contact-top {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    background: center center /cover;
    min-height: min(100vh, 1024px);
    margin-bottom: min(10vh, 150px);
}


.contact-section {
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
    padding: 15px;
    max-width: 1560px;
    margin: 0 auto;
    margin-bottom: calc(min(10vh, 150px) * -1);
    border-radius: 35px;
    background-color: #fff;
    display: flex;
}

.contact-form {
    width: 33.333%;
    padding: var(--gap-25);
    background: var(--color-secondary);
    color: #fff;
    border-radius: 20px;
}

.contact-info {
    padding-left: calc(var(--gap-50) * 3);
    width: 66.6666%;
    margin-bottom: var(--gap-25);
}

.contact-form label {
    margin-bottom: 10px;
    display: inline-block;
}

.contact-form .form-element-wrapper {
    flex-grow: 1;
}

.contact-form .form-element {
    margin-bottom: var(--gap-25);
    font-size: 18px;
}

.contact-info-cols {
    width: 100%;
    display: flex;
}

.contact-page {
    padding-bottom: var(--section-gap);
}

.contact-info-col {
    width: 50%;
}

.contact-info-title {
    text-transform: uppercase;
    font-family: "Peace Sans";
    font-size: calc(var(--font-30) + 5px);
    font-weight: 400;
    letter-spacing: -1px;
    margin-top: var(--gap-25);
    margin-bottom: var(--gap-40);
}
.contact-info-col .contact-text{
    margin-bottom: var(--gap-40);
}

.contact-form .contact-info-title {
    margin-top: 0;
}

.contact-text {
    font-size: 20px;
}

.contact-logo {
    width: 72px;
    display: block;
    margin-bottom: 18px;
}

.contact-logo img {
    max-width: 100%;
    display: block;
}

.contact-info-col {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.contact-wrapper {
    width: 100%;
    pointer-events: none;
}

.contact-section {
    pointer-events: auto;
}

.form-element-row {
    display: flex;
    align-items: flex-end;
}

.contact-partners-list {
    margin-bottom: var(--section-gap);
}

.contact-partners-list-inner {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--gap-25);
}

.partner-logo img {
    max-width: 100%;
    display: block;
}

.btn-row {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: var(--gap-60);
}


.contact-top {
    position: relative;
}

.contact-top iframe {
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.contact-wrapper {
    position: relative;
    z-index: 2;
}

.offer-dates-list.active {
    opacity: 1;
    display: block;
    pointer-events: auto;
}

.offer-dates-list a {
    transition: color 300ms;
    color: #000;
    padding: 5px 20px;
    width: 100%;
    display: block;
    font-size: 17px;
    text-align: left;

}

.offer-dates-list a:hover {
    background: #ddd;
}

.no-offers {
    padding: var(--gap-25);
    font-size: var(--font-30);
}

#response, #response-users {
    color: red;
    font-size: var(--font-25);
    margin-top: var(--gap-25);
    display: none;
    max-width: 100%;
    border-radius: 20px;

}

.offer-dates-list {
    overflow: hidden;
    transition: opacity, 300ms;
    border: 1px solid rgba(0,0,0,0.1);
    border-radius: 20px;
    border-top-right-radius: 0;
    z-index: 2;
    border-top-left-radius: 0;
    border-top: none;
    opacity: 0;
    display: none;
    position: absolute;
    pointer-events: none;
    text-align: center;
    left: 0;
    width: 100%;
    right: 0;
    top: 0;
    background-color: var(--color-other-tile);
}

.offer-date-dropdown-wrapper{
    width: min(100%, 500px);
}
.offer-date-section-content {
    display: flex;
    flex-wrap: wrap;
    position: relative;
    justify-content: flex-start;
    gap: var(--gap-25);
    align-items: center;
    margin-bottom: var(--gap-50);
}

.offer-dates-list-wrapper {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    position: relative;
    align-self: flex-end;
}

.offer-dates-list li {
    width: 100%;
    text-align: left;
}

.offer-dates-list li + li {
    margin-top: 10px;
}


.trips .text {
    text-align: center;
}

.trips {
    padding: var(--gap-60) 0;
    border-top: 2px solid var(--color-primary);

}

.offer-list-table {
    display: block;
}

.offer-list-table .top {
    display: flex;
    flex-wrap: nowrap;
    gap: var(--gap-25);
    margin: 0;
    margin-bottom: var(--gap-40);
}

.offer-list-images {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 15px;
}

.offer-list-images img {
    max-width: 100%;
    display: block;
}

.offer-list-table table {
    border: 1px solid var(--color-secondary);
    border-collapse: collapse;
}

.offer-list-table table td, .offer-list-table table th {
    border: 1px solid var(--color-secondary);
    padding: 5px;
}



.form-consent input {
    margin-right: 5px;
}

.form-consent {
    font-size: clamp(12px, 0.9vw, 14px);

}

.blog-post {
    min-height: 100vh;
}


.additionalDates {
    margin-bottom: var(--gap-60);
}


.form-element-row {
    position: relative;
}

/* dropdown */
.additional-dates-form .dropdown {
    width: 100%;
}
.offer-date-btn.active i{
    transform: scale(-1);
}
.offer-form .dropdown-button:hover {
    color: #000;
    background: var(--color-other-tile);
}

.dropdown-content label {
    color: #000;
}

.additional-dates-form:has(.dropdown-content.show) .dropdown-button i {
    transform: scale(-1);
}

.additional-dates-form:has(.dropdown-content.show) .dropdown-button {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}
.offer-date-btn{
    margin-top: 10px;
    margin-bottom: var(--gap-25);
}

.offer-date-btn.active{
    border-bottom-right-radius: 0 !important;
    border-bottom-left-radius: 0 !important;
}
.offer-form .dropdown-button {
    min-height: 60px;
    border-radius: 20px;
    border: none;
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: space-between;
    color: #000;
    background: var(--color-other-tile);

    font-weight: 400;
    padding: 0 25px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    font-size: 20px;
    line-height: 1.5;
    font-family: 'DM Sans', sans-serif;
    margin: 0;
}

.dropdown {
    position: relative;
    display: inline-block;
}


.dropdown-content label {
    display: block;
    padding: 5px 10px;
    cursor: pointer;
}

.dropdown-content label:hover {
    background-color: #ddd;
}

.dropdown {
    position: absolute;
    left: 0;
    top: 0;
    width: 30%;

}

.dropdown > button:hover {
    background: rgba(21, 55, 96, 0.9);
}

.dropdown > button {
    border: 1px solid rgba(0, 0, 0, 0.1);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background: var(--color-primary);
    color: #fff;
    cursor: pointer;
    height: 46px;
    border-radius: 20px;
}

.dropdown-content::-webkit-scrollbar-thumb {
    background: var(--color-primary);
}

.dropdown-content::-webkit-scrollbar {
    width: 5px;
}

.dropdown-content {
    display: none;
    position: absolute;
    overflow: hidden;
    overflow-y: auto;
    max-height: 300px;
    top: -15px;
    width: 100%;
    background: var(--color-other-tile);
    border: 1px solid rgba(0, 0, 0, 0.1);
    left: 0;
    color: #fff;
    border-radius: 20px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-top: none;
    z-index: 1;
}

.dropdown-content input {
    margin-right: 20px;
}

.show {
    display: block;
}

.additional-dates-form {
    margin-top: 15px;
}

.additional-dates-form .form-element-row {
    margin-top: 15px;
}

.subpage.privacy-policy {
    padding-top: calc(74px + var(--gap-50) + var(--gap-60));
}

.privacy-policy .section-title {
    font-size: calc(var(--font-30) + 10px);
    margin-bottom: var(--gap-60);
}

.toggle-text {
    font-weight: 700;
    cursor: pointer;
}

.text-short {
    display: none;
}

.text-long.active .text-short {
    display: inline;
}

.text-long.active > .toggle-text {
    display: none;
}

.offer-banner-inner {
    position: relative;
}


.cookie-box-close span:nth-child(2) {
    transform: rotate(-45deg);
}

.cookie-box-wrapper {
    position: fixed;
    right: 0;
    bottom: 25px;
    left: 0;
    z-index: 1000;
}

.cookie-box {
    width: min(100%, 470px);
    z-index: 1000;
    position: relative;
    background-color: #fff;
    border-radius: 20px;
    box-shadow: 0 1px 15px rgba(0, 0, 0, 0.5);
    padding: 30px;
    text-align: center;
}

.cookie-box-btns .btn {
    min-width: 145px;
}

.cookie-box-btns {
    display: flex;
    align-items: center;
    justify-content: space-around;
    gap: 10px;
    margin-top: 22px;
}

.cookie-box .text {
    color: var(--color-secondary);
}

.cookie-box .text strong {
    font-size: calc(var(--font-25) + 5px);
}

.post-no-loaded .post-thumbnail img {
    opacity: 0;
}

.post-no-loaded .post-thumbnail {
    border-radius: 20px;
    background: #F5F5F5;
}

.post-no-loaded {
    pointer-events: none;
}

.post-no-loaded .post-title {
    background: #F5F5F5;
    width: 100%;
    color: #F5F5F5;
}

#offerForm {
    scroll-margin-top: var(--section-gap);
}

#offerForm .form-element-row input::selection {
    background: var(--color-primary);
}

#post-container a {
    text-decoration: underline;
    color: var(--color-primary);
}

#post-container a:hover {
    color: var(--color-other-primary);
}

.caption-small {
    text-align: center;
    font-size: 12px;
}

.post-breadcrumb {
    margin-bottom: var(--gap-40);
}

.post-breadcrumb ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.post-breadcrumb ul a {
    transition: color 300ms;
}

.post-breadcrumb ul a[href]:hover {
    color: var(--color-primary);
}

.post-info {
    margin-bottom: var(--gap-60);
    gap: 10px;
    flex-wrap: wrap;
    font-size: var(--font-25);
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.slider-caption a:hover {
    color: var(--color-primary);
}

.slider-caption a {
    transition: color 300ms;
    text-decoration: underline;
    color: var(--color-other-primary);

}

.slider-caption {
    text-align: center;
    margin-top: var(--gap-30);
    font-size:  var(--small-text);
}

.offer-list-wrapper {
    align-items: flex-start;
    display: flex;
}

.min-age-caption {
    margin-bottom: var(--gap-30);
}

.additional-dates-form .dropdown-button {
    margin-top: 10px;
}
.offer-slider-section .offer-item-title{
    text-transform: lowercase;
}