:root {
    --tuatara: #383735;
    --morning-glory: #9dd3dd;
    --aquamarine-blue: #5cdfdf;
    --golden-tainoi: #ffcd58;
    --tickle-me-pink: #fe86b3;
    --your-pink: #febcc0;
    --orange-peel: #ff9900;

    --color-primary: var(--aquamarine-blue);
    --color-white: #ffffff;
    --color-body: #3d3d3d;
}

/* borel-regular */
@font-face {
    font-family: Borel;
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url(/themes/boutique-lilas-rose/assets/fonts/borel-regular.woff2) format("woff2"), url(/themes/boutique-lilas-rose/assets/fonts/borel-regular.woff) format("woff");
}

/* montserrat-regular */
@font-face {
    font-family: Montserrat;
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url(/themes/boutique-lilas-rose/assets/fonts/montserrat-regular.woff2) format("woff2"), url(/themes/boutique-lilas-rose/assets/fonts/montserrat-regular.woff) format("woff");
}

/* montserrat-bold */
@font-face {
    font-family: Montserrat;
    font-optical-sizing: auto;
    font-style: bold;
    font-weight: 500;
    font-display: block;
    src: url(/themes/boutique-lilas-rose/assets/fonts/montserrat-bold.woff2) format("woff2"), url(/themes/boutique-lilas-rose/assets/fonts/montserrat-bold.woff) format("woff");
}

#custom-text h1{
    font-family: 'Borel';
}

.h1 {
    /*font-family: 'Alegreya';*/
    color: var(--tuatara);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .1em;
}

.h4 {
    /*font-family: 'Alegreya';*/
}

.h5 {
    /*font-family: 'Alegreya';*/
    color: var(--color-body);
    font-style: italic;
    font-size: 1em;
    font-weight: 400;
}

.h6 {
    /*font-family: 'Alegreya';*/
    font-style: italic;
    color: var(--color-primary);
}

.btn {
    &.btn-secondary {
        background-color: var(--color-primary);
        border-color: var(--color-primary);

        &:focus {
            box-shadow: 0 0 0 .2rem rgba(151, 81, 121, .5);
        }

        :not(:disabled):not(.disabled) {
            &:hover,
            &:active {
                background-color: #5c3852;
                border-color: #5c3852;
            }

            &:active {
                &:focus {
                    box-shadow: 0 0 0 .2rem rgba(151, 81, 121, .5);
                }
            }
        }
    }
}

#home-page-tabs{
    font-family: Borel, Montserrat, Roboto, -apple-system, blinkmacsystemfont, Segoe UI, Montserrat, Roboto, Helvetica Neue, arial, Noto Sans, Liberation Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
}

/* main {
    background: rgba(157,221,221,0.3);
} */

/** HEADER **/
.header-nav {
    background: var(--tickle-me-pink);
    color: var(--color-white);
    height: 32px;

    .everhook-hookDisplayNav1 {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        font-size: .875rem;

        p {
            margin: 0;
        }
    }
}

.header-top {
    border: 0;

    .header-top__icon {
        color: var(--tuatara);
    }

    .header-top__badge {
        background: var(--color-body);
    }

    @media (min-width: 768px) {
        #_desktop_search_from {
            form.search-form {
                .search-form__form-group {
                    display: flex;
                    justify-content: end;
                }

                .search-form__btn {
                    padding: 0 10px;
                    background: var(--color-white);

                }

                .search-form__input {
                    width: 46px;
                    padding: 0;
                    transition: .3s, text-indent 0s;
                    transition-delay: 0s, text-indent .3s;

                    &::placeholder {
                        opacity: 0;
                    }
                }

               .search-form__close {
                    display: none;
                    position: absolute;
                    right: 0;
                    top: 0;
                    width: 46px;
                    height: 100%;
                    background: none;
                    border: none;
                    color: var(--tuatara);
                    transform: translateX(-100%);
                    cursor: pointer;

                    i {
                        height: 100%;
                        width: 100%;
                        display: flex;
                        align-items: center;
                        justify-content: center;
                    }

                    &:hover {
                        color: #5c3852;
                    }
                }

               &.search-form--active {
                    .search-form__input {
                        width: 100%;
                        padding: 0 92px 0 10px;
                        text-indent: 0;

                        &::placeholder {
                            opacity: 1;
                        }
                    }

                    .search-form__btn {
                        border: 1px solid #ced4da;
                    }

                    .search-form__close {
                        display: block;
                    }
                }
            }
        }
    }
}

#_mobile_search_from {
    .search-form__close {
        display: none;
    }
}

.main-menu {
    .main-menu__item-link--top {
        color: var(--tuatara);
        text-transform: uppercase;
        font-weight: 400;
        font-size: 1rem;

        &:hover {
            color: #9ddddd;
        }
    }

    .main-menu__sub {
        .main-menu__item-link--1 {
            font-size: 1.2rem;
            font-weight: 500;
            font-family: 'Borel';
            text-align: center
        }
    }
}

/** Largeur max du logo**/
.header-top__block--logo{
    max-width: 240px;;
}


/** Style pour les éléments de menu "Collection cérémonie" **/
/** ID des Catégories : 9, 25, 60, 79 **/
.main-menu__list #category-9 a::before, .main-menu__list #category-9 a::after,
.main-menu__list #category-25 a::before, .main-menu__list #category-25 a::after,
.main-menu__list #category-60 a::before, .main-menu__list #category-60 a::after,
.main-menu__list #category-79 a::before, .main-menu__list #category-79 a::after{
      font-family: 'Material Icons';
      content: 'star';
      display: inline-block;
      vertical-align: middle;
}

.main-menu__list #category-9 a,
.main-menu__list #category-25 a,
.main-menu__list #category-60 a,
.main-menu__list #category-79 a{
    font-size: 15px;
}

/** Style pour les éléments de menu "Nouveautés" **/
/** ID des catégories : 10, 26, 61, 80 **/
.main-menu__list #category-10 a,
.main-menu__list #category-26 a,
.main-menu__list #category-61 a,
.main-menu__list #category-80 a{
    font-weight: 500;
}


/** Style pour les éléments de menu "Prix ronds" **/
/** ID des catégories : 11, 27, 62, 81 **/
.main-menu__list #category-11 a,
.main-menu__list #category-27 a,
.main-menu__list #category-62 a,
.main-menu__list #category-81 a{
    color:#fe86b3;
    font-weight: 500;
}


.breadcrumb {
    background: none;
}

/** FOOTER **/
#footer {
    .footer-container {
        background: var(--color-white);
    }

    .footer-reassurance {
        .reassurance {
            display: flex;
            flex-direction: column;
            margin-bottom: 2em;
            border-bottom: solid 1px #ced4da;

            .reassurance-item {
                display: flex;
                flex-direction: column;
                align-items: center;
                text-transform: uppercase;
                margin-bottom: 1em;

                .reassurance-icon {
                    font-size: 2em;
                    margin-bottom: 1rem;
                }

                .reassurance-title {
                    font-weight: 500;
                    letter-spacing: 1px;
                    font-size: .8rem;
                }

                .reassurance-subtext {
                    font-weight: 300;
                    opacity: .5;
                    font-size: .8rem;
                }
            }
        }
    }

    @media (min-width: 768px) {
        .footer-reassurance {
            .reassurance {
                flex-direction: row;

                .reassurance-item {
                    flex-basis: 33.33%;
                }
            }
        }
    }
}


/** LISTING - CATEGORIE **/
.product-miniature {
    /* padding: 25px !important; */
    border-radius: 0;

    .product-miniature__thumb {
        img {
            width: 100%;
        }

        &:has(.hover-image) {
            img {
                transition: opacity 0.3s ease-in-out;
            }

            .hover-image {
                opacity: 0;
                position: absolute;
                top: 0;
                left: 0;
            }

            &:hover {
                .default-image {
                    opacity: 0;
                }

                .hover-image {
                    opacity: 1;
                }
            }
        }
    }

    .product-miniature__body {
        position: relative;
        padding: 15px 25px 25px;

        button.add-to-cart,
        a.view-product {
            position: absolute;
            top: 0;
            right: 0;
            padding: 0;
            height: 46px;
            width: 46px;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: .3s;
        }

        button.add-to-cart {
            background: var(--color-body);
            color: var(--color-white);

            &:hover {
                background: var(--morning-glory);
            }
        }

        a.view-product {
            border: solid 1px var(--color-body);
            color: var(--color-body);

            &:hover {
                border-color: var(--color-primary);
                color: var(--color-primary);
            }
        }
    }

    .product-miniature__title {
        height: auto;
        margin-bottom: 0;
        font-size: 1rem;
        font-style: initial;
        font-weight: 400;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1;
        overflow: hidden;
    }

    .product-miniature__pricing {
        font-size: 1rem;
        font-weight: 600;

        .price {
            font-style: initial;
            font-size: 1rem;
        }
    }

    .variant-links {
        margin: 0 -.3125rem;

        .color {
            display: inline-block;
            width: 1rem;
            height: 1rem;
            border-radius: 50%;
            margin: .3125rem .25rem .3125rem .3125rem;
            cursor: pointer;
            background-size: contain;
            border: 1px solid #adb5bd;

            &.out-of-stock {
                position: relative;

                &::before {
                    content: '';
                    display: block;
                    width: 100%;
                    height: 2px;
                    background: red;
                    position: absolute;
                    top: 6px;
                    right: 0;
                    transform: rotate(-45deg);
                    z-index: 2;
                    outline: 1px solid var(--color-white);
                }
            }
        }

        .count {
            position: relative;
            bottom: .4rem;
            font-weight: 700;
            color: #7a7a7a;
        }

        &:has(.color:nth-child(6)) {
            .color:nth-child(n+6) {
                display: none;
            }
        }
    }
}

body#category {
    .breadcrumb {
        justify-content: center;
    }

    #subcategories {
        .subcategories-list {
            justify-content: center;
        }

        .card {
            border: 0;
            background: none;
            margin: 0 .5rem 1.5rem;

            .card-body {
                padding: 0;

                > a {
                    width: 120px;
                    height: 120px;
                    margin: 0 auto;
                    border-radius: 100%;
                    overflow: hidden;
                    border: solid 2px transparent;
                    transition: .3s;
                    outline: 2px solid transparent;

                    img {
                        display: block;
                        height: 100%;
                        width: 100%;
                        object-fit: cover;
                        transition: inherit;
                    }

                    & + p {
                        margin-top: .5rem;
                        font-style: normal;
                        font-weight: 500;
                        font-size: .875rem;
                        max-width: 120px;

                        a {
                            color: var(--color-body);
                        }
                    }

                    &:hover {
                        outline-color: var(--color-primary);

                        img {
                            transform: scale(1.1);
                        }
                    }
                }
            }
        }
    }
}

#products {
    .page-not-found {
        background: none;
    }
}

/** PRODUCT **/

.product-miniature {
    border: none;
}

.js-product-images {
    .product-thumbs {
        display: none;
    }

    @media (min-width: 576px) {
        display: flex;

        .product-main-images {
            max-width: 75%;
        }

        .product-thumbs {
            display: block;
            order: -1;
            max-width: 25%;
            max-height: 390px;
            margin: -5px 0 !important;

            .product-thumbs__elem {
                max-width: none;
                padding: 5px 0;

                img {
                    max-height: 100%;
                    width: auto;
                }
            }
        }
    }

    @media (min-width: 1200px) {
        .product-thumbs {
            max-height: 450px;
        }
    }
}

.product-flags {
    .product-flags__flag--on-sale {
        background-color: #fe86b3;
    }
}

.price {
    color: var(--tuatara);
}

.price--regular + .price {
    color: var(--orange-peel);
}

.product-prices {
    display: flex;
    align-items: flex-start;

    .tax-shipping-delivery-label {
        margin-left: 10px;
    }
}

.product-variants {
    ul {
        li {
            &:first-child {
                .custom-radio-color {
                    padding-left: 0;
                }
            }

            &.disabled {
                .color-preview {
                    position: relative;

                    &::before {
                        content: '';
                        display: block;
                        width: 100%;
                        height: 2px;
                        background: red;
                        position: absolute;
                        top: 11px;
                        right: 0;
                        transform: rotate(-45deg);
                        z-index: 2;
                        outline: 1px solid var(--color-white);
                    }
                }
            }
        }
    }
    .product-variants-item {
        .custom-radio-color {
            width: auto;
            height: auto;

            .custom-control-label {
                display: flex;
                flex-direction: column;
                align-items: center;

                .color-preview {
                    width: 24px;
                    height: 24px;
                    margin-bottom: 2px;
                }

                .color-name {
                    text-transform: uppercase;
                    font-size: .6rem;
                    font-weight: 500;
                }
            }

            .custom-control-input-color {
                position: static;
                margin-bottom: 2px;
            }

            .custom-control-input {
                &:checked {
                    ~ .custom-control-label {
                        &::after {
                            right: 50%;
                            transform: translateX(50%);
                        }
                    }
                }
            }
        }
    }
}

.product-description{
    margin-top: 36px;
}

.bootstrap-touchspin {
    border-radius: 0;
}

.product-add-to-cart .btn.add-to-cart {
    background-color: var(--color-body);
    color: var(--color-white);
}

body.page-product,
body#module-giftcard-choicegiftcard {
    .h1 {
        text-transform: none;
        letter-spacing: 0;
    }

    .js-mailalert-modal-btn {
        margin-bottom: 1rem;
    }

    #formgiftcard {
        section {
            h2 {
                font-size: 1.125rem;
                font-weight: 500;
            }

            &#gc-step-template {
                li.template_item {
                    border: solid 2px transparent;

                    &.selected {
                        border-color: var(--color-primary);

                        &::before {
                            display: none;
                        }
                    }
                }
            }

            &#gc-step-receptmode {
                .gc-receptmode-option {
                    input {
                        &:checked {
                            + label {
                                color: var(--color-white);
                                background: var(--morning-glory) !important;
                            }
                        }

                        + label {
                            font-weight: 500;
                            color: var(--color-primary);
                            border-color: var(--morning-glory) !important;

                            svg {
                                fill: var(--morning-glory);
                            }
                        }
                    }
                }

                h3 {
                    font-size: .875rem;
                    font-weight: 500;
                }
            }

            &#gc-step-information {
                .form-group {
                    label {
                        font-size: .875rem;
                        font-weight: 500;
                        color: var(--color-primary);
                    }
                }
            }
        }

        .ta-gc-submit {
            .btn-dark {
                background-color: var(--color-body);
            }
        }
    }
}

/** CART **/
.cart-container.card {
    border: 0;

    .card-header {
        background: none;
        border: 0;
    }
}

.cart-summary.card {
    border: 0;

    .card-header {
        background: none;
        border: 0;
    }
}

/** CHECKOUT **/
body#checkout {
    .header-nav {
        background: transparent;
        height: auto;

        .everhook-hookDisplayNav1 {
            display: none;
        }
    }
}

/** FORM **/
.custom-select {
    border-radius: 0;
}

.form-control {
    border-radius: 0;
}

/** HOME **/
.featured-products {
    .products {
        display: flex;
        flex-wrap: wrap;
    }
}

body#index {
    h2 {
        /*font-family: 'Alegreya';*/
        color: #3b3b3b;
        font-weight: 400;
        font-style: italic;
        text-transform: uppercase;
        letter-spacing: .1em;
    }

    #custom-text {
        margin: 2rem 0;
    }
}

/** MODULES **/
/*** homepagetabs ***/
.tabs:has(#home-page-tabs) {
    padding: 0px;

    #home-page-tabs {
        margin: 0px 10px 1rem;
        padding: 10px 0px 0px 0px;
        align-items: end;

        li.nav-item {
            flex-basis: 100%;

            a.nav-link {
                color: var(--color-body);
                border-width: 0 0 2px 0;
                border-color: #ced4da;
                text-transform: uppercase;
                font-weight: 500;
                letter-spacing: 2px;
                transition: .3s;

                &:hover {
                    border-color: var(--color-body);
                }

                &.active {
                    color: var(--color-primary);
                    background: none;
                    border-color: var(--color-primary);
                }
            }
        }
    }

    .tab-pane {
        margin-bottom: 1rem;

        .all-product-link {
            display: inline-flex;
            align-items: center;

            i {
                transform: translateX(5px);
            }
        }
    }

    @media (min-width: 768px) {
        #home-page-tabs {
            li.nav-item {
                flex: 1;
                border-color: transparent;
            }
        }
    }
}

.subcategories img {
  display: none !important;
}



#search_filters {
  width: 100%;
  margin-bottom: 20px;
  padding: 10px 15px;
  background: #f9f9f9;
  border: 1px solid #eee;
  border-radius: 8px;
  font-size: 14px;
}

.search-filters__block {
  /*margin: 0 10px 0 0;*/
  margin: 0;
  padding: 2px;
  display: inline-block;
  vertical-align: top;
  min-width: 140px;
}

.search-filters__header {
  font-size: 13px;
  margin-bottom: 5px;
}

.search-filters__collapse {
  /*display: block !important;*/
  padding: 0;
}

.custom-control {
  margin-bottom: 5px;
}

.custom-control-label {
  font-size: 13px;
  line-height: 1.3;
}

@media (max-width: 768px) {
    .eclink-cat-108{
        color: #000000;
        font-family: 'Montserrat' !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        padding: 1rem;
        display: block;
        text-align: left !important;
    }
}

.gift-banner {
  width: 100%;
  background-color: #ffffff;
  padding: 20px;
  box-sizing: border-box;
}

.banner-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  max-width: 1200px;
  margin: 0 auto;
  flex-wrap: wrap;
}

.banner-image img {
  max-width: 100%;
  width: 300px;
  height: auto;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

.banner-text {
  max-width: 500px;
  text-align: center;
}

.banner-text .message {
  font-size: 1rem;
  color: #000;
  margin-bottom: 20px;
  font-weight: 300;
}

.cta-button {
 display: inline-block;
background-color: #ff85b3;
color: white;
font-size: 1rem;
font-weight: bold;
padding: 8px 10px;
border-radius: 8px;
text-decoration: none;
transition: background-color 0.3s ease;
}

.cta-button:hover {
  background-color: #ff6fa2;
}

/* Responsive */
@media (max-width: 768px) {
  .banner-inner {
    flex-direction: column;
    text-align: center;
  }

  .banner-image img {
    width: 80%;
  }

  .banner-text .message {
    font-size: 1.2rem;
  }

  .cta-button {
    font-size: 1.1rem;
    padding: 10px 20px;
  }
}
