@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;500&display=swap'); * {
    margin: 0;

    box-sizing: border-box;
}

body , html {
    font-family: 'Poppins', sans-serif;
    font-size: 14px;
}

img {
    max-width: 100%
}

input,textarea,button,select {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    outline: none;
    border: none;
    resize: none;
}

a {
    text-decoration: none;
    color: inherit
}

p {
    margin-bottom: 1rem;
}

/* header {background: rgb(255 255 255 / 40%);backdrop-filter: blur(3px);} header .container {display: flex;flex-direction: row;justify-content: space-between;align-items: center;} header .logo img {height: 100px;} header .menu ul {margin: 0;padding: 0;list-style: none;display: flex;} header .menu ul li {margin: 10px;} header .menu ul li a {color: black;text-decoration: none;font-weight: 700;} header .action .flag {gap: 10px;display: flex;} header .action .flag svg {cursor:pointer; height: 25px;margin: 7px 0;} header .action button {background: #051036;color: white;border: 2px solid #020616;padding: 8px;} */
header .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1560px;
    position: relative;
    z-index: 99999;
}

header .header-left {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

header .header-left .brand {
    display: block;
    width: auto;
}

header .header-left .brand img {
    display: block;
    height: auto;
    width: 125px;
    margin: 0px 0;
}

header .main-menu {
    margin-left: 45px;
    display: flex;
}

header .main-menu > ul {
    list-style: none;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

header .main-menu > ul > li {
    margin-right: 20px;
}

header .main-menu > ul > li > a {
    font-size: 13px;
    text-decoration: none;
    color: #051036;
    transition: .4s ease;
}

header .main-menu > ul > li > a:hover {
    color: #0a58ca;
}

header .header-right {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

header .flags {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

header .flags a {
    width: 32px;
    height: 25px;
    display: block;
}

header .flags a img {
    width: 32px;
    height: 25px;
    display: block;
}

header .contact-button {
    margin-left: 20px;
    padding: 0 30px;
    background-color: #051036;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
    text-decoration: none;
    transition: .4s ease;
    font-size: 13px;
    border-radius: 4px;
    flex-wrap: wrap;
}

header .contact-button:hover {
    background-color: #000000 !important;
}

/* html, body { */
html {
    overflow-x: hidden;
    overflow-y: auto;
}

@media (max-width: 1199px) {
    header .main-menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background: #fffffff2;
        backdrop-filter: blur(6px);
        margin: 0;
        z-index: 999;
        overflow-y: scroll;
        overflow-x: hidden;
        padding: 40px 20px;
        padding-top: 100px;
        opacity: 0;
        visibility: hidden;
        transition: .4s ease;
        flex-direction: column;
    }

    header .main-menu.active {
        opacity: 1;
        visibility: visible;
        overflow-x: hidden;
        overflow-y: auto;
    }

    header .main-menu > ul {
        flex-direction: column;
        align-items: flex-start;
        margin: 0px -30px;
        padding: 20px 15px;
        border-top: 1px solid #eee;
    }

    header .main-menu > ul > li {
        width: 100%;
        margin: 0;
    }

    header .main-menu > ul > li > a {
        font-size: 15px;
        font-weight: 400;
        line-height: 50px;
        padding: 0 20px;
        display: block;
        width: 100%;
    }

    header .main-menu > ul > li:hover > a {
        background-color: #3554d10d;
    }

    header .header-left .brand {
        width: 120px;
        position: relative;
        z-index: 99999;
    }

    header .header-right {
        position: relative;
        z-index: 999;
    }

    header .flags {
        gap: 10px;
        margin-right: 15px;
    }

    header .flags a {
        width: 25px;
    }

    header .contact-button {
        display: none;
    }

    header .mobile-menu-button {
        width: 32px;
        height: 32px;
        position: relative;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        flex-direction: column;
        gap: 6px;
    }

    header .mobile-menu-button span {
        background: black;
        width: 22px;
        height: 2px;
        display: block;
        opacity: .7;
    }

    header .mobile-menu-button span:last-child {
        width: 16px;
    }

    .home-page {
        max-width: unset !important;
    }
}

.text-center {
    text-align: center;
}

.home-page {
    position: relative;
    padding-top: 16rem;
    max-width: calc(100% - 40px);
    margin: 0 auto;
}

.home-page h1 {
    width: 100%;
    text-align: center;
    font-size: 3.5rem;
    color: white;
    text-shadow: 3px 3px 0 #000;
    margin-bottom: 120px;
}

.home-page .bg-image {
    width: 100%;
    position: absolute;
    height: 100%;
    top: 0;
    z-index: -1;
    border-radius: 20px;
    overflow: hidden;
}

.home-page .bg-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.home-page .booking {
    width: 90%;
    margin: 0 5%;
    margin-top: 5%;
}

.home-page .booking .card {
    width: 100%;
    background: white;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem 1rem;
}

.home-page .booking .card div {
    display: flex;
    flex-direction: column;
    gap: 5px;
    border-left: 1px solid #ddd;
    padding: 15px;
    width: 100%;
}

.home-page .booking .card label {
    color: #051036;
    font-weight: 700;
    margin-bottom: 10px;
}

.home-page .booking .card div:first-child {
    border: none;
}

.home-page .booking .card div:last-child {
    border: none;
}

.home-page .booking .card input,select {
    border: 0;
}

.home-page .booking .card button {
    padding: 1rem;
    border-radius: 0.5rem;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 1rem;
    background-color: #051036;
    color: #fff;
    cursor: pointer;
}

.home-page .booking .card button svg {
    width: 2rem;
}

.home-page .card-image {
    margin-top: -2rem;
    position: relative;
    z-index: -1;
}

.home-page .card-image img {
    border-radius: 0.5rem;
}

.home-page-item {
    margin-top: 10rem;
}

.home-page-item h1 {
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 0.5rem;
}

.home-page-item h2 {
    font-size: 2.5rem;
    text-align: center;
    margin-bottom: 0.5rem;
}

.home-page-item p {
    margin-top: 16px;
}

.home-page-item .card {
    text-align: center;
    padding: 2rem;
    box-shadow: 0 0 15px #ebebeb;
}

@media (max-width: 991px) {
    .home-page {
        padding-top: 4rem;
    }

    .home-page h1 {
        font-size: 1.5rem;
        color: white;
        text-shadow: 1px 1px #000000;
        font-weight: 400;
        padding: 1rem;
        margin: 0;
    }

    .home-page .booking {
        width: 100%;
        margin: 0;
        margin-top: 3rem;
    }

    .home-page > .container {
        padding: 0;
    }

    .home-page .booking .card {
        flex-direction: column;
    }

    .home-page .booking .card > div {
        border: none;
        border-top: 1px solid #eee;
    }

    .home-page .card-image {
        margin-top: 0;
        display: flex;
    }

    .home-page .card-image img {
        border-radius: 0;
        display: flex;
    }

    /* footer .footer-bottom { flex-direction: column; align-items: center; justify-content: center; gap: 30px; } */
}

.faq {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.faq .item {
    border: 1px solid #eee;
    padding: 20px;
    display: flex;
    flex-direction: column;
    transition: .4s ease;
    height: auto;
    overflow: hidden;
}

.faq .item .h4 {
    font-size: 16px;
}

.faq .item .desc {
    overflow: hidden;
    flex: 0;
}

.faq .item > div:first-child {
    display: flex;
    align-items: center;
    cursor: pointer;
}

.faq .item > div:first-child > span {
    flex: 0 0 40px;
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 100%;
    background-color: #eee;
    position: relative;
    margin-right: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: .75rem;
}

.faq .item > div:first-child > span::before, .faq .item > div:first-child > span::after {
    content: '';
    display: block;
    width: calc(100% - 20px);
    height: 2px;
    position: absolute;
    background-color: black;
    transition: .4s ease;
}

.faq .item > div:first-child > span::before {
    transform: rotate(90deg);
}

.faq .item.active > div:first-child > span::before {
    transform: rotate(0deg);
}

.faq .item > div:last-child {
    max-height: 0;
    overflow: hidden;
    transition: .4s ease;
}

.faq .item.active > div:last-child {
    max-height: 300px;
}

/* Mixed */
.cars-carousel .swiper-slide .image {
    border-radius: 5px;
    overflow: hidden;
    position: relative;
}

.cars-carousel .swiper-slide .image .image-link-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 1;
}

.cars-carousel .swiper-slide .image img {
    max-width: 100%;
    display: block;
    border-radius: 5px;
}

.cars-carousel .swiper-slide .title {
    font-size: 17px;
    font-weight: 700;
    letter-spacing: 1px;
    margin-top: 5px;
    margin-bottom: 10px;
}

.cars-carousel .swiper-slide .title span {
    opacity: .5;
    font-weight: 400;
    font-size: 14px;
}

.cars-carousel .swiper-slide .features {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.cars-carousel .swiper-slide .feature {
    display: flex;
    align-items: center;
    margin-right: 15px;
}

.cars-carousel .swiper-slide .feature svg {
    width: 22px;
    height: 22px;
    margin-right: 5px;
}

.cars-carousel .swiper-slide .feature span {
    font-size: 13px;
}

.cars-carousel .swiper-slide .details {
    display: flex;
    align-items: center;
    font-size: 12px;
}

.cars-carousel .swiper-slide .details > div {
    display: flex;
    align-items: center;
    margin-right: 10px;
}

.cars-carousel .swiper-slide .details .rating {
    width: 30px;
    height: 30px;
    background-color: #f8d448;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
}

.cars-carousel .swiper-slide .details .type {
    font-weight: 600;
    letter-spacing: 1px;
}

.cars-carousel .swiper-slide .details .views {
    opacity: .5
}

.cars-gallery-carousel .nav-control {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    display: block;
    width: calc(100% - 2rem);
    height: 60px;
}

.cars-gallery-carousel .swiper-button-prev, .cars-gallery-carousel .swiper-button-next {
    width: 30px;
    height: 30px;
    background: white;
    border-radius: 100%;
    opacity: 0;
    transition: .4s ease;
}

.cars-gallery-carousel .swiper-button-prev::after, .cars-gallery-carousel .swiper-button-next::after {
    font-size: 13px;
    color: black;
}

.cars-gallery-carousel .swiper-button-prev:hover, .cars-gallery-carousel .swiper-button-next:hover {
    background: #f8d448;
}

.cars-gallery-carousel .swiper-pagination-bullet {
    background: white;
    opacity: 0;
    transition: .4s ease;
}

.cars-gallery-carousel .swiper-pagination-bullet-active {
    opacity: 1 !important;
}

.cars-gallery-carousel:hover .swiper-pagination-bullet {
    opacity: .5;
}

.cars-gallery-carousel:hover .swiper-button-prev, .cars-gallery-carousel:hover .swiper-button-next {
    opacity: 1;
}

.cars-gallery-carousel .like-button {
    position: absolute;
    top: 1.75rem;
    right: 1.75rem;
    width: 30px;
    height: 30px;
    background: white;
    border-radius: 100%;
    opacity: 1;
    transition: .4s ease;
    z-index: 3;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cars-gallery-carousel .like-button:hover {
    background: #f8d448;
}

.cars-gallery-carousel .like-button svg {
    width: 20px;
    height: 20px;
    position: absolute;
    top: 7px;
    left: 7px;
}

.cars-carousel .content {
    position: relative;
}

.cars-carousel .content-link-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
}

.cars-carousel > .swiper-nav-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 30px;
}

.cars-carousel > .swiper-nav-container > .swiper-pagination {
    position: static;
    width: auto;
    display: flex;
    align-items: center;
}

.cars-carousel > .swiper-nav-container > .swiper-button-prev, .cars-carousel > .swiper-nav-container > .swiper-button-next {
    position: static;
    width: 40px;
    height: 40px;
    margin: 0;
}

.cars-carousel > .swiper-nav-container > .swiper-button-prev::after, .cars-carousel > .swiper-nav-container > .swiper-button-next::after {
    position: static;
    font-size: 25px;
    color: black;
}

.cars-carousel .main-pagination .swiper-pagination-bullet {
    transition: .4s ease width, .4s ease height;
}

.cars-carousel .main-pagination .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
    width: 5px;
    height: 5px;
}

.cars-carousel .main-pagination .swiper-pagination-bullet-active {
    background: #f8d448 !important;
}

/* Footer */
/* footer { margin-top: 100px; background: #051036; color: white; } footer * { font-size: 15px; font-weight: 400; } .footer-top { padding: 60px 0; } footer .small-title { font-size: 13px; } footer .small-title-link { font-size: 17px; color: inherit; text-decoration: none; transition: .4s ease; font-weight: 500; margin-top: 5px; } footer .small-title-link:hover { color: #6084ff; } .footer-menu { display: flex; flex-direction: column; } .footer-menu-item { display: block; color: white; text-decoration: none; font-weight: 300; font-size: 13.5px; margin-bottom: 10px; transition: .4s ease; } .footer-menu-item:hover { color: #0a58ca } footer .mail-input-group { position: relative; height: 60px; background: white; border-radius: 10px; display: flex; align-items: center; padding: 1.5rem; } footer .mail-input-group input { flex: 1; color: black; } footer .mail-input-group button { background: none; color: #0a58ca; cursor: pointer; text-decoration: underline; } .footer-bottom .left-side { display: flex; align-items: center; flex-wrap: wrap; } .footer-bottom .bottom-menu { display: flex; align-items: center; flex-wrap: wrap; margin-left: 40px; gap: 1rem; } .footer-bottom .bottom-menu-item { color: white; font-weight: 300; text-decoration: none; transition: .4s ease } .footer-bottom .bottom-menu-item:hover { color: #0a58ca; } .footer-bottom { border-top: 1px solid rgba(255, 255, 255, .5); padding: 20px 0; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; } .footer-bottom .right-side { display: flex; align-items: center; } .footer-bottom .social-media-links { display: flex; align-items: center; flex-wrap: wrap; } .footer-bottom .social-media-links .item { fill: white; width: 36px; height: 36px; } .footer-bottom .social-media-links .item svg { width: 24px; height: 24px; transition: .4s ease; } .footer-bottom .social-media-links .item:hover svg { fill: #0a58ca } .footer-bottom .generator { margin-left: 15px } .footer-bottom .generator img { width: 100%; max-width: 120px; filter: invert(1); } */
html.mobile-menu-active {
    overflow-y: hidden;
}

.page-heading {
    padding: 110px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: rgb(0 0 0 / 60%);
    position: relative;
    color: white;
}

.page-heading h1 {
    font-size: 3rem;
    margin-bottom: -5px;
    letter-spacing: 1px;
}

.page-heading .container {
    display: flex;
    flex-direction: column;
    position: relative;
}

.page-heading .bg-image {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.page-heading .bg-image img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
    object-position: center;
}

.page-heading .breadcrumb {
    display: flex;
    align-items: center;
    gap: 20px;
}

.page-heading .breadcrumb .breadcrumb-item {
    color: white;
    text-decoration: none;
}

.page-heading .breadcrumb .item-link::after {
    content: '>';
    margin-left: 20px;
    font-size: 20px;
}

header {
    position: relative;
    transition: .4s ease;
}

header.sticky {
    background: white;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99999999;
    box-shadow: 0 0 20px 0 rgba(0,0,0,.1);
}

.cars-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 2rem;
}

.cars-grid-item {
    display: flex;
    flex-wrap: wrap;
}

.cars-grid-item .item-slider-wrapper {
    width: 100%;
    max-width: 250px;
}

.cars-grid-item .item-slider-wrapper {
    height: 250px;
    overflow: hidden;
}

.cars-grid-item .item-slider-wrapper, .cars-grid-item .item-slider-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.cars-grid-item .item-content-wrapper {
    flex: 1;
    display: flex;
    justify-content: space-between;
    padding: 1rem 1.5rem;
}

.cars-grid-item .item-left .item-title {
    font-weight: 500
}

.cars-grid-item .item-left .item-payment-selection p {
    font-weight: 400;
    margin-top: 2rem;
    color: red;
}

.cars-grid-item .item-left .payment-options {
    display: flex;
    gap: 1rem;
    font-size: .85rem;
    flex-wrap: wrap
}

.cars-grid-item .item-left .payment-options div input {
    position: absolute;
    opacity: 0;
}

.cars-grid-item .item-left .payment-options label {
    display: flex;
    justify-content: center;
    align-items: center;
    background: white;
    border: 1px solid #eee;
    border-radius: 3px;
    padding: .5rem .75rem;
    cursor: pointer;
    transition: .4s ease;
}

.cars-grid-item .item-left .payment-options input:hover ~ label {
    background: #eee;
    box-shadow: 0 0 10px 0 rgba(0,0,0,.05)
}

.cars-grid-item .item-left .payment-options input:checked ~ label {
    background: #051036;
    color: white;
}

.cars-grid-item .item-rating {
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
    margin-bottom: 1.5rem
}

.cars-grid-item .item-rating .rating-info {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.cars-grid-item .item-rating .rating-point {
    background: #F8D448;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 3px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: .9rem;
    font-weight: 600
}

.cars-grid .item-reservation-button {
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    line-height: 18px;
    border-radius: 5px;
    transition: .4s ease;
    background: #051036;
    color: white;
    margin: 0;
    width: 100%;
    padding: 1rem 1.5rem;
    cursor: pointer;
}

.cars-grid .item-reservation-button:hover {
    background: #3554D1;
}

.cars-grid .item-reservation-button svg {
    width: 25px;
    height: 25px;
    margin-left: 1.5rem;
    transition: .4s ease;
}

.cars-grid .item-reservation-button svg path {
    fill: white;
}

.cars-grid .item-slider .nav-control {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    display: block;
    width: calc(100% - 2rem);
    height: 60px;
}

.cars-grid .item-slider .swiper-button-prev, .cars-grid .item-slider .swiper-button-next {
    width: 30px;
    height: 30px;
    background: white;
    border-radius: 100%;
    opacity: 0;
    transition: .4s ease;
}

.cars-grid .item-slider .swiper-button-prev::after, .cars-grid .item-slider .swiper-button-next::after {
    font-size: 13px;
    color: black;
}

.cars-grid .item-slider .swiper-button-prev:hover, .cars-grid .item-slider .swiper-button-next:hover {
    background: #f8d448;
}

.cars-grid .item-slider .swiper-pagination-bullet {
    background: white;
    opacity: 0;
    transition: .4s ease;
}

.cars-grid .item-slider .swiper-pagination-bullet-active {
    opacity: 1 !important;
}

.cars-grid .item-slider:hover .swiper-pagination-bullet {
    opacity: .5;
}

.cars-grid .item-slider:hover .swiper-button-prev, .cars-grid .item-slider:hover .swiper-button-next {
    opacity: 1;
}

@media (min-width: 0) and (max-width: 767px) {
    .cars-grid-item {
        height: auto;
        flex-direction: column;
    }

    .cars-grid {
        display: block;
    }

    .cars-grid-item .item-slider-wrapper {
        max-width: 100%;
    }

    .cars-grid-item .item-content-wrapper {
        flex-direction: column;
    }

    .cars-grid-item .item-right {
        margin-top: 1.75rem;
        display: flex;
        justify-content: center;
        flex-direction: column;
    }

    .cars-grid-item .item-rating {
        justify-content: center
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .cars-grid-item .item-content-wrapper {
        flex-direction: column;
        align-items: flex-start;
    }

    .cars-grid-item .item-right {
        margin-top: 1.5rem;
    }

    .cars-grid-item .item-rating {
        justify-content: flex-start;
    }

    .cars-grid .item-reservation-button {
        padding: .5rem 1rem;
        font-size: .8rem
    }
}

@media (max-width: 1024px) {
    .home-page .bg-image img {
        width: 100%;
        height: 27%;
        object-fit: cover;
    }
}

@media (min-width: 1200px) and (max-width: 1399px) {
    .cars-grid .item-reservation-button {
        padding: .5rem 1rem;
        font-size: .8rem
    }
}

.location-infos {
    background: white;
    box-shadow: inset 0 0 20px 0 rgba(0,0,0,.1);
    border-radius: 5px;
}

.location-infos .item {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    padding: 2rem;
}

.location-infos .item + .item {
    border-top: 1px solid #eee;
}

.location-infos .item span {
    font-size: 1.1rem;
    font-weight: 500;
    margin-bottom: .5rem
}

.location-infos .item small {
    font-size: .9rem;
    font-weight: 400;
    opacity: .7
}

.cars-grid hr {
    border: none;
    border-top: 1px solid #eee;
}

.map-area {
    margin-top: 20px;
    height: 250px;
    border-radius: 4px;
    overflow: hidden;
    display: none;
}

.map-area .detail {
    width: 100%;
    height: 100%;
}

/* Yeni */
.booking-form {
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 0 20px 0 rgba(0,0,0,.1);
    display: flex;
    padding: 20px;
    gap: 20px;
    flex-wrap: wrap;
    position: relative;
    padding-bottom: 40px;
}

.booking-form .form-column {
    flex: auto;
}

.booking-form .form-column.column-from-to {
    display: flex;
    flex: 1;
    gap: 20px;
}

.booking-form .column-date-return-person {
    display: flex;
    flex: 1;
    gap: 20px;
}

.booking-form .form-column.column-from-to .form-textbox::placeholder {
    opacity: 0;
}

.booking-form .form-column.column-from-to .form-input-container {
    flex: 1;
    position: relative;
}

.form-input-container.error {
    border-color: #ff0000 !important;
    background-color: #ff00000f;
}

.booking-form .form-column.column-from-to .form-input-container .form-input-block {
    position: relative;
}

.booking-form .form-column.column-from-to .form-input-container .form-input-block small {
    position: absolute;
    top: 20px;
    transition: all .3s ease;
}

.booking-form .form-column.column-from-to .form-input-container.active .form-input-block small {
    top: 100%;
}

.booking-form .form-column.column-from-to .form-input-container .form-input-block > label {
    transition: all .3s ease;
    position: relative;
    top: 0;
}

.booking-form .form-column.column-from-to .form-input-container.active .form-input-block > label {
    position: relative;
    top: -5px;
    font-size: 10px;
}

.booking-form .form-input-container {
    display: flex;
    align-items: center;
    border: 2px solid #eee;
    padding: 20px 30px;
    border-radius: 10px;
    height: 100%;
}

.booking-form .form-input-container.small {
    align-items: flex-start;
}

.booking-form .form-input-container.small > .form-input-block > label {
    margin-bottom: 10px;
    font-size: 10px;
    font-weight: 600;
    transition: all .3s ease;
}

.booking-form .form-input-container .form-input-icon {
    width: 40px;
    display: flex;
    align-items: center;
    height: 100%;
}

.booking-form .form-input-container .form-input-icon img {
    width: 25px;
}

.booking-form .form-input-container .form-input-block {
    flex: 1;
}

.booking-form .form-input-container .form-input-block label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: #555;
}

.booking-form .form-input-container .form-input-block small {
    display: block;
    font-size: 10px;
    font-weight: 400;
    color: #999;
}

.booking-form .form-input-container .form-input-block .form-textbox {
    width: 100%;
    border: 0;
    outline: 0;
    font-size: 14px;
    font-weight: 600;
    color: #000;
    padding: 0;
    margin: 0;
    background-color: transparent;
}

.booking-form .form-input-group {
    height: 100%;
    display: flex;
    gap: 20px;
}

.booking-form .form-input-group.fill {
    flex: 1
}

.fill {
    flex: 1;
}

.form-switch {
    position: relative;
    display: inline-block;
    width: 80px;
    height: 35px;
    margin: 0;
    padding: 0;
    border-radius: 100px;
    overflow: hidden;
    cursor: pointer;
    background-color: #ddd;
}

.form-switch input {
    z-index: 100;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.form-switch .form-switch-ball {
    position: absolute;
    top: 5px;
    left: 6px;
    width: 25px;
    height: 25px;
    background-color: #fff;
    border-radius: 50%;
    box-shadow: 0 0 5px 0 rgba(0,0,0,.1);
    transition: all .3s ease;
    z-index: 3;
}

.form-switch input:checked ~ .form-switch-ball {
    left: calc(100% - 6px);
    transform: translateX(-100%);
}

.form-switch input:checked ~ .form-bg {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #12d069;
    transition: all .3s ease;
}

.form-selectbox {
    /* position: relative; */
    height: 35px;
    display: flex;
    align-items: center;
}

.form-selectbox-options {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 0 20px 0 rgba(0,0,0,.1);
    display: none;
    max-height: 200px;
    overflow-y: auto;
    z-index: 100;
}

.form-selectbox-option {
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 400;
    color: #000;
    cursor: pointer;
    transition: all .3s ease;
}

.form-selectbox-option:hover, .form-selectbox-option.active {
    background-color: #eee;
}

.form-selectbox-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #000;
    cursor: pointer;
    transition: all .3s ease;
    position: relative;
    width: 100%;
}

.form-selectbox-label::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    border-top-color: #000;
    transform: translateY(-50%);
    transition: all .3s ease;
}

.form-map-results {
    position: absolute;
    z-index: 100;
    top: 100%;
    left: 0;
    width: 100%;
    max-width: 400px;
    background-color: #fff;
    border-radius: 4px;
    box-shadow: 0 0 20px 0 rgba(0,0,0,.1);
    max-height: 200px;
    overflow-y: auto;
}

.form-map-results li {
    list-style: none;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 400;
    color: #000;
    cursor: pointer;
    transition: all .3s ease;
    display: flex;
    align-items: flex-start;
    font-size: 13px;
    font-weight: 500;
}

.form-map-results li i {
    margin-right: 10px;
    font-size: 20px;
}

.form-map-results li:hover {
    background-color: #eee;
}

.form-date-select {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0 !important;
    cursor: pointer;
    z-index: 2;
}

.booking-form .form-input-container {
    position: relative;
}

.booking-form .form-input-container.date.active small {
    display: none;
}

#formDateReturn {
    display: none;
    border: 2px solid #eee;
    border-radius: 10px;
    padding: 20px 15px;
}

#formDateReturn.error {
    border-color: #ff0000 !important;
    background-color: #ff00000f;
}

#formDateReturn .form-input-container {
    flex: 1;
    padding: 0;
    border: none;
    border-radius: 0;
    position: static;
}

#formDateReturn {
    position: relative;
}

#formDateReturn .form-input-container:last-child {
    border-left: 1px solid #eee;
    padding-left: 15px;
}

#formDateReturn .form-date-select {
    width: 0;
    height: 0;
}

#formDateReturn .form-input-block .dayNameString {
    display: none;
}

.booking-form .date-time-value {
    white-space: nowrap;
}

.booking-form .form-footer {
    position: absolute;
    flex: 0 0 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    top: calc(100% - 20px);
    right: 20px;
}

.booking-form .form-footer .btn {
    display: flex;
    align-items: center;
    padding: 15px 30px;
    font-size: 18px;
    border-radius: 4px;
    cursor: pointer;
}

.booking-form .form-footer .btn.btn-primary {
    background-color: #12d069;
    color: #fff;
}

.booking-form .form-footer .btn.btn-primary:hover {
    background-color: #0fb85f;
}

.booking-form .form-footer .btn svg {
    margin-right: 10px;
    width: 30px;
    height: 30px;
}

@media (max-width: 1199px) {
    .booking-form .form-column.column-from-to, .booking-form .column-date-return-person {
        flex-direction: column;
    }

    .booking-form .column-date-return-person .form-input-container {
        width: 100%;
    }

    #formReturnAndPerson, #formReturnAndPerson .form-input-container {
        flex: unset;
        z-index: 0;
    }

    .booking-form {
        padding-bottom: 40px !important;
    }

    .booking-form .form-footer {
        width: 100%;
        position: static !important;
    }

    .booking-form .form-footer .btn {
        width: 100%;
        justify-content: center;
    }
}

.ui-form-button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    padding: 1rem 2.5rem;
    background-color: #051036;
    font-size: 13px;
    color: white;
    text-decoration: none;
    transition: .4s ease;
    border-radius: 4px;
    cursor: pointer;
}

.ui-form-button:hover {
    background-color: #3554D1;
}

.booking-total-price {
    font-size: 3rem;
    font-weight: 600;
    color: red;
    margin-bottom: 2.5rem;
}

.ui-form-label {
    font-size: .9rem;
    display: block;
    margin-bottom: .5rem;
    color: #555
}

.ui-form-label > span {
    color: red;
    font-weight: 600;
}

.ui-form-control {
    border: 1px solid #eee;
    border-radius: 3px;
    width: 100%;
    height: 40px;
    padding: 0 1rem;
    font-size: .9rem;
    transition: .4s ease;
}

.ui-form-control.textarea {
    height: 120px;
    padding: 1rem;
}

.ui-form-control.textarea.v2 {
    height: 165px;
}

.ui-form-control, .ui-form-select {
    border: 1px solid #eee;
    border-radius: 3px;
    width: 100%;
    height: 40px;
    padding: 0 1rem;
    font-size: .9rem;
    transition: .4s ease;
}

.ui-form-select {
    color: #777;
}

.ui-form-control:hover {
    box-shadow: 0 0 0 2px rgba(5, 16, 54, .5)
}

.ui-form-control:focus {
    box-shadow: 0 0 0 2px rgba(5, 16, 54, 1)
}

.services-table {
    border: 1px solid #eee;
    overflow: hidden;
    border-radius: 3px;
}

.services-table .table-row {
    padding: 1rem 2rem;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #eee;
}

.services-table .table-row .item-left {
    flex: 1;
    overflow: hidden;
    word-break: break-word;
    padding-right: 1rem
}

.services-table .table-row:last-child {
    border: none;
}

.services-table .table-row.table-header {
    background: #051036;
    color: white;
    padding: 1rem 3rem
}

.ui-checkbox {
    position: relative;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.ui-checkbox span {
    margin-left: 1rem;
    font-size: 1rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    position: relative;
    padding-left: 3rem;
    overflow: hidden;
}

.ui-checkbox input {
    position: absolute;
    opacity: 0;
}

.ui-checkbox span::before {
    position: absolute;
    left: 0;
    content: '';
    width: 1.5rem;
    height: 1.5rem;
    display: block;
    margin-right: 1.5rem;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciICAgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hlY2siPjxwb2x5bGluZSBwb2ludHM9IjIwIDYgOSAxNyA0IDEyIj48L3BvbHlsaW5lPjwvc3ZnPg==');
    transition: .4s ease;
    background-size: 1.25rem;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0;
    z-index: -1
}

.ui-checkbox span::after {
    position: absolute;
    left: 0;
    content: '';
    width: 1.5rem;
    height: 1.5rem;
    border: 1px solid #eee;
    border-radius: 3px;
    transition: .4s ease;
    z-index: 2;
    box-shadow: 0 0 3px 0 rgba(0,0,0,.1) inset;
}

.ui-checkbox input:hover ~ span::before {
    opacity: .5
}

.ui-checkbox input:checked ~ span::before {
    opacity: 1
}

.ui-checkbox.radio span {
    position: relative;
}

.ui-checkbox.radio span::before {
    background-image: unset;
    background-color: #333;
    width: .9rem;
    height: .9rem;
    top: .3rem;
    left: .375rem;
    border-radius: 1px;
}

input[type=number]::-webkit-outer-spin-button, input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}


.txt-sm {
    font-size: 13px;
    color: #888;
}

/* --------------------------------------- */
/* -------- RESERVATION TEMPLATES -------- */
/* --------------------------------------- */
.reservation-container {
    display: flex;
    gap: 20px;
}

.reservation-container.reverse {
    flex-direction: row-reverse;
}

.reservation-container > .l {
    width: 100%;
}

.reservation-container > .r {
    width: 350px;
    min-width: 355px;
}

.reservation-container > .r > div {
    position: sticky;
    top: 15px;
}

.langs-wrapper {
    position: relative;
}

.langs-wrapper .front {
    width: fit-content;
    padding: 5px;
    border-radius: 999px;
    display: flex;
    gap: 5px;
    align-items: center;
    background-color: white;
    transition: all .2s ease;
    cursor: pointer;
}

.langs-wrapper .front:hover {
    background-color: rgba(0, 0, 0, .07);
}

.langs-wrapper .front img {
    margin-right: 2px;
    height: 20px;
    border-radius: 50%;
    object-fit: cover;
    aspect-ratio: 1;
}

.langs-wrapper .front i {
    transition: all .2s ease;
}

.langs-wrapper:has(.back.active) .front i {
    transform: rotate(180deg);
}

.langs-wrapper .back {
    border: 1px solid #e8ecef;
    border-radius: 3px;
    width: 100px;
    position: absolute;
    top: calc(100% + 30px);
    background-color: white;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    transition: all .2s ease;
    opacity: 0;
    pointer-events: none;
}

.langs-wrapper .back.active {
    top: calc(100% + 10px);
    opacity: 1;
    pointer-events: all;
}

.langs-wrapper .back > button {
    padding: 10px 5px 10px 15px;
    border-radius: 3px;
    display: flex;
    gap: 5px;
    align-items: center;
    background-color: white;
    transition: all .2s ease;
    cursor: pointer;
    width: 100%;
    transition: all .2s ease;
}

.langs-wrapper .back > button:hover {
    background-color: #f5f5f5;
}

.langs-wrapper .back > button:not(:last-child) {
    border-bottom: 1px solid #eee;
}

.langs-wrapper .back > button img {
    margin-right: 2px;
    height: 15px;
    border-radius: 50%;
    object-fit: cover;
    aspect-ratio: 1;
}

.social-wrapper {
    display: flex;
    align-items: center;
    gap: 15px;
    padding-top: 6px;
    padding-left: 20px;
    border-left: 1px solid rgba(5, 16, 54, 0.2);
}

.social-wrapper > a {
    font-size: 20px;
    transition: all .2s ease;
    display: flex;
    color: #1a1a1a;
}

.social-wrapper > a:hover {
    color: #0a58ca;
}

.shadow-header {
    display: none;
    height: 100px;
}

.sticky ~ .shadow-header {
    display: block;
}

header:not(.sticky) {
    max-width: calc(100% - 40px);
    margin: 0 auto;
}

.mobile-wp {
    --size: 60px;
    font-size: 35px;
    padding-bottom: 1px;
    margin-right: 10px;
    color: #fff;
    background-color: #25D366;
    width: var(--size);
    height: var(--size);
    min-width: var(--size);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    left: 15px;
    bottom: 15px;
    z-index: 5;
    box-shadow: 0px 0px 10px 0 rgba(0, 0, 0, .2);
}

@media screen and (max-width: 1199px) {
    .langs-wrapper {
        margin-right: 10px;
    }

    .social-wrapper {
        border-left: none !important;
        padding-left: 0 !important;
    }

    header:not(.sticky) {
        max-width: unset;
    }

    .mobile-wp {
        left: 10px;
        bottom: 10px;
    }
}

/* --------------------------------------- */
/* ----------- BIDO TEMPLATES ------------ */
/* --------------------------------------- */
.wrapper-template-1 {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

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

/* Bido Template 1 */
.bido-template-1 {
    box-shadow: 0 0 25px 0 rgba(34, 41, 47, .1);
    border-radius: 10px;
    overflow: hidden;
}

.bido-template-1 > .h {
    padding: 20px;
    background-color: #eee;
    position: relative;
}

.bido-template-1 > .h strong {
    font-size: 16px;
    font-weight: 500;
}

.bido-template-1 > .h .switch {
    position: absolute;
    right: calc(20px + 30px);
    top: 50%;
    transform: translateY(-50%);
}

.bido-template-1 > .b {
    padding: 20px;
}

.bido-template-1 > .b .txt-area {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.bido-template-1 > .b .txt-area > div {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.bido-template-1 > .b .txt-area > div > b {
    font-size: 14px;
    font-weight: 500;
    color: #888;
}

.bido-template-1 > .b .txt-area > div > p {
    font-size: 13px;
}

.bido-template-1 > .b .table-area {
    padding-top: 20px;
    margin-top: 10px;
    border-top: 1px solid #e8ecef;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bido-template-1 > .b .table-area.v2 {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
}

.bido-template-1 > .b .table-area > div {
    font-size: 13px;
    gap: 5px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.bido-template-1 > .b .table-area > div.total {
    border-top: 1px solid #e8ecef;
    margin-top: 15px;
    padding-top: 15px;
}

.bido-template-1 > .b .table-area > div.total > div:nth-child(1) {
    opacity: 1 !important;
}

.bido-template-1 > .b .table-area > div.total > div:nth-child(2) {
    font-size: 20px;
}

.bido-template-1 > .b .table-area > div.red {
    color: #d93f3f;
}

.bido-template-1 > .b .table-area > div > div:nth-child(1) {
    color: #888;
    display: flex;
    align-items: center;
}

.bido-template-1 > .b .table-area.v2 > div > div:nth-child(1) {
    color: inherit;
    opacity: .7;
}

.bido-template-1 > .b .table-area > div > div:nth-child(1) i {
    font-size: 17px;
    width: 20px;
    text-align: center;
    margin-right: 7px;
}

/* Bido Template 2 */
.bido-template-2 {
    display: flex;
    box-shadow: 0 0 25px 0 rgba(34, 41, 47, .1);
    border-radius: 10px;
    overflow: hidden;
}

.bido-template-2 .img {
    display: flex;
    width: 300px;
    min-width: 300px;
    aspect-ratio: 1;
    position: relative;
}

.bido-template-2 .img .swiper {
    position: relative;
}

.bido-template-2 .img .swiper .swiper-slide {
    display: flex;
}

.bido-template-2 .img .swiper .swiper-slide img {
    aspect-ratio: 1;
    object-fit: cover;
}

.bido-template-2 .detail {
    padding: 25px;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 15px;
}

.bido-template-2 .detail .top .info {
    gap: 40px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e8ecef;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.bido-template-2 .detail .top .info > strong {
    font-size: 20px;
    font-weight: 500;
}

.bido-template-2 .detail .top .info .icons {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.bido-template-2 .detail .top .info .icons > span {
    white-space: nowrap;
    color: #888;
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 7px;
}

.bido-template-2 .detail .top .info .icons > span i {
    font-size: 26px;
    color: #f8b820;
}

.bido-template-2 .detail .top .options {
    display: flex;
    gap: 10px;
    margin-top: 15px;
    flex-wrap: wrap;
}

.bido-template-2 .detail .top .options > div {
    width: 90px;
    min-width: 90px;
    color: #888;
    background-color: #fafafa;
    border-radius: 10px;
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    align-items: center;
    text-align: center;
    max-width: 90px;
}

.bido-template-2 .detail .top .options > div .icon {
    font-size: 20px;
}

.bido-template-2 .detail .top .options > div span {
    font-size: 12px;
}

.bido-template-2 .detail .bottom .price-area > span {
    font-size: 12px;
    color: #888;
}

.bido-template-2 .detail .bottom .price-area > div {
    --green: #51b400;
    margin-top: 10px;
    display: flex;
    justify-content: space-between;
}

.bido-template-2 .detail .bottom .price-area > div .prices {
    display: flex;
    gap: 10px;
}

.bido-template-2 .detail .bottom .price-area > div .prices > button {
    height: 52px;
    border-radius: 3px;
    gap: 5px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px 15px;
    border: 2px solid #eee;
    background-color: white;
    position: relative;
    transition: all .2s ease;
    cursor: pointer;
}

.bido-template-2 .detail .bottom .price-area > div .prices > button.active {
    border-color: var(--green);
    color: var(--green);
}

.bido-template-2 .detail .bottom .price-area > div .prices > button strong {
    font-size: 13px;
    font-weight: 500;
    line-height: 1;
}

.bido-template-2 .detail .bottom .price-area > div .prices > button del {
    font-size: 11px;
    color: #888;
    line-height: 1;
}

.bido-template-2 .detail .bottom .price-area > div .prices > button > div {
    --size: 15px;
    background-color: var(--green);
    font-size: 9px;
    position: absolute;
    left: 0;
    top: 0;
    width: var(--size);
    height: var(--size);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    pointer-events: none;
    transition: all .2s ease;
}

.bido-template-2 .detail .bottom .price-area > div .prices > button.active > div {
    opacity: 1;
    pointer-events: all;
}

.bido-template-2 .detail .bottom .price-area > div > a {
    background-color: var(--green);
    border: 1px solid var(--green);
    color: #fff;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 15px;
    max-width: 120px;
    text-align: center;
    font-size: 13px;
    line-height: 1.25;
    transition: all .2s ease;
    border-radius: 3px;
}

.bido-template-2 .detail .bottom .price-area > div > a:hover {
    background-color: white;
    color: var(--green);
}

.bido-template-2 .detail .bottom .price-area > div > button {
    cursor: pointer;
    background-color: var(--green);
    border: 1px solid var(--green);
    color: #fff;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 15px;
    max-width: 120px;
    text-align: center;
    font-size: 13px;
    line-height: 1.25;
    transition: all .2s ease;
    border-radius: 3px;
}

.bido-template-2 .detail .bottom .price-area > div > button:hover {
    background-color: white;
    color: var(--green);
}

/* Bido Template 3 */
.bido-template-3 {
    display: flex;
    gap: 40px;
    align-items: center;
    justify-content: space-between;
    margin-top: 20px;
}

.bido-template-3 .txt p {
    margin-bottom: 5px;
}

/* Bido Template 4 */
.bido-template-4 {
    height: 40px;
    display: flex;
    border: 1px solid #ddd;
    background-color: #fff;
    border-radius: 7px;
    overflow: hidden;
}

.bido-template-4 input {
    background-color: transparent;
    padding: 0 10px;
    font-size: 13px;
    font-weight: 500;
}

.bido-template-4 button {
    background-color: rgba(5, 16, 54, 0.05);
    border-left: 1px solid #ddd;
    width: fit-content;
    height: 100%;
    padding: 0 15px;
    display: flex;
    align-items: center;
    font-size: 14px;
    cursor: pointer;
}

/* --------------------------------------- */
/* ----------- CARD TEMPLATES ------------ */
/* --------------------------------------- */
.card-template-1 {
    box-shadow: 0 0 25px 0 rgba(34, 41, 47, .1);
    border-radius: 10px;
    overflow: hidden;
}

.card-template-1 > .h {
    padding: 25px;
    position: relative;
}

.card-template-1 > .h h3 {
    font-size: 18px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 10px;
}

.card-template-1 > .h h3 i {
    font-size: 26px;
    color: var(--main-color);
}

.card-template-1 > .h .switch {
    position: absolute;
    right: calc(25px + 30px);
    top: 50%;
    transform: translateY(-50%);
}

.card-template-1 > .b {
    padding: 0 25px 25px;
}

.card-template-2 {
    position: relative;
}

.card-template-2 > input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.card-template-2 > label {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 25px;
    border: 2px solid #eee;
    border-radius: 10px;
    width: 100%;
    height: 100%;
    justify-content: space-between;
    cursor: pointer;
}

.card-template-2 > label.active {
    border-color: #51b400;
}

.card-template-2 > label .icons {
    display: flex;
    justify-content: space-between;
}

.card-template-2 > label .icons > i {
    font-size: 30px;
    color: #888;
}

.card-template-2 > label .icons > div {
    --size: 40px;
    font-size: 25px;
    color: #eee;
    border: 1px solid #eee;
    width: var(--size);
    height: var(--size);
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.card-template-2 > label.active .icons > div {
    border-color: #51b400;
    color: #51b400;
}

.card-template-2 > label .txt {
    display: flex;
    gap: 20px;
    align-items: flex-end;
}

.card-template-2 > label .txt > strong {
    display: inline-block;
    width: 100%;
    font-weight: 400;
}

.card-template-2 > label .txt > div {
    display: inline-block;
    white-space: nowrap;
    font-size: 16px;
}

.card-template-2 > input:checked + label {
    border-color: #51b400;
}

.card-template-2 > input:checked + label .icons > div {
    color: #51b400;
    border-color: #51b400;
}

.card-template-2 > input[type="radio"]:checked + label {
    border-color: #51b400;
}

.card-template-2 > input[type="radio"]:checked + label .icons > div {
    color: #51b400;
    border-color: #51b400;
}

.card-template-3 {
    padding: 20px;
    border: 2px solid #eee;
    border-radius: 10px;
    transition: all .2s ease;
    cursor: pointer;
}

.card-template-3.active {
    border-color: #51b400;
}

.card-template-3 > .h {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.card-template-3 > .h .l {
    display: flex;
    flex-direction: column;
    position: relative;
    padding-left: 40px;
}

.card-template-3 > .h .l::before {
    --size: 20px;
    border: 1px solid #ddd;
    color: white;
    width: var(--size);
    height: var(--size);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: all .2s ease;
    font-family: 'Line Awesome Free';
    content: '';
    font-weight: 700;
}

.card-template-3.active > .h .l::before {
    background-color: #51b400;
}

.card-template-3 > .h .l strong {
    font-weight: 500;
    font-size: 14px;
}

.card-template-3 > .h .l span {
    font-size: 12px;
    color: #888;
}

.card-template-3 > .h .r {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 3px;
    text-align: end;
}

.card-template-3 > .h .r strong {
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
}

.card-template-3 > .h .r > span {
    color: var(--main-color);
    font-size: 12px;
}

.card-template-3 .btn-green {
    opacity: 0;
    transition: all .2s ease;
    pointer-events: none;
}

.card-template-3.active .btn-green {
    opacity: 1;
    pointer-events: all;
}

.form-template-1 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px 25px;
}

.form-template-1 ._1 {
    grid-column: span 1 / span 1;
}

.form-template-1 ._2 {
    grid-column: span 2 / span 2;
}

.form-template-1 ._4 {
    grid-column: span 4 / span 4;
}

.align-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}



.form-template-2 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px 25px;}
.form-template-2 ._1{ grid-column: span 1 / span 1;}
.form-template-2 ._3{ grid-column: span 3 / span 3;}

@media screen and (max-width: 1280px) {
    .form-template-2{ display: flex; flex-direction: column;}
    .reservation-container.reverse{ flex-direction: column-reverse;}
}




.input-template-1 {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.input-template-1 label {
    font-size: 13px;
    font-weight: 400;
    color: #4d4f57;
}

.input-template-1 > div {
    display: flex;
}

.input-template-1 > div button {
    height: 40px;
    aspect-ratio: 1;
    background-color: #f5f5f5;
    border: 1px solid #ddd;
    border-right: 0;
}

.input-template-1 > div button + input {
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
}

.input-template-1 > div :is(input, select, textarea) {
    font-size: 13px;
    height: 40px;
    font-weight: 400;
    width: 100%;
    border: 1px solid #ddd;
    padding: 10px 12px;
    border-radius: 3px;
}

.input-template-1 > div :is(input, select, textarea)::placeholder {
    opacity: .6;
}

.input-template-1 > div textarea {
    height: 150px;
}

.chckbx {
    position: relative;
}

.chckbx input[type="checkbox"] {
    position: absolute;
    cursor: pointer;
    transform: translate(6.5px, 8px);
    top: 0;
    width: 2px;
    height: 2px;
}

.chckbx input[type="checkbox"]::before {
    box-sizing: border-box;
    transition: all .1s ease;
    box-shadow: inset 0 0 7px 0px rgba(0, 0, 0, 1);
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    box-shadow: inset 0 0 5px 0 rgba(0, 0, 0, .1);
    border: 1px solid rgb(214, 220, 232);
    background-color: white;
    width: 17px;
    height: 17px;
    border-radius: 3px;
}

.chckbx input[type="checkbox"]:checked::before {
    font-size: 11px;
    font-weight: 900;
    color: white;
    border-color: unset;
    background-color: #f8b820;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    left: 0;
    top: 0;
    width: 17px;
    height: 17px;
    font-family: 'Line Awesome Free';
    content: 'ï€Œ';
}

.chckbx input[type="checkbox"]::before, .chckbx input[type="checkbox"]:checked:before {
    transform: translate(-6.5px, -5.5px);
}

.chckbx label {
    padding-left: 23px;
    font-size: 12px;
    color: #555;
    font-weight: 500;
}

.chckbx label a {
    text-decoration: none;
    color: black;
}

.chckbx label a:hover {
    text-decoration: underline;
}

.btns-wrapper-1 {
    display: flex;
    gap: 10px;
    margin-top: 10px;
    flex-wrap: wrap;
}

/* --------------------------------------- */
/* --------------- BUTTONS --------------- */
/* --------------------------------------- */
.btn {
    cursor: pointer;
    padding: 10px 20px 11px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-size: 13px;
    border-radius: 3px;
    transition: .2s ease;
}

.btn-blue {
    background-color: #051036;
    border: 1px solid #051036;
    color: white;
}

.btn-blue:hover {
    background-color: #fff;
    color: #051036;
}

.btn-green {
    background-color: #51b400;
    border: 1px solid #51b400;
    color: white;
}

.btn-green:hover {
    background-color: #fff;
    color: #51b400;
}

.btn-red {
    background-color: #d93f3f;
    border: 1px solid #d93f3f;
    color: white;
}

.btn-red:hover {
    background-color: #fff;
    color: #d93f3f;
}

.btn-gray-outlined {
    background-color: #fff;
    border: 1px solid #ddd;
    color: #051036;
}

.btn-gray-outlined.active {
    border-color: #51b400;
    color: #51b400;
}

/* FOOTER */
/* footer{ width: 100%; margin-top: 50px; background-color: #051036;} footer .footer{ width: 100%;} footer .footer > div{ gap: 30px; width: 100%; max-width: 1200px; margin: 0 auto; padding: 40px 10px; display: flex; align-items: flex-start; justify-content: space-between;} footer .footer > div .left{ display: flex; flex-direction: column; gap: 20px;} footer .footer > div .left > b{ color: white; font-size: 20px; font-weight: 600;} footer .footer > div .left > img{ height: 40px;} footer .footer > div .left .agent{ display: flex; flex-direction: column; gap: 2px;} footer .footer > div .left .agent > span{ font-size: 11px; color: #ccc;} footer .footer > div .left .agent > a{font-size: 13px; font-weight: 600; text-decoration: none; color: #ddd;} footer .footer > div .left .agent > a:hover{ text-decoration: underline;} footer .footer > div .left .contact{ display: flex; flex-direction: column; gap: 3px;} footer .footer > div .left .contact > strong{ font-size: 13px; color: #fff; font-weight: 500;} footer .footer > div .left .contact > a{ transition: all .2s ease; font-size: 13px; gap: 10px; color: #ddd; display: flex; align-items: center; text-decoration: none;} footer .footer > div .left .contact > a:hover{ color: white;} footer .footer > div .left .contact > a i{ width: 7px; display: flex; justify-content: center;} footer .footer > div .left .social{ display: flex; gap: 10px;} footer .footer > div .left .social a {font-size: 30px; color: white;} footer .footer > div .right{ display: flex; width: 100%; max-width: 600px; justify-content: space-between;} footer .footer > div .right > div{ display: flex; gap: 20px; flex-direction: column;} footer .footer > div .right > div > a{ font-size: 16px; font-weight: 600; text-decoration: none; color: white;} footer .footer > div .right > div > p{ font-size: 13px; font-weight: 500; color: #ddd; max-width: 250px;} footer .footer > div .right > div > div:not(.input){ display: flex; flex-direction: column; gap: 12px;} footer .footer > div .right > div > div:not(.input) > a{ cursor: pointer; transition: all .2s ease; font-size: 13px; font-weight: 500; text-decoration: none; color: #ddd;} footer .footer > div .right > div > div:not(.input) > a:hover{ color: white;} footer .footer > div .right > div > .input{display: flex; outline: 1px solid white; background-color: white; height: 30px; border-radius: 3px; overflow: hidden;} footer .footer > div .right > div > .input input{ font-size: 13px; background-color: transparent; padding: 0 7px; border: none; width: 100%;} footer .footer > div .right > div > .input input::placeholder{ color: #aaa; opacity: 1;} footer .footer > div .right > div > .input input:focus{ outline: none;} footer .footer > div .right > div > .input button{ background-color: transparent; border: none; cursor: pointer; display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; text-decoration: none; font-size: 13px; color: var(--main-dark-blue-txt);} footer .copy{ background-color: #051036; box-shadow: 0 0 15px 0 rgba(255, 255, 255, .2);} footer .copy > div{ width: 100%; max-width: 1200px; padding: 10px 10px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; color: #fff;} footer .copy > div > div{ flex: 1;} footer .copy > div .logo-wrapper{ display: flex; align-items: center; justify-content: flex-end; gap: 10px;} footer .copy > div .logo-wrapper .logo{ height: 40px; filter: invert(1);} footer .copy > div .cr{ display: flex; align-items: center; justify-content: center; font-size: 13px; color: #fff;} footer .copy > div .cards{ display: flex; align-items: center; gap: 10px;} footer .copy > div .cards > a{ height: 25px; aspect-ratio: 1.586; background-color: #fff; display: flex; align-items: center; padding: 3px; border-radius: 5px;} footer .copy > div .cards > a img{ height: 100%; object-fit: contain;} */
footer {
    width: 100%;
    background-color: #fff;
}

footer .footer {
    width: 100%;
}

footer .footer > div {
    gap: 30px;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 10px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

footer .footer > div .left {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

footer .footer > div .left > b {
    color: #000000;
    font-size: 20px;
    font-weight: 600;
    text-shadow: -1px 4px 1px #d9d9d9;
}

footer .footer > div .left > img {
    height: 40px;
}

footer .footer > div .left .agent {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

footer .footer > div .left .agent > span {
    font-size: 11px;
    color: #333;
}

footer .footer > div .left .agent > a {
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    color: #333;
}

footer .footer > div .left .agent > a:hover {
    text-decoration: underline;
}

footer .footer > div .left .contact {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

footer .footer > div .left .contact > strong {
    font-size: 13px;
    color: #000;
    font-weight: 500;
}

footer .footer > div .left .contact > a {
    transition: all .2s ease;
    font-size: 13px;
    gap: 10px;
    color: #333;
    display: flex;
    align-items: center;
    text-decoration: none;
}

footer .footer > div .left .contact > a:hover {
    color: black;
}

footer .footer > div .left .contact > a i {
    width: 7px;
    display: flex;
    justify-content: center;
}

footer .footer > div .left .social {
    display: flex;
    gap: 10px;
}

footer .footer > div .left .social a {
    font-size: 30px;
    color: black;
}

footer .footer > div .right {
    display: flex;
    width: 100%;
    max-width: 600px;
    justify-content: space-between;
}

footer .footer > div .right > div {
    display: flex;
    gap: 20px;
    flex-direction: column;
}

footer .footer > div .right > div > a {
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    color: #000000;
    text-shadow: -1px 4px 1px #d9d9d9;
}

footer .footer > div .right > div > p {
    font-size: 13px;
    font-weight: 500;
    color: #333;
    max-width: 250px;
}

footer .footer > div .right > div > div:not(.input) {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

footer .footer > div .right > div > div:not(.input) > a {
    cursor: pointer;
    transition: all .2s ease;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    color: #333;
}

footer .footer > div .right > div > div:not(.input) > a:hover {
    color: black;
}

footer .footer > div .right > div > .input {
    display: flex;
    outline: 1px solid black;
    background-color: black;
    height: 30px;
    border-radius: 3px;
    overflow: hidden;
}

footer .footer > div .right > div > .input input {
    font-size: 13px;
    background-color: transparent;
    padding: 0 7px;
    border: none;
    width: 100%;
}

footer .footer > div .right > div > .input input::placeholder {
    color: #aaa;
    opacity: 1;
}

footer .footer > div .right > div > .input input:focus {
    outline: none;
}

footer .footer > div .right > div > .input button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    text-decoration: none;
    font-size: 13px;
    color: var(--main-dark-blue-txt);
}

/* footer .copy{ background-color: #051036; box-shadow: 0 0 15px 0 rgba(255, 255, 255, .2);} */
footer .copy {
    border-top: 1px solid #ddd;
}

footer .copy > div {
    width: 100%;
    max-width: 1200px;
    padding: 10px 10px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #000;
}

footer .copy > div > div {
    flex: 1;
}

footer .copy > div .logo-wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
}

footer .copy > div .logo-wrapper .logo {
    height: 30px;
}

footer .copy > div .cr {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    color: #000;
}

footer .copy > div .cards {
    display: flex;
    align-items: center;
    gap: 10px;
}

footer .copy > div .cards > a {
    height: 25px;
    aspect-ratio: 1.586;
    background-color: #fff;
    display: flex;
    align-items: center;
    padding: 3px;
    border-radius: 5px;
}

footer .copy > div .cards > a img {
    height: 100%;
    object-fit: contain;
}

/* Newsletter */
/* .newsletter{ padding: 50px 15px; background-color: #fafafa; margin-top: 50px;} */
.newsletter {
    padding: 50px 15px;
    background-color: #051036;
    margin-top: 50px;
    color: #fff;
}

.newsletter > div {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.newsletter > div .l h3 {
    font-size: 25px;
    font-weight: 600;
    color: white;
}

.newsletter > div .l p {
    font-size: 14px;
    font-weight: 400;
    margin-top: 5px;
    color: white;
}

.newsletter > div .r form {
    display: flex;
    gap: 10px;
}

.newsletter > div .r form input {
    width: 200px;
    color: black;
}

.newsletter > div .r form button {
    height: 40px;
    color: #000000;
    background: white;
}

@media screen and (max-width: 830px) {
    footer .footer > div {
        flex-direction: column;
    }
}

@media screen and (max-width: 768px) {
    footer .copy > div {
        flex-direction: column;
        gap: 20px;
    }

    .newsletter > div {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }

    .page-heading h1 {
        text-align: center;
    }
}

@media screen and (max-width: 660px) {
    footer .footer > div {
        width: 100%;
        max-width: 550px;
        margin: 0 auto;
        padding: 40px 30px;
    }

    footer .footer > div .right {
        flex-direction: column;
        gap: 50px;
    }

    footer .footer > div .right > div > .input {
        width: 200px;
    }

    footer .footer > div .right > div > div:not(.input) {
        gap: 10px;
    }

    footer .footer > div .right > div > p {
        max-width: unset;
    }

    footer .copy > div {
        padding: 10px 30px;
    }
}

/* SWITCH */
.switch {
    position: relative;
    display: flex;
    align-items: center;
}

.switch input {
    cursor: pointer;
    width: 0;
    height: 0;
    position: absolute;
}

.switch input::before {
    transition: all .2s ease;
    content: '';
    padding: 2px;
    display: inline-block;
    width: 30px;
    height: 15px;
    background-color: #e0e0e0;
    border-radius: 15px;
    position: absolute;
    top: 0;
    transform: translateY(-50%);
}

.switch input::after {
    transition: all .2s ease;
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    position: absolute;
    top: 0px;
    transform: translateY(-50%);
    left: 2px;
    background-color: white;
}

.switch input:checked::before {
    background-color: #51b400;
}

.switch input:checked::after {
    left: 2px;
    transform: translateX(100%) translateY(-50%);
}

/* PAGINATION */
.pagination-template .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    width: 20px;
    border-radius: 10px;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .1);
}

.pagination-template .swiper-pagination-bullet {
    background-color: #f5f5f5;
    opacity: .5;
}

.pagination-template .swiper-pagination-bullet-active {
    background-color: #f5f5f5;
    opacity: 1;
}

.iti {
    position: relative;
    display: inline-block;
    width: 100%;
}

@media screen and (max-width: 1280px) {
    .reservation-container {
        flex-direction: column-reverse;
        max-width: 1000px;
        margin: 0 auto;
    }

    .reservation-container > .r {
        width: 100%;
        min-width: unset;
    }
}

@media screen and (max-width: 868px) {
    .pagination-template .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
        width: 15px;
        height: 5px;
    }

    .wrapper-template-2 {
        grid-template-columns: repeat(2, 1fr);
    }

    .bido-template-2 {
        padding-bottom: 160px;
        position: relative;
    }

    .bido-template-2 .img {
        width: 45%;
        min-width: unset;
        max-width: 300px;
        border-radius: 10px;
        overflow: hidden;
    }

    .bido-template-2 .detail {
        width: 55%;
        padding: 10px 15px;
    }

    .bido-template-2 .detail .top .info {
        flex-direction: column;
        gap: 10px;
        align-items: baseline;
    }

    .bido-template-2 .detail .top .info > strong {
        font-size: 14px;
        display: inline-block;
        position: relative;
        padding-bottom: 3px;
    }

    .bido-template-2 .detail .top .info > strong::before {
        content: '';
        display: inline;
        position: absolute;
        left: 0;
        bottom: 0;
        width: 70px;
        height: 2px;
        background-color: #051036;
    }

    .bido-template-2 .detail .top .info .icons > span {
        font-size: 12px;
    }

    .bido-template-2 .detail .top .info .icons > span i {
        font-size: 20px;
    }

    .bido-template-2 .detail .top .options {
        gap: 15px;
    }

    .bido-template-2 .detail .top .options > div {
        padding: 0;
        background-color: transparent;
        width: fit-content;
        min-width: unset;
    }

    .bido-template-2 .detail .top .options > div span {
        display: none;
    }

    .bido-template-2 .detail .bottom {
        position: absolute;
        bottom: 0;
        width: 100%;
        left: 0;
        padding: 15px 15px;
    }

    .bido-template-2 .detail .bottom .price-area > span {
        font-size: 11px;
        transform: translateY(17px);
        display: inline-block;
    }

    .bido-template-2 .detail .bottom .price-area > div {
        flex-direction: column;
        gap: 10px;
    }

    .bido-template-2 .detail .bottom .price-area > div > a {
        max-width: unset;
        width: 100%;
        height: fit-content;
        padding: 10px 0;
    }

    .bido-template-2 .detail .bottom .price-area > div .prices > button {
        flex: 1;
        padding: 10px 0;
    }

    .bido-template-2 .detail .bottom .price-area > div .prices > button strong {
        font-size: 12px;
    }

    .bido-template-2 .detail .bottom .price-area > div .prices > button del {
        font-size: 10px;
    }

    .bido-template-2 .detail .bottom .price-area > div > button {
        max-width: 170px;
        width: 100%;
        margin: 0 auto;
        height: 45px;
    }
}

@media screen and (max-width: 768px) {
    .form-template-1 {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px 15px;
    }

    .form-template-1 ._4 {
        grid-column: span 2 / span 2;
    }
}

@media screen and (max-width: 668px) {
    .wrapper-template-2 {
        display: flex;
        flex-direction: column;
    }

    .card-template-3 > .h {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }

    .card-template-3 > .h .r {
        align-items: flex-start;
        text-align: start;
        padding-left: 40px;
    }

    .bido-template-3 {
        flex-direction: column;
    }
}

@media (max-width:1024px) {
    .page-heading .bg-image img {
        display: block;
        height: 100%;
        object-fit: cover;
        width: 100%;
        object-position: center 0rem;
    }
    .page-heading .container {
        display: flex;
        flex-direction: column;
        position: relative;
        align-items: center;
    }
    .page-heading {
        padding: 110px 0;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        color: white;
        background: rgb(0 0 0 / 47%);
    }
}


.service-item {
    border: 1px solid #f1f1f1;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 0 10px rgba(0,0,0,.1);
    transition: .3s;
}
.service-item:hover {
    box-shadow: 0 0 20px rgba(0,0,0,.1);
}
.service-image img {
    width: 100%;
    height: 200px;
    object-fit: cover;
}
.service-content {
    padding: 10px;
}
.service-content h3 {
    font-size: 18px;
    font-weight: 600;
    color: #333;
}
.service-content p {
    font-size: 14px;
    color: #666;
}

.home-page h1 {
    margin-bottom: 0;
}

/* sadece mobilde */
@media screen and (max-width: 768px) {
    .home-page {
        padding-top: 14rem;
    }
    .home-page .bg-image {
        width: 100%;
        position: absolute;
        height: 135%;
        top: 0;
        z-index: -1;
        border-radius: 0;
        overflow: hidden;
    }
}

