:root {
    --main-bg: #ffffff;
    --accent: #ff6f61;
    --header-bg: #fff;
    --footer-bg: #2E2E2E;
    --card-bg: #fff;
    --card-radius: 15px;
    --card-shadow: 0px 8px 15px 0px rgba(0, 0, 0, 0.05);


    --text-main: #222;
    --text-muted: #757575;
    --badge-new: #ff6f61;
    --badge-popular: #6c63ff;
}

*,
::before,
::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    background: var(--main-bg);
    color: var(--text-main);
}

h1 {
    font-family: Nunito;
    font-weight: 700;
    font-size: 64px;
    line-height: 80px;
}

h2 {
    font-family: Lato;
    font-weight: 600;
    font-size: 24px;
    margin: 24px 0;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

p {
    font-family: Lato;
    font-weight: 400;
    font-size: 16px;
    line-height: 24px;
    margin-top: 0;
    margin-bottom: 16px;
}

.header {
    background: var(--header-bg);
    padding: 18px 0;
}

.header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-left {
    display: flex;
    align-items: center;
    gap: 60px;
}

.logo {
    display: flex;
    align-items: center;
    gap: 8px;
}

.logo-img {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: #ede6f7;
}

.logo-text {
    font-size: 1.3rem;
    font-weight: bold;
    letter-spacing: 1px;
}

.logo-gift {
    font-size: 1.2em;
    margin-left: 2px;
}

.search-wrap {
    display: flex;
    align-items: center;
    background: #f0edf4;
    border-radius: 56px;
    height: 56px;
    width: 165px;
    gap: 6px;
    padding-right: 25px;
    padding-left: 10px;
}

.search-icon {
    display: block;
}

.search {
    padding: 7px 10px;
    border-radius: 8px;
    border: none;
    background: transparent;
    font-size: 1rem;
    outline: none;
    min-width: 120px;
}

.search-wrap button {
    padding: 0;
    margin: 0;
    border: 0;
    height: 32px;
    width: 32px;
    cursor: pointer;
}

.search-wrap button svg {
    height: 16px;
    width: 16px;
}

.nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
}

.nav ul li {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav ul li .submenu {
    display: none;
    position: absolute;
    left: 27px;
    top: 100%;
    background: #fff;
    min-width: 180px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    z-index: 100;
}

.nav ul li:hover>.submenu {
    display: block;
}

.nav ul li .submenu li {
    display: block;
}

.nav ul li a {
    display: block;
    padding: 10px 27px;
    font-family: 'Nunito';
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    color: #333;
    white-space: nowrap;
}

.nav .chevron {
    display: inline-block;
    vertical-align: middle;
    margin-left: 6px;
}

.nav .chevron svg {
    transition: transform 0.2s;
}

.header-right {
    display: flex;
    align-items: center;
    gap: 12px;
}

.activate-btn {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #FFF1EF;
    color: var(--accent);
    border: none;
    height: 60px;
    border-radius: 60px;
    padding: 8px 20px;
    font-weight: bold;
    margin-left: 0;
    cursor: pointer;
    transition: background 0.2s;
    font-size: 1.05rem;
}

.activate-btn:hover {
    background: #fcddd8;
}

.header-icon-btn {
    background: #F0EDF4;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 56px;
    width: 56px;
}

.mobile-menu {
    background-image: url(../image/menu.svg);
    background-repeat: no-repeat;
    background-position: center;
}

.mobile-menu.close {
    background-image: url(../image/close.svg);
    background-repeat: no-repeat;
    background-position: center;
}

#cart,
#wishlist {
    position: relative;
}

#cart .indicator,
#wishlist .indicator {
    display: none;
    position: absolute;
    right: 4px;
    top: 4px;
}

#cart.active .indicator,
#wishlist.active .indicator {
    display: flex;
}

.header-avatar {
    margin-left: 8px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid #ede6f7;
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (min-width: 768px) {
    .filters {
        display: flex;
        gap: 24px;
        background: #fff;
        border-radius: 16px;
        margin: 32px 0;
        align-items: flex-end;
    }

    .filter-group {
        display: flex;
        flex-direction: column;
        width: calc(20% - 10px);
        background: #F0EDF4;
        border: 1px solid #F0EDF4;
        border-radius: 24px;
        cursor: pointer;
        position: relative;
    }

    .filter-group .is-open .choices__list--dropdown,
    .is-open .choices__list[aria-expanded] {
        left: 0;
        z-index: 777;
        border: 1px solid #6A4C93 !important;
        border-radius: 24px;
        margin-top: 4px;
    }

    .filter-group .choices__inner {
        display: inline-block;
        vertical-align: top;
        width: 100%;
        background-color: #f0edf4;
        padding: 0 !important;
        border: none;
        border-radius: unset;
        font-size: 20px;
        font-weight: 600;
        min-height: unset;
        overflow: hidden;
    }

    .filter-group .choices__list--single {
        padding: 0;
    }

    .filter-group .is-open .choices__inner {
        background: #fff;
    }


    .filter-group label {
        font-size: 14px;
        color: var(--text-muted);
        font-weight: 500;
        padding: 16px 16px 4px;
        cursor: pointer;
    }

    .filter-group .choices {
        padding: 0 16px 16px;
        position: unset;
    }

    .choices[data-type*=select-one]::after {
        content: "";
        background-image: url("../image/choices.svg");
        background-repeat: no-repeat;
        background-size: 16px;
        width: 16px !important;
        height: 10px !important;
        right: 16px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        border-style: unset !important;
        border-color: unset !important;
        border-width: 0 !important;
        margin-top: 0 !important;
    }

    .choices[data-type*=select-one].is-open::after {
        transform: translateY(-50%) rotate(180deg) !important;
        transition: transform 0.2s ease;
    }

    .filter-group.open {
        background: #fff;
        border: 1px solid #6A4C93;

        /*border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;*/
    }




    .filter-group select {
        padding: 8px 16px 8px 12px;
        border-radius: 8px;
        border: 1px solid #eee;
        font-size: 1rem;
        background: #f5f5fa url('data:image/svg+xml;utf8,<svg fill="%236C63FF" height="20" viewBox="0 0 24 24" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>') no-repeat right 10px center/18px 18px;
        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        cursor: pointer;
        transition: border 0.2s;
    }

    .filter-group select:focus {
        border: 1.5px solid var(--accent);
        outline: none;
    }
}

.container {
    max-width: 1472px;
    width: 100%;
    padding: 0 16px;
    margin: 0 auto;
}

.inner-container {
    max-width: 1228px;
    width: 100%;
    margin: 0 auto;
    padding: 0 16px;
}

.main-banner {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 320px;
}

.hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #F0EDF4;
    margin-bottom: 18px;
    overflow: hidden;
}

.hero-text {
    font-size: 50px;
    font-weight: 700;
    font-family: 'Nunito';
    width: calc(100% - 475px);
}

.hero-img {
    position: absolute;
    right: 40px;
    top: -5px;
    transform: rotate(6deg);
}

main {
    /*padding: 0 32px 32px 32px;*/
}

/* main section {
    width: 1140px;
    margin: 0 auto !important;
} */

.cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 32px;
}

.card {
    background: var(--card-bg);
    border-radius: var(--card-radius);
    box-shadow: var(--card-shadow);
    display: flex;
    flex-direction: column;
    position: relative;
    transition: box-shadow 0.2s;
}

.card-img {
    height: 264px;
}

.card-img img {
    width: 100%;
    height: 264px;
    object-fit: cover;
    border-radius: var(--card-radius) var(--card-radius) 0 0;
}

.card-badges {
    position: absolute;
    top: 12px;
    left: 12px;
    display: flex;
    gap: 8px;
    z-index: 2;
}

.badge {
    font-size: 16px;
    line-height: 16px;
    padding: 10px;
    border-radius: 16px;
    font-weight: 700;
    opacity: 0.8;
}

.badge.new {
    background: var(--badge-new);
    color: #610E06;
}

.badge.popular {
    background: #C5E3E3;
    color: #1B5A5A;
}

.wishlist-add {
    position: absolute;
    top: 12px;
    right: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    width: 36px;
    background: #F0EDF4;
    border-radius: 16px;
    opacity: 0.8;
    border: 0;
    cursor: pointer;
}

.wishlist-add.active {
    opacity: 1;
}

.wishlist-add.active svg path {
    fill: #6A4C93;
    opacity: 1;
}

.card-content {
    border: 1px solid #dfdee1;
    border-radius: 0 0 var(--card-radius) var(--card-radius);
    padding-bottom: 12px;
}

.card-title {
    display: -webkit-box !important;
    font-family: 'Nunito';
    font-size: 20px;
    font-weight: 600;
    margin: 12px;
    line-height: 27px;
    height: 54px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: #2E2E2E;
    text-decoration: none;
}

.card-price {
    color: var(--accent);
    font-weight: 600;
    font-size: 20px;
    margin: 0 12px 12px;
}

.card-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 14px;
    margin-top: auto;
    gap: 12px;
}

.card-add {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--accent);
    border: none;
    border-radius: 15px;
    width: 100%;
    height: 44px;
    align-self: flex-end;
    margin: 0;
    cursor: pointer;
    text-decoration: none;
    color: #fff;
    font-weight: 600;
    font-size: 20px;
    transition: background 0.2s;
}

.card-add:active,
.card-add.added {
    background: #ff4c3b;
}


.card .choices {
    position: relative;
    overflow: hidden;
    margin-bottom: 0;
    font-size: 16px;
    background: unset;
    width: calc(100% - 56px);
}

.card .choices__inner {
    display: flex;
    align-items: center;
    width: 100%;
    background-color: #E7E4EB;
    padding: 0 !important;
    border: 1px solid #E7E4EB;
    border-radius: 18px;
    font-size: 16px;
    text-align: center;
    font-weight: 600;
    min-height: 44px;
    overflow: hidden;
}

.card .choices__list--single {
    padding: 0;
}

.card .is-open .choices__inner {
    border-radius: 18px;
    background-color: #ffffff;
    border: 1px solid #6A4C93;
}


section h2 {
    font-size: 50px;
    font-family: Nunito;
    font-weight: 700;
    margin: 64px 0 32px 0;
}

.testimonials {
    width: 100%;
    background: #fdeeee;
    padding: 32px 0px 40px;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    display: flex;
    height: fit-content;
    align-items: stretch;
}

.testimonials h2 {
    width: 1200px;
    margin: 20px auto 64px;
}

.testimonials-list {
    display: flex;
    gap: 18px;
    flex-wrap: wrap;
}

.testimonial {
    background: #fff;
    border-radius: 16px;
    box-shadow: var(--card-shadow);
    padding: 24px 20px;
    margin: 0 6px;
    width: 565px;
    height: auto !important;
}

.stars {
    margin-bottom: 16px;
}

.testimonial-title {
    font-weight: 600;
    font-size: 20px;
    font-family: 'Nunito';
    margin-bottom: 16px;
}

.testimonial-text {
    color: var(--text-muted);
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 16px;
}

.testimonial-author {
    color: var(--text-main);
    font-size: 16px;
    font-family: 'Nunito';
    font-weight: 600;
}

.view-more {
    display: block;
    margin: 32px auto 0 auto;
    background: var(--accent);
    color: #fff;
    border: none;
    border-radius: 56px;
    padding: 18px 16px;
    font-size: 16px;
    font-family: 'Nunito';
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
}

.view-more:hover {
    background: #ff4c3b;
}

.faq {
    margin: 32px 0;
}

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

.faq-item {
    background: #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
    overflow: hidden;
}

.faq-question {
    display: flex;
    align-items: center;
    width: 100%;
    background: #F0EDF4;
    border: none;
    text-align: left;
    padding: 26px 16px;
    font-size: 20px;
    font-weight: 600;
    border-radius: 12px;
    cursor: pointer;
    color: var(--text-main);
    transition: all 0.2s;
}

.faq-question::before {
    content: "●";
    color: var(--text-main);
    margin-right: 10px;
    font-size: 1.2em;
    vertical-align: middle;
}

.faq-question .chevron {
    margin-left: auto;
}

.faq-question .text {
    margin-right: 20px;
}

.faq-question.active .chevron svg {
    transform: rotate(180deg);
    transition: transform 0.2s;
}

.faq-question.active {
    /*background: #fdeeee;
  color: var(--accent);*/
}

.faq-answer {
    display: none;
    padding: 26px 16px;
    color: var(--text-main);
    font-size: 16px;
    border-radius: 12px;
    border: 1px solid #f0edf4;
    margin-top: 10px;
}

.faq-item.open .faq-answer {
    display: block;
}

.footer {
    width: 100%;
    margin-top: 80px;
    background: var(--footer-bg);
    color: #fff;
    padding: 0;
    box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.04);
}

.footer-main {
    width: 1140px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    padding: 30px 20px;
    gap: 32px;
}

.footer-logo-block {
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-width: 180px;
}

.footer-logo {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 0;
}

.footer-payments {
    display: flex;
    justify-content: end;
    gap: 10px;
    align-items: center;
    margin-top: 185px;
}

.footer-payments img {
    border-radius: 6px;
    height: 48px;
    width: 70px;
}

.footer-links {
    display: flex;
    flex-direction: column;
    gap: 32px;
    min-width: 180px;
    margin-top: 52px;
}

.footer-links a {
    color: #fff;
    text-decoration: none;
    font-size: 16px;
    opacity: 0.92;
    transition: opacity 0.2s;
}

.footer-links a:hover {
    opacity: 1;
}

.footer-contact {
    font-size: 1rem;
    margin-top: 8px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 180px;
    margin-top: 52px;
}

.footer-phone {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 8px;
    font-size: 24px;
}

.footer-phone svg {
    margin-right: 2px;
}

.footer-hours {
    color: #bbb;
    font-size: 16px;
}

.mobile-menu {
    display: none;
}

.alert {
    position: fixed;
    top: 0;
    left: 0;
    width: calc(100% - 48px);
    z-index: 9999;
    padding: 16px 24px 16px 24px;
    font-size: 18px;
    text-align: center;
    box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);
    transition: opacity 0.3s;
}

.alert-success {
    background: #e6f9f0;
    color: #1a7f4f;
    border-bottom: 1px solid #b6e7d2;
}

.alert-success a {
    color: #1a7f4f;
}

.alert-dismissible .close {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    font-size: 28px;
    color: #1a7f4f;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.2s;
}

.alert-dismissible .close:hover {
    opacity: 1;
}

.page-header {
    background-color: #F0EDF4;
    padding: 32px 0;
    margin-bottom: 32px;
}

.page-header h1 {
    font-family: 'Nunito';
    font-weight: 700;
    font-size: 50px;
    line-height: 58px;
    margin: 0;
    padding: 0;
}

.product-category h1 {
    color: #6A4C93;
    margin: 40px 0 24px 0;
}

/* .product-category .cards-grid {
    grid-template-columns: repeat(3, 1fr);
} */

.product-category .card-price,
.product-category section.faq h2,
.product-category .testimonials h2,
.product-category .faq-question::before,
.product-category .faq-question .text {
    color: #6A4C93;
}

.product-category .testimonials {
    margin-top: 78px !important;
}


/* Product */
.product-banner {
    height: 450px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.product-container {
    display: flex;
}

.product-content {
    width: calc(100% - 420px);
    margin-top: 40px;
    margin-bottom: 40px;
    margin-right: 20px;
}

/* .product-right {
    width: 400px;
    position: relative;
} */

.product-card {
    display: flex;
    flex-direction: column;
    width: fit-content;
    padding: 20px 16px;
    position: absolute;
    right: 0;
    bottom: -70px;
    border-radius: 15px;
    border: 1px solid #6A4C93;
    box-shadow: 0px 8px 15px 0px #0000000D;
    background: #ffffff;
    z-index: 777;
}

.product-card .card-bottom {
    margin: 0;
}

.product-card.card .choices {
    width: 150px;
}

.product-price-add {
    display: flex;
    align-items: center;
    gap: 20px;
}

.product-card .card-price {
    color: #6A4C93;
    margin: 0;
}

.product-card .rating {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 10px;
}

.rating__stars {
    display: flex;
    align-items: center;
    gap: 9px;
}

.rating__summary {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #666666;
}

.rating__summary span {
    font-family: 'Inter', sans-serif;
}

.product-title {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 36px;
    color: #6B4D92;
    line-height: 1.25;
    padding-right: 42px;
    margin-top: 0;
    margin-bottom: 16px;
}

.product-tabs {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 78px;
    margin-bottom: 47px;
}

.product-tabs a {
    color: #2E2E2E;
    text-decoration: none;
    font-family: 'Nunito';
    font-size: 16px;
    font-weight: 700;
    min-width: fit-content;
}

.place {
    border-top: 1px solid #F4F1F7;
    margin-top: 32px;
    padding-top: 32px;
}

.place h2 {
    font-family: Nunito;
    font-weight: 700;
    font-size: 32px;
    line-height: 100%;
    margin-top: 0;
    margin-bottom: 32px;
    color: #6A4C93;
}

.address {
    display: flex;
    align-items: center;
    margin-bottom: 60px;
    gap: 6px;
}

.place #map {
    border-radius: 32px;
}

.product-reviews {
    background-color: #F0EDF4;
    padding: 32px 0;
}

.review-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: calc(100% - 400px);
}

.review {
    background: #fff;
    border-radius: 16px;
    box-shadow: var(--card-shadow);
    padding: 24px 20px;
}

.review .stars {
    margin-bottom: 20px;
}

.review-author {
    font-weight: 600;
    font-size: 20px;
    font-family: 'Nunito';
    margin-bottom: 16px;
}

.review-text {
    color: var(--text-muted);
    font-size: 16px;
    font-weight: 400;
    margin-bottom: 20px;
}

.review-added {
    color: var(--text-main);
    font-size: 16px;
    font-family: 'Nunito';
    font-weight: 600;
}

.review-list .view-more {
    margin-top: 12px;
}

.review-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: calc(100% - 400px);
    margin-bottom: 28px;
}

.review-header h2 {
    font-family: Nunito;
    font-weight: 700;
    font-size: 32px;
    color: #6A4C93;
}

.add-testimonial {
    display: block;
    background: var(--accent);
    color: #fff;
    border: none;
    border-radius: 56px;
    padding: 18px 16px;
    font-size: 16px;
    font-family: 'Nunito';
    font-weight: 700;
    cursor: pointer;
    transition: background 0.2s;
}

.add-testimonial-form {
    display: block;
    background: #6A4C93;
    color: #fff;
    border: none;
    border-radius: 16px;
    padding: 28px 20px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.2s;
    margin: 20px auto 0;
}

.view-more:hover {
    background: #ff4c3b;
    transform: translateY(-2px);
}

.testimonial-modal {
    display: none;
    position: fixed;
    z-index: 1050;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(60, 30, 80, 0.5);
    justify-content: center;
    align-items: center;
    animation: fadeIn 0.3s ease-out forwards;
}

.testimonial-modal-content {
    background: #fff;
    padding: 20px;
    border-radius: 18px;
    max-width: 500px;
    width: 100%;
    position: relative;
    animation: scaleIn 0.3s ease-out forwards;
}

.testimonial-close {
    position: absolute;
    top: 19px;
    right: 19px;
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
}

.testimonial-modal-title {
    font-size: 20px;
    font-family: 'Nunito';
    font-weight: 700;
    line-height: 44px;
    margin-bottom: 20px;
    color: #6A4C93;
}

@keyframes fadeIn {
    from {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes scaleIn {
    from {
        transform: scale(0.8);
        opacity: 0
    }

    to {
        transform: scale(1);
        opacity: 1
    }
}

#form-errors {
    color: #F44336;
    text-align: center;
}

#form-success {
    font-family: 'Nunito';
    font-weight: 700;
    text-align: center;
    color: #007105;
    font-size: 18px;
    margin-top: 30px;
    margin-bottom: 30px;
}

.rating-stars {
    direction: rtl;
    display: inline-flex;
    justify-content: end;
    gap: 3px;
}

.rating-stars input {
    display: none;
}

.rating-stars label {
    width: 24px;
    height: 24px;
    background: url('data:image/svg+xml;utf8,<svg fill="%23ccc" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 19"><path d="M11.1253 0.749279L13.4629 5.48557L18.6894 6.2454V6.2445C19.1956 6.31798 19.6159 6.67281 19.7745 7.15935C19.9322 7.64589 19.8005 8.17992 19.434 8.53743L15.6519 12.2236L16.5444 17.4285H16.5453C16.6313 17.933 16.4243 18.4428 16.0103 18.743C15.5964 19.0441 15.048 19.0835 14.5946 18.846L9.92003 16.3882L5.24544 18.846C4.79205 19.0835 4.24369 19.0441 3.82972 18.743C3.41575 18.4428 3.20878 17.933 3.2948 17.4285L4.18723 12.2236L0.406093 8.53743C0.0396091 8.17992 -0.0921023 7.64589 0.0655982 7.15935C0.224195 6.67281 0.644422 6.31797 1.15069 6.2445L6.37717 5.48467L8.71481 0.749071C8.9415 0.290307 9.40832 0 9.91996 0C10.4316 0 10.8984 0.290307 11.1251 0.749071L11.1253 0.749279Z"/></svg>') no-repeat center center;
    background-size: contain;
    cursor: pointer;
    transition: background 0.2s;
}

.rating-stars input:checked~label,
.rating-stars label:hover,
.rating-stars label:hover~label {
    background: url('data:image/svg+xml;utf8,<svg fill="%23FF6F61" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 19"><path d="M11.1253 0.749279L13.4629 5.48557L18.6894 6.2454V6.2445C19.1956 6.31798 19.6159 6.67281 19.7745 7.15935C19.9322 7.64589 19.8005 8.17992 19.434 8.53743L15.6519 12.2236L16.5444 17.4285H16.5453C16.6313 17.933 16.4243 18.4428 16.0103 18.743C15.5964 19.0441 15.048 19.0835 14.5946 18.846L9.92003 16.3882L5.24544 18.846C4.79205 19.0835 4.24369 19.0441 3.82972 18.743C3.41575 18.4428 3.20878 17.933 3.2948 17.4285L4.18723 12.2236L0.406093 8.53743C0.0396091 8.17992 -0.0921023 7.64589 0.0655982 7.15935C0.224195 6.67281 0.644422 6.31797 1.15069 6.2445L6.37717 5.48467L8.71481 0.749071C8.9415 0.290307 9.40832 0 9.91996 0C10.4316 0 10.8984 0.290307 11.1251 0.749071L11.1253 0.749279Z"/></svg>') no-repeat center center;
    background-size: contain;
}

/* .gift-box-header .container {
    padding: 32px 15px;
    font-family: Nunito;
    font-weight: 700;
    font-size: 32px;
    color: #6A4C93;
}

.gift-box-img {
    height: 450px;
    background-image: url(../image/gift-box.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    background-color: #6a4c93;
} */

.form-group {
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: #F0EDF4;
    padding: 16px;
    border-radius: 24px;
    margin-bottom: 18px;
}

.form-group label {
    font-family: Lato;
    font-weight: 600;
    font-size: 14px;
    color: #8F8E91;
}

input,
textarea {
    background: transparent;
    border: 0;
    outline: none;
    font-family: Lato;
    font-weight: 600;
    font-size: 20px;
    line-height: 100%;
    color: #452E66;
}

.form-group input {
    height: 24px;
}

.product-tabs a.active {
    border-bottom-color: #6a4c93;
}

.scroll-styled::-webkit-scrollbar-button {
    background-repeat: no-repeat;
    width: 12px;
    height: 0px;
    right: -5px;
    position: relative
}

.scroll-styled::-webkit-scrollbar-track {
    background-color: #fff;
    right: -5px
}

.scroll-styled::-webkit-scrollbar-thumb {
    -webkit-border-radius: 3px;
    border-radius: 3px;
    overflow: hidden;
    background-color: rgba(28, 28, 30, 0.3);
    right: -5px
}

.scroll-styled::-webkit-scrollbar-thumb:hover {
    background-color: #56999f
}

.scroll-styled::-webkit-resizer {
    background-repeat: no-repeat;
    width: 12px;
    height: 0px
}

.scroll-styled::-webkit-scrollbar {
    width: 4px
}



.cart-modal {
    display: none;
    position: fixed;
    z-index: 1050;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(60, 30, 80, 0.5);
    justify-content: center;
    align-items: center;
    animation: fadeIn 0.3s ease-out forwards;
    overflow-x: hidden;
    overflow-y: auto;
}

.cart-modal-content {
    background: #fff;
    padding: 20px;
    border-radius: 18px;
    max-width: 600px;
    width: 100%;
    position: relative;
    animation: scaleIn 0.3s ease-out forwards;
}

.cart-close {
    position: absolute;
    top: 19px;
    right: 19px;
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
}

.cart-modal-title {
    font-size: 28px;
    font-family: 'Nunito';
    font-weight: 700;
    line-height: 44px;
    margin-bottom: 20px;
    color: #6A4C93;
}

.cart-products {
    display: flex;
    flex-direction: column;
    gap: 40px;
    height: auto;
    max-height: 280px;
    overflow-y: auto;
    padding-right: 10px;
}

.cart-product {
    display: flex;
    border: 1px solid #6A4C93;
    border-radius: 24px;
    gap: 12px;
    position: relative;
}

.cart-product-image {
    flex: 0 0 auto;
    height: 200px;
    width: 250px;
    background-position: center;
    background-size: cover;
    border-bottom-left-radius: 24px;
    border-top-left-radius: 24px;
}

.cart-product-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 12px 12px 12px 0;
    width: calc(100% - 262px);
}

.cart-product-name {
    font-family: Nunito;
    font-weight: 600;
    font-size: 20px;
    padding-right: 44px;
    line-height: 26px;
}

.cart-product-price {
    font-family: Lato;
    font-weight: 600;
    font-size: 20px;
    color: #452E66;
}

.cart-product-option {
    background-color: #E7E4EB;
    border-radius: 18px;
    font-family: Lato;
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    padding: 12px;
    text-align: center;
}

.cart-totals {
    font-family: Nunito;
    font-weight: 700;
    font-size: 24px;
    margin: 28px 0;
    text-align: right;
}

.cart-buttons {
    display: flex;
    justify-content: space-between;
}

.cart-continue {
    background-color: #ffffff;
    border: 1px solid #6A4C93;
    font-family: Nunito;
    font-weight: 700;
    font-size: 16px;
    text-align: center;
    color: #6A4C93;
    padding: 18px;
    border-radius: 24px;
    cursor: pointer;
    text-decoration: none;
}

.cart-checkout {
    background-color: #6A4C93;
    border: 1px solid #6A4C93;
    font-family: Nunito;
    font-weight: 700;
    font-size: 16px;
    text-align: center;
    color: #ffffff;
    padding: 18px;
    border-radius: 24px;
    cursor: pointer;
    text-decoration: none;
}

.cart-remove {
    cursor: pointer;
    position: absolute;
    right: 12px;
    top: 12px;
    height: 44px;
    width: 44px;
    border-radius: 18px;
    border: 0;
    background-color: #F0EDF4;
}

.cart-products p {
    font-size: 20px;
    font-family: 'Nunito';
    font-weight: 700;
    line-height: 44px;
    text-align: center;
}

.modal-open {
    overflow: hidden;
}

/* Checkout */
.checkout-header {
    background-color: #EAE6FF;
    border-radius: 12px;
    padding-block: 16px;
    margin-bottom: 32px;
}

.checkout-header__title {
    font-size: 36px;
    line-height: 1.4;
    color: #000;
    margin: 0;
}

/* Cerificate select */
.certificate-select {
    margin-bottom: 92px;
}

.certificate-select__heading {
    font-family: Nunito;
    font-weight: 700;
    font-size: 20px;
    color: #000;
    margin-bottom: 32px;
}

.certificate-select__container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
}

.certificate-select__item {
    position: relative;
    aspect-ratio: 464/449;
    flex: 1 1 auto;
    max-width: 464px;
    max-height: 449px;
    border-radius: 12px;
    border: 1px solid #6A4C93;
    padding: 16px;
    cursor: pointer;
    color: #6A4C93;
    background-color: #fff;
    text-align: center;
    box-shadow: 0px 4px 15px 2px #00000026;
    overflow: hidden;
    transition: background-color 0.3s ease-in-out;
}

.certificate-select__item:hover,
.certificate-select__item.is-active {
    background-color: #E8E4FD;
}

.certificate-select__center {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 220px;
    height: 235px;
    background-image: url("data:image/svg+xml,%3Csvg width='220' height='235' viewBox='0 0 220 235' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.85' fill-rule='evenodd' clip-rule='evenodd' d='M105.695 1.29548C122.1 5.00697 130.985 22.7481 141.972 35.4311C150.059 44.7678 151.197 59.9558 161.892 66.1716C178.903 76.0582 209.596 62.5958 218.664 80.0038C226.828 95.6755 194.997 108.141 192.885 125.669C190.818 142.823 215.787 159.874 207.23 174.904C198.71 189.867 171.352 177.255 157.592 187.656C143.4 198.382 147.031 226.174 130.533 232.875C115.275 239.073 98.1412 226.147 84.1416 217.492C71.8374 209.886 67.6429 193.005 54.9125 186.129C39.6493 177.885 14.7897 188.665 4.70792 174.59C-4.88458 161.198 12.6763 142.778 12.087 126.34C11.5461 111.251 -4.82706 96.5749 1.41807 82.8154C7.94215 68.4413 31.6707 71.4168 42.3174 59.7353C52.9074 48.1162 49.6885 27.8295 61.2506 17.1682C72.9252 6.40316 90.1775 -2.2153 105.695 1.29548Z' fill='%236B4D92'/%3E%3C/svg%3E%0A");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    text-align: center;
}

.certificate-select__text {
    color: #fff;
    font-family: 'Inter', sans-serif;
    font-size: 32px;
}

.certificate-card__title {
    font-family: Nunito, sans-serif;
    font-size: 28px;
    font-weight: 500;
    margin-bottom: 16px;
}

.certificate-select__item--left::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 125px;
    height: 224px;
    background-image: url("data:image/svg+xml,%3Csvg width='125' height='224' viewBox='0 0 125 224' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.85' fill-rule='evenodd' clip-rule='evenodd' d='M-31.4418 -94.1719C-11.9077 -92.1949 2.27966 -69.5236 17.6998 -54.1971C29.0514 -42.9145 33.8295 -22.2757 47.4351 -15.7743C69.0756 -5.4334 100.945 -29.7555 115.264 -7.57629C128.154 12.3907 94.7602 35.5599 96.3735 60.0298C97.9524 83.9778 130.299 102.644 123.999 124.91C117.726 147.076 83.6763 134.96 70.3894 151.858C56.6857 169.286 67.1923 206.756 49.9393 219.096C33.9834 230.508 11.506 216.016 -6.42217 206.795C-22.1792 198.69 -30.8267 176.307 -46.9018 169.287C-66.175 160.869 -92.0162 180.398 -106.725 162.988C-120.721 146.423 -104.943 117.791 -109.383 95.3318C-113.459 74.7149 -135.471 57.6765 -131.513 37.5952C-127.378 16.617 -99.6715 16.1906 -90.2241 -1.87422C-80.827 -19.8427 -89.1441 -47.0869 -78.4203 -63.925C-67.5922 -80.9269 -49.9195 -96.0419 -31.4418 -94.1719Z' fill='%23FF8478'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: 1;
}

.certificate-select__item--left::after {
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    width: 106px;
    height: 195px;
    background-image: url("data:image/svg+xml,%3Csvg width='106' height='195' viewBox='0 0 106 195' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.85' fill-rule='evenodd' clip-rule='evenodd' d='M304.479 125.763C301.849 147.639 279.782 161.654 264.638 177.708C253.491 189.527 233.715 193.1 227.019 207.884C216.369 231.4 238.229 269.52 216.623 283.727C197.173 296.516 176.466 256.777 153.175 256.44C130.381 256.109 111.416 290.976 90.5217 281.9C69.7216 272.865 82.5348 235.497 67.006 219.008C50.9902 202.002 15.0156 210.557 3.96664 189.993C-6.25165 170.976 8.37113 146.881 17.8153 127.457C26.1158 110.386 47.6967 102.599 54.9806 85.0723C63.7137 64.0591 46.1708 33.1668 63.2644 18.0988C79.5285 3.76213 106.1 24.097 127.591 21.0665C147.319 18.2847 164.341 -5.05972 183.252 1.17943C203.006 7.69726 202.344 39.0102 219.128 51.268C235.823 63.4604 262.005 56.4752 277.576 70.0656C293.298 83.7882 306.966 105.07 304.479 125.763Z' fill='%23FF8478'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: 1;
}

.certificate-select__item--right::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 103px;
    height: 207px;
    background-image: url("data:image/svg+xml,%3Csvg width='103' height='207' viewBox='0 0 103 207' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.85' fill-rule='evenodd' clip-rule='evenodd' d='M116.96 -116.714C136.123 -112.44 147.528 -88.2491 161.027 -71.2057C170.963 -58.6592 173.266 -37.6 186.007 -29.5344C206.272 -16.7056 240.795 -37.086 252.389 -13.3683C262.826 7.98371 226.925 27.0388 225.632 51.5277C224.366 75.4944 254.277 97.8563 245.386 119.221C236.535 140.489 204.158 124.429 188.965 139.636C173.295 155.32 179.295 193.771 160.703 203.982C143.508 213.426 122.904 196.377 106.193 185.099C91.5052 175.187 85.5669 151.938 70.4355 143.064C52.2936 132.425 24.3232 148.76 11.7774 129.732C-0.159444 111.627 18.8946 85.0627 17.1436 62.2359C15.5361 41.2816 -4.30526 21.7583 2.001 2.2864C8.58894 -18.0552 36.1513 -15.2003 47.6699 -32.0203C59.127 -48.7507 54.092 -76.7876 66.7328 -92.2385C79.4966 -107.84 98.8336 -120.757 116.96 -116.714Z' fill='%23FF8478'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: 1;
}

.certificate-select__item--right::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 136px;
    height: 176px;
    background-image: url("data:image/svg+xml,%3Csvg width='136' height='176' viewBox='0 0 136 176' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.85' fill-rule='evenodd' clip-rule='evenodd' d='M-2.03978 1.28577C17.1232 5.56018 28.5283 29.7509 42.0267 46.7943C51.9635 59.3408 54.2659 80.4 67.0067 88.4656C87.2716 101.294 121.795 80.914 133.389 104.632C143.826 125.984 107.925 145.039 106.632 169.528C105.366 193.494 135.277 215.856 126.386 237.221C117.535 258.489 85.1579 242.429 69.9649 257.636C54.2954 273.32 60.2945 311.771 41.7026 321.982C24.5085 331.426 3.90375 314.377 -12.8074 303.099C-27.4948 293.187 -33.4331 269.938 -48.5645 261.064C-66.7064 250.425 -94.6768 266.76 -107.223 247.732C-119.159 229.627 -100.105 203.063 -101.856 180.236C-103.464 159.282 -123.305 139.758 -116.999 120.286C-110.411 99.9448 -82.8487 102.8 -71.3301 85.9797C-59.873 69.2493 -64.908 41.2124 -52.2672 25.7615C-39.5034 10.1602 -20.1664 -2.75748 -2.03978 1.28577Z' fill='%23FF8478'/%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    z-index: 1;
}

.certificate-select__content {
    position: relative;
    z-index: 2;
}

.certificate-select__item--right .certificate-card__title {
    margin-bottom: 0;
}

.certificate-select__item--right .certificate-card__img {
    max-width: 220px;
}

.certificate-card__text {
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    color: #595858;
}

.certificate-select__item--left .certificate-card__text {
    margin-top: 16px;
}

.certificate-card__price {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #6B4D92;
    margin-top: 16px;
}

/* h1.checkout {
    font-size: 50px;
    line-height: 65px;
} */

.checkout .panel-heading {
    font-family: Nunito;
    font-weight: 700;
    font-size: 20px;
    margin-bottom: 18px;
    margin-top: 40px;
}

.checkout .filter-group {
    width: 100%;
    margin-bottom: 18px;
}

.checkout .choices__list--single .choices__item {
    color: #452E66;
}

.checkout {
    display: flex;
    gap: 110px;
}

.checkout-left {
    width: calc(50% - 55px);
    flex: 0 0 auto;
}

.checkout-right {
    width: calc(50% - 55px);
    flex: 0 0 auto;
}

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

.checkout-products .cart-product-option {
    background-color: unset;
    border-radius: unset;
    font-family: Lato;
    font-weight: 600;
    font-size: 16px;
    line-height: 100%;
    padding: 0;
    text-align: left;
}

.checkout-products .cart-product-info {
    justify-content: flex-start;
    gap: 12px;
}

.checkout-summary {
    margin-top: 20px;
    padding: 20px;
    border: 1px solid #6A4C93;
    border-radius: 24px;
}

.summary-heading {
    font-family: Nunito;
    font-weight: 700;
    font-size: 20px;
    color: #303030;
    margin-bottom: 16px;
}

.totals {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.totals-row {
    display: flex;
    justify-content: space-between;
    font-family: Nunito;
    font-weight: 600;
    font-size: 16px;
    color: #303030;
}

.totals-row:last-child {
    border-top: 1px solid #6A4C93;
    padding-top: 16px;
    font-weight: 700;
}

.promo {
    margin-top: 18px;
}

.promo .form-group {
    position: relative;
}

.button-coupon {
    cursor: pointer;
    padding: 0;
    border: 0;
    height: 44px;
    width: 44px;
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
}

#promo {
    border: 1px solid #F0EDF4;
}

#promo.has-error {
    border-color: #e31400;
}

.btn-checkout {
    cursor: pointer;
    padding: 20px;
    width: 100%;
    background-color: #6A4C93;
    border-radius: 16px;
    font-family: Lato;
    font-weight: 600;
    font-size: 16px;
    text-align: center;
    color: #ffffff;
}

.checkout .form-group {
    border: 1px solid #F0EDF4;
}

.checkout .form-group.has-error {
    border-color: #e31400;
}

@keyframes slideIn {
    from {
        transform: translateX(-100%);
        opacity: 0;
    }

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

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

    to {
        transform: translateX(-100%);
        opacity: 0;
    }
}

#mobile-nav {
    display: block;
    visibility: hidden;
    position: fixed;
    z-index: 77777;
    top: 92px;
    left: 0;
    width: 100%;
    height: calc(100% - 92px);
    background: #fff;
    transform: translateX(-100%);
    border-top: 1px solid #f8f3ff;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s, transform 0.3s, visibility 0s 0.3s;
}

#mobile-nav.mobile-visible {
    visibility: visible;
    opacity: 1;
    animation: slideIn 0.3s forwards;
    pointer-events: auto;
    overflow-y: auto;
    transition: opacity 0.3s, transform 0.3s, visibility 0s;
}

#mobile-nav.mobile-hidden {
    animation: slideOut 0.3s forwards;
    pointer-events: none;
}

#mobile-nav .nav {
    display: block;
}

#mobile-nav .nav>ul {
    display: flex;
    flex-direction: column;
    padding-bottom: 10px;
}

#mobile-nav .nav ul.submenu {
    display: flex;
    flex-direction: column;
    position: unset;
    box-shadow: none;
    background-color: #f8f3ff;
    overflow: hidden;
    height: 0;
    transition: height 0.4s ease;
    box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
}



input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border: 2px solid #ccc;
    border-radius: 50%;
    outline: none;
    cursor: pointer;
    position: relative;
    vertical-align: middle;
    margin: 0;
    margin-right: 5px;
}

input[type="radio"]:checked {
    border-color: #6A4C93;
}

input[type="radio"]:checked::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    background-color: #6A4C93;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

input[type="radio"]:focus {
    box-shadow: 0 0 0 2px rgba(106, 76, 147, 0.3);
}

.radio label {
    display: flex;
    align-items: center;
}

#common-success #content {
    margin: 70px 0 50px;
}

#common-success #content p {
    font-family: Nunito;
    font-weight: 700;
    font-size: 18px;
    color: #303030;
}

.product-card.card.sticky {
    position: sticky;
    top: 10px;
    z-index: 999;
}


.articles-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-bottom: 32px;
}

.article-card {
    background: var(--card-bg);
    border-radius: var(--card-radius);
    box-shadow: var(--card-shadow);
    display: flex;
    flex-direction: column;
    position: relative;
    transition: box-shadow 0.2s;
}

.article-img {
    height: 264px;
}

.article-img img {
    width: 100%;
    height: 264px;
    object-fit: cover;
    border-radius: var(--card-radius) var(--card-radius) 0 0;
}

.article-content {
    border: 1px solid #6A4C93;
    border-radius: 0 0 var(--card-radius) var(--card-radius);
    padding-bottom: 42px;
    height: 100%;
}

.article-title {
    display: -webkit-box !important;
    font-family: 'Nunito';
    font-size: 20px;
    font-weight: 600;
    margin: 12px;
    line-height: 27px;
    height: 54px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: #2E2E2E;
    text-decoration: none;
}

.article-description {
    display: -webkit-box !important;
    font-family: 'Nunito';
    font-size: 14px;
    font-weight: 600;
    margin: 0 12px;
}

.article-header .container a {
    display: flex;
    gap: 16px;
    align-items: center;
    color: #303030;
    text-decoration: none;
}

.article-date {
    font-family: Lato;
    font-weight: 600;
    font-size: 20px;
    margin-bottom: 25px;
}

.article-page {
    display: flex;
    gap: 15px;
}

.article-page-img {
    width: 468px;
    flex: 0 0 auto;
}

.article-page-img img {
    width: 100%;
    height: auto;
    border-radius: 22px;
}

.article-page-text p,
li,
span {
    font-family: Nunito;
    font-weight: 600;
    font-size: 16px;
}

.article-page-text p {
    margin-bottom: 32px;
}

.information {
    margin-top: 60px;
}

.information p,
li,
span {
    font-family: Nunito;
    font-weight: 600;
    font-size: 16px;
}


.why-choose-item {
    border-radius: 16px;
    box-shadow: var(--card-shadow);
    padding: 24px 20px;
    margin: 0 6px;
    height: auto !important;
}

.why-choose-item.color-1 {
    background-color: #ffedd5;
}

.why-choose-item.color-2 {
    background-color: #fce7f3;
}

.why-choose-item.color-3 {
    background-color: #f3f4f6;
}

.why-choose-item.color-4 {
    background-color: #e0e7ff;
}

.why-choose-item.color-5 {
    background-color: #ccfbf1;
}

.why-choose-item.color-6 {
    background-color: #cffafe;
}

.why-choose-item.color-7 {
    background-color: #dcfce7;
}

.why-choose-item-title {
    display: flex;
    gap: 12px;
    align-items: center;
    font-family: 'Nunito';
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
}

.why-choose-item-title-icon {
    display: flex;
    align-items: center;
    background-color: #fff;
    padding: 10px;
    border-radius: 44px;
}

.why-choose-item-text p,
.why-choose-item-text li,
.why-choose-item-text span {
    font-weight: 400;
    color: #4c4c4c;
}

.why-choose-item-text ul {
    padding-left: 25px;
}





li.menu-items a.dots {
    padding: 0;
    background: #F0EDF4;
    border: none;
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
}

li.menu-items ul.submenu {
    left: -10px;
}

#mobile-nav .nav li.menu-items ul.submenu {
    height: fit-content !important;
    border: 0;
    background-color: #fff;
    box-shadow: unset;
}

.product-heading {
    color: #434343;
    font-family: Inter, sans-serif;
    font-weight: 500;
    font-size: 32px;
    margin-top: 0;
    margin-bottom: 64px;
}

/* Product hero */
.product-hero__inner {
    position: relative;
}

.product-hero__slide img {
    width: 100%;
    border-radius: 22px;
    display: block;
}

.product-hero__slider .swiper-button-next,
.product-hero__slider .swiper-button-prev {
    width: 50px;
    height: 50px;
    transition: background-color 0.3s linear;
}

.product-hero__slider .swiper-button-next::after,
.product-hero__slider .swiper-button-prev::after {
    content: '';
    width: 17px;
    height: 26px;
    background-color: #fff;
    transition: background-color 0.3s linear;
    mask-repeat: no-repeat;
    mask-position: center;
}

.product-hero__slider .swiper-button-next::after {
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='26' viewBox='0 0 17 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.895813 22.5625L10.4375 13L0.895813 3.4375L3.83331 0.5L16.3333 13L3.83331 25.5L0.895813 22.5625Z' fill='white'/%3E%3C/svg%3E");
}

.product-hero__slider .swiper-button-prev::after {
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='26' viewBox='0 0 17 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.1042 22.5625L6.56249 13L16.1042 3.4375L13.1667 0.5L0.666656 13L13.1667 25.5L16.1042 22.5625Z' fill='white'/%3E%3C/svg%3E");
}

.product-hero__slider .swiper-button-next {
    right: 30px;
}

.product-hero__slider .swiper-button-prev {
    left: 30px;
}

.product-hero__slider .swiper-button-next:hover::after,
.product-hero__slider .swiper-button-prev:hover::after {
    background-color: var(--accent);
}

.product-hero__btn {
    position: absolute;
    bottom: 67px;
    left: 122px;
    border: none;
    border-radius: 6px;
    font-family: 'Inter', sans-serif;
    font-size: 24px;
    font-weight: 600;
    color: #6B4D92;
    background-color: #FFFFFF99;
    backdrop-filter: blur(10px);
    padding: 28px;
    z-index: 1;
}

/* Product summary */
.product-summary {
    display: flex;
    flex-direction: column;
    width: fit-content;
    padding: 16px 24px 24px 24px;
    position: absolute;
    right: 0;
    bottom: -90px;
    border-radius: 6px;
    box-shadow: 0px 4px 12px 2px #00000040;
    background: #ffffff;
    z-index: 777;
}

.product-summary__title {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 36px;
    color: #6B4D92;
    line-height: 1.25;
    padding-right: 42px;
    margin-top: 0;
    margin-bottom: 16px;
}

.product-summary__rating {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 10px;
}

.rating__stars {
    display: flex;
    align-items: center;
    gap: 9px;
}

.rating__star {
    font-size: 0;
}

.rating__summary {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 16px;
    color: #666666;
}

.rating__summary span {
    font-family: 'Inter', sans-serif;
}

.product-summary__features {
    display: flex;
    align-items: center;
    gap: 72px;
    border-bottom: 1px solid #E8E4FF;
    padding-bottom: 20px;
    margin-bottom: 8px;
}

.product-summary__feature--persons::before,
.product-summary__feature--time::before,
.product-summary__feature::after {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.product-summary__feature--persons::before {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_47_607)'%3E%3Cpath d='M12 5.9C13.16 5.9 14.1 6.84 14.1 8C14.1 9.16 13.16 10.1 12 10.1C10.84 10.1 9.9 9.16 9.9 8C9.9 6.84 10.84 5.9 12 5.9ZM12 14.9C14.97 14.9 18.1 16.36 18.1 17V18.1H5.9V17C5.9 16.36 9.03 14.9 12 14.9ZM12 4C9.79 4 8 5.79 8 8C8 10.21 9.79 12 12 12C14.21 12 16 10.21 16 8C16 5.79 14.21 4 12 4ZM12 13C9.33 13 4 14.34 4 17V20H20V17C20 14.34 14.67 13 12 13Z' fill='%23434343'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_47_607'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
}

.product-summary__feature--time::before {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11.99 2C6.47 2 2 6.48 2 12C2 17.52 6.47 22 11.99 22C17.52 22 22 17.52 22 12C22 6.48 17.52 2 11.99 2ZM12 20C7.58 20 4 16.42 4 12C4 7.58 7.58 4 12 4C16.42 4 20 7.58 20 12C20 16.42 16.42 20 12 20Z' fill='%23434343'/%3E%3Cpath d='M12.5 7H11V13L16.25 16.15L17 14.92L12.5 12.25V7Z' fill='%23434343'/%3E%3C/svg%3E%0A");
}

.product-summary__feature::after {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.11997 9.29L12 13.17L15.88 9.29C16.27 8.9 16.9 8.9 17.29 9.29C17.68 9.68 17.68 10.31 17.29 10.7L12.7 15.29C12.31 15.68 11.68 15.68 11.29 15.29L6.69997 10.7C6.30997 10.31 6.30997 9.68 6.69997 9.29C7.08997 8.91 7.72997 8.9 8.11997 9.29Z' fill='%23323232'/%3E%3C/svg%3E%0A");
}

.product-summary__feature {
    position: relative;
    display: flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
}

.product-summary__feature>span {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #434343;
}

.feature-popup {
    position: absolute;
    top: 100%;
    left: 0;
    flex-direction: column;
    width: 210px;
    height: 164px;
    background: #F7F6FF;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    padding: 6px 16px 10px 16px;
    margin-top: 8px;
    z-index: 50;
    display: none;
}

.feature-popup__title {
    font-size: 10px;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    color: #000;
    margin-bottom: 8px;
    text-align: center;
    min-height: 24px;
}

.feature-popup__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.product-summary__feature--time .feature-popup__item {
    flex-direction: column;
    flex: 1 1 auto;
    margin-bottom: 16px;
}

.feature-popup__info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.product-summary__feature--time .feature-popup__info {
    align-items: center;
}

.feature-popup__label {
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 18px;
    color: #000;
}

.feature-popup__meta {
    font-family: 'Inter', sans-serif;
    font-size: 10px;
    color: #000;
    flex: 1 1 auto;
}

.feature-popup__controls {
    display: flex;
    align-items: center;
    gap: 4px;
}

.feature-popup__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: 1px solid var(--accent);
    border-radius: 50%;
    color: var(--accent);
    background: transparent;
    font-size: 12px;
    line-height: 1;
    cursor: pointer;
    transition: border-color 0.3s, color 0.3s;
}

.feature-popup__value {
    font-family: 'Inter', sans-serif;
    color: #000;
    font-size: 16px;
    font-weight: 500;
    min-width: 20px;
    text-align: center;
}

.feature-popup__btn.is-disabled {
    border-color: #939292;
    color: #939292;
    cursor: not-allowed;
}

.feature-popup__apply {
    width: 100%;
    background: var(--accent);
    color: #000;
    border: none;
    border-radius: 4px;
    padding: 5px 10px;
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    cursor: pointer;
}

.product-summary__feature.active .feature-popup {
    display: flex;
}

.product-summary__stat,
.product-summary__stat span {
    font-family: 'Inter', sans-serif;
    font-weight: 500;
    font-size: 16px;
    color: #666666;
    margin-bottom: 18px;
}

.product-summary__amount {
    font-family: 'Inter', sans-serif;
    font-size: 32px;
    font-weight: 600;
    color: #434343;
    margin-bottom: 4px;
}

.product-summary__unit {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #666666;
}

.product-summary__button {
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    border-radius: 6px;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 600;
    color: #fff;
    background-color: var(--accent);
    padding: 8px 20px;
    margin-top: 24px;
    cursor: pointer;
}

.product-summary .wishlist-add {
    background: transparent;
}

/* Product nav */
.product-nav {
    padding-bottom: 32px;
}

.product-nav__list {
    display: flex;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
    border-bottom: 1px solid #E8E4FF;
    padding-block: 44px;
}

.product-nav__link {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 600;
    color: #6B4D92;
    text-decoration: none;
}

/* Product description */
.product-description {
    position: relative;
    padding-block-end: 46px;
}

.product-description::after {
    content: '';
    position: absolute;
    top: 160px;
    right: 60px;
    width: 627px;
    height: 758px;
    background-image: url("data:image/svg+xml,%3Csvg width='626' height='758' viewBox='0 0 626 758' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.4' fill-rule='evenodd' clip-rule='evenodd' d='M331.118 34.2032C375.408 12.2586 428.771 -13.4241 473.657 8.43004C519.319 30.6623 528.93 98.3264 556.888 144.127C579.991 181.974 622.715 211.306 625.166 256.631C627.779 304.959 588.85 342.332 569.948 385.657C557.199 414.88 542.827 442.06 531.251 471.889C519.164 503.039 509.634 534.188 499.836 566.337C482.429 623.459 493.133 699.364 450.546 736.722C414.18 768.622 349.928 761.845 311.907 731.19C268.458 696.16 292.73 598.81 245.189 571.152C191.552 539.948 109.171 637.581 67.3716 588.925C29.8619 545.263 128.097 478.896 115.745 420.476C102.431 357.506 8.82875 339.495 1.09703 275.478C-5.5443 220.489 38.5948 166.188 81.7174 138.736C126.151 110.449 186.238 147.174 234.246 127.053C274.733 110.083 291.628 53.7699 331.118 34.2032Z' fill='%23EAE6FF'/%3E%3C/svg%3E%0A");
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}

.description-content {
    max-width: 946px;
    padding-block-start: 32px;
    padding-inline-start: 100px;
}

.description-content h2 {
    font-family: 'Inter', sans-serif;
    font-size: 24px;
    font-weight: 600;
    color: #6B4D92;
    margin-top: 0;
    margin-bottom: 32px;
}

.description-content p {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 500;
    color: #434343;
    margin-bottom: 16px;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 42px;
    padding-bottom: 32px;
}

.features-grid__item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.features-grid__title {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #434343;
}

/* Ride location */
.ride-location {
    padding-block: 46px;
}

.ride-location__hero {
    position: relative;
    margin-block-end: 32px;
}

.ride-location__hero-img {
    border-radius: 12px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ride-location__hero-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: none;
    border-radius: 12px;
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 600;
    color: #434343;
    background-color: #FFFFFF99;
    backdrop-filter: blur(10px);
    padding: 34px 25px;
}

.ride-location__tabs {
    display: flex;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap;
    margin-block-end: 92px;
}

.ride-location__tab {
    display: flex;
    align-items: center;
    border: 1px solid #6B4D92;
    background-color: transparent;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #6B4D92;
    cursor: pointer;
    padding: 24px 34px;
    border-radius: 12px;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.ride-location__tab:hover,
.ride-location__item.active .ride-location__tab {
    background-color: #6B4D92;
    color: #fff;
}

.ride-location__item {
    position: relative;
    display: inline-block;
}

.ride-location__cities {
    position: absolute;
    top: 100%;
    left: 0;
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 500;
    background: #fff;
    border: 1px solid #6B4D92;
    border-radius: 12px;
    padding-block: 8px;
    margin-top: 8px;
    display: none;
    min-width: 180px;
    z-index: 10;
}

.ride-location__item.active .ride-location__cities {
    display: block;
}

.ride-location__cities li {
    color: #434343;
    padding-block: 8px;
    padding-inline: 34px;
    cursor: pointer;
    transition: background-color 0.3s ease, color 0.3s ease;
}

.ride-location__cities li:hover,
.ride-location__cities li.active {
    background-color: #6B4D92;
    color: #fff;
}

.ride-location__address+.ride-location__address {
    margin-block-start: 16px;
}

.ride-address__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: transparent;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: var(--accent);
    border: 1px solid var(--accent);
    border-radius: 12px;
    padding: 14px 24px;
    cursor: pointer;
    width: 50%;
}

.ride-address--active .ride-address__header {
    background-color: #6B4D92;
    border: 1px solid #6B4D92;
    color: #fff;
}

.ride-address__content {
    display: flex;
    border-radius: 12px;
    margin-block-start: 16px;
    overflow: hidden;
    transition: max-height 0.3s ease;
}

.ride-address__info {
    width: 50%;
    background-color: #EAE6FF;
    padding: 16px;
}

.ride-address__image {
    width: 50%;
}

.ride-address__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ride-address__status {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Inter', sans-serif;
    font-size: 14px;
    font-weight: 500;
    color: #6B4D92;
    background-color: #FFFFFFCC;
    backdrop-filter: blur(30px);
    border-radius: 12px;
    padding: 8px 12px;
    margin-bottom: 18px;
    width: fit-content;
}

.ride-address__details {
    font-family: 'Inter', sans-serif;
    font-size: 18px;
    font-weight: 500;
    color: #33294A;
    margin-left: 130px;
}

.ride-address__item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ride-address__item+.ride-address__item {
    margin-block-start: 18px;
}

.ride-address__item--label::before,
.ride-address__item--address::before,
.ride-address__item--time::before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.ride-address__item--label::before {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_317_1604)'%3E%3Cpath d='M17 3H7C5.9 3 5.01 3.9 5.01 5L5 21L12 18L19 21V5C19 3.9 18.1 3 17 3ZM17 18L12 15.82L7 18V5H17V18Z' fill='%23FF6F61'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_317_1604'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

.ride-address__item--address::before {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_317_1602)'%3E%3Cpath d='M12 2C8.13 2 5 5.13 5 9C5 14.25 12 22 12 22C12 22 19 14.25 19 9C19 5.13 15.87 2 12 2ZM12 11.5C10.62 11.5 9.5 10.38 9.5 9C9.5 7.62 10.62 6.5 12 6.5C13.38 6.5 14.5 7.62 14.5 9C14.5 10.38 13.38 11.5 12 11.5Z' fill='%23FF6F61'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_317_1602'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

.ride-address__item--time::before {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_317_1603)'%3E%3Cpath d='M20 3H19V1H17V3H7V1H5V3H4C2.9 3 2 3.9 2 5V21C2 22.1 2.9 23 4 23H20C21.1 23 22 22.1 22 21V5C22 3.9 21.1 3 20 3ZM20 21H4V8H20V21Z' fill='%23FF6F61'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_317_1603'%3E%3Crect width='24' height='24' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

.ride-address__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background-color: #6B4D92;
    padding: 10px 58px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    margin-top: 35px;
    margin-left: 130px;
}

/* How it works */
.how-it-works {
    padding-block: 46px;
}

.how-it-works .product-heading {
    text-align: center;
}

.how-it-works__steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px
}

.how-it-works__step {
    position: relative;
    background-color: #F7F6FF;
    border-radius: 12px;
    padding: 16px 35px;
    min-height: 355px;
    overflow: hidden;
    z-index: 1;
}

.how-it-works__step-num {
    display: flex;
    justify-content: center;
    align-items: center;
    width: fit-content;
    border-radius: 12px;
    color: #6B4D92;
    font-family: 'Iner', sans-serif;
    font-size: 14px;
    font-weight: 500;
    padding: 7px 17px;
    margin: 0 auto 64px;
}

.how-it-works__step-text {
    color: #6B4D92;
    font-family: 'Iner', sans-serif;
    font-size: 18px;
    font-weight: 500;
}

.how-it-works__step:nth-child(1)::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 275px;
    height: 153px;
    background-image: url("data:image/svg+xml,%3Csvg width='275' height='153' viewBox='0 0 275 153' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.7' fill-rule='evenodd' clip-rule='evenodd' d='M97.2362 361.253C64.5202 370.292 25.6991 370.778 -2.38536 351.683C-30.3552 332.667 -43.9316 296.377 -47.6899 262.718C-50.973 233.314 -16.7059 208.653 -21.6131 179.477C-27.9343 141.894 -88.7439 118.905 -78.0288 82.3381C-68.4591 49.6798 -14.0391 64.0805 16.5416 49.267C43.4324 36.2409 60.5188 -2.62683 90.1852 0.854025C121.018 4.47171 127.18 51.9501 155.112 65.5259C185.547 80.3185 229.395 56.8382 253.756 80.3553C276.776 102.577 279.945 144.411 267.299 173.824C254.407 203.81 208.883 203.991 189.361 230.132C173.869 250.875 184.932 282.859 170.047 304.044C151.985 329.752 127.484 352.896 97.2362 361.253Z' fill='%23FF6F61'/%3E%3C/svg%3E ");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: -1;
}

.how-it-works__step:nth-child(1) .how-it-works__step-num {
    background-color: var(--accent);
    opacity: 0.7;
}

.how-it-works__step:nth-child(2) {
    background-color: #6B4D92;
}

.how-it-works__step:nth-child(2) .how-it-works__step-num {
    background-color: #fff;
}

.how-it-works__step:nth-child(2) .how-it-works__step-text {
    color: #fff;
}

.how-it-works__step:nth-child(3)::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 255px;
    height: 173px;
    background-image: url("data:image/svg+xml,%3Csvg width='255' height='173' viewBox='0 0 255 173' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M152.426 5.27374C183.018 26.2206 154.291 80.8436 173.399 112.626C188.725 138.115 232.859 134.836 246.283 161.378C259.827 188.157 254.514 222.192 242.792 249.829C231.17 277.228 203.771 292.836 181.945 313.063C158.317 334.961 140.966 370.346 108.957 373.862C76.8055 377.393 53.2789 344.277 24.0652 330.404C-2.84929 317.623 -42.9442 321.851 -56.4791 295.298C-70.7417 267.317 -42.9344 235.379 -40.3303 204.071C-38.4396 181.341 -42.4559 159.672 -43.3021 136.88C-44.7152 98.819 -73.7815 51.6997 -46.9926 24.6262C-21.7133 -0.921546 22.7685 37.4399 58.5261 33.9699C91.6627 30.7541 124.959 -13.5334 152.426 5.27374Z' fill='%23EAE6FF'/%3E%3C/svg%3E ");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: -1;
}

.how-it-works__step:nth-child(3) .how-it-works__step-num {
    background-color: #EAE6FF;
}

.how-it-works__step:nth-child(4)::after {
    content: '';
    position: absolute;
    right: 0;
    bottom: 0;
    width: 225px;
    height: 170px;
    background-image: url("data:image/svg+xml,%3Csvg width='225' height='170' viewBox='0 0 225 170' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.7' fill-rule='evenodd' clip-rule='evenodd' d='M0.64838 172.544C-1.52458 146.649 33.6088 131.119 37.5753 105.442C41.2072 81.9308 10.2794 58.0537 21.568 37.1209C32.3169 17.1888 62.7642 19.7837 85.2392 17.0573C103.258 14.8714 120.4 24.8753 138.448 22.9421C163.143 20.2969 188.712 -10.3754 209.133 3.78634C229.359 17.8125 209.848 52.0869 215.143 76.129C219.062 93.9241 241.191 108.21 235.975 125.662C230.489 144.014 198.549 141.637 190.384 158.961C179.16 182.779 201.769 217.104 183.811 236.351C168.285 252.992 139.428 239.373 116.714 237.921C93.1467 236.415 68.4147 239.253 47.8311 227.659C26.4001 215.587 2.70568 197.06 0.64838 172.544Z' fill='%236B4D92'/%3E%3C/svg%3E ");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: -1;
}

.how-it-works__step:nth-child(4) .how-it-works__step-num {
    background-color: #6B4D92;
    color: #fff;
}

/* Our advantages */
.our-advantages {
    padding-block: 46px;
}

.our-advantages .product-heading {
    text-align: center;
}

.our-advantages__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.our-advantages__item {
    box-sizing: border-box;
    background-color: #F7F6FF;
    border-radius: 12px;
    font-family: Inter, sans-serif;
    padding: 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 290px;
    box-shadow: 0px 4px 12px 0px #00000040;
    transition: background-color 0.3s ease-in-out;
}

.our-advantages__item:hover {
    background-color: #EAE6FF;
}

.our-advantages__item-icon {
    width: 70px;
    height: 70px;
    margin-bottom: 20px;
}

.our-advantages__item-title {
    color: #6B4D92;
    font-size: 20px;
    font-weight: 700;
    margin-top: 0;
    margin-bottom: 8px;
}

.our-advantages__item-text {
    color: #434343;
    font-size: 16px;
    max-width: 464px;
    text-align: center;
}

/* Gift box */
.gift-box {
    padding-block: 46px;
}

.gift-box .product-heading {
    text-align: center;
}

.gift-box__slide img {
    width: 100%;
    border-radius: 12px;
    display: block;
}

.gift-box__slider .swiper-button-next,
.gift-box__slider .swiper-button-prev {
    width: 60px;
    height: 60px;
    background-color: #fff;
    border-radius: 50%;
    transition: background-color 0.3s linear;
}

.gift-box__slider .swiper-button-next::after,
.gift-box__slider .swiper-button-prev::after {
    content: '';
    width: 17px;
    height: 26px;
    background-color: var(--accent);
    transition: background-color 0.3s linear;
    mask-repeat: no-repeat;
    mask-position: center;
}

.gift-box__slider .swiper-button-next::after {
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='26' viewBox='0 0 17 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.895813 22.5625L10.4375 13L0.895813 3.4375L3.83331 0.5L16.3333 13L3.83331 25.5L0.895813 22.5625Z' fill='white'/%3E%3C/svg%3E");
}

.gift-box__slider .swiper-button-prev::after {
    mask-image: url("data:image/svg+xml,%3Csvg width='17' height='26' viewBox='0 0 17 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.1042 22.5625L6.56249 13L16.1042 3.4375L13.1667 0.5L0.666656 13L13.1667 25.5L16.1042 22.5625Z' fill='white'/%3E%3C/svg%3E");
}

.gift-box__slider .swiper-button-next {
    right: 45px;
}

.gift-box__slider .swiper-button-prev {
    left: 45px;
}

.gift-box__slider .swiper-button-next:hover,
.gift-box__slider .swiper-button-prev:hover {
    background-color: #C8A1FF;
}

.gift-box__slider .swiper-button-next:hover::after,
.gift-box__slider .swiper-button-prev:hover::after {
    background-color: #fff;
}

/* Related products */
.related-products {
    padding-block: 46px;
}

.related-products .product-heading {
    margin-bottom: 32px;
}

.related-products .cards-grid {
    margin-bottom: 0;
}

.related-products .card {
    border-radius: 12px;
    box-shadow: none;
}

.related-products .card-img {
    aspect-ratio: 342/227;
    height: auto;
    overflow: hidden;
    border-radius: 12px 12px 0 0;
}

.related-products .card-img img {
    display: block;
    height: 100%;
    border-radius: 12px 12px 0 0;
}

.related-products .card-content {
    background-color: #F7F6FF;
    border: none;
    padding: 16px 12px 24px 12px;
    border-radius: 0 0 12px 12px;
}

.related-products .card-title {
    display: block !important;
    color: #434343;
    font-family: Nunito;
    font-weight: 500;
    font-size: 22px;
    line-height: 1;
    margin: 0 0 12px;
    height: auto;
    min-height: 56px;
}

.related-products .card-price {
    margin: 0 0 12px;
}

.related-products .card-add {
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.2;
    border-radius: 6px;
    height: auto;
    padding: 10px 16px;
}

.download-more {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    color: var(--accent);
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 600;
    padding: 13px 24px;
    border-radius: 12px;
    border: 1px solid var(--accent);
    cursor: pointer;
    margin: 42px auto 0;
    transition: background-color 0.3s linear, color 0.3s linear;
}

.download-more:hover {
    background-color: var(--accent);
    color: #fff;
}

@media (max-width: 1456px) {
    .nav ul li a {
        padding: 10px 15px;
    }

    .header-left {
        gap: 20px;
    }
}

@media (max-width: 1347px) {
    .search-wrap {
        display: none;
    }
}

@media (min-width: 1201px) {
    .nav ul li:hover>a .chevron svg {
        transform: rotate(180deg);
        transition: transform 0.2s;
    }

    .header-icon-btn:hover {
        background: #dadada;
    }
}

@media (max-width: 1200px) {

    .nav,
    .activate-btn {
        display: none;
    }

    .mobile-menu {
        display: flex;
    }

    /* .container,
    main section {
        width: calc(100% - 30px);
        margin: 0 !important;
        padding: 0 15px;
    } */

    .testimonials h2 {
        margin: 20px auto 32px;
        width: calc(100% - 30px);
    }

    body {
        padding-top: 96px;
    }

    .header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 9999;
    }

    .header .container {
        max-width: 100%;
    }

    .nav ul li.open a .chevron svg {
        transform: rotate(180deg);
        transition: transform 0.2s;
    }

    .product-card.card.sticky {
        top: 102px;
    }

    .nav ul li {
        display: block;
    }

    li.menu-items a.dots {
        display: none;
    }

    li.menu-items ul.submenu {
        left: -10px;
    }
}

@media (max-width: 1139px) {
    .footer-main {
        width: calc(100% - 30px);
    }
}

@media (max-width: 1100px) {
    .checkout .cart-product-image {
        height: 200px;
        width: 150px;
    }

    .cart-product-info {
        width: calc(100% - 165px);
    }
}

@media (max-width: 998px) {

    .cards-grid,
    .product-category .cards-grid,
    .articles-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 22px;
    }

    .product-container {
        flex-direction: column-reverse;
    }

    .product-content,
    .product-right,
    .review-header,
    .review-list {
        width: 100%;
    }

    /* .gift-box-img {
        height: 295px;
    } */

    /* .product-card {
        position: relative;
        top: -40px;
    } */

    .product-content {
        margin-top: 0;
    }

    .product-tabs {
        margin-bottom: 25px;
        overflow-x: auto;
        padding-bottom: 0;
        gap: 0;
        justify-content: space-between;
        position: fixed;
        top: 92px;
        background-color: #fff;
        left: 0;
        z-index: 7777;
        box-shadow: 0px 8px 15px 0px #0000001C;
    }

    .product-tabs a {
        flex: 0 0 auto;
        width: 120px;
        padding: 20px 0;
        text-align: center;
        border-bottom: 3px solid transparent;
    }

    .product-tabs a:hover {
        border-bottom: 3px solid #6A4C93;
    }

}

@media (max-width: 900px) {
    .footer-main {
        flex-direction: column;
        align-items: center;
        gap: 18px;
        padding: 24px 10px 18px 10px;
    }

    .footer-contact {
        min-width: 1px;
    }

    .footer-phone {
        justify-content: center;
    }

    .footer-payments {
        margin-top: 25px;
    }

    .footer-links {
        align-items: center;
        margin-top: 15px;
    }

    .footer-logo-block {
        align-items: center;
    }

    section h2 {
        font-size: 32px;
        font-family: Nunito;
        font-weight: 700;
        margin: 32px 0 16px 0;
    }

    .page-header h1 {
        font-size: 32px;
        line-height: 38px;
    }

    /*.filters-container {
    display: none;
  }*/
    .hero-text {
        font-size: 32px;
    }

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

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

    .checkout-left,
    .checkout-right {
        width: 100%;
    }

    .article-page {
        flex-direction: column-reverse;
        gap: 30px;
    }

    .how-it-works__steps {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}

@media (max-width: 768px) {
    .product-heading {
        font-size: 24px;
        margin-bottom: 32px;
    }

    .product-hero__btn {
        display: none;
    }

    .product-summary {
        position: static;
        margin-top: 16px;
        width: 100%;
    }

    .features-grid {
        grid-template-columns: repeat(2, 1fr);
        padding-bottom: 16px;
    }

    .description-content {
        padding-block-start: 16px;
        padding-inline-start: 0;
    }

    .description-content h2 {
        margin-bottom: 16px;
    }

    .description-content p {
        font-size: 18px;
        margin-bottom: 16px;
    }

    .product-description {
        padding-block-end: 32px;
    }

    .ride-location,
    .how-it-works,
    .gift-box,
    .related-products {
        padding-block: 32px;
    }

    .ride-location__hero-btn {
        font-size: 18px;
        padding: 16px;
    }

    .ride-location__tabs {
        gap: 16px;
        margin-block-end: 32px;
    }

    .ride-location__tab {
        font-size: 16px;
        padding: 12px 16px;
    }

    .ride-address__details,
    .ride-address__btn {
        margin-left: 0;
    }

    .related-products .product-heading {
        text-align: center;
    }

    .related-products .card-title {
        min-height: auto;
    }

    .footer {
        margin-top: 32px;
    }

    .inner-container {
        padding: 0;
    }

    .checkout-header {
        padding-inline: 16px;
        margin-bottom: 24px;
    }

    .checkout-header__title {
        font-size: 26px;
    }

    .certificate-select__heading {
        margin-bottom: 16px;
    }

    .certificate-select__container {
        flex-direction: column;
    }

    .certificate-select__item {
        aspect-ratio: auto;
    }

    .certificate-card__title {
        font-size: 20px;
        font-weight: 700;
        margin-bottom: 8px;
    }

    .certificate-card__img {
        max-width: 200px;
    }

    .certificate-select__item--left .certificate-card__text {
        margin-top: 10px;
    }

    .certificate-card__price {
        font-size: 18px;
        margin-top: 8px;
    }

    .certificate-select__center {
        max-width: 100px;
        max-height: 100px;
    }

    .certificate-select__text {
        font-size: 26px;
    }
}

@media (max-width: 720px) {
    .hero-text {
        margin-top: 30px;
        width: 100%;
    }

    .main-banner {
        align-items: flex-start;
        min-height: 250px;
    }

    .hero-img {
        right: 0px;
        top: 60px;
    }

    .our-advantages__items {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .our-advantages__item {
        min-height: auto;
    }
}

@media (max-width: 540px) {
    body {
        padding-top: 74px;
    }

    .cards-grid,
    .product-category .cards-grid,
    .articles-grid {
        grid-template-columns: repeat(1, 1fr);
    }

    .hero-img {
        right: 10px;
        top: 115px;
    }

    .hero-img img {
        width: 230px;
        height: auto;
    }

    .header-icon-btn {
        height: 44px;
        width: 44px;
    }

    .header {
        padding: 15px 0;
    }

    .review-header {
        flex-direction: column;
    }

    .product-tabs {
        top: 74px;
        padding-bottom: 6px;
    }

    .cart-product {
        flex-direction: column;
    }

    .checkout .cart-product-image {
        width: 100%;
        height: 120px;
        border-bottom-left-radius: 0;
        border-top-right-radius: 24px;
    }

    .cart-product-info {
        width: calc(100% - 24px);
        padding: 12px;
        gap: 8px;
    }

    #mobile-nav {
        top: 74px;
        height: calc(100% - 74px);
    }

    .how-it-works__steps {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 528px) {
    .article-page-img {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .product-hero__slider .swiper-button-prev {
        left: 0;
    }

    .product-hero__slider .swiper-button-next {
        right: 0;
    }

    .product-summary__title {
        font-size: 24px;
    }

    .rating__stars {
        gap: 3px;
    }

    .product-summary__feature,
    .product-summary__feature span {
        font-size: 16px;
    }

    .product-nav__list {
        gap: 16px;
        padding-block: 24px;
    }

    .product-nav {
        padding-bottom: 24px;
    }

    .features-grid {
        gap: 24px;
    }

    .features-grid__title {
        font-size: 14px;

    }

    .description-content h2 {
        font-size: 20px;
    }

    .description-content p {
        font-size: 16px;
        font-weight: 400;
    }

    .product-description {
        padding-block-end: 24px;
    }

    .ride-location,
    .how-it-works,
    .gift-box,
    .related-products {
        padding-block: 24px;
    }

    .ride-location__hero-btn {
        font-size: 16px;
        padding: 8px 16px;
        white-space: nowrap;
    }

    .ride-location__hero {
        margin-block-end: 24px;
    }

    .ride-location__tabs {
        gap: 12px;
        margin-block-end: 24px;
    }

    .ride-location__tab {
        font-size: 14px;
        padding: 10px 12px;
    }

    .ride-address__header {
        padding: 12px 16px;
        width: 100%;
    }

    .ride-location__address+.ride-location__address {
        margin-block-start: 8px;
    }

    .ride-address__content {
        flex-direction: column;
    }

    .ride-address__info {
        width: 100%;
    }

    .ride-address__image {
        width: 100%;
    }

    .ride-address__item+.ride-address__item {
        margin-block-start: 16px;
    }

    .ride-address__btn {
        width: 100%;
        margin-top: 24px;
    }

    .gift-box__slider .swiper-button-prev {
        left: 16px;
    }

    .gift-box__slider .swiper-button-next {
        right: 16px;
    }

    .download-more {
        margin: 32px auto 0;
    }
}

@media (max-width: 340px) {

    .cart-continue,
    .cart-checkout {
        padding: 10px;
    }
}


.ocf-container,
.ocf-filter-list {
    width: 100%;
}

.ocf-angle {
    background-image: url(../image/choices.svg) !important;
}

.ocf-angle-down {
    transform: unset !important;
}

.ocf-open .ocf-angle-down {
    transform: rotate(180deg) !important;
}

@media (min-width: 768px) {
    .ocf-theme-light.ocf-horizontal .ocf-filter {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 0 !important;
        width: 100%;
        padding: 0;
    }

    .ocf-theme-light .ocf-dropdown .ocf-filter-header:hover {
        background-color: unset !important;
    }

    .ocf-filter-body {
        display: flex;
        align-items: center;
        width: 100%;
        height: 78px;
        border-radius: 24px;
    }

    .ocf-theme-light .ocf-dropdown .ocf-filter-body>.ocf-value-list {
        background-color: #fff;
        box-shadow: 0 0 15px rgba(0 0 0 / 15%);
        border-radius: 24px;
    }

    .ocf-horizontal .ocf-dropdown .ocf-filter-body>.ocf-value-list {
        min-width: calc(100% - 30px) !important;
        bottom: unset;
        top: 100px;
        right: 0;
        left: 0;
        padding: 20px 15px;
        border-radius: 24px !important;
        border: 1px solid #6a4c93;
    }

    .ocf-theme-light.ocf-horizontal .ocf-dropdown .ocf-filter-header {
        width: 100%;
        height: 61px;
        border-radius: 24px;
        border: 1px solid #F0EDF4;
    }

    .ocf-theme-light .ocf-dropdown.ocf-open .ocf-filter-header {
        background-color: #fff;
        border: 1px solid #6a4c93;
    }

    .ocf-theme-light .ocf-dropdown.ocf-open .ocf-filter-header {
        background-color: #fff !important;
    }

    .ocf-dropdown.ocf-slider .ocf-active-label+.ocf-filter-name {
        text-transform: none;
        font-family: Lato;
        font-weight: 600;
        font-size: 20px;
    }

    .ocf-active-label:empty+.ocf-filter-name,
    .ocf-open .ocf-active-label+.ocf-filter-name {
        text-transform: none !important;
        font-family: Lato !important;
        font-weight: 600 !important;
        font-size: 20px !important;
    }

    .ocf-theme-light .ocf-filter-header .ocf-active-label span,
    .ocf-theme-light .ocf-filter-header .ocf-active-label {
        text-transform: none;
        font-family: Lato;
        font-weight: 600 !important;
        font-size: 20px;
    }

    .ocf-dropdown .ocf-active-label+.ocf-filter-name {
        display: block !important;
        text-transform: none !important;
        font-size: 14px;
        color: var(--text-muted);
        font-weight: 500;
        padding: 16px 16px 4px;
        cursor: pointer;
    }

    .ocf-filter-and-label .ocf-filter-name {
        text-transform: none !important;
        font-family: Lato !important;
        font-weight: 600 !important;
        font-size: 20px !important;
        color: #000;
    }


    .ocf-slider .ocf-filter-and-label .ocf-filter-name {
        text-transform: none !important;
        font-size: 14px !important;
        color: var(--text-muted);
        font-weight: 500 !important;
    }

    .ocf-slider.ocf-open .ocf-filter-and-label .ocf-filter-name,
    .ocf-dropdown.ocf-active.ocf-open .ocf-filter-name {
        text-transform: none !important;
        font-family: Lato !important;
        font-weight: 600 !important;
        font-size: 20px !important;
        color: #000;
    }

    .ocf-dropdown.ocf-active .ocf-filter-name {
        display: block !important;
        text-transform: none !important;
        font-size: 14px !important;
        color: var(--text-muted);
        font-weight: 500 !important;
    }

    .ocf-theme-light .ocf-active.ocf-dropdown .ocf-filter-header {
        background-color: #f0edf4 !important;
    }

    .ocf-input-group .ocf-form-control {
        width: 37px !important;
    }

    .ocf-theme-light .ocf-search-btn-static,
    .ocf-theme-light .ocf-search-btn-popover,
    .ocf-theme-light .ocf-search-btn-static.ocf-disabled,
    .ocf-theme-light .ocf-search-btn-popover.ocf-disabled {
        background-color: #6a4c93 !important;
        color: #fff;
    }

    .ocf-theme-light .ocf-search-btn-static:hover,
    .ocf-theme-light .ocf-search-btn-popover:hover {
        background-color: #573680 !important;
    }
}

@media (max-width: 767px) {
    .ocf-container {
        width: 100% !important;
    }

    .ocf-open .ocf-filter-header {
        padding: 0 20px !important;
    }

    .ocf-angle-right {
        transform: rotate(270deg) !important;
    }

    .hide-mob {
        display: none;
    }

    .ocf-footer {
        padding: 10px 20px 510px 20px !important;
        width: calc(100% - 40px) !important;
    }

    .ocf-theme-light .ocf-search-btn-static,
    .ocf-theme-light .ocf-search-btn-popover,
    .ocf-theme-light .ocf-search-btn-static.ocf-disabled,
    .ocf-theme-light .ocf-search-btn-popover.ocf-disabled {
        background-color: #6a4c93 !important;
    }

    .ocf-filter-body>.ocf-value-list {
        width: calc(100% - 40px) !important;
    }

    .ocf-btn-mobile-fixed .ocf-btn {
        background-color: #452e66 !important;
    }

    .ocf-input-group .ocf-form-control {
        width: 85% !important;
    }
}