/* General */
:root {
    --border-radius: 4px;
    --border-radius2x: 8px;
    --default: #7A4C1A;
}

/* Skin Colors */
:root {
    --primary: #F5A686;
    --primary-100: #f3956e;
    --primary-200: #f28c63;
    --primary-300: #f18357;
    --primary--100: #f7b79e;
    --primary--200: #f8c0a9;
    --primary--300: #f9c9b5;
    --primary-rgba-0: rgba(245, 166, 134, 0);
    --primary-rgba-10: rgba(245, 166, 134, 0.1);
    --primary-rgba-20: rgba(245, 166, 134, 0.2);
    --primary-rgba-30: rgba(245, 166, 134, 0.3);
    --primary-rgba-40: rgba(245, 166, 134, 0.4);
    --primary-rgba-50: rgba(245, 166, 134, 0.5);
    --primary-rgba-60: rgba(245, 166, 134, 0.6);
    --primary-rgba-70: rgba(245, 166, 134, 0.7);
    --primary-rgba-80: rgba(245, 166, 134, 0.8);
    --primary-rgba-90: rgba(245, 166, 134, 0.9);
    --secondary: #E1AD37;
    --secondary-100: #dda421;
    --secondary-200: #d29c20;
    --secondary-300: #c7931e;
    --secondary--100: #e4b64d;
    --secondary--200: #e6bb58;
    --secondary--300: #e8bf63;
    --secondary-rgba-0: rgba(225, 173, 55, 0);
    --secondary-rgba-10: rgba(225, 173, 55, 0.1);
    --secondary-rgba-20: rgba(225, 173, 55, 0.2);
    --secondary-rgba-30: rgba(225, 173, 55, 0.3);
    --secondary-rgba-40: rgba(225, 173, 55, 0.4);
    --secondary-rgba-50: rgba(225, 173, 55, 0.5);
    --secondary-rgba-60: rgba(225, 173, 55, 0.6);
    --secondary-rgba-70: rgba(225, 173, 55, 0.7);
    --secondary-rgba-80: rgba(225, 173, 55, 0.8);
    --secondary-rgba-90: rgba(225, 173, 55, 0.9);
    --tertiary: #ABA875;
    --tertiary-100: #a19e65;
    --tertiary-200: #9b985f;
    --tertiary-300: #93905a;
    --tertiary--100: #b5b285;
    --tertiary--200: #b9b78d;
    --tertiary--300: #bebc95;
    --tertiary-rgba-0: rgba(171, 168, 117, 0);
    --tertiary-rgba-10: rgba(171, 168, 117, 0.1);
    --tertiary-rgba-20: rgba(171, 168, 117, 0.2);
    --tertiary-rgba-30: rgba(171, 168, 117, 0.3);
    --tertiary-rgba-40: rgba(171, 168, 117, 0.4);
    --tertiary-rgba-50: rgba(171, 168, 117, 0.5);
    --tertiary-rgba-60: rgba(171, 168, 117, 0.6);
    --tertiary-rgba-70: rgba(171, 168, 117, 0.7);
    --tertiary-rgba-80: rgba(171, 168, 117, 0.8);
    --tertiary-rgba-90: rgba(171, 168, 117, 0.9);
    --quaternary: #7A4C1A;
    --quaternary-100: #653f16;
    --quaternary-200: #5a3813;
    --quaternary-300: #503211;
    --quaternary--100: #8f591e;
    --quaternary--200: #9a6021;
    --quaternary--300: #a46623;
    --quaternary-rgba-0: rgba(122, 76, 26, 0);
    --quaternary-rgba-10: rgba(122, 76, 26, 0.1);
    --quaternary-rgba-20: rgba(122, 76, 26, 0.2);
    --quaternary-rgba-30: rgba(122, 76, 26, 0.3);
    --quaternary-rgba-40: rgba(122, 76, 26, 0.4);
    --quaternary-rgba-50: rgba(122, 76, 26, 0.5);
    --quaternary-rgba-60: rgba(122, 76, 26, 0.6);
    --quaternary-rgba-70: rgba(122, 76, 26, 0.7);
    --quaternary-rgba-80: rgba(122, 76, 26, 0.8);
    --quaternary-rgba-90: rgba(122, 76, 26, 0.9);
    --dark: #7A4C1A;
    --dark-100: #653f16;
    --dark-200: #5a3813;
    --dark-300: #503211;
    --dark--100: #8f591e;
    --dark--200: #9a6021;
    --dark--300: #a46623;
    --dark-rgba-0: rgba(122, 76, 26, 0);
    --dark-rgba-10: rgba(122, 76, 26, 0.1);
    --dark-rgba-20: rgba(122, 76, 26, 0.2);
    --dark-rgba-30: rgba(122, 76, 26, 0.3);
    --dark-rgba-40: rgba(122, 76, 26, 0.4);
    --dark-rgba-50: rgba(122, 76, 26, 0.5);
    --dark-rgba-60: rgba(122, 76, 26, 0.6);
    --dark-rgba-70: rgba(122, 76, 26, 0.7);
    --dark-rgba-80: rgba(122, 76, 26, 0.8);
    --dark-rgba-90: rgba(122, 76, 26, 0.9);
    /*    --dark: #212529;
    --dark-100: #16181b;
    --dark-200: #101214;
    --dark-300: #0a0c0d;
    --dark--100: #2c3237;
    --dark--200: #32383e;
    --dark--300: #383f45;
    --dark-rgba-0: rgba(33, 37, 41, 0);
    --dark-rgba-10: rgba(33, 37, 41, 0.1);
    --dark-rgba-20: rgba(33, 37, 41, 0.2);
    --dark-rgba-30: rgba(33, 37, 41, 0.3);
    --dark-rgba-40: rgba(33, 37, 41, 0.4);
    --dark-rgba-50: rgba(33, 37, 41, 0.5);
    --dark-rgba-60: rgba(33, 37, 41, 0.6);
    --dark-rgba-70: rgba(33, 37, 41, 0.7);
    --dark-rgba-80: rgba(33, 37, 41, 0.8);
    --dark-rgba-90: rgba(33, 37, 41, 0.9);*/
    --light: #FFF;
    --light-100: #f2f2f2;
    --light-200: #ececec;
    --light-300: #e6e6e6;
    --light--100: #ffffff;
    --light--200: #ffffff;
    --light--300: #ffffff;
    --light-rgba-0: rgba(255, 255, 255, 0);
    --light-rgba-10: rgba(255, 255, 255, 0.1);
    --light-rgba-20: rgba(255, 255, 255, 0.2);
    --light-rgba-30: rgba(255, 255, 255, 0.3);
    --light-rgba-40: rgba(255, 255, 255, 0.4);
    --light-rgba-50: rgba(255, 255, 255, 0.5);
    --light-rgba-60: rgba(255, 255, 255, 0.6);
    --light-rgba-70: rgba(255, 255, 255, 0.7);
    --light-rgba-80: rgba(255, 255, 255, 0.8);
    --light-rgba-90: rgba(255, 255, 255, 0.9);
}

/* Skin Colors - Inverse */
:root {
    --primary-inverse: #777;
    --secondary-inverse: #777;
    --tertiary-inverse: #FFF;
    --quaternary-inverse: #FFF;
    --dark-inverse: #FFF;
    --light-inverse: #777;
}

/* Grey Colors */
:root {
    --grey: #969696;
    --grey-100: #f4f4f4;
    --grey-200: #eaeaea;
    --grey-300: #e5e5e5;
    --grey-400: #e0e0e0;
    --grey-500: #dbdbdb;
    --grey-600: #cecece;
    --grey-700: #c1c1c1;
    --grey-800: #a8a8a8;
    --grey-900: #8e8e8e;
    --grey-1000: #757575;
}

/* Font Breno Book */
@font-face {
    font-family: "breno-book";
    src:
        local("breno-book"),
        url("/css/fonts/breno-book.woff") format("opentype") tech(color-COLRv1),
}

/* Font Cronde */
@font-face {
    font-family: "cronde";
    src:
        local("cronde"),
        url("/css/fonts/cronde.woff") format("opentype") tech(color-COLRv1),
}

/* Font Parisienne */
@font-face {
    font-family: "parisienne";
    src:
        local("parisienne"),
        url("/css/fonts/parisienne.woff") format("opentype") tech(color-COLRv1),
}

/* demo */
body {
    font-family: "breno-book";
}

.body {
    max-width: 100vw;
    overflow-x: hidden
}

[class*=text-color-hover-] {
    transition: .3s
}

.custom-font-secondary {
    font-family: "parisienne"
}

.custom-bg-color-1 {
    background-color: var(--primary) !important
}

.custom-font-size-1 {
    font-size: 1.4em !important
}

.custom-font-size-2 {
    font-size: 1.15em !important
}

.custom-divider-1 {
    padding: 0 10px;
    margin: 0 10px;
    border-right: 1px solid #777;
    border-left: 1px solid #777
}

.custom-carousel-backward-shape,
.custom-svg-wrapper-1,
.custom-svg-wrapper-2,
.custom-svg-wrapper-3,
.custom-svg-wrapper-4 {
    position: relative
}

.custom-svg-wrapper-1>svg {
    position: absolute;
    top: 60%;
    left: 43%;
    width: 150%;
    height: 150%;
    transform: translate3d(-50%, -50%, 0);
    z-index: 0
}

.custom-svg-wrapper-1>img,
.custom-svg-wrapper-2>.owl-carousel,
.custom-svg-wrapper-3>.pricing-table,
.custom-svg-wrapper-4>.container {
    position: relative;
    z-index: 1
}

.custom-svg-wrapper-2>svg,
.custom-svg-wrapper-3>svg,
.custom-svg-wrapper-4>svg {
    width: 144%;
    transform: translate3d(-50%, -50%, 0);
    z-index: 0;
    left: 50%;
    position: absolute
}

.custom-svg-wrapper-2>svg,
.custom-svg-wrapper-3>svg {
    top: 60%;
    height: 80%
}

.custom-svg-wrapper-4>svg {
    top: 46%;
    height: 112%
}

.custom-thumb-info-hover-1 {
    transition: box-shadow .3s
}

.custom-thumb-info-hover-1:hover {
    box-shadow: 0 0 70px -10px #000
}

.custom-dots-style-1 .owl-dots {
    display: flex;
    justify-content: center
}

.custom-dots-style-1 .owl-dots .owl-dot>span {
    width: 16px;
    height: 16px;
    border-radius: 100%;
    border: 2px solid #7A4C1A;
    background: 0 0 !important
}

.custom-dots-style-1 .owl-dots .owl-dot.active>span,
.custom-dots-style-1 .owl-dots .owl-dot:focus>span,
.custom-dots-style-1 .owl-dots .owl-dot:hover>span {
    display: flex;
    align-items: center;
    justify-content: center;
    border-color: #36393d
}

.custom-dots-style-1 .owl-dots .owl-dot.active>span:before,
.custom-dots-style-1 .owl-dots .owl-dot:focus>span:before,
.custom-dots-style-1 .owl-dots .owl-dot:hover>span:before {
    content: '';
    width: 6px;
    height: 6px;
    background: #36393d;
    border-radius: 100%
}

.custom-dots-style-1.custom-dots-style-1-light .owl-dots .owl-dot>span {
    border: 2px solid #fff
}

.custom-dots-style-1.custom-dots-style-1-light .owl-dots .owl-dot.active>span,
.custom-dots-style-1.custom-dots-style-1-light .owl-dots .owl-dot:focus>span,
.custom-dots-style-1.custom-dots-style-1-light .owl-dots .owl-dot:hover>span {
    border-color: var(--light)
}

.custom-dots-style-1.custom-dots-style-1-light .owl-dots .owl-dot.active>span:before,
.custom-dots-style-1.custom-dots-style-1-light .owl-dots .owl-dot:focus>span:before,
.custom-dots-style-1.custom-dots-style-1-light .owl-dots .owl-dot:hover>span:before {
    background: var(--light)
}

.custom-carousel-backward-shape:before {
    content: '';
    position: absolute;
    width: 100%;
    max-width: 1200px;
    top: 0;
    left: 50%;
    right: auto;
    bottom: 60px;
    background-color: var(--grey-500);
    opacity: .15;
    transform: translate3d(-50%, 0, 0)
}

.custom-carousel-backward-shape .owl-dots {
    margin-top: 30px !important
}

@media (min-width:2000px) {
    .shape-divider svg {
        width: 100%
    }
}

@media (min-width:1200px) {
    .container {
        max-width: 1200px !important
    }

    #header .header-nav-main nav>ul>li {
        margin-left: 15px
    }
}

@media (min-width:992px) {
    #header .header-nav-main nav>ul>li>a {
        font-size: 14px;
        padding: 0 1rem !important;
        font-weight: 600
    }
}

.custom-section-svg {
    position: relative;
    background: #f8eae1
}

.custom-section-svg .custom-section-svg-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.custom-section-svg>svg {
    position: relative;
    width: 100%;
    top: 0;
    left: 0;
    height: 100%
}

.custom-section-svg>.container {
    position: absolute;
    top: 43%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0)
}

@media (max-width:1400px) {
    .custom-section-svg>svg {
        left: 70px
    }
}

@media (max-width:991px) {
    .custom-section-svg>svg {
        width: 180%
    }
}

.custom-pricing-table-style-1 .plan {
    box-shadow: 0 0 40px rgba(200, 200, 200, .3)
}

.custom-pricing-table-style-1 .plan .plan-header {
    background-color: #f1f3f7;
    padding: 1.7rem 1rem
}

.custom-pricing-table-style-1 .plan .plan-header h3 {
    color: #999;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: 4px
}

.custom-pricing-table-style-1 .plan .plan-price {
    background: 0 0;
    padding-bottom: .2rem
}

.custom-pricing-table-style-1 .plan .plan-price .price {
    font-size: 3rem;
    font-weight: 800;
    align-items: flex-end
}

.custom-pricing-table-style-1 .plan .plan-price .price .price-unit {
    font-weight: 400
}

.custom-pricing-table-style-1 .plan .plan-price .price-label {
    text-transform: none;
    font-size: 1.3rem;
    font-family: 'Playfair Display', sans-serif;
    margin-top: 1rem
}

.custom-pricing-table-style-1 .plan .plan-features ul li {
    font-size: 1em !important;
    border-bottom: 0
}

.custom-pricing-table-style-1 .plan .plan-footer {
    padding: .7rem .8rem 2.5rem
}

.custom-pricing-table-style-1 .plan .plan-features,
.custom-pricing-table-style-1 .plan .plan-footer,
.custom-pricing-table-style-1 .plan .plan-price {
    border: 0
}

.custom-pricing-table-style-1 .plan.plan-featured {
    transform: scale(1) translate3d(0, -11px, 0)
}

.custom-pricing-table-style-1 .plan.plan-featured .plan-header {
    padding: 2.3rem 1rem
}

.custom-pricing-table-style-1 .plan.plan-featured .plan-header h3 {
    color: var(--light);
    font-size: 1rem;
    font-weight: 400
}

.custom-pricing-table-style-1 .plan.plan-featured .plan-price {
    padding-top: 1.6rem
}

#footer {
    font-size: inherit
}

.custom-form-style-1 {
    opacity: 1 !important
}

.custom-form-style-1 .form-control {
    height: calc(1.5em + 1.85rem + 2px);
    padding: .975rem 1.25rem
}

.custom-form-style-1 textarea.form-control {
    height: auto
}

.custom-carousel-backward-shape .owl-stage-outer:before {
    background-color: var(--primary--300)
}

.custom-svg-linear-gradient stop:first-child {
    stop-color: var(--secondary) !important
}

.custom-svg-linear-gradient stop:nth-child(2) {
    stop-color: var(--primary) !important
}

circle.custom-svg-fill-color-primary,
path.custom-svg-fill-color-primary {
    fill: var(--primary) !important
}

circle.custom-svg-fill-color-secondary,
path.custom-svg-fill-color-secondary {
    fill: var(--secondary) !important
}

circle.custom-svg-fill-color-tertiary,
path.custom-svg-fill-color-tertiary {
    fill: var(--tertiary) !important
}

circle.custom-svg-fill-color-quaternary,
path.custom-svg-fill-color-quaternary {
    fill: var(--quaternary) !important
}

circle.custom-svg-fill-color-dark,
path.custom-svg-fill-color-dark {
    fill: var(--dark) !important
}

circle.custom-svg-fill-color-light,
path.custom-svg-fill-color-light {
    fill: var(--light) !important
}


body {
    font-size: 16px !important;
    background-color: #fff !important;
}

html:not(.sticky-header-active) #header.header-transparent:not(.header-semi-transparent) .header-body {
    background-color: var(--primary) !important;
}

.rounded,
.img-rounded {
    border-radius: 20px !important;
}

/*title*/
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "cronde";
}

a,
h1,
.text-primary,
.text-color-primary {
    color: var(--quaternary) !important;
}

.header-nav a.nav-link,
.header-nav a.dropdown-item {
    color: var(--light) !important;
}

.header-nav ul.dropdown-menu a.dropdown-item {
    color: var(--quaternary) !important;
}

h2.text-secondary,
h2.text-color-secondary,
.text-color-secondary,
.text-secondary {
    color: var(--quaternary) !important;
}

h3 {line-height: 1em!important;}

@media (max-width:768px) {
    h1 {
        font-size: 2.3em !important;
    }

    .header-nav a.nav-link,
    .header-nav a.dropdown-item {
        color: var(--primary) !important;
    }
}

.btn {
    border-radius: 25px !important;
    padding: 1rem 3rem !important;
    font-size: 1.05rem !important
}

.btn-quaternary {
    color: #fff !important;
}

.btn-danger {
    background-color: #9d202c !important;
    border: 1px #9d202c solid;
}

.citation {
    font-size: 3.8em;
    font-family: "parisienne";
    text-align: center;
    line-height: 0.8em;
    margin: 50px 0;
}

.surtitre {
    text-transform: uppercase;
}

.footer-copyright {
    background-color: #f8eae1 !important;
}

/****************** Misc ********************/

.fio-right {
    width: 90px;
    position: absolute;
    right: -80px;
    top: -60px;
    overflow: hidden;
}

.fio-left {
    width: 90px;
    position: absolute;
    left: -90px;
    top: -60px;
    overflow: hidden;
}


.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next {
    width: 60px;
    height: 60px;
}

.owl-carousel .owl-nav button.owl-prev:before,
.owl-carousel .owl-nav button.owl-next:before {
    font-size: 1rem;
    /*color: black;*/
}

.owl-carousel .owl-nav button.owl-prev {
    transform: translate3d(-55px, -61%, 0) !important;
}

.owl-carousel .owl-nav button.owl-next {
    transform: translate3d(55px, -61%, 0) !important;
}

/****************** Header ********************/
.header-nav.header-nav-bottom-line {
    border-bottom-color: var(--light) !important;
}

.header-nav.header-nav-bottom-line-effect-1 #mainNav li>a.nav-link::before,
.header-nav.header-nav-bottom-line-effect-1 #mainNav li>a.dropdown-item::before {
    background: var(--light) !important;
}

.header-nav.header-nav-bottom-line-effect-1 #mainNav li>a.nav-link.active::before,
.header-nav.header-nav-bottom-line-effect-1 #mainNav li>a.dropdown-item.active::before {
    background: var(--light) !important;
}

/****************** Footer ********************/
.topfooter {
    overflow: hidden;
    position: relative;
    height: 75px;
}

.topfooter::before {
    content: '';
    font-family: 'shape divider from ShapeDividers.com';
    position: absolute;
    bottom: -1px;
    left: -1px;
    right: -1px;
    top: -1px;
    z-index: 3;
    pointer-events: none;
    background-repeat: no-repeat;
    background-size: 100% 25px;
    background-position: 50% 0%;
    transform: rotateY(180deg);
    background-image: url('data:image/svg+xml;charset=utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35.28 2.17" preserveAspectRatio="none"><path d="M0 1c3.17.8 7.29-.38 10.04-.55 2.75-.17 9.25 1.47 12.67 1.3 3.43-.17 4.65-.84 7.05-.87 2.4-.02 5.52.88 5.52.88V0H0z" fill="%23ffffff"/></svg>');
}

@media (min-width:768px) {
    .topfooter::before {
        background-size: 100% 57px;
        background-position: 50% 0%;
        transform: rotateY(180deg);
        height: 80px;

    }
}

@media (min-width:1025px) {
    .topfooter::before {
        bottom: -0.1vw;
        left: -0.1vw;
        right: -0.1vw;
        top: -0.1vw;
        background-size: 100% 90px;
        background-position: 50% 100%;
        transform: rotateY(180deg);

        background-image: url('data:image/svg+xml;charset=utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 35.28 2.17" preserveAspectRatio="none"><path d="M35.28 1.16c-3.17-.8-7.3.4-10.04.56-2.76.17-9.25-1.47-12.68-1.3-3.42.16-4.64.84-7.04.86C3.12 1.31 0 .4 0 .4v1.77h35.28z" fill="%23F5A686"/></svg>');
    }
}

@media (min-width:2100px) {
    .topfooter::before {
        background-size: 100% calc(2vw + 102px);
    }

    .topfooter {
        height: 80px !important;
    }
}

.modal {
    z-index: 10000;
}

/****************** Carousel ********************/
/* CSS global : forcer l'égalisation des hauteurs dans le carrousel */
.equal-height-carousel .owl-stage {
    display: flex;
    align-items: stretch;
}

.equal-height-carousel .owl-item {
    display: flex;
}

.equal-height-carousel .owl-item>div {
    display: flex;
    flex: 1;
}

.equal-height-carousel .card {
    flex: 1;
}

/* CSS Responsive : Ajustements pour les écrans mobiles (Tablettes portrait et Smartphones) */
@media (max-width: 767px) {

    /* 1. Masquer les flèches de navigation encombrantes sur mobile */
    .equal-height-carousel .owl-nav {
        display: none !important;
    }

    /* 2. Réduire les marges internes des cartes pour gagner de l'espace */
    .equal-height-carousel .card-body {
        padding: 1.5rem !important;
    }

    /* 3. Ajuster la taille du titre de la section pour les petits écrans */
    .equal-height-carousel-title {
        font-size: 1.8rem !important;
    }
}

/****************** Scroll to top ********************/
.scroll-to-top {
    color: #fff !important;
}