/* ---------------------------------------------------------
    * Reset css styles
    * Components
        * header
        * footer
        * tabs
        * slider banner
        * button
        * range slider
        * form
        * nice select
        * carousel
        * avatar
        * pop up
        * box icon
        * hover
        * collection
        * product
        * blog
        * testimonial
        * lookbook
        * accordion
    * Responsive
 ------------------------------------------------------------------------------ */
/*--------- Abstracts variable ---------- */
@import url(bootstrap-select.min.css);
:root {
    --main: #000000;
    --White: #ffffff;
    --Onsurface: #181818;
    --Primary: #cba839;
    --Secondary: #4D4E4F;
    --Secondary2: #A0A0A0;
    --Surface: #F6F6F6;
    --line: #E9E9E9;
    --Critical: #F03E3E;
    --Success: #3DAB25;
    --Yellow: #F0A750;
    --pink: #EC749D;
    --backdrop: rgba(24, 24, 24, 0.2) ;
}

/* ------------------------------------------------------------------
   Genesis 2026 Facelift
   Premium botanical wellness layer inspired by the new v0 design.
------------------------------------------------------------------- */
:root {
    --main: #2d2d2d;
    --White: #ffffff;
    --Onsurface: #2d2d2d;
    --Primary: #b8796f;
    --Secondary: #6b6a62;
    --Secondary2: #8d887c;
    --Surface: #efe9df;
    --line: #e6ded1;
    --genesis-bg: #faf7f2;
    --genesis-card: #ffffff;
    --genesis-sage: #b8796f;
    --genesis-sage-soft: #e4b7aa;
    --genesis-gold: #c7a86d;
    --genesis-sand: #efe9df;
    --genesis-blush: #ead9d2;
    --genesis-deep: #3a332e;
    --genesis-deep-text: #f3ece2;
    --genesis-shadow: 0 24px 60px -34px rgba(58, 51, 46, 0.45);
}

html {
    background: var(--genesis-bg);
}

body {
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    color: var(--main);
    background: var(--genesis-bg);
    letter-spacing: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.text-display,
.heading-section h1,
.heading-section h2,
.heading-section h3,
.page-title .title,
.footer-heading {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
    color: var(--main);
}

p,
li,
a,
button,
input,
textarea,
select,
.text-body-1,
.text-body-default,
.text-caption-1 {
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
}

a,
.link {
    color: inherit;
}

a:hover,
.link:hover,
.text_primary {
    color: var(--genesis-gold) !important;
}

.bg_white {
    background: var(--genesis-bg) !important;
}

.text_secondary {
    color: var(--Secondary) !important;
}

.flat-spacing,
.flat-spacing-2,
.flat-spacing-3,
.flat-spacing-4 {
    background: var(--genesis-bg);
}

.heading-section {
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
}

.heading-section h1,
.heading-section h2,
.heading-section h3 {
    font-weight: 600;
    line-height: 1.12;
}

.heading-section p {
    color: var(--Secondary);
    line-height: 1.75;
}

.tf-topbar {
    display: none;
}

header.header-default {
    position: sticky;
    top: 0;
    z-index: 1000;
    border-bottom: 1px solid rgba(230, 222, 209, 0.86);
    background: rgba(250, 247, 242, 0.9);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 12px 35px -34px rgba(45, 45, 45, 0.6);
}

.header-default .main-header {
    background: transparent;
    min-height: 82px;
}

.header-default .wrapper-header {
    min-height: 82px;
}

.header-default .logo-header img {
    max-height: 76px;
    width: auto;
    object-fit: contain;
}

.header-default .box-nav-ul {
    gap: 8px;
}

.header-default .box-nav-ul .item-link {
    color: rgba(45, 45, 45, 0.78);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    padding: 14px 12px;
    transition: color 0.25s ease, background-color 0.25s ease;
}

.header-default .box-nav-ul .item-link:hover,
.header-default .box-nav-ul .menu-item:hover > .item-link {
    color: var(--genesis-sage) !important;
}

.header-default .box-nav-ul .item-link::before {
    background: var(--genesis-gold) !important;
}

.sub-menu,
.submenu-default,
.mega-menu {
    border: 1px solid rgba(230, 222, 209, 0.9);
    border-radius: 14px;
    background: rgba(250, 247, 242, 0.98) !important;
    box-shadow: 0 24px 60px -34px rgba(58, 51, 46, 0.5);
    overflow: hidden;
}

.submenu-default .menu-list li:not(:last-child) {
    border-bottom: 1px solid rgba(230, 222, 209, 0.65);
}

.submenu-default .menu-list a,
.sub-menu .menu-link-text {
    color: rgba(45, 45, 45, 0.78);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    padding: 12px 18px;
}

.submenu-default .menu-list a:hover,
.sub-menu .menu-link-text:hover {
    color: var(--genesis-sage) !important;
    background: rgba(239, 233, 223, 0.74);
}

.mobile-menu svg,
.mobile-menu svg path {
    fill: var(--genesis-sage) !important;
}

.tf-btn,
button,
input[type="submit"] {
    border-radius: 999px;
}

.tf-btn {
    min-height: 48px;
    padding: 13px 26px;
    border: 1px solid transparent;
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.02em;
    box-shadow: none;
    transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.tf-btn:hover {
    transform: translateY(-2px);
}

.tf-btn.btn-primary,
.tf-btn.btn-onsurface,
.tf-btn:not(.btn-border):not(.btn-white) {
    color: var(--genesis-bg) !important;
    background: var(--genesis-sage) !important;
}

.tf-btn.btn-primary:hover,
.tf-btn.btn-onsurface:hover,
.tf-btn:not(.btn-border):not(.btn-white):hover {
    color: #2d2d2d !important;
    background: var(--genesis-gold) !important;
}

.tf-btn.btn-border {
    color: var(--genesis-sage) !important;
    border-color: rgba(94, 107, 99, 0.35);
    background: transparent;
}

.tf-btn.btn-border:hover {
    color: var(--genesis-bg) !important;
    border-color: var(--genesis-sage);
    background: var(--genesis-sage);
}

.page-title {
    min-height: 320px;
    background: var(--genesis-sand);
}

.page-title .paralaximg::after,
.page-title::after {
    background: linear-gradient(90deg, rgba(58, 51, 46, 0.64), rgba(58, 51, 46, 0.18));
}

.page-title .content {
    color: var(--genesis-bg);
}

.page-title .title {
    color: var(--genesis-bg);
    font-size: clamp(42px, 5vw, 68px);
    font-weight: 600;
    line-height: 1.05;
}

.breadcrumb li,
.breadcrumb li a {
    color: rgba(250, 247, 242, 0.8);
}

.breadcrumb li a:hover {
    color: var(--genesis-gold) !important;
}

.tf-slideshow.style-4 .wrap-slider {
    background: var(--genesis-deep);
}

.tf-slideshow .content-left {
    background: linear-gradient(90deg, rgba(58, 51, 46, 0.93), rgba(58, 51, 46, 0.78));
}

.tf-slideshow .text-display {
    color: var(--genesis-bg);
    font-size: clamp(44px, 5.6vw, 82px);
    font-weight: 600;
    line-height: 1.04;
}

.tf-slideshow .text-body-1 {
    color: rgba(250, 247, 242, 0.84);
    max-width: 560px;
}

.collection-position,
.product-card,
.blog-item,
.wg-testimonial {
    border: 1px solid rgba(230, 222, 209, 0.86);
    border-radius: 18px;
    background: var(--genesis-card);
    box-shadow: 0 18px 50px -42px rgba(58, 51, 46, 0.44);
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
    overflow: hidden;
}

.collection-position:hover,
.product-card:hover,
.blog-item:hover,
.wg-testimonial:hover {
    border-color: rgba(199, 168, 109, 0.5);
    box-shadow: var(--genesis-shadow);
    transform: translateY(-5px);
}

.collection-position .img-style,
.products-grid .product-card .img-style {
    border-radius: 0 !important;
    background: rgba(239, 233, 223, 0.72) !important;
}

.collection-position .img-style img,
.products-grid .product-card .img-style img {
    transition: transform 0.8s ease;
}

.collection-position:hover .img-style img,
.products-grid .product-card:hover .img-style img {
    transform: scale(1.045);
}

.collection-position .content,
.products-grid .product-card .content {
    padding: 22px 18px 24px;
    background: #fff;
}

.collection-position .content h4,
.products-grid .product-card h5,
.products-grid .product-card h5 a {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    color: var(--main);
    font-weight: 600;
    line-height: 1.2;
}

.collection-position .content h6 {
    margin-top: 7px;
    color: var(--Secondary);
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.45;
}

.products-grid .product-card .img-style {
    aspect-ratio: 4 / 3 !important;
    border-radius: 18px 18px 0 0 !important;
}

.products-grid .product-card .cls-content {
    min-height: 72px;
}

.wrapper-control-shop {
    margin-top: 14px;
}

footer.footer {
    background: var(--genesis-deep);
    color: var(--genesis-deep-text);
}

footer .footer-body {
    border-color: rgba(243, 236, 226, 0.16);
}

footer .footer-heading {
    color: rgba(243, 236, 226, 0.82) !important;
    font-size: 18px;
    font-weight: 600;
}

footer .footer-menu .footer-menu_item,
footer p,
footer .text-body-default {
    color: rgba(243, 236, 226, 0.72) !important;
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
}

footer .footer-menu .footer-menu_item:hover,
footer a:hover {
    color: var(--genesis-gold) !important;
}

footer .tf-social-icon a {
    border-color: rgba(243, 236, 226, 0.26);
    color: rgba(243, 236, 226, 0.78);
    background: transparent;
}

footer .tf-social-icon a:hover {
    border-color: var(--genesis-gold);
    color: var(--genesis-gold) !important;
    background: transparent;
}

footer .footer-bottom {
    background: rgba(31, 27, 24, 0.95);
    border-top: 1px solid rgba(243, 236, 226, 0.12);
}

#scroll-top {
    background: var(--genesis-sage);
    box-shadow: 0 12px 30px -18px rgba(58, 51, 46, 0.7);
}

#scroll-top:hover {
    background: var(--genesis-gold);
}

input,
textarea,
select,
.form-control {
    border-color: var(--line) !important;
    border-radius: 12px;
    background: #fff;
}

input:focus,
textarea:focus,
select:focus,
.form-control:focus {
    border-color: var(--genesis-sage) !important;
    box-shadow: 0 0 0 4px rgba(94, 107, 99, 0.12);
}

@media (max-width: 1199px) {
    .header-default .main-header,
    .header-default .wrapper-header {
        min-height: 72px;
    }

    .header-default .logo-header img {
        max-height: 68px;
    }
}

@media (max-width: 767px) {
    .page-title {
        min-height: 250px;
    }

    .page-title .title {
        font-size: 38px;
    }

    .tf-slideshow .text-display {
        font-size: 42px;
    }

    .flat-spacing,
    .flat-spacing-2 {
        padding-top: 64px;
        padding-bottom: 64px;
    }
}

/* ------------------------------------------------------------------
   Genesis Phase 3 final override: logo + product category polish
------------------------------------------------------------------- */
.header-default .logo-header {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}

.header-default .logo-header .genesis-logo-new {
    width: auto !important;
    max-width: 172px !important;
    height: 68px !important;
    max-height: none !important;
    object-fit: contain;
}

footer .footer-logo-new {
    display: block;
    width: min(260px, 86vw);
    height: auto;
    max-height: 190px;
    object-fit: contain;
    margin: 0 auto 24px;
}

.product-category-facelift .page-title {
    min-height: 360px;
}

.product-category-facelift .page-title .paralaximg {
    opacity: 0.9;
}

.product-category-facelift .page-title .content {
    padding-top: 48px;
    padding-bottom: 48px;
}

.product-category-facelift .heading-section {
    max-width: 900px;
}

.product-category-facelift .heading-section h1 {
    font-size: clamp(40px, 4.7vw, 64px);
}

.product-category-facelift .heading-section p {
    max-width: 760px;
    margin-right: auto;
    margin-left: auto;
}

.category-trust-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 24px;
}

.category-trust-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 9px 15px;
    border: 1px solid rgba(199, 168, 109, 0.34);
    border-radius: 999px;
    color: var(--genesis-sage);
    background: rgba(255, 255, 255, 0.72);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.product-category-facelift .wrapper-control-shop {
    margin-top: 22px;
}

.product-category-facelift .products-grid {
    row-gap: 24px;
}

.product-category-facelift .products-grid .product-card {
    position: relative;
    border-radius: 20px;
    background: #fff;
}

.product-category-facelift .products-grid .product-card::after {
    content: "";
    position: absolute;
    right: 18px;
    bottom: 18px;
    width: 34px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(199, 168, 109, 0.72));
    opacity: 0;
    transition: opacity 0.28s ease;
}

.product-category-facelift .products-grid .product-card:hover::after {
    opacity: 1;
}

.product-category-facelift .products-grid .product-card .img-style {
    aspect-ratio: 4 / 3 !important;
    border-radius: 20px 20px 0 0 !important;
    background: linear-gradient(135deg, #f8f3ec, #efe4d5) !important;
}

.product-category-facelift .products-grid .product-card .content {
    min-height: 92px;
    padding: 24px 20px 28px;
}

.product-category-facelift .products-grid .product-card h5 {
    margin: 0;
}

.product-category-facelift .products-grid .product-card h5 a {
    font-size: 25px;
}

.product-category-facelift .products-grid .product-card h5 a:hover {
    color: var(--genesis-sage) !important;
}

@media (max-width: 1199px) {
    .header-default .logo-header .genesis-logo-new {
        height: 62px !important;
        max-width: 150px !important;
    }
}

@media (max-width: 767px) {
    .header-default .logo-header .genesis-logo-new {
        height: 56px !important;
        max-width: 132px !important;
    }

    footer .footer-logo-new {
        max-height: 160px;
    }

    .product-category-facelift .page-title {
        min-height: 280px;
    }

    .category-trust-tags {
        gap: 8px;
    }

    .category-trust-tags span {
        min-height: 34px;
        padding: 8px 12px;
        font-size: 11px;
    }
}

/* ------------------------------------------------------------------
   Genesis Phase 3: logo + product category polish
------------------------------------------------------------------- */
.header-default .logo-header {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.header-default .logo-header .genesis-logo-new {
    width: auto;
    max-width: 172px;
    height: 86px;
    max-height: none;
    object-fit: contain;
}

footer .footer-logo-new {
    display: block;
    width: min(260px, 86vw);
    height: auto;
    max-height: 190px;
    object-fit: contain;
    margin: 0 auto 24px;
}

.product-category-facelift .page-title {
    min-height: 360px;
}

.product-category-facelift .page-title .paralaximg {
    opacity: 0.9;
}

.product-category-facelift .page-title .content {
    padding-top: 48px;
    padding-bottom: 48px;
}

.product-category-facelift .heading-section {
    max-width: 900px;
}

.product-category-facelift .heading-section h1 {
    font-size: clamp(40px, 4.7vw, 64px);
}

.product-category-facelift .heading-section p {
    max-width: 760px;
    margin-right: auto;
    margin-left: auto;
}

.category-trust-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 24px;
}

.category-trust-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 9px 15px;
    border: 1px solid rgba(199, 168, 109, 0.34);
    border-radius: 999px;
    color: var(--genesis-sage);
    background: rgba(255, 255, 255, 0.72);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.product-category-facelift .wrapper-control-shop {
    margin-top: 22px;
}

.product-category-facelift .products-grid {
    row-gap: 24px;
}

.product-category-facelift .products-grid .product-card {
    position: relative;
    border-radius: 20px;
    background: #fff;
}

.product-category-facelift .products-grid .product-card::after {
    content: "";
    position: absolute;
    right: 18px;
    bottom: 18px;
    width: 34px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(199, 168, 109, 0.72));
    opacity: 0;
    transition: opacity 0.28s ease;
}

.product-category-facelift .products-grid .product-card:hover::after {
    opacity: 1;
}

.product-category-facelift .products-grid .product-card .img-style {
    aspect-ratio: 4 / 3 !important;
    border-radius: 20px 20px 0 0 !important;
    background: linear-gradient(135deg, #f8f3ec, #efe4d5) !important;
}

.product-category-facelift .products-grid .product-card .content {
    min-height: 92px;
    padding: 24px 20px 28px;
}

.product-category-facelift .products-grid .product-card h5 {
    margin: 0;
}

.product-category-facelift .products-grid .product-card h5 a {
    font-size: 25px;
}

.product-category-facelift .products-grid .product-card h5 a:hover {
    color: var(--genesis-sage) !important;
}

@media (max-width: 1199px) {
    .header-default .logo-header .genesis-logo-new {
        height: 74px;
        max-width: 150px;
    }
}

@media (max-width: 767px) {
    .header-default .logo-header .genesis-logo-new {
        height: 64px;
        max-width: 132px;
    }

    footer .footer-logo-new {
        max-height: 160px;
    }

    .product-category-facelift .page-title {
        min-height: 280px;
    }

    .category-trust-tags {
        gap: 8px;
    }

    .category-trust-tags span {
        min-height: 34px;
        padding: 8px 12px;
        font-size: 11px;
    }
}

/* ------------------------------------------------------------------
   Genesis homepage facelift
------------------------------------------------------------------- */
.home-facelift {
    overflow: hidden;
    background: var(--genesis-bg);
}

.home-hero {
    position: relative;
    min-height: calc(100vh - 82px);
    display: flex;
    align-items: center;
    overflow: hidden;
    color: var(--genesis-bg);
}

.home-hero__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.home-hero__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(45, 45, 45, 0.72), rgba(45, 45, 45, 0.42) 46%, rgba(45, 45, 45, 0.06));
}

.home-hero .container {
    position: relative;
    z-index: 2;
}

.home-hero__content {
    max-width: 740px;
    padding: 90px 0 110px;
}

.home-eyebrow,
.home-kicker {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    color: var(--genesis-gold);
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.22em;
    line-height: 1.4;
    text-transform: uppercase;
}

.home-eyebrow {
    padding: 8px 16px;
    border: 1px solid rgba(250, 247, 242, 0.32);
    border-radius: 999px;
    color: var(--genesis-bg);
    background: rgba(250, 247, 242, 0.12);
    backdrop-filter: blur(12px);
}

.home-hero h1,
.home-section-heading h2,
.home-split__content h2,
.home-founders h2,
.home-final-cta h2 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-weight: 600;
    letter-spacing: 0;
}

.home-hero h1 {
    margin-top: 26px;
    color: var(--genesis-bg);
    font-size: clamp(48px, 6.4vw, 86px);
    line-height: 1.03;
}

.home-hero h1 span {
    color: #e6cf9c;
}

.home-hero p {
    max-width: 610px;
    margin-top: 28px;
    color: rgba(250, 247, 242, 0.86);
    font-size: 18px;
    line-height: 1.75;
}

.home-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.home-actions--center {
    justify-content: center;
}

.home-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 14px 28px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.home-btn:hover {
    transform: translateY(-2px);
}

.home-btn--gold {
    color: #2d2d2d;
    background: var(--genesis-gold);
}

.home-btn--gold:hover {
    color: var(--genesis-bg) !important;
    background: var(--genesis-sage);
}

.home-btn--ghost {
    color: var(--genesis-bg);
    border-color: rgba(250, 247, 242, 0.45);
    background: rgba(250, 247, 242, 0.08);
}

.home-btn--ghost:hover {
    color: var(--genesis-bg) !important;
    border-color: rgba(250, 247, 242, 0.82);
    background: rgba(250, 247, 242, 0.16);
}

.home-btn--outline-light {
    color: var(--genesis-deep-text);
    border-color: rgba(243, 236, 226, 0.42);
    background: transparent;
}

.home-btn--outline-light:hover {
    color: var(--genesis-deep) !important;
    border-color: var(--genesis-deep-text);
    background: var(--genesis-deep-text);
}

.home-section {
    padding: 96px 0;
}

.home-section--sand {
    background: rgba(239, 233, 223, 0.78);
}

.home-section--deep {
    color: var(--genesis-deep-text);
    background: var(--genesis-deep);
}

.home-section-heading {
    max-width: 820px;
    margin: 0 auto 52px;
}

.home-section-heading h2,
.home-split__content h2,
.home-founders h2,
.home-final-cta h2 {
    margin-top: 16px;
    color: var(--main);
    font-size: clamp(36px, 4vw, 56px);
    line-height: 1.12;
}

.home-section-heading p,
.home-split__content > p,
.home-founders p,
.home-final-cta p {
    margin-top: 20px;
    color: var(--Secondary);
    font-size: 17px;
    line-height: 1.75;
}

.home-worlds {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.home-world-card,
.home-pillar-card,
.home-mini-card {
    display: block;
    overflow: hidden;
    height: 100%;
    border: 1px solid rgba(230, 222, 209, 0.88);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 50px -42px rgba(58, 51, 46, 0.48);
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.home-world-card:hover,
.home-pillar-card:hover,
.home-mini-card:hover {
    border-color: rgba(199, 168, 109, 0.58);
    box-shadow: var(--genesis-shadow);
    transform: translateY(-6px);
}

.home-world-card img {
    width: 100%;
    height: 230px;
    object-fit: cover;
    background: var(--genesis-sand);
}

.home-world-card div,
.home-pillar-card div {
    padding: 26px;
}

.home-world-card span,
.home-mini-card span {
    display: block;
    color: var(--genesis-gold);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.home-world-card h3,
.home-pillar-card h3,
.home-feature-list h3,
.home-mini-card h3 {
    color: var(--main);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-weight: 600;
    line-height: 1.18;
}

.home-world-card h3 {
    margin-top: 10px;
    font-size: 28px;
}

.home-world-card p,
.home-pillar-card p,
.home-feature-list p,
.home-mini-card p {
    margin-top: 10px;
    color: var(--Secondary);
    font-size: 15px;
    line-height: 1.65;
}

.home-pillar-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px;
}

.home-pillar-card img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    transition: transform 0.9s ease;
}

.home-pillar-card:hover img {
    transform: scale(1.045);
}

.home-pillar-card h3 {
    font-size: 25px;
}

.home-split {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 70px;
    align-items: center;
}

.home-split__media {
    overflow: hidden;
    border-radius: 22px;
    box-shadow: var(--genesis-shadow);
}

.home-split__media img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
}

.home-feature-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 34px;
}

.home-feature-list div {
    min-height: 100%;
    padding: 22px;
    border: 1px solid rgba(230, 222, 209, 0.86);
    border-radius: 16px;
    background: #fff;
}

.home-feature-list h3 {
    font-size: 20px;
}

.home-founders {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.85fr);
    gap: 60px;
    align-items: center;
}

.home-section--deep .home-kicker,
.home-founders .home-kicker {
    color: #e6cf9c;
}

.home-founders h2 {
    color: var(--genesis-deep-text);
}

.home-founders p {
    max-width: 720px;
    color: rgba(243, 236, 226, 0.78);
}

.home-founder-photo {
    position: relative;
}

.home-founder-photo img {
    width: 100%;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border-radius: 22px;
}

.home-founder-badge {
    position: absolute;
    right: 24px;
    bottom: 24px;
    min-width: 160px;
    padding: 18px 20px;
    border: 1px solid rgba(230, 222, 209, 0.84);
    border-radius: 16px;
    background: rgba(250, 247, 242, 0.94);
    box-shadow: 0 18px 50px -32px rgba(0, 0, 0, 0.5);
}

.home-founder-badge strong {
    display: block;
    color: var(--genesis-sage);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: 30px;
    line-height: 1;
}

.home-founder-badge span {
    display: block;
    margin-top: 6px;
    color: var(--Secondary);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1.35;
    text-transform: uppercase;
}

.home-education-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.home-mini-card {
    padding: 30px;
}

.home-mini-card h3 {
    margin-top: 18px;
    font-size: 24px;
}

.home-final-cta {
    padding: 100px 0;
    color: var(--genesis-deep-text);
    background: linear-gradient(rgba(58, 51, 46, 0.72), rgba(58, 51, 46, 0.9)), url("../images/facelift/hero-botanical.png") center / cover no-repeat;
}

.home-final-cta__inner {
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
}

.home-final-cta h2 {
    color: var(--genesis-deep-text);
}

.home-final-cta p {
    color: rgba(243, 236, 226, 0.78);
}

@media (max-width: 1199px) {
    .home-worlds,
    .home-pillar-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-split,
    .home-founders {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .home-hero {
        min-height: 78vh;
    }

    .home-hero__overlay {
        background: linear-gradient(90deg, rgba(45, 45, 45, 0.78), rgba(45, 45, 45, 0.45));
    }

    .home-hero__content {
        padding: 76px 0 92px;
    }

    .home-hero h1 {
        font-size: 44px;
    }

    .home-hero p,
    .home-section-heading p,
    .home-split__content > p,
    .home-founders p,
    .home-final-cta p {
        font-size: 16px;
    }

    .home-actions,
    .home-actions--center {
        align-items: stretch;
        flex-direction: column;
    }

    .home-btn {
        width: 100%;
    }

    .home-section {
        padding: 70px 0;
    }

    .home-worlds,
    .home-pillar-grid,
    .home-feature-list,
    .home-education-grid {
        grid-template-columns: 1fr;
    }

    .home-world-card img {
        height: 210px;
    }

    .home-founder-badge {
        right: 14px;
        bottom: 14px;
    }

    .home-final-cta {
        padding: 76px 0;
    }
}

/*---------- Reset css styles ----------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    font-family: inherit;
    font-size: 100%;
    font-style: inherit;
    font-weight: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

/* Elements
-------------------------------------------------------------- */
html {
    margin-right: 0 !important;
    scroll-behavior: smooth;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Marcellus", sans-serif;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    color: var(--main);
    background-color: var(--White);
}

img {
    max-width: 100%;
    height: auto;
    transform: scale(1);
    vertical-align: middle;
    -ms-interpolation-mode: bicubic;
}

.row {
    margin-right: -15px;
    margin-left: -15px;
}
.row > * {
    padding-left: 15px;
    padding-right: 15px;
}

ul,
li {
    list-style-type: none;
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
}

.container {
    max-width: 1320px;
}

.container-2 {
    max-width: 1870px;
}

.container,
.container-2 {
    width: 100%;
    margin: auto;
}

.container,
.container-2 {
    padding-left: 15px;
    padding-right: 15px;
}

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

textarea,
input[type=text],
input[type=password],
input[type=datetime],
input[type=datetime-local],
input[type=date],
input[type=month],
input[type=time],
input[type=week],
input[type=number],
input[type=email],
input[type=url],
input[type=search],
input[type=tel],
input[type=color] {
    font-family: "Marcellus", sans-serif;
    border: 2px solid var(--line);
    outline: 0;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    font-size: 16px;
    line-height: 26px;
    padding: 11px 16px;
    width: 100%;
    background: var(--White);
    color: var(--Secondary);
    font-weight: 400;
    border-radius: 8px;
}
textarea:focus,
input[type=text]:focus,
input[type=password]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=time]:focus,
input[type=week]:focus,
input[type=number]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=color]:focus {
    border-color: var(--line);
}

textarea::placeholder,
input[type=text]::placeholder,
input[type=password]::placeholder,
input[type=datetime]::placeholder,
input[type=datetime-local]::placeholder,
input[type=date]::placeholder,
input[type=month]::placeholder,
input[type=time]::placeholder,
input[type=week]::placeholder,
input[type=number]::placeholder,
input[type=email]::placeholder,
input[type=url]::placeholder,
input[type=search]::placeholder,
input[type=tel]::placeholder,
input[type=color]::placeholder {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

textarea {
    height: 112px;
    resize: none;
}

/* Placeholder color */
::-webkit-input-placeholder {
    color: var(--Secondary);
}

:-moz-placeholder {
    color: var(--Secondary);
}

::-moz-placeholder {
    color: var(--Secondary);
    opacity: 1;
}

button {
    background-color: transparent;
    border: 0;
    outline: none;
}

/* Since FF19 lowers the opacity of the placeholder by default */
:-ms-input-placeholder {
    color: var(--Secondary);
}

/* Typography
-------------------------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Marcellus", sans-serif;
    text-rendering: optimizeLegibility;
    color: var(--main);
    font-weight: 400;
}

h1 {
    font-size: 56px;
    line-height: 68px;
}

h2 {
    font-size: 44px;
    line-height: 50px;
}

h3 {
    font-size: 40px;
    line-height: 48px;
}

h4,
.h4 {
    font-size: 30px;
    line-height: 42px;
}

h5 {
    font-size: 24px;
    line-height: 30px;
}

h6 {
    font-size: 20px;
    line-height: 28px;
}

.text-display {
    font-size: 60px;
    font-weight: 400;
    line-height: 88px;
}

.text-body-1 {
    font-size: 16px;
    font-weight: 400;
    line-height: 28px;
}

.text-body-default {
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
}

.text-title {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
}

.text-button {
    font-size: 16px;
    font-weight: 400;
    line-height: 26px;
}

.text-button-small {
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
}

.text-caption-1 {
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
}

.text-caption-2 {
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
}

.font-main {
    font-family: "Marcellus", sans-serif;
}

.font-2 {
    font-family: "Kumbh Sans", sans-serif;
}

b,
strong {
    font-weight: bolder;
}

video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fw-4 {
    font-weight: 400 !important;
}

.fw-5 {
    font-weight: 500 !important;
}

.fw-6 {
    font-weight: 600 !important;
}

.fw-7 {
    font-weight: 700 !important;
}

.fw-8 {
    font-weight: 800 !important;
}

.bg_white {
    background-color: var(--White) !important;
}

.bg_surface {
    background-color: var(--Surface) !important;
}

.bg-main,
.bg_onsurface {
    background-color: var(--Onsurface) !important;
}

.bg-light-blue-2 {
    background-color: #ebeaef !important;
}

.bg-light-blue {
    background-color: #d3d9ef !important;
}

.bg-light-orange {
    background-color: #eeae76 !important;
}

.bg-light-brown {
    background-color: #b1aa98 !important;
}

.bg-light-grey {
    background-color: #f0efed !important;
}

.bg-light-pink {
    background-color: #dfc6b8 !important;
}

.bg-dark-grey-2 {
    background-color: #9e9b96 !important;
}

.bg-light-pink {
    background-color: #dfc6b8 !important;
}

.bg-light-pink-2 {
    background-color: #f4c5bf !important;
}

.bg-light-pink-3 {
    background-color: #fdebeb !important;
}

.bg-dark-pink {
    background-color: #d10047 !important;
}

.bg-blue {
    background-color: var(--blue) !important;
}

.bg-blue-2 {
    background-color: #0c74d6 !important;
}

.bg-blue-3 {
    background-color: #0766bf !important;
}

.bg-light-blue {
    background-color: #d3d9ef !important;
}

.bg-light-blue-2 {
    background-color: #ebeaef !important;
}

.bg-light-blue-3 {
    background-color: #edf5f6 !important;
}

.bg-light-blue-4 {
    background-color: #eaf5ff !important;
}

.bg-light-blue-5 {
    background-color: #c9dfed !important;
}

.bg-dark-blue {
    background-color: #1b4872 !important;
}

.bg-purple {
    background-color: #2d3054 !important;
}

.bg-purple-2 {
    background-color: #6461be !important;
}

.bg-purple-3 {
    background-color: #73465a !important;
}

.bg-orange {
    background-color: #ff9747 !important;
}

.bg-orange-2 {
    background-color: #f1592a !important;
}

.bg-light-orange {
    background-color: #eeae76 !important;
}

.bg-grey {
    background-color: #e0d3c5 !important;
}

.bg-grey-2 {
    background-color: #d7cfc4 !important;
}

.bg-dark-grey {
    background-color: #b1aa98 !important;
}

.bg-dark-grey-2 {
    background-color: #9e9b96 !important;
}

.bg-light-grey {
    background-color: #f0efed !important;
}

.bg-light-green {
    background-color: #b7b8a3 !important;
}

.bg-brown {
    background-color: #d6bb9a !important;
}

.bg-red {
    background-color: #dc2a35 !important;
}

.bg-red-2 {
    background-color: #d14244 !important;
}

.bg-beige {
    background-color: #ccbba7 !important;
}

.bg-beige-2 {
    background-color: #f6efdd !important;
}

.bg-color-beige {
    background-color: #dfc6b8 !important;
}

.bg-color-yellow {
    background-color: var(--Yellow) !important;
}

.text_white {
    color: var(--White) !important;
}

.text_primary {
    color: var(--Primary) !important;
}

.text_secondary {
    color: var(--Secondary) !important;
}

.text_secondary2 {
    color: var(--Secondary2) !important;
}

.text_onsurface {
    color: var(--Onsurface) !important;
}

label {
    font-weight: 400;
}

.link {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.link:hover {
    color: var(--Primary) !important;
}

.text-decoration {
    text-decoration: underline !important;
}

.text-line-clamp-1,
.line-clamp-1 {
    -webkit-line-clamp: 1 !important;
    -webkit-box-orient: vertical;
    overflow: hidden;
    display: -webkit-box;
}

.text-line-clamp-2,
.line-clamp-2 {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    display: -webkit-box;
}

.text-line-clamp-4,
.line-clamp-4 {
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
    display: -webkit-box;
}

.border-bot {
    border-bottom: 1px solid var(--line);
}

.overflow-x-auto {
    overflow-x: auto;
}
.overflow-x-auto::-webkit-scrollbar {
    height: 3px;
}
.overflow-x-auto::-webkit-scrollbar-thumb {
    background: var(--line);
    border-radius: 999px;
}

a {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    color: var(--Onsurface);
}
a:focus, a:hover {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-decoration: none;
    outline: 0;
}

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

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

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

.grid-6 {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
}

.tf-grid-layout {
    display: grid;
    column-gap: 15px;
    row-gap: 30px;
}
.tf-grid-layout.tf-col-2 {
    grid-template-columns: 1fr 1fr;
}
.tf-grid-layout.tf-col-3 {
    grid-template-columns: repeat(3, 1fr);
}
.tf-grid-layout.tf-col-4 {
    grid-template-columns: repeat(4, 1fr);
}
.tf-grid-layout.tf-col-5 {
    grid-template-columns: repeat(5, 1fr);
}
.tf-grid-layout.tf-col-6 {
    grid-template-columns: repeat(6, 1fr);
}
.tf-grid-layout.tf-col-7 {
    grid-template-columns: repeat(7, 1fr);
}
.tf-grid-layout .wg-pagination {
    grid-column: 1/-1;
    width: 100%;
}
.tf-grid-layout .wd-load {
    grid-column: 1/-1;
}
.tf-grid-layout.gap30 {
    gap: 30px;
}

.gap-4 {
    gap: 4px !important;
}

.gap-5 {
    gap: 5px !important;
}

.gap-6 {
    gap: 6px !important;
}

.gap-7 {
    gap: 7px !important;
}

.gap-8 {
    gap: 8px !important;
}

.gap-10 {
    gap: 10px !important;
}

.gap-12 {
    gap: 12px !important;
}

.gap-14 {
    gap: 14px !important;
}

.gap-15 {
    gap: 15px !important;
}

.gap-16 {
    gap: 16px !important;
}

.gap-17 {
    gap: 17px !important;
}

.gap-19 {
    gap: 19px !important;
}

.gap-20 {
    gap: 20px !important;
}

.radius-3 {
    border-radius: 3px !important;
}

.radius-4 {
    border-radius: 4px !important;
}

.radius-5 {
    border-radius: 5px !important;
}

.radius-10 {
    border-radius: 10px !important;
}

.radius-20 {
    border-radius: 20px !important;
}

.radius-60 {
    border-radius: 60px !important;
}

.rounded-full {
    border-radius: 999px !important;
}

.o-hidden {
    overflow: hidden;
}

.px_15 {
    padding-left: 15px;
    padding-right: 15px;
}

.py_12 {
    padding: 12px 0;
}

.pt_0 {
    padding-top: 0px !important;
}

.pb_0 {
    padding-bottom: 0px !important;
}

.pb_10 {
    padding-bottom: 10px !important;
}

.pb_23 {
    padding-bottom: 23px !important;
}

.pr_0 {
    padding-right: 0px !important;
}

.mt_4 {
    margin-top: 4px;
}

.mt_20 {
    margin-top: 20px;
}

.mt_60 {
    margin-top: 60px;
}

.mb_4 {
    margin-bottom: 4px;
}

.mb_6 {
    margin-bottom: 6px;
}

.mb_7 {
    margin-bottom: 7px;
}

.mb_8 {
    margin-bottom: 8px;
}

.mb_9 {
    margin-bottom: 9px;
}

.mb_10 {
    margin-bottom: 10px;
}

.mb_11 {
    margin-bottom: 11px;
}

.mb_12 {
    margin-bottom: 12px;
}

.mb_14 {
    margin-bottom: 14px;
}

.mb_15 {
    margin-bottom: 15px;
}

.mb_16 {
    margin-bottom: 16px;
}

.mb_17 {
    margin-bottom: 17px !important;
}

.mb_18 {
    margin-bottom: 18px !important;
}

.mb_20 {
    margin-bottom: 20px !important;
}

.mb_21 {
    margin-bottom: 21px !important;
}

.mb_22 {
    margin-bottom: 22px !important;
}

.mb_24 {
    margin-bottom: 24px;
}

.mb_28 {
    margin-bottom: 28px;
}

.mb_30 {
    margin-bottom: 30px;
}

.mb_32 {
    margin-bottom: 32px;
}

.mb_34 {
    margin-bottom: 34px !important;
}

.mb_39 {
    margin-bottom: 39px !important;
}

.mb_40 {
    margin-bottom: 40px;
}

.mb_43 {
    margin-bottom: 43px !important;
}

.mb_48 {
    margin-bottom: 48px;
}

.line-top-container {
    position: relative;
}
.line-top-container::before {
    position: absolute;
    content: "";
    top: 0;
    left: 50%;
    background-color: var(--line);
    height: 1px;
    width: 100%;
    max-width: 1290px;
    transform: translateX(-50%);
}

.line-bottom-container {
    position: relative;
}
.line-bottom-container::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 50%;
    background-color: var(--line);
    height: 1px;
    width: 100%;
    max-width: 1070px;
    transform: translateX(-50%);
}

[data-grid=grid-1] {
    display: grid;
    gap: 30px;
    grid-template-columns: 1fr;
}

[data-grid=grid-2] {
    display: grid;
    gap: 30px;
    grid-template-columns: 1fr 1fr;
}

[data-grid=grid-3] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(3, 1fr);
}

[data-grid=grid-4] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(4, 1fr);
}

[data-grid=grid-5] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(5, 1fr);
}

[data-grid=grid-6] {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(6, 1fr);
}

.grid-template-columns-2 {
    grid-template-columns: 1fr 1fr;
}

.tf-row-flex {
    display: flex;
    flex-direction: row;
    column-gap: 30px;
    row-gap: 30px;
}

.tf-grid-layout-v2 {
    display: grid;
    gap: 15px;
}

.tf-md-hidden {
    display: none;
}

.slider-layout-right {
    width: calc(100vw - (100vw - 1300px) / 2);
    margin-right: unset;
    max-width: 100%;
    margin-left: auto;
}

.cursor-pointer {
    cursor: pointer;
}

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}

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

.simpleParallax {
    height: 100%;
}

#scroll-top {
    position: fixed;
    display: block;
    width: 48px;
    height: 48px;
    line-height: 50px;
    border-radius: 4px;
    z-index: 1;
    border-radius: 50%;
    opacity: 0;
    visibility: hidden;
    cursor: pointer;
    overflow: hidden;
    z-index: 100;
    background-color: var(--Onsurface);
    border: 0;
    bottom: 92px;
    right: 20px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
#scroll-top.show {
    opacity: 1;
    visibility: visible;
}
#scroll-top.style-1 {
    bottom: 140px;
}
#scroll-top:hover {
    transform: translateY(-5px);
    background-color: var(--Primary);
}

.overflow-none {
    overflow: unset !important;
}

.w-full {
    width: 100% !important;
    max-width: 100%;
}

.sticky-top {
    z-index: 50;
    top: 15px;
}

.border-top {
    border-top: 1px solid var(--line);
}

.loadmore-item .fl-item {
    display: none;
}

.loadItem.hidden {
    display: none !important;
}
.loadItem.card-product.style-list:not(.hidden) {
    display: flex !important;
}

.space-1 {
    height: 15px;
}

.error {
    color: var(--Critical);
}

.success .standard {
    color: var(--Success);
    margin-top: 10px;
}

/* Preload 
------------------------------------------- */
.preload-wrapper .preload-container {
    display: flex;
}

.preload-container {
    display: none;
    position: relative;
    width: 100%;
    height: 100%;
    background: #ffffff;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 99999999999;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.spinner {
    width: 60px;
    height: 60px;
    border: 3px solid transparent;
    border-top: 3px solid var(--Primary);
    border-radius: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    animation: spin 1s infinite linear;
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
/*------------ Components ---------------- */
/*------------ header ---------------- */
.tf-topbar {
    background-color: var(--Onsurface);
    padding: 11px 0;
}
.tf-topbar .topbar-left {
    display: flex;
    align-items: center;
    gap: 28px;
}
.tf-topbar .topbar-right {
    display: flex;
    align-items: center;
    gap: 29px;
}
.tf-topbar .wrapper-slider-topbar {
    position: relative;
}
.tf-topbar .wrapper-slider-topbar .tf-sw-top_bar {
    margin-left: 20px;
    margin-right: 20px;
}
.tf-topbar .wrapper-slider-topbar .tf-sw-top_bar p {
    text-align: center;
}
.tf-topbar .navigation-topbar {
    position: absolute;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 50%;
    transform: translateY(-50%);
}
.tf-topbar .navigation-topbar .icon {
    font-size: 20px;
    color: var(--White);
}
.tf-topbar .navigation-topbar.nav-next-topbar {
    left: 0;
}
.tf-topbar .navigation-topbar.nav-prev-topbar {
    right: 0;
}
.tf-topbar.style-2 {
    border-bottom: 1px solid var(--line);
}

header {
    position: sticky;
    position: -webkit-sticky;
    left: 0;
    right: 0;
    -webkit-transition: 0.2s ease-out;
    -o-transition: 0.2s ease-out;
    transition: 0.2s ease-out;
    z-index: 888;
    background-color: var(--White);
}

.header-default .wrapper-header-left {
    max-width: 240px;
}
.header-default .main-header.has-border-y {
    border-bottom: 1px solid var(--line);
    border-top: 1px solid var(--line);
}
.header-default .nav-icon {
    display: flex;
    align-items: center;
    gap: 20px;
    justify-content: end;
}
.header-default .nav-icon .nav-icon-item {
    display: flex;
    font-size: 28px;
    position: relative;
}
.header-default .nav-icon .nav-icon-item:hover {
    color: var(--Primary) !important;
}
.header-default .nav-icon .count-box {
    position: absolute;
    width: 18px;
    height: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--Primary);
    color: var(--White);
    top: -4px;
    right: -4px;
}
.header-default .mobile-menu {
    display: flex;
}
.header-default .mobile-menu svg {
    width: 22px;
}
.header-default .logo-header .logo-black {
    display: none;
}
.header-default.header-absolute {
    background-color: transparent;
    margin-bottom: -88px;
}
.header-default.header-style-1 .box-nav-ul .menu-item > a::before {
    height: 86px;
}
.header-default.header-style-1 .main-header {
    padding: 0;
    border: 0;
}
.header-default.header-style-1 .main-header .menu-item {
    padding: 32px 0;
}
.header-default.header-style-1.header-bg .mobile-menu svg path {
    fill: var(--main);
}
.header-default.header-style-2 {
    padding: 0px 32px 0 32px;
    margin-bottom: -97px;
}
.header-default.header-style-2 .box-nav-ul .menu-item > a::before {
    height: 96px;
}
.header-default.header-style-2.header-bg .mobile-menu svg path {
    fill: var(--main);
}
.header-default.header-style-2 .main-header {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.header-default.header-style-2 .main-header .menu-item {
    padding: 37px 0;
}
.header-default.header-style-3 .box-nav-ul .menu-item > a::before {
    height: 90px;
}
.header-default.header-style-3 .main-header {
    padding: 0;
}
.header-default.header-style-3 .box-nav-ul .menu-item {
    padding: 33px 0;
}
.header-default.header-bg {
    box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
    background-color: var(--White);
}
.header-default.header-bg.header-fixed .logo-header .logo-black {
    display: block;
}
.header-default.header-bg.header-fixed .logo-header .logo {
    display: none;
}
.header-default.header-bg.header-fixed .nav-icon .nav-icon-item,
.header-default.header-bg.header-fixed .box-nav-ul .item-link {
    color: var(--Onsurface) !important;
}

.box-nav-ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 32px;
}
.box-nav-ul .menu-item {
    padding: 34px 0;
}
.box-nav-ul .menu-item:hover > .sub-menu {
    pointer-events: all;
    opacity: 1;
    visibility: visible;
    transform: translateX(0px) translateY(-1px);
}
.box-nav-ul .menu-item:hover > a::before {
    display: block;
}
.box-nav-ul .menu-item:hover .mega-menu {
    transform: translateY(0) !important;
}
.box-nav-ul .menu-item > a::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: calc(100% + 64px);
    height: 59px;
    display: none;
}
.box-nav-ul .item-link {
    display: flex;
    gap: 4px;
    align-items: center;
    font-size: 14px;
    line-height: 22px;
    position: relative;
}
.box-nav-ul .item-link .icon {
    font-size: 16px;
}
.box-nav-ul .item-link::after {
    position: absolute;
    content: "";
    width: 0;
    height: 2px;
    bottom: -2px;
    left: auto;
    right: 0;
    z-index: 1;
    -webkit-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    -o-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    background: var(--Primary);
}
.box-nav-ul .item-link.active::after, .box-nav-ul .item-link:hover::after {
    width: calc(100% - 20px);
    left: 0;
    right: auto;
}
.box-nav-ul .sub-menu {
    pointer-events: none;
    position: absolute;
    background-color: var(--White);
    min-width: 200px;
    z-index: 999;
    visibility: hidden;
    text-align: left;
    padding: 8px 20px;
    top: 100%;
    opacity: 0;
    visibility: hidden;
    border-radius: 8px;
    transform: translateX(0px) translateY(10px);
    box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.box-nav-ul .mega-menu {
    border-radius: 0;
    padding: 32px 0;
    border: none;
    height: max-content;
    overflow: auto;
    left: 0;
    right: 0;
    transform: translateY(10px) !important;
    top: 100% !important;
    z-index: 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.box-nav-ul .submenu-default {
    left: -20px;
    padding: 8px 20px;
}
.box-nav-ul .submenu-default .menu-list {
    display: flex;
    flex-direction: column;
    gap: 7px;
}
.box-nav-ul .submenu-default .menu-link-text {
    padding: 7px 0;
    color: var(--Secondary);
    position: relative;
}
.box-nav-ul .submenu-default .menu-link-text::after {
    position: absolute;
    content: "";
    width: 0;
    height: 2px;
    bottom: 5px;
    left: auto;
    right: 0;
    z-index: 1;
    -webkit-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    -o-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    background: var(--Onsurface);
}
.box-nav-ul .submenu-default .menu-link-text.active, .box-nav-ul .submenu-default .menu-link-text:hover {
    color: var(--Onsurface);
}
.box-nav-ul .submenu-default .menu-link-text.active::after, .box-nav-ul .submenu-default .menu-link-text:hover::after {
    width: 100%;
    left: 0;
    right: auto;
}

.mega-menu .row-demo {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    overflow-y: auto;
}
.mega-menu .row-demo::-webkit-scrollbar {
    width: 6px;
}
.mega-menu .row-demo::-webkit-scrollbar-thumb {
    background: var(--line);
}
.mega-menu .demo-item {
    border-radius: 4px;
    background-color: var(--Surface);
    padding: 12px;
    border: solid 1px var(--line);
    transition: border 0.4s;
    margin-bottom: 1px;
    display: inline-flex;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.mega-menu .demo-item .demo-image {
    margin-bottom: 12px;
    border-radius: 2px;
    overflow: hidden;
}
.mega-menu .demo-item .demo-name {
    font-family: "Kumbh Sans", sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 17.36px;
    text-wrap: nowrap;
    text-overflow: ellipsis;
    text-align: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.mega-menu .demo-item .demo-name:hover {
    color: var(--Primary);
}
.mega-menu .demo-item.active, .mega-menu .demo-item:hover {
    border-color: var(--Primary);
}
.mega-menu .demo-item.active .demo-name, .mega-menu .demo-item:hover .demo-name {
    color: var(--Primary);
}
.mega-menu.mega-menu-1 {
    padding: 0;
}
.mega-menu.mega-menu-1 .container {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
}
.mega-menu.mega-menu-1 .menu-heading {
    margin-bottom: 8px;
}
.mega-menu.mega-menu-1 .menu-link-text {
    padding: 7px 0;
    position: relative;
}
.mega-menu.mega-menu-1 .menu-link-text::after {
    position: absolute;
    content: "";
    width: 0;
    height: 2px;
    bottom: 5px;
    left: auto;
    right: 0;
    z-index: 1;
    -webkit-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    -o-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    background: var(--Onsurface);
}
.mega-menu.mega-menu-1 .menu-link-text.active, .mega-menu.mega-menu-1 .menu-link-text:hover {
    color: var(--Onsurface) !important;
}
.mega-menu.mega-menu-1 .menu-link-text.active::after, .mega-menu.mega-menu-1 .menu-link-text:hover::after {
    width: 100%;
    left: 0;
    right: auto;
}
.mega-menu.mega-menu-1 .row-demo-1 {
    display: flex;
    gap: 190px;
    padding: 36px 60px;
    border-radius: 0 0 20px 20px;
    background-color: var(--White);
}
.mega-menu.mega-menu-1 .row-demo-1 .mega-menu-list {
    display: flex;
    justify-content: space-between;
    flex-grow: 1;
}
.mega-menu.mega-menu-1 .row-demo-1 .mega-menu-list .mega-menu-item {
    width: 100%;
}
.mega-menu.mega-menu-1 .row-demo-1 .mega-menu-list .mega-menu-item:first-child {
    min-width: 185px;
}
.mega-menu.mega-menu-1 .row-demo-1 .mega-menu-list .mega-menu-item:last-child {
    min-width: 300px;
}
.mega-menu.mega-menu-1 .row-demo-1 .collection-position.style-2 .content {
    margin: 0 32px;
    bottom: 32px;
}
.mega-menu.mega-menu-1 .row-demo-1 .collection-position.style-2 .cls-heading {
    gap: 4px;
    margin-bottom: 20px;
}
.mega-menu.mega-menu-1 .row-demo-1 .collection-position.style-4 {
    max-height: 350px;
}
.mega-menu .collection-item .collection-title {
    background-color: #f2f2f2;
    border-radius: 3px;
}
.mega-menu .collection-item .collection-content {
    bottom: 40px;
}
.mega-menu .collection-item .tf-btn .icon {
    margin: 0px;
}

.canvas-mb {
    width: 100% !important;
    max-width: min(90%, 320px);
    border-right: 0 !important;
}
.canvas-mb .mb-canvas-content {
    padding-top: 60px;
    padding-bottom: 0;
    padding-inline-end: 0;
    padding-inline-start: 20px;
    min-width: 100%;
    max-width: min(90%, 320px);
    grid-auto-rows: minmax(0, 1fr) auto;
    isolation: isolate;
    height: 100%;
    width: 100%;
    display: grid;
    align-content: start;
}
.canvas-mb .mb-body {
    padding-right: 15px;
    overscroll-behavior-y: contain;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.canvas-mb .icon-close-popup {
    position: absolute;
    font-size: 16px;
    z-index: 3;
    top: 20px;
    left: 15px;
    background-color: transparent;
    border: none;
    height: 30px;
    width: 30px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--Onsurface);
}
.canvas-mb .mb-bottom {
    padding-top: 15px;
}
.canvas-mb .mb-bottom .site-nav-icon {
    margin-bottom: 18px;
}
.canvas-mb .mb-bottom .bottom-bar-language {
    min-height: 63px;
    border-top: 1px solid var(--line);
    gap: 28px;
    max-width: calc(100% - 20px);
    display: flex;
    align-items: center;
}
.canvas-mb .mb-bottom .bottom-bar-language .image-select.type-currencies > .dropdown-menu {
    margin-left: 0 !important;
}
.canvas-mb .mb-bottom .bottom-bar-language .image-select > .dropdown-menu::before {
    display: none;
}
.canvas-mb .site-nav-icon {
    padding: 0 9px;
    line-height: 40px;
    border: solid 1px var(--line);
    gap: 4px;
    background-color: var(--line);
    color: var(--Onsurface);
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 500;
}
.canvas-mb .site-nav-icon .icon {
    font-size: 14px;
}
.canvas-mb .site-nav-icon svg path {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.canvas-mb .site-nav-icon:hover {
    color: var(--White);
    background-color: var(--Onsurface);
    border-color: var(--Onsurface);
}
.canvas-mb .site-nav-icon:hover svg path {
    stroke: var(--White);
}
.canvas-mb .mb-other-content .group-icon {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 28px;
}
.canvas-mb .mb-other-content .text-need {
    font-weight: 500;
    border-bottom: 1px solid var(--Onsurface);
    margin-bottom: 11px;
}
.canvas-mb .mb-other-content .mb-info li {
    color: rgb(134, 134, 134);
    font-size: 14px;
    line-height: 24px;
}

.nav-ul-mb .nav-mb-item {
    padding: 2px 0px;
}
.nav-ul-mb .nav-mb-item:not(:last-child) {
    border-bottom: 1px solid rgb(238, 238, 238);
}
.nav-ul-mb .nav-mb-item .mb-menu-link {
    min-height: 40px;
    font-weight: 500;
    font-size: 14px;
    color: var(--main);
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.nav-ul-mb .nav-mb-item .mb-menu-link:not(.collapsed) .btn-open-sub::before {
    transform: rotate(90deg);
}
.nav-ul-mb .nav-mb-item.active .mb-menu-link {
    color: var(--Primary);
}
.nav-ul-mb .nav-mb-item.active .mb-menu-link .btn-open-sub::after, .nav-ul-mb .nav-mb-item.active .mb-menu-link .btn-open-sub::before {
    background-color: var(--Primary);
}
.nav-ul-mb .nav-mb-item.active .sub-nav-link.active {
    color: var(--Primary);
}
.nav-ul-mb .nav-mb-item.active .sub-nav-link.active .btn-open-sub::after, .nav-ul-mb .nav-mb-item.active .sub-nav-link.active .btn-open-sub::before {
    background-color: var(--Primary);
}
.nav-ul-mb .btn-open-sub {
    position: relative;
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.nav-ul-mb .btn-open-sub:after, .nav-ul-mb .btn-open-sub::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--Onsurface);
    transition: 0.4s ease 0.1s;
    margin: auto;
}
.nav-ul-mb .btn-open-sub::before {
    width: 2px;
    height: 12px;
}
.nav-ul-mb .btn-open-sub::after {
    width: 12px;
    height: 2px;
}
.nav-ul-mb .sub-nav-menu {
    margin-left: 10px;
    padding-left: 19px;
    margin-bottom: 26px;
    border-left: 1px solid rgb(236, 236, 236);
}
.nav-ul-mb .sub-menu-level-2 {
    margin-bottom: 5px;
}
.nav-ul-mb .sub-nav-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 32px;
    font-size: 14px;
}
.nav-ul-mb .sub-nav-link:not(.collapsed) .btn-open-sub::before {
    transform: rotate(90deg);
}
.nav-ul-mb .sub-nav-link.line-clamp {
    position: relative;
    display: inline-flex;
}
.nav-ul-mb .sub-nav-link.line-clamp .demo-label {
    top: -5px;
    right: -38px;
}

.list-categories-inner {
    border-radius: 8px;
    z-index: 3;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-align: left;
    top: 100%;
    color: var(--main);
}
.list-categories-inner .categories-item {
    position: relative;
    width: max-content;
    padding: 3px 0px !important;
    border: 0 !important;
    box-shadow: none !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.list-categories-inner .categories-item .icon {
    font-size: 20px !important;
    margin-bottom: 0 !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.list-categories-inner .categories-item .inner-left {
    display: flex;
    align-items: center;
}
.list-categories-inner .categories-item::after {
    position: absolute;
    content: "";
    width: 0;
    height: 2px;
    bottom: 5px;
    left: auto;
    right: 0;
    z-index: 1;
    -webkit-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    -o-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    background: var(--Onsurface);
}
.list-categories-inner .categories-item:hover {
    color: var(--Onsurface) !important;
}
.list-categories-inner .categories-item:hover::after {
    width: 100%;
    left: 0;
    right: auto;
}
.list-categories-inner .box-cate-bottom {
    margin-top: 10px;
}
.list-categories-inner .menu-heading {
    font-weight: 400;
    font-size: 20px;
    line-height: 28px;
}

/*------------ footer ---------------- */
footer {
    background-color: rgb(31, 31, 31);
}
footer .footer-body {
    padding: 78px 0 73px 0;
    gap: 0px;
    display: flex;
    justify-content: space-between;
    gap: 0 30px;
}
footer .footer-heading {
    margin-bottom: 23px;
}
footer .footer-heading.style-2 {
    margin-bottom: 16px;
}
footer .footer-phone-number .number {
    margin-bottom: -7px;
}
footer .footer-left {
    display: flex;
    justify-content: space-between;
    gap: 95px;
    max-width: 631px;
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    width: 100%;
}
footer .footer-newsletter {
    width: 100%;
    max-width: 518px;
}
footer .footer-newsletter .footer-heading {
    text-transform: capitalize;
    margin-bottom: 20px;
}
footer .footer-newsletter .form-newsletter {
    max-width: 435px;
}
footer .footer-menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    margin-bottom: 42px;
}
footer .footer-menu .footer-col-block {
    width: 100%;
}
footer .footer-menu .footer-menu-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
footer .footer-menu .footer-menu_item {
    color: rgba(255, 255, 255, 0.8);
    display: inline;
    background-repeat: no-repeat;
    background-position-y: 0px;
    background-image: linear-gradient(transparent calc(100% - 1px), currentColor 1px);
    transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-size: 0 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
footer .footer-menu .footer-menu_item:hover {
    background-size: 100% 100%;
    transition-delay: 0.2s;
    color: var(--White) !important;
}
footer .wrap-newsletter p {
    margin-bottom: 24px;
}
footer .form-newsletter {
    margin-bottom: 96px;
    position: relative;
}
footer .form-newsletter fieldset input {
    border-radius: 8px;
    padding: 13px 16px 13px 24px;
    background: rgba(255, 255, 255, 0.1019607843);
    border: 0;
    color: var(--White);
}
footer .form-newsletter fieldset input::placeholder {
    color: var(--Secondary2);
}
footer .form-newsletter .subscribe-button {
    position: absolute;
    height: 40px;
    padding: 0 16px;
    border-radius: 6px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    gap: 4px;
    background-color: var(--White);
    color: var(--Onsurface);
    top: 50%;
    transform: translateY(-50%);
    right: 6px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
footer .form-newsletter .subscribe-button i {
    font-weight: 700;
}
footer .form-newsletter .subscribe-button:hover {
    color: var(--White);
    background-color: var(--Onsurface);
}
footer .tf-btn-direction {
    display: flex;
    align-items: center;
}
footer .tf-btn-direction span {
    position: relative;
}
footer .tf-btn-direction span::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 2px;
    bottom: 0;
    background-color: var(--Onsurface);
    left: 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
footer .tf-btn-direction i {
    font-size: 20px;
}
footer .tf-btn-direction:hover span::after {
    background-color: var(--Primary);
}
footer .footer-bottom {
    background-color: rgb(23, 23, 23);
}
footer .footer-bottom-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 25px 0;
    flex-wrap: wrap;
    gap: 15px 30px;
}
footer .footer-bottom-wrap .left {
    display: flex;
    align-items: center;
    text-align: center;
    gap: 16px;
}
footer .footer-bottom-wrap .right {
    display: flex;
    align-items: center;
    text-align: center;
    gap: 16px;
}

.tf-payment ul {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.tf-payment ul img {
    width: 38px;
    height: 24px;
}

.tf-toolbar-bottom {
    display: none;
    padding: 15px 0px;
    overflow-x: auto;
    overflow-y: hidden;
    position: fixed;
    z-index: 60;
    bottom: 0;
    right: 0;
    left: 0;
    background-color: var(--White);
    box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
}
.tf-toolbar-bottom .toolbar-item {
    flex: 1 0 20%;
    position: relative;
}
.tf-toolbar-bottom .toolbar-item a {
    width: 100%;
    padding-right: 7px;
    padding-left: 7px;
    height: 40px;
    gap: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.tf-toolbar-bottom .toolbar-item a .toolbar-icon {
    display: flex;
    position: relative;
}
.tf-toolbar-bottom .toolbar-item a .toolbar-icon svg {
    width: 20px;
}
.tf-toolbar-bottom .toolbar-item a .toolbar-icon .icon {
    font-size: 20px;
    color: var(--main);
}
.tf-toolbar-bottom .toolbar-item a .toolbar-label {
    font-size: 12px;
    font-weight: 500;
    line-height: 16px;
    color: var(--Secondary);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tf-toolbar-bottom .toolbar-item a:hover .toolbar-label {
    color: var(--main);
    font-weight: 600;
}

/*------------ tabs ---------------- */
.tab-banner .nav-tab-item .nav-tab-link {
    padding-top: 15px;
    padding-bottom: 15px;
    padding-right: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    gap: 20px;
    position: relative;
}
.tab-banner .nav-tab-item .nav-tab-link::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 1px;
    left: auto;
    right: 0;
    bottom: 0;
    background-color: rgba(255, 255, 255, 0.1019607843);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tab-banner .nav-tab-item .nav-tab-link .title {
    color: rgba(255, 255, 255, 0.5019607843);
    display: flex;
    align-items: center;
    gap: 24px;
    flex-grow: 1;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tab-banner .nav-tab-item .nav-tab-link .title span {
    display: flex;
    min-width: 30px;
    width: 40px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tab-banner .nav-tab-item .nav-tab-link .arr-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 19px;
    border-radius: 99px;
    border: 1px solid rgba(255, 255, 255, 0.5019607843);
    color: rgba(255, 255, 255, 0.5019607843);
    flex-shrink: 0;
}
.tab-banner .nav-tab-item .nav-tab-link .arr-link .icon {
    font-size: 20px;
}
.tab-banner .nav-tab-item .nav-tab-link .icon {
    font-size: 16px;
}
.tab-banner .nav-tab-item .nav-tab-link:hover .title {
    color: #fff;
}
.tab-banner .nav-tab-item .nav-tab-link:hover .arr-link {
    color: #fff;
    border-color: #fff;
}
.flat-animate-tab {
    overflow: hidden;
    height: 100%;
}
.flat-animate-tab .tab-content {
    position: relative;
    height: 100%;
}
.flat-animate-tab .tab-pane {
    display: block;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    transition-timing-function: ease-in;
    transition-duration: 0.2s;
    height: 100%;
}
.flat-animate-tab .tab-pane.active {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
    position: relative;
    z-index: 2;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    transition-timing-function: ease-out;
    transition-duration: 0.3s;
    transition-delay: 0.3s;
}
.flat-animate-tab .sec-btn {
    margin-top: 20px;
}

.widget-tabs .widget-menu-tab .item-title {
    cursor: pointer;
    position: relative;
    font-size: 24px;
    line-height: 30px;
}
.widget-tabs .widget-menu-tab .item-title::after {
    position: absolute;
    content: "";
    background-color: var(--Onsurface);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.widget-tabs .widget-content-tab {
    position: relative;
    overflow: hidden;
}
.widget-tabs .widget-content-tab .widget-content-inner {
    display: block;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    right: 0;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
    transition-timing-function: ease-in;
    transition-duration: 0.2s;
}
.widget-tabs .widget-content-tab .widget-content-inner.active {
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
    position: relative;
    z-index: 2;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    transition-timing-function: ease-out;
    transition-duration: 0.3s;
    transition-delay: 0.3s;
}
.widget-tabs.style-1 .widget-menu-tab {
    display: flex;
    align-items: center;
    gap: 40px;
    justify-content: center;
    padding-bottom: 28px;
    overflow-x: auto;
}
.widget-tabs.style-1 .widget-menu-tab .item-title {
    min-width: max-content;
}
.widget-tabs.style-1 .widget-menu-tab .item-title::after {
    position: absolute;
    content: "";
    background-color: var(--Onsurface);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    bottom: -1px;
    left: 0;
    width: 0;
    height: 1px;
}
.widget-tabs.style-1 .widget-menu-tab .item-title.active::after {
    width: 100%;
}
.widget-tabs.style-1 .widget-content-tab {
    border-radius: 8px;
    border: 1px solid var(--line);
}
.widget-tabs.style-1 .widget-content-inner {
    padding: 39px 39px 30px;
    border-radius: 8px;
}
.widget-tabs.style-2 .widget-menu-tab {
    display: flex;
    align-items: center;
    gap: 32px;
    margin-bottom: 16px;
    overflow-x: auto;
    border-bottom: 1px solid var(--line);
}
.widget-tabs.style-2 .widget-menu-tab .item-title {
    padding: 7px 0;
    min-width: max-content;
}
.widget-tabs.style-2 .widget-menu-tab .item-title::after {
    position: absolute;
    content: "";
    background-color: var(--Critical);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    bottom: 0px;
    left: 0;
    width: 0;
    height: 2px;
}
.widget-tabs.style-2 .widget-menu-tab .item-title.active::after {
    width: 100%;
}

.tab-description {
    display: flex;
    gap: 20px 47px;
}
.tab-description .right,
.tab-description .left {
    width: 100%;
}

.tab-reviews .tab-reviews-heading {
    margin-bottom: 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 50px;
    flex-wrap: wrap;
}
.tab-reviews .tab-reviews-heading .top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-grow: 1;
    width: 100%;
    max-width: 597px;
    gap: 30px;
}
.tab-reviews .tab-reviews-heading .top .list-start {
    display: flex;
    gap: 2px;
    justify-content: center;
    margin-bottom: 7px;
    margin-top: 1px;
    font-size: 17px;
}
.tab-reviews .rating-score {
    width: 100%;
    max-width: 365px;
}
.tab-reviews .rating-score .item {
    width: 100%;
    display: flex;
    align-items: center;
}
.tab-reviews .rating-score .number-1 {
    width: 12px;
    text-align: end;
}
.tab-reviews .rating-score .icon {
    font-size: 16px;
    margin-left: 1px;
}
.tab-reviews .rating-score .number-2 {
    width: 17px;
}
.tab-reviews .rating-score .line-bg {
    margin: 0 8px;
    width: 100%;
    height: 8px;
    background-color: var(--line);
}
.tab-reviews .rating-score .line-bg div {
    height: 100%;
    background-color: var(--Onsurface);
}
.tab-reviews .list-star {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.tab-reviews .list-star i {
    font-size: 20px;
}
.tab-reviews .tf-btn {
    padding: 16px 40px;
    height: 58px;
}
.tab-reviews.style-2 .tab-reviews-heading {
    margin-bottom: 42px;
}
.tab-reviews.style-2 .tf-btn {
    font-size: 14px;
    line-height: 22px;
    padding: 16px;
    height: 40px;
}

.tab-shipping {
    display: flex;
    gap: 30px;
}
.tab-shipping p {
    color: var(--Secondary);
}

.tab-policies ul.list-text li {
    padding-left: 24px;
}
.tab-policies ul.list-text.type-number {
    margin-bottom: 6px;
    gap: 0;
}

.tab-product {
    gap: 20px;
    margin-bottom: 20px;
    overflow-x: auto;
    display: flex;
}
.tab-product .nav-tab-item a {
    display: flex;
    width: 100%;
    white-space: nowrap;
    padding-bottom: 4px;
    text-transform: capitalize;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    color: var(--Secondary);
    position: relative;
}
.tab-product .nav-tab-item a::after {
    position: absolute;
    content: "";
    width: 0;
    height: 2px;
    bottom: 5px;
    left: auto;
    right: 0;
    z-index: 1;
    -webkit-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    -o-transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1) 0s;
    background: var(--Onsurface);
}
.tab-product .nav-tab-item a.active::after, .tab-product .nav-tab-item a:hover::after {
    width: 100%;
    left: 0;
    right: auto;
}
.tab-product::-webkit-scrollbar {
    width: 0px;
    height: 0px;
}

/*------------ slider banner ---------------- */
.tf-slideshow {
    position: relative;
}
.tf-slideshow .wrap-slider {
    position: relative;
}
.tf-slideshow .wrap-slider .img-style {
    background-color: var(--Onsurface);
    height: 100%;
}
.tf-slideshow .wrap-slider .img-style img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tf-slideshow .box-content {
    position: absolute;
    display: flex;
    flex-direction: column;
    gap: 40px;
    z-index: 5;
}
.tf-slideshow .box-content .box-title {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.tf-slideshow .wrap-pagination {
    left: 0;
    right: 0;
    bottom: 47px;
    position: absolute;
    z-index: 1;
}
.tf-slideshow .wrap-pagination .sw-dots {
    margin-top: 0;
}
.tf-slideshow .sw-button {
    height: 60px;
    width: 60px;
    top: calc(50% - 8px);
}
.tf-slideshow .sw-button.swiper-button-next {
    right: 38px;
}
.tf-slideshow .sw-button.swiper-button-prev {
    left: 38px;
}
.tf-slideshow .tf-btn {
    height: 58px;
    padding: 0 32px;
}
.tf-slideshow.slider-nav-sw .wrap-pagination {
    display: none;
    bottom: 10px;
}
.tf-slideshow.style-default .wrap-slider {
    border-radius: 16px;
    overflow: hidden;
}
.tf-slideshow.style-default .wrap-slider.slide-1 .img-style img {
    opacity: 0.7;
}
.tf-slideshow.style-default .wrap-slider.slide-2 .img-style img {
    opacity: 0.8;
}
.tf-slideshow.style-default .wrap-slider.slide-3 .img-style img {
    opacity: 0.9;
}
.tf-slideshow.style-default .box-content {
    text-align: center;
    align-items: center;
    gap: 32px;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 526px;
}
.tf-slideshow.style-2 .wrap-slider {
    max-height: 805px;
}
.tf-slideshow.style-2 .box-content {
    bottom: 60px;
    left: 60px;
    align-items: flex-start;
}
.tf-slideshow.style-2 .img-style {
    position: relative;
}
.tf-slideshow.style-2 .img-style::after {
    position: absolute;
    content: "";
    inset: 0;
    background-color: var(--Onsurface);
    opacity: 0.6;
}
.tf-slideshow.style-2 .slider-home2-thumbs {
    position: absolute;
    right: 0;
    bottom: 60px;
    width: 492px;
    height: 224px;
    z-index: 5;
}
.tf-slideshow.style-2 .slider-home2-thumbs .swiper-slide:not(.swiper-slide-active) .content {
    opacity: 0;
}
.tf-slideshow.style-2 .thumbs-item {
    display: flex;
    gap: 16px;
    padding-left: 8px;
}
.tf-slideshow.style-2 .thumbs-item .image {
    width: 186px;
    height: 224px;
    padding: 12px;
    border-radius: 4px;
    background-color: var(--White);
}
.tf-slideshow.style-2 .thumbs-item .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 4px;
}
.tf-slideshow.style-2 .thumbs-item .content a:hover {
    color: var(--Critical) !important;
}
.tf-slideshow.style-2 .thumbs-item .content .text-button {
    margin-bottom: 11px;
}
.tf-slideshow.style-2 .sw-dots {
    position: absolute;
    bottom: 80px;
    left: calc(100% - 282px);
    z-index: 6;
    width: max-content;
}
.tf-slideshow.style-2 .wrap-navigation {
    position: absolute;
    bottom: 76px;
    right: 111px;
    display: flex;
    gap: 26px;
    z-index: 6;
}
.tf-slideshow.style-2 .wrap-navigation .sw-button {
    position: unset;
    margin-top: 0;
}
.tf-slideshow.style-2 .wrap-navigation .sw-button::before {
    color: var(--White);
}
.tf-slideshow.style-2 .wrap-navigation .sw-button:hover::before {
    color: var(--Critical);
}
.tf-slideshow.style-3 .wrap-slider {
    border-radius: 0;
}
.tf-slideshow.style-3 .wrap-slider .img-style img {
    opacity: 0.7;
}
.tf-slideshow.style-3 .box-content {
    text-align: center;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: 630px;
    width: 100%;
}
.tf-slideshow.style-3 {
    padding: 0 15px 0 15px;
}
.tf-slideshow.style-3 .swiper {
    border-radius: 20px;
}
.tf-slideshow.style-3 .box-content {
    transform: translate(-50%, 0);
    top: 208px;
    top: calc(36% + 5px);
}
.tf-slideshow.style-3 .wrap-pagination {
    bottom: 30px;
}
.tf-slideshow.style-4 {
    background-color: var(--Surface);
}
.tf-slideshow.style-4 .wrap-slider {
    display: grid;
    grid-template-columns: 1fr 1fr;
}
.tf-slideshow.style-4 .content-left {
    position: relative;
}
.tf-slideshow.style-4 .box-content {
    top: 50%;
    transform: translateY(-50%);
    max-width: 440px;
    left: 32%;
}
.tf-slideshow.style-4 .slider-nav-sw .swiper {
    border-radius: 0px;
}

.slider-effect-fade .swiper-slide .fade-item {
    transform: translateY(100px);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.slider-effect-fade .swiper-slide .fade-item.fade-box {
    transition-delay: 0.4s;
}
.slider-effect-fade .swiper-slide .fade-item.fade-item-1 {
    transition-delay: 0.5s;
}
.slider-effect-fade .swiper-slide .fade-item.fade-item-2 {
    transition-delay: 0.6s;
}
.slider-effect-fade .swiper-slide .fade-item.fade-item-3 {
    transition-delay: 0.7s;
}
.slider-effect-fade .swiper-slide .fade-item.fade-item-4 {
    transition-delay: 0.8s;
}
.slider-effect-fade .swiper-slide.swiper-slide-active .fade-item {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
}
.slider-effect-fade.efect-2 .swiper-slide-active .img-style {
    animation: zoom1 1.3s linear;
}

@keyframes zoom1 {
    0% {
        -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
        transform: scale(1.2);
    }
    30% {
        -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
        transform: scale(1.2);
    }
    100% {
        -webkit-transform: scale(1);
        -ms-transform: scale(1);
        transform: scale(1);
    }
}
@-webkit-keyframes zoom1 {
    0% {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }
    30% {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}
.slider-home5 {
    margin-top: 98px;
}

/*------------ button ---------------- */
.tf-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 20px;
    height: 48px;
    border-radius: 99px;
    font-size: 16px;
    width: max-content;
    line-height: 26px;
    transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
    cursor: pointer;
}
.tf-btn i {
    font-size: 20px;
}
.tf-btn.btn-border {
    border: 1px solid var(--line);
}
.tf-btn.btn-white {
    background-color: var(--White);
}
.tf-btn.btn-white.has-border {
    border: 1px solid var(--Onsurface);
}
.tf-btn.btn-white:hover {
    background-color: var(--Onsurface);
    color: var(--White);
}
.tf-btn.btn-onsurface {
    background-color: var(--Onsurface);
    color: var(--White);
}
.tf-btn.btn-onsurface:hover {
    background-color: var(--Primary);
}
.tf-btn.btn-primary {
    background-color: var(--Primary);
    color: var(--White);
}
.tf-btn.btn-primary:hover {
    background-color: var(--Onsurface);
}
.tf-btn:hover {
    -webkit-box-shadow: 0 8px 30px 0 rgba(0, 0, 0, 0.15);
    box-shadow: 0 8px 30px 0 rgba(0, 0, 0, 0.15);
    -webkit-transform: translate3d(0, -2px, 0);
    transform: translate3d(0, -2px, 0);
}

.tf-btn-link {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    gap: 4px;
}
.tf-btn-link span {
    position: relative;
}
.tf-btn-link span::after {
    position: absolute;
    content: "";
    width: 0;
    height: 1px;
    background-color: var(--Onsurface);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    bottom: 0;
    left: 0;
}
.tf-btn-link i {
    font-size: 20px;
    font-weight: 700;
}
.tf-btn-link:hover span::after {
    width: 100%;
}

.btn-line {
    font-size: 16px;
    line-height: 26px;
    padding-bottom: 4px;
    color: var(--Onsurface);
    position: relative;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    max-width: max-content;
    gap: 8px;
}
.btn-line span {
    position: relative;
    background: linear-gradient(to right, var(--Primary) 50%, var(--Onsurface) 50%);
    background-size: 200% 100%;
    background-position: right;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: background-position 0.3s linear;
}
.btn-line span::after {
    position: absolute;
    content: "";
    left: 0;
    bottom: -2px;
    right: 0;
    height: 2px;
    background-color: var(--Onsurface);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.btn-line span::before {
    position: absolute;
    content: "";
    left: 0;
    width: 0;
    bottom: -2px;
    height: 2px;
    background-color: var(--Primary);
    transition: width 0.3s linear;
    z-index: 1;
}
.btn-line i {
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    font-size: 20px;
}
.btn-line:hover span {
    background-position: left;
}
.btn-line:hover span::before {
    width: 100%;
}
.btn-line:hover i {
    color: var(--Primary);
}
.btn-line.btn-line-white span {
    color: var(--White);
    background: linear-gradient(to right, var(--Primary) 50%, var(--White) 50%);
    background-size: 200% 100%;
    background-position: right;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.btn-line.btn-line-white span::after {
    background-color: var(--White);
}
.btn-line.btn-line-white i {
    font-size: 24px;
    color: var(--White);
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.btn-line.btn-line-white:hover span {
    background-position: left;
}
.btn-line.btn-line-white:hover span::before {
    width: 100%;
}
.btn-line.btn-line-white:hover i {
    color: var(--Primary);
}

.tf-loading {
    position: relative;
}
.tf-loading::before {
    width: 18px;
    height: 18px;
    border: solid 2px transparent;
    border-top-color: transparent !important;
    content: "";
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    border-radius: 50%;
    animation: tf_rotator 0.6s linear infinite paused;
    opacity: 0;
}
.tf-loading .text-btn {
    color: currentColor;
}
.tf-loading.loading::before {
    border: solid 2px var(--main);
    opacity: 1;
    animation-play-state: running;
}
.tf-loading.loading .text-btn {
    display: none;
}

.btn-infinite-scroll {
    height: 32px;
    padding: 0;
    border: none;
}
.btn-infinite-scroll::before {
    width: 22px;
    height: 22px;
    border: solid 2px var(--main);
    opacity: 1;
    animation-play-state: running;
}

@keyframes tf_rotator {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.btn-sold-out {
    pointer-events: none;
    background-color: var(--line) !important;
    color: var(--Secondary2) !important;
    cursor: no-drop;
}

/*------------ range slider ---------------- */
.noUi-target,
.noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -ms-touch-action: none;
    touch-action: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.noUi-target {
    position: relative;
    direction: ltr;
}

.noUi-base,
.noUi-connects {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
}

.noUi-connects {
    overflow: hidden;
    z-index: 0;
}

.noUi-connect,
.noUi-origin {
    will-change: transform;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -ms-transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
}

html:not([dir=rtl]) .noUi-horizontal .noUi-origin {
    left: auto;
    right: 0;
}

.noUi-vertical .noUi-origin {
    width: 0;
}

.noUi-horizontal .noUi-origin {
    height: 0;
}

.noUi-handle {
    position: absolute;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
    -webkit-transition: transform 0.3s;
    transition: transform 0.3s;
}

.noUi-state-drag * {
    cursor: inherit !important;
}

.noUi-horizontal {
    height: 18px;
}

.noUi-horizontal .noUi-handle {
    width: 34px;
    height: 28px;
    left: -17px;
    top: -6px;
}

.noUi-vertical {
    width: 18px;
}

.noUi-vertical .noUi-handle {
    width: 28px;
    height: 34px;
    left: -6px;
    top: -17px;
}

html:not([dir=rtl]) .noUi-horizontal .noUi-handle {
    right: -10px;
    left: auto;
}

.noUi-draggable {
    cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
    cursor: ns-resize;
}

.noUi-handle:after {
    left: 17px;
}

.noUi-vertical .noUi-handle:after,
.noUi-vertical .noUi-handle:before {
    width: 14px;
    height: 1px;
    left: 6px;
    top: 14px;
}

.noUi-vertical .noUi-handle:after {
    top: 17px;
}

[disabled] .noUi-connect {
    background: #b8b8b8;
}

[disabled] .noUi-handle,
[disabled].noUi-handle,
[disabled].noUi-target {
    cursor: not-allowed;
}

.noUi-pips,
.noUi-pips * {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.noUi-pips {
    position: absolute;
    color: #999;
}

.noUi-value {
    position: absolute;
    white-space: nowrap;
    text-align: center;
}

.noUi-value-sub {
    color: #ccc;
    font-size: 10px;
}

.noUi-marker {
    position: absolute;
    background: #ccc;
}

.noUi-marker-sub {
    background: #aaa;
}

.noUi-marker-large {
    background: #aaa;
}

.noUi-pips-horizontal {
    padding: 10px 0;
    height: 80px;
    top: 100%;
    left: 0;
    width: 100%;
}

.noUi-value-horizontal {
    -webkit-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
    -webkit-transform: translate(50%, 50%);
    transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
    margin-left: -1px;
    width: 2px;
    height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
    height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
    height: 15px;
}

.noUi-pips-vertical {
    padding: 0 10px;
    height: 100%;
    top: 0;
    left: 100%;
}

.noUi-value-vertical {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%, 0);
    padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
    -webkit-transform: translate(0, 50%);
    transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
    width: 5px;
    height: 2px;
    margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
    width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
    width: 15px;
}

.noUi-tooltip {
    display: block;
    position: absolute;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    background: #fff;
    color: #000;
    padding: 5px;
    text-align: center;
    white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    left: 50%;
    bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    top: 50%;
    right: 120%;
}

.noUi-horizontal {
    height: 4px;
}

.noUi-target {
    border: 0;
}

.noUi-base .noUi-connects {
    border-radius: 999px;
    background-color: var(--line);
}

.noUi-connect {
    background-color: var(--main);
}

.noUi-horizontal .noUi-handle,
.noUi-vertical .noUi-handle {
    height: 16px;
    width: 16px;
    border-radius: 50px;
    border: 2px solid var(--main);
    background-color: var(--white);
    box-shadow: unset;
    cursor: pointer;
}
.noUi-horizontal .noUi-handle::before, .noUi-horizontal .noUi-handle::after,
.noUi-vertical .noUi-handle::before,
.noUi-vertical .noUi-handle::after {
    content: none;
}

/* Disabled state; */
[disabled].noUi-connect,
[disabled] .noUi-connect {
    background: #b8b8b8;
}

[disabled].noUi-origin,
[disabled] .noUi-handle {
    cursor: not-allowed;
}

.slider-labels .caption {
    font-weight: 500;
    font-size: 16px;
}

/*------------ form ---------------- */
form {
    position: relative;
}
form .cols {
    display: flex;
    gap: 20px 16px;
    width: 100%;
}
form .cols > * {
    width: 100%;
}

.form-search {
    position: relative;
}
.form-search input {
    font-size: 16px;
    line-height: 26px;
    padding: 8px 15px;
    border-radius: 8px;
    color: var(--Secondary2);
}
.form-search input::placeholder {
    font-size: 16px;
    line-height: 26px;
    color: var(--Secondary2);
}
.form-search button {
    font-size: 24px;
    display: flex;
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
}

.form-leave-comment > .wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-bottom: 17px;
}
.form-leave-comment input {
    height: 48px;
}
.form-leave-comment .tf-btn {
    padding: 0 32px;
}

.form-login .wrap {
    display: flex;
    flex-direction: column;
    gap: 22px;
    margin-bottom: 28px;
}
.form-login .wrap input {
    height: 46px;
}
.form-login .forget-password {
    text-decoration: underline;
}
.form-login .tf-btn {
    padding: 0 32px;
}

.form-has-password .toggle-password {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    cursor: pointer;
}
.form-has-password .toggle-password i {
    font-size: 20px;
    color: var(--Secondary-2);
}
.form-has-password .toggle-password:not(.unshow) i::before {
    content: "\e92b";
}

.tf-select {
    position: relative;
}
.tf-select select {
    cursor: pointer;
    width: 100%;
    padding: 7px 16px;
    border: 2px solid var(--line);
    border-radius: 999px;
    -webkit-appearance: none;
    appearance: none;
    background-color: transparent;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tf-select::after {
    font-family: "icomoon";
    position: absolute;
    content: "\e936";
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    z-index: -1;
}
.tf-select:hover select {
    border-color: var(--Onsurface);
}

.tf-check {
    position: relative;
    background: transparent;
    cursor: pointer;
    outline: 0;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    min-width: 20px;
    border: 1px solid var(--Secondary2);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 3px;
}
.tf-check:checked {
    border-color: var(--Onsurface);
    background-color: var(--Onsurface);
}
.tf-check:checked::before {
    opacity: 1;
    transform: scale(1);
}
.tf-check::before {
    font-family: "icomoon";
    content: "\e914";
    position: absolute;
    color: var(--White);
    opacity: 0;
    font-size: 12px;
    transform: scale(0);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tf-check-rounded {
    position: relative;
    border: 1px solid var(--Secondary2);
    border-radius: 50%;
    background: none;
    cursor: pointer;
    outline: 0;
    height: 14px;
    width: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-appearance: none;
}
.tf-check-rounded::before {
    content: "";
    position: absolute;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    background-color: var(--Onsurface);
    opacity: 0;
}
.tf-check-rounded:checked {
    border-color: var(--Onsurface);
}
.tf-check-rounded:checked::before {
    opacity: 1;
}

.form-write-review .heading {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}
.form-write-review textarea {
    height: 100px;
}

.list-rating-check {
    display: flex;
    flex-direction: row-reverse;
    justify-content: left;
    gap: 10px;
    position: relative;
}

.list-rating-check:not(:checked) > input {
    position: absolute;
    opacity: 0;
    visibility: hidden;
    width: 0;
}

.list-rating-check:not(:checked) > label {
    font-size: 40px;
    cursor: pointer;
    white-space: nowrap;
    width: 40px;
    color: var(--line);
}

.list-rating-check:not(:checked) > label:before {
    font-family: "icomoon";
    content: "\e908";
}

.list-rating-check > input:checked ~ label {
    color: var(--Yellow);
}

.list-rating-check:not(:checked) > label:hover,
.list-rating-check:not(:checked) > label:hover ~ label {
    color: var(--Yellow);
}

.list-rating-check > input:checked + label:hover,
.list-rating-check > input:checked + label:hover ~ label,
.list-rating-check > input:checked ~ label:hover,
.list-rating-check > input:checked ~ label:hover ~ label,
.list-rating-check > label:hover ~ input:checked ~ label {
    color: var(--Yellow);
}

.tf-dropdown-sort {
    min-width: 164px;
    border-radius: 4px;
    padding: 6px 11px;
    border: 2px solid var(--line);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tf-dropdown-sort .icon {
    font-size: 20px;
}
.tf-dropdown-sort .btn-select {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.tf-dropdown-sort .dropdown-menu {
    min-width: 164px;
    border: 0;
    padding: 15px 5px;
    border-radius: 0;
    max-height: 68vh;
    isolation: isolate;
    overscroll-behavior-y: contain;
    overflow-y: auto;
    box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
}
.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar {
    width: 5px;
}
.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar-track {
    background-color: var(--bg-scrollbar-track);
}
.tf-dropdown-sort .dropdown-menu::-webkit-scrollbar-thumb {
    background: var(--bg-scrollbar-thumb);
    border-radius: 4px;
}
.tf-dropdown-sort .select-item {
    position: relative;
    padding: 0 15px;
    line-height: 30px;
    width: 100%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tf-dropdown-sort .select-item.active {
    background-color: var(--line);
    color: var(--main);
    padding: 0 15px !important;
    border: 0 !important;
}
.tf-dropdown-sort .select-item:hover {
    background-color: var(--line);
    color: var(--main);
}
.tf-dropdown-sort:hover {
    border-color: var(--main);
}
.tf-dropdown-sort.full .dropdown-menu {
    width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.tf-dropdown-sort.style-1 {
    padding: 10px 14px;
    border-radius: 8px;
    border: 2px solid var(--line);
}
.tf-dropdown-sort.has-color .select-item {
    display: flex;
    gap: 8px;
    align-items: center;
}
.tf-dropdown-sort.has-color .box-color {
    width: 20px;
    height: 20px;
}
.tf-dropdown-sort.style-2 {
    min-width: unset;
    padding: 9px 11px;
    border-radius: 12px;
    background-color: var(--surface);
}
.tf-dropdown-sort.style-2 .btn-select {
    gap: 16px;
}
.tf-dropdown-sort.style-2 .btn-select .text-sort-value {
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0.1em;
}

#contactform textarea {
    height: 160px;
}

.form-bundle-product {
    padding: 23px;
    border-radius: 12px;
    border: 1px solid var(--line);
    display: flex;
    gap: 19px;
    flex-direction: column;
}
.form-bundle-product .tf-bundle-product-total-submit {
    display: flex;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
}
.form-bundle-product .tf-bundle-product-btn {
    padding: 14px 48px;
}
.form-bundle-product.type-cols .tf-bundle-products-wrap {
    display: flex;
    gap: 16px 24px;
    overflow-x: auto;
}
.form-bundle-product.type-cols .tf-bundle-products-wrap::-webkit-scrollbar {
    height: 8px;
}
.form-bundle-product.type-cols .tf-bundle-products-wrap::-webkit-scrollbar-thumb {
    background: var(--Secondary2);
}
.form-bundle-product.type-cols .tf-bundle-products-wrap::-webkit-scrollbar-track {
    background: var(--line);
}
.form-bundle-product.type-cols .tf-bundle-product-item {
    width: 173px;
    flex-shrink: 0;
    flex-direction: column;
}
.form-bundle-product.type-cols .tf-bundle-product-item .tf-product-bundle-infos {
    gap: 8px;
}
.form-bundle-product.type-cols .tf-bundle-product-item .tf-product-bundle-image {
    width: 100%;
    height: 173px;
}
.form-bundle-product.type-product-grouped {
    padding: 0;
    border: 0;
    border-radius: 0;
    gap: 20px;
}
.form-bundle-product.type-product-grouped .tf-bundle-product-item {
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
}
.form-bundle-product .tf-btn {
    max-width: 256px;
    width: 100%;
}
.form-bundle-product .badges-on-sale {
    padding: 0 8px !important;
    font-size: 14px !important;
    line-height: 22px !important;
}

.account-address .tf-btn {
    cursor: pointer;
    padding: 10px 32px;
}

/*------------ nice select ---------------- */
.nice-select {
    -webkit-tap-highlight-color: transparent;
    background-color: #fff;
    border: 0;
    padding: 0;
    padding-right: 16px;
    box-sizing: border-box;
    clear: both;
    cursor: pointer;
    display: flex;
    font-size: 14px;
    line-height: 22px;
    font-weight: 500;
    outline: none;
    position: relative;
    transition: all linear 0.2s;
    user-select: none;
    white-space: nowrap;
    width: max-content;
    border-radius: 0;
    color: var(--main);
}

.nice-select:active,
.nice-select.open,
.nice-select:focus {
    border-color: var(--line);
}

.nice-select:after {
    border-bottom: 1.7px solid var(--main);
    border-right: 1.7px solid var(--main);
    content: "";
    height: 8px;
    width: 8px;
    margin-top: -6px;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform-origin: 66% 66%;
    -ms-transform-origin: 66% 66%;
    transform-origin: 66% 66%;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}

.nice-select.open:after {
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
}

.nice-select.open .list {
    opacity: 1;
    z-index: 10;
    pointer-events: auto;
    -webkit-transform: scale(1) translateY(0);
    -ms-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
    width: 100%;
    -moz-transform: scale(1) translateY(0);
    -o-transform: scale(1) translateY(0);
}

.nice-select.disabled {
    border-color: #ededed;
    color: #999;
    pointer-events: none;
}

.nice-select.disabled:after {
    border-color: #cccccc;
}

.nice-select.wide {
    width: 100%;
}

.nice-select.wide .list {
    left: 0 !important;
    right: 0 !important;
}

.nice-select.right {
    float: right;
}

.nice-select.right .list {
    left: auto;
    right: 0;
}

.nice-select.small {
    font-size: 12px;
    height: 36px;
    line-height: 34px;
}

.nice-select.small:after {
    height: 4px;
    width: 4px;
}

.nice-select.small .option {
    line-height: 34px;
    min-height: 34px;
}

.nice-select .list {
    background-color: var(--White);
    border-radius: 5px;
    box-shadow: 0 0 0 1px rgba(68, 68, 68, 0.11);
    box-sizing: border-box;
    margin-top: 4px;
    opacity: 0;
    overflow: hidden;
    padding: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    -webkit-transform-origin: 50% 0;
    -ms-transform-origin: 50% 0;
    transform-origin: 50% 0;
    -webkit-transform: scale(0.75) translateY(-21px);
    -ms-transform: scale(0.75) translateY(-21px);
    transform: scale(0.75) translateY(-21px);
    -webkit-transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    transition: all 0.2s cubic-bezier(0.5, 0, 0, 1.25), opacity 0.15s ease-out;
    z-index: 9;
    width: 100%;
    font-size: 14px;
    max-height: 155px;
    overflow: auto;
}

.nice-select .list.style {
    max-height: unset;
}

.nice-select .list::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #f5f5f5;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
}

.nice-select .list::-webkit-scrollbar-thumb {
    background-color: #a7a7a7;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
}

.nice-select .list::-webkit-scrollbar {
    width: 6px;
    height: 4px;
    background-color: #f5f5f5;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
}

.nice-select .option {
    cursor: pointer;
    font-weight: 500;
    line-height: 40px;
    list-style: none;
    min-height: 40px;
    outline: none;
    padding-left: 18px;
    padding-right: 29px;
    font-size: 16px;
    text-align: left;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    color: var(--main);
}

.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
    background-color: var(--White);
    color: var(--primary);
}

.nice-select .option.selected {
    font-weight: 600;
}

.nice-select .option.disabled {
    color: var(--main);
    cursor: default;
}

.no-csspointerevents .nice-select .list {
    display: none;
}

.no-csspointerevents .nice-select.open .list {
    display: block;
}

.image-select.style-default {
    display: flex;
    width: max-content !important;
}
.image-select.style-default > select {
    display: none !important;
}
.image-select.style-default > .dropdown-toggle {
    padding: 0;
    padding-right: 25px;
    background-color: transparent !important;
    border: 0 !important;
    outline: none !important;
    color: var(--main);
}
.image-select.style-default > .dropdown-toggle::after {
    border: 0;
    position: absolute;
    right: 0;
    content: "\e936";
    font-family: "icomoon";
    font-size: 16px;
    color: var(--main);
}
.image-select.style-default .filter-option-inner-inner {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 8px;
    font-weight: 400;
    font-size: 14px;
    line-height: 22px;
}
.image-select.style-default .filter-option-inner-inner img {
    width: 20px;
    height: 15px;
}
.image-select.style-default > .dropdown-menu {
    overflow: unset !important;
    margin-top: 17px !important;
    margin-bottom: 17px !important;
    padding: 15px 20px;
    border-radius: 0;
    border: 0;
    background-color: var(--White);
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 18px 0px;
}
.image-select.style-default > .dropdown-menu a {
    padding: 5px 0;
}
.image-select.style-default > .dropdown-menu a .text {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 5px;
    font-weight: 400;
    font-size: 14px;
    line-height: 16px;
}
.image-select.style-default > .dropdown-menu a .text img {
    width: 16px;
    height: 12px;
}
.image-select.style-default > .dropdown-menu a:hover, .image-select.style-default > .dropdown-menu a:active, .image-select.style-default > .dropdown-menu a.active {
    color: var(--primary) !important;
    background-color: unset !important;
}
.image-select.style-default > .dropdown-menu::after {
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    transform: translate(-50%, -50%) rotate(45deg);
    background-color: var(--White);
    top: 0;
    left: 50%;
    z-index: 2;
}
.image-select.style-default > .dropdown-menu[data-popper-placement=top-start]::after {
    display: none;
}
.image-select.style-default > .dropdown-menu[data-popper-placement=top-start]::before {
    position: absolute;
    content: "";
    width: 16px;
    height: 16px;
    transform: translate(-50%, 50%) rotate(45deg);
    background-color: var(--White);
    bottom: 0%;
    left: 50%;
    z-index: 2;
}
.image-select.style-default.style-box {
    padding: 6px 11px;
    border-radius: 4px;
    border: 1px solid rgba(255, 255, 255, 0.1019607843);
}
.image-select.style-default.style-box > .dropdown-toggle {
    width: max-content;
    color: var(--White);
}
.image-select.style-default.style-box > .dropdown-toggle::after {
    color: var(--White);
}
.image-select.style-default.style-box > .dropdown-toggle .filter-option .filter-option-inner {
    color: var(--White);
}
.image-select.style-default.style-box .filter-option-inner-inner {
    font-size: 16px;
    line-height: 26px;
}
.image-select.style-default.style-box > .dropdown-menu {
    margin-left: -11px !important;
    width: 160px !important;
}
.image-select.type-currencies > .dropdown-menu {
    width: 120px !important;
    margin-left: calc(50% - 60px) !important;
}
.image-select.type-languages > .dropdown-menu {
    width: 96px !important;
    margin-left: calc(50% - 48px) !important;
}
.image-select.color-secondary-2 > .dropdown-toggle {
    color: var(--secondary-2);
}
.image-select.color-secondary-2 > .dropdown-toggle::after {
    color: var(--secondary-2);
}
.image-select.color-secondary-2 > .dropdown-toggle .filter-option .filter-option-inner {
    color: var(--secondary-2);
}
.image-select.color-white > .dropdown-toggle {
    color: var(--White);
}
.image-select.color-white > .dropdown-toggle::after {
    color: var(--White);
}
.image-select.color-white > .dropdown-toggle .filter-option .filter-option-inner {
    color: var(--White);
}

/*------------ carousel ---------------- */
.sw-dots {
    display: flex;
    gap: 4px;
}
.sw-dots .swiper-pagination-bullet {
    margin: 0 !important;
}
.sw-dots.type-circle .swiper-pagination-bullet {
    position: relative;
    width: 20px;
    height: 20px;
    background-color: transparent;
    border: 1px solid transparent;
    opacity: 1;
}
.sw-dots.type-circle .swiper-pagination-bullet::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    width: 8px;
    height: 8px;
    background-color: transparent;
    border-radius: 50%;
    border: 1px solid var(--main);
    opacity: 1;
}
.sw-dots.type-circle .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid var(--main);
}
.sw-dots.type-circle .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
    background-color: var(--main);
}
.sw-dots.white-circle .swiper-pagination-bullet::after {
    background-color: var(--White);
    border-color: var(--White);
}
.sw-dots.white-circle .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid var(--White);
}
.sw-dots.white-circle .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
    background-color: var(--White);
}
.sw-dots.white-circle-line .swiper-pagination-bullet::after {
    border-color: var(--White);
}
.sw-dots.white-circle-line .swiper-pagination-bullet.swiper-pagination-bullet-active {
    border: 1px solid var(--White);
}
.sw-dots.white-circle-line .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
    background-color: var(--White);
}
.sw-dots.type-dot-line {
    gap: 13px;
}
.sw-dots.type-dot-line .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background-color: transparent;
    border: 1px solid var(--White);
    border-radius: 99px;
    opacity: 1;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.sw-dots.type-dot-line .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 32px;
    background-color: var(--White);
}
.sw-dots.type-square .swiper-pagination-bullet {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    width: 24px;
    height: 4px;
    border-radius: 99px;
    background-color: var(--main);
    opacity: 0.3;
}
.sw-dots.type-square .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 40px;
    opacity: 1;
}
.sw-dots.white-square .swiper-pagination-bullet {
    background-color: var(--white);
}
.sw-dots.position {
    position: absolute;
    z-index: 99;
}
.sw-dots:not(.swiper-pagination-lock) {
    margin-top: 20px;
}
.sw-dots.no-border {
    gap: 16px;
}
.sw-dots.no-border .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    background-color: var(--Secondary2);
    border: 0 !important;
}
.sw-dots.no-border .swiper-pagination-bullet::after {
    display: none;
}
.sw-dots.no-border .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: var(--White);
}

.sw-button {
    width: 52px;
    height: 52px;
    border-radius: 999px;
    background-color: var(--White);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    top: calc(50% - 4px);
    font-size: 28px;
}
.sw-button.swiper-button-next::before {
    content: "\e92e";
}
.sw-button.swiper-button-prev::before {
    content: "\e930";
}
.sw-button.swiper-button-disabled {
    background-color: var(--White);
    opacity: 0.5;
}
.sw-button.swiper-button-disabled::before {
    color: var(--Secondary2);
}
.sw-button:hover {
    background-color: var(--Onsurface);
    opacity: 1;
}
.sw-button:hover::before {
    color: var(--White);
}
.sw-button::before {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-family: "icomoon";
    color: var(--Onsurface);
    font-size: 24px;
}
.sw-button::after {
    display: none;
}
.sw-button.has-border {
    border: 1px solid var(--line);
}
.sw-button.line-default {
    width: 24px;
    height: 24px;
    font-size: 24px;
    border-radius: unset;
    background-color: transparent;
}

.tf-sw-products.style-full .sw-button {
    top: 39%;
}
.tf-sw-products.style-full .swiper-button-prev {
    left: 12%;
}
.tf-sw-products.style-full .swiper-button-next {
    right: 12%;
}

.sw-button-over {
    position: relative;
}
.sw-button-over .swiper-button-prev {
    left: -75px;
}
.sw-button-over .swiper-button-next {
    right: -75px;
}

.sw-button-bottom-right .wrap-button {
    position: absolute;
    bottom: 0;
    right: 0;
    display: flex;
    gap: 12px;
}
.sw-button-bottom-right .wrap-button .sw-button {
    position: unset;
}

.tf-sw-lookbook .sw-dots {
    bottom: 21px;
}

.tf-sw-testimonial .wrap-button {
    bottom: 3px;
    right: 48px;
}

/*------------ avatar ---------------- */
.avt-62 {
    width: 62px;
    min-width: 62px;
    height: 62px;
}

/*------------ pop up ---------------- */
.offcanvas {
    z-index: 3000;
    border: none !important;
}

.offcanvas-backdrop {
    background-color: var(--backdrop);
    cursor: url("../images/cursor-close.svg"), auto;
}
.offcanvas-backdrop.show {
    opacity: 1;
}

.overflow-x-auto::-webkit-scrollbar,
.overflow-y-auto::-webkit-scrollbar {
    width: 0px;
}

.modal-backdrop {
    background-color: var(--backdrop);
}
.modal-backdrop.show {
    opacity: 1;
}

.modal {
    cursor: url("../images/cursor-close.svg"), auto;
}
.modal.show .modal-dialog {
    transform: none;
    transition: transform 0.3s ease-out !important;
}
.modal.fullRight .modal-dialog {
    transform: translate(100%, 0);
    min-width: 100%;
    height: 100%;
    margin: 0;
    transition: transform 1s ease-out;
}
.modal.fullRight .modal-dialog .modal-content {
    border-radius: 0;
    border: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    padding: 0;
}
.modal.fullRight .modal-dialog .modal-content .modal-body {
    overflow: auto;
    padding: 0;
    padding-bottom: 30px;
}
.modal.fullRight.show .modal-dialog {
    transform: translate(0, 0);
}
.modal.fullLeft .modal-dialog {
    transform: translate(-100%, 0) !important;
    min-width: 100%;
    height: 100%;
    margin: 0;
    transition: all 0.3s !important;
}
.modal.fullLeft .modal-dialog .modal-content {
    border-radius: 0;
    border: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    padding: 0;
}
.modal.fullLeft .modal-dialog .modal-content .modal-body {
    overflow: auto;
    padding: 0;
    padding-bottom: 30px;
}
.modal.fullLeft.show .modal-dialog {
    transform: translate(0, 0) !important;
}
.modal.modalLeft .modal-dialog {
    transform: translate(-100px, 0);
}
.modal.modalRight .modal-dialog {
    transform: translate(100px, 0);
}
.modal.modalBottom .modal-dialog {
    transform: translate(0, 100px);
}
.modal.modalCentered .modal-dialog {
    transform: translate(0, 0) !important;
}
.modal .modal-content {
    cursor: default !important;
}
.modal.fade:not(.show) {
    opacity: 0;
}

.bg-color-beige {
    background: conic-gradient(#c8ad7f 0deg 360deg);
}

.bg-color-black {
    background: conic-gradient(#000000 0deg 360deg);
}

.bg-color-blue {
    background: conic-gradient(#a8bcd4 0deg 360deg);
}

.bg-color-white {
    background: conic-gradient(#ffffff 0deg 360deg);
}

.bg-color-pink {
    background: conic-gradient(#fcc6de 0deg 360deg);
}

.bg-color-brown {
    background: conic-gradient(#977945 0deg 360deg);
}

.bg-color-light-purple {
    background: conic-gradient(#d966d9 0deg 360deg);
}

.bg-color-light-green {
    background: conic-gradient(#caffd6 0deg 360deg);
}

.bg-color-orange {
    background: conic-gradient(#ffa500 0deg 360deg);
}

.bg-color-light-blue {
    background: conic-gradient(#add8e6 0deg 360deg);
}

.bg-color-beige {
    background: conic-gradient(#c8ad7f 0deg 360deg);
}

.bg-color-black {
    background: conic-gradient(#000000 0deg 360deg);
}

.bg-color-blue {
    background: conic-gradient(#a8bcd4 0deg 360deg);
}

.bg-color-white {
    background: conic-gradient(#ffffff 0deg 360deg);
}

.bg-color-pink {
    background: conic-gradient(#fcc6de 0deg 360deg);
}

.bg-color-brown {
    background: conic-gradient(#977945 0deg 360deg);
}

.bg-color-light-purple {
    background: conic-gradient(#d966d9 0deg 360deg);
}

.bg-color-light-green {
    background: conic-gradient(#caffd6 0deg 360deg);
}

.bg-color-orange {
    background: conic-gradient(#ffa500 0deg 360deg);
}

.bg-color-light-blue {
    background: conic-gradient(#add8e6 0deg 360deg);
}

.bg-color-gray {
    background-color: rgb(177, 170, 152);
}

.bg-color-beige1 {
    background: rgb(223, 198, 184);
}

.bg-color-grey {
    background-color: rgb(158, 155, 150);
}

.bg-color-red {
    background-color: #dc2a35;
}

.tf-cart-checkbox {
    display: flex;
    align-items: center;
    cursor: pointer;
}
.tf-cart-checkbox .tf-checkbox-wrapp {
    min-width: 1.6rem;
    place-items: center;
    position: relative;
    overflow: hidden;
    display: flex;
}
.tf-cart-checkbox .tf-checkbox-wrapp input {
    cursor: pointer;
    display: block;
    width: 20px;
    height: 20px;
    transition: 0.2s ease-in-out;
    background-color: var(--White);
    opacity: 0;
}
.tf-cart-checkbox .tf-checkbox-wrapp input:checked + div {
    background-color: var(--Onsurface);
}
.tf-cart-checkbox .tf-checkbox-wrapp input:checked + div i {
    transform: scale(1);
}
.tf-cart-checkbox .tf-checkbox-wrapp div {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    transition: 0.25s ease-in-out;
    z-index: 5;
    border-radius: 4px;
    border: 1px solid var(--line);
    background-color: var(--White);
    color: var(--White);
    pointer-events: none;
}
.tf-cart-checkbox .tf-checkbox-wrapp div i {
    font-size: 11px;
    transform: scale(0);
}
.tf-cart-checkbox label {
    font-weight: 400;
    cursor: pointer;
}
.tf-cart-checkbox label a {
    text-decoration: underline;
    text-underline-offset: 2px;
}
.tf-cart-checkbox .wrap-content {
    display: none;
}
.tf-cart-checkbox.check .wrap-content {
    display: block;
}

.canvas-wrapper {
    padding: 0;
    isolation: isolate;
    height: 100%;
    width: 100%;
    max-height: none;
    display: grid;
    grid-auto-rows: auto minmax(0, 1fr) auto;
    align-content: start;
}

.canvas-body {
    background-color: var(--White);
    padding: 15px 20px;
    overscroll-behavior-y: contain;
    overflow-y: auto;
}
.canvas-body::-webkit-scrollbar {
    width: 5px;
}
.canvas-body::-webkit-scrollbar-track {
    background-color: var(--bg-scrollbar-track);
}
.canvas-body::-webkit-scrollbar-thumb {
    background: var(--bg-scrollbar-thumb);
    border-radius: 4px;
}

.modal {
    cursor: url(../images/cursor-close.svg), auto;
}
.modal .icon-close,
.modal .icon-close-popup {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.modal .icon-close:hover,
.modal .icon-close-popup:hover {
    color: var(--Primary);
    transform: rotate(90deg);
}
.modal.fullRight .modal-dialog {
    transform: translate(100%, 0);
    min-width: 100%;
    height: 100%;
    margin: 0;
    transition: transform 1s ease-out;
}
.modal.fullRight .modal-dialog .modal-content {
    border-radius: 0;
    border: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    padding: 0;
}
.modal.fullRight .modal-dialog .modal-content .modal-body {
    overflow: auto;
    padding: 0;
    padding-bottom: 30px;
}
.modal.fullRight.show .modal-dialog {
    transform: none;
    transition: transform 0.4s ease-out;
}
.modal.fullLeft .modal-dialog {
    transform: translate(-100%, 0) !important;
    min-width: 100%;
    height: 100%;
    margin: 0;
    transition: all 0.3s !important;
}
.modal.fullLeft .modal-dialog .modal-content {
    border-radius: 0;
    border: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    left: 0;
    bottom: 0;
    top: 0;
    padding: 0;
}
.modal.fullLeft .modal-dialog .modal-content .modal-body {
    overflow: auto;
    padding: 0;
    padding-bottom: 30px;
}
.modal.fullLeft.show .modal-dialog {
    transform: translate(0, 0) !important;
}
.modal.fullBottom .modal-dialog {
    transform: translate(0, 100%);
    min-width: 100%;
    height: 100%;
    max-height: unset;
    margin: 0;
    transition: transform 0.3s linear !important;
}
.modal.fullBottom .modal-dialog .modal-content {
    border-radius: 0;
    border: 0;
    margin: auto;
    overflow: hidden;
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0;
    max-height: max-content;
}
.modal.fullBottom .modal-dialog .modal-content .modal-body {
    overflow: auto;
    padding: 0;
    padding-bottom: 30px;
}
.modal.fullBottom.show .modal-dialog {
    transform: translate(0, 0);
}
.modal.modalCentered .modal-dialog {
    transform: translate(0, 0) !important;
}
.modal.fade:not(.show) {
    opacity: 0;
}
.modal .modal-content {
    cursor: default !important;
}

.modal-shopping-cart .modal-content {
    max-width: 708px;
    cursor: default !important;
    display: flex;
    flex-direction: row;
}
.modal-shopping-cart .tf-minicart-recommendations {
    width: 228px;
    flex-shrink: 0;
    padding: 24px 23px 24px 24px;
    border-right: 1px solid var(--line);
    display: flex;
    flex-direction: column;
}
.modal-shopping-cart .tf-minicart-recommendations .title {
    margin-bottom: 12px;
}
.modal-shopping-cart .tf-minicart-recommendations > .wrap-recommendations {
    flex-grow: 1;
    overflow-y: auto;
}
.modal-shopping-cart .tf-minicart-recommendations > .wrap-recommendations::-webkit-scrollbar {
    width: 0px;
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item:not(:last-child) {
    padding-bottom: 16px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 16px;
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item .image {
    width: 100%;
    height: 100%;
    max-height: 180px;
    margin-bottom: 12px;
    border-radius: 8px;
    overflow: hidden;
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item .name {
    margin-bottom: 4px;
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item .cart-item-bot {
    position: relative;
    overflow: hidden;
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item .cart-item-bot a {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transform: translateY(30px);
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item .price {
    transform: translateY(0px);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item:hover .price {
    transform: translateY(-30px);
}
.modal-shopping-cart .tf-minicart-recommendations .list-cart-item:hover .cart-item-bot a {
    transform: translateY(0);
}
.modal-shopping-cart .header {
    padding: 24px 24px 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.modal-shopping-cart .header .title {
    font-size: 20px;
}
.modal-shopping-cart .wrap {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.modal-shopping-cart .tf-mini-cart-threshold {
    margin: 0 24px;
    padding: 16px;
    background-color: rgb(245, 246, 236);
    border-radius: 12px;
}
.modal-shopping-cart .tf-mini-cart-threshold .tf-progress-bar {
    margin-top: 12px;
    margin-bottom: 16px;
    width: 100%;
    background-color: var(--White);
    height: 8px;
    position: relative;
}
.modal-shopping-cart .tf-mini-cart-threshold .tf-progress-bar div {
    height: 100%;
    background: linear-gradient(90deg, #19450f 0%, #3dab25 100%);
    position: relative;
    transition: width 2s ease;
}
.modal-shopping-cart .tf-mini-cart-threshold .tf-progress-bar .icon {
    position: absolute;
    left: 95%;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    border: 2px solid var(--Success);
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--White);
    border-radius: 50%;
    font-size: 20px;
}
.modal-shopping-cart .tf-mini-cart-wrap {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    position: relative;
}
.modal-shopping-cart .tf-mini-cart-wrap .tf-mini-cart-main {
    flex: 1 1 auto;
    position: relative;
}
.modal-shopping-cart .tf-mini-cart-wrap .tf-mini-cart-main .tf-mini-cart-sroll {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    overflow: auto;
}
.modal-shopping-cart .tf-mini-cart-wrap .tf-mini-cart-main .tf-mini-cart-sroll::-webkit-scrollbar {
    width: 8px;
}
.modal-shopping-cart .tf-mini-cart-wrap .tf-mini-cart-main .tf-mini-cart-sroll::-webkit-scrollbar-thumb {
    background: var(--Secondary2);
}
.modal-shopping-cart .tf-mini-cart-wrap .tf-mini-cart-main .tf-mini-cart-sroll::-webkit-scrollbar-track {
    background: var(--line);
}
.modal-shopping-cart .tf-mini-cart-wrap .tf-mini-cart-bottom {
    box-shadow: 5px 5px 18px 5px rgba(64, 72, 87, 0.15);
    flex-shrink: 0;
}
.modal-shopping-cart .tf-mini-cart-item {
    margin: 0 24px;
    padding: 20px 0 19px;
    display: flex;
    align-items: center;
    gap: 24px;
}
.modal-shopping-cart .tf-mini-cart-item:not(:last-child) {
    border-bottom: 1px solid var(--line);
}
.modal-shopping-cart .tf-mini-cart-item .tf-mini-cart-image {
    width: 100px;
    height: 100px;
    flex-shrink: 0;
    border-radius: 8px;
    overflow: hidden;
}
.modal-shopping-cart .tf-mini-cart-item .tf-mini-cart-image img {
    width: 100%;
    height: 100px;
    object-fit: cover;
}
.modal-shopping-cart .tf-mini-cart-item .content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.modal-shopping-cart .tf-mini-cart-item .content .left {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.modal-shopping-cart .tf-mini-cart-item .content .right {
    display: flex;
    flex-direction: column;
    gap: 12px;
    text-align: end;
}
.modal-shopping-cart .tf-mini-cart-item .tf-btn-remove {
    color: var(--Critical);
    text-decoration: underline;
    cursor: pointer;
}
.modal-shopping-cart .tf-mini-cart-item .wg-quantity {
    width: 95px;
    height: 30px;
}
.modal-shopping-cart .tf-mini-cart-item .wg-quantity input {
    width: 33px;
    height: 25px;
}
.modal-shopping-cart .tf-mini-cart-item .wg-quantity .btn-quantity {
    height: 24px;
    font-size: 22px;
}
.modal-shopping-cart .tf-mini-cart-tool {
    padding: 0 32px;
    height: 58px;
    display: flex;
    justify-content: center;
    border-bottom: 1px solid var(--line);
}
.modal-shopping-cart .tf-mini-cart-tool .tf-mini-cart-tool-btn {
    width: 100%;
    height: 100%;
    cursor: pointer;
    display: flex;
    gap: 12px;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.modal-shopping-cart .tf-mini-cart-bottom-wrap {
    padding: 24px 24px 20px;
}
.modal-shopping-cart .tf-mini-cart-bottom-wrap .tf-cart-totals-discounts {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
.modal-shopping-cart .tf-mini-cart-bottom-wrap .tf-cart-checkbox {
    margin-bottom: 24px;
}
.modal-shopping-cart .tf-mini-cart-bottom-wrap .tf-mini-cart-view-checkout {
    display: flex;
    gap: 16px;
    margin-bottom: 16px;
}
.modal-shopping-cart.style-empty .modal-content {
    max-width: 480px;
}
.modal-shopping-cart.style-empty .content-inner {
    text-align: center;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin: 12px 24px 0;
    padding: 0 20px;
}
.modal-shopping-cart.style-empty .content-inner h4 {
    margin-bottom: 8px;
}
.modal-shopping-cart.style-empty .content-inner p {
    margin-bottom: 24px;
}

.tf-mini-cart-tool-openable {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transform: translateY(100%);
    transition: transform 0.25s ease-in-out;
    z-index: 70;
    box-shadow: 0px 5px 18px 5px rgba(64, 72, 87, 0.15);
}
.tf-mini-cart-tool-openable.open {
    transform: translateY(0);
}
.tf-mini-cart-tool-openable.open > .overplay {
    opacity: 1;
    visibility: visible;
}
.tf-mini-cart-tool-openable .tf-mini-cart-tool-close {
    cursor: pointer;
}
.tf-mini-cart-tool-openable .tf-btn {
    height: 52px;
}
.tf-mini-cart-tool-openable .tf-mini-cart-tool-content {
    position: relative;
    z-index: 80;
    background-color: var(--White);
}
.tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-mini-cart-tool-text {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 18px 32px 17px;
    border-bottom: 1px solid var(--line);
}
.tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-mini-cart-tool-text .icon {
    display: flex;
}
.tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-mini-cart-tool-wrap {
    padding: 16px 24px 20px;
}
.tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-cart-tool-btns {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
    margin-top: 16px;
}
.tf-mini-cart-tool-openable .tf-mini-cart-tool-content .tf-cart-tool-btns button {
    border-radius: 4px;
}
.tf-mini-cart-tool-openable.add-note textarea {
    background-color: var(--line);
    color: var(--Onsurface);
}
.tf-mini-cart-tool-openable.add-note textarea::placeholder {
    color: var(--Onsurface);
}

.canvas-sidebar {
    max-width: min(90vw, 360px);
}
.canvas-sidebar .canvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0px 15px;
    background-color: var(--Surface);
    min-height: 40px;
}
.canvas-sidebar .canvas-header .icon-close-popup {
    font-size: 16px;
}
.canvas-sidebar .canvas-body {
    padding: 15px;
}
.canvas-sidebar .canvas-body .sidebar-account {
    padding: 32px 15px;
    border-radius: 12px;
}
.canvas-sidebar .canvas-body .sidebar-account .account-avatar {
    margin-bottom: 16px;
}
.canvas-sidebar .canvas-body .sidebar-account .my-account-nav .my-account-nav-item {
    padding: 10px;
    border-radius: 8px;
}

.modal-quick-view .wrap .header {
    margin-bottom: 40px;
}
.modal-quick-view .modal-content {
    max-width: min(856px, 90vw) !important;
    cursor: default !important;
    display: flex;
    flex-direction: row;
    overflow-y: scroll;
    max-height: 100vh;
}
.modal-quick-view .tf-quick-view-image {
    width: 42.525%;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    position: relative;
}
.modal-quick-view .tf-quick-view-image > .wrap-quick-view {
    flex-grow: 1;
    position: relative;
    padding: 24px;
    padding-right: 0;
    overflow: auto;
    height: 100vh;
    direction: rtl;
}
.modal-quick-view .tf-quick-view-image > .wrap-quick-view::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
.modal-quick-view .tf-quick-view-image > .wrap-quick-view::-webkit-scrollbar-track {
    background-color: var(--line);
}
.modal-quick-view .tf-quick-view-image > .wrap-quick-view::-webkit-scrollbar-thumb {
    background: var(--Secondary2);
}
.modal-quick-view .tf-quick-view-image .quickView-item {
    max-width: 340px;
    max-height: 340px;
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
}
.modal-quick-view .tf-quick-view-image .quickView-item:not(:last-child) {
    margin-bottom: 30px;
}
.modal-quick-view .tf-quick-view-image .quickView-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.modal-quick-view .wrap {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    height: 100%;
    padding: 24px 24px 48px;
    overflow-y: auto;
}
.modal-quick-view .wrap::-webkit-scrollbar {
    width: 8px;
    position: absolute;
    left: 0;
}
.modal-quick-view .wrap::-webkit-scrollbar-thumb {
    background: var(--Secondary2);
}
.modal-quick-view .wrap::-webkit-scrollbar-track {
    background: var(--line);
}
.modal-quick-view .wrap .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.icon-close-popup {
    font-size: 16px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--Surface);
    border-radius: 50%;
    cursor: pointer;
}

.tf-compare-table {
    overflow-x: scroll;
}
.tf-compare-table::-webkit-scrollbar {
    height: 4px;
}
.tf-compare-table::-webkit-scrollbar-thumb {
    background: var(--line);
}

.tf-compare-row {
    display: flex;
}
.tf-compare-row:nth-child(2n+2) > div {
    background-color: var(--Surface);
}
.tf-compare-row .tf-compare-col:first-child {
    min-width: 242px;
}
.tf-compare-row:not(:first-child) .tf-compare-col:first-child {
    border-left: 1px solid var(--line);
}
.tf-compare-row:first-child .tf-compare-col:first-child {
    border: 0;
}
.tf-compare-row:first-child .tf-compare-col:not(:first-child) {
    border-top: 1px solid var(--line);
}
.tf-compare-row:first-child .tf-compare-col:nth-child(2) {
    border-left: 1px solid var(--line);
    border-top-left-radius: 8px;
}
.tf-compare-row:first-child .tf-compare-col:last-child {
    border-top-right-radius: 8px;
}
.tf-compare-row:nth-child(2) .tf-compare-col:first-child {
    border-top-left-radius: 8px;
    border-top: 1px solid var(--line);
}
.tf-compare-row:last-child .tf-compare-col:first-child {
    border-bottom-left-radius: 8px;
}
.tf-compare-row:last-child .tf-compare-col:last-child {
    border-bottom-right-radius: 8px;
}

.tf-compare-col {
    min-width: 350px;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    flex-grow: 1;
    position: relative;
}

.tf-compare-item {
    padding: 15px 20px;
}
.tf-compare-item .tf-compare-image {
    max-width: 220px;
    border-radius: 8px;
    overflow: hidden;
    display: block;
    margin: 0 auto;
}
.tf-compare-item .tf-compare-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tf-compare-item .tf-compare-content {
    display: grid;
    margin-top: 16px;
    gap: 4px;
    text-align: center;
}

.tf-compare-field {
    padding: 15px;
}

.tf-compare-value {
    display: flex;
    align-items: center;
    justify-content: center;
}

.tf-compare-stock {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 500;
    color: #83b735;
}
.tf-compare-stock .icon {
    width: 16px;
    height: 16px;
    background-color: #83b735;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.tf-compare-stock .icon i {
    color: var(--White);
    font-size: 7px;
}

.btn-view-cart {
    padding: 3px 20px;
    border-radius: 8px;
    background-color: var(--Onsurface);
    color: var(--White);
    font-size: 14px;
    line-height: 22px;
    border-radius: 99px;
    text-transform: capitalize;
}
.btn-view-cart:hover {
    background-color: var(--Primary);
}

.list-compare-color {
    display: flex;
    gap: 8px;
}
.list-compare-color .item {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid transparent;
}
.list-compare-color .item.active {
    border-color: var(--Onsurface);
}

.tf-compare-rate {
    display: flex;
    gap: 7px;
    align-items: center;
    justify-content: center;
}
.tf-compare-rate .list-star {
    display: flex;
    align-items: center;
}
.tf-compare-rate .list-star .icon {
    font-size: 16px;
    color: var(--Yellow);
}
.tf-compare-rate .list-star .icon:last-child {
    color: var(--Secondary2);
}

.modal-compare .modal-dialog {
    max-width: 1340px !important;
}
.modal-compare .modal-content {
    padding: 23px;
    border-radius: 20px;
    position: relative;
}
.modal-compare .modal-content .icon-close {
    position: absolute;
    top: 24px;
    right: 24px;
    height: 40px;
    width: 40px;
    background-color: var(--Surface);
    border-radius: 999px;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tf-product-modal .modal-dialog {
    max-width: min(625px, 90vw);
}
.tf-product-modal .modal-dialog .modal-content {
    padding: 38px 36px 40px;
    margin-left: 0;
    margin-right: 0;
    border: 0;
}
.tf-product-modal .modal-dialog .modal-content .header {
    margin-bottom: 24px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.tf-product-modal .modal-dialog .modal-content .header .demo-title {
    margin: 0;
    text-align: start;
    font-size: 26px;
    font-weight: 400;
    line-height: 31px;
}
.tf-product-modal .modal-dialog .modal-content .header span {
    position: unset;
    color: var(--main);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tf-product-modal .modal-dialog .modal-content .header span:hover {
    color: var(--Primary);
}
.tf-product-modal .modal-dialog .modal-content h6 {
    font-weight: 600;
    line-height: 24px;
    margin-bottom: 25px;
}
.tf-product-modal .modal-dialog .modal-content .title {
    font-size: 18px;
    font-weight: 600;
    line-height: 22px;
    margin-top: 15px;
}
.tf-product-modal .modal-dialog .modal-content p {
    margin-top: 15px;
    margin-bottom: 20px;
}
.tf-product-modal .tf-social-icon .box-icon {
    width: 40px;
    height: 40px;
    border-radius: 999px;
    font-size: 16px;
    color: var(--White);
}
.tf-product-modal .form-share {
    margin-top: 20px;
    position: relative;
}
.tf-product-modal .form-share .button-submit {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0px;
}
.tf-product-modal .form-share .button-submit .tf-btn {
    padding: 10px 18px;
}
.tf-product-modal .form-share input {
    padding-right: 80px;
}

#ask_question fieldset {
    margin-bottom: 15px;
}
#ask_question fieldset label {
    margin-bottom: 5px;
    font-weight: 400;
    color: var(--Onsurface);
}
#ask_question fieldset input {
    height: 50px;
}
#ask_question textarea {
    height: 176px;
}
#ask_question button {
    border-radius: 4px;
}

#delivery_return .tf-product-popup-delivery .title {
    font-size: 20px;
    font-weight: 400;
    line-height: 36px;
    margin-bottom: 25px;
    margin-top: 0;
}
#delivery_return .tf-product-popup-delivery p {
    color: rgb(134, 134, 134);
    line-height: 22.4px;
    margin-bottom: 10px;
}
#delivery_return .tf-product-popup-delivery p a {
    color: rgb(134, 134, 134);
    text-decoration: underline;
    text-underline-offset: 3px;
}
#delivery_return .tf-product-popup-delivery p a:hover {
    color: var(--Onsurface);
    text-decoration-thickness: 2px;
}
#delivery_return .tf-product-popup-delivery:not(:last-child) {
    margin-bottom: 20px;
}

#quick_add .modal-dialog {
    max-width: min(466px, 90vw);
}
#quick_add .modal-content {
    margin: 8px;
    padding: 30px 0px 30px;
}
#quick_add .modal-content > .wrap {
    overflow-y: auto;
    padding: 0px 20px;
}
#quick_add .modal-content > .wrap::-webkit-scrollbar {
    width: 2px;
}
#quick_add .modal-content .icon-close-popup {
    top: 0px;
    right: 20px;
}
#quick_add .tf-product-info-item {
    margin-bottom: 15px;
    display: flex;
    gap: 18px;
    align-items: center;
}
#quick_add .tf-product-info-item .image img {
    width: 70px;
    height: 98px;
}
#quick_add .tf-product-info-item .content {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
#quick_add .tf-product-info-item .content a {
    font-size: 20px;
    line-height: 24px;
}
#quick_add .tf-product-info-item .content .price {
    font-size: 20px;
    line-height: 20px;
}
#quick_add .payment-more-option {
    text-decoration: none;
}
#quick_add .payment-more-option:hover {
    text-decoration: underline;
}

.bg-color-beige {
    background: conic-gradient(#c8ad7f 0deg 360deg);
}

.bg-color-black {
    background: conic-gradient(#000000 0deg 360deg);
}

.bg-color-blue {
    background: conic-gradient(#a8bcd4 0deg 360deg);
}

.bg-color-white {
    background: conic-gradient(#ffffff 0deg 360deg);
}

.bg-color-pink {
    background: conic-gradient(#fcc6de 0deg 360deg);
}

.bg-color-brown {
    background: conic-gradient(#977945 0deg 360deg);
}

.bg-color-light-purple {
    background: conic-gradient(#d966d9 0deg 360deg);
}

.bg-color-light-green {
    background: conic-gradient(#caffd6 0deg 360deg);
}

.bg-color-orange {
    background: conic-gradient(#ffa500 0deg 360deg);
}

.bg-color-light-blue {
    background: conic-gradient(#add8e6 0deg 360deg);
}

.bg-color-gray {
    background-color: rgb(177, 170, 152);
}

.bg-color-beige1 {
    background: rgb(223, 198, 184);
}

.bg-color-grey {
    background-color: rgb(158, 155, 150);
}

.bg-color-red {
    background-color: #dc2a35;
}

.modal-search .icon-close-popup {
    font-size: 16px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--surface);
    border-radius: 50%;
    cursor: pointer;
}
.modal-search .modal-dialog {
    max-width: 1100px;
}
.modal-search .modal-content {
    margin-right: 15px;
    margin-left: 15px;
    border: 0;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 32px;
}
.modal-search .tf-loading {
    border-radius: 4px;
    border: 1px solid var(--main);
    margin-left: auto;
    margin-right: auto;
    width: 163px;
    height: 52px;
    justify-content: center;
}
.modal-search .tf-loading::before {
    border-color: var(--white);
}
.modal-search .tf-grid-layout {
    overflow-y: auto;
    padding-right: 34px;
    margin-right: -40px;
    min-height: 100px;
    transition: height 0.3s ease;
}
.modal-search .tf-grid-layout::-webkit-scrollbar {
    width: 6px;
}
.modal-search .tf-grid-layout::-webkit-scrollbar-thumb {
    background: var(--secondary);
}

.modal-size-guide .modal-dialog {
    max-width: 1157px;
}
.modal-size-guide .modal-content {
    border: 0;
    padding: 40px;
}
.modal-size-guide .modal-content .header {
    width: max-content;
    margin-bottom: 32px;
}
.modal-size-guide .modal-content .header .icon-close-popup {
    position: absolute;
    top: 20px;
    right: 20px;
    font-size: 16px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--surface);
    border-radius: 50%;
    cursor: pointer;
}
.modal-size-guide .modal-content .wrap {
    min-height: 325px;
}

.tab-sizeguide-table {
    border: 1px solid var(--line);
    border-radius: 5px;
    width: 100%;
}
.tab-sizeguide-table th {
    border: 1px solid var(--line);
    padding: 10px;
    font-weight: 600;
    line-height: 20px;
}
.tab-sizeguide-table td {
    border: 1px solid var(--line);
    border-width: 0 1px 1px 0;
    padding: 10px;
    line-height: 20px;
}

.hover-cursor-img .hover-image {
    display: none;
}

.canvas-categories .canvas-header .icon-close {
    font-size: 14px;
}
.canvas-categories .canvas-header .icon-left {
    font-size: 24px;
}
.canvas-categories .wd-facet-categories {
    padding: 12px 0px;
    border-bottom: 1px solid var(--line);
}
.canvas-categories .wd-facet-categories:first-child {
    padding-top: 0;
}
.canvas-categories .wd-facet-categories:last-child {
    border: none;
}
.canvas-categories .wd-facet-categories .avt {
    width: 32px;
    height: 32px;
    border-radius: 50%;
}
.canvas-categories .wd-facet-categories .facet-title {
    display: flex;
    align-items: center;
    gap: 16px;
}
.canvas-categories .wd-facet-categories .facet-title .title {
    flex-grow: 1;
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
}
.canvas-categories .wd-facet-categories .facet-title .icon {
    font-size: 16px;
}
.canvas-categories .wd-facet-categories .facet-body {
    margin-top: 12px;
    padding: 8px 10px;
}
.canvas-categories .wd-facet-categories .facet-body li .item {
    display: flex;
    align-items: center;
    gap: 8px;
}
.canvas-categories .wd-facet-categories .facet-body li a span {
    color: var(--main) !important;
}
.canvas-categories .wd-facet-categories .facet-body li:not(:last-child) .item {
    margin-bottom: 16px;
}

/*------------ box icon ---------------- */
.tf-social-icon {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 12px;
}
.tf-social-icon li a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    border-radius: 999px;
    border: 1px solid var(--Onsurface);
}
.tf-social-icon li:hover a {
    background-color: var(--Onsurface);
    color: var(--White);
}
.tf-social-icon.style-2 {
    background-color: var(--White);
    flex-direction: column;
    width: max-content;
    padding: 8px;
}
.tf-social-icon.style-2 li a {
    height: 36px;
    width: 36px;
    border: 1px solid var(--line);
    font-size: 20px;
}
.tf-social-icon.type-1 li a {
    background-color: var(--Surface);
    border: 0;
}
.tf-social-icon.type-1 li:hover a {
    background-color: var(--Onsurface);
}
.tf-social-icon.type-2 {
    gap: 28px;
}
.tf-social-icon.type-2 a {
    color: var(--White);
    font-size: 24px;
    border: 0;
    width: 24px;
    height: 24px;
}
.tf-social-icon.type-2 a:hover {
    color: var(--Primary);
    background-color: transparent;
}

.tf-box-icon .icon {
    font-size: 60px;
    margin-bottom: 20px;
}
.tf-box-icon .title {
    margin-bottom: 8px;
}
.tf-box-icon p {
    color: var(--Secondary);
}

/*------------ hover ---------------- */
.hover-tooltip {
    position: relative;
}
.hover-tooltip .tooltip {
    position: absolute;
    white-space: nowrap;
    padding: 0px 8.5px;
    height: 25px;
    border-radius: 2px;
    bottom: calc(100% + 7px);
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    visibility: hidden;
    color: var(--White);
    max-width: 250px;
    width: max-content;
    background-color: var(--Onsurface);
    transition: transform 0.4s ease 0.2s, opacity 0.4s ease 0.2s;
    z-index: 5;
    font-size: 12px;
    line-height: 22px;
}
.hover-tooltip .tooltip::before {
    content: "";
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    top: 20px;
    position: absolute;
    background: var(--Onsurface);
    width: 8px;
    height: 8px;
    z-index: -1;
}
.hover-tooltip:hover .tooltip {
    opacity: 1;
    visibility: visible;
}
.hover-tooltip.tooltip-bot .tooltip {
    top: calc(100% + 5px);
    bottom: unset;
}
.hover-tooltip.tooltip-bot .tooltip::before {
    top: -2px;
}

.hover-img .article-thumb,
.hover-img .img-style {
    overflow: hidden;
}
.hover-img .article-thumb img,
.hover-img .img-style img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    -webkit-transition: opacity 0.5s ease, transform 2s cubic-bezier(0, 0, 0.44, 1.18);
    transition: opacity 0.5s ease, transform 2s cubic-bezier(0, 0, 0.44, 1.18);
}
.hover-img:hover .article-thumb img,
.hover-img:hover .img-style img {
    -webkit-transform: scale(1.06);
    transform: scale(1.06);
}
.hover-img .img-style2 {
    overflow: hidden;
    border-radius: 10px;
}
.hover-img .img-style2 .img-hv {
    width: 100%;
    object-fit: cover;
    -webkit-transition: all 1s cubic-bezier(0.3, 1, 0.35, 1) 0s;
    transition: all 1s cubic-bezier(0.3, 1, 0.35, 1) 0s;
    transition: transform 500ms ease;
}

/*------------ collection ---------------- */
.tf-img-with-text {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background-color: var(--Surface);
    border-radius: 12px;
    overflow: hidden;
}
.tf-img-with-text .banner-left {
    padding: 30px 30px 30px 15px;
}
.tf-img-with-text .banner-left .tab-banner {
    margin-bottom: 30px;
}

.tf-img-with-text-3 {
    background-color: var(--Surface);
    border-radius: 16px;
    overflow: hidden;
}
.tf-img-with-text-3 .content-left {
    padding: 40px 0;
}
.tf-img-with-text-3 .tf-countdown {
    position: absolute;
    bottom: 28px;
    left: 50%;
    max-width: 400px;
    width: 400px;
    transform: translateX(-50%);
}
.tf-img-with-text-3 .tf-product-single {
    max-width: 360px;
    position: relative;
}
.tf-img-with-text-3 .sw-product-single-next {
    right: 8.5%;
    top: 37%;
}
.tf-img-with-text-3 .sw-product-single-prev {
    left: 8.5%;
    top: 37%;
}
.tf-img-with-text-3 .image-wrap {
    height: 100%;
}
.tf-img-with-text-3 .image-wrap img {
    height: 100%;
}

.collection-position {
    display: flex;
    position: relative;
    height: 100%;
}
.collection-position .img-style {
    overflow: hidden;
    position: relative;
    height: 100%;
}
.collection-position .img-style img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.collection-position:not(.collection-position.style-3, .collection-position.style-4) .img-style::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgb(24, 24, 24);
    left: 0;
    z-index: -1;
    top: 0;
}
.collection-position:not(.collection-position.style-3, .collection-position.style-4) .img-style img {
    opacity: 0.5;
}
.collection-position:not(.collection-position.style-2, .collection-position.style-3, .collection-position.style-4, .collection-position.style-5, .collection-position.style-full) .content {
    max-width: 360px;
    top: 50%;
    transform: translateY(-50%);
}
.collection-position:not(.collection-position.style-2, .collection-position.style-3, .collection-position.style-4, .collection-position.style-5, .collection-position.style-full) .content.w-full {
    max-width: 100%;
}
.collection-position .content {
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 5;
}
.collection-position .content .cls-heading {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 28px;
}
.collection-position.style-2 .img-style, .collection-position.style-5 .img-style {
    overflow: hidden;
    border-radius: 12px;
}
.collection-position.style-2 .img-style img, .collection-position.style-5 .img-style img {
    opacity: 0.6;
}
.collection-position.style-2 .content, .collection-position.style-5 .content {
    text-align: start;
    max-width: 100%;
    margin: 0 15px;
    top: unset;
    bottom: 40px;
    transform: unset;
}
.collection-position.style-2 .content .cls-heading, .collection-position.style-5 .content .cls-heading {
    text-align: start;
    gap: 9px;
    margin-bottom: 20px;
}
.collection-position.style-2.spacing-1 .content {
    margin: 0 28px;
    bottom: 29px;
}
.collection-position.style-2.spacing-1 .content .cls-heading {
    margin-bottom: 12px;
    gap: 4px;
}
.collection-position.style-2.spacing-2 {
    max-height: 555px;
}
.collection-position.style-2.spacing-2 .content {
    bottom: 40px;
}
.collection-position.style-3 .img-style {
    border-radius: 12px;
}
.collection-position.style-3 .img-style::after {
    display: none;
}
.collection-position.style-3 .content {
    max-width: 100%;
    margin: 0 20px;
    bottom: 20px;
    top: unset;
    transform: unset;
}
.collection-position.style-4 .img-style {
    border-radius: 20px;
}
.collection-position.style-4 .content h4 {
    font-size: 28px;
}
.collection-position.style-4 .content h6 {
    font-size: 18px;
    text-align: left;
}
.collection-position.style-4 .content {
    background-color: var(--White);
    left: 16px;
    right: 16px;
    bottom: 16px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0px;
    padding: 16px 20px;
    flex-direction: column;
}
.collection-position.style-6 .cls-heading a {
    display: inline;
    background-repeat: no-repeat;
    background-position-y: 0px;
    background-image: linear-gradient(transparent calc(100% - 1px), currentColor 1px);
    transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-size: 0 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.collection-position.style-6 .cls-heading a:hover {
    background-size: 100% 100%;
    transition-delay: 0.2s;
    color: var(--White) !important;
}
.collection-position.style-full .img-style {
    border-radius: 16px;
    overflow: hidden;
    min-height: 230px;
}
.collection-position.style-full .content {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.collection-position.style-full h1 {
    font-size: 30px;
    line-height: 38px;
}
.collection-position .img-style.no-opacity img {
    opacity: unset !important;
}
.collection-position.has-over a {
    display: inline;
    background-repeat: no-repeat;
    background-position-y: 0px;
    background-image: linear-gradient(transparent calc(100% - 1px), currentColor 1px);
    transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-size: 0 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.collection-position.has-over a:hover {
    background-size: 100% 100%;
    transition-delay: 0.2s;
    color: var(--White) !important;
}
.collection-position.has-over .img-style::after {
    position: absolute;
    content: "";
    inset: 0;
    background-color: var(--Onsurface) !important;
    opacity: 0.6;
    z-index: 1 !important;
}

/*------------ product ---------------- */
.card-product .card-product-wrapper {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    z-index: 20;
    margin-bottom: 16px;
}
.card-product .card-product-wrapper .image-wrap {
    display: flex;
    width: 100%;
    height: 100%;
    position: relative;
}
.card-product .card-product-wrapper img {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    transition-duration: 700ms;
}
.card-product .card-product-wrapper .img-hover {
    position: absolute;
    inset: 0;
    opacity: 0;
}
.card-product .card-product-wrapper:hover .image-wrap .img-product {
    opacity: 0;
}
.card-product .card-product-wrapper:hover .image-wrap .img-hover {
    display: block;
    z-index: 1;
    opacity: 1;
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}
.card-product .card-product-wrapper .on-sale-wrap {
    position: absolute;
    top: 5px;
    right: 5px;
    left: 5px;
    z-index: 5;
    display: flex;
}
.card-product .card-product-wrapper .on-sale-wrap .on-sale-item {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    word-break: break-word;
    width: 48px;
    font-size: 14px;
    text-align: center;
    line-height: 22px;
    letter-spacing: 1px;
    text-transform: capitalize;
    position: relative;
    background-color: var(--Critical);
    color: var(--White);
    border-radius: 144px;
}
.card-product .list-product-btn {
    position: absolute;
    display: flex;
    flex-direction: column;
    gap: 5px;
    top: 5px;
    right: 5px;
    z-index: 10;
}
.card-product .box-icon {
    cursor: pointer;
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 3px;
    background-color: var(--White);
    color: var(--Onsurface);
    position: relative;
    z-index: 6;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.card-product .box-icon .icon {
    font-size: 20px;
}
.card-product .box-icon svg {
    width: 18px;
}
.card-product .box-icon svg path {
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
}
.card-product .box-icon.active, .card-product .box-icon:hover {
    background-color: var(--Onsurface) !important;
    color: var(--White) !important;
    border-color: var(--Onsurface) !important;
}
.card-product .box-icon:hover .tooltip {
    opacity: 1;
    visibility: visible;
    transform: translateX(-8px);
    transition-delay: 0.1s;
}
.card-product .box-icon:hover svg path {
    stroke: var(--White);
}
.card-product .card-product-info {
    display: grid;
    gap: 4px;
}
.card-product .card-product-info .price {
    display: flex;
    gap: 8px;
    align-items: center;
}
.card-product .card-product-info .price .old-price {
    text-decoration: line-through;
    color: var(--Secondary2);
}
.card-product .tooltip {
    z-index: 202;
    opacity: 0;
    visibility: hidden;
    display: none;
    position: absolute;
    right: 100%;
    border-radius: 2px;
    white-space: nowrap;
    background-color: var(--Onsurface);
    color: var(--White);
    font-weight: 400;
    font-size: 12px;
    line-height: 12px;
    padding: 6px 8px 8px;
    max-width: 250px;
    width: max-content;
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s cubic-bezier(0.71, 1.7, 0.77, 1.24), -webkit-transform 0.3s cubic-bezier(0.71, 1.7, 0.77, 1.24);
}
.card-product .tooltip::before {
    content: "";
    top: 50%;
    left: unset;
    transform: translateY(-50%) rotate(45deg);
    right: -4px;
    position: absolute;
    background: var(--Onsurface);
    width: 8px;
    height: 8px;
    z-index: 100;
}
.card-product .list-btn-main {
    position: absolute;
    bottom: 12px;
    left: 12px;
    right: 12px;
    z-index: 5;
    transition: 0.3s ease-out 0s;
    display: flex;
    align-items: center;
}
.card-product .list-btn-main .tooltip {
    font-size: 10px;
    line-height: 12px;
    padding: 6px 4px 8px;
}
.card-product .btn-main-product {
    flex-grow: 1;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 8px;
    letter-spacing: 1px;
    border: 1px solid transparent;
    font-size: 12px;
    line-height: 22px;
    background-color: var(--White);
    color: var(--Onsurface);
    border-radius: 44px;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    text-align: center;
    white-space: nowrap;
    text-transform: capitalize;
}
.card-product .btn-main-product:hover {
    background-color: var(--Onsurface);
    color: var(--White);
}
.card-product.style-1 .card-product-wrapper, .card-product.style-list .card-product-wrapper {
    border-radius: 8px;
}
.card-product.style-list {
    display: flex;
    gap: 15px;
    align-items: center;
}
.card-product.style-list .card-product-wrapper {
    max-width: 360px;
    width: 40%;
    margin-bottom: 0;
}
.card-product.style-list .card-product-info {
    flex: 1 1 auto;
    padding: 0 !important;
    display: flex;
    flex-direction: column;
    justify-content: start;
    max-width: 60%;
}
.card-product.style-list .list-product-btn {
    flex-direction: row;
    position: unset;
    justify-content: flex-start;
    gap: 12px;
}
.card-product.style-list .list-product-btn .box-icon {
    border: 2px solid var(--line);
}
.card-product.style-list .list-product-btn .box-icon .icon {
    font-size: 24px;
}
.card-product.style-list .list-product-btn .disable {
    background-color: var(--Surface);
    border: none !important;
    position: relative;
    color: var(--Secondary2);
    pointer-events: none;
}
.card-product.style-list .list-product-btn .disable::after, .card-product.style-list .list-product-btn .disable::before {
    content: "";
    position: absolute;
    width: 100%;
    border-bottom: 1.2px dashed #dddddd;
    transform: rotate(-45deg);
}
.card-product.style-list .list-product-btn .disable::before {
    transform: rotate(45deg);
}
.card-product.style-list .list-product-btn.size-box {
    flex-wrap: wrap;
}
.card-product.style-list .btn-main-product {
    border: 2px solid var(--line);
    max-width: 272px;
    width: 100%;
    height: 32px;
    text-transform: unset;
}
.card-product.style-list .btn-main-product:hover {
    border-color: var(--Onsurface);
}
.card-product.style-list .variant-wrap-list {
    margin-top: 28px;
    display: grid;
    gap: 28px;
}
.card-product.style-list .list-color-product {
    padding: 0;
}
.card-product.style-list .box-icon .tooltip, .card-product.style-2 .box-icon .tooltip, .card-product.style-4 .box-icon .tooltip,
.card-product .list-btn-main .box-icon .tooltip {
    top: -100%;
    margin-top: 5px;
    margin-right: 0;
    transform: translateY(8px);
    right: unset;
}
.card-product.style-list .box-icon .tooltip::before, .card-product.style-2 .box-icon .tooltip::before, .card-product.style-4 .box-icon .tooltip::before,
.card-product .list-btn-main .box-icon .tooltip::before {
    top: 85%;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    right: unset;
}
.card-product.style-list .box-icon:hover .tooltip, .card-product.style-2 .box-icon:hover .tooltip, .card-product.style-4 .box-icon:hover .tooltip,
.card-product .list-btn-main .box-icon:hover .tooltip {
    transform: none;
}
.card-product.style-2 .list-product-btn, .card-product.style-4 .list-product-btn {
    flex-direction: row;
    left: 50%;
    transform: translateX(-50%);
    right: unset;
    top: unset;
    bottom: 10px;
    gap: 8px;
}
.card-product.style-2 .list-product-btn .box-icon, .card-product.style-4 .list-product-btn .box-icon {
    height: 40px;
    width: 40px;
}
.card-product.style-2 .list-product-btn .box-icon:hover .tooltip, .card-product.style-4 .list-product-btn .box-icon:hover .tooltip {
    transform: none;
}
.card-product.style-3 .list-btn-main {
    gap: 8px;
}
.card-product.style-4 .list-product-btn {
    gap: 0;
}
.card-product.style-4 .list-product-btn .box-icon {
    border-radius: 0;
}
.card-product.style-4 .list-product-btn .box-icon:not(:last-child) {
    border-right: 1px solid var(--line);
}
.card-product.style-5 .btn-quickview {
    display: none;
}

.list-color-product {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 3px 0;
}
.list-color-product .list-color-item {
    width: 24px;
    height: 24px;
    border: 1px solid transparent;
    background-color: transparent;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    -o-transition: all 0.4s ease;
    transition: all 0.4s ease;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.list-color-product .list-color-item .swatch-value {
    width: 100%;
    height: 100%;
    border: 3px solid transparent;
    display: inline-block;
    border-radius: 50%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.list-color-product .list-color-item img {
    visibility: hidden;
    width: 18px;
    height: 18px;
    position: absolute;
}
.list-color-product .list-color-item.line {
    border: 1px solid var(--line);
}
.list-color-product .list-color-item.active, .list-color-product .list-color-item:hover {
    border-color: var(--Onsurface);
}
.list-color-product .list-color-item.active .swatch-value, .list-color-product .list-color-item:hover .swatch-value {
    border-color: var(--White);
}

.grid-test-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
}

.tf-product-info-list .tf-product-info-heading {
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 20px;
}
.tf-product-info-list .tf-product-tag {
    padding: 0 8px;
    border: 1px solid var(--Onsurface);
    border-radius: 4px;
}
.tf-product-info-list .tf-product-info-name {
    margin-bottom: 20px;
}
.tf-product-info-list .tf-product-info-name > .text {
    color: var(--Secondary2);
    letter-spacing: 0.1em;
    margin-bottom: 4px;
}
.tf-product-info-list .tf-product-info-name .name {
    margin-bottom: 12px;
}
.tf-product-info-list .tf-product-info-name > .sub {
    display: flex;
    align-items: center;
    gap: 10px 16px;
    flex-wrap: wrap;
}
.tf-product-info-list .tf-product-info-rate {
    display: flex;
    gap: 4px;
    align-items: center;
}
.tf-product-info-list .tf-product-info-rate .list-start {
    display: flex;
}
.tf-product-info-list .tf-product-info-rate .icon {
    font-size: 15px;
}
.tf-product-info-list .tf-product-info-rate .text {
    color: var(--Secondary);
}
.tf-product-info-list .tf-product-info-sold {
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    align-items: center;
}
.tf-product-info-list .tf-product-info-sold svg {
    animation: tf-ani-flash 2s infinite;
}
.tf-product-info-list .tf-product-info-desc {
    display: flex;
    gap: 12px;
    flex-direction: column;
}
.tf-product-info-list .tf-product-info-desc > p {
    color: var(--Secondary);
}
.tf-product-info-list .tf-product-info-liveview {
    display: flex;
    gap: 8px;
    align-items: center;
}
.tf-product-info-list .tf-product-info-liveview .icon {
    font-size: 20px;
}
.tf-product-info-list .tf-product-info-choose-option {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.tf-product-info-list .tf-product-info-by-btn {
    display: flex;
    align-items: center;
    gap: 10px;
}
.tf-product-info-list .tf-product-info-by-btn .box-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    flex-shrink: 0;
    border-radius: 50%;
    border: 2px solid var(--line);
    font-size: 24px;
}
.tf-product-info-list .tf-product-info-by-btn .box-icon:hover, .tf-product-info-list .tf-product-info-by-btn .box-icon.active {
    background-color: var(--Onsurface);
    color: var(--White);
    border-color: var(--Onsurface);
}
.tf-product-info-list .tf-product-info-help {
    padding-bottom: 19px;
    border-bottom: 1px solid var(--line);
    display: flex;
    flex-direction: column;
    gap: 11px;
}
.tf-product-info-list .tf-product-info-help .tf-product-info-extra-link {
    display: flex;
    gap: 15px 34px;
    align-items: center;
    flex-wrap: wrap;
}
.tf-product-info-list .tf-product-info-help .tf-product-info-extra-link .tf-product-extra-icon {
    display: flex;
    gap: 4px;
    align-items: center;
    position: relative;
}
.tf-product-info-list .tf-product-info-help .tf-product-info-extra-link .tf-product-extra-icon .icon {
    font-size: 20px;
    line-height: 20px;
}
.tf-product-info-list .tf-product-info-help .tf-product-info-extra-link .tf-product-extra-icon:not(:last-child)::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 20px;
    right: -18px;
    top: 1px;
    background-color: var(--line);
}
.tf-product-info-list .tf-product-info-help .tf-product-info-available,
.tf-product-info-list .tf-product-info-help .tf-product-info-return,
.tf-product-info-list .tf-product-info-help .tf-product-info-time {
    display: flex;
    gap: 4px;
    align-items: center;
}
.tf-product-info-list .tf-product-info-help .tf-product-info-available .icon,
.tf-product-info-list .tf-product-info-help .tf-product-info-return .icon,
.tf-product-info-list .tf-product-info-help .tf-product-info-time .icon {
    font-size: 20px;
    line-height: 20px;
}
.tf-product-info-list .tf-product-info-help .tf-product-info-available p,
.tf-product-info-list .tf-product-info-help .tf-product-info-return p,
.tf-product-info-list .tf-product-info-help .tf-product-info-time p {
    color: var(--Secondary);
}
.tf-product-info-list .tf-product-info-help .tf-product-info-available p span,
.tf-product-info-list .tf-product-info-help .tf-product-info-return p span,
.tf-product-info-list .tf-product-info-help .tf-product-info-time p span {
    color: var(--Onsurface);
}
.tf-product-info-list .tf-product-info-help .tf-product-info-view {
    display: flex;
    gap: 4px;
    align-items: center;
}
.tf-product-info-list .tf-product-info-help .tf-product-info-view .icon {
    font-size: 20px;
    line-height: 20px;
}
.tf-product-info-list .tf-product-info-help .tf-product-info-view span {
    text-decoration: underline;
    font-size: 14px;
    line-height: 22px;
}
.tf-product-info-list ul.tf-product-info-sku {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-bottom: 19px;
    border-bottom: 1px solid var(--line);
}
.tf-product-info-list ul.tf-product-info-sku li {
    display: flex;
    align-items: center;
    gap: 4px;
}
.tf-product-info-list ul.tf-product-info-sku li .text-1 {
    color: var(--Secondary);
}
.tf-product-info-list .tf-product-info-guranteed {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}
.tf-product-info-list .tf-product-info-guranteed .tf-payment {
    display: flex;
    gap: 12px;
}
.tf-product-info-list .tf-product-info-guranteed a img {
    width: 50px;
}
.tf-product-info-list .wg-quantity {
    width: 180px;
}
.tf-product-info-list .wg-quantity .btn-quantity {
    height: 44px;
    font-size: 30px;
}
.tf-product-info-list .wg-quantity input {
    pointer-events: none;
}
.tf-product-info-list .list-star-default {
    gap: 0;
}
.tf-product-info-list .list-star-default .icon {
    color: var(--Onsurface);
    font-size: 16px;
}
.tf-product-info-list .tf-btn {
    padding: 0 15px;
    flex-wrap: wrap;
}
.tf-product-info-list .tf-product-info-oppen a {
    text-decoration: underline;
}

.tf-product-upsell {
    padding-bottom: 18px;
    border-bottom: 1px solid var(--line);
}
.tf-product-upsell .tf-product-upsell-slod .tf-product-process-wrap {
    width: 100%;
    max-width: 380px;
    margin-top: 5px;
}
.tf-product-upsell .tf-product-upsell-slod .tf-product-process-wrap .progress {
    height: 8px;
    background-color: var(--line);
    margin-bottom: 8px;
}
.tf-product-upsell .tf-product-upsell-slod .tf-product-process-wrap .progress .progress-bar-striped {
    background-size: 16px 16px;
    background-color: var(--Critical);
    background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}

.tf-product-info-price {
    display: flex;
    align-items: center;
}
.tf-product-info-price .price-on-sale {
    margin-right: 6px;
}
.tf-product-info-price .compare-at-price {
    font-size: 16px;
    font-weight: 400;
    line-height: 19.52px;
    color: var(--Secondary2);
    text-decoration: line-through;
    margin-right: 16px;
}
.tf-product-info-price .badges-on-sale {
    font-size: 14px;
    padding: 0 8px;
    line-height: 22px;
    background-color: var(--Critical);
    border-radius: 999px;
    color: var(--White);
    height: 22px;
}
.tf-product-info-price.type-small .price-on-sale {
    font-size: 16px;
    line-height: 26px;
    margin-right: 4px;
}
.tf-product-info-price.type-small .compare-at-price {
    font-size: 14px;
    line-height: 22px;
    margin-right: 4px;
}
.tf-product-info-price.type-small .badges-on-sale {
    font-size: 10px;
    line-height: 20px;
    letter-spacing: 0.1em;
}
.tf-product-info-price.type-1 .price-on-sale {
    margin-right: 27px;
}
.tf-product-info-price.type-1 .compare-at-price {
    margin-right: 12px;
    font-size: 20px;
    line-height: 28px;
    position: relative;
}
.tf-product-info-price.type-1 .compare-at-price::before {
    position: absolute;
    content: "";
    width: 1px;
    height: 16px;
    left: -13px;
    background-color: var(--line);
    top: 50%;
    transform: translateY(-50%);
}
.tf-product-info-price.type-1 .badges-on-sale {
    padding: 2px 12px;
    font-size: 12px;
    line-height: 20px;
}

.variant-picker-item .variant-picker-label span {
    margin-left: 8px;
}
.variant-picker-item .size-guide {
    text-decoration: underline;
}
.variant-picker-item .variant-picker-values {
    display: flex;
    gap: 10px 9px;
    align-items: center;
    flex-wrap: wrap;
}
.variant-picker-item .variant-picker-values.gap12 {
    gap: 12px;
}
.variant-picker-item .variant-picker-values.type-click input:checked + label {
    border: 1px solid var(--Onsurface);
    padding: 3px;
}
.variant-picker-item .variant-picker-values.type-click input:checked + label.style-text-1 {
    background-color: var(--Onsurface);
    border: 1px solid var(--Onsurface);
}
.variant-picker-item .variant-picker-values.type-click input:checked + label.style-text-1 span {
    color: var(--White);
}
.variant-picker-item .variant-picker-values input {
    position: absolute !important;
    overflow: hidden;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
    clip: rect(0 0 0 0);
    word-wrap: normal !important;
}
.variant-picker-item .variant-picker-values input:checked + label.style-text {
    background-color: var(--Onsurface);
    border: 1px solid var(--Onsurface);
}
.variant-picker-item .variant-picker-values input:checked + label.style-text span {
    color: var(--White);
}
.variant-picker-item .variant-picker-values label {
    position: relative;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0px;
    border: 1px solid transparent;
    cursor: pointer;
    font-weight: 400;
    line-height: 22.4px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.variant-picker-item .variant-picker-values label .btn-checkbox {
    width: 100%;
    height: 100%;
    display: block;
    border-radius: 50%;
    border: 3px solid transparent;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.variant-picker-item .variant-picker-values label.style-text {
    width: max-content;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 48px;
    border: 2px solid var(--line);
    border-radius: 40px;
    padding: 0 18px;
}
.variant-picker-item .variant-picker-values label.style-text:hover {
    border-color: var(--Onsurface);
}
.variant-picker-item .variant-picker-values label.style-text-1 {
    gap: 8px;
    width: unset;
    height: 48px;
    border: 2px solid var(--line);
    border-radius: 999px;
    padding: 10px 18px !important;
}
.variant-picker-item .variant-picker-values label.style-text-1:hover {
    border-color: var(--Onsurface);
}
.variant-picker-item .variant-picker-values label.style-text-1 .circle-color {
    display: flex;
    width: 20px;
    height: 20px;
    border-radius: 50%;
}
.variant-picker-item .variant-picker-values label.type-disable {
    pointer-events: none;
    background-color: var(--Surface);
    color: var(--Secondary2);
    border-color: var(--Surface);
    cursor: no-drop;
}
.variant-picker-item .variant-picker-values label.type-sold-out {
    overflow: hidden;
}
.variant-picker-item .variant-picker-values label.type-sold-out::before {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    width: 32px;
    height: 1.2px;
    border-bottom: 1.2px dashed var(--Primary);
}
.variant-picker-item .variant-picker-values label.type-sold-out::after {
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
    width: 32px;
    height: 1.2px;
    border-bottom: 1.2px dashed var(--Primary);
}
.variant-picker-item .variant-picker-values label.style-image {
    display: flex;
    flex-direction: column;
    border: 2px solid transparent;
    border-radius: 8px;
    padding: 5px;
    width: 90px;
    height: 88px;
}
.variant-picker-item .variant-picker-values label.style-image img {
    border-radius: 4px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.6;
}
.variant-picker-item .variant-picker-values label.style-image-rounded {
    display: flex;
    flex-direction: column;
    border: 2px solid var(--line);
    border-radius: 50%;
    padding: 2px;
    width: 75px;
    height: 75px;
}
.variant-picker-item .variant-picker-values label.style-image-rounded img {
    border-radius: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.variant-picker-item .other-variant-btn.line,
.variant-picker-item .color-btn.line {
    border-color: var(--line);
}
.variant-picker-item .other-variant-btn.active,
.variant-picker-item .color-btn.active {
    border-color: var(--Onsurface);
}
.variant-picker-item .other-variant-btn.active .btn-checkbox,
.variant-picker-item .color-btn.active .btn-checkbox {
    border-color: var(--White);
}
.variant-picker-item .other-variant-btn.style-text-1.active,
.variant-picker-item .color-btn.style-text-1.active {
    background-color: var(--Onsurface);
    border-color: var(--Onsurface);
}
.variant-picker-item .other-variant-btn.style-text-1.active span,
.variant-picker-item .color-btn.style-text-1.active span {
    color: var(--White);
}
.variant-picker-item .other-variant-btn.style-image.active,
.variant-picker-item .color-btn.style-image.active {
    border-color: var(--Onsurface);
}
.variant-picker-item .other-variant-btn.style-image-rounded.active,
.variant-picker-item .color-btn.style-image-rounded.active {
    border-color: var(--Onsurface);
}
.variant-picker-item .variant-other-size .btn-size {
    padding: 12px 25px;
    color: var(--secondary);
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    border-radius: 4px;
    border: 2px solid var(--line);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
    background-color: var(--White);
}
.variant-picker-item .variant-other-size .btn-size:hover, .variant-picker-item .variant-other-size .btn-size.active {
    border-color: var(--Onsurface);
    color: var(--Onsurface);
}

@keyframes tf-ani-flash {
    50%, from, to {
        opacity: 1;
    }
    25%, 75% {
        opacity: 0;
    }
}
.slider-scroll,
.thumbs-slider {
    display: flex;
    gap: 20px;
}

.slider-scroll .wrapper-gallery-scroll {
    width: 100%;
}
.slider-scroll .wrapper-gallery-scroll .item {
    border-radius: 12px;
    overflow: hidden;
}

.tf-product-media-main {
    width: calc(100% - 100px);
}
.tf-product-media-main .item {
    display: flex;
    width: 100%;
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
    max-height: 515px;
}
.tf-product-media-main .item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tf-product-media-thumbs {
    width: 80px;
    flex-shrink: 0;
    max-height: 687px;
}
.tf-product-media-thumbs .swiper-slide {
    height: max-content;
    width: auto;
}
.tf-product-media-thumbs .swiper-slide .item {
    position: relative;
    height: 100%;
    max-height: 80px;
    max-width: 80px;
    opacity: 0.6;
    cursor: pointer;
}
.tf-product-media-thumbs .swiper-slide .item img {
    border-radius: 4px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tf-product-media-thumbs .swiper-slide.swiper-slide-thumb-active .item {
    opacity: 1;
}

.tf-bundle-product-item {
    display: flex;
    gap: 12px;
}
.tf-bundle-product-item .tf-product-bundle-image {
    flex-shrink: 0;
    width: 150px;
    height: 150px;
    border-radius: 8px;
    overflow: hidden;
}
.tf-bundle-product-item .tf-product-bundle-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tf-bundle-product-item .tf-product-bundle-infos {
    display: flex;
    gap: 12px;
    flex-direction: column;
}
.tf-bundle-product-item .tf-product-bundle-infos .text-title {
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}
.tf-bundle-product-item .tf-check {
    flex-shrink: 0;
    width: 21px;
    height: 21px;
    margin: 3.5px auto;
    border-width: 2px;
    border-radius: 2px;
}
.tf-bundle-product-item .tf-check::before {
    font-size: 12px;
}
.tf-bundle-product-item .tf-select {
    max-width: 140px;
}
.tf-bundle-product-item .tf-select select {
    height: 40px;
}

.thumbs-bottom .thumbs-slider {
    flex-direction: column;
}
.thumbs-bottom .thumbs-slider .tf-product-media-thumbs {
    order: 1;
    width: 100%;
}
.thumbs-bottom .thumbs-slider .tf-product-media-thumbs .swiper-slide {
    width: auto;
}
.thumbs-bottom .thumbs-slider .tf-product-media-main {
    width: 100%;
}
.thumbs-bottom .thumbs-slider .tf-product-media-main .item {
    max-height: 820px;
}

.frequently-bought-together-2 {
    margin-top: 40px;
}

.tf-sticky-btn-atc {
    position: fixed;
    width: 100%;
    bottom: 0;
    z-index: 70;
    box-shadow: 0px 5px 18px 5px rgba(64, 72, 87, 0.15);
    background-color: var(--White);
    transform: translateY(100%);
}
.tf-sticky-btn-atc.show {
    transform: translateY(0);
}
.tf-sticky-btn-atc .form-sticky-atc {
    padding: 10px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.tf-sticky-btn-atc .form-sticky-atc .tf-dropdown-sort {
    padding: 10px;
}
.tf-sticky-btn-atc .tf-sticky-atc-product {
    display: flex;
    gap: 16px;
}
.tf-sticky-btn-atc .tf-sticky-atc-product .image {
    width: 80px;
    height: 80px;
    border-radius: 8px;
    overflow: hidden;
}
.tf-sticky-btn-atc .tf-sticky-atc-product .content {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.tf-sticky-btn-atc .tf-sticky-atc-infos {
    display: flex;
    gap: 32px;
    align-items: center;
}
.tf-sticky-btn-atc .tf-sticky-atc-infos .tf-sticky-atc-btns {
    width: 274px;
}
.tf-sticky-btn-atc .tf-sticky-atc-infos .tf-sticky-atc-btns a {
    border-radius: 99px !important;
}

.tf-product-stacked .item:first-child {
    grid-column: 1/3;
}

.tf-product-pre-order {
    padding: 4px 16px;
    background-color: var(--main);
    border-radius: 99px;
    width: max-content;
    color: var(--White);
}

.stagger-wrap .stagger-item .item img {
    transition: 0.3s ease-in-out;
    transform: scale(0.5) rotate(90deg) skew(15deg);
    opacity: 0;
}
.stagger-wrap .stagger-item .item img.stagger-finished {
    transform: scale(1) rotate(0deg) skew(0deg);
    opacity: 1;
}

/*------------ shop ---------------- */
.cart-item {
    display: flex;
    gap: 20px;
    align-items: center;
}
.cart-item .number {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    border-radius: 999px;
    background-color: var(--Surface);
    flex-shrink: 0;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.cart-item .image-cart {
    width: 80px;
    height: 80px;
    border-radius: 4px;
    overflow: hidden;
    flex-shrink: 0;
}
.cart-item .info {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.cart-item.style-2 {
    background-color: var(--White);
    padding: 22px 18px 18px;
    text-align: start;
    border-radius: 12px;
}
.cart-item.style-2 .info {
    flex-direction: column;
    gap: 8px;
}

.tf-page-checkout .wrap:not(:last-child) {
    margin-bottom: 30px;
}
.tf-page-checkout .wrap .title {
    margin-bottom: 20px;
}
.tf-page-checkout .title-login {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 11px 16px;
    border-radius: 8px;
    background-color: var(--Surface);
    color: var(--Secondary2);
    margin-bottom: 12px;
}
.tf-page-checkout .title-login a {
    border-bottom: 1px solid;
}
.tf-page-checkout .login-box {
    padding: 15px;
    border: 1px solid var(--line);
    border-radius: 8px;
}
.tf-page-checkout .login-box .grid-2 {
    gap: 15px;
    margin-bottom: 10px;
}
.tf-page-checkout .login-box input {
    border-radius: 4px;
    height: 48px;
}
.tf-page-checkout .login-box .tf-btn {
    padding: 10px 30px;
}
.tf-page-checkout .info-box {
    display: grid;
    gap: 15px;
}
.tf-page-checkout .info-box .grid-2 {
    gap: 16px;
}
.tf-page-checkout .info-box input {
    height: 48px;
}
.tf-page-checkout .tf-select select {
    border-radius: 8px;
    padding: 10px 16px;
}
.tf-page-checkout textarea {
    height: 100px;
}

.payment-box .payment-item {
    border-radius: 8px;
    overflow: hidden;
    border: 2px solid var(--line);
}
.payment-box .payment-item .payment-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.payment-box .payment-item .payment-header span {
    flex-grow: 1;
}
.payment-box .payment-item .payment-header input:checked {
    border-color: #2e72d2;
}
.payment-box .payment-item .payment-header input:checked::before {
    background-color: #2e72d2;
}
.payment-box .payment-item .payment-body {
    padding: 20px 19px 20px;
    padding-top: 0;
    display: grid;
    gap: 18px;
}
.payment-box .payment-item .payment-body .check-save {
    display: flex;
    gap: 8px;
    align-items: center;
}
.payment-box .payment-item .payment-body .input-payment-box {
    display: grid;
    gap: 21px;
}
.payment-box .payment-item .payment-body .input-payment-box input {
    height: 48px;
}
.payment-box .payment-item .payment-body .grid-2 {
    gap: 16px;
}
.payment-box .payment-item .payment-body .ip-card {
    position: relative;
}
.payment-box .payment-item .payment-body .ip-card .list-card {
    display: flex;
    gap: 12px;
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
}
.payment-box .payment-item:not(:last-child) {
    margin-bottom: 15px;
}
.payment-box .payment-item .apple-pay-title {
    display: flex;
    gap: 8px;
    align-items: center;
}
.payment-box .payment-item .apple-pay-title img {
    width: 13px;
    height: 16px;
}
.payment-box .payment-item .paypal-title {
    display: flex;
}
.payment-box .payment-item .paypal-title img {
    width: 60px;
    height: 16px;
}
.payment-box .payment-choose-card.active {
    border-color: transparent;
    background-color: var(--Surface);
}
.payment-box .payment-choose-card.active .payment-header {
    padding-top: 17px;
    padding-bottom: 8px;
}
.payment-box .paypal-item .payment-header {
    padding: 16px 20px;
}

.form-payment .tf-btn {
    margin-top: 39px;
    padding: 10px 32px;
    width: 100%;
}

.sidebar-checkout-content {
    padding-top: 9px;
}
.sidebar-checkout-content .sec-discount,
.sidebar-checkout-content .list-product,
.sidebar-checkout-content .title {
    margin-bottom: 32px;
}
.sidebar-checkout-content .list-product .item-product {
    padding-bottom: 19px;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--line);
}
.sidebar-checkout-content .list-product .item-product:last-child {
    margin-bottom: 0;
}
.sidebar-checkout-content .item-product {
    display: flex;
    align-items: center;
    gap: 15px;
}
.sidebar-checkout-content .item-product .img-product {
    width: 120px;
    height: 120px;
    border-radius: 4px;
    overflow: hidden;
}
.sidebar-checkout-content .item-product .img-product img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.sidebar-checkout-content .item-product .content-box {
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.sidebar-checkout-content .item-product .content-box .info {
    display: grid;
    gap: 8px;
}
.sidebar-checkout-content .item-product .content-box .info .name-product {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    overflow: hidden;
}
.sidebar-checkout-content .item-product .content-box .total-price {
    display: flex;
    gap: 4px;
}
.sidebar-checkout-content .sec-total-price .top {
    padding-top: 19px;
    padding-bottom: 19px;
    border-bottom: 1px solid var(--line);
    border-top: 1px solid var(--line);
    margin-bottom: 20px;
}
.sidebar-checkout-content .sec-total-price .top .item:not(:last-child) {
    margin-bottom: 16px;
}
.sidebar-checkout-content .sec-discount .box-discount {
    width: 100%;
}
.sidebar-checkout-content .sec-discount .ip-discount-code {
    margin-bottom: 12px;
}

.ip-discount-code {
    position: relative;
}
.ip-discount-code .tf-btn {
    position: absolute;
    right: 8px;
    top: 8px;
    bottom: 8px;
    border-radius: 8px;
    padding: 6px 20px;
    height: 38px;
}
.ip-discount-code input {
    padding: 12px 20px;
    padding-right: 140px;
}

.tf-cart-sold {
    margin-bottom: 53px;
}
.tf-cart-sold .notification-sold {
    margin-bottom: 20px;
    padding: 10px 20px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 12px;
    background-color: var(--Surface);
}
.tf-cart-sold .notification-sold .icon {
    width: 24px;
    height: 30px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    animation: tf-ani-flash 2s infinite;
}
.tf-cart-sold .time-count {
    display: inline-block;
    font-weight: 600;
    color: var(--Critical);
}
.tf-cart-sold .notification-progress .text {
    margin-bottom: 15px;
}
.tf-cart-sold .notification-progress .progress-cart {
    width: 100%;
    background-color: var(--line);
    height: 8px;
    position: relative;
    border-radius: 1000px;
}
.tf-cart-sold .notification-progress .progress-cart .value {
    position: relative;
    height: 100%;
    background: linear-gradient(90deg, #19450f 0%, #3dab25 100%);
    transition: width 2s ease;
    border-radius: 1000px 0 0 1000px;
}
.tf-cart-sold .notification-progress .progress-cart .round {
    position: absolute;
    left: 100%;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    border: 2px solid var(--Success);
    border-radius: 1000px;
    background-color: var(--White);
}
.tf-cart-sold .notification-progress .progress-cart .round::after {
    content: "\e911";
    position: absolute;
    font-family: "icomoon";
    font-size: 20px;
    color: var(--Success);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-weight: 700;
}

.group-bought {
    margin-top: 41px;
}
.group-bought .heading {
    margin-bottom: 20px;
}
.group-bought h5 {
    margin-bottom: 13px;
}
.group-bought .text {
    display: flex;
    align-items: center;
}
.group-bought .text span {
    margin: 0 5px;
}
.group-bought .text i {
    color: var(--Critical);
    font-size: 20px;
    margin-right: 9px;
}
.group-bought .wrap-product {
    display: flex;
    gap: 20px;
}
.group-bought .wrap-product .product-bought {
    width: calc(50% - 6px);
}
.group-bought .price {
    margin-bottom: 10px;
}

.tf-table-page-cart {
    border-spacing: 0;
    border-collapse: collapse;
    margin-bottom: 28px;
    width: 100%;
    line-height: 1.4;
}
.tf-table-page-cart tr {
    border-bottom: 1px solid var(--line);
}
.tf-table-page-cart th {
    padding-bottom: 12px;
    font-weight: 500;
    padding-left: 10px;
    padding-right: 10px;
}
.tf-table-page-cart th:last-child {
    padding-right: 0;
}
.tf-table-page-cart th:first-child {
    padding-left: 0;
}
.tf-table-page-cart td {
    padding: 18px 10px;
    align-content: center;
}
.tf-table-page-cart td:last-child {
    padding-right: 0;
    padding-left: 0;
}
.tf-table-page-cart td:first-child {
    padding-left: 0;
}

.product-bought {
    padding: 16px;
    border-radius: 12px;
    border: 1px solid var(--line);
    display: flex;
    align-items: center;
    gap: 10px;
}
.product-bought .img-style {
    overflow: hidden;
    border-radius: 8px;
    width: 100px;
    height: 100px;
    flex-shrink: 0;
}
.product-bought .img-style img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.product-bought .content {
    display: flex;
    gap: 12px;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}
.product-bought .content .btn-add {
    text-decoration: underline;
}
.product-bought .wrap-price {
    text-align: end;
}

.tf-cart-item .tf-cart-item_product {
    display: flex;
    align-items: center;
}
.tf-cart-item .tf-cart-item_product .img-box {
    border-radius: 4px;
    overflow: hidden;
    width: 120px;
    height: 120px;
    margin-right: 24px;
    display: block;
}
.tf-cart-item .tf-cart-item_product .img-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tf-cart-item .tf-cart-item_product .cart-info {
    display: grid;
    gap: 12px;
}
.tf-cart-item .tf-cart-item_product .variant-box {
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr 1fr;
}
.tf-cart-item .wg-quantity {
    width: 120px;
    height: 40px;
}
.tf-cart-item .wg-quantity input {
    pointer-events: none;
    height: 38px;
    width: 40px;
}
.tf-cart-item .wg-quantity .btn-quantity {
    width: 40px;
    height: 35px;
    font-size: 30px;
}
.tf-cart-item .tf-cart-item_price .old-price {
    display: inline-block;
    margin-right: 8px;
    font-size: 14px;
    line-height: 22px;
    color: var(--Secondary2);
    text-decoration: line-through;
}
.tf-cart-item .remove-cart .icon {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    background-color: var(--Primary);
    border: 1px solid var(--Critical);
    border-radius: 1000px;
    font-size: 8px;
    color: var(--Critical);
    background-color: var(--White);
    cursor: pointer;
}
.tf-cart-item .remove-cart .icon:hover {
    background-color: var(--Critical);
    color: var(--White);
}

.wg-quantity {
    width: 120px;
    height: 48px;
    display: flex;
    justify-content: space-between;
    background-color: var(--White);
    border: 2px solid var(--line);
    border-radius: 999px;
    overflow: hidden;
}
.wg-quantity input {
    width: 88px;
    height: 44px;
    padding: 0;
    background-color: transparent;
    border: 0;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    line-height: 24px;
    color: var(--Onsurface);
}
.wg-quantity .btn-quantity {
    width: 44px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 38px;
    color: var(--Onsurface);
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.wg-quantity .btn-quantity:hover {
    color: var(--Primary);
}
.wg-quantity.style-1 {
    width: 140px;
}
.wg-quantity.style-1 .btn-quantity {
    height: 44px;
    font-size: 30px;
}
.wg-quantity.style-1 input {
    pointer-events: none;
    width: 50px;
}

.box-order {
    background-color: var(--Surface);
    border-radius: 12px;
    overflow: hidden;
    padding: 15px;
}
.box-order .title {
    margin-bottom: 28px;
}
.box-order .subtotal,
.box-order .discount,
.box-order .ship {
    margin-bottom: 19px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
}
.box-order .ship {
    display: flex;
    gap: 30px;
}
.box-order .ship-item {
    display: flex;
    align-items: center;
    gap: 8px;
}
.box-order .ship-item:not(:last-child) {
    margin-bottom: 4px;
}
.box-order .ship-item label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-grow: 1;
    color: var(--Secondary);
}
.box-order .ship-item input:checked ~ label {
    color: var(--Onsurface);
}
.box-order .box-progress-checkout {
    display: grid;
    gap: 12px;
}
.box-order .check-agree {
    display: flex;
    gap: 8px;
    align-items: center;
}
.box-order .check-agree label a {
    text-decoration: underline;
    text-transform: capitalize;
}
.box-order .total-order {
    margin-bottom: 20px;
}
.box-order .tf-btn {
    width: 100%;
    padding: 0 32px;
}

@keyframes tf-ani-flash {
    50%, from, to {
        opacity: 1;
    }
    25%, 75% {
        opacity: 0;
    }
}
.noUi-target,
.noUi-target * {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -ms-touch-action: none;
    touch-action: none;
    -ms-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.noUi-target {
    position: relative;
    direction: ltr;
}

.noUi-base,
.noUi-connects {
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 1;
}

.noUi-connects {
    overflow: hidden;
    z-index: 0;
}

.noUi-connect,
.noUi-origin {
    will-change: transform;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    -ms-transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
}

html:not([dir=rtl]) .noUi-horizontal .noUi-origin {
    left: auto;
    right: 0;
}

.noUi-vertical .noUi-origin {
    width: 0;
}

.noUi-horizontal .noUi-origin {
    height: 0;
}

.noUi-handle {
    position: absolute;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
    -webkit-transition: transform 0.3s;
    transition: transform 0.3s;
}

.noUi-state-drag * {
    cursor: inherit !important;
}

.noUi-horizontal {
    height: 18px;
}

.noUi-horizontal .noUi-handle {
    width: 34px;
    height: 28px;
    left: -17px;
    top: -6px;
}

.noUi-vertical {
    width: 18px;
}

.noUi-vertical .noUi-handle {
    width: 28px;
    height: 34px;
    left: -6px;
    top: -17px;
}

.noUi-draggable {
    cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
    cursor: ns-resize;
}

.noUi-handle:after {
    left: 17px;
}

.noUi-vertical .noUi-handle:after,
.noUi-vertical .noUi-handle:before {
    width: 14px;
    height: 1px;
    left: 6px;
    top: 14px;
}

.noUi-vertical .noUi-handle:after {
    top: 17px;
}

[disabled] .noUi-connect {
    background: #b8b8b8;
}

[disabled] .noUi-handle,
[disabled].noUi-handle,
[disabled].noUi-target {
    cursor: not-allowed;
}

.noUi-pips,
.noUi-pips * {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.noUi-pips {
    position: absolute;
    color: #999;
}

.noUi-value {
    position: absolute;
    white-space: nowrap;
    text-align: center;
}

.noUi-value-sub {
    color: #ccc;
    font-size: 10px;
}

.noUi-marker {
    position: absolute;
    background: #ccc;
}

.noUi-marker-sub {
    background: #aaa;
}

.noUi-marker-large {
    background: #aaa;
}

.noUi-pips-horizontal {
    padding: 10px 0;
    height: 80px;
    top: 100%;
    left: 0;
    width: 100%;
}

.noUi-value-horizontal {
    -webkit-transform: translate(-50%, 50%);
    transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
    -webkit-transform: translate(50%, 50%);
    transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
    margin-left: -1px;
    width: 2px;
    height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
    height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
    height: 15px;
}

.noUi-pips-vertical {
    padding: 0 10px;
    height: 100%;
    top: 0;
    left: 100%;
}

.noUi-value-vertical {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%, 0);
    padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
    -webkit-transform: translate(0, 50%);
    transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
    width: 5px;
    height: 2px;
    margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
    width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
    width: 15px;
}

.noUi-tooltip {
    display: block;
    position: absolute;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    background: #fff;
    color: #000;
    padding: 5px;
    text-align: center;
    white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    left: 50%;
    bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    top: 50%;
    right: 120%;
}

.noUi-horizontal {
    height: 4px;
}

.noUi-target {
    border: 0;
}

.noUi-base .noUi-connects {
    border-radius: 999px;
    background-color: var(--line);
}

.noUi-connect {
    background-color: var(--Onsurface);
}

.noUi-horizontal .noUi-handle,
.noUi-vertical .noUi-handle {
    height: 16px;
    width: 16px;
    border-radius: 50px;
    border: 2px solid var(--Onsurface);
    background-color: var(--White);
    box-shadow: unset;
    cursor: pointer;
}
.noUi-horizontal .noUi-handle::before, .noUi-horizontal .noUi-handle::after,
.noUi-vertical .noUi-handle::before,
.noUi-vertical .noUi-handle::after {
    content: none;
}

.tf-btn-filter {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    gap: 5px;
    color: var(--Onsurface);
    border: solid 2px var(--line);
    border-radius: 4px;
    text-transform: capitalize;
    padding: 5px 14px 5px 11px;
    background-color: var(--White);
    max-width: 100%;
    text-wrap: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.tf-btn-filter .icon {
    font-size: 16px;
}
.tf-btn-filter .icon-close {
    font-size: 14px;
}
.tf-btn-filter:hover {
    border-color: var(--Onsurface);
}
.tf-btn-filter.active {
    background-color: var(--Onsurface);
    border-color: var(--Onsurface);
    color: var(--White);
}

#filterDropdown {
    min-width: 93px;
}

.tf-shop-control {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 37px;
}
.tf-shop-control .tf-control-filter {
    display: flex;
    align-items: center;
    gap: 20px;
}
.tf-shop-control .tf-control-filter .shop-sale-text.active .icon {
    color: var(--Success);
}
.tf-shop-control .shop-sale-text {
    display: flex;
    align-items: center;
    gap: 4px;
    cursor: pointer;
}
.tf-shop-control .shop-sale-text .icon {
    font-size: 24px;
    color: var(--Secondary2);
}
.tf-shop-control .tf-control-sorting {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
}
.tf-shop-control .tf-control-layout {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
}
.tf-shop-control .tf-control-layout .item {
    cursor: pointer;
}
.tf-shop-control .tf-control-layout .tf-view-layout-switch svg circle,
.tf-shop-control .tf-control-layout .tf-view-layout-switch svg rect {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tf-shop-control .tf-control-layout .tf-view-layout-switch.active svg circle,
.tf-shop-control .tf-control-layout .tf-view-layout-switch.active svg rect {
    fill: var(--main);
}
.tf-shop-control .wg-pagination {
    margin-top: 11px;
}

.wrapper-shop {
    transition: all 0.3s ease-in-out;
    animation: fadeShop 0.5s ease-in-out;
}

.wrapper-control-shop .tf-list-layout .card-product {
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid var(--line);
}
.wrapper-control-shop .tf-list-layout .card-product.last-visible, .wrapper-control-shop .tf-list-layout .card-product:last-of-type {
    padding-bottom: 0;
    border: 0;
    margin-bottom: 0;
}
.wrapper-control-shop .tf-list-layout .load-more-btn,
.wrapper-control-shop .tf-list-layout .wg-pagination {
    margin-top: 30px;
}
.wrapper-control-shop .tf-grid-layout .wg-pagination {
    margin-top: 0;
}

@keyframes fadeShop {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
.listLayout-wrapper #product-count-grid {
    display: none;
}
.listLayout-wrapper #product-count-list {
    display: block;
}

.gridLayout-wrapper #product-count-grid {
    display: block;
}
.gridLayout-wrapper #product-count-list {
    display: none;
}

.meta-filter-shop {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 30px;
}
.meta-filter-shop .count-text {
    font-size: 14px;
    line-height: 22px;
    color: var(--secondary);
    padding-right: 12px;
    position: relative;
}
.meta-filter-shop .count-text::after {
    position: absolute;
    top: 4px;
    bottom: 4px;
    right: 0;
    width: 1px;
    display: block;
    content: "";
    background-color: #d9d9d9;
}
.meta-filter-shop .count-text .count {
    color: var(--main);
    display: inline-block;
    margin-right: 2px;
}
.meta-filter-shop #applied-filters {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}
.meta-filter-shop .filter-tag {
    font-size: 14px;
    line-height: 22px;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    border: 1px solid var(--line);
    border-radius: 1000px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    cursor: pointer;
}
.meta-filter-shop .filter-tag .remove-tag {
    font-size: 12px;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.meta-filter-shop .filter-tag:hover {
    border-color: var(--main);
}
.meta-filter-shop .color-tag {
    gap: 8px;
}
.meta-filter-shop .color-tag .color {
    width: 20px;
    height: 20px;
    display: block;
    border-radius: 1000px;
}
.meta-filter-shop .remove-all-filters {
    padding: 4px 12px;
}
.meta-filter-shop .remove-all-filters .icon {
    font-size: 12px;
}

.canvas-filter {
    max-width: 360px;
}
.canvas-filter .canvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 20px;
    background-color: var(--White);
    gap: 8px;
    border-bottom: 1px solid var(--line);
}
.canvas-filter .canvas-header .icon-close-popup {
    font-size: 10px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.canvas-filter .canvas-header h5 {
    flex-grow: 1;
    display: flex;
    align-items: center;
    gap: 8px;
}
.canvas-filter .canvas-body {
    padding: 20px;
    background-color: var(--White);
}
.canvas-filter .canvas-bottom {
    padding: 20px;
    background-color: var(--White);
}
.canvas-filter .canvas-bottom button {
    color: rgb(0, 0, 0);
}

.widget-facet {
    padding-bottom: 32px;
}
.widget-facet:not(:last-child) {
    margin-bottom: 20px;
    border-bottom: 1px solid var(--line);
}
.widget-facet .facet-title {
    margin-bottom: 16px;
}
.widget-facet.facet-categories li:not(:last-child) {
    margin-bottom: 12px;
}
.widget-facet.facet-categories .categories-item.active, .widget-facet.facet-categories .categories-item:hover {
    color: var(--primary);
}
.widget-facet.facet-price .price-val-range {
    margin: 22px 0px;
}
.widget-facet.facet-price .box-price-product {
    display: grid;
    gap: 16px;
    grid-template-columns: 1fr 1fr;
}
.widget-facet.facet-price .title-price {
    margin-bottom: 4px;
    display: block;
}
.widget-facet.facet-price .price-val {
    padding: 5px 12px;
    font-weight: 500;
    font-size: 16px;
    line-height: 24px;
    border-radius: 8px;
    border: 2px solid var(--line);
    position: relative;
}
.widget-facet.facet-price .price-val::after {
    content: attr(data-currency);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 12px;
    font-weight: 400;
    color: var(--secondary);
    font-size: 14px;
    line-height: 22px;
}
.widget-facet .facet-size-box {
    display: flex;
    flex-wrap: wrap;
    column-gap: 12px;
    row-gap: 16px;
    padding-right: 20px;
}
.widget-facet .facet-size-box .size-item {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border-radius: 1000px;
    border: 1px solid var(--line);
    color: var(--main);
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    text-transform: uppercase;
    cursor: pointer;
}
.widget-facet .facet-size-box .size-item:not(.free-size) {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.widget-facet .facet-size-box .size-item:hover {
    border-color: var(--main);
}
.widget-facet .facet-size-box .size-item.active {
    border-color: var(--main);
    color: var(--White);
    background-color: var(--main);
}
.widget-facet .facet-size-box .free-size {
    padding: 8px 16px;
    text-transform: capitalize;
}
.widget-facet .facet-color-box {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.widget-facet .facet-color-box .color-item {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    border: 1px solid var(--line);
    border-radius: 1000px;
    padding: 6px 12px 6px 8px;
    text-transform: capitalize;
}
.widget-facet .facet-color-box .color-item .color {
    width: 20px;
    height: 20px;
    border-radius: 1000px;
}
.widget-facet .facet-color-box .color-item:hover, .widget-facet .facet-color-box .color-item.active {
    border-color: var(--main);
}
.widget-facet.facet-fieldset .fieldset-item {
    display: flex;
    align-items: center;
    gap: 8px;
}
.widget-facet.facet-fieldset .fieldset-item:not(:last-child) {
    margin-bottom: 12px;
}
.widget-facet.facet-fieldset .fieldset-item label span {
    margin-left: 12px;
}

.sidebar-filter .facet-price .price-val-range {
    padding-left: 10px;
    padding-right: 10px;
}

.overlay-filter {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2000;
    width: 100vw;
    height: 100vh;
    background-color: var(--backdrop);
    visibility: hidden;
    opacity: 0;
}
.overlay-filter.show {
    opacity: 1;
    visibility: visible;
}

.wrapper-filter-dropdown {
    position: relative;
}

.sidebar-filter {
    background-color: var(--White);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.breadcrumbs-default {
    padding: 40px 0px 60px;
}
.breadcrumbs-default .breadcrumbs-content {
    display: grid;
    gap: 16px;
}
.breadcrumbs-default .breadcrumbs-content .content-bottom {
    display: grid;
    gap: 8px;
}

/*------------ blog ---------------- */
.blog-article-item .article-thumb {
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 24px;
    position: relative;
    max-width: 410px;
}
.blog-article-item .article-thumb a {
    width: 100%;
    height: 100%;
}
.blog-article-item .article-thumb img {
    width: 100%;
    object-fit: cover;
}
.blog-article-item .article-title {
    margin-bottom: 8px;
}
.blog-article-item.style-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
}
.blog-article-item.style-list .article-thumb {
    width: 90%;
    margin-bottom: 0;
}
.blog-article-item.style-list .article-description {
    margin-bottom: 12px;
}
.blog-article-item.style-list .article-content {
    padding: 20px 0px 20px 40px;
}

.meta {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 17px;
    margin-bottom: 12px;
}
.meta li:not(:last-child) {
    position: relative;
}
.meta li:not(:last-child)::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 12px;
    right: -9px;
    top: 5px;
    background-color: var(--line);
}
.meta li:first-child a {
    margin-left: 0;
}
.meta a {
    margin-left: 5px;
}

.article-label {
    position: absolute;
    top: 18px;
    left: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 12px;
    background-color: var(--White);
    border-radius: 144px;
}
.article-label a {
    font-weight: 400;
    font-size: 21px;
    line-height: 33px;
}

.wg-pagination {
    display: flex;
    gap: 8px;
}
.wg-pagination .pagination-item {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--line);
    border-radius: 5px;
    overflow: hidden;
}
.wg-pagination li:hover .pagination-item,
.wg-pagination li.active .pagination-item {
    background-color: var(--Onsurface);
    border-color: var(--Onsurface);
    color: var(--White);
}

.blog-list-main .wrap-list {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.sidebar {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.sidebar .sidebar-heading {
    margin-bottom: 20px;
}
.sidebar .sidebar-relatest-post .blog-article-item .meta {
    margin-bottom: 8px;
}
.sidebar .relatest-post-item:not(:last-child) {
    padding-bottom: 19px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 20px;
}
.sidebar .sidebar-categories ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.relatest-post-item:not(:last-child) {
    padding-bottom: 19px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 20px;
}
.relatest-post-item.style-row {
    display: flex;
    gap: 20px;
}
.relatest-post-item.style-row .content {
    gap: 8px;
}
.relatest-post-item.style-row .image {
    position: relative;
    margin-bottom: 0;
    width: 120px;
    flex-shrink: 0;
    border-radius: 4px;
    overflow: hidden;
}
.relatest-post-item.style-row .title {
    margin-bottom: 8px;
}
.relatest-post-item.style-row .title a {
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    display: -webkit-box;
}
.relatest-post-item.style-row .meta {
    display: flex;
    gap: 10px 17px;
    margin-bottom: 0;
    flex-wrap: wrap;
}
.relatest-post-item.style-row .meta li:first-child a {
    margin-left: 0;
}
.relatest-post-item.style-row .meta a {
    margin-left: 5px;
}
.relatest-post-item.style-row .meta p {
    color: var(--main);
}
.relatest-post-item.style-row.style-2:not(:last-child) {
    padding-bottom: 36.5px;
    margin-bottom: 38.5px;
}
.relatest-post-item.style-row.style-2 .image {
    width: 232px;
    height: 239px;
}
.relatest-post-item.style-row.style-2 .content {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

ul.list-tags {
    display: flex;
    align-items: center;
    gap: 11px;
    flex-wrap: wrap;
}
ul.list-tags a {
    display: flex;
    padding: 4px 15px;
    border-radius: 5px;
    border: 1px solid var(--line);
}
ul.list-tags.has-bg a {
    border-radius: 40px;
    padding: 4px 16px 4px 16px;
    background-color: var(--Surface);
    border: 0;
}

.blog-detail-wrap > .inner {
    position: relative;
    z-index: 2;
    max-width: 970px;
    margin: -135px auto 0;
    border-radius: 12px;
    background-color: var(--White);
    padding: 40px 60px 0px 60px;
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.blog-detail-wrap > .inner > .tf-social-icon {
    position: absolute;
    flex-direction: column;
    left: -55px;
    top: 204px;
}
.blog-detail-wrap > .inner > .tf-social-icon h6 {
    margin-bottom: 8px;
}
.blog-detail-wrap > .inner .heading {
    display: flex;
    flex-direction: column;
    gap: 13px;
}
.blog-detail-wrap .related-post {
    position: relative;
    display: flex;
    gap: 40px;
    padding: 24px 0 21px;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    margin-top: 20px;
}
.blog-detail-wrap .related-post::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 60px;
    background-color: var(--line);
    top: 24px;
    left: 50%;
    transform: translateX(-50%);
}
.blog-detail-wrap .related-post .btn-direction {
    margin-bottom: 4px;
}
.blog-detail-wrap .related-post .btn-direction a {
    color: var(--Primary);
}
.blog-detail-wrap .related-post .btn-direction a:hover {
    color: var(--Onsurface);
}
.blog-detail-wrap .image-wrap {
    border-radius: 20px;
    overflow: hidden;
}
.blog-detail-wrap .wrap-meta {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 5px;
    margin-top: 7px;
}
.blog-detail-wrap .wrap-meta .meta {
    margin-bottom: 0;
    gap: 33px;
}
.blog-detail-wrap .wrap-meta .meta i {
    font-size: 20px;
}
.blog-detail-wrap .wrap-meta .meta li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    gap: 9px;
}
.blog-detail-wrap .wrap-meta .meta li:not(:last-child)::after {
    position: absolute;
    content: "";
    width: 1px;
    height: 16px;
    right: -17px;
    top: 6px;
}
.blog-detail-wrap .wrap-meta .meta.info li {
    gap: 2px;
}
.blog-detail-wrap .reply-comment {
    margin-top: 20px;
}
.blog-detail-wrap textarea {
    height: 160px;
}

.quote {
    border-top: 4px solid var(--Onsurface);
}
.quote .wrap-content {
    padding-top: 28px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 28px;
}
.quote .icon {
    font-size: 40px;
}
.quote .author {
    padding-left: 28.5px;
    position: relative;
}
.quote .author::after {
    content: "";
    position: absolute;
    width: 20.4px;
    height: 1px;
    background-color: var(--Secondary);
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.bot .list-tags.has-bg a {
    padding: 8px 16px;
}

.box-check {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: var(--Success);
}

/*------------ testimonial ---------------- */
.testimonial-item {
    display: flex;
    border: 1px solid var(--line);
    background-color: var(--White);
    border-radius: 8px;
    overflow: hidden;
}
.testimonial-item .img-style {
    position: relative;
    max-width: 300px;
    width: 100%;
    flex-shrink: 0;
}
.testimonial-item .img-style img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.testimonial-item .img-style .box-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 32px;
    height: 32px;
    background-color: var(--White);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--Onsurface);
    font-size: 16px;
    border-radius: 50%;
    z-index: 5;
}
.testimonial-item .img-style .box-icon:hover {
    background-color: var(--Onsurface);
    color: var(--White);
}
.testimonial-item .content {
    padding: 22px 23px 21px;
}
.testimonial-item .content-top {
    display: grid;
    gap: 12px;
    margin-bottom: 68px;
}
.testimonial-item .box-product {
    display: flex;
    align-items: center;
    padding-top: 20px;
    border-top: 1px solid var(--line);
}
.testimonial-item .box-product .product-img {
    border-radius: 99px;
    overflow: hidden;
}
.testimonial-item .box-product .box-price {
    margin-left: 16px;
}
.testimonial-item .list-star-default i {
    font-size: 18px;
}
.testimonial-item.style-2 {
    flex-direction: column;
}
.testimonial-item.style-2 .img-style {
    max-width: 100%;
}
.testimonial-item.style-2 .content-top {
    margin-bottom: 24px;
    gap: 12px;
}
.testimonial-item.style-2 .content-top .box-author {
    margin-bottom: 11px;
}
.testimonial-item.style-3 {
    padding: 0;
    border: none;
}
.testimonial-item.style-3 .box-icon .icon {
    font-size: 51px;
    margin-bottom: 20px;
}
.testimonial-item.style-3 .box-author {
    flex-direction: column;
}
.testimonial-item.style-3 .content {
    padding: 0;
}
.testimonial-item.style-3 .content-top {
    gap: 40px;
    margin-bottom: 0;
}
.testimonial-item.style-3 .list-star-default i {
    font-size: 28px;
}

.section-testimonials {
    background-color: var(--Surface);
}
.section-testimonials.fullright .tf-sw-testimonial .swiper-slide {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.section-testimonials.fullright .tf-sw-testimonial .swiper-slide:not(.section-testimonials.fullright .tf-sw-testimonial .swiper-slide.swiper-slide-active, .section-testimonials.fullright .tf-sw-testimonial .swiper-slide.swiper-slide-next, .section-testimonials.fullright .tf-sw-testimonial .swiper-slide.swiper-slide-prev) {
    opacity: 0.4;
}
.section-testimonials .wrap-button {
    display: flex;
    gap: 12px;
}
.section-testimonials .sw-button {
    position: unset;
}

/*------------ lookbook ---------------- */
.tf-pin-btn {
    cursor: pointer;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative;
}
.tf-pin-btn span {
    display: block;
    background-color: var(--Surface);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    line-height: 28px;
}
.tf-pin-btn.style-2 {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: relative;
    cursor: pointer;
}
.tf-pin-btn.style-2 span {
    display: block;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background-color: var(--White);
    border: 8px solid rgba(24, 24, 24, 0.3019607843);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.tf-pin-btn.style-2 span::after, .tf-pin-btn.style-2 span::before {
    position: absolute;
    content: "";
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: solid 1px var(--White);
    border-radius: 50%;
}
.tf-pin-btn.style-2 span::before {
    animation: ripple-line 2s linear infinite;
}
.tf-pin-btn.style-2 span::after {
    animation: ripple-line 2s 1s linear infinite;
}
.tf-pin-btn.active span {
    background-color: var(--Primary);
    color: var(--White);
}

.flat-with-text-lookbook .box-title {
    display: grid;
    gap: 12px;
    margin-bottom: 20px;
}
.flat-with-text-lookbook .banner-img {
    position: relative;
}
.flat-with-text-lookbook .banner-img > img {
    border-radius: 16px;
}
.flat-with-text-lookbook .wrap-cart-item .swiper {
    height: 338px;
}
.flat-with-text-lookbook .wrap-cart-item .swiper .swiper-slide-active .cart-item .number {
    background-color: var(--Primary);
    color: var(--White);
}
.flat-with-text-lookbook .wrap-cart-item .cart-item:not(:last-child) {
    border-bottom: 1px solid var(--line);
    padding-bottom: 15px;
    margin-bottom: 15px;
}
.flat-with-text-lookbook .wrap-cart-item .cart-item.active .number {
    background-color: var(--Primary);
    color: var(--White);
}
.flat-with-text-lookbook .tf-pin-btn {
    position: absolute;
}
.flat-with-text-lookbook .tf-pin-btn.pin-1 {
    top: 35%;
    left: 14%;
}
.flat-with-text-lookbook .tf-pin-btn.pin-2 {
    top: 23%;
    left: 15%;
}
.flat-with-text-lookbook .tf-pin-btn.pin-3 {
    top: 23%;
    left: 69%;
}
.flat-with-text-lookbook .tf-btn {
    width: 100%;
    gap: 28px;
    box-shadow: unset;
}
.flat-with-text-lookbook .tf-btn > span {
    position: relative;
}
.flat-with-text-lookbook .tf-btn > span::after {
    position: absolute;
    content: "|";
    width: 8px;
    right: -18px;
}
.flat-with-text-lookbook .tf-btn .discount {
    display: flex;
    align-items: center;
    gap: 8px;
}
.flat-with-text-lookbook .tf-btn .discount span:not(:last-child) {
    text-decoration: line-through;
    color: var(--Secondary2);
}
.flat-with-text-lookbook .sw-lookbook {
    border-radius: 16px;
    overflow: hidden;
}
.flat-with-text-lookbook .sw-button.swiper-button-next {
    right: 21px;
}
.flat-with-text-lookbook .sw-button.swiper-button-prev {
    left: 21px;
}

.cls-lookbook {
    position: relative;
}
.cls-lookbook > .img-style {
    border-radius: 16px;
    overflow: hidden;
    width: 100%;
}
.cls-lookbook > .img-style img {
    width: 100%;
    min-height: 450px;
    object-fit: cover;
}
.cls-lookbook .lookbook-item {
    position: absolute;
}
.cls-lookbook .lookbook-item.position2 {
    left: 40%;
    bottom: 45%;
}
.cls-lookbook .lookbook-item.position1 {
    left: 74%;
    bottom: 40%;
}
.cls-lookbook .lookbook-item .dropdown-menu {
    border: none;
    border-radius: 0;
    background: transparent;
    padding: 0;
    transform: translate(-50%, -38px) !important;
}
.cls-lookbook .lookbook-item:hover .loobook-product-wrap {
    bottom: 42px;
    opacity: 1;
    visibility: visible;
}
.cls-lookbook .lookbook-item:hover .tf-pin-btn.style-2 span {
    border-color: var(--Primary);
    background-color: var(--White);
}
.cls-lookbook.style-4 .lookbook-item.position1 {
    left: 39%;
    bottom: 60%;
}
.cls-lookbook.style-4 .lookbook-item.position2 {
    left: 12%;
    bottom: 65%;
}
.cls-lookbook.style-4 .lookbook-item.position3 {
    left: 70%;
    bottom: 62%;
}

.loobook-product-wrap {
    position: absolute;
    bottom: 50px;
    min-width: max-content;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    opacity: 0;
    visibility: hidden;
}
.loobook-product-wrap .loobook-product {
    background-color: var(--White);
    padding: 12px;
    border-radius: 4px;
    display: flex;
    gap: 12px;
}
.loobook-product-wrap .loobook-product .img-style {
    width: 108px;
}
.loobook-product-wrap .loobook-product .info {
    display: grid;
    gap: 4px;
    margin-bottom: 12px;
}
.loobook-product-wrap .loobook-product .btn-lookbook {
    font-size: 14px;
    line-height: 22px;
}
.loobook-product-wrap .loobook-product .btn-lookbook::after, .loobook-product-wrap .loobook-product .btn-lookbook::before {
    height: 1px;
}

@keyframes ripple-line {
    to {
        transform: scale(2);
        opacity: 0;
    }
}
/*------------ accordion ---------------- */
.page-faqs-wrap {
    display: flex;
}
.page-faqs-wrap .list-faqs {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: 60px;
}
.page-faqs-wrap .faqs-title {
    margin-bottom: 20px;
}
.page-faqs-wrap .accordion-product-wrap .accordion-product-item:not(:last-child) {
    margin-bottom: 15px;
}

.accordion-product-item {
    padding: 22px 20px 17px;
    border-radius: 12px;
    border: 1px solid var(--line);
}
.accordion-product-item .accordion-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.accordion-product-item .accordion-title i {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    font-size: 24px;
}
.accordion-product-item .accordion-title:not(.collapsed) i {
    transform: rotate(180deg);
}
.accordion-product-item .accordion-faqs-content {
    padding-top: 10px;
}
.accordion-product-item.style-2 {
    border-radius: unset;
    padding: 20px 0 19px;
    border: none;
}
.accordion-product-item.style-2:not(:last-child) {
    border-bottom: 1px solid var(--main);
}
.accordion-product-item.style-2 .accordion-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.accordion-product-item.style-2 .accordion-title:not(.collapsed) .btn-open-sub::before {
    transform: rotate(90deg);
}
.accordion-product-item.style-2 .accordion-content {
    margin-top: 20px;
    padding: 15px;
    border-radius: 8px;
    border: 1px solid var(--line);
    gap: 20px;
}
.accordion-product-item.style-2 .btn-open-sub {
    position: relative;
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.accordion-product-item.style-2 .btn-open-sub:after, .accordion-product-item.style-2 .btn-open-sub::before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--main);
    transition: 0.4s ease 0.1s;
    margin: auto;
}
.accordion-product-item.style-2 .btn-open-sub::before {
    width: 2px;
    height: 18px;
}
.accordion-product-item.style-2 .btn-open-sub::after {
    width: 18px;
    height: 2px;
}

.ask-question {
    margin-top: 40px;
    height: max-content;
    flex-shrink: 0;
    box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
    border-radius: 16px;
    padding: 24px;
    margin-left: auto;
}
.ask-question .ask-question-wrap form .tf-select select {
    padding: 9px 16px;
    border-radius: 4px;
}
.ask-question .ask-question-wrap form textarea {
    height: 86px;
}
.ask-question .ask-question-wrap form button {
    height: 48px;
    border: 0;
}

/*------------ zoom ---------------- */
.tf-zoom-main {
    position: sticky;
    top: 30px;
    z-index: 50;
}
.tf-zoom-main .drift-zoom-pane {
    top: 0;
    left: 0;
    height: 520px;
    max-width: 520px;
    width: 100%;
    background: #fff;
    -webkit-transform: translate3d(0, 0, 0);
    box-shadow: 0 1px 5px rgba(127, 127, 127, 0.0196078431), 0 5px 18px rgba(127, 127, 127, 0.2);
    z-index: 3;
}

.drift-bounding-box.drift-open {
    background: rgba(255, 255, 255, 0.2509803922);
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.4) inset;
    z-index: 5000;
}

.drift-zoom-pane {
    z-index: 5000;
}

.section-image-zoom .other-image-zoom {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.section-image-zoom.zoom-active .other-image-zoom {
    opacity: 0.3;
}

.pswp__bg {
    background: var(--White);
}

.pswp__icn {
    fill: rgb(34, 34, 34);
    color: var(--White);
}
.pswp__icn .pswp__icn-shadow {
    stroke: var(--White);
    stroke-width: 1px;
    fill: none;
}

.pswp__counter {
    color: #222;
    text-shadow: 1px 1px 3px #ffffff;
}

.tf-model-viewer {
    width: 100%;
    height: 100%;
    position: relative;
}
.tf-model-viewer model-viewer {
    display: block;
    position: relative;
    z-index: 5;
    width: 100%;
    height: 100%;
}
.tf-model-viewer model-viewer.disabled {
    pointer-events: none;
}
.tf-model-viewer.active model-viewer {
    pointer-events: all;
}
.tf-model-viewer.active .wrap-btn-viewer {
    display: none;
}

/*------------ sections ---------------- */
.flat-spacing {
    padding-top: 80px;
    padding-bottom: 80px;
}

.flat-spacing-2 {
    padding-top: 100px;
    padding-bottom: 100px;
}

.flat-spacing-3 {
    padding-top: 80px;
    padding-bottom: 60px;
}

.flat-spacing-4 {
    padding-top: 100px;
    padding-bottom: 97px;
}

.flat-spacing-5 {
    padding-top: 100px;
    padding-bottom: 103px;
}

.flat-spacing-6 {
    padding-top: 85px;
    padding-bottom: 98px;
}

.flat-spacing-7 {
    padding-top: 76px;
    padding-bottom: 83px;
}

.flat-spacing-8 {
    padding-top: 107px;
    padding-bottom: 78px;
}

.heading-section {
    margin-bottom: 40px;
    display: flex;
    gap: 12px;
    flex-direction: column;
}
.heading-section.style-2 {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.heading-section.style-2 .left {
    display: flex;
    gap: 12px;
    flex-direction: column;
}
.heading-section.spacing-2 {
    margin-bottom: 60px;
}
.heading-section.spacing-3 {
    margin-bottom: 40px;
}
.heading-section.style-white h3 {
    color: var(--White);
}
.heading-section.style-white p {
    color: var(--Secondary2);
}

.tf-breadcrumb-wrap {
    padding: 21px 0 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 15px;
}
.tf-breadcrumb-wrap .tf-breadcrumb-list {
    display: flex;
    gap: 4px;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 1px;
}
.tf-breadcrumb-wrap .tf-breadcrumb-list .icon {
    font-size: 12px;
}
.tf-breadcrumb-wrap .tf-breadcrumb-list span {
    text-decoration: underline;
}
.tf-breadcrumb-wrap .tf-breadcrumb-prev-next {
    display: flex;
    gap: 4px;
    align-items: center;
    font-size: 23px;
}
.tf-breadcrumb-wrap .tf-breadcrumb-prev-next a {
    display: flex;
}

.page-title {
    position: relative;
}
.page-title .paralaximg {
    min-height: 280px;
}
.page-title .content {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.page-title .content .title {
    color: var(--White);
    margin-bottom: 12px;
    text-align: center;
}
.page-title .content .breadcrumb {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 0;
    justify-content: center;
}
.page-title .content .breadcrumb a {
    color: var(--White);
}
.page-title .content .breadcrumb a:hover {
    color: var(--Primary);
}
.page-title .content .breadcrumb li {
    font-size: 14px;
    line-height: 22px;
    color: var(--White);
}
.page-title .content .breadcrumb li:not(:last-child) {
    position: relative;
}
.page-title .content .breadcrumb li:not(:last-child)::after {
    position: absolute;
    content: "\e92e";
    font-family: "icomoon";
    right: -17px;
    top: 1px;
}
.page-title.style-2 .paralaximg {
    min-height: 500px;
}

.tf-countdown {
    padding: 20px;
    border-radius: 16px;
    background-color: var(--White);
    max-width: max-content;
}
.tf-countdown .countdown__timer {
    display: flex;
    gap: 40px;
}
.tf-countdown .countdown__item {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}
.tf-countdown .countdown__item .countdown__value {
    font-size: 40px;
    line-height: 48px;
}
.tf-countdown .countdown__item .countdown__label {
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    color: var(--Secondary);
}
.tf-countdown .countdown__item:not(:last-child)::after {
    position: absolute;
    content: ":";
    font-size: 28px;
    font-weight: 500;
    line-height: 36px;
    top: 50%;
    right: -22px;
    transform: translateY(-50%);
}
.tf-countdown.style-2 {
    padding: 0;
}
.tf-countdown.style-2 .countdown__timer {
    display: flex;
    gap: 46.67px;
}
.tf-countdown.style-2 .countdown__item {
    width: 60px;
}
.tf-countdown.style-2 .countdown__item .countdown__value {
    font-size: 24px;
    line-height: 30px;
    margin-bottom: -4px;
}
.tf-countdown.style-2 .countdown__item .countdown__label {
    font-size: 14px;
    line-height: 22px;
}
.tf-countdown.style-3 .countdown__timer {
    gap: 46px;
    justify-content: center;
}
.tf-countdown.style-3 .countdown__value {
    font-size: 40px;
    font-weight: 400;
    line-height: 48px;
}

.write-cancel-review-wrap .write-review-wrap,
.write-cancel-review-wrap .btn-cancel-review {
    display: none;
}
.write-cancel-review-wrap.write-review .cancel-review-wrap,
.write-cancel-review-wrap.write-review .btn-write-review {
    display: none;
}
.write-cancel-review-wrap.write-review .btn-cancel-review {
    display: flex;
}
.write-cancel-review-wrap.write-review .write-review-wrap {
    display: block;
}
.write-cancel-review-wrap.write-review .check-save label {
    margin-left: 8px;
}

.list-star-default {
    white-space: nowrap;
    display: flex;
    gap: 0px;
}
.list-star-default .icon {
    font-size: 17px;
    color: var(--Yellow);
}
.list-star-default.color-primary .icon {
    color: rgb(130, 116, 96);
}

.gallery-item {
    position: relative;
    border-radius: 8px;
    overflow: hidden;
}
.gallery-item .box-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    z-index: 5;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    background-color: var(--White);
    width: 40px;
    height: 40px;
    font-size: 24px;
}
.gallery-item .box-icon:hover {
    background-color: var(--Onsurface);
    color: var(--White);
}

.team-item .img-style {
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 24px;
    position: relative;
}
.team-item .img-style .tf-social-icon {
    position: absolute;
    top: 12px;
    right: 12px;
    border-radius: 12px;
    transform: translateX(12px);
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.team-item .img-style:hover .tf-social-icon {
    transform: translateX(0px);
    opacity: 1;
    visibility: visible;
}
.team-item .name {
    margin-bottom: 4px;
}
.team-item .name a {
    background-repeat: no-repeat;
    background-position-y: 0px;
    background-image: linear-gradient(transparent calc(100% - 1px), currentColor 1px);
    transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-size: 0 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.team-item:hover .name a {
    background-size: 100% 100%;
    transition-delay: 0.2s;
}

.wrap-categories {
    display: flex;
}
.wrap-categories:not(.wrap-categories.style-2) {
    gap: 24px 74px;
    flex-wrap: wrap;
    justify-content: center;
}
.wrap-categories:not(.wrap-categories.style-2) .categories-item {
    position: relative;
}
.wrap-categories:not(.wrap-categories.style-2) .categories-item:not(:last-child)::after {
    position: absolute;
    content: "/";
    font-size: 40px;
    line-height: 48px;
    color: var(--line);
    right: -48px;
}
.wrap-categories.style-2 {
    justify-content: unset;
    flex-wrap: nowrap;
    gap: 30px;
}
.wrap-categories.style-2 .categories-item {
    width: 234px;
    flex-shrink: 0;
}
.wrap-categories.style-2 .categories-item.style-2 {
    width: 190px;
    flex-shrink: 0;
}

.has-boxshadow {
    padding: 25px 0;
    margin: -25px 0;
}

.categories-item:not(.categories-item.style-3) {
    text-align: center;
    padding: 20px 20px 18px;
    border-radius: 8px;
    border: 1px solid var(--line);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.categories-item:not(.categories-item.style-3) .icon {
    font-size: 68px;
    margin-bottom: 20px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.categories-item:not(.categories-item.style-3) .title {
    margin-bottom: 4px;
}
.categories-item:not(.categories-item.style-3):hover {
    box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.1215686275);
}
.categories-item:not(.categories-item.style-3):hover .icon {
    color: var(--Primary);
}
.categories-item:not(.categories-item.style-3).style-2 {
    border: none;
    padding: 0;
    box-shadow: unset;
}
.categories-item:not(.categories-item.style-3).style-2 .img-style {
    margin: 0 auto;
    max-width: 190px;
    border-radius: 999px;
    overflow: hidden;
    margin-bottom: 16px;
}
.categories-item.style-3 {
    position: relative;
}
.categories-item.style-3::before {
    position: absolute;
    content: "";
    width: 0;
    height: 2px;
    left: auto;
    right: 0;
    bottom: 4px;
    background-color: var(--Primary);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.categories-item.style-3:hover::before {
    width: 100%;
    right: auto;
    left: 0;
}

.wrap-cls-img {
    display: flex;
    gap: 40px;
    justify-content: center;
    flex-wrap: wrap;
    max-width: 1530px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 40px;
}
.wrap-cls-img .cls-img-item {
    display: flex;
    gap: 40px;
    align-items: center;
}
.wrap-cls-img .cls-img-item .image {
    width: 220px;
    height: 121px;
    border-radius: 99px;
    overflow: hidden;
}

.flat-img-with-text-4 {
    display: grid;
    gap: 30px;
}
.flat-img-with-text-4 .relatest-post-item:not(:last-child) {
    padding-bottom: 15.5px;
    border-bottom: 1px solid var(--line);
    margin-bottom: 16.5px;
}

.flat-img-with-text-5 {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.flat-img-with-text-5.style-2 .collection-position {
    border-radius: 12px;
    overflow: hidden;
}

.flat-img-with-text-6 {
    display: grid;
    gap: 12px;
}
.flat-img-with-text-6 .collection-position .img-style {
    width: 100%;
}

.login-wrap {
    display: flex;
    gap: 250px;
    align-items: center;
    position: relative;
}
.login-wrap .left {
    width: 100%;
}
.login-wrap .left .heading {
    margin-bottom: 28px;
}
.login-wrap .right {
    width: 100%;
}
.login-wrap .right p {
    margin-bottom: 28px;
}
.login-wrap .right a {
    padding: 10px 32px;
}

.about-us-main .heading-section {
    display: grid;
    gap: 16px;
}
.about-us-main .img-wrap {
    margin-bottom: 60px;
    border-radius: 28px;
    overflow: hidden;
}
.about-us-main .main-content {
    display: flex;
    gap: 40px;
}
.about-us-main .tf-sw-iconbox {
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid var(--line);
}

.benefit-item {
    display: flex;
    gap: 20px;
}
.benefit-item .icon {
    font-size: 80px;
}
.benefit-item .title {
    margin-bottom: 8px;
}

.about-us .img-style {
    border-radius: 8px;
    overflow: hidden;
}
.about-us .img-style img {
    object-fit: cover;
    width: 100%;
}
.about-us .box-about .benefit {
    display: grid;
    gap: 40px;
}

.location-item .img-style {
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 23px;
    width: 100%;
}
.location-item .img-style img {
    width: 100%;
    object-fit: cover;
}
.location-item .content {
    display: flex;
    flex-direction: column;
    gap: 16px;
    text-align: center;
}
.location-item .info > div:not(:last-child) {
    margin-bottom: 4px;
}

.map-contact {
    height: 850px;
    border-radius: 8px;
}
.map-contact .map-marker-container {
    position: absolute;
    margin-top: 10px;
    transform: translate3d(-50%, -100%, 0);
}
.map-contact .marker-container {
    position: relative;
    top: 25px;
    left: 10px;
    width: 46px;
    height: 46px;
    z-index: 1;
    border-radius: 50%;
    cursor: pointer;
    -webkit-perspective: 1000;
}
.map-contact .marker-card .face {
    position: absolute;
    width: 28px;
    height: 28px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    text-align: center;
    color: #fff;
    z-index: 100;
    border: 8px solid #fff;
    border-radius: 50%;
    box-sizing: content-box;
    background-clip: content-box;
    line-height: 46px;
    font-size: 24px;
    background: none;
    border: none;
}
.map-contact .marker-card .face::before, .map-contact .marker-card .face::after {
    content: none;
}
.map-contact .marker-card .face div {
    background-color: var(--white);
    border-radius: 50%;
    width: 44px;
    height: 44px;
    position: relative;
}
.map-contact .marker-card .face div::after {
    border-radius: 50%;
    position: absolute;
    inset: 0;
    content: "\e900";
    font-family: "icomoon";
    font-size: 28px;
    color: var(--Onsurface);
    height: 44px;
    width: 44px;
    background-color: var(--White);
    display: flex;
    align-items: center;
    justify-content: center;
}
.map-contact .marker-card .face div::before {
    position: absolute;
    content: "";
    width: 60px;
    height: 60px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: rgba(24, 24, 24, 0.1);
    border-radius: 50%;
}
.map-contact.h400 {
    height: 400px;
    border-radius: 0;
}
.map-contact.h590 {
    height: 590px;
    border-radius: 0;
}

.contact-us-content .open-time {
    display: flex;
    gap: 4px;
}
.contact-us-content .open-time span {
    width: 80px;
}

.dropdown .dropdown-title {
    cursor: pointer;
}
.dropdown .dropdown-backdrop.show:before {
    position: fixed;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(24, 24, 24, 0.2);
    z-index: 200;
}
.dropdown.dropdown-store-location {
    width: max-content;
}
.dropdown.dropdown-store-location .dropdown-title {
    cursor: pointer;
    width: max-content;
}
.dropdown.dropdown-store-location .dropdown-menu {
    border: 0;
    background-color: transparent;
    padding: 0;
}
.dropdown.dropdown-store-location .dropdown-content {
    box-shadow: 0px 10px 25px 0px rgba(43, 52, 74, 0.12);
    width: 360px;
    padding: 20px;
    border-radius: 12px;
    border: 1px solid var(--line);
    background-color: var(--White);
    margin: 17px 0 !important;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.dropdown.dropdown-store-location .dropdown-content-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.dropdown.dropdown-store-location .dropdown-content-heading .icon {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    cursor: pointer;
}

.reply-comment .reply-comment-heading {
    margin-bottom: 24px;
}
.reply-comment .reply-comment-item {
    display: flex;
    gap: 20px;
}
.reply-comment .reply-comment-item:not(:last-child) {
    margin-bottom: 20px;
}
.reply-comment .reply-comment-item:not(:last-child) .content {
    border-bottom: 1px solid var(--line);
}
.reply-comment .reply-comment-item.type-reply {
    padding-left: 80px;
}
.reply-comment .reply-comment-item .image {
    flex-shrink: 0;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    overflow: hidden;
}
.reply-comment .reply-comment-item .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.reply-comment .reply-comment-item .content {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-bottom: 20px;
}
.reply-comment .reply-comment-item .content .text-button {
    color: var(--primary);
}
.reply-comment.style-1 .reply-comment-item {
    flex-direction: column;
    gap: 12px;
}
.reply-comment.style-1 .reply-comment-item .user {
    display: flex;
    align-items: center;
    gap: 16px;
}
.reply-comment.style-1 .reply-comment-item h6 {
    margin-bottom: 2px;
}
.reply-comment.style-1 .reply-comment-item:not(:last-child) {
    margin-bottom: 24px;
}
.reply-comment.style-1 .type-reply {
    margin-left: 60px;
    border-left: 4px solid var(--line);
    padding-left: 16px;
}
.reply-comment.style-1 .type-reply .image {
    width: 52px;
    height: 52px;
}

ul.list-text {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
ul.list-text li {
    position: relative;
    padding-left: 20px;
}
ul.list-text.type-disc li:before {
    position: absolute;
    content: "";
    top: 13px;
    left: 13px;
    width: 2.5px;
    height: 2.5px;
    border-radius: 50%;
    background-color: var(--main);
}
ul.list-text.type-number {
    list-style-type: auto;
    margin-bottom: 0;
    padding-left: 0;
    list-style: auto;
}

.wrap-box-icon {
    padding-top: 80px;
    border-top: 1px solid var(--line);
}

.section-tTop-sellers .sw-button {
    top: calc(40% - 4px);
}

.sw-button-over .sw-button {
    top: calc(40% - 4px);
}

.terms-of-use-wrap {
    display: flex;
    gap: 130px;
}
.terms-of-use-wrap > .left {
    width: 360px;
    flex-shrink: 0;
    height: max-content;
    top: 82px;
    border-left: 1px solid var(--line);
}
.terms-of-use-wrap > .left h6 {
    position: relative;
    padding: 10px 0 10px 16px;
    cursor: pointer;
}
.terms-of-use-wrap > .left h6::before {
    position: absolute;
    content: "";
    top: 0;
    left: -1px;
    width: 2px;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    background-color: var(--Onsurface);
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.terms-of-use-wrap > .left h6.active::before {
    height: 100%;
    opacity: 1;
    visibility: visible;
}
.terms-of-use-wrap > .right {
    flex-grow: 1;
}
.terms-of-use-wrap > .right .heading {
    margin-bottom: 40px;
}
.terms-of-use-wrap > .right .terms-of-use-item:not(:last-child) {
    margin-bottom: 32px;
}
.terms-of-use-wrap > .right .terms-of-use-item .terms-of-use-title {
    margin-bottom: 12px;
}
.terms-of-use-wrap > .right .terms-of-use-item .terms-of-use-content {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.my-account-wrap {
    display: flex;
    gap: 81px;
    max-width: 1130px;
    margin-left: auto;
    margin-right: auto;
}
.my-account-wrap .my-account-content {
    width: 100%;
}
.my-account-wrap .wrap-sidebar-account {
    width: 369px;
    flex-shrink: 0;
}

.sidebar-account {
    background-color: var(--Surface);
    border-radius: 20px;
    padding: 40px 32px;
}
.sidebar-account .account-avatar {
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.sidebar-account .account-avatar .image {
    margin-bottom: 16px;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
}
.sidebar-account .account-avatar .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.sidebar-account .my-account-nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.sidebar-account .my-account-nav .my-account-nav-item {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 16px 20px;
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    border-radius: 16px;
}
.sidebar-account .my-account-nav .my-account-nav-item:hover, .sidebar-account .my-account-nav .my-account-nav-item.active {
    background-color: var(--White);
}

.btn-sidebar-account {
    position: fixed;
    top: 200px;
    left: 0;
    z-index: 50;
}
.btn-sidebar-account button {
    width: 40px;
    height: 40px;
    border-radius: 0;
    border: 1px solid var(--Onsurface);
    padding: 0;
    justify-content: center;
}
.btn-sidebar-account button:hover {
    background-color: var(--White);
}

.btn-sidebar-account {
    position: fixed;
    top: 200px;
    left: 0;
    z-index: 50;
}
.btn-sidebar-account button {
    width: 40px;
    height: 40px;
    border-radius: 0;
    border: 1px solid var(--Onsurface);
    padding: 0;
    font-size: 17px;
    justify-content: center;
    background-color: var(--White);
}
.btn-sidebar-account button:hover {
    background-color: var(--Onsurface);
    color: var(--White);
}

.account-details .form-account-details {
    display: flex;
    flex-direction: column;
    gap: 40px;
}
.account-details .title {
    margin-bottom: 16px;
}
.account-details select {
    border-radius: 8px;
    padding: 12px 16px;
}

.account-orders .wrap-account-order {
    overflow-x: auto;
}
.account-orders .wrap-account-order::-webkit-scrollbar {
    height: 3px;
}
.account-orders .wrap-account-order::-webkit-scrollbar-thumb {
    background: var(--surface);
    border-radius: 999px;
}
.account-orders table {
    width: 100%;
    min-width: 700px;
}
.account-orders table thead,
.account-orders table td,
.account-orders table th {
    padding: 15px 20px;
}
.account-orders table thead tr {
    border: 1px solid var(--line);
    background-color: var(--surface);
}
.account-orders table tbody {
    border: 1px solid var(--line);
    border-top: 0;
}
.account-orders table tbody tr:not(:last-child) {
    border-bottom: 1px solid var(--line);
}

.wd-form-address {
    margin: 20px 0px 40px;
    border-radius: 10px;
    padding: 20px 15px;
    border: 1px solid var(--line);
}
.wd-form-address .title {
    font-size: 28px;
    line-height: 33.6px;
    margin: 20px 0px;
}
.wd-form-address .box-field {
    margin-bottom: 15px;
}
.wd-form-address .tf-select select {
    border-radius: 8px;
    height: 46px;
}

.list-account-address {
    display: grid;
    gap: 40px 30px;
}

.show-form-address,
.edit-form-address {
    display: none;
}

.wd-form-order {
    padding: 15px;
    border-radius: 10px;
    border: 1px solid var(--line);
}
.wd-form-order .order-head {
    display: flex;
    align-items: center;
    border-bottom: 1px dashed var(--line);
    padding-bottom: 20px;
    margin-bottom: 30px;
    gap: 12px;
}
.wd-form-order .order-head .img-product {
    width: 80px;
    height: 80px;
    border: 1px solid var(--line);
    border-radius: 3px;
}
.wd-form-order .order-head .img-product img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.wd-form-order .widget-order-tab {
    margin-top: 30px;
}

.badge {
    padding: 5px 10px;
    font-weight: 500;
    background-color: var(--Critical);
    color: white;
    border-radius: 4px;
    font-size: 12px;
    min-width: 22px;
    min-height: 22px;
    text-transform: uppercase;
    text-align: center;
}

.widget-timeline .timeline {
    list-style: none;
    position: relative;
}
.widget-timeline .timeline::before {
    top: 20px;
    bottom: 48px;
    position: absolute;
    content: " ";
    width: 2px;
    left: 10px;
    border-right: 1px dashed var(--Secondary2);
}
.widget-timeline .timeline > li {
    margin-bottom: 15px;
    position: relative;
}
.widget-timeline .timeline > li .timeline-box {
    padding: 10px 10px 10px 15px;
    position: relative;
    display: block;
    margin-left: 40px;
}
.widget-timeline .timeline > li .timeline-badge {
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    height: 22px;
    left: 0;
    position: absolute;
    top: 10px;
    width: 22px;
    padding: 4px;
    background-color: var(--White);
    border: 1.5px solid var(--Secondary2);
}
.widget-timeline .timeline > li .timeline-badge::after {
    content: "";
    width: 10px;
    height: 10px;
    border-radius: 100%;
    display: block;
    background: var(--Secondary2);
}
.widget-timeline .timeline > li .timeline-badge.success {
    border-color: var(--Success);
}
.widget-timeline .timeline > li .timeline-badge.success::after {
    background: var(--Success);
}

.section-lookbook {
    display: flex;
    gap: 120px;
    padding: 102px 77px 100px 53px;
    background-color: var(--Surface);
}
.section-lookbook .left-img {
    width: 66.74%;
}
.section-lookbook .left-img .img-style,
.section-lookbook .left-img .cls-lookbook {
    height: 100%;
}
.section-lookbook .left-img img {
    height: 100%;
}
.section-lookbook .right-product {
    width: 26.5%;
}

.section-box-cls {
    background-color: var(--Onsurface);
    border-radius: 16px;
    max-width: 1800px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 100px;
    padding-bottom: 100px;
}

.cls-item {
    display: flex;
    align-items: center;
    gap: 40px;
}
.cls-item .image {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}
.cls-item .image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.cls-item .title {
    width: max-content;
}

.swiper-auto .swiper-slide {
    width: max-content;
}
.swiper-auto .swiper-wrapper {
    transition-timing-function: linear !important;
}

.tf-sw-cls {
    padding: 39px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

/*-------------- Responsive ----------------- */
@media (min-width: 576px) {
    .tf-grid-layout.sm-col-2 {
        grid-template-columns: 1fr 1fr;
    }
    .tf-grid-layout.sm-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }
    .tf-grid-layout.sm-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }
    .tf-grid-layout.sm-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }
    .tf-grid-layout.sm-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }
    .tf-grid-layout.sm-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
}
@media (min-width: 768px) {
    .tf-grid-layout-md.md-col-2,
    .tf-grid-layout.md-col-2 {
        grid-template-columns: 1fr 1fr;
    }
    .tf-grid-layout-md.md-col-3,
    .tf-grid-layout.md-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }
    .tf-grid-layout-md.md-col-4,
    .tf-grid-layout.md-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }
    .tf-grid-layout-md.md-col-5,
    .tf-grid-layout.md-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }
    .tf-grid-layout-md.md-col-6,
    .tf-grid-layout.md-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }
    .tf-grid-layout-md.md-col-7,
    .tf-grid-layout.md-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
    .tf-grid-layout-md {
        display: grid;
        gap: 15px;
    }
    .card-product-item .card-product-wrapper .on-sale-wrap {
        top: 13px;
        left: 12px;
    }
    .tf-slideshow.style-4 .box-content {
        left: 15%;
    }
    .grid-cls-v2 {
        display: grid;
        grid-template-areas: "item1 item2" "item1 item3";
        gap: 15px;
    }
    .grid-cls-v2 .item1 {
        grid-area: item1;
        max-height: 630px;
    }
    .grid-cls-v2 .item2 {
        grid-area: item2;
        max-height: 300px;
    }
    .grid-cls-v2 .item3 {
        grid-area: item3;
        max-height: 300px;
    }
    .ask-question {
        width: 380px;
        margin-top: 0px;
        top: 105px;
    }
    .slider-scroll,
    .thumbs-slider,
    .frequently-bought-together-2 {
        max-width: 615px;
    }
    .tf-product-info-list {
        max-width: 615px;
        margin-left: auto;
    }
    .list-account-address {
        grid-template-columns: repeat(2, 1fr);
    }
    .card-product .btn-main-product {
        font-size: 14px;
        line-height: 22px;
    }
}
@media (min-width: 992px) {
    .tab-product {
        margin-bottom: 28px;
        gap: 40px;
    }
    .tf-grid-layout-md,
    .tf-grid-layout-lg,
    .tf-grid-layout {
        column-gap: 30px;
        row-gap: 30px;
    }
    .tf-grid-layout-md.lg-col-2,
    .tf-grid-layout-lg.lg-col-2,
    .tf-grid-layout.lg-col-2 {
        grid-template-columns: 1fr 1fr;
    }
    .tf-grid-layout-md.lg-col-3,
    .tf-grid-layout-lg.lg-col-3,
    .tf-grid-layout.lg-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }
    .tf-grid-layout-md.lg-col-4,
    .tf-grid-layout-lg.lg-col-4,
    .tf-grid-layout.lg-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }
    .tf-grid-layout-md.lg-col-5,
    .tf-grid-layout-lg.lg-col-5,
    .tf-grid-layout.lg-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }
    .tf-grid-layout-md.lg-col-6,
    .tf-grid-layout-lg.lg-col-6,
    .tf-grid-layout.lg-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }
    .tf-grid-layout-md.lg-col-7,
    .tf-grid-layout-lg.lg-col-7,
    .tf-grid-layout.lg-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
    .tf-grid-layout-lg {
        display: grid;
    }
    .sidebar.maxw-360 {
        max-width: 380px;
        margin-left: auto;
    }
    .sw-dots:not(.swiper-pagination-lock) {
        margin-top: 40px;
    }
    .tab-banner .nav-tab-item .nav-tab-link {
        padding-top: 30px;
        padding-bottom: 29px;
        padding-right: 30px;
    }
    .flat-with-text-lookbook .wrap-cart-item .cart-item:not(:last-child) {
        padding-bottom: 24px;
        margin-bottom: 24px;
    }
    .card-product .tooltip {
        display: block;
    }
    .card-product.style-1 .list-product-btn, .card-product.style-3 .list-product-btn, .card-product.style-5 .list-product-btn {
        top: 8px;
        right: 8px;
        gap: 8px;
    }
    .card-product.style-1 .list-product-btn .box-icon, .card-product.style-3 .list-product-btn .box-icon, .card-product.style-5 .list-product-btn .box-icon {
        width: 40px;
        height: 40px;
        min-width: 40px;
        transform: translateX(12px);
        opacity: 0;
        visibility: hidden;
    }
    .card-product.style-1 .list-product-btn .wishlist, .card-product.style-3 .list-product-btn .wishlist, .card-product.style-5 .list-product-btn .wishlist {
        transition-delay: 0s;
    }
    .card-product.style-1 .list-product-btn .compare, .card-product.style-3 .list-product-btn .compare, .card-product.style-5 .list-product-btn .compare {
        transition-delay: 0.1s;
    }
    .card-product.style-1 .list-product-btn .quickview, .card-product.style-3 .list-product-btn .quickview, .card-product.style-5 .list-product-btn .quickview {
        transition-delay: 0.2s;
    }
    .card-product.style-1 .list-btn-main, .card-product.style-3 .list-btn-main, .card-product.style-5 .list-btn-main {
        opacity: 0;
        visibility: hidden;
        transform: translateY(20px);
        opacity: 0;
        visibility: hidden;
    }
    .card-product.style-1:hover .list-btn-main,
    .card-product.style-1:hover .list-product-btn, .card-product.style-3:hover .list-btn-main,
    .card-product.style-3:hover .list-product-btn, .card-product.style-5:hover .list-btn-main,
    .card-product.style-5:hover .list-product-btn {
        opacity: 1 !important;
        visibility: visible !important;
    }
    .card-product.style-1:hover .list-product-btn .box-icon, .card-product.style-3:hover .list-product-btn .box-icon, .card-product.style-5:hover .list-product-btn .box-icon {
        opacity: 1 !important;
        visibility: visible !important;
        transform: translateX(0);
    }
    .card-product.style-1:hover .list-btn-main, .card-product.style-3:hover .list-btn-main, .card-product.style-5:hover .list-btn-main {
        transform: translate(0);
        opacity: 1;
        visibility: visible;
    }
    .card-product.style-list {
        gap: 40px;
    }
    .card-product.style-list .list-product-btn .box-icon {
        width: 48px;
        height: 48px;
        min-width: 48px;
    }
    .card-product.style-list .btn-main-product {
        height: 48px;
    }
    .card-product.style-2 .list-product-btn {
        bottom: 12px;
        gap: 12px;
    }
    .card-product.style-2 .list-product-btn .cart {
        transition-delay: 0s;
    }
    .card-product.style-2 .list-product-btn .wishlist {
        transition-delay: 0.1s;
    }
    .card-product.style-2 .list-product-btn .compare {
        transition-delay: 0.2s;
    }
    .card-product.style-2 .list-product-btn .quickview {
        transition-delay: 0.3s;
    }
    .card-product.style-2 .box-icon {
        transform: translateY(20px);
        opacity: 0;
        visibility: hidden;
    }
    .card-product.style-2:hover .box-icon {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }
    .card-product.style-3 .list-btn-main .box-icon, .card-product.style-4 .list-btn-main .box-icon {
        height: 40px;
        width: 40px;
    }
    .card-product.style-4 .list-product-btn {
        bottom: 12px;
        opacity: 0;
        visibility: hidden;
        transform: translate(-50%, 20px);
        opacity: 0;
        visibility: hidden;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }
    .card-product.style-4:hover .list-product-btn {
        transform: translate(-50%, 0);
        opacity: 1;
        visibility: visible;
    }
    .card-product.style-5 .list-btn-main {
        gap: 8px;
    }
    .card-product.style-5 .btn-quickview {
        display: flex;
    }
    .card-product.style-5 .list-product-btn .quickview {
        display: none;
    }
    .testimonial-item .img-style .box-icon {
        visibility: hidden;
        opacity: 0;
        width: 40px;
        height: 40px;
        font-size: 24px;
    }
    .testimonial-item:hover .img-style .box-icon {
        visibility: visible;
        opacity: 1;
    }
    .collection-position.style-2 .content {
        margin: 0 40px;
    }
    .cls-lookbook .dropdown-menu {
        --bs-dropdown-min-width: 19rem;
    }
    .tf-slideshow.style-default .box-content {
        bottom: 100px;
    }
    .tf-slideshow.style-default .box-content .tf-btn {
        height: 58px;
        padding: 0 32px;
    }
    .tf-slideshow.style-default.slider-nav-sw .wrap-pagination {
        display: block;
        bottom: 60px;
    }
    .grid-cls-v2 {
        gap: 30px;
    }
    #scroll-top {
        bottom: 40px;
        right: 40px;
    }
    #scroll-top.style-1 {
        bottom: 80px;
    }
    .flat-img-with-text-4 {
        gap: 40px;
        grid-template-columns: 1fr 1fr;
        position: relative;
    }
    .flat-img-with-text-5 {
        flex-direction: row;
    }
    .flat-img-with-text-5 .collection-position {
        height: 640px;
        width: 50%;
    }
    .flat-img-with-text-5 .collection-position .img-style {
        width: 100%;
    }
    .flat-img-with-text-5.style-2 {
        padding: 0 5px;
    }
    .flat-img-with-text-5.style-2 .collection-position {
        height: unset;
    }
    .flat-img-with-text-6 {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .tf-page-checkout .wrap:not(:last-child) {
        margin-bottom: 40px;
    }
    .tf-page-checkout .login-box {
        padding: 20px;
    }
    .tf-page-checkout .login-box .grid-2 {
        gap: 20px;
    }
    .tf-page-checkout .info-box {
        gap: 20px;
    }
    .flat-sidebar-checkout .item-product {
        gap: 24px;
    }
    .tf-table-page-cart th {
        font-size: 20px;
        padding-left: 20px;
        padding-right: 40px;
        text-align: center;
    }
    .tf-table-page-cart th:last-child {
        padding-right: 0;
    }
    .tf-table-page-cart th:first-child {
        padding-left: 0;
        text-align: start;
    }
    .tf-table-page-cart td {
        padding: 27px 22px;
    }
    .box-order {
        padding: 24px;
    }
    .product-bought {
        gap: 24px;
    }
    .about-us .box-about {
        padding-left: 90px;
    }
    .tab-shipping.type-two-cols {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }
    .wrap-box-location.swiper-wrapper {
        gap: 30px;
    }
    .card-product.style-list .card-product-wrapper {
        width: 94%;
    }
    .card-product.style-2 .list-product-btn .box-icon {
        height: 40px;
        width: 40px;
    }
    .btn-sidebar-account {
        display: none;
    }
}
@media (min-width: 1200px) {
    .relatest-post {
        padding-left: 10px;
    }
    .filterShop {
        display: none;
    }
    .hover-cursor-img {
        position: relative;
    }
    .hover-cursor-img .hover-image {
        position: fixed;
        transform: scale(0);
        pointer-events: none;
        opacity: 0;
        -webkit-transition: opacity 0.3s, -webkit-transform 0.7s cubic-bezier(0.23, 1, 0.32, 1);
        transition: opacity 0.3s, -webkit-transform 0.7s cubic-bezier(0.23, 1, 0.32, 1);
        transition: opacity 0.3s, transform 0.7s cubic-bezier(0.23, 1, 0.32, 1);
        transition: opacity 0.3s, transform 0.7s cubic-bezier(0.23, 1, 0.32, 1), -webkit-transform 0.7s cubic-bezier(0.23, 1, 0.32, 1);
        z-index: 1000;
        display: block;
        width: 255px;
        height: 255px;
    }
    .hover-cursor-img .hover-image img {
        transform: rotate(-10deg);
        border-radius: 16px;
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .dropdown-filter {
        max-width: 100%;
        position: absolute;
        z-index: 100;
        padding: 30px 0px 40px;
        top: 100%;
        left: 0;
        right: 0;
        opacity: 0;
        visibility: hidden;
    }
    .dropdown-filter .widget-facet {
        margin-bottom: 0;
        padding-bottom: 0;
        border: 0;
    }
    .dropdown-filter .canvas-body {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        column-gap: 30px;
        row-gap: 40px;
    }
    .dropdown-filter.show {
        margin-top: 10px;
        opacity: 1;
        visibility: visible;
    }
    .tf-grid-layout {
        column-gap: 30px;
        row-gap: 30px;
    }
    .tf-grid-layout.xl-col-2 {
        grid-template-columns: 1fr 1fr;
    }
    .tf-grid-layout.xl-col-3 {
        grid-template-columns: repeat(3, 1fr);
    }
    .tf-grid-layout.xl-col-4 {
        grid-template-columns: repeat(4, 1fr);
    }
    .tf-grid-layout.xl-col-5 {
        grid-template-columns: repeat(5, 1fr);
    }
    .tf-grid-layout.xl-col-6 {
        grid-template-columns: repeat(6, 1fr);
    }
    .tf-grid-layout.xl-col-7 {
        grid-template-columns: repeat(7, 1fr);
    }
    .blog-grid-main .tf-grid-layout {
        row-gap: 48px;
    }
    .tf-img-with-text .banner-left {
        padding: 77.5px 80px;
    }
    .tf-img-with-text .banner-left .tab-banner {
        margin-bottom: 40px;
    }
    .flat-with-text-lookbook .lookbook-content {
        padding-left: 70px;
    }
    .flat-with-text-lookbook .lookbook-content .box-title {
        margin-bottom: 40px;
    }
    .card-product .list-product-btn {
        top: 12px;
        right: 12px;
    }
    .card-product .tooltip {
        display: block;
    }
    .card-product .on-sale-wrap {
        top: 13px !important;
        left: 13px !important;
    }
    .tf-countdown-lg .countdown__item {
        min-width: 60px;
        min-height: 70px;
    }
    .gallery-item .box-icon {
        opacity: 0;
        visibility: hidden;
    }
    .gallery-item:hover::before {
        opacity: 1;
        visibility: visible;
    }
    .gallery-item:hover .box-icon {
        opacity: 1;
        visibility: visible;
    }
    .tf-slideshow.style-3 {
        padding: 0px 32px 0 32px;
    }
    .flat-img-with-text-4 {
        gap: 74px;
    }
    .fl-sidebar-cart {
        padding-left: 30px;
    }
    .box-order .ship {
        gap: 70px;
    }
    .about-us-main .main-content {
        gap: 76px;
    }
    .about-us-main .tf-sw-iconbox {
        margin-top: 60px;
        padding-top: 60px;
    }
    .wrap-box-location.swiper-wrapper {
        gap: 60px;
    }
    .testimonial-item.style-3 {
        padding-right: 30px;
    }
    .tf-img-with-text-3 .content-left {
        padding: 40px 0 40px 31px;
    }
    .flat-img-with-text-6 .collection-position .img-style {
        height: 632px;
    }
    .sidebar-filter.canvas-filter .canvas-body {
        padding: 0;
    }
    .tab-reviews.style-2 .tab-reviews-heading {
        flex-wrap: nowrap;
        gap: 30px;
    }
    .tab-reviews.style-2 .rating-score {
        max-width: 264px;
    }
    .accordion-product-item.style-2 .accordion-content {
        padding: 28px;
    }
    .space-1 {
        height: 40px;
    }
}
@media (min-width: 1300px) {
    .cls-lookbook .dropdown-menu {
        transform: translate(49px, 43px) !important;
    }
}
@media (min-width: 1440px) {
    .tf-slideshow.style-4 .box-content {
        left: 32%;
    }
    .modal-open .tf-sticky-btn-atc {
        padding-right: 17px;
    }
    .tf-topbar .container-full,
    .header-default .container-full {
        padding: 0 60px;
    }
}
@media (max-width: 1515px) {
    .tf-slideshow .wrap-slider {
        height: 700px;
    }
    .tf-slideshow.style-4 .wrap-slider {
        display: grid;
        grid-template-columns: 50% 50% !important;
    }
}
@media (max-width: 1440px) {
    .mega-menu.mega-menu-1 .row-demo-1 {
        padding-left: 15px;
        padding-right: 15px;
        gap: 80px;
    }
    .mega-menu.mega-menu-1 .row-demo-1 .mega-menu-list {
        gap: 7px;
    }
    .mega-menu.mega-menu-1 .row-demo-1 .mega-menu-list .mega-menu-item:last-child {
        min-width: 250px;
    }
    .mega-menu.mega-menu-1 .row-demo-1 .mega-menu-list .collection-position.style-2 .content {
        bottom: 20px;
        margin: 0 20px;
    }
    .section-lookbook {
        gap: 60px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .section-lookbook .left-img {
        width: unset;
        flex-grow: 1;
    }
    footer .footer-left {
        gap: 55px;
    }
    footer .form-newsletter {
        margin-bottom: 40px;
    }
    .testimonial-item .content {
        padding-left: 15px;
        padding-right: 15px;
    }
    .sw-button-over .swiper-button-prev,
    .sw-button-over .swiper-button-next {
        display: none;
    }
    .terms-of-use-wrap {
        gap: 60px;
    }
}
@media (max-width: 1350px) {
    h1 {
        font-size: 46px;
        line-height: 54px;
    }
}
@media (max-width: 1199px) {
    .section-lookbook,
    .section-box-cls,
    .flat-spacing-8,
    .flat-spacing-7,
    .flat-spacing-6,
    .flat-spacing-5,
    .flat-spacing-4,
    .flat-spacing-3,
    .flat-spacing-2,
    .flat-spacing {
        padding-top: 50px;
        padding-bottom: 50px;
    }
    .header-default.header-absolute {
        margin-bottom: -69px;
    }
    .header-default.header-absolute .has-border-y {
        border: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
        padding: 15px 0;
    }
    .header-default.header-absolute.header-style-2 {
        margin-bottom: -69px;
        margin-left: 0;
        margin-right: 0;
        padding-left: 15px;
        padding-right: 15px;
    }
    .header-default.header-style-3 .main-header {
        padding: 10px 0;
    }
    .sidebar-filter {
        position: fixed;
        bottom: 0;
        z-index: 3000;
        display: flex;
        flex-direction: column;
        background-clip: padding-box;
        outline: 0;
        top: 0;
        left: 0;
        transform: translateX(-100%);
    }
    .sidebar-filter.show {
        transform: none;
    }
    .tf-control-layout .sw-layout-5,
    .tf-control-layout .sw-layout-4 {
        display: none;
    }
    .fl-sidebar-cart {
        margin-top: 30px;
    }
    .login-wrap {
        gap: 60px;
    }
    .modal-search .modal-dialog .modal-content {
        padding: 15px;
        gap: 20px;
    }
    .modal-search .modal-dialog .modal-content .tf-grid-layout {
        padding-right: 10px;
        margin-right: -15px;
    }
    .modal-size-guide .modal-dialog .modal-content {
        padding: 15px;
    }
    .form-sticky-atc {
        justify-content: center !important;
    }
    .form-sticky-atc .text-title,
    .form-sticky-atc .tf-sticky-atc-product {
        display: none;
    }
    .form-sticky-atc .tf-sticky-atc-infos {
        gap: 15px;
        width: 100%;
    }
    .form-sticky-atc .tf-sticky-atc-infos .tf-sticky-atc-btns {
        width: 100%;
    }
    .tf-slideshow.style-4 .wrap-pagination {
        display: block;
    }
    .tf-slideshow.style-4 .sw-dots .swiper-pagination-bullet-active {
        border: 1px solid var(--Onsurface);
    }
    .tf-slideshow.style-4 .sw-dots .swiper-pagination-bullet-active::after {
        border: 1px solid var(--Onsurface);
        background-color: var(--Onsurface);
    }
    .tf-slideshow.style-4 .sw-dots .swiper-pagination-bullet::after {
        border-color: var(--Onsurface);
    }
    .tf-slideshow.style-2 .box-content {
        left: 15px;
        right: 15px;
    }
    .header-default .nav-icon .nav-account,
    .header-default .nav-icon .nav-search,
    .header-default .nav-icon .nav-wishlist {
        display: none;
    }
    .header-default .main-header {
        padding-top: 15px;
        padding-bottom: 15px;
    }
    .text-display {
        font-size: 50px;
        line-height: 60px;
    }
}
@media (max-width: 1100px) {
    .blog-detail-wrap > .inner > .tf-social-icon {
        display: none;
    }
}
@media (max-width: 1024px) {
    h1 {
        font-size: 34px;
        line-height: 44px;
    }
    h3 {
        font-size: 24px;
        line-height: 34px;
    }
    h4 {
        font-size: 24px;
        line-height: 34px;
    }
    h5 {
        font-size: 20px;
        line-height: 26px;
    }
    .tf-slideshow .wrap-slider {
        height: 650px;
    }
}
@media (max-width: 991px) {
    .tf-img-with-text-3 .image-wrap {
        height: unset;
        aspect-ratio: 1;
    }
    .header-default.header-absolute.header-style-2 {
        margin-bottom: -59px;
    }
    .header-default.header-absolute.header-style-2.header-bg {
        padding-left: 0;
        padding-right: 0;
    }
    .logo-header {
        width: 110px;
    }
    .slider-home5 {
        margin-top: 30px;
    }
    .tf-slideshow.style-2 .box-content {
        bottom: 300px;
    }
    .tf-slideshow.style-2 .slider-home2-thumbs {
        left: 15px;
        right: 15px;
        bottom: 30px;
        height: 160px;
        width: unset;
    }
    .tf-slideshow.style-2 .thumbs-item .image {
        width: 120px;
        height: 160px;
    }
    .tf-slideshow.style-2 .wrap-navigation {
        bottom: 30px;
        left: 240px;
        height: 40px;
        right: unset;
        gap: 15px;
    }
    .tf-slideshow.style-2 .wrap-navigation .sw-button {
        width: 40px;
        height: 40px;
    }
    .tf-slideshow.style-2 .wrap-navigation .sw-button::before {
        font-size: 18px;
    }
    .tf-slideshow.style-2 .sw-dots {
        bottom: 44px;
        left: 165px;
    }
    .section-lookbook {
        gap: 30px;
        padding-left: 15px;
        padding-right: 15px;
    }
    .wrap-cls-img {
        gap: 20px;
    }
    .wrap-cls-img .cls-img-item {
        gap: 20px;
    }
    .wrap-cls-img .cls-img-item .image {
        width: 100px;
        height: 60px;
    }
    .tf-sticky-btn-atc {
        bottom: 70px;
    }
    .tf-toolbar-bottom {
        display: flex;
    }
    .d_lg_none {
        display: none !important;
    }
    br {
        display: none;
    }
    .mb-lg-30 {
        margin-bottom: 30px;
    }
    .text-display {
        font-size: 55px;
        line-height: 63px;
    }
    footer {
        /* margin-bottom: 70px; */
    }
    footer .footer-left {
        flex-direction: column;
        border-right: 0;
        gap: 40px;
    }
    footer .footer-body {
        padding: 30px 0;
        gap: 0px;
        flex-direction: column;
    }
    footer .footer-body > div {
        max-width: 100%;
    }
    footer .footer-heading-mobile {
        display: block;
        position: relative;
        padding-right: 30px;
        margin-bottom: 10px;
    }
    footer .footer-heading-mobile::after {
        position: absolute;
        content: "";
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 12px;
        height: 1px;
        background-color: var(--White);
        transition: 0.25s ease-in-out;
    }
    footer .footer-heading-mobile::before {
        position: absolute;
        content: "";
        right: 15px;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 1px;
        height: 12px;
        background-color: var(--White);
        transition: 0.25s ease-in-out;
    }
    footer .footer-col-block.open .footer-heading-mobile::before {
        opacity: 0;
    }
    footer .footer-col-block.open .footer-heading-mobile::after {
        transform: translate(0%, -50%) rotate(180deg);
    }
    footer .footer-col-block .tf-collapse-content {
        display: none;
    }
    footer .footer-menu {
        flex-wrap: wrap;
        gap: 18px;
        margin-bottom: 18px;
    }
    footer .footer-menu > div {
        width: 100%;
    }
    footer .footer-bottom-wrap {
        justify-content: center;
    }
    footer .footer-infor {
        display: flex;
        gap: 30px;
        flex-direction: column;
    }
    footer .footer-infor .footer-menu {
        order: 1;
    }
    footer .line {
        display: none;
    }
    .blog-detail-wrap > .inner {
        padding: 15px 15px 0;
    }
    .loobook-product {
        gap: 10px;
    }
    .tf-slideshow.style-default .box-content {
        gap: 20px;
        width: calc(100% - 30px);
        bottom: 55px;
    }
    .tf-slideshow.style-default .box-content .box-title {
        gap: 4px;
    }
    .relatest-post-item.blog-article-item .article-thumb {
        max-width: 100%;
    }
    .box-about {
        margin-top: 40px;
    }
    .tab-description {
        flex-wrap: wrap;
        padding: 0;
    }
    .tab-shipping {
        flex-direction: column;
    }
    .widget-tabs.style-1 .widget-menu-tab {
        justify-content: start;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
    .widget-tabs.style-1 .widget-content-inner {
        padding: 30px 15px;
    }
    .terms-of-use-wrap {
        gap: 30px;
    }
    .terms-of-use-wrap .left {
        width: 300px;
    }
    .terms-of-use-wrap .right .heading {
        margin-bottom: 32px;
    }
    .wrap-sidebar-account {
        display: none;
    }
    .mb-lg-30 {
        margin-bottom: 30px;
    }
    .section-news-insight .relatest-post {
        margin-top: 38.5px;
    }
    .card-product .btn-main-product {
        height: 28px;
    }
    .card-product .box-icon {
        min-width: 28px !important;
        width: 28px !important;
        height: 28px !important;
    }
    .card-product .box-icon .icon {
        font-size: 16px !important;
    }
    .card-product.style-list .list-product-btn .box-icon .icon {
        font-size: 16px;
    }
}
@media (max-width: 767px) {
    .relatest-post-item p {
        font-size: 14px;
    }
    .sw-dots.type-circle .swiper-pagination-bullet {
        width: 16px;
        height: 16px;
    }
    .sw-dots.type-circle .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
        width: 6px;
        height: 6px;
    }
    .article-label a {
        font-size: 16px;
        line-height: 28px;
    }
    .md-px-15 {
        padding-left: 15px;
        padding-right: 15px;
    }
    .md-mb-30 {
        margin-bottom: 30px;
    }
    .wrap-lookbook-hover .lookbook-content {
        display: none;
    }
    .wrap-lookbook-hover .tf-pin-btn .loobook-product-wrap {
        top: 50px;
        bottom: unset;
    }
    .wrap-lookbook-hover .tf-pin-btn.active .loobook-product-wrap {
        opacity: 1;
        visibility: visible;
    }
    .section-news-insight .collection-position {
        min-height: 400px;
    }
    .section-news-insight .relatest-post {
        margin-top: 24px;
    }
    .section-news-insight .relatest-post-item:not(:last-child) {
        padding-bottom: 24px !important;
        margin-bottom: 24px !important;
    }
    .section-news-insight .relatest-post-item .image {
        width: 150px !important;
        height: 150px !important;
    }
    .tab-banner .nav-tab-item .nav-tab-link .title {
        gap: 5px;
    }
    .tab-banner .nav-tab-item .nav-tab-link .arr-link .text-more {
        display: none;
    }
    .tf-img-with-text-3,
    .section-box-cls {
        border-radius: 6px;
    }
    .section-lookbook {
        flex-direction: column;
    }
    .section-lookbook .right-product {
        width: 100%;
    }
    .heading-section.style-2 {
        gap: 20px 12px;
    }
    .tf-control-layout .sw-layout-3 {
        display: none;
    }
    .md-none {
        display: none !important;
    }
    h4 {
        font-size: 22px;
        line-height: 32px;
    }
    h5 {
        font-size: 18px;
        line-height: 24px;
    }
    .text-display {
        font-size: 34px;
        line-height: 44px;
    }
    .blog-article-item .article-thumb {
        width: 100% !important;
        max-width: 100% !important;
    }
    .blog-article-item.style-list {
        flex-wrap: wrap;
    }
    .blog-article-item.style-list .article-content {
        padding: 16px 0 0 0;
    }
    .tf-img-with-text {
        grid-template-columns: 1fr;
    }
    .tf-slideshow .wrap-slider {
        height: 400px;
    }
    .tf-slideshow.slider-nav-sw .wrap-pagination {
        display: block;
    }
    .tf-slideshow:not(.style-2) .sw-button {
        display: none;
    }
    .tf-slideshow .wrap-pagination {
        bottom: 20px;
    }
    .tf-slideshow .wrap-slider {
        border-radius: 0 0 12px 12px !important;
    }
    .tf-slideshow.style-2 .wrap-slider, .tf-slideshow.style-3 .wrap-slider {
        height: 530px;
    }
    .tf-slideshow.style-2 .box-content, .tf-slideshow.style-3 .box-content {
        bottom: 220px;
    }
    .tf-slideshow.style-4 {
        padding-bottom: 20px;
    }
    .tf-slideshow.style-4 .wrap-slider {
        grid-template-columns: 1fr;
        height: unset;
    }
    .tf-slideshow.style-4 .content-left {
        padding: 40px 15px;
        text-align: center;
    }
    .tf-slideshow.style-4 .img-style {
        height: 300px;
    }
    .tf-slideshow.style-4 .box-content {
        transform: unset;
        position: unset;
        max-width: 100%;
    }
    .tf-slideshow.style-4 .wrap-pagination {
        position: unset;
    }
    .tf-slideshow .tf-btn {
        margin: 0 auto;
        height: 42px;
        padding: 0 15px;
    }
    .grid-cls-v2 .item1 .collection-position .img-style {
        width: 100%;
    }
    .grid-cls-v2 .collection-position .img-style {
        height: 400px;
    }
    .about-us-main .main-content {
        flex-wrap: wrap;
    }
    .tf-table-page-cart thead {
        display: none;
    }
    .tf-table-page-cart .tf-cart-item {
        padding-left: 130px;
        min-height: 140px;
        display: block;
        position: relative;
    }
    .tf-table-page-cart .tf-cart-item:not(:last-child) {
        margin-bottom: 15px;
    }
    .tf-table-page-cart .tf-cart-item td {
        display: flex;
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
        padding: 10px 0;
        margin: 0;
    }
    .tf-table-page-cart .tf-cart-item td:not(:last-child) {
        border-bottom: 1px dashed var(--line);
    }
    .tf-table-page-cart .tf-cart-item .img-box {
        position: absolute;
        top: 0;
        left: 0;
        overflow: hidden;
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: none;
        width: 110px;
        max-height: 110px;
    }
    .tf-table-page-cart .tf-cart-item td[data-cart-title]:before {
        content: attr(data-cart-title);
        color: var(--main);
        text-align: start;
        flex: 1 1 auto;
    }
    .group-bought .wrap-product {
        flex-wrap: wrap;
    }
    .group-bought .wrap-product .product-bought {
        width: 100%;
    }
    .login-wrap {
        flex-direction: column;
        gap: 40px;
    }
    .benefit-item .icon {
        font-size: 60px;
    }
    .benefit-item .title {
        font-size: 25px;
        line-height: 33px;
    }
    .card-product .countdown-box,
    .card-product .size-list,
    .card-product .wishlist,
    .card-product .compare {
        display: none !important;
    }
    .card-product.style-list .description {
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        overflow: hidden;
        display: -webkit-box;
    }
    .card-product.style-list .variant-wrap-list {
        margin-top: 6px;
    }
    .testimonial-item .content-top {
        margin-bottom: 30px;
    }
    .modal-shopping-cart .modal-content {
        max-width: min(500px, 90vw) !important;
    }
    .modal-shopping-cart .tf-minicart-recommendations {
        display: none;
    }
    .modal-shopping-cart .tf-mini-cart-threshold {
        margin-left: 15px;
        margin-right: 15px;
    }
    .modal-shopping-cart .tf-mini-cart-item {
        margin: 0 12px;
        padding: 12px 0;
        gap: 12px;
    }
    .modal-shopping-cart.style-empty .content-inner {
        padding: 0;
    }
    .modal-quick-view .modal-content {
        max-width: min(500px, 90vw) !important;
        flex-direction: column;
        overflow-y: auto !important;
    }
    .modal-quick-view .modal-content .tf-quick-view-image {
        width: 100%;
        display: block;
    }
    .modal-quick-view .modal-content .tf-quick-view-image .wrap-quick-view {
        padding: 15px;
        display: flex;
        direction: ltr;
        height: unset;
    }
    .modal-quick-view .modal-content .tf-quick-view-image .wrap-quick-view .quickView-item {
        width: 200px;
        flex-shrink: 0;
        border-radius: 0;
    }
    .modal-quick-view .modal-content .tf-quick-view-image .wrap-quick-view .quickView-item:not(:last-child) {
        margin-bottom: 0;
        margin-right: 15px;
    }
    .modal-quick-view .modal-content .wrap {
        overflow: unset;
        height: unset;
        padding: 20px 15px;
    }
    .slider-scroll,
    .thumbs-slider {
        flex-direction: column !important;
    }
    .slider-scroll > div,
    .thumbs-slider > div {
        width: 100%;
    }
    .slider-scroll .tf-product-media-thumbs,
    .thumbs-slider .tf-product-media-thumbs {
        order: 1;
    }
    .tf-product-info-wrap {
        padding-top: 30px;
    }
    .tf-countdown.style-2 .countdown__timer {
        gap: 30px;
    }
    .reply-comment.style-1 .type-reply {
        margin-left: 15px;
    }
    .tab-product .nav-tab-item a {
        font-size: 18px;
        line-height: 30px;
    }
    .terms-of-use-wrap {
        flex-direction: column;
    }
    .terms-of-use-wrap .left {
        width: 100%;
        position: unset;
    }
    .tf-btn {
        padding: 0 10px;
        height: 42px;
    }
    .wrap-categories.has-boxshadow {
        padding: 15px;
        margin: -15px;
    }
    .wrap-categories.style-2 .categories-item.style-2 {
        width: 150px !important;
    }
    .wrap-categories.style-2 .categories-item.style-2 .img-style {
        width: 150px;
    }
    .sw-button {
        width: 32px;
        height: 32px;
    }
    .sw-button::before {
        font-size: 16px;
    }
    .tf-sw-products.style-full {
        padding-left: 15px;
    }
    .tf-box-icon {
        text-align: center;
    }
    .loobook-product-wrap .loobook-product {
        width: 124px;
        flex-direction: column;
    }
    .loobook-product-wrap .loobook-product .img-style {
        width: 100px;
        height: 100px;
    }
    .loobook-product-wrap .loobook-product .text-title,
    .loobook-product-wrap .loobook-product .text-button {
        font-size: 14px;
        line-height: 20px;
    }
    .loobook-product-wrap .loobook-product .info {
        margin-bottom: 5px;
    }
}
@media (max-width: 610px) {
    footer .footer-bottom-wrap {
        justify-content: center;
    }
    .tf-img-with-text-3 .tf-countdown {
        width: max-content;
        padding: 20px 15px;
    }
    .tf-img-with-text-3 .tf-countdown .countdown__timer {
        gap: 30px;
    }
    .tf-img-with-text-3 .tf-countdown .countdown__value {
        font-size: 30px;
        line-height: 40px;
    }
    .tf-slideshow.style-4 .wrap-slider {
        grid-template-columns: 100% !important;
    }
    .tf-slideshow.style-4 .wrap-slider .content-left {
        order: 2;
    }
    .collection-position.style-full .content {
        width: max-content;
    }
}
@media (max-width: 576px) {
    .tf-countdown.style-2 .countdown__item {
        width: 40px;
    }
    .form-sticky-atc .tf-sticky-atc-infos {
        flex-wrap: wrap;
        justify-content: center;
    }
    .form-bundle-product {
        padding: 23px 15px;
    }
    .tf-bundle-product-item .tf-product-bundle-image {
        width: 80px;
        height: 80px;
    }
    .tab-reviews .tab-reviews-heading .top {
        flex-direction: column;
    }
    .header-default .nav-icon {
        gap: 8px;
    }
    .header-default .nav-icon .nav-icon-item {
        font-size: 22px;
    }
    .card-product.style-list .description {
        display: none;
    }
    .testimonial-item {
        flex-direction: column;
    }
    .testimonial-item .content {
        order: 2;
    }
    .testimonial-item .img-style {
        max-width: 100%;
        height: 273px;
    }
    footer .footer-bottom-wrap .left {
        flex-wrap: wrap;
        justify-content: center;
    }
    footer .footer-bottom-wrap .right {
        flex-wrap: wrap;
        justify-content: center;
    }
    .tf-slideshow.style-3 .box-content, .tf-slideshow.style-2 .box-content {
        gap: 15px;
    }
    .tf-slideshow.style-3 .box-content .box-title, .tf-slideshow.style-2 .box-content .box-title {
        gap: 4px;
    }
    .wrap-cls-img {
        justify-content: start;
    }
}
@media (max-width: 425px) {
    .relatest-post-item.style-row {
        flex-direction: column;
    }
    .relatest-post-item.style-row .image {
        width: 100% !important;
        height: unset !important;
        aspect-ratio: 1;
    }
    .cls-lookbook .lookbook-item .dropdown-menu {
        --bs-dropdown-min-width: 6rem;
    }
    .tf-product-info-list .tf-btn {
        font-size: 15px;
        line-height: 23px;
    }
    .tf-img-with-text-3 .sw-product-single-prev {
        left: 0;
    }
    .tf-img-with-text-3 .sw-product-single-next {
        right: 0;
    }
}

/*# sourceMappingURL=styles.css.map */
.text-justify {
    text-align: justify !important;
}


/* Key Ingredients Section */
.ingredients-list {
    list-style: none;
    padding: 0;
}

.ingredients-list li {
    padding: 15px;
    border-bottom: 1px solid #eee;
}

.ingredients-list li:last-child {
    border-bottom: none;
}

.ingredients-list strong {
    color: #333;
}

/* Benefits & "Who is it for?" Grid Styling */
.icon-card {
    background: #fff;
    padding: 30px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    text-align: center;
    height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.icon-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.icon-card .icon {
    font-size: 2.5rem;
    color: #e6b34b;
    margin-bottom: 15px;
}

.icon-card h5 {
    font-weight: 600;
    color: #333;
    margin-bottom: 10px;
}


.flat-spacing {
    padding: 60px 0;
}

/* General Section Styling */
.product-section {
    padding: 80px 0;
}

.section-bg-light {
    background-color: #f9f9f9;
}

.section-heading {
    margin-bottom: 40px;
    font-weight: 600;
    color: #333;
}

/* ------------------------------------------------------------------
   Genesis 2026 Facelift - final override layer
------------------------------------------------------------------- */
:root {
    --main: #2d2d2d;
    --White: #ffffff;
    --Onsurface: #2d2d2d;
    --Primary: #b8796f;
    --Secondary: #6b6a62;
    --Secondary2: #8d887c;
    --Surface: #efe9df;
    --line: #e6ded1;
    --genesis-bg: #faf7f2;
    --genesis-card: #ffffff;
    --genesis-sage: #b8796f;
    --genesis-sage-soft: #e4b7aa;
    --genesis-gold: #c7a86d;
    --genesis-sand: #efe9df;
    --genesis-blush: #ead9d2;
    --genesis-deep: #3a332e;
    --genesis-deep-text: #f3ece2;
    --genesis-shadow: 0 24px 60px -34px rgba(58, 51, 46, 0.45);
}

html,
body {
    background: var(--genesis-bg);
}

body {
    color: var(--main);
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    letter-spacing: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.text-display,
.heading-section h1,
.heading-section h2,
.heading-section h3,
.page-title .title,
.footer-heading {
    color: var(--main);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

p,
li,
a,
button,
input,
textarea,
select,
.text-body-1,
.text-body-default,
.text-caption-1 {
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
}

a:hover,
.link:hover,
.text_primary {
    color: var(--genesis-gold) !important;
}

.bg_white,
.flat-spacing,
.flat-spacing-2,
.flat-spacing-3,
.flat-spacing-4 {
    background: var(--genesis-bg) !important;
}

.text_secondary {
    color: var(--Secondary) !important;
}

.heading-section {
    max-width: 860px;
    margin-right: auto;
    margin-left: auto;
}

.heading-section h1,
.heading-section h2,
.heading-section h3 {
    font-weight: 600;
    line-height: 1.12;
}

.heading-section p {
    color: var(--Secondary);
    line-height: 1.75;
}

.tf-topbar {
    display: none !important;
}

header.header-default {
    position: sticky;
    top: 0;
    z-index: 1000;
    border-bottom: 1px solid rgba(230, 222, 209, 0.86);
    background: rgba(250, 247, 242, 0.9) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 12px 35px -34px rgba(45, 45, 45, 0.6);
}

.header-default .main-header,
.header-default .wrapper-header {
    min-height: 82px;
    background: transparent !important;
}

.header-default .logo-header img {
    max-height: 76px;
    width: auto;
    object-fit: contain;
}

.header-default .box-nav-ul {
    gap: 8px;
}

.header-default .box-nav-ul .item-link {
    color: rgba(45, 45, 45, 0.78) !important;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    padding: 14px 12px;
    transition: color 0.25s ease, background-color 0.25s ease;
}

.header-default .box-nav-ul .item-link:hover,
.header-default .box-nav-ul .menu-item:hover > .item-link {
    color: var(--genesis-sage) !important;
}

.header-default .box-nav-ul .item-link::before {
    background: var(--genesis-gold) !important;
}

.sub-menu,
.submenu-default,
.mega-menu {
    overflow: hidden;
    border: 1px solid rgba(230, 222, 209, 0.9) !important;
    border-radius: 14px !important;
    background: rgba(250, 247, 242, 0.98) !important;
    box-shadow: 0 24px 60px -34px rgba(58, 51, 46, 0.5) !important;
}

.submenu-default .menu-list li:not(:last-child) {
    border-bottom: 1px solid rgba(230, 222, 209, 0.65);
}

.submenu-default .menu-list a,
.sub-menu .menu-link-text {
    color: rgba(45, 45, 45, 0.78) !important;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0;
    padding: 12px 18px;
}

.submenu-default .menu-list a:hover,
.sub-menu .menu-link-text:hover {
    color: var(--genesis-sage) !important;
    background: rgba(239, 233, 223, 0.74);
}

.mobile-menu svg,
.mobile-menu svg path {
    fill: var(--genesis-sage) !important;
}

.tf-btn,
button,
input[type="submit"] {
    border-radius: 999px;
}

.tf-btn {
    min-height: 48px;
    padding: 13px 26px;
    border: 1px solid transparent;
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.02em;
    box-shadow: none;
    transition: transform 0.25s ease, background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.tf-btn:hover {
    transform: translateY(-2px);
}

.tf-btn.btn-primary,
.tf-btn.btn-onsurface,
.tf-btn:not(.btn-border):not(.btn-white) {
    color: var(--genesis-bg) !important;
    background: var(--genesis-sage) !important;
}

.tf-btn.btn-primary:hover,
.tf-btn.btn-onsurface:hover,
.tf-btn:not(.btn-border):not(.btn-white):hover {
    color: #2d2d2d !important;
    background: var(--genesis-gold) !important;
}

.tf-btn.btn-border {
    color: var(--genesis-sage) !important;
    border-color: rgba(94, 107, 99, 0.35);
    background: transparent;
}

.tf-btn.btn-border:hover {
    color: var(--genesis-bg) !important;
    border-color: var(--genesis-sage);
    background: var(--genesis-sage);
}

.page-title {
    min-height: 320px;
    background: var(--genesis-sand);
}

.page-title .paralaximg::after,
.page-title::after {
    background: linear-gradient(90deg, rgba(58, 51, 46, 0.64), rgba(58, 51, 46, 0.18));
}

.page-title .content {
    color: var(--genesis-bg);
}

.page-title .title {
    color: var(--genesis-bg) !important;
    font-size: clamp(42px, 5vw, 68px);
    font-weight: 600;
    line-height: 1.05;
}

.breadcrumb li,
.breadcrumb li a {
    color: rgba(250, 247, 242, 0.8) !important;
}

.breadcrumb li a:hover {
    color: var(--genesis-gold) !important;
}

.tf-slideshow.style-4 .wrap-slider {
    background: var(--genesis-deep);
}

.tf-slideshow .content-left {
    background: linear-gradient(90deg, rgba(58, 51, 46, 0.93), rgba(58, 51, 46, 0.78));
}

.tf-slideshow .text-display {
    color: var(--genesis-bg) !important;
    font-size: clamp(44px, 5.6vw, 82px);
    font-weight: 600;
    line-height: 1.04;
}

.tf-slideshow .text-body-1 {
    max-width: 560px;
    color: rgba(250, 247, 242, 0.84) !important;
}

.collection-position,
.product-card,
.blog-item,
.wg-testimonial,
.icon-card {
    overflow: hidden;
    border: 1px solid rgba(230, 222, 209, 0.86);
    border-radius: 18px;
    background: var(--genesis-card);
    box-shadow: 0 18px 50px -42px rgba(58, 51, 46, 0.44);
    transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.collection-position:hover,
.product-card:hover,
.blog-item:hover,
.wg-testimonial:hover,
.icon-card:hover {
    border-color: rgba(199, 168, 109, 0.5);
    box-shadow: var(--genesis-shadow);
    transform: translateY(-5px);
}

.collection-position .img-style,
.products-grid .product-card .img-style {
    border-radius: 0 !important;
    background: rgba(239, 233, 223, 0.72) !important;
}

.collection-position .img-style img,
.products-grid .product-card .img-style img {
    transition: transform 0.8s ease;
}

.collection-position:hover .img-style img,
.products-grid .product-card:hover .img-style img {
    transform: scale(1.045);
}

.collection-position .content,
.products-grid .product-card .content {
    padding: 22px 18px 24px;
    background: #fff;
}

.collection-position .content h4,
.products-grid .product-card h5,
.products-grid .product-card h5 a {
    color: var(--main) !important;
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-weight: 600;
    line-height: 1.2;
}

.collection-position .content h6 {
    margin-top: 7px;
    color: var(--Secondary);
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    font-size: 14px;
    line-height: 1.45;
}

.products-grid .product-card .img-style {
    aspect-ratio: 4 / 3 !important;
    border-radius: 18px 18px 0 0 !important;
}

.products-grid .product-card .cls-content {
    min-height: 72px;
}

.wrapper-control-shop {
    margin-top: 14px;
}

footer.footer {
    color: var(--genesis-deep-text);
    background: var(--genesis-deep) !important;
}

footer .footer-body {
    border-color: rgba(243, 236, 226, 0.16);
}

footer .footer-heading {
    color: rgba(243, 236, 226, 0.82) !important;
    font-size: 18px;
    font-weight: 600;
}

footer .footer-menu .footer-menu_item,
footer p,
footer .text-body-default {
    color: rgba(243, 236, 226, 0.72) !important;
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
}

footer .footer-menu .footer-menu_item:hover,
footer a:hover {
    color: var(--genesis-gold) !important;
}

footer .tf-social-icon a {
    color: rgba(243, 236, 226, 0.78);
    border-color: rgba(243, 236, 226, 0.26);
    background: transparent;
}

footer .tf-social-icon a:hover {
    color: var(--genesis-gold) !important;
    border-color: var(--genesis-gold);
    background: transparent;
}

footer .footer-bottom {
    border-top: 1px solid rgba(243, 236, 226, 0.12);
    background: rgba(31, 27, 24, 0.95) !important;
}

#scroll-top {
    background: var(--genesis-sage);
    box-shadow: 0 12px 30px -18px rgba(58, 51, 46, 0.7);
}

#scroll-top:hover {
    background: var(--genesis-gold);
}

input,
textarea,
select,
.form-control {
    border-color: var(--line) !important;
    border-radius: 12px;
    background: #fff;
}

input:focus,
textarea:focus,
select:focus,
.form-control:focus {
    border-color: var(--genesis-sage) !important;
    box-shadow: 0 0 0 4px rgba(94, 107, 99, 0.12);
}

@media (max-width: 1199px) {
    .header-default .main-header,
    .header-default .wrapper-header {
        min-height: 72px;
    }

    .header-default .logo-header img {
        max-height: 68px;
    }
}

@media (max-width: 767px) {
    .page-title {
        min-height: 250px;
    }

    .page-title .title {
        font-size: 38px;
    }

    .tf-slideshow .text-display {
        font-size: 42px;
    }

    .flat-spacing,
    .flat-spacing-2 {
        padding-top: 64px;
        padding-bottom: 64px;
    }
}

/* ------------------------------------------------------------------
   Genesis Phase 3 final override at EOF: logo + product category polish
------------------------------------------------------------------- */
.header-default .logo-header {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}

.header-default .logo-header .genesis-logo-new {
    width: auto !important;
    max-width: 172px !important;
    height: 68px !important;
    max-height: none !important;
    object-fit: contain;
}

footer .footer-logo-new {
    display: block;
    width: min(260px, 86vw);
    height: auto;
    max-height: 190px;
    object-fit: contain;
    margin: 0 auto 24px;
}

.product-category-facelift .page-title {
    min-height: 360px;
}

.product-category-facelift .page-title .content {
    padding-top: 48px;
    padding-bottom: 48px;
}

.product-category-facelift .heading-section {
    max-width: 900px;
}

.product-category-facelift .heading-section h1 {
    font-size: clamp(40px, 4.7vw, 64px);
}

.product-category-facelift .heading-section p {
    max-width: 760px;
    margin-right: auto;
    margin-left: auto;
}

.category-trust-tags {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 24px;
}

.category-trust-tags span {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 9px 15px;
    border: 1px solid rgba(199, 168, 109, 0.34);
    border-radius: 999px;
    color: var(--genesis-sage);
    background: rgba(255, 255, 255, 0.72);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    line-height: 1;
    text-transform: uppercase;
}

.product-category-facelift .wrapper-control-shop {
    margin-top: 22px;
}

.product-category-facelift .products-grid {
    row-gap: 24px;
}

.product-category-facelift .products-grid .product-card {
    position: relative;
    border-radius: 20px;
    background: #fff;
}

.product-category-facelift .products-grid .product-card::after {
    content: "";
    position: absolute;
    right: 18px;
    bottom: 18px;
    width: 34px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, rgba(199, 168, 109, 0.72));
    opacity: 0;
    transition: opacity 0.28s ease;
}

.product-category-facelift .products-grid .product-card:hover::after {
    opacity: 1;
}

.product-category-facelift .products-grid .product-card .img-style {
    aspect-ratio: 4 / 3 !important;
    border-radius: 20px 20px 0 0 !important;
    background: linear-gradient(135deg, #f8f3ec, #efe4d5) !important;
}

.product-category-facelift .products-grid .product-card .content {
    min-height: 92px;
    padding: 24px 20px 28px;
}

.product-category-facelift .products-grid .product-card h5 {
    margin: 0;
}

.product-category-facelift .products-grid .product-card h5 a {
    font-size: 25px;
}

.product-category-facelift .products-grid .product-card h5 a:hover {
    color: var(--genesis-sage) !important;
}

@media (max-width: 1199px) {
    .header-default .logo-header .genesis-logo-new {
        height: 62px !important;
        max-width: 150px !important;
    }
}

@media (max-width: 767px) {
    .header-default .logo-header .genesis-logo-new {
        height: 56px !important;
        max-width: 132px !important;
    }

    footer .footer-logo-new {
        max-height: 160px;
    }

    .product-category-facelift .page-title {
        min-height: 280px;
    }

    .category-trust-tags {
        gap: 8px;
    }

    .category-trust-tags span {
        min-height: 34px;
        padding: 8px 12px;
        font-size: 11px;
    }
}

/* ------------------------------------------------------------------
   Genesis Phase 4: Phytofem product detail facelift
------------------------------------------------------------------- */
.phytofem-detail-page {
    background: var(--genesis-bg);
}

.pd-page {
    overflow: hidden;
    background: var(--genesis-bg);
}

.pd-hero {
    padding: 92px 0 82px;
    background:
        radial-gradient(circle at 16% 14%, rgba(199, 168, 109, 0.22), transparent 28%),
        linear-gradient(135deg, #faf7f2 0%, #efe9df 100%);
}

.pd-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.96fr) minmax(360px, 1.04fr);
    gap: 70px;
    align-items: center;
}

.pd-back,
.pd-badge,
.pd-section-heading span,
.pd-routine-card span,
.pd-related-card span {
    color: var(--genesis-gold);
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.pd-back {
    display: inline-flex;
    margin-bottom: 22px;
    color: var(--genesis-sage) !important;
}

.pd-badge {
    display: inline-flex;
    width: fit-content;
    padding: 9px 14px;
    border: 1px solid color-mix(in srgb, var(--pd-accent) 34%, transparent);
    border-radius: 999px;
    color: var(--pd-accent);
    background: rgba(255, 255, 255, 0.68);
}

.pd-copy h1 {
    margin-top: 22px;
    color: var(--main);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: clamp(48px, 6vw, 82px);
    font-weight: 600;
    line-height: 1.02;
    letter-spacing: 0;
}

.pd-subtitle {
    max-width: 620px;
    margin-top: 18px;
    color: var(--pd-accent);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: clamp(24px, 2.4vw, 34px);
    line-height: 1.18;
}

.pd-description {
    max-width: 710px;
    margin-top: 24px;
    color: var(--Secondary);
    font-size: 17px;
    line-height: 1.78;
}

.pd-benefit-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin-top: 28px;
}

.pd-benefit-list li {
    position: relative;
    min-height: 54px;
    padding: 14px 16px 14px 42px;
    border: 1px solid rgba(230, 222, 209, 0.86);
    border-radius: 14px;
    color: var(--main);
    background: rgba(255, 255, 255, 0.74);
    font-size: 14px;
    line-height: 1.45;
}

.pd-benefit-list li::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 19px;
    width: 12px;
    height: 12px;
    border: 3px solid var(--pd-accent);
    border-radius: 50%;
    background: transparent;
}

.pd-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.pd-outline-btn {
    color: var(--genesis-sage) !important;
    border-color: rgba(94, 107, 99, 0.32);
    background: rgba(255, 255, 255, 0.52);
}

.pd-outline-btn:hover {
    color: var(--genesis-bg) !important;
    border-color: var(--genesis-sage);
    background: var(--genesis-sage);
}

.pd-media {
    position: relative;
}

.pd-image-frame {
    overflow: hidden;
    border: 1px solid rgba(230, 222, 209, 0.92);
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(255,255,255,0.86), rgba(239,233,223,0.88));
    box-shadow: 0 30px 80px -48px rgba(58, 51, 46, 0.62);
}

.pd-image-frame img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
}

.pd-proof-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    overflow: hidden;
    width: calc(100% - 42px);
    margin: -30px auto 0;
    position: relative;
    z-index: 2;
    border: 1px solid rgba(230, 222, 209, 0.9);
    border-radius: 16px;
    background: rgba(230, 222, 209, 0.9);
    box-shadow: 0 20px 55px -40px rgba(58, 51, 46, 0.6);
}

.pd-proof-strip span {
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    color: var(--genesis-sage);
    background: rgba(255,255,255,0.94);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
}

.pd-section {
    padding: 92px 0;
}

.pd-section--sand {
    background: rgba(239, 233, 223, 0.78);
}

.pd-section-heading {
    max-width: 820px;
    margin: 0 auto 48px;
}

.pd-section-heading h2,
.pd-routine-card h2 {
    margin-top: 15px;
    color: var(--main);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 600;
    line-height: 1.12;
}

.pd-section-heading p {
    margin-top: 16px;
    color: var(--Secondary);
    font-size: 16px;
    line-height: 1.72;
}

.pd-ingredient-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.pd-ingredient-card,
.pd-mini-card,
.pd-related-card,
.pd-routine-card {
    border: 1px solid rgba(230, 222, 209, 0.88);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 50px -42px rgba(58, 51, 46, 0.45);
}

.pd-ingredient-card,
.pd-mini-card {
    padding: 28px;
}

.pd-ingredient-card h3,
.pd-mini-card h3,
.pd-related-card h3 {
    color: var(--main);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-weight: 600;
    line-height: 1.18;
}

.pd-ingredient-card h3 {
    font-size: 24px;
}

.pd-ingredient-card p,
.pd-mini-card p {
    margin-top: 10px;
    color: var(--Secondary);
    font-size: 15px;
    line-height: 1.68;
}

.pd-mini-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.pd-mini-card span {
    display: inline-flex;
    color: var(--pd-accent);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.16em;
}

.pd-mini-card h3 {
    margin-top: 18px;
    font-size: 22px;
}

.pd-routine-section {
    padding-top: 0;
}

.pd-routine-card {
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    gap: 36px;
    align-items: center;
    padding: 42px;
    background: var(--genesis-deep);
}

.pd-routine-card h2 {
    color: var(--genesis-deep-text);
}

.pd-routine-card p {
    color: rgba(243, 236, 226, 0.78);
    font-size: 16px;
    line-height: 1.78;
}

.pd-related-section {
    padding-top: 0;
}

.pd-related-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
}

.pd-related-card {
    overflow: hidden;
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.pd-related-card:hover {
    border-color: rgba(199, 168, 109, 0.55);
    transform: translateY(-5px);
    box-shadow: var(--genesis-shadow);
}

.pd-related-card img {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
    display: block;
}

.pd-related-card div {
    padding: 18px;
}

.pd-related-card span {
    display: block;
    color: var(--genesis-gold);
    font-size: 10px;
    letter-spacing: 0.14em;
}

.pd-related-card h3 {
    margin-top: 8px;
    font-size: 20px;
}

@media (max-width: 1199px) {
    .pd-hero-grid,
    .pd-routine-card {
        grid-template-columns: 1fr;
    }

    .pd-ingredient-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pd-mini-grid,
    .pd-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .pd-hero {
        padding: 66px 0 58px;
    }

    .pd-hero-grid {
        gap: 38px;
    }

    .pd-copy h1 {
        font-size: 44px;
    }

    .pd-benefit-list,
    .pd-ingredient-grid,
    .pd-mini-grid,
    .pd-related-grid,
    .pd-proof-strip {
        grid-template-columns: 1fr;
    }

    .pd-proof-strip {
        width: calc(100% - 24px);
    }

    .pd-actions {
        flex-direction: column;
    }

    .pd-section {
        padding: 68px 0;
    }

    .pd-ingredient-card,
    .pd-mini-card,
    .pd-routine-card {
        padding: 24px;
    }
}

/* ------------------------------------------------------------------
   Genesis Phase 5: Phytoceuticals product detail facelift
------------------------------------------------------------------- */
.phytoceuticals-detail-page {
    background: var(--genesis-bg);
}

.pc-page {
    overflow: hidden;
    background: var(--genesis-bg);
}

.pc-hero {
    padding: 96px 0 86px;
    color: var(--genesis-deep-text);
    background:
        radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--pc-accent) 28%, transparent), transparent 30%),
        linear-gradient(135deg, #2f2a27 0%, #171514 100%);
}

.pc-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(360px, 1.05fr);
    gap: 72px;
    align-items: center;
}

.pc-back,
.pc-badge,
.pc-section-heading span,
.pc-support-card span,
.pc-tech-band span,
.pc-related-card span {
    font-family: "Inter", "Kumbh Sans", Arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.pc-back {
    display: inline-flex;
    margin-bottom: 22px;
    color: rgba(243, 236, 226, 0.72) !important;
}

.pc-back:hover {
    color: var(--pc-accent) !important;
}

.pc-badge {
    display: inline-flex;
    width: fit-content;
    padding: 9px 14px;
    border: 1px solid color-mix(in srgb, var(--pc-accent) 46%, transparent);
    border-radius: 999px;
    color: var(--pc-accent);
    background: rgba(255, 255, 255, 0.06);
}

.pc-copy h1 {
    margin-top: 22px;
    color: var(--genesis-deep-text);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: clamp(48px, 6vw, 82px);
    font-weight: 600;
    line-height: 1.02;
    letter-spacing: 0;
}

.pc-subtitle {
    max-width: 650px;
    margin-top: 18px;
    color: #e6cf9c;
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: clamp(23px, 2.35vw, 34px);
    line-height: 1.2;
}

.pc-description {
    max-width: 720px;
    margin-top: 24px;
    color: rgba(243, 236, 226, 0.78);
    font-size: 17px;
    line-height: 1.78;
}

.pc-pillars {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.pc-pillars span {
    display: inline-flex;
    min-height: 38px;
    align-items: center;
    padding: 9px 15px;
    border: 1px solid rgba(243, 236, 226, 0.18);
    border-radius: 999px;
    color: rgba(243, 236, 226, 0.84);
    background: rgba(255, 255, 255, 0.07);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pc-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.pc-outline-btn {
    color: var(--genesis-deep-text) !important;
    border-color: rgba(243, 236, 226, 0.32);
    background: transparent;
}

.pc-outline-btn:hover {
    color: #171514 !important;
    border-color: var(--genesis-deep-text);
    background: var(--genesis-deep-text);
}

.pc-media {
    position: relative;
}

.pc-image-frame {
    overflow: hidden;
    border: 1px solid rgba(243, 236, 226, 0.16);
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(255,255,255,0.08), rgba(199,168,109,0.08));
    box-shadow: 0 36px 90px -54px rgba(0, 0, 0, 0.8);
}

.pc-image-frame img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.pc-section {
    padding: 92px 0;
}

.pc-section--ink {
    padding: 70px 0;
    background: #231f1d;
}

.pc-support-card {
    display: grid;
    grid-template-columns: 0.75fr 1.25fr;
    gap: 42px;
    align-items: start;
    padding: 44px;
    border: 1px solid rgba(243, 236, 226, 0.16);
    border-radius: 22px;
    color: var(--genesis-deep-text);
    background: linear-gradient(135deg, rgba(255,255,255,0.07), rgba(255,255,255,0.03));
}

.pc-support-card span,
.pc-tech-band span,
.pc-section-heading span {
    color: var(--pc-accent);
}

.pc-support-card h2,
.pc-tech-band h2,
.pc-section-heading h2 {
    margin-top: 15px;
    color: inherit;
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 600;
    line-height: 1.12;
}

.pc-support-card ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.pc-support-card li {
    position: relative;
    min-height: 60px;
    padding: 15px 16px 15px 42px;
    border: 1px solid rgba(243, 236, 226, 0.12);
    border-radius: 14px;
    color: rgba(243, 236, 226, 0.78);
    background: rgba(255, 255, 255, 0.045);
    font-size: 14px;
    line-height: 1.45;
}

.pc-support-card li::before {
    content: "";
    position: absolute;
    left: 16px;
    top: 21px;
    width: 11px;
    height: 11px;
    border: 3px solid var(--pc-accent);
    border-radius: 50%;
}

.pc-section-heading {
    max-width: 820px;
    margin: 0 auto 48px;
}

.pc-section-heading h2 {
    color: var(--main);
}

.pc-section-heading p {
    margin-top: 16px;
    color: var(--Secondary);
    font-size: 16px;
    line-height: 1.72;
}

.pc-science-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.pc-science-card,
.pc-related-card {
    border: 1px solid rgba(230, 222, 209, 0.88);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 18px 50px -42px rgba(58, 51, 46, 0.45);
}

.pc-science-card {
    padding: 30px;
}

.pc-science-card h3,
.pc-related-card h3 {
    color: var(--main);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-weight: 600;
    line-height: 1.18;
}

.pc-science-card h3 {
    font-size: 25px;
}

.pc-science-card p {
    margin-top: 11px;
    color: var(--Secondary);
    font-size: 15px;
    line-height: 1.68;
}

.pc-tech-section {
    padding-top: 0;
}

.pc-tech-band {
    padding: 46px;
    border-radius: 24px;
    color: var(--genesis-deep-text);
    background:
        linear-gradient(135deg, rgba(58,51,46,0.88), rgba(23,21,20,0.96)),
        url("../images/facelift/science-lab.png") center / cover no-repeat;
    box-shadow: 0 30px 80px -52px rgba(58, 51, 46, 0.72);
}

.pc-tech-band h2 {
    color: var(--genesis-deep-text);
}

.pc-tech-band p {
    max-width: 860px;
    margin-top: 18px;
    color: rgba(243, 236, 226, 0.78);
    font-size: 16px;
    line-height: 1.78;
}

.pc-related-section {
    padding-top: 0;
}

.pc-related-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 18px;
}

.pc-related-card {
    overflow: hidden;
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
}

.pc-related-card:hover {
    border-color: color-mix(in srgb, var(--pc-accent) 44%, transparent);
    transform: translateY(-5px);
    box-shadow: var(--genesis-shadow);
}

.pc-related-card img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: cover;
}

.pc-related-card div {
    padding: 18px;
}

.pc-related-card span {
    display: block;
    color: var(--pc-accent);
    font-size: 10px;
    letter-spacing: 0.14em;
}

.pc-related-card h3 {
    margin-top: 8px;
    font-size: 20px;
}

@media (max-width: 1199px) {
    .pc-hero-grid,
    .pc-support-card {
        grid-template-columns: 1fr;
    }

    .pc-related-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .pc-hero {
        padding: 66px 0 58px;
    }

    .pc-hero-grid {
        gap: 38px;
    }

    .pc-copy h1 {
        font-size: 44px;
    }

    .pc-actions {
        flex-direction: column;
    }

    .pc-section {
        padding: 68px 0;
    }

    .pc-support-card,
    .pc-tech-band,
    .pc-science-card {
        padding: 24px;
    }

    .pc-support-card ul,
    .pc-science-grid,
    .pc-related-grid {
        grid-template-columns: 1fr;
    }
}

/* Reference homepage phase */
:root {
    --ref-cream: #f7f3ed;
    --ref-warm: #f0ece3;
    --ref-ink: #38312d;
    --ref-muted: #77706a;
    --ref-green: #b8796f;
    --ref-rose: #c98f82;
    --ref-rose-soft: #f1c9bd;
    --ref-gold: #d5b66e;
    --ref-card: #fffdf9;
    --ref-line: #e8dfd3;
}

body {
    background: var(--ref-cream);
}

.genesis-ref-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    border-bottom: 1px solid rgba(72, 62, 55, 0.1);
    background: rgba(250, 247, 242, 0.96);
    backdrop-filter: blur(14px);
}

.genesis-ref-header__inner {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    max-width: 1168px;
    min-height: 62px;
    margin: 0 auto;
    padding: 0 24px;
}

.genesis-ref-header__logo {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
}

.genesis-ref-header__logo img {
    display: block;
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.genesis-ref-header__logo span {
    display: block;
    color: var(--ref-ink);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 0.9;
}

.genesis-ref-header__logo small {
    color: var(--ref-green);
    font-family: "Inter", "Sora", Arial, sans-serif;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.22em;
    text-transform: uppercase;
}

.genesis-ref-header__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 34px;
}

.genesis-ref-header__link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #5d5751;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
}

summary.genesis-ref-header__link {
    cursor: pointer;
    list-style: none;
}

summary.genesis-ref-header__link::-webkit-details-marker {
    display: none;
}

.genesis-ref-header__link:hover {
    color: var(--ref-green);
}

.genesis-ref-header__item {
    position: relative;
}

.genesis-ref-header__dropdown {
    position: absolute;
    left: 50%;
    top: calc(100% + 8px);
    display: grid;
    min-width: 235px;
    padding: 12px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 22px 55px -34px rgba(56, 49, 45, 0.42);
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, 8px);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.genesis-ref-header__item::after {
    content: "";
    position: absolute;
    left: -18px;
    right: -18px;
    top: 100%;
    height: 14px;
}

.genesis-ref-header__item:hover .genesis-ref-header__dropdown,
.genesis-ref-header__item[open] .genesis-ref-header__dropdown,
.genesis-ref-header__item.is-open .genesis-ref-header__dropdown,
.genesis-ref-header__item:focus-within .genesis-ref-header__dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: translate(-50%, 0);
}

.genesis-ref-header__dropdown a {
    padding: 10px 12px;
    border-radius: 6px;
    color: var(--ref-ink);
    font-size: 13px;
    font-weight: 600;
}

.genesis-ref-header__dropdown a:hover {
    background: var(--ref-warm);
    color: var(--ref-green);
}

.genesis-ref-header__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
}

.genesis-ref-header__shop {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 88px;
    min-height: 36px;
    padding: 0 18px;
    border-radius: 999px;
    color: #fff !important;
    background: var(--ref-green);
    font-size: 14px;
    font-weight: 700;
}

.genesis-ref-header__shop span {
    width: 13px;
    height: 13px;
    border: 1.7px solid currentColor;
    border-radius: 3px;
}

.genesis-ref-header__menu {
    display: none;
}

.home-reference {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.ref-container {
    width: min(100% - 48px, 1110px);
    margin: 0 auto;
}

.ref-hero {
    position: relative;
    min-height: min(860px, calc(100vh - 62px));
    display: flex;
    align-items: center;
    isolation: isolate;
    background: #2e2925;
}

.ref-hero__image,
.ref-hero__shade {
    position: absolute;
    inset: 0;
}

.ref-hero__image {
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 38%;
}

.ref-hero__shade {
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(35, 30, 27, 0.82) 0%, rgba(35, 30, 27, 0.58) 39%, rgba(35, 30, 27, 0.2) 72%),
        linear-gradient(180deg, rgba(35, 30, 27, 0.08) 0%, rgba(35, 30, 27, 0.32) 100%);
}

.ref-hero__content {
    max-width: 600px;
    padding: 104px 0 88px;
    color: #fff;
}

.ref-pill,
.ref-kicker,
.ref-heading span,
.ref-founders__panel span {
    display: inline-block;
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.28em;
    line-height: 1.2;
    text-transform: uppercase;
}

.ref-pill {
    padding: 8px 18px;
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.88);
    background: rgba(255, 255, 255, 0.14);
    backdrop-filter: blur(8px);
}

.ref-hero h1,
.ref-heading h2,
.ref-clinical__copy h2,
.ref-founders__panel h2,
.ref-value-card h3,
.ref-ecosystem-card h3,
.ref-science-grid h3,
.ref-education-grid h3 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.ref-hero h1 {
    margin: 28px 0 22px;
    color: #fff;
    font-size: clamp(54px, 6vw, 82px);
    font-weight: 700;
    line-height: 0.98;
}

.ref-hero h1 span {
    color: #ead6a2;
}

.ref-hero p {
    max-width: 560px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.58;
}

.ref-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 34px;
}

.ref-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 28px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
}

.ref-btn--gold {
    color: #4a4038 !important;
    background: var(--ref-gold);
}

.ref-btn--ghost {
    border: 1px solid rgba(255, 255, 255, 0.45);
    color: #fff !important;
    background: rgba(255, 255, 255, 0.06);
}

.ref-btn--outline {
    border: 1px solid rgba(201, 143, 130, 0.56);
    color: var(--ref-green) !important;
    background: transparent;
}

.ref-btn--green {
    color: #fff !important;
    background: var(--ref-green);
}

.ref-down {
    position: absolute;
    left: 50%;
    bottom: 28px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 26px;
    transform: translateX(-50%);
}

.ref-section {
    padding: 118px 0;
}

.ref-section--warm {
    background: var(--ref-warm);
}

.ref-difference {
    background:
        linear-gradient(180deg, #fbf8f3 0%, var(--ref-cream) 100%);
}

.ref-heading {
    max-width: 720px;
    margin: 0 auto 60px;
    text-align: center;
}

.ref-heading h2,
.ref-clinical__copy h2 {
    margin-top: 20px;
    color: var(--ref-ink);
    font-size: clamp(38px, 4.4vw, 58px);
    font-weight: 700;
    line-height: 1.12;
}

.ref-heading p {
    margin-top: 18px;
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.7;
}

.ref-value-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    align-items: stretch;
}

.ref-value-card {
    display: flex;
    flex-direction: column;
    min-height: 290px;
    padding: 38px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 24px 60px -54px rgba(56, 49, 45, 0.48);
    transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

.ref-value-card:hover {
    border-color: rgba(213, 182, 110, 0.55);
    transform: translateY(-4px);
    box-shadow: 0 34px 80px -58px rgba(56, 49, 45, 0.62);
}

.ref-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 999px;
    background: #efe8dc;
}

.ref-icon::before {
    content: "";
    width: 18px;
    height: 18px;
    border: 2px solid var(--ref-green);
    border-radius: 4px;
}

.ref-icon--clinical::before {
    border-radius: 999px;
    box-shadow: 10px 8px 0 -6px var(--ref-green);
}

.ref-icon--quality::before,
.ref-icon--shield::before {
    border-radius: 50% 50% 46% 46%;
    transform: rotate(45deg);
}

.ref-icon--research::before {
    border-radius: 2px;
    transform: rotate(90deg);
}

.ref-icon--leaf::before,
.ref-icon--habit::before {
    border-radius: 50% 0 50% 50%;
    transform: rotate(-45deg);
}

.ref-icon--layers::before {
    border-radius: 2px;
    box-shadow: 6px 6px 0 -2px #efe8dc, 6px 6px 0 0 var(--ref-green);
}

.ref-icon--book::before {
    border-radius: 2px 7px 7px 2px;
}

.ref-icon--idea::before {
    border-radius: 999px;
}

.ref-icon--pulse::before {
    width: 22px;
    height: 12px;
    border-width: 0 0 2px 2px;
    border-radius: 0;
    transform: skewX(-20deg);
}

.ref-icon--mail::before {
    width: 20px;
    height: 14px;
}

.ref-icon--community::before {
    border-radius: 999px;
    box-shadow: -9px 7px 0 -6px var(--ref-green), 9px 7px 0 -6px var(--ref-green);
}

.ref-value-card h3 {
    margin: 30px 0 14px;
    color: var(--ref-ink);
    font-size: 25px;
    font-weight: 700;
    line-height: 1.2;
}

.ref-value-card p,
.ref-ecosystem-card p,
.ref-science-grid p,
.ref-education-grid p,
.ref-clinical__copy p,
.ref-founders__panel p {
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.68;
}

.ref-ecosystem-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 32px;
    align-items: stretch;
}

.ref-ecosystem-card {
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 60px -52px rgba(56, 49, 45, 0.45);
    transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.ref-ecosystem-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 30px 70px -50px rgba(56, 49, 45, 0.56);
}

.ref-ecosystem-card img {
    display: block;
    width: 100%;
    aspect-ratio: 1.42 / 1;
    object-fit: cover;
    object-position: center;
}

.ref-ecosystem-card div {
    display: flex;
    flex-direction: column;
    padding: 28px 30px 30px;
}

.ref-ecosystem-card h3 {
    margin-bottom: 14px;
    color: var(--ref-ink);
    font-size: 26px;
    font-weight: 700;
}

.ref-ecosystem-card span {
    display: inline-flex;
    gap: 10px;
    margin-top: auto;
    padding-top: 24px;
    color: var(--ref-green);
    font-size: 14px;
    font-weight: 800;
}

.ref-clinical__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
    gap: 76px;
    align-items: center;
    padding: 16px 0;
}

.ref-clinical__image {
    position: relative;
    padding: 14px;
    border: 1px solid rgba(213, 182, 110, 0.28);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255, 250, 242, 0.92) 0%, rgba(239, 232, 220, 0.92) 100%);
    box-shadow: 0 34px 90px -62px rgba(56, 49, 45, 0.64);
}

.ref-clinical__image img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    border-radius: 6px;
    object-fit: cover;
    object-position: center 18%;
}

.ref-clinical__image img.ref-clinical__portrait-original {
    filter: saturate(0.92) sepia(0.05) brightness(1.02);
}

.ref-experience-badge {
    position: absolute;
    left: 24px;
    bottom: -22px;
    min-width: 160px;
    padding: 16px 22px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 16px 35px -28px rgba(56, 49, 45, 0.6);
}

.ref-experience-badge strong {
    display: block;
    color: var(--ref-green);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 24px;
    line-height: 1;
}

.ref-experience-badge span {
    display: block;
    margin-top: 4px;
    color: var(--ref-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.ref-clinical__copy p {
    max-width: 560px;
    margin: 22px 0 30px;
}

.ref-founders {
    padding: 0 0 112px;
}

.ref-founders__panel {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 72px;
    align-items: center;
    padding: 62px;
    border-radius: 8px;
    background: #382f2b;
    box-shadow: 0 34px 90px -66px rgba(56, 49, 45, 0.82);
}

.ref-founders__panel h2 {
    margin-top: 22px;
    color: #f8f1e8;
    font-size: clamp(34px, 3.5vw, 46px);
    font-weight: 700;
    line-height: 1.16;
}

.ref-founders__panel p {
    color: rgba(248, 241, 232, 0.78);
}

.ref-science {
    padding-top: 0;
}

.ref-science-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 76px -62px rgba(56, 49, 45, 0.5);
}

.ref-science-grid article {
    display: flex;
    flex-direction: column;
    min-height: 240px;
    padding: 34px 32px;
    border-right: 1px solid var(--ref-line);
}

.ref-science-grid article:last-child {
    border-right: 0;
}

.ref-science-grid h3 {
    margin: 30px 0 14px;
    color: var(--ref-ink);
    font-size: 21px;
    font-weight: 700;
}

.ref-education-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.ref-education-grid article {
    display: grid;
    grid-template-columns: 52px 1fr;
    gap: 18px;
    align-items: start;
    padding: 26px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

.ref-education-grid article:hover {
    border-color: rgba(213, 182, 110, 0.5);
    transform: translateY(-3px);
    box-shadow: 0 24px 58px -52px rgba(56, 49, 45, 0.5);
}

.ref-education-grid h3 {
    margin-bottom: 8px;
    color: var(--ref-ink);
    font-size: 19px;
    font-weight: 700;
}

.ref-center-action {
    display: flex;
    justify-content: center;
    margin-top: 52px;
}

.ref-social {
    background:
        linear-gradient(180deg, #fbf8f3 0%, #f7f3ed 100%);
}

.ref-testimonial {
    max-width: 700px;
    margin: 0 auto;
    text-align: center;
}

.ref-quote {
    color: var(--ref-gold);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 74px;
    font-weight: 700;
    line-height: 0.7;
}

.ref-testimonial blockquote {
    margin: 28px 0 34px;
    color: var(--ref-ink);
    font-family: "Playfair Display", Georgia, serif;
    font-size: clamp(28px, 3vw, 36px);
    font-weight: 600;
    line-height: 1.28;
}

.ref-testimonial strong,
.ref-testimonial small {
    display: block;
}

.ref-testimonial strong {
    color: var(--ref-ink);
    font-size: 14px;
}

.ref-testimonial small {
    margin-top: 6px;
    color: var(--ref-muted);
    font-size: 13px;
}

.ref-slider-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 38px;
}

.ref-slider-dots span {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: #e8dfd3;
}

.ref-slider-dots .is-active {
    width: 32px;
    background: var(--ref-green);
}

.ref-btn,
.genesis-ref-header__shop,
.ref-ecosystem-card span,
.genesis-ref-footer a {
    transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.ref-btn:hover,
.genesis-ref-header__shop:hover {
    transform: translateY(-1px);
}

.ref-btn--gold:hover {
    color: #352d28 !important;
    background: #e0c57d;
}

.ref-btn--green:hover {
    background: #b8796f;
}

.ref-btn--outline:hover {
    color: #fff !important;
    background: var(--ref-green);
}

.genesis-ref-footer {
    padding: 78px 0 28px;
    background: #382f2b;
    color: rgba(248, 241, 232, 0.76);
}

.genesis-ref-footer__top {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.45fr);
    gap: 78px;
    align-items: start;
    padding-bottom: 54px;
    border-bottom: 1px solid rgba(248, 241, 232, 0.14);
}

.genesis-ref-footer__brand img {
    display: block;
    width: 96px;
    height: 96px;
    object-fit: contain;
}

.genesis-ref-footer__brand p {
    max-width: 390px;
    margin-top: 24px;
    color: rgba(248, 241, 232, 0.72);
    font-size: 15px;
    line-height: 1.75;
}

.genesis-ref-footer__links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 34px;
}

.genesis-ref-footer__links h3 {
    margin-bottom: 18px;
    color: #f8f1e8;
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: 22px;
    font-weight: 700;
}

.genesis-ref-footer__links a {
    display: block;
    width: fit-content;
    margin-top: 12px;
    color: rgba(248, 241, 232, 0.7);
    font-size: 14px;
    font-weight: 600;
    line-height: 1.35;
}

.genesis-ref-footer__links a:hover,
.genesis-ref-footer__bottom a:hover {
    color: var(--ref-gold);
}

.genesis-ref-footer__bottom {
    display: flex;
    justify-content: space-between;
    gap: 22px;
    padding-top: 24px;
}

.genesis-ref-footer__bottom p,
.genesis-ref-footer__bottom a {
    margin: 0;
    color: rgba(248, 241, 232, 0.66);
    font-size: 13px;
    line-height: 1.6;
}

.genesis-ref-footer__bottom a {
    font-weight: 800;
}

.pf-page {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.pf-hero {
    padding: 98px 0 88px;
    background:
        radial-gradient(circle at 78% 12%, rgba(213, 182, 110, 0.2), transparent 34%),
        linear-gradient(180deg, #fbf8f3 0%, var(--ref-cream) 100%);
}

.pf-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.82fr);
    gap: 72px;
    align-items: center;
}

.pf-back {
    display: inline-flex;
    margin-bottom: 28px;
    color: var(--ref-green);
    font-size: 13px;
    font-weight: 800;
}

.pf-hero h1,
.pf-note__panel h2,
.pf-product-card__body h3,
.pf-trust h2 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.pf-hero h1 {
    max-width: 690px;
    margin: 20px 0 24px;
    color: var(--ref-ink);
    font-size: clamp(48px, 5vw, 72px);
    font-weight: 700;
    line-height: 1.02;
}

.pf-hero p {
    max-width: 620px;
    color: var(--ref-muted);
    font-size: 18px;
    line-height: 1.75;
}

.pf-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.pf-hero__media {
    position: relative;
    padding: 20px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: rgba(255, 253, 249, 0.72);
    box-shadow: 0 34px 90px -64px rgba(56, 49, 45, 0.62);
}

.pf-hero__media img {
    display: block;
    width: 100%;
    aspect-ratio: 1.23 / 1;
    border-radius: 8px;
    object-fit: cover;
}

.pf-hero__badge {
    position: absolute;
    left: 40px;
    bottom: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 12px;
    align-items: center;
    min-width: 210px;
    padding: 17px 20px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 45px -34px rgba(56, 49, 45, 0.65);
    transform: translateY(42%);
}

.pf-hero__badge strong {
    color: var(--ref-green);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 34px;
    line-height: 1;
}

.pf-hero__badge span {
    color: var(--ref-muted);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    line-height: 1.35;
    text-transform: uppercase;
}

.pf-trust {
    padding: 34px 0 78px;
    background: var(--ref-cream);
}

.pf-trust__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 26px 72px -62px rgba(56, 49, 45, 0.55);
}

.pf-trust__grid div {
    min-height: 220px;
    padding: 32px;
    border-right: 1px solid var(--ref-line);
}

.pf-trust__grid div:last-child {
    border-right: 0;
}

.pf-trust h2 {
    margin: 22px 0 12px;
    color: var(--ref-ink);
    font-size: 23px;
    font-weight: 700;
}

.pf-trust p {
    color: var(--ref-muted);
    font-size: 15px;
    line-height: 1.65;
}

.pf-products {
    padding: 92px 0 112px;
    background: var(--ref-warm);
}

.pf-product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.pf-product-card {
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 30px 70px -58px rgba(56, 49, 45, 0.56);
    transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

.pf-product-card:hover {
    border-color: rgba(213, 182, 110, 0.6);
    transform: translateY(-5px);
    box-shadow: 0 38px 90px -62px rgba(56, 49, 45, 0.7);
}

.pf-product-card__image {
    display: block;
    background: #f4efe7;
}

.pf-product-card__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1.45 / 1;
    object-fit: cover;
}

.pf-product-card__body {
    display: flex;
    flex-direction: column;
    padding: 28px;
}

.pf-product-card__body span {
    color: var(--ref-gold);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.18em;
    line-height: 1.2;
    text-transform: uppercase;
}

.pf-product-card__body h3 {
    margin: 13px 0 12px;
    color: var(--ref-ink);
    font-size: 28px;
    font-weight: 700;
    line-height: 1.15;
}

.pf-product-card__body h3 a {
    color: inherit;
}

.pf-product-card__body p {
    color: var(--ref-muted);
    font-size: 15px;
    line-height: 1.65;
}

.pf-product-card__body > a {
    display: inline-flex;
    gap: 10px;
    width: fit-content;
    margin-top: auto;
    padding-top: 24px;
    color: var(--ref-green);
    font-size: 14px;
    font-weight: 800;
}

.pf-note {
    padding: 0 0 112px;
    background: var(--ref-warm);
}

.pf-note__panel {
    display: grid;
    grid-template-columns: 1fr 0.9fr;
    gap: 58px;
    align-items: center;
    padding: 56px;
    border-radius: 8px;
    background: #382f2b;
    box-shadow: 0 34px 90px -66px rgba(56, 49, 45, 0.82);
}

.pf-note__panel h2 {
    margin-top: 18px;
    color: #f8f1e8;
    font-size: clamp(32px, 3.4vw, 48px);
    font-weight: 700;
    line-height: 1.14;
}

.pf-note__panel p {
    color: rgba(248, 241, 232, 0.78);
    font-size: 16px;
    line-height: 1.75;
}

.pcat-page {
    overflow: hidden;
    background: #f4efe7;
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.pcat-hero {
    padding: 98px 0 88px;
    background:
        radial-gradient(circle at 78% 16%, rgba(191, 122, 53, 0.22), transparent 34%),
        linear-gradient(135deg, #332c28 0%, #171514 100%);
}

.pcat-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.9fr);
    gap: 72px;
    align-items: center;
}

.pcat-back,
.pcat-kicker,
.pcat-heading span {
    display: inline-block;
    color: #d5b66e;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
}

.pcat-back {
    margin-bottom: 28px;
    color: rgba(248, 241, 232, 0.75);
    letter-spacing: 0.12em;
}

.pcat-hero h1,
.pcat-heading h2,
.pcat-note__panel h2,
.pcat-product-card__body h3,
.pcat-trust h2 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.pcat-hero h1 {
    max-width: 720px;
    margin: 20px 0 24px;
    color: #f8f1e8;
    font-size: clamp(48px, 5vw, 72px);
    font-weight: 700;
    line-height: 1.02;
}

.pcat-hero p {
    max-width: 640px;
    color: rgba(248, 241, 232, 0.78);
    font-size: 18px;
    line-height: 1.75;
}

.pcat-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.pcat-outline-btn {
    border: 1px solid rgba(248, 241, 232, 0.34);
    color: #f8f1e8 !important;
    background: transparent;
}

.pcat-outline-btn:hover {
    border-color: #d5b66e;
    color: #332c28 !important;
    background: #d5b66e;
}

.pcat-hero__media {
    position: relative;
    padding: 20px;
    border: 1px solid rgba(248, 241, 232, 0.16);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.06);
    box-shadow: 0 40px 100px -68px rgba(0, 0, 0, 0.85);
}

.pcat-hero__media img {
    display: block;
    width: 100%;
    aspect-ratio: 1.24 / 1;
    border-radius: 8px;
    object-fit: cover;
}

.pcat-hero__badge {
    position: absolute;
    left: 40px;
    bottom: 0;
    min-width: 250px;
    padding: 18px 22px;
    border-radius: 8px;
    background: #fffdf9;
    box-shadow: 0 18px 45px -34px rgba(0, 0, 0, 0.7);
    transform: translateY(42%);
}

.pcat-hero__badge strong {
    display: block;
    color: #332c28;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 25px;
    line-height: 1;
}

.pcat-hero__badge span {
    display: block;
    margin-top: 7px;
    color: var(--ref-muted);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.35;
    text-transform: uppercase;
}

.pcat-trust {
    padding: 34px 0 78px;
    background: #f4efe7;
}

.pcat-trust__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 26px 72px -62px rgba(56, 49, 45, 0.55);
}

.pcat-trust__grid div {
    min-height: 220px;
    padding: 32px;
    border-right: 1px solid var(--ref-line);
}

.pcat-trust__grid div:last-child {
    border-right: 0;
}

.pcat-trust h2 {
    margin: 22px 0 12px;
    color: var(--ref-ink);
    font-size: 23px;
    font-weight: 700;
}

.pcat-trust p {
    color: var(--ref-muted);
    font-size: 15px;
    line-height: 1.65;
}

.pcat-products {
    padding: 92px 0 112px;
    background: #ece5da;
}

.pcat-heading {
    max-width: 760px;
    margin: 0 auto 58px;
    text-align: center;
}

.pcat-heading h2 {
    margin-top: 20px;
    color: var(--ref-ink);
    font-size: clamp(38px, 4.4vw, 58px);
    font-weight: 700;
    line-height: 1.12;
}

.pcat-heading p {
    margin-top: 18px;
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.7;
}

.pcat-product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.pcat-product-card {
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    border: 1px solid rgba(56, 49, 45, 0.12);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 30px 70px -58px rgba(56, 49, 45, 0.58);
    transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

.pcat-product-card:hover {
    border-color: rgba(191, 122, 53, 0.55);
    transform: translateY(-5px);
    box-shadow: 0 38px 90px -62px rgba(56, 49, 45, 0.74);
}

.pcat-product-card__image {
    display: block;
    background: #2d2925;
}

.pcat-product-card__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1.45 / 1;
    object-fit: cover;
}

.pcat-product-card__body {
    display: flex;
    flex-direction: column;
    padding: 28px;
}

.pcat-product-card__body span {
    color: #b87333;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.17em;
    line-height: 1.2;
    text-transform: uppercase;
}

.pcat-product-card__body h3 {
    margin: 13px 0 12px;
    color: var(--ref-ink);
    font-size: 28px;
    font-weight: 700;
    line-height: 1.15;
}

.pcat-product-card__body h3 a {
    color: inherit;
}

.pcat-product-card__body p {
    color: var(--ref-muted);
    font-size: 15px;
    line-height: 1.65;
}

.pcat-product-card__body > a {
    display: inline-flex;
    gap: 10px;
    width: fit-content;
    margin-top: auto;
    padding-top: 24px;
    color: var(--ref-green);
    font-size: 14px;
    font-weight: 800;
}

.pcat-note {
    padding: 0 0 112px;
    background: #ece5da;
}

.pcat-note__panel {
    display: grid;
    grid-template-columns: 1fr 0.9fr;
    gap: 58px;
    align-items: center;
    padding: 56px;
    border-radius: 8px;
    background: #2f2925;
    box-shadow: 0 34px 90px -66px rgba(56, 49, 45, 0.82);
}

.pcat-note__panel h2 {
    margin-top: 18px;
    color: #f8f1e8;
    font-size: clamp(32px, 3.4vw, 48px);
    font-weight: 700;
    line-height: 1.14;
}

.pcat-note__panel p {
    color: rgba(248, 241, 232, 0.78);
    font-size: 16px;
    line-height: 1.75;
}

.glow-page {
    overflow: hidden;
    background: #f7f1ec;
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.glow-hero {
    padding: 98px 0 90px;
    background:
        radial-gradient(circle at 82% 16%, rgba(201, 139, 112, 0.34), transparent 34%),
        radial-gradient(circle at 12% 82%, rgba(112, 128, 94, 0.18), transparent 32%),
        linear-gradient(135deg, #fff7f1 0%, #ead8c9 58%, #d7b99f 100%);
}

.glow-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(380px, 1fr);
    gap: 72px;
    align-items: center;
}

.glow-back,
.glow-kicker,
.glow-heading span {
    display: inline-block;
    color: #b9755e;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.24em;
    line-height: 1.2;
    text-transform: uppercase;
}

.glow-back {
    margin-bottom: 28px;
    color: #c98f82;
    letter-spacing: 0.12em;
}

.glow-hero h1,
.glow-heading h2,
.glow-note__panel h2,
.glow-product-card__body h3,
.glow-trust h2 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.glow-hero h1 {
    max-width: 720px;
    margin: 20px 0 24px;
    color: #332c28;
    font-size: clamp(48px, 5vw, 74px);
    font-weight: 700;
    line-height: 1.02;
}

.glow-hero p {
    max-width: 640px;
    color: #685d55;
    font-size: 18px;
    line-height: 1.75;
}

.glow-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.glow-outline-btn {
    border: 1px solid rgba(51, 44, 40, 0.22);
    color: #b8796f !important;
    background: rgba(255, 255, 255, 0.42);
}

.glow-outline-btn:hover {
    border-color: #c98f82;
    color: #fffdf9 !important;
    background: #c98f82;
}

.glow-hero__media {
    position: relative;
    padding: 18px;
    border: 1px solid rgba(141, 103, 83, 0.18);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.42);
    box-shadow: 0 38px 100px -70px rgba(91, 65, 52, 0.68);
}

.glow-hero__media img {
    display: block;
    width: 100%;
    aspect-ratio: 1.72 / 1;
    border-radius: 8px;
    object-fit: cover;
}

.glow-hero__badge {
    position: absolute;
    left: 38px;
    bottom: 0;
    min-width: 270px;
    padding: 18px 22px;
    border-radius: 8px;
    background: #fffdf9;
    box-shadow: 0 18px 45px -34px rgba(91, 65, 52, 0.7);
    transform: translateY(42%);
}

.glow-hero__badge strong {
    display: block;
    color: #8d6753;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 25px;
    line-height: 1;
}

.glow-hero__badge span {
    display: block;
    margin-top: 7px;
    color: var(--ref-muted);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.35;
    text-transform: uppercase;
}

.glow-trust {
    padding: 34px 0 78px;
    background: #f7f1ec;
}

.glow-trust__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid rgba(141, 103, 83, 0.15);
    border-radius: 8px;
    background: #fffdf9;
    box-shadow: 0 26px 72px -62px rgba(91, 65, 52, 0.55);
}

.glow-trust__grid div {
    min-height: 220px;
    padding: 32px;
    border-right: 1px solid rgba(141, 103, 83, 0.15);
}

.glow-trust__grid div:last-child {
    border-right: 0;
}

.glow-trust h2 {
    margin: 22px 0 12px;
    color: var(--ref-ink);
    font-size: 23px;
    font-weight: 700;
}

.glow-trust p {
    color: var(--ref-muted);
    font-size: 15px;
    line-height: 1.65;
}

.glow-products {
    padding: 92px 0 112px;
    background: #efe6dc;
}

.glow-heading {
    max-width: 780px;
    margin: 0 auto 58px;
    text-align: center;
}

.glow-heading h2 {
    margin-top: 20px;
    color: var(--ref-ink);
    font-size: clamp(38px, 4.4vw, 58px);
    font-weight: 700;
    line-height: 1.12;
}

.glow-heading p {
    margin-top: 18px;
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.7;
}

.glow-product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.glow-product-card {
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    border: 1px solid rgba(141, 103, 83, 0.14);
    border-radius: 8px;
    background: #fffdf9;
    box-shadow: 0 30px 70px -58px rgba(91, 65, 52, 0.58);
    transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

.glow-product-card:hover {
    border-color: rgba(185, 117, 94, 0.48);
    transform: translateY(-5px);
    box-shadow: 0 38px 90px -62px rgba(91, 65, 52, 0.7);
}

.glow-product-card__image {
    display: block;
    background: #efe1d5;
}

.glow-product-card__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.glow-product-card__body {
    display: flex;
    flex-direction: column;
    padding: 28px;
}

.glow-product-card__body span {
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.17em;
    line-height: 1.2;
    text-transform: uppercase;
}

.glow-product-card--radiance .glow-product-card__body span {
    color: #c77773;
}

.glow-product-card--hepalite .glow-product-card__body span {
    color: #b98a31;
}

.glow-product-card--gutheal .glow-product-card__body span {
    color: #c98f82;
}

.glow-product-card__body h3 {
    margin: 13px 0 12px;
    color: var(--ref-ink);
    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;
}

.glow-product-card__body p {
    color: var(--ref-muted);
    font-size: 15px;
    line-height: 1.65;
}

.glow-product-card__body ul {
    display: grid;
    gap: 9px;
    margin: 22px 0 0;
    padding: 0;
    color: #b8796f;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
    list-style: none;
}

.glow-product-card__body li {
    position: relative;
    padding-left: 18px;
}

.glow-product-card__body li::before {
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d5b66e;
    content: "";
}

.glow-product-card__body small {
    display: inline-flex;
    width: fit-content;
    margin-top: auto;
    padding-top: 26px;
    color: #8d6753;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.16em;
    line-height: 1.2;
    text-transform: uppercase;
}

.glow-note {
    padding: 0 0 112px;
    background: #efe6dc;
}

.glow-note__panel {
    display: grid;
    grid-template-columns: 1fr 0.9fr;
    gap: 58px;
    align-items: center;
    padding: 56px;
    border-radius: 8px;
    background: #4f3b34;
    box-shadow: 0 34px 90px -66px rgba(91, 65, 52, 0.84);
}

.glow-note__panel h2 {
    margin-top: 18px;
    color: #fff7f1;
    font-size: clamp(32px, 3.4vw, 48px);
    font-weight: 700;
    line-height: 1.14;
}

.glow-note__panel p {
    color: rgba(255, 247, 241, 0.78);
    font-size: 16px;
    line-height: 1.75;
}

.glow-product-card__body h3 a {
    color: inherit;
}

.glow-product-card__link {
    display: inline-flex;
    gap: 10px;
    width: fit-content;
    margin-top: auto;
    padding-top: 26px;
    color: #c98f82;
    font-size: 14px;
    font-weight: 900;
}

.gd-page {
    overflow: hidden;
    background: #f7f1ec;
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.gd-hero {
    padding: 92px 0 96px;
    background:
        radial-gradient(circle at 82% 16%, color-mix(in srgb, var(--gd-accent) 28%, transparent), transparent 34%),
        radial-gradient(circle at 12% 82%, rgba(109, 119, 96, 0.18), transparent 34%),
        linear-gradient(135deg, #fff8f2 0%, #ecdacd 60%, #d8bea8 100%);
}

.gd-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(380px, 1fr);
    gap: 72px;
    align-items: center;
}

.gd-back,
.gd-badge,
.gd-heading span,
.gd-routine span {
    display: inline-block;
    color: var(--gd-accent);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.22em;
    line-height: 1.2;
    text-transform: uppercase;
}

.gd-back {
    margin-bottom: 28px;
    color: #c98f82;
    letter-spacing: 0.12em;
}

.gd-copy h1,
.gd-heading h2,
.gd-routine h2,
.gd-science-grid h3,
.gd-related-grid h3 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.gd-copy h1 {
    margin: 18px 0 14px;
    color: #332c28;
    font-size: clamp(56px, 6vw, 88px);
    font-weight: 700;
    line-height: 0.98;
}

.gd-subtitle {
    margin-bottom: 18px;
    color: var(--gd-accent);
    font-size: 21px;
    font-weight: 800;
    line-height: 1.4;
}

.gd-description {
    max-width: 680px;
    color: #675d55;
    font-size: 17px;
    line-height: 1.75;
}

.gd-pillars {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 28px;
}

.gd-pillars span {
    padding: 10px 14px;
    border: 1px solid rgba(51, 44, 40, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.48);
    color: #b8796f;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.08em;
    line-height: 1.2;
    text-transform: uppercase;
}

.gd-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.gd-outline-btn {
    border: 1px solid rgba(51, 44, 40, 0.22);
    color: #b8796f !important;
    background: rgba(255, 255, 255, 0.42);
}

.gd-outline-btn:hover {
    border-color: #c98f82;
    color: #fffdf9 !important;
    background: #c98f82;
}

.gd-media {
    padding: 18px;
    border: 1px solid rgba(141, 103, 83, 0.18);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.42);
    box-shadow: 0 38px 100px -70px rgba(91, 65, 52, 0.68);
}

.gd-media img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
    object-fit: cover;
}

.gd-section {
    padding: 96px 0;
    background: #f7f1ec;
}

.gd-section--soft,
.gd-related-section {
    background: #efe6dc;
}

.gd-heading {
    max-width: 780px;
    margin: 0 auto 52px;
    text-align: center;
}

.gd-heading h2,
.gd-routine h2 {
    margin-top: 18px;
    color: #332c28;
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 700;
    line-height: 1.12;
}

.gd-science-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid rgba(141, 103, 83, 0.14);
    border-radius: 8px;
    background: #fffdf9;
    box-shadow: 0 30px 70px -62px rgba(91, 65, 52, 0.62);
}

.gd-science-grid article {
    min-height: 260px;
    padding: 30px;
    border-right: 1px solid rgba(141, 103, 83, 0.14);
}

.gd-science-grid article:last-child {
    border-right: 0;
}

.gd-science-grid h3 {
    margin-bottom: 14px;
    color: #332c28;
    font-size: 23px;
    font-weight: 700;
    line-height: 1.18;
}

.gd-science-grid p {
    color: var(--ref-muted);
    font-size: 15px;
    line-height: 1.65;
}

.gd-routine {
    display: grid;
    grid-template-columns: 0.9fr 1fr;
    gap: 54px;
    align-items: center;
    padding: 52px;
    border-radius: 8px;
    background: #4f3b34;
    box-shadow: 0 34px 90px -66px rgba(91, 65, 52, 0.84);
}

.gd-routine h2 {
    color: #fff7f1;
}

.gd-routine p {
    color: rgba(255, 247, 241, 0.78);
    font-size: 16px;
    line-height: 1.75;
}

.gd-related-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.gd-related-grid a {
    display: grid;
    grid-template-columns: 180px 1fr;
    overflow: hidden;
    border: 1px solid rgba(141, 103, 83, 0.14);
    border-radius: 8px;
    background: #fffdf9;
    box-shadow: 0 26px 64px -58px rgba(91, 65, 52, 0.6);
}

.gd-related-grid img {
    width: 100%;
    height: 100%;
    min-height: 190px;
    object-fit: cover;
}

.gd-related-grid div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 28px;
}

.gd-related-grid span {
    color: var(--gd-accent);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.gd-related-grid h3 {
    margin-top: 12px;
    color: #332c28;
    font-size: 30px;
    font-weight: 700;
}

.about-ref-page {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.about-ref-hero {
    position: relative;
    display: flex;
    min-height: 760px;
    align-items: flex-end;
    overflow: hidden;
}

.about-ref-hero__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.about-ref-hero__shade {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(47, 40, 35, 0.88) 0%, rgba(47, 40, 35, 0.62) 42%, rgba(47, 40, 35, 0.18) 100%);
}

.about-ref-hero__content {
    position: relative;
    z-index: 1;
    max-width: 1180px;
    padding: 150px 0 118px;
}

.about-ref-hero h1,
.about-ref-intro h2,
.about-ref-heading h2,
.about-ref-science__copy h2,
.about-ref-canada__panel h2,
.about-ref-purpose h3,
.about-ref-closing__panel h2 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.about-ref-hero h1 {
    max-width: 840px;
    margin: 18px 0 22px;
    color: #fffaf2;
    font-size: clamp(52px, 6vw, 88px);
    font-weight: 700;
    line-height: 0.98;
}

.about-ref-hero p {
    max-width: 720px;
    color: rgba(255, 250, 242, 0.82);
    font-size: 18px;
    line-height: 1.75;
}

.about-ref-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.about-ref-outline-btn {
    border: 1px solid rgba(255, 250, 242, 0.36);
    color: #fffaf2 !important;
    background: transparent;
}

.about-ref-outline-btn:hover {
    border-color: var(--ref-gold);
    color: var(--ref-ink) !important;
    background: var(--ref-gold);
}

.about-ref-section {
    padding: 96px 0;
}

.about-ref-kicker,
.about-ref-heading span,
.about-ref-purpose span {
    display: inline-block;
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.22em;
    line-height: 1.2;
    text-transform: uppercase;
}

.about-ref-intro {
    background: #fffaf2;
}

.about-ref-intro__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr);
    gap: 72px;
    align-items: start;
}

.about-ref-intro h2 {
    margin-top: 18px;
    color: var(--ref-ink);
    font-size: clamp(40px, 4.8vw, 64px);
    font-weight: 700;
    line-height: 1.08;
}

.about-ref-intro p {
    color: var(--ref-muted);
    font-size: 17px;
    line-height: 1.75;
}

.about-ref-intro p + p {
    margin-top: 22px;
}

.about-ref-values,
.about-ref-purpose,
.about-ref-closing {
    background: var(--ref-warm);
}

.about-ref-heading {
    max-width: 760px;
    margin: 0 auto 52px;
    text-align: center;
}

.about-ref-heading h2 {
    margin-top: 18px;
    color: var(--ref-ink);
    font-size: clamp(38px, 4.3vw, 58px);
    font-weight: 700;
    line-height: 1.12;
}

.about-ref-value-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 78px -62px rgba(56, 49, 45, 0.58);
}

.about-ref-value-grid article {
    min-height: 280px;
    padding: 34px;
    border-right: 1px solid var(--ref-line);
}

.about-ref-value-grid article:last-child {
    border-right: 0;
}

.about-ref-value-grid h3 {
    margin: 22px 0 12px;
    color: var(--ref-ink);
    font-size: 25px;
    font-weight: 800;
}

.about-ref-value-grid p,
.about-ref-science__copy p,
.about-ref-canada__panel p,
.about-ref-purpose p,
.about-ref-closing__panel p {
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.72;
}

.about-ref-science {
    background: #fffaf2;
}

.about-ref-science__grid {
    display: grid;
    grid-template-columns: minmax(340px, 0.92fr) minmax(0, 1fr);
    gap: 72px;
    align-items: center;
}

.about-ref-science__media {
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 34px 90px -62px rgba(56, 49, 45, 0.72);
}

.about-ref-science__media img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1.08;
    object-fit: cover;
}

.about-ref-science__copy h2 {
    margin: 18px 0 18px;
    color: var(--ref-ink);
    font-size: clamp(38px, 4.2vw, 58px);
    font-weight: 700;
    line-height: 1.1;
}

.about-ref-science__copy ul {
    display: grid;
    gap: 12px;
    margin: 26px 0 0;
    padding: 0;
    color: #b8796f;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.5;
    list-style: none;
}

.about-ref-science__copy li {
    position: relative;
    padding-left: 22px;
}

.about-ref-science__copy li::before {
    position: absolute;
    left: 0;
    top: 0.58em;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ref-gold);
    content: "";
}

.about-ref-canada {
    background: #fffaf2;
}

.about-ref-canada__panel,
.about-ref-closing__panel {
    display: grid;
    grid-template-columns: 0.9fr 1fr;
    gap: 58px;
    align-items: center;
    padding: 56px;
    border-radius: 8px;
    background: #382f2b;
    box-shadow: 0 34px 90px -66px rgba(56, 49, 45, 0.82);
}

.about-ref-canada__panel h2,
.about-ref-closing__panel h2 {
    margin-top: 18px;
    color: #fffaf2;
    font-size: clamp(32px, 3.6vw, 50px);
    font-weight: 700;
    line-height: 1.12;
}

.about-ref-canada__panel p,
.about-ref-closing__panel p {
    color: rgba(255, 250, 242, 0.78);
}

.about-ref-purpose__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
}

.about-ref-purpose article {
    display: flex;
    min-height: 360px;
    flex-direction: column;
    padding: 34px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: #fffaf2;
    box-shadow: 0 28px 74px -64px rgba(56, 49, 45, 0.6);
}

.about-ref-purpose h3 {
    margin: 18px 0 14px;
    color: var(--ref-ink);
    font-size: 30px;
    font-weight: 700;
    line-height: 1.12;
}

.about-ref-purpose a {
    display: inline-flex;
    gap: 10px;
    width: fit-content;
    margin-top: auto;
    padding-top: 28px;
    color: var(--ref-green);
    font-size: 14px;
    font-weight: 900;
}

.about-ref-closing__panel {
    display: block;
    max-width: 980px;
    margin: 0 auto;
    text-align: center;
}

.about-ref-closing__panel p {
    max-width: 760px;
    margin: 18px auto 30px;
}

.contact-ref-page {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.contact-ref-hero {
    padding: 96px 0 92px;
    background:
        radial-gradient(circle at 84% 20%, rgba(213, 182, 110, 0.28), transparent 34%),
        linear-gradient(135deg, #fdf8f1 0%, #eee4d8 58%, #d8c6b2 100%);
}

.contact-ref-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(380px, 0.9fr);
    gap: 72px;
    align-items: center;
}

.contact-ref-hero h1,
.contact-ref-heading h2,
.contact-ref-card h2,
.contact-ref-form-panel h2,
.contact-ref-option-grid h3,
.contact-ref-cta__panel h2 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.contact-ref-hero h1 {
    max-width: 820px;
    margin: 18px 0 22px;
    color: var(--ref-ink);
    font-size: clamp(52px, 5.6vw, 82px);
    font-weight: 700;
    line-height: 1;
}

.contact-ref-hero p {
    max-width: 690px;
    color: var(--ref-muted);
    font-size: 18px;
    line-height: 1.75;
}

.contact-ref-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 34px;
}

.contact-ref-outline-btn {
    border: 1px solid rgba(51, 44, 40, 0.22);
    color: var(--ref-green) !important;
    background: rgba(255, 255, 255, 0.5);
}

.contact-ref-outline-btn:hover {
    border-color: var(--ref-green);
    color: #fffaf2 !important;
    background: var(--ref-green);
}

.contact-ref-hero__media {
    overflow: hidden;
    padding: 18px;
    border: 1px solid rgba(56, 49, 45, 0.12);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.46);
    box-shadow: 0 38px 100px -70px rgba(56, 49, 45, 0.72);
}

.contact-ref-hero__media img {
    display: block;
    width: 100%;
    aspect-ratio: 1.08 / 1;
    border-radius: 8px;
    object-fit: cover;
}

.contact-ref-section {
    padding: 92px 0;
}

.contact-ref-options,
.contact-ref-cta {
    background: var(--ref-warm);
}

.contact-ref-heading {
    max-width: 760px;
    margin: 0 auto 52px;
    text-align: center;
}

.contact-ref-kicker,
.contact-ref-heading span {
    display: inline-block;
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.22em;
    line-height: 1.2;
    text-transform: uppercase;
}

.contact-ref-heading h2 {
    margin-top: 18px;
    color: var(--ref-ink);
    font-size: clamp(38px, 4.3vw, 58px);
    font-weight: 700;
    line-height: 1.12;
}

.contact-ref-option-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 78px -62px rgba(56, 49, 45, 0.58);
}

.contact-ref-option-grid article {
    min-height: 270px;
    padding: 34px;
    border-right: 1px solid var(--ref-line);
}

.contact-ref-option-grid article:last-child {
    border-right: 0;
}

.contact-ref-option-grid h3 {
    margin: 22px 0 12px;
    color: var(--ref-ink);
    font-size: 25px;
    font-weight: 700;
}

.contact-ref-option-grid p,
.contact-ref-card p,
.contact-ref-form-panel p,
.contact-ref-cta__panel p {
    color: var(--ref-muted);
    font-size: 15px;
    line-height: 1.7;
}

.contact-ref-main {
    background: #fffaf2;
}

.contact-ref-main__grid {
    display: grid;
    grid-template-columns: minmax(300px, 0.72fr) minmax(0, 1fr);
    gap: 34px;
    align-items: start;
}

.contact-ref-card,
.contact-ref-form-panel {
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 30px 80px -66px rgba(56, 49, 45, 0.6);
}

.contact-ref-card {
    padding: 34px;
}

.contact-ref-card h2,
.contact-ref-form-panel h2 {
    margin: 18px 0 24px;
    color: var(--ref-ink);
    font-size: 34px;
    font-weight: 700;
    line-height: 1.12;
}

.contact-ref-detail {
    padding: 22px 0;
    border-top: 1px solid var(--ref-line);
}

.contact-ref-detail strong {
    display: block;
    margin-bottom: 8px;
    color: var(--ref-ink);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.contact-ref-detail a {
    color: var(--ref-green);
    font-weight: 800;
}

.contact-ref-note {
    margin-top: 12px;
    padding: 20px;
    border-radius: 8px;
    background: #f5efe6;
}

.contact-ref-note p {
    margin: 0;
    font-size: 14px;
}

.contact-ref-form-panel {
    padding: 38px;
}

.contact-ref-form {
    display: grid;
    gap: 18px;
    margin-top: 28px;
}

.contact-ref-form__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.contact-ref-form label {
    display: grid;
    gap: 9px;
}

.contact-ref-form label span {
    color: var(--ref-ink);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.contact-ref-form input,
.contact-ref-form select,
.contact-ref-form textarea {
    width: 100%;
    min-height: 52px;
    padding: 14px 16px;
    border: 1px solid rgba(56, 49, 45, 0.14);
    border-radius: 8px;
    background: #fffaf2;
    color: var(--ref-ink);
    font-size: 15px;
}

.contact-ref-form textarea {
    min-height: 150px;
    resize: vertical;
}

.contact-ref-form input:focus,
.contact-ref-form select:focus,
.contact-ref-form textarea:focus {
    border-color: rgba(109, 119, 96, 0.55);
    outline: 0;
    box-shadow: 0 0 0 4px rgba(109, 119, 96, 0.12);
}

.contact-ref-form .ref-btn {
    width: fit-content;
    margin-top: 6px;
    border: 0;
}

.contact-ref-cta__panel {
    max-width: 980px;
    margin: 0 auto;
    padding: 56px;
    border-radius: 8px;
    background: #382f2b;
    text-align: center;
    box-shadow: 0 34px 90px -66px rgba(56, 49, 45, 0.82);
}

.contact-ref-cta__panel h2 {
    margin: 18px auto;
    color: #fffaf2;
    font-size: clamp(34px, 4vw, 54px);
    font-weight: 700;
    line-height: 1.1;
}

.contact-ref-cta__panel p {
    max-width: 720px;
    margin: 0 auto 30px;
    color: rgba(255, 250, 242, 0.78);
    font-size: 16px;
}

.faq-ref-page {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.faq-ref-hero {
    padding: 86px 0 78px;
    background:
        radial-gradient(circle at 18% 18%, rgba(213, 182, 110, 0.18) 0, rgba(213, 182, 110, 0) 34%),
        linear-gradient(135deg, #f8f1e8 0%, #fdfaf5 58%, #f0e8dc 100%);
}

.faq-ref-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 0.92fr);
    gap: 68px;
    align-items: center;
}

.faq-ref-hero h1,
.faq-ref-intro h2,
.faq-ref-aside h2 {
    color: var(--ref-ink);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.faq-ref-hero h1 {
    margin: 28px 0 22px;
    font-size: clamp(46px, 5vw, 70px);
    font-weight: 700;
    line-height: 1.02;
}

.faq-ref-hero p {
    max-width: 620px;
    color: var(--ref-muted);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
}

.faq-ref-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 34px;
}

.faq-ref-outline-btn {
    border: 1px solid rgba(201, 143, 130, 0.52);
    color: var(--ref-green) !important;
    background: rgba(255, 255, 255, 0.48);
}

.faq-ref-hero__media {
    padding: 14px;
    border: 1px solid rgba(213, 182, 110, 0.28);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.56);
    box-shadow: 0 34px 85px -64px rgba(56, 49, 45, 0.72);
}

.faq-ref-hero__media img {
    display: block;
    width: 100%;
    aspect-ratio: 1.12 / 1;
    border-radius: 6px;
    object-fit: cover;
    object-position: center;
}

.faq-ref-section {
    padding: 98px 0;
}

.faq-ref-intro {
    background: #fbf8f3;
}

.faq-ref-intro__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 76px -62px rgba(56, 49, 45, 0.5);
}

.faq-ref-intro article {
    min-height: 265px;
    padding: 34px 32px;
    border-right: 1px solid var(--ref-line);
}

.faq-ref-intro article:last-child {
    border-right: 0;
}

.faq-ref-intro h2 {
    margin: 28px 0 12px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
}

.faq-ref-intro p,
.faq-ref-aside p,
.faq-ref-list p {
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.7;
}

.faq-ref-main {
    background: linear-gradient(180deg, var(--ref-cream) 0%, #fbf8f3 100%);
}

.faq-ref-main__grid {
    display: grid;
    grid-template-columns: minmax(260px, 0.36fr) minmax(0, 1fr);
    gap: 48px;
    align-items: start;
}

.faq-ref-aside {
    position: sticky;
    top: 96px;
    padding: 34px;
    border: 1px solid rgba(201, 143, 130, 0.2);
    border-radius: 8px;
    background: #f7f2ea;
}

.faq-ref-kicker {
    display: inline-block;
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.28em;
    line-height: 1.2;
    text-transform: uppercase;
}

.faq-ref-aside h2 {
    margin: 20px 0 16px;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.18;
}

.faq-ref-aside .ref-btn {
    margin-top: 24px;
}

.faq-ref-list {
    display: grid;
    gap: 26px;
}

.faq-ref-group {
    padding: 30px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 24px 70px -62px rgba(56, 49, 45, 0.46);
}

.faq-ref-group .faq-ref-kicker {
    margin-bottom: 16px;
}

.faq-ref-list details {
    border-top: 1px solid var(--ref-line);
}

.faq-ref-list details:last-child {
    border-bottom: 1px solid var(--ref-line);
}

.faq-ref-list summary {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 70px;
    padding: 20px 42px 20px 0;
    color: var(--ref-ink);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: 23px;
    font-weight: 700;
    line-height: 1.24;
    cursor: pointer;
    list-style: none;
}

.faq-ref-list summary::-webkit-details-marker {
    display: none;
}

.faq-ref-list summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 2px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1px solid rgba(201, 143, 130, 0.32);
    border-radius: 999px;
    color: var(--ref-green);
    font-family: "Inter", Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    transform: translateY(-50%);
}

.faq-ref-list details[open] summary::after {
    content: "-";
}

.faq-ref-list p {
    max-width: 820px;
    margin: -4px 0 22px;
    padding-right: 36px;
}

.insights-ref-page {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.insights-ref-hero {
    position: relative;
    min-height: min(760px, calc(100vh - 62px));
    display: flex;
    align-items: center;
    isolation: isolate;
    background: #342d28;
}

.insights-ref-hero__image,
.insights-ref-hero__shade {
    position: absolute;
    inset: 0;
}

.insights-ref-hero__image {
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.insights-ref-hero__shade {
    z-index: -1;
    background:
        linear-gradient(90deg, rgba(47, 40, 35, 0.88) 0%, rgba(47, 40, 35, 0.66) 42%, rgba(47, 40, 35, 0.22) 78%),
        linear-gradient(180deg, rgba(47, 40, 35, 0.1) 0%, rgba(47, 40, 35, 0.34) 100%);
}

.insights-ref-hero__content {
    max-width: 650px;
    padding: 104px 0 88px;
    color: #fff;
}

.insights-ref-hero h1,
.insights-ref-heading h2,
.insights-ref-card h3,
.insights-ref-topic-grid h3,
.insights-ref-signup__panel h2 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.insights-ref-hero h1 {
    margin: 28px 0 22px;
    color: #fff;
    font-size: clamp(52px, 6vw, 78px);
    font-weight: 700;
    line-height: 1.02;
}

.insights-ref-hero p {
    max-width: 590px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.66;
}

.insights-ref-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 34px;
}

.insights-ref-ghost-btn {
    border: 1px solid rgba(255, 255, 255, 0.45);
    color: #fff !important;
    background: rgba(255, 255, 255, 0.08);
}

.insights-ref-section {
    padding: 104px 0;
}

.insights-ref-featured {
    background: #fbf8f3;
}

.insights-ref-heading {
    max-width: 760px;
    margin: 0 auto 56px;
    text-align: center;
}

.insights-ref-heading span,
.insights-ref-card span,
.insights-ref-signup__panel span {
    display: inline-block;
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.28em;
    line-height: 1.2;
    text-transform: uppercase;
}

.insights-ref-heading h2 {
    margin-top: 20px;
    color: var(--ref-ink);
    font-size: clamp(38px, 4.4vw, 58px);
    font-weight: 700;
    line-height: 1.12;
}

.insights-ref-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}

.insights-ref-card {
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 70px -58px rgba(56, 49, 45, 0.52);
}

.insights-ref-card--large {
    grid-column: 1 / -1;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
    grid-template-rows: auto;
}

.insights-ref-card img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 310px;
    object-fit: cover;
    object-position: center;
}

.insights-ref-card--large img {
    min-height: 430px;
}

.insights-ref-card div {
    display: flex;
    flex-direction: column;
    padding: 34px;
}

.insights-ref-card h3 {
    margin: 20px 0 14px;
    color: var(--ref-ink);
    font-size: 31px;
    font-weight: 700;
    line-height: 1.16;
}

.insights-ref-card--large h3 {
    font-size: clamp(34px, 3.6vw, 48px);
}

.insights-ref-card p,
.insights-ref-topic-grid p,
.insights-ref-signup__panel p {
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.7;
}

.insights-ref-card a {
    display: inline-flex;
    gap: 10px;
    margin-top: auto;
    padding-top: 28px;
    color: var(--ref-green);
    font-size: 14px;
    font-weight: 800;
}

.insights-ref-library {
    background: linear-gradient(180deg, var(--ref-cream) 0%, #f7f2ea 100%);
}

.insights-ref-topic-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.insights-ref-topic-grid article {
    min-height: 285px;
    padding: 30px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 24px 64px -58px rgba(56, 49, 45, 0.48);
}

.insights-ref-topic-grid p {
    margin: 24px 0 10px;
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.insights-ref-topic-grid h3 {
    color: var(--ref-ink);
    font-size: 25px;
    font-weight: 700;
    line-height: 1.2;
}

.insights-ref-topic-grid small {
    display: inline-flex;
    margin-top: 24px;
    color: var(--ref-green);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.insights-ref-signup {
    background: #fbf8f3;
}

.insights-ref-signup__panel {
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1fr) auto;
    gap: 42px;
    align-items: center;
    padding: 52px;
    border-radius: 8px;
    background: #382f2b;
    box-shadow: 0 34px 90px -66px rgba(56, 49, 45, 0.82);
}

.insights-ref-signup__panel h2 {
    margin-top: 18px;
    color: #fffaf2;
    font-size: clamp(32px, 3.4vw, 46px);
    font-weight: 700;
    line-height: 1.12;
}

.insights-ref-signup__panel p {
    color: rgba(255, 250, 242, 0.78);
}

.collections-ref-page {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.collections-ref-hero {
    padding: 86px 0 78px;
    background:
        radial-gradient(circle at 14% 22%, rgba(213, 182, 110, 0.17) 0, rgba(213, 182, 110, 0) 32%),
        linear-gradient(135deg, #f8f1e8 0%, #fdfaf5 58%, #f0e8dc 100%);
}

.collections-ref-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1fr);
    gap: 70px;
    align-items: center;
}

.collections-ref-back {
    display: inline-flex;
    margin-bottom: 18px;
    color: var(--ref-green);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.collections-ref-hero h1,
.collections-ref-heading h2,
.collections-ref-card h3,
.collections-ref-support__panel h2 {
    color: var(--ref-ink);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.collections-ref-hero h1 {
    margin: 28px 0 22px;
    font-size: clamp(46px, 5vw, 70px);
    font-weight: 700;
    line-height: 1.02;
}

.collections-ref-hero p {
    max-width: 620px;
    color: var(--ref-muted);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
}

.collections-ref-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 34px;
}

.collections-ref-outline-btn {
    border: 1px solid rgba(201, 143, 130, 0.52);
    color: var(--ref-green) !important;
    background: rgba(255, 255, 255, 0.48);
}

.collections-ref-hero__media {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    padding: 14px;
    border: 1px solid rgba(213, 182, 110, 0.28);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.56);
    box-shadow: 0 34px 85px -64px rgba(56, 49, 45, 0.72);
}

.collections-ref-hero__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 360px;
    border-radius: 6px;
    object-fit: cover;
    object-position: center;
}

.collections-ref-section {
    padding: 104px 0;
}

.collections-ref-grid-section {
    background: #fbf8f3;
}

.collections-ref-heading {
    max-width: 760px;
    margin: 0 auto 56px;
    text-align: center;
}

.collections-ref-heading span,
.collections-ref-card__body span,
.collections-ref-support__panel span {
    display: inline-block;
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.28em;
    line-height: 1.2;
    text-transform: uppercase;
}

.collections-ref-heading h2 {
    margin-top: 20px;
    font-size: clamp(38px, 4.4vw, 58px);
    font-weight: 700;
    line-height: 1.12;
}

.collections-ref-heading p,
.collections-ref-card p,
.collections-ref-support__panel p {
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.7;
}

.collections-ref-heading p {
    margin-top: 18px;
}

.collections-ref-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    align-items: stretch;
}

.collections-ref-card {
    display: grid;
    grid-template-rows: auto 1fr;
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 70px -58px rgba(56, 49, 45, 0.52);
}

.collections-ref-card__image img {
    display: block;
    width: 100%;
    aspect-ratio: 1.24 / 1;
    object-fit: cover;
    object-position: center;
}

.collections-ref-card__body {
    display: flex;
    flex-direction: column;
    padding: 30px;
}

.collections-ref-card h3 {
    margin: 18px 0 14px;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.16;
}

.collections-ref-card h3 a {
    color: inherit;
}

.collections-ref-card ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 24px 0 0;
    padding: 0;
    list-style: none;
}

.collections-ref-card li {
    padding: 8px 11px;
    border: 1px solid rgba(201, 143, 130, 0.18);
    border-radius: 999px;
    color: var(--ref-green);
    background: #f7f2ea;
    font-size: 12px;
    font-weight: 800;
}

.collections-ref-card__body > a {
    display: inline-flex;
    gap: 10px;
    margin-top: auto;
    padding-top: 28px;
    color: var(--ref-green);
    font-size: 14px;
    font-weight: 800;
}

.collections-ref-card--ceuticals {
    background: #fbfaf7;
}

.collections-ref-card--glow li {
    color: #8d6753;
}

.collections-ref-support {
    background: var(--ref-cream);
}

.collections-ref-support__panel {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr) auto;
    gap: 42px;
    align-items: center;
    padding: 52px;
    border-radius: 8px;
    background: #382f2b;
    box-shadow: 0 34px 90px -66px rgba(56, 49, 45, 0.82);
}

.collections-ref-support__panel h2 {
    margin-top: 18px;
    color: #fffaf2;
    font-size: clamp(32px, 3.4vw, 46px);
    font-weight: 700;
    line-height: 1.12;
}

.collections-ref-support__panel p {
    color: rgba(255, 250, 242, 0.78);
}

.leadership-ref-page {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.leadership-ref-hero {
    padding: 86px 0 78px;
    background:
        radial-gradient(circle at 17% 22%, rgba(213, 182, 110, 0.17) 0, rgba(213, 182, 110, 0) 34%),
        linear-gradient(135deg, #f8f1e8 0%, #fdfaf5 58%, #f0e8dc 100%);
}

.leadership-ref-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 0.95fr);
    gap: 70px;
    align-items: center;
}

.leadership-ref-back {
    display: inline-flex;
    margin-bottom: 18px;
    color: var(--ref-green);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.leadership-ref-hero h1,
.leadership-ref-pillar-grid h2,
.leadership-ref-heading h2,
.leadership-ref-card h3,
.leadership-ref-clinical__copy h2,
.leadership-ref-cta__panel h2,
.leadership-ref-modal .modal-title {
    color: var(--ref-ink);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.leadership-ref-hero h1 {
    margin: 28px 0 22px;
    font-size: clamp(46px, 5vw, 70px);
    font-weight: 700;
    line-height: 1.02;
}

.leadership-ref-hero p {
    max-width: 620px;
    color: var(--ref-muted);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
}

.leadership-ref-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 34px;
}

.leadership-ref-outline-btn {
    border: 1px solid rgba(201, 143, 130, 0.52);
    color: var(--ref-green) !important;
    background: rgba(255, 255, 255, 0.48);
}

.leadership-ref-hero__media {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    padding: 14px;
    border: 1px solid rgba(213, 182, 110, 0.28);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.56);
    box-shadow: 0 34px 85px -64px rgba(56, 49, 45, 0.72);
}

.leadership-ref-hero__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 470px;
    border-radius: 6px;
    object-fit: cover;
    object-position: center top;
}

.leadership-ref-hero__media--single {
    grid-template-columns: 1fr;
    padding: 12px;
}

.leadership-ref-hero__media--single img {
    min-height: 520px;
    aspect-ratio: 1.12 / 1;
    object-position: center;
}

.leadership-ref-section {
    padding: 104px 0;
}

.leadership-ref-pillars {
    background: #fbf8f3;
}

.leadership-ref-pillar-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 76px -62px rgba(56, 49, 45, 0.5);
}

.leadership-ref-pillar-grid article {
    min-height: 270px;
    padding: 34px 32px;
    border-right: 1px solid var(--ref-line);
}

.leadership-ref-pillar-grid article:last-child {
    border-right: 0;
}

.leadership-ref-pillar-grid h2 {
    margin: 28px 0 12px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.2;
}

.leadership-ref-pillar-grid p,
.leadership-ref-heading p,
.leadership-ref-card p,
.leadership-ref-clinical__copy p,
.leadership-ref-clinical__copy li,
.leadership-ref-cta__panel p,
.leadership-ref-modal .modal-body p {
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.7;
}

.leadership-ref-team {
    background: linear-gradient(180deg, var(--ref-cream) 0%, #fbf8f3 100%);
}

.leadership-ref-heading {
    max-width: 760px;
    margin: 0 auto 56px;
    text-align: center;
}

.leadership-ref-heading span,
.leadership-ref-card__body span,
.leadership-ref-clinical__copy span,
.leadership-ref-cta__panel span {
    display: inline-block;
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.28em;
    line-height: 1.2;
    text-transform: uppercase;
}

.leadership-ref-heading h2 {
    margin-top: 20px;
    font-size: clamp(38px, 4.4vw, 58px);
    font-weight: 700;
    line-height: 1.12;
}

.leadership-ref-heading p {
    margin-top: 18px;
}

.leadership-ref-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    align-items: stretch;
}

.leadership-ref-card {
    display: grid;
    grid-template-rows: 470px 1fr;
    overflow: hidden;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 70px -58px rgba(56, 49, 45, 0.52);
}

.leadership-ref-card__portrait {
    overflow: hidden;
    background: linear-gradient(135deg, #f7f1ec 0%, #e8ded2 100%);
}

.leadership-ref-card__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
}

.leadership-ref-card__image--brian {
    object-position: center 8%;
}

.leadership-ref-card__image--alana {
    object-position: center top;
}

.leadership-ref-card__image--joseph {
    object-position: center 12%;
}

.leadership-ref-card__body {
    display: flex;
    flex-direction: column;
    min-height: 310px;
    padding: 30px;
}

.leadership-ref-card h3 {
    margin: 18px 0 14px;
    min-height: 66px;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.16;
}

.leadership-ref-card p {
    min-height: 110px;
    margin-bottom: 24px;
}

.leadership-ref-card .ref-btn {
    width: fit-content;
    margin-top: auto;
    padding: 0 22px;
    border-radius: 999px;
    background: transparent;
}

.leadership-ref-clinical {
    background: #fbf8f3;
}

.leadership-ref-clinical__grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1fr);
    gap: 68px;
    align-items: center;
}

.leadership-ref-clinical__media img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 5;
    border-radius: 8px;
    object-fit: cover;
    object-position: center top;
    box-shadow: 0 34px 90px -62px rgba(56, 49, 45, 0.64);
}

.leadership-ref-clinical__copy h2 {
    margin: 20px 0 20px;
    font-size: clamp(36px, 4vw, 54px);
    font-weight: 700;
    line-height: 1.12;
}

.leadership-ref-clinical__copy ul {
    display: grid;
    gap: 14px;
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
}

.leadership-ref-clinical__copy li {
    position: relative;
    padding-left: 28px;
}

.leadership-ref-clinical__copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 10px;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: var(--ref-gold);
}

.leadership-ref-cta {
    background: var(--ref-cream);
}

.leadership-ref-cta__panel {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr) auto;
    gap: 42px;
    align-items: center;
    padding: 52px;
    border-radius: 8px;
    background: #382f2b;
    box-shadow: 0 34px 90px -66px rgba(56, 49, 45, 0.82);
}

.leadership-ref-cta__panel h2 {
    margin-top: 18px;
    color: #fffaf2;
    font-size: clamp(32px, 3.4vw, 46px);
    font-weight: 700;
    line-height: 1.12;
}

.leadership-ref-cta__panel p {
    color: rgba(255, 250, 242, 0.78);
}

.leadership-ref-modal .modal-content {
    overflow: hidden;
    border: 1px solid rgba(213, 182, 110, 0.24);
    border-radius: 8px;
    background: #fffaf2;
}

.leadership-ref-modal .modal-header {
    padding: 26px 30px 0;
    border: 0;
}

.leadership-ref-modal .modal-title {
    font-size: 30px;
    font-weight: 700;
}

.leadership-ref-modal .modal-body {
    padding: 20px 30px 30px;
}

.leadership-ref-modal .modal-body p + p {
    margin-top: 16px;
}

/* Genesis Hormone Health Assessment */
.assessment-ref-page {
    overflow: hidden;
    background: var(--ref-cream);
    color: var(--ref-ink);
    font-family: "Inter", "Sora", Arial, sans-serif;
}

.assessment-ref-hero {
    padding: 104px 0 86px;
    background:
        radial-gradient(circle at 86% 8%, rgba(213, 182, 110, 0.18), transparent 32%),
        linear-gradient(135deg, #fffaf2 0%, #f8f3ec 46%, #ece5d9 100%);
}

.assessment-ref-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.72fr);
    gap: 68px;
    align-items: center;
}

.assessment-ref-hero__copy h1,
.assessment-ref-card h2,
.assessment-ref-result-hero h2,
.assessment-ref-product h3,
.assessment-ref-result-grid h3,
.assessment-ref-breakdown h3,
.assessment-ref-next h3 {
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    letter-spacing: 0;
}

.assessment-ref-hero__copy h1 {
    max-width: 720px;
    margin: 24px 0 24px;
    color: var(--ref-ink);
    font-size: clamp(52px, 5.7vw, 84px);
    font-weight: 700;
    line-height: 0.98;
}

.assessment-ref-hero__copy p {
    max-width: 650px;
    color: var(--ref-muted);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.7;
}

.assessment-ref-hero__copy .ref-btn {
    margin-top: 34px;
}

.assessment-ref-hero__panel {
    display: grid;
    gap: 16px;
    padding: 20px;
    border: 1px solid rgba(213, 182, 110, 0.34);
    border-radius: 8px;
    background: rgba(255, 253, 249, 0.72);
    box-shadow: 0 34px 90px -70px rgba(56, 49, 45, 0.72);
    backdrop-filter: blur(14px);
}

.assessment-ref-hero__panel div {
    display: grid;
    grid-template-columns: 92px 1fr;
    gap: 18px;
    align-items: center;
    min-height: 104px;
    padding: 24px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
}

.assessment-ref-hero__panel span {
    color: var(--ref-green);
    font-family: "Playfair Display", "Marcellus", Georgia, serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
}

.assessment-ref-hero__panel p {
    margin: 0;
    color: var(--ref-muted);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.14em;
    line-height: 1.35;
    text-transform: uppercase;
}

.assessment-ref-section {
    padding: 92px 0 112px;
    background: var(--ref-cream);
}

.assessment-ref-shell {
    max-width: 980px;
    margin: 0 auto;
}

.assessment-ref-progress {
    overflow: hidden;
    height: 10px;
    margin-bottom: 22px;
    border-radius: 999px;
    background: rgba(201, 143, 130, 0.16);
}

.assessment-ref-progress span {
    display: block;
    width: 0;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #c98f82 0%, #d5b66e 100%);
    transition: width 0.28s ease;
}

.assessment-ref-card,
.assessment-ref-results > section,
.assessment-ref-results > .assessment-ref-disclaimer {
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    background: var(--ref-card);
    box-shadow: 0 28px 80px -68px rgba(56, 49, 45, 0.58);
}

.assessment-ref-card {
    padding: 52px;
}

.assessment-ref-card--intro {
    text-align: center;
}

.assessment-ref-card--intro h2,
.assessment-ref-card h2 {
    max-width: 760px;
    margin: 18px auto 18px;
    color: var(--ref-ink);
    font-size: clamp(36px, 4vw, 56px);
    font-weight: 700;
    line-height: 1.1;
}

.assessment-ref-card p {
    max-width: 690px;
    margin: 0 auto;
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.7;
}

.assessment-ref-count {
    color: var(--ref-gold);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.2em;
    text-transform: uppercase;
}

.assessment-ref-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin: 36px 0;
}

.assessment-ref-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 74px;
    padding: 20px 22px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    color: var(--ref-ink);
    background: #fffaf2;
    text-align: left;
    transition: border-color 0.18s ease, background 0.18s ease, transform 0.18s ease;
}

.assessment-ref-option:hover,
.assessment-ref-option.is-selected {
    border-color: rgba(201, 143, 130, 0.55);
    background: #f0ece3;
    transform: translateY(-1px);
}

.assessment-ref-option span {
    font-size: 15px;
    font-weight: 800;
}

.assessment-ref-option small {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    color: #fff;
    background: var(--ref-green);
    font-size: 13px;
    font-weight: 900;
}

.assessment-ref-controls,
.assessment-ref-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
}

.assessment-ref-note {
    margin-top: 18px !important;
    color: #8a8077 !important;
    font-size: 13px !important;
}

.assessment-ref-disclaimer {
    margin: 28px auto;
    padding: 18px 20px;
    color: #6b625b;
    background: #f6efe4;
    font-size: 13px;
    line-height: 1.65;
}

.assessment-ref-card--intro .assessment-ref-disclaimer {
    max-width: 760px;
}

.assessment-ref-card--intro .ref-btn {
    margin-top: 8px;
}

.assessment-ref-form {
    max-width: 760px;
    margin: 0 auto;
}

.assessment-ref-form label {
    display: grid;
    gap: 9px;
    margin-top: 18px;
    color: var(--ref-ink);
    font-size: 13px;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.assessment-ref-form input[type="text"],
.assessment-ref-form input[type="email"] {
    width: 100%;
    min-height: 54px;
    padding: 0 18px;
    border: 1px solid var(--ref-line);
    border-radius: 8px;
    color: var(--ref-ink);
    background: #fffaf2;
    font-size: 16px;
    text-transform: none;
}

.assessment-ref-form .ref-btn {
    margin-top: 24px;
}

.assessment-ref-checkbox {
    display: flex !important;
    grid-template-columns: none !important;
    flex-direction: row;
    align-items: flex-start;
    gap: 12px !important;
    color: var(--ref-muted) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    line-height: 1.5;
    text-transform: none !important;
}

.assessment-ref-checkbox input {
    margin-top: 4px;
}

.assessment-ref-results {
    display: grid;
    gap: 24px;
}

.assessment-ref-result-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.58fr);
    gap: 34px;
    align-items: center;
    padding: 48px;
}

.assessment-ref-result-hero h2 {
    margin: 18px 0;
    color: var(--ref-ink);
    font-size: clamp(38px, 4vw, 58px);
    font-weight: 700;
    line-height: 1.1;
}

.assessment-ref-result-hero p,
.assessment-ref-result-grid p,
.assessment-ref-next p {
    color: var(--ref-muted);
    font-size: 16px;
    line-height: 1.72;
}

.assessment-ref-product {
    overflow: hidden;
    border: 1px solid rgba(213, 182, 110, 0.32);
    border-radius: 8px;
    background: #f6efe4;
}

.assessment-ref-product img {
    display: block;
    width: 100%;
    aspect-ratio: 1.28 / 1;
    object-fit: cover;
}

.assessment-ref-product div {
    padding: 24px;
}

.assessment-ref-product span {
    color: var(--ref-gold);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.assessment-ref-product h3 {
    margin: 10px 0 20px;
    color: var(--ref-ink);
    font-size: 30px;
    font-weight: 700;
}

.assessment-ref-result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
}

.assessment-ref-result-grid article {
    padding: 34px;
    background: var(--ref-card);
}

.assessment-ref-result-grid h3,
.assessment-ref-breakdown h3,
.assessment-ref-next h3 {
    margin-bottom: 14px;
    color: var(--ref-ink);
    font-size: 28px;
    font-weight: 700;
}

.assessment-ref-breakdown,
.assessment-ref-next {
    padding: 38px;
}

.assessment-ref-bar + .assessment-ref-bar {
    margin-top: 18px;
}

.assessment-ref-bar div {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 8px;
    color: var(--ref-ink);
    font-size: 14px;
    font-weight: 800;
}

.assessment-ref-bar strong {
    color: var(--ref-green);
}

.assessment-ref-bar em {
    display: block;
    overflow: hidden;
    height: 9px;
    border-radius: 999px;
    background: rgba(201, 143, 130, 0.14);
}

.assessment-ref-bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--ref-green);
}

.assessment-ref-next .assessment-ref-actions {
    margin-top: 24px;
}

@media print {
    .genesis-ref-header,
    .genesis-ref-footer,
    .canvas-mb,
    #scroll-top,
    .preload,
    .assessment-ref-hero,
    .assessment-ref-progress,
    .assessment-ref-actions {
        display: none !important;
    }

    .assessment-ref-section,
    .assessment-ref-page {
        padding: 0 !important;
        background: #fff !important;
    }

    .assessment-ref-card,
    .assessment-ref-results > section,
    .assessment-ref-results > .assessment-ref-disclaimer {
        box-shadow: none !important;
    }
}

@media (max-width: 1199px) {
    .genesis-ref-header__inner {
        grid-template-columns: auto 1fr auto;
    }

    .genesis-ref-header__nav,
    .genesis-ref-header__shop {
        display: none;
    }

    .genesis-ref-header__menu {
        display: inline-flex;
    }

    .ref-value-grid,
    .ref-ecosystem-grid,
    .ref-education-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ref-science-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ref-science-grid article:nth-child(2) {
        border-right: 0;
    }

    .genesis-ref-footer__top {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .pf-hero__grid {
        grid-template-columns: 1fr;
    }

    .pf-hero__media {
        max-width: 620px;
    }

    .pf-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pcat-hero__grid {
        grid-template-columns: 1fr;
    }

    .pcat-hero__media {
        max-width: 620px;
    }

    .pcat-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .ref-container {
        width: min(100% - 32px, 1110px);
    }

    .genesis-ref-header__inner {
        min-height: 58px;
        padding: 0 16px;
    }

    .genesis-ref-header__logo img {
        width: 44px;
        height: 44px;
    }

    .genesis-ref-header__logo span {
        font-size: 16px;
    }

    .genesis-ref-header__logo small {
        font-size: 8px;
    }

    .ref-hero {
        min-height: 720px;
        align-items: flex-end;
    }

    .ref-hero__image {
        object-position: 63% top;
    }

    .ref-hero__shade {
        background: linear-gradient(180deg, rgba(35, 30, 27, 0.2) 0%, rgba(35, 30, 27, 0.82) 62%, rgba(35, 30, 27, 0.92) 100%);
    }

    .ref-hero__content {
        padding: 112px 0 72px;
    }

    .ref-pill {
        font-size: 10px;
        letter-spacing: 0.18em;
    }

    .ref-hero h1 {
        font-size: 42px;
        line-height: 1.02;
    }

    .ref-hero p {
        font-size: 16px;
    }

    .ref-actions,
    .ref-btn {
        width: 100%;
    }

    .ref-section {
        padding: 72px 0;
    }

    .ref-heading {
        margin-bottom: 38px;
    }

    .ref-heading h2,
    .ref-clinical__copy h2 {
        font-size: 36px;
    }

    .ref-value-grid,
    .ref-ecosystem-grid,
    .ref-clinical__grid,
    .ref-founders__panel,
    .ref-science-grid,
    .ref-education-grid {
        grid-template-columns: 1fr;
    }

    .ref-value-card {
        min-height: auto;
        padding: 26px;
    }

    .ref-ecosystem-card div {
        padding: 24px;
    }

    .ref-ecosystem-card h3 {
        font-size: 24px;
    }

    .ref-clinical__grid {
        gap: 48px;
    }

    .ref-founders {
        padding-bottom: 76px;
    }

    .ref-founders__panel {
        gap: 28px;
        padding: 30px;
    }

    .ref-science-grid article,
    .ref-science-grid article:nth-child(2) {
        border-right: 0;
        border-bottom: 1px solid var(--ref-line);
    }

    .ref-science-grid article:last-child {
        border-bottom: 0;
    }

    .genesis-ref-footer {
        padding: 60px 0 26px;
    }

    .genesis-ref-footer__top,
    .genesis-ref-footer__links,
    .genesis-ref-footer__bottom {
        grid-template-columns: 1fr;
    }

    .genesis-ref-footer__links {
        gap: 30px;
    }

    .genesis-ref-footer__bottom {
        display: grid;
    }

    .pf-hero {
        padding: 68px 0 70px;
    }

    .pf-hero__grid {
        gap: 48px;
    }

    .pf-hero h1 {
        font-size: 42px;
    }

    .pf-hero p {
        font-size: 16px;
    }

    .pf-hero__actions,
    .pf-hero__actions .ref-btn {
        width: 100%;
    }

    .pf-hero__media {
        padding: 12px;
    }

    .pf-hero__badge {
        left: 24px;
        min-width: 188px;
    }

    .pf-trust {
        padding: 26px 0 62px;
    }

    .pf-trust__grid,
    .pf-product-grid,
    .pf-note__panel {
        grid-template-columns: 1fr;
    }

    .pf-trust__grid div {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid var(--ref-line);
    }

    .pf-trust__grid div:last-child {
        border-bottom: 0;
    }

    .pf-products {
        padding: 72px 0;
    }

    .pf-product-card__body {
        padding: 24px;
    }

    .pf-note {
        padding-bottom: 72px;
    }

    .pf-note__panel {
        gap: 28px;
        padding: 30px;
    }

    .pcat-hero {
        padding: 68px 0 70px;
    }

    .pcat-hero__grid {
        gap: 48px;
    }

    .pcat-hero h1 {
        font-size: 42px;
    }

    .pcat-hero p {
        font-size: 16px;
    }

    .pcat-hero__actions,
    .pcat-hero__actions .ref-btn {
        width: 100%;
    }

    .pcat-hero__media {
        padding: 12px;
    }

    .pcat-hero__badge {
        left: 24px;
        min-width: 210px;
    }

    .pcat-trust {
        padding: 26px 0 62px;
    }

    .pcat-trust__grid,
    .pcat-product-grid,
    .pcat-note__panel {
        grid-template-columns: 1fr;
    }

    .pcat-trust__grid div {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid var(--ref-line);
    }

    .pcat-trust__grid div:last-child {
        border-bottom: 0;
    }

    .pcat-products {
        padding: 72px 0;
    }

    .pcat-product-card__body {
        padding: 24px;
    }

    .pcat-note {
        padding-bottom: 72px;
    }

    .pcat-note__panel {
        gap: 28px;
        padding: 30px;
    }
}

@media (max-width: 1199px) {
    .glow-hero__grid,
    .glow-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .glow-hero__grid {
        gap: 46px;
    }

    .glow-hero__copy {
        grid-column: 1 / -1;
    }

    .gd-hero__grid,
    .gd-routine {
        grid-template-columns: 1fr;
    }

    .gd-science-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gd-science-grid article:nth-child(2n) {
        border-right: 0;
    }

    .about-ref-intro__grid,
    .about-ref-science__grid,
    .about-ref-canada__panel {
        grid-template-columns: 1fr;
    }

    .about-ref-value-grid,
    .about-ref-purpose__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-ref-value-grid article:nth-child(2) {
        border-right: 0;
    }

    .contact-ref-hero__grid,
    .contact-ref-main__grid {
        grid-template-columns: 1fr;
    }

    .contact-ref-option-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .contact-ref-option-grid article:nth-child(2) {
        border-right: 0;
    }

    .faq-ref-hero__grid,
    .faq-ref-main__grid {
        grid-template-columns: 1fr;
    }

    .faq-ref-hero__media {
        max-width: 680px;
    }

    .faq-ref-intro__grid {
        grid-template-columns: 1fr;
    }

    .faq-ref-intro article,
    .faq-ref-intro article:last-child {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid var(--ref-line);
    }

    .faq-ref-intro article:last-child {
        border-bottom: 0;
    }

    .faq-ref-aside {
        position: static;
    }

    .insights-ref-card--large,
    .insights-ref-signup__panel {
        grid-template-columns: 1fr;
    }

    .insights-ref-topic-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .collections-ref-hero__grid,
    .collections-ref-support__panel {
        grid-template-columns: 1fr;
    }

    .collections-ref-grid {
        grid-template-columns: 1fr;
    }

    .collections-ref-card {
        grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr);
        grid-template-rows: auto;
    }

    .collections-ref-card__image img {
        height: 100%;
        min-height: 390px;
        aspect-ratio: auto;
    }

    .leadership-ref-hero__grid,
    .leadership-ref-clinical__grid,
    .leadership-ref-cta__panel {
        grid-template-columns: 1fr;
    }

    .leadership-ref-hero__media {
        max-width: 720px;
    }

    .leadership-ref-pillar-grid,
    .leadership-ref-grid {
        grid-template-columns: 1fr;
    }

    .leadership-ref-pillar-grid article,
    .leadership-ref-pillar-grid article:last-child {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid var(--ref-line);
    }

    .leadership-ref-pillar-grid article:last-child {
        border-bottom: 0;
    }

    .leadership-ref-card {
        grid-template-columns: minmax(0, 0.62fr) minmax(0, 1fr);
        grid-template-rows: auto;
    }

    .leadership-ref-card__image {
        height: 100%;
        min-height: 430px;
        aspect-ratio: auto;
    }

    .leadership-ref-card h3,
    .leadership-ref-card p {
        min-height: 0;
    }

    .assessment-ref-hero__grid,
    .assessment-ref-result-hero {
        grid-template-columns: 1fr;
    }

    .assessment-ref-hero__panel {
        max-width: 680px;
    }

    .assessment-ref-result-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .glow-hero {
        padding: 68px 0 70px;
    }

    .glow-hero__grid,
    .glow-trust__grid,
    .glow-product-grid,
    .glow-note__panel {
        grid-template-columns: 1fr;
    }

    .glow-hero__grid {
        gap: 48px;
    }

    .glow-hero h1 {
        font-size: 42px;
    }

    .glow-hero p {
        font-size: 16px;
    }

    .glow-hero__actions,
    .glow-hero__actions .ref-btn {
        width: 100%;
    }

    .glow-hero__media {
        padding: 12px;
    }

    .glow-hero__badge {
        left: 24px;
        min-width: 214px;
    }

    .glow-trust {
        padding: 26px 0 62px;
    }

    .glow-trust__grid div {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid rgba(141, 103, 83, 0.15);
    }

    .glow-trust__grid div:last-child {
        border-bottom: 0;
    }

    .glow-products {
        padding: 72px 0;
    }

    .glow-product-card__body {
        padding: 24px;
    }

    .glow-note {
        padding-bottom: 72px;
    }

    .glow-note__panel {
        gap: 28px;
        padding: 30px;
    }

    .gd-hero {
        padding: 68px 0 70px;
    }

    .gd-hero__grid,
    .gd-science-grid,
    .gd-related-grid,
    .gd-related-grid a {
        grid-template-columns: 1fr;
    }

    .gd-hero__grid {
        gap: 44px;
    }

    .gd-copy h1 {
        font-size: 48px;
    }

    .gd-subtitle {
        font-size: 18px;
    }

    .gd-actions,
    .gd-actions .ref-btn {
        width: 100%;
    }

    .gd-media {
        padding: 12px;
    }

    .gd-section {
        padding: 72px 0;
    }

    .gd-science-grid article {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid rgba(141, 103, 83, 0.14);
    }

    .gd-science-grid article:last-child {
        border-bottom: 0;
    }

    .gd-routine {
        gap: 26px;
        padding: 30px;
    }

    .gd-related-grid img {
        min-height: 260px;
    }

    .about-ref-hero {
        min-height: 720px;
    }

    .about-ref-hero__image {
        object-position: 56% center;
    }

    .about-ref-hero__shade {
        background: linear-gradient(180deg, rgba(47, 40, 35, 0.34) 0%, rgba(47, 40, 35, 0.82) 56%, rgba(47, 40, 35, 0.94) 100%);
    }

    .about-ref-hero__content {
        padding: 112px 0 72px;
    }

    .about-ref-hero h1 {
        font-size: 42px;
    }

    .about-ref-hero p,
    .about-ref-intro p {
        font-size: 16px;
    }

    .about-ref-actions,
    .about-ref-actions .ref-btn {
        width: 100%;
    }

    .about-ref-section {
        padding: 72px 0;
    }

    .about-ref-intro__grid,
    .about-ref-value-grid,
    .about-ref-science__grid,
    .about-ref-canada__panel,
    .about-ref-purpose__grid {
        grid-template-columns: 1fr;
    }

    .about-ref-value-grid article,
    .about-ref-value-grid article:nth-child(2) {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid var(--ref-line);
    }

    .about-ref-value-grid article:last-child {
        border-bottom: 0;
    }

    .about-ref-science__grid,
    .about-ref-intro__grid {
        gap: 40px;
    }

    .about-ref-canada__panel,
    .about-ref-closing__panel {
        gap: 28px;
        padding: 30px;
    }

    .about-ref-purpose article {
        min-height: auto;
        padding: 28px;
    }

    .contact-ref-hero {
        padding: 68px 0 70px;
    }

    .contact-ref-hero__grid,
    .contact-ref-option-grid,
    .contact-ref-main__grid,
    .contact-ref-form__grid {
        grid-template-columns: 1fr;
    }

    .contact-ref-hero__grid {
        gap: 44px;
    }

    .contact-ref-hero h1 {
        font-size: 42px;
    }

    .contact-ref-hero p {
        font-size: 16px;
    }

    .contact-ref-actions,
    .contact-ref-actions .ref-btn {
        width: 100%;
    }

    .contact-ref-hero__media {
        padding: 12px;
    }

    .contact-ref-section {
        padding: 72px 0;
    }

    .contact-ref-option-grid article,
    .contact-ref-option-grid article:nth-child(2) {
        min-height: auto;
        border-right: 0;
        border-bottom: 1px solid var(--ref-line);
    }

    .contact-ref-option-grid article:last-child {
        border-bottom: 0;
    }

    .contact-ref-card,
    .contact-ref-form-panel,
    .contact-ref-cta__panel {
        padding: 28px;
    }

    .contact-ref-form .ref-btn {
        width: 100%;
    }

    .faq-ref-hero {
        padding: 68px 0 70px;
    }

    .faq-ref-hero__grid {
        gap: 44px;
    }

    .faq-ref-hero h1 {
        font-size: 42px;
    }

    .faq-ref-hero p {
        font-size: 16px;
    }

    .faq-ref-actions,
    .faq-ref-actions .ref-btn {
        width: 100%;
    }

    .faq-ref-hero__media {
        padding: 12px;
    }

    .faq-ref-section {
        padding: 72px 0;
    }

    .faq-ref-intro article,
    .faq-ref-aside,
    .faq-ref-group {
        padding: 28px;
    }

    .faq-ref-list summary {
        min-height: 64px;
        font-size: 20px;
    }

    .faq-ref-list p {
        padding-right: 0;
    }

    .faq-ref-aside .ref-btn {
        width: 100%;
    }

    .insights-ref-hero {
        min-height: 720px;
        align-items: flex-end;
    }

    .insights-ref-hero__image {
        object-position: 58% center;
    }

    .insights-ref-hero__shade {
        background: linear-gradient(180deg, rgba(47, 40, 35, 0.22) 0%, rgba(47, 40, 35, 0.82) 58%, rgba(47, 40, 35, 0.94) 100%);
    }

    .insights-ref-hero__content {
        padding: 112px 0 72px;
    }

    .insights-ref-hero h1 {
        font-size: 42px;
    }

    .insights-ref-hero p {
        font-size: 16px;
    }

    .insights-ref-actions,
    .insights-ref-actions .ref-btn {
        width: 100%;
    }

    .insights-ref-section {
        padding: 72px 0;
    }

    .insights-ref-heading {
        margin-bottom: 38px;
    }

    .insights-ref-heading h2 {
        font-size: 36px;
    }

    .insights-ref-grid,
    .insights-ref-topic-grid {
        grid-template-columns: 1fr;
    }

    .insights-ref-card img,
    .insights-ref-card--large img {
        min-height: 260px;
    }

    .insights-ref-card div,
    .insights-ref-topic-grid article,
    .insights-ref-signup__panel {
        padding: 28px;
    }

    .insights-ref-card h3,
    .insights-ref-card--large h3 {
        font-size: 28px;
    }

    .insights-ref-signup__panel {
        gap: 26px;
    }

    .insights-ref-signup__panel .ref-btn {
        width: 100%;
    }

    .collections-ref-hero {
        padding: 68px 0 70px;
    }

    .collections-ref-hero__grid {
        gap: 44px;
    }

    .collections-ref-hero h1 {
        font-size: 42px;
    }

    .collections-ref-hero p {
        font-size: 16px;
    }

    .collections-ref-actions,
    .collections-ref-actions .ref-btn {
        width: 100%;
    }

    .collections-ref-hero__media {
        grid-template-columns: 1fr;
        padding: 12px;
    }

    .collections-ref-hero__media img {
        min-height: 260px;
    }

    .collections-ref-section {
        padding: 72px 0;
    }

    .collections-ref-heading {
        margin-bottom: 38px;
    }

    .collections-ref-heading h2 {
        font-size: 36px;
    }

    .collections-ref-card {
        grid-template-columns: 1fr;
    }

    .collections-ref-card__image img {
        min-height: 260px;
        aspect-ratio: 1.24 / 1;
    }

    .collections-ref-card__body,
    .collections-ref-support__panel {
        padding: 28px;
    }

    .collections-ref-card h3 {
        font-size: 28px;
    }

    .collections-ref-support__panel {
        gap: 26px;
    }

    .collections-ref-support__panel .ref-btn {
        width: 100%;
    }

    .leadership-ref-hero {
        padding: 68px 0 70px;
    }

    .leadership-ref-hero__grid {
        gap: 44px;
    }

    .leadership-ref-hero h1 {
        font-size: 42px;
    }

    .leadership-ref-hero p {
        font-size: 16px;
    }

    .leadership-ref-actions,
    .leadership-ref-actions .ref-btn {
        width: 100%;
    }

    .leadership-ref-hero__media {
        grid-template-columns: 1fr;
        padding: 12px;
    }

    .leadership-ref-hero__media img {
        min-height: 330px;
    }

    .leadership-ref-section {
        padding: 72px 0;
    }

    .leadership-ref-pillar-grid article,
    .leadership-ref-card__body,
    .leadership-ref-cta__panel {
        padding: 28px;
    }

    .leadership-ref-heading {
        margin-bottom: 38px;
    }

    .leadership-ref-heading h2,
    .leadership-ref-clinical__copy h2 {
        font-size: 36px;
    }

    .leadership-ref-card {
        grid-template-columns: 1fr;
    }

    .leadership-ref-card__image {
        height: auto;
        min-height: 0;
        aspect-ratio: 4 / 5;
    }

    .leadership-ref-card h3 {
        font-size: 26px;
    }

    .leadership-ref-card .ref-btn,
    .leadership-ref-cta__panel .ref-btn {
        width: 100%;
    }

    .leadership-ref-clinical__grid,
    .leadership-ref-cta__panel {
        gap: 28px;
    }

    .leadership-ref-modal .modal-header {
        padding: 22px 24px 0;
    }

    .leadership-ref-modal .modal-body {
        padding: 18px 24px 26px;
    }

    .leadership-ref-modal .modal-title {
        font-size: 26px;
    }

    .assessment-ref-hero {
        padding: 68px 0 70px;
    }

    .assessment-ref-hero__grid {
        gap: 34px;
    }

    .assessment-ref-hero__copy h1 {
        font-size: 42px;
    }

    .assessment-ref-hero__copy p {
        font-size: 16px;
    }

    .assessment-ref-hero__copy .ref-btn,
    .assessment-ref-controls .ref-btn,
    .assessment-ref-actions .ref-btn,
    .assessment-ref-form .ref-btn {
        width: 100%;
    }

    .assessment-ref-hero__panel {
        padding: 12px;
    }

    .assessment-ref-hero__panel div {
        grid-template-columns: 72px 1fr;
        min-height: 88px;
        padding: 20px;
    }

    .assessment-ref-hero__panel span {
        font-size: 34px;
    }

    .assessment-ref-section {
        padding: 72px 0;
    }

    .assessment-ref-card,
    .assessment-ref-result-hero,
    .assessment-ref-breakdown,
    .assessment-ref-next {
        padding: 28px;
    }

    .assessment-ref-card h2,
    .assessment-ref-card--intro h2,
    .assessment-ref-result-hero h2 {
        font-size: 34px;
    }

    .assessment-ref-options,
    .assessment-ref-result-grid {
        grid-template-columns: 1fr;
    }

    .assessment-ref-product h3,
    .assessment-ref-result-grid h3,
    .assessment-ref-breakdown h3,
    .assessment-ref-next h3 {
        font-size: 25px;
    }
}
