@import url('https://fonts.googleapis.com/css2?family=Kalam&family=Poppins:wght@200;300;400;500;600;700&display=swap');
@import url('./theme.php');


:root
{
    --radius: 5px;
    --color-defaut: #606060;
}

/*GENERAL*/
html
{
    height: 100%;
}

*
{
    box-sizing: border-box;
    outline: none;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}

BODY
{
    /*height: 100%;*/
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;
    color: var(--color-defaut);

    background-color: #EEF7FF;
}

h1,
h2
{
    margin: 0;
    padding: 15px 0;
    font-size: 33px;

    font-family: "Kalam", cursive;
    font-weight: 400;
    font-style: normal;

    color: #000000;
}
h2
{
    font-size: 30px;
}

h2::before
{
    content: url("../img/triangle.svg");
    margin-right: 5px;
}
h3
{
    font-size: 14px;
}

.titre-bloc
{
    text-transform: uppercase;
    font-size: 18px;
}

.highlight
{
    background-color: #3CA7DB;
    margin: 90px 0;
    padding-bottom: 20px;
}

/*.highlightParallax
{
    padding: 50px;
    background-color: var(--color-main);
}

.highlightParallax .titre-bloc
{
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    text-transform: initial;
}*/

.highlight h2
{
    color: #FFF;
    text-align: center;
}
.highlight h2::before
{
    filter: brightness(1.12);
}

.tetiere
{
    position: relative;
    top: 40px;
    padding: 40px;
    border-radius: 10px;
    height: 100%;
    text-decoration: none;
    background: center/cover no-repeat;
    margin-bottom: 70px;
}

.tetiere .tetiere-titre,
.tetiere-contenu
{
    margin: 0 0 20px 0;
    font-weight: 500;
    color: white;
    text-align: start;
}

.tetiere-contenu
{
    margin: 0;
}


/*.titre-article
{
    margin: 0;
    font-size: 20px;
    color: var(--color-main);
    text-align: left;
    border-left: 10px solid var(--color-main);
    padding-left: 10px !important;
}

.titre-article+hr
{
	margin: 0;
}*/



/*h1 > a,
h2 > a,
h3 > a
{
    text-decoration: none;
}*/

table
{
    border-spacing: 0;
}

table td
{
    margin: 0;
    padding: 0;
}

hr
{
    display: block;
    width: 100px;
    margin: 0 auto;
    padding: 0 0 20px;
    max-width: 100%;
    border: 0;
    border-top: 2px solid var(--color-main);
}

hr.small
{
    border-top-width: 1px;
}

a img
{
    border: 0;
    vertical-align: middle;
}

a
{
    color: color: var(--color-main);
    font-weight: 400;
}

a:active,
a:focus
{
    color: color: var(--color-main);
}

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

.block
{
    display: block;
}

.left
{
    text-align: left;
}

.right
{
    text-align: right;
}

.small
{
    font-size: 11px;
}

.middle
{
    display: flex !important;
    align-items: center !important;
}

.pull-right
{
    float: right;
}

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

.disable
{
    color: #BDBDBD;
}

.lead
{
    font-weight: 700;
    font-size: 16px;
}

li.middle
{
    display: inline-flex !important;
    vertical-align: middle;
}

.ok
{
    color: #1ABA16;
}

.nok
{
    color: #BA1616;
}

.clear
{
    clear: both;
}

.absolute
{
    position: absolute !important;
    top: 0;
    height: 100%;
}

.absolute.right
{
    right: 0;
    width: 50%;
}

.absolute.left
{
    left: 0;
    width: 50%;
}

.highlight_bloc
{
    padding: 30px !important;
    color: #FFF;
}

.highlight_bloc h2
{
    margin: 0 0 15px;
    padding: 25px 0 10px;
    color: #FFF;
}

.highlight_bloc hr
{
    border-color: #FFF;
}

.circle
{
    display: inline-block;
    width: 27px;
    height: 27px;
    margin: 10px;
    border-radius: 100%;
    text-align: center;
    font-size: 17px;
    line-height: 27px;
    vertical-align: middle;
    color: #f3f2f2;
    background-color: #FFF;
}

.container
{
    display: block;
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
    max-width: 1200px;
}

.liste
{
    width: 90%;
    margin: 0 auto;
    padding: 0;
    list-style: none;
}

.liste > li
{
    display: table;
    width: 100%;
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #FFF;
}

.liste > li > span
{
    display: table-cell;
    padding: 10px 5px;
    text-align: left;
}

.liste > li > span:first-child+span
{
    text-align: right;
}

.center
{
    text-align: center;
}

.fade-c > *,
.fade
{
    opacity: 0;
    transition: opacity ease-in-out 0.4s, transform ease-in-out 0.5s;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
}

.fade-c.visible > *,
.fade.visible
{
    opacity: 1;
    -webkit-transform: translateX(0px);
    transform: translateX(0px);
}

.fade-c.visible > :nth-child(2)
{
    transition-delay: 0.3s;
}

.fade-c.visible > :nth-child(3)
{
    transition-delay: 0.6s;
}

.fade-c.visible > :nth-child(4)
{
    transition-delay: 0.9s;
}

.fade-c.visible > :nth-child(5)
{
    transition-delay: 1.2s;
}

.fade-c.visible > :nth-child(6)
{
    transition-delay: 1.5s;
}

.fade-c.visible > :nth-child(7)
{
    transition-delay: 1.8s;
}

.row
{
    margin: 0 -10px;
    padding: 0;
    font-size: 0;
    list-style: none;
}

.row.no-auto-width
{
    display: inline-block;
}

.row > *
{
    display: inline-block;
    margin: 0;
    padding: 0 10px;
    font-size: 14px;
    /*font default*/
    vertical-align: top;
}

.row > .col-1
{
    width: 8.333333%;
}

.row > .col-2
{
    width: 16.666667%;
}

.row > .col-3
{
    width: 25%;
}

.row > .col-4
{
    width: 33.33%;
}

.row > .col-5
{
    width: 41.666667%;
}

.row > .col-6
{
    width: 50%;
}

.row > .col-7
{
    width: 58.333333%;
}

.row > .col-8
{
    width: 66.66%;
}

.row > .col-9
{
    width: 75%;
}

.row > .col-10
{
    width: 83.333333%;
}

.row > .col-11
{
    width: 91.666667%;
}

.row > .col-12
{
    width: 100%;
}
.accordeon > div:not(:last-child)
{
    border-bottom: 1px solid #EDEDED;    
}
.accordeon > div > div:first-child
{
    display: flex;
    align-items: center;
}
.accordeon > div > div:first-child > div:first-child
{
    flex: 1;
    padding: 15px 0;
}
.accordeon > div > div:first-child > div:first-child > *
{
    margin: 0;
    font-family: "Poppins", sans-serif;
    font-size: 18px;
}
.accordeon > div > div:first-child > div:first-child > *::before
{
    content: initial;
}
.accordeon > div > div:first-child + div
{
    display: none;
    padding: 0 0 10px;
}
.accordeon > div > div:first-child > div.handle > i
{
    padding: 5px 7px;
    border-radius: 5px;
}
.accordeon > div.select > div:first-child + div
{
    display: block;
}

/*FORMULAIRE*/
#captchagc,
#captchagc *
{
    box-sizing: border-box;
    outline: none;
}

#captchagc
{
    position: relative;
    background-color: #E7E7E7;
    border: 1px solid #D6D6D6;
    width: 250px;
    height: 70px;
    overflow: hidden;
    margin: 10px auto;
}

#captchagc > img:nth-of-type(1)
{
    position: absolute;
    top: 18px;
    left: 18px;
    width: 34px;
    height: 34px;
    z-index: 2;
    margin: 0 !important;
}

#captchagc > img:nth-of-type(2)
{
    position: absolute;
    top: 40px;
    left: 25px;
    width: 25px;
    height: 25px;
    z-index: 3;
    margin: 0 !important;
    animation: 3s ease-out 1s infinite running captchagc;
}

@keyframes captchagc
{
    0%
    {
        left: 25px;
    }

    25%
    {
        left: 25px;
    }

    50%
    {
        left: 210px;
    }

    100%
    {
        left: 210px;
    }
}

#captchagc > img:nth-of-type(1)+div
{
    position: absolute;
    top: 14px;
    right: 14px;
    border: 1px solid #535353;
    border-radius: 4px;
    width: 41px;
    height: 40px;
    background-color: #FFF;
    z-index: 1;
}

#captchagc > img:nth-of-type(1)+div.accept
{
    border: 1px solid #F3990C;
}

#captchagc > img:nth-of-type(1)+div.hover
{
    border: 1px solid #1CD129;
}

#captchagc:before
{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: " >  >  >  >  >  >  >  > ";
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 17px;
}

#captchagc.valid:after
{
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    content: "";
    background-color: rgba(255, 255, 255, 0.9);
    z-index: 3;
}

#captchagc > i
{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 4;
    opacity: 0;
    transition: ease-in-out 200ms opacity, ease-in-out 200ms left;
}

#captchagc.valid > i:nth-of-type(1)
{
    opacity: 1;
    left: 17%;
}

#captchagc > i:nth-of-type(1):before
{
    content: "\f00c";

    font-family: "Font Awesome 6 Pro";
    font-weight: 900;

    padding: 5px;
    color: #12D954;
    font-size: 30px;
    width: 30px;
    height: 30px;
    line-height: 30px;
    border-radius: 100%;
    background-color: #FFF;
    border: 2px solid #12D954;
}

#captchagc > i:nth-of-type(2)
{
    position: absolute;
    top: 23px;
    left: 113px;
    z-index: 5;
    font-size: 25px;
    opacity: 1;
}

#captchagc.valid > img:nth-of-type(1)
{
    top: 18px !important;
    left: 197px !important;
}

#captchagc.valid > img:nth-of-type(2)
{
    display: none;
}

form
{
    display: inline;
}

.pagination
{
    text-align: center;
}
.pagination > form > input
{
    width: 40px!important;
    border: 0;
    text-align: center;
    margin: 2px 2px;
}
.pagination > form > input:focus
{
    border: 0;
    font-weight: 700;
}
.pagination a
{
    padding: 5px 16px 7px;
    text-decoration: none;
}
.pagination a.active
{    
    color: var(--color-main);
}
.pagination a.disabled
{
    color: #CCC;
}
.pagination a:hover:not(.disabled)
{
    color: var(--color-main);
}

.btnUrgent,
.btnUrgent:active,
.btnUrgent:focus
{
    display: inline-block;
    margin: 10px;
    padding: 15px 30px;
    border: 0;
    border-radius: 5px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
    color: #fff;
    line-height: 25px;
    background-color: #F42424;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    cursor: pointer;
}

.bouton,
.bouton:active,
.bouton:focus,
.button,
.button:active,
.button:focus,
.ui-button:not(.ui-dialog-titlebar-close),
.ui-button:not(.ui-dialog-titlebar-close):active,
.ui-button:not(.ui-dialog-titlebar-close):focus
{
    display: inline-block;
    margin: 2px!important;
    padding: 8px 15px;
    border: 0;
    border-radius: 100vh;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    color: #fff;
    background-color: var(--color-main);
    transition: color .15s ease-in-out, background-color .15s ease-in-out;
    cursor: pointer;
}
.bouton.highlight,
.button.highlight
{
    color: #000000;
    background-color: var(--color-secondary);
}
.bouton:hover,
.button:hover,
.ui-bouton:not(.ui-dialog-titlebar-close):hover,
.ui-button:not(.ui-dialog-titlebar-close):hover
{
    color: #FFFFFF;
    background-color: #535353;
}
.bouton > i,
.button > i
{
    margin-right: 5px;
    vertical-align: middle;
}
.button.small > i,
.bouton.small > i
{
    margin-right: 0;
}

.bouton.disabled,
.button.disabled
{
    pointer-events: none;
    background-color: #f1f1f1;
    color: #BFBFBF;
}


input[type='text'],
input[type='number'],
input[type='password'],
select,
textarea
{
    margin: 2px 0;
    padding: 8px;
    border: 1px solid #CCC;
    outline: none;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
    font-size: 14px;

    border-radius: var(--radius);

    max-width: 100%;
}

select
{
    padding: 7px 8px 8px;
}

textarea
{
    padding: 6px;
}

input[type='text']:focus,
input[type='number']:focus,
input[type='password']:focus,
textarea:focus
{
    border: 1px solid var(--color-main);
    outline: none;
}

fieldset
{
    margin: 0;
    padding: 0;
    border: 0;
}

fieldset > legend
{
    text-align: center;
    font-size: 16px;
    font-weight: bold;
}

fieldset > ul,
fieldset > .contenu > ul
{
    margin: 0;
    padding: 0;
    font-size: 0;
    list-style: none;
}

fieldset > ul > li,
fieldset > .contenu > ul > li
{
    display: inline-block;
    width: 50%;
    margin: 0;
    padding: 0;
    font-size: 14px;
    vertical-align: middle;
}

fieldset > ul > li .row
{
    margin: 0;
}

fieldset > ul > li .row > *
{
    padding: 0;
}

fieldset > ul > li .input,
fieldset > .contenu > ul > li .input
{
    display: block;
    width: 100%;
    padding: 5px;
    text-align: left;
    font-size: 0;
}

fieldset > ul > li .input > label,
fieldset > .contenu > ul > li .input > label
{
    display: block;
    font-weight: 400;
    font-size: 16px;
    padding: 3px 0;
}

fieldset > ul > li .input > div > *,
fieldset > .contenu > ul > li .input > div > *
{
    font-size: 14px;
}

fieldset > ul > li .input > div > input,
fieldset > ul > li .input > div > select,
fieldset > ul > li .input > div > textarea,
fieldset > .contenu > ul > li .input > div > input,
fieldset > .contenu > ul > li .input > div > select,
fieldset > .contenu > ul > li .input > div > textarea
{
    display: inline-block;
    width: 100%;
    font-size: 14px;
}

fieldset > ul > li.double,
fieldset > .contenu > ul > li.double
{
    width: 100%;
}

/* PRODUCTS SLIDER */
.products-container {
    text-align: -webkit-center;
    margin: 20px 0;
}

.products-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 10px;
}

.product-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    text-align: center;
    transition: all 0.3s;
    height: 300px;
    text-decoration: none;
    overflow: hidden;
}

.products-list .product-block {
    width: 350px;
}

.product-block .product-image {
    width: 100%;
    max-width: unset;
    height: 75%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.product-block .product-image img {
    min-width: 100%;
    object-fit: cover;
    transition: all ease 0.2s;
}

.product-block:hover .product-image img {
    transform: scale(1.1);
}

.product-block .price {
    font-size: 18px;
    margin-top: 10px;
}

.old-price {
    text-decoration: line-through;
    color: #888;
    margin-right: 5px;
    font-size: 12px;
}

.promo-price {
    color: #e60000;
    font-weight: bold;
}

/* PRODUCTS PAGE */

.product-page {
    display: flex;
    margin-bottom: 30px;
    justify-content: space-between;
}

.product-page .price {
    font-size: 40px;
    margin: 10px 0 0 0;
}

.product-page .caracteristics {
    box-shadow: 0 2px 5px 1px rgba(0, 0, 0, 0.2);
    border-radius: 10px;
    font-size: 18px;
    display: flex;
    flex-direction: column;
    height: fit-content;
    padding: 20px 0;
}

.product-page .caracteristics > div {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 20px;
    justify-content: center;
}

.product-page .caracteristics p {
    margin: 5px 0;
}

.product-description {
    font-size: 16px;
    margin-top: 20px;
}

.filter-selector {
    text-align: center;
    font-size: 14px;
    font-weight: bold;
}

.product-page form button[type='submit'] {
    padding: 10px 30px!important;
}

.caracteristics .btn-plus,
.caracteristics .btn-minus {
    width: 35px;
    height: 35px;
    padding: 0;
}

.caracteristics .quantity-input {
    width: 55px;
}

.badge
{
    margin: 1px;
    display: inline-block;
    padding: 3px 10px;
    border-radius: 26px;
    background-color: #727272;
    color: #FFF;
    font-size: 12px;
}
.badge.validation
{
    background-color: #37bc9b;
}
.badge.information
{
    background-color: #5D9CEC;
}
.badge.erreur
{
    background-color: #F05050;
}
.badge.alert
{
    background-color: #e1a119;
}
.badge.autre
{
    background-color: var(--color-main);
}
.badge.small
{
    padding: 0px 5px;
    font-size: 11px;
}

.success-message
{
    text-align: center;
    position: fixed;
    top: 0;
    right: 0;
    margin: 10px;
    background-color: #4CAF50;
    color: white;
    padding: 15px 20px;
    border-radius: 5px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    font-size: 16px;
    z-index: 1000;
    opacity: 0;
    transform: translateY(-20px);
    transition: opacity 0.5s ease, transform 0.5s ease;
    max-width: calc(100% - 20px);
}
.success-message.show
{
    opacity: 1;
    transform: translateY(0);
}

.product-image
{
    width: fit-content;
    max-width: 50%;
}
.product-image-main .slick-slide a
{
    position: relative;
    display: block;
    padding-top: 80%;
    width: 100%;
    max-width: 100%;
    cursor: zoom-in;
}
.product-image-main .slick-slide img
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%!important;
    height: 100%!important;
    object-fit: scale-down;
    vertical-align: middle;
    margin: 0 auto;
    max-width: initial;
    max-height: initial;
}
.product-image-thumb .slick-slide:not(.slick-current)
{
    opacity: .5;
}
.product-image-thumb .slick-slide img
{
    width: 100px!important;
    max-width: 100%;
    height: 100px!important;
    object-fit: scale-down;
    vertical-align: middle;
    margin: 0 auto;
}

/*.product-image {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: fit-content;
    max-width: 50%;
}

.product-image .large {
    overflow: hidden;
    border-radius: 10px;
    margin-bottom: 10px;
    width: 100%;
    margin-right: 10px;
}

.product-image .large img {
    width: 100%;
    display: block;
}

.product-image .small {
    overflow: hidden;
    border-radius: 5px;
    display: inline-block;
    width: 15%;
    margin: 4px;
}

.product-image .small img {
    width: 100%;
    display: block;
    object-fit: cover;
    transition: all ease 0.2s;
}

.product-image .small img:hover {
    transform: scale(1.05);
}

.product-image .small-container {
    display: flex;
    flex-wrap: wrap;
}*/


/* CART / PANIER */
.cart-badge {
    position: relative;
    margin: 0px 0 -2px 4px;
    display: inline-block;
    padding: 2px 0;
    text-align: center;
    border-radius: 100%;
    background-color: #fd3838;
    color: #FFF;
    font-size: 12px;
    width: 23px;
    height: 23px;
    line-height: 20px;
    font-family: "Poppins", sans-serif;
    font-weight: 400;
    font-style: normal;
}

.cart-container {
    /*min-height: 100vh;*/
    max-width: 1200px;
    margin: 30px auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}

#cart-content
{
    width: 100%;
}
.empty-cart {
    text-align: center;
    font-size: 18px;
    color: #666;
}

.cart-items {
    background-color: var(--color-light);
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.cart-item {
    display: flex;
    justify-content: space-between;
    padding: 5px 0;    
    align-items: center;
}
.cart-item:not(:last-child) {
    border-bottom: 1px solid #ddd;
}

.cart-product-info {
    width: 50%;
    align-content: center;
    text-decoration: none;
}

.cart-product-name {
    font-size: 16px;
    font-weight: bold;
}

.cart-product-model {
    font-size: 14px;
    color: #666;
}

.cart-product-numbers {
    display: flex;
    justify-content: space-around;
    flex-direction: row;
}

.quantity-selector {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.quantity-selector input {
    margin: 1px;
    text-align: center;
    border: 0;
    background-color: transparent;
    width: 55px;
}
.quantity-selector .bouton {
    margin: 1px;
    padding: 8px 15px 7px 15px;
}

.cart-product-price, 
.cart-product-total,
.cart-product-quantity {
    width: 20%;
    text-align: center;
    font-size: 16px;
    color: #333;
    align-self: center;
}

.cart-remove {
    width: 5%;
    text-align: center;
}

.remove-button {
    background-color: transparent;
    border: none;
    color: #e74c3c;
    font-size: 18px;
    cursor: pointer;
}

.remove-button:hover {
    color: #c0392b;
}

.cart-summary {
    width: 30%;
    min-width: 350px;
    background-color: var(--color-light);
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);

    position: sticky;
    top: 152px;
}
.cart-summary h2
{
    padding: 0 0 4px;    
    border-bottom: 1px solid #ddd;
    margin-bottom: 10px;
}

.summary-detail {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    font-size: 16px;
    color: #666;
}

.summary-total {
    display: flex;
    justify-content: space-between;
    font-size: 18px;
    font-weight: bold;
    color: #333;
    margin-top: 20px;
    padding: 5px 0 0;
    border-top: 1px solid #ddd;
}

#buttons-container {
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
}

.pay-button,
.pay-button:active {
    display: block;
    width: 100%;
    text-align: center;
    padding: 15px;
    font-size: 16px;
    cursor: pointer;
    margin: 20px 0 0;
    text-decoration: none;
}

.cart-product-quantity input[type='number'] {
    width: 50px;
}

.delivery-box {
    max-width: 100%;
    width: 60%;
    background-color: var(--color-light);
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    display: none;
}
.delivery-box h2
{
    padding: 0 0 4px;
    border-bottom: 1px solid #ddd;
    margin-bottom: 10px;
}

.delivery-form {
    display: grid;
    grid-template-columns: 0.5fr 1fr;
    gap: 20px;
    margin: 20px 0;
}

.delivery-form label {
    font-size: 16px;
    color: #666;
    margin-bottom: 5px;
    align-self: center;
}

.delivery-form input[type="text"],
.delivery-form input[type="tel"],
.delivery-form input[type="email"] {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 16px;
    box-sizing: border-box;
}

.delivery-form .full-width {
    grid-column: span 2;
}

/*.delivery-form button {
    grid-column: span 2;
    width: 100%;
    padding: 15px;
    background-color: var(--color-main);
    color: var(--color-light);
    border: none;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
}*/

.delivery-box .button,
.delivery-box .button:active {
    text-align: center;
    padding: 15px 25px;
    font-size: 16px;
    cursor: pointer;
    margin: 20px 0 0;
    text-decoration: none;
}

.delivery-form input.error {
    border-color: #e74c3c;
}


/*NOTIFICATIONS*/
.notification
{
    margin: 10px;
    padding: 10px 20px;
    border-radius: 3px;
    text-align: left;
    color: #FFF;
}

.notification.small
{
    margin: 0;
}

.notification:before
{
    display: inline-block;
    margin: 0 10px 0 0;
    font-family: "Font Awesome 5 Pro";
    font-size: 18px;
    vertical-align: middle;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.notification > span
{
    display: inline-block;
    width: calc(100% - 40px);
    vertical-align: middle;
}

.notification.closable:after
{
    content: "\f00d";
    position: absolute;
    top: 50%;
    right: 0;
    margin: 0 10px 0 0;
    font-family: "Font Awesome 5 Pro";
    font-size: 18px;
    vertical-align: middle;
    transform: translateY(-50%);
    cursor: pointer;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.notification.absolute
{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
}

.notification.validation,
.button.validation
{
    background-color: #37bc9b;
}

.notification.validation:before
{
    content: "\f00c";
}

.notification.information,
.button.information
{
    background-color: #5D9CEC;
}

.notification.information:before
{
    content: "\f05a";
}

.notification.erreur,
.button.erreur
{
    background-color: #F05050;
}

.notification.erreur:before
{
    content: "\f06a";
}

.notification.alert,
.button.alert
{
    background-color: #f0bd50;
}

.notification.alert:before
{
    content: "\f071";
}

.notification.disable,
.button.disable
{
    background-color: #A2A2A2;
}

/*SITE*/
iframe div
{
    padding: 206px !important;
}

#site
{
    position: relative;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    /*padding-top: 175px;*/
}

.card
{
    display: block;
    border-radius: var(--radius);
    background-color: rgba(255, 255, 255, 0.85);
    box-shadow: 0 6px 30px rgba(0, 0, 0, 0.08);
    backdrop-filter: blur(7.5px);
    padding: 8px;
    text-decoration: none;
}
a.card:hover
{
    text-decoration: underline;
}


/*HEADER*/
#header_top
{
    text-align: right;
    position: absolute;
    right: 0;
    top: -20px;
    z-index: 2;
}

#header_top > .container > span
{
    display: inline-block;
    padding: 5px;
}

#header
{
    z-index: 55;
    position: fixed;
    padding-top: 40px;
    top: 0;
    right: 0;
    left: 0;
    text-align: right;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}
#header > div
{
    position: relative;
}
#header > div > div:first-child + div
{
    display: flex;
    height: 80px;
    justify-content: space-between;
    align-items: center;
    margin: 0 10px;
}

#logo
{
    display: inline-flex;
    z-index: 2;
    height: 80%;
}
#logo > img
{
    height: 100%;
    transition: width ease-in-out 0.15s;
    object-fit: scale-down;
    object-position: left;
}



/*MENU*/
.burger
{
    display: none;
}
#menu
{
    padding: 0;
}
#menu > ul
{
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
}

#menu > ul > li
{
    position: relative;
}
#menu > ul > li > a
{
    display: block;
    position: relative;
    padding: 10px 8px;
    overflow: hidden;
    text-decoration: none;
    font-size: 15px;
}
#menu > ul > li > a.button
{
    padding: 5px 15px;
}
#menu > ul > li.sous-menu > a
{
    padding: 10px 30px 10px 10px;
}
#menu > ul > li > a > .fa-angle-down
{
    position: absolute;
    top: calc(50% - 2px);
    right: 4px;
    font-size: 17px;
    transition: top 0.3s;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
#menu > ul > li:hover > a > .fa-angle-down.down1
{
    top: 120%;
}
#menu > ul > li > a > .fa-angle-down.down2
{
    top: -20%;
}
#menu > ul > li:hover > a > .fa-angle-down.down2
{
    top: calc(50% - 2px);
}

#menu > ul > li:hover > a:not(.button),
#menu > ul > li.select > a:not(.button)
{
    color: #000000;
}

#menu > ul > li > ul
{
    z-index: 3;
    position: absolute;
    top: 100%;
    padding: 0 5px;
    max-height: 0;
    min-width: 100%;
    overflow: hidden;
    text-align: left;
    list-style: none;
    background-color: #FFF;
    box-shadow: 0 6px 30px rgba(0,0,0,0.08);
    transition: max-height ease-in-out 0.4s;
    border-radius: var(--radius);
}

#menu > ul > li > ul > li
{
    padding: 5px 0;
}
#menu > ul > li > ul > li:first-child
{
    padding-top: 15px;
}
#menu > ul > li > ul > li:last-child
{
    padding-bottom: 15px;
}
#menu > ul > li.lang > ul > li
{
    padding: 0;
}
#menu > ul > li.lang > ul > li:first-child
{
    padding-top: 0;
}
#menu > ul > li.lang > ul > li:last-child
{
    padding-bottom: 0;
}


#menu > ul > li:hover ul
{
    max-height: 500px;
}

#menu > ul > li > ul > li
{
    white-space: nowrap;
}

#menu > ul > li > ul > li > a
{
    display: block;
    padding: 5px;
    text-decoration: none;
    font-size: 15px;
    white-space: nowrap;
    color: var(--color-defaut);
}

#menu > ul > li > ul > li > a:hover,
#menu > ul > li > ul > li > a.select
{
    color: #000000;
}

#menu .lang > a > span
{
    display: none;
}
#menu .lang a img
{
    margin-right: 5px;
}

/*SLIDER ACCUEIL*/
.mouse
{
    max-width: $mouse-width;
    width: 100%;
    height: 38px;
}

.scroll_slide
{
    animation-name: scroll_slide;
    animation-duration: 1.5s;
    animation-timing-function: cubic-bezier(0.65, -0.55, 0.25, 1.5);
    animation-iteration-count: infinite;
    transform-origin: 50% 20.5px;
    will-change: transform, opacity;
    opacity: 1;
}

.scroll_slide-link
{
    position: absolute;
    bottom: 1rem;
    left: 50%;
    transform: translateX(-50%);
}

@keyframes scroll_slide
{

    0%,
    20%
    {
        transform: translateY(0) scaleY(1);
    }

    100%
    {
        transform: translateY(36px) scaleY(2);
        opacity: 0;
    }
}

#slider_accueil
{
    z-index: 1;
    position: relative;
    width: 100% !important;
    /* margin-top: 100px; */
    overflow: hidden;
}
#slider_accueil > ul
{
    position: relative !important;
    width: 100%;
}
#slider_accueil > ul > li
{
    position: relative !important;
    width: 100%;
    padding-top: 43%;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}
#slider_accueil > ul > li > a
{
    display: block;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
}
#slider_accueil img
{
    margin: 0;
}
#slider_accueil > ul > li video
{
    z-index: 1;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#slider_accueil .boutonPagination.select
{
    background: var(--color-main) !important;
}
#slider_accueil .boutonsPagination
{
    right: 30px !important;
}
#slider_accueil .boutonPagination
{
    width: 15px !important;
    height: 15px !important;
    opacity: 1 !important;
}
#slider_accueil .CJSlider-navigation-gauche > i,
#slider_accueil .CJSlider-navigation-droite > i
{
    text-shadow: 1px 1px 4px #555;
    font-size: 62px;
    color: rgb(255, 255, 255);
    cursor: pointer;
}
#slider_accueil .CJSlider-navigation-gauche > i
{
    right: 10px;
}
#slider_accueil .CJSlider-navigation-droite > i
{
    left: 10px;
}
#slider_accueil .slide-contenu
{
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    background: linear-gradient(0deg, #00000085, transparent, transparent);
}
.slide-contenu .container
{
    position: relative;
    top: 0;
    height: 100%;
}
#slider_accueil .slide-contenu > .container > div
{
    position: absolute;
    bottom: 20%;
    left: 0;
    width: 100%;
    transform: translate(0, 50%);
}
#slider_accueil .slide-contenu .slide-titre
{
    display: inline-block;
    margin: 0 40px 15px 40px;
    padding: 0 0 0 10px;
    text-decoration: none;
    font-size: 26px;
    color: #FFF;
    font-weight: bold;
    text-shadow: 1px 1px rgba(0, 0, 0, 0.5);

    border-left: 10px solid var(--color-main);
}
#slider_accueil .slide-contenu .slide-texte
{
    display: block;
    margin: 0 40px 15px 40px;
    padding: 0;
    text-decoration: none;
    font-size: 24px;
    color: #FFF;
    text-shadow: 1px 1px rgba(0, 0, 0, 0.5);
}
#slider_accueil .slide-contenu .slide-texte a
{
    text-shadow: none;
    display: inline-flex;
    align-items: center;
}


/*CONTENT*/
#content
{
    position: relative;
    min-height: calc(100vh - 266px);
    padding-top: 140px;
}
.container[data-ancre='contact']
{
    overflow-x: hidden;
}
#slider_accueil+#content
{
    padding-top: 0;
}
#slider_accueil+#content
{
    margin-top: 0;
}

#content .contenu-accroche img,
#content .contenu-texte img,
#content .contenu-article img,
#content .contenu-conclusion img
{
    margin: 5px;
}

#content .contenu-accroche img[align='left'],
#content .contenu-texte img[align='left'],
#content .contenu-article img[align='left'],
#content .contenu-conclusion img[align='left']
{
    margin: 5px 20px 5px 0;
}

#content .contenu-accroche img[align='right'],
#content .contenu-texte img[align='right'],
#content .contenu-article img[align='right'],
#content .contenu-conclusion img[align='right']
{
    margin: 5px 0 5px 20px;
}

#content .contenu-accroche img[align='absmiddle'],
#content .contenu-texte img[align='absmiddle'],
#content .contenu-article img[align='absmiddle'],
#content .contenu-conclusion img[align='absmiddle']
{
    margin: 5px;
}

#content .sous_pages
{
    margin: 0;
    padding: 0;
    text-align: center;
}

#content .sous_pages > li
{
    display: inline-block;
    width: 48%;
    margin: 1%;
    padding: 0;
    list-style: none;
}

#content .sous_pages > li > a
{
    display: inline-block;
    width: 100%;
    padding: 30px 0;
    border-radius: 5px;
    text-decoration: none;
    text-transform: uppercase;
    color: #fff;
    background-color: color: var(--color-main);
}

#content .sous_pages > li > a:hover
{
    background-color: #858585;
}

.contenu-article
{
    margin: 25px 0 0;
}
.contenu-article > div:not(.clear)
{
    padding: 20px;
}

.contenu-article.hero+.contenu-article.hero
{
    margin: 0;
}

.contenu-article.hero.image
{
    padding: 50px 0;
}

.contenu-article.hero > div:not(.clear)
{
    padding: 20px;
}

.contenu-article.hero.image
{
    min-height: 450px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 50% 0%;
    background-attachment: fixed;
}

.contenu-article h2
{
    margin: 0 0 15px;
    padding: 0;
}

.contenu-article > div
{
    margin: 0 auto;
}
/*.contenu-article > div > div
{
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    overflow: hidden;
}*/


.bloc3d
{
    z-index: 8;
    position: relative;
    margin: 20px auto;
    padding-left: 0;
    text-align: center;
    font-size: 0;
    list-style: none;
}

.bloc3d > li
{
    display: inline-block;
    width: 345px;
    height: 225px;
    margin: 5px;
    max-width: 435px;
    border-radius: 4px;
    font-size: 15px;
    vertical-align: top;
    color: white;
    perspective: 500px;
}

.bloc3d > li > a
{
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    text-decoration: none;
    color: white;
    background-color: rgb(219, 219, 219);
    background-position: 50% 50%;
    background-size: cover;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
    perspective: 500px;
    -ms-transform-style: preserve-3d;
    -o-transform-style: preserve-3d;
    overflow: hidden;
    border-radius: 10px;
}

.bloc3d > li > a.anim
{
    box-shadow: 0 0 0 rgba(0, 0, 0, 0) !important;
    -webkit-animation: leave-animation 0.5s forwards cubic-bezier(0.18, 2.07, 1, 1);
    -moz-animation: leave-animation 0.5s forwards cubic-bezier(0.18, 2.07, 1, 1);
    -o-animation: leave-animation 0.5s forwards cubic-bezier(0.18, 2.07, 1, 1);
    animation: leave-animation 0.5s forwards cubic-bezier(0.18, 2.07, 1, 1);
    -ms-animation: leave-animation 0.5s forwards cubic-bezier(0.18, 2.07, 1, 1);
}

.bloc3d li img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@keyframes leave-animation
{
    100%
    {
        transform: rotateX(0deg) rotateY(0deg);
    }
}

.bloc3d .titre-bloc
{
    position: absolute;
    bottom: 10px;
    left: 0;
    padding: 3px 10px;
    text-align: left;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: bold;
    letter-spacing: 2px;
    color: #333;
    background-color: rgba(255, 255, 255, 0.9);
}

.bloc3d .prix-bloc
{
    position: absolute;
    bottom: 40px;
    left: 10px;
    width: 100px;
    height: 100px;
    padding: 40px 0;
    text-align: center;
    font-size: 20px;
    color: #FFF;
    transform: rotate(15deg);
}

.bloc3d .btn-bloc
{
    position: absolute;
    bottom: 10px;
    left: 0;
    padding: 3px 10px;
    text-align: left;
    text-transform: uppercase;
    font-size: 13px;
    font-weight: bold;
    letter-spacing: 2px;
    color: #333;
    background-color: rgba(255, 255, 255, 0.9);
}

.contain-icon > i
{
    font-size: 100px;
    display: block;
}

.text-icon,
.contain-icon > i
{
    text-align: center;
}

.parallax,
.parallax2
{
    margin: 0;
    padding: 70px 0;
    min-height: 450px;
    color: white;
    background-attachment: fixed;
    background-image: url(../img/parallax.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

.parallax h2
{
    text-align: center;
    color: #FFF;
}

.parallax2
{
    background-color: #E5DCD7;
    background-image: none;
}

.parallax2 h2
{
    text-align: center;
    color: #000;
}



/*Pages*/
#page-a-propos
{
    color: #FFF;
}



#page-horaires
{
    height: 463px;
    padding: 0 !important;
    overflow: hidden;
}

.biseau_left:before
{
    content: '';
    clip-path: polygon(13% 0, 100% 0%, 100% 100%, 10% 100%);
    background-color: var(--color-main);
    background: -webkit-linear-gradient(to right, #01BF81, #41C3D3);
    background: var(--color-main);
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    margin-left: 37%;
}

.biseau_right:before
{
    content: '';
    clip-path: polygon(10% 0%, 100% 0%, 100% 100%, 13% 100%);
    background-color: var(--color-main);
    background: -webkit-linear-gradient(to right, #01BF81, #41C3D3);
    background: var(--color-main);
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    margin-left: 37%;
}



#page-coordonnees a
{
    text-decoration: none;
    font-size: 20px;
    color: #FFF;
}



#page-facebook
{
    padding: 50px 0;
    text-align: center;
    background-attachment: fixed;
    background-image: url(../img/facebook.jpg);
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
}

#page-facebook > iframe
{
    box-shadow: 0 0 20px 5px rgba(0, 0, 0, 0.5);
}



#page-contact > h2
{
    padding-top: 25px;
}



#page-partenaires
{
    text-align: center;
}

#page-partenaires .container
{
    display: flex;
    align-items: center;
    justify-content: center;
    height: 200px;
}

#page-partenaires a
{
    display: inline-block;
    margin: 5px;
    vertical-align: middle;
}

#page-partenaires a > img
{
    max-width: 200px;
}



#partenaires-liste
{
    margin: 0;
    padding: 0;
    text-align: center;
    font-size: 0;
    list-style: none;
}

#partenaires-liste > li
{
    display: inline-block;
    width: 200px;
    height: 180px;
    margin: 10px;
    padding: 15px;
    overflow: hidden;
    text-align: center;
    font-size: 14px;
    transition: ease-in-out 200ms box-shadow;
}

#partenaires-liste > li > a
{
    display: block;
    margin: 0;
    padding: 0;
    text-decoration: none;
}

#partenaires-liste > li:hover
{
    -webkit-box-shadow: 0 0 3px 0 #656565;
    -moz-box-shadow: 0 0 3px 0 #656565;
    box-shadow: 0 0 3px 0 #656565;
    -o-box-shadow: 0 0 3px 0 #656565;
    filter: progid:DXImageTransform.Microsoft.Shadow(color=#656565, Direction=NaN, Strength=3);
}

#partenaires-liste > li img
{
    height: initial;
    margin: 0;
    max-width: 100%;
}

#partenaires-liste > li > a > .partenaires-liste-titre
{
    color: #044D71;
}



/*Les actualitÃ©s*/
#actualites-liste
{
    margin: 0;
    padding: 0;
    font-size: 0;
    list-style: none;
}

#actualites-liste h2
{
    margin: 0 0 15px;
    padding: 0;
    text-align: left;
    border-left: 10px solid var(--color-main);
    padding-left: 10px !important;
}

#actualites-liste > div > a
{
    font-size: 0;
    background-color: #f5f5f5;
    display: block;
    margin: 0px 0px 20px 0px;
    text-decoration: none;
}

#actualites-liste > div > a > div
{
    display: inline-block;
    font-size: 16px;
    vertical-align: top;
}

#actualites-liste > div > a > div:first-child
{
    position: relative;
    width: 100%;
    height: 200px;
    background-color: #ededed;
    overflow: hidden;
}

#actualites-liste > div > a > div:first-child > img
{
    position: absolute;
    margin: 0;
    max-width: 100%;
    max-height: 100%;
    left: 50%;
    transform: translate(-50%, -50%);
    top: 50%;
}

#actualites-liste > div > a > div:first-child+div
{
    position: relative;
    padding: 0 10px 10px 10px;
    max-height: 80px;
    height: 80px;
}

#actualites-liste > div > a > div > .actualite-effect
{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    opacity: 0;
    z-index: 1;
    color: #fff;
    transition: opacity 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
    transition-delay: 200ms;
}

#actualites-liste > div > a:hover > div > .actualite-effect
{
    opacity: 1;
    background-color: rgba(0, 0, 0, 0.3);
}

#actualites-liste > div > a > div > h2
{
    font-size: 16px;
    color: rgb(47, 60, 78);
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.501;
    text-align: left;
}



/*Une actualitÃ©*/
.actualite-top
{
    margin-top: 35px;
    overflow: hidden;
}

.actualite-date
{
    width: 145px;
    text-align: center;
    overflow: hidden;
    background-color: #f5f5f5;
    padding: 0px 5px 5px 5px;
    margin: 0;
}

.actualite-date-jour
{
    font-size: 25px;
    text-transform: uppercase;
    display: block;
}

.actualite-date-mois
{
    font-size: 15px;
    color: rgb(47, 60, 78);
    text-transform: uppercase;
    text-align: left;
}

.actualites-content
{
    margin: 0;
    padding: 0;
}
.actualites-content .actualite-photo
{
    background-color: #ededed;
    margin-bottom: 15px;
}
.actualites-content img
{
    margin: 0 !important;
    width: 100%;
    height: 450px;
    object-fit: contain;
}

.actualite-texte
{
    text-align: justify !important;
}

.actualite-titre
{
    font-size: 16px;
    color: rgb(20, 36, 64);
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.501;
}

/* Galerie PDF */
.gallery {
    margin: 20px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

.gallery-item {
    width: 280px;
    padding: 20px;
    border-radius: 12px;
    text-align: center;
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.gallery-item:hover {
    transform: translateY(-5px) scale(1.05);
    box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);
}

.gallery-item a {
    text-decoration: none;
}

.gallery-item img {
    width: 98%;
    height: 180px;
    border-radius: 8px;
    object-fit: cover;
    transition: transform 0.2s;
}

.gallery-item:hover img {
    transform: scale(1.1);
}

.gallery-item p {
    font-size: 20px;
    margin-top: 15px;
    font-weight: 600;
}

.pagination {
    text-align: center;
    margin-top: 30px;
}

.pagination a {
    display: inline-block;
    padding: 12px 18px;
    margin: 5px;
    text-decoration: none;
    border-radius: 6px;
    font-weight: 500;
    transition: background 0.3s, transform 0.2s;
}

.pagination a:hover {
    transform: scale(1.05);
}


/*Galerie*/


.galerie_pin
{
    width: 100%;
}

.galerie_pin > div
{
    column-count: 4;
    /*-webkit-column-fill: auto;
	-moz-column-fill: auto;
	column-fill: auto;*/
    column-gap: 20px;
}

.galerie_pin > div > div
{
    margin-bottom: 20px;
}

.galerie_pin .images
{
    position: relative;
    overflow: hidden;
    /* border-radius: 15px; */
    /* box-shadow: -2px 2px 3px 1px #c3cacd; */
    box-shadow: -4px 3px 10px -4px rgba(0, 0, 0, 0.25);
}

.galerie_pin .images img
{
    width: 100%;
    box-shadow: 0px 0px 5px 0px #5a5a5a;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: middle;
}

.galerie_pin .images .overlay-image
{
    position: absolute;
    top: -100%;
    left: 0;
    height: 100%;
    width: 100%;
    background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.6) 80%);
    /*display: none;*/
    opacity: 0;
    transition: top 0.3s ease;
    z-index: 1;
}

.galerie_pin .images .overlay-image > div
{
    position: relative;
}

.galerie_pin .images a:hover .overlay-image
{
    top: 0;
    /*display: block;*/
    opacity: 1;
    transition: top 0.3s ease;
    left: 0;
}

#galerie-liste
{
    width: 100%;
    padding-left: 0;
    text-align: center;
    font-size: 0;
    list-style: none;
}

#galerie-liste > li
{
    display: inline-flex;
    position: relative;
    width: calc(25% - 10px);
    margin: 5px;
    padding-top: 20%;
    overflow: hidden;
    vertical-align: top;
}

#galerie-liste > li .titre
{
    display: flex;
    z-index: 2;
    position: absolute;
    bottom: 10px;
    left: 0;
    align-items: center;
    justify-content: center;
    width: calc(100% - 10px);
    height: 50px;
    margin: 5px;
    padding: 5px;
    border-radius: 3px;
    font-size: 18px;
    color: #FFF;
    background-color: rgba(0, 0, 0, 0.7);
    transition: ease-in-out 200ms bottom;
}

#galerie-liste > li .titre > span
{
    display: inline-block;
}


#galerie-liste > li:hover .titre
{
    bottom: -100%;
}

#galerie-liste > li > a
{
    display: block;
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: #FFF0;
}

#galerie-liste > li > a > .mask
{
    z-index: 3;
    position: absolute;
    top: 100%;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.7);
    -webkit-animation: 150ms forwards linear;
    animation: 0.15s forwards linear;
}

#galerie-liste > li > a > .mask > i
{
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 45px;
    color: white;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

#galerie-liste > li > a > .mask > span
{
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 95%;
    text-align: center;
    font-size: 15px;
    color: white;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

#galerie-liste > li > a > .mask > span > i
{
    font-size: 45px;
}

#galerie-liste > li img.portrait
{
    width: 100%;
    height: auto !important;
    max-width: 100% !important;
}

#galerie-liste > li img.landscape
{
    width: auto;
    height: 100% !important;
    max-height: 100%;
}

#galerie-partenaires .slick-slide img
{
    max-width: 150px;
    max-height: 150px;
}

.item
{
    position: relative;
    float: left;
    width: calc(33.33333% - 10px);
    background-color: #000;
    overflow: hidden;
    margin: 5px;
}

.item:after
{
    content: '';
    display: block;
    background-color: inherit;
    opacity: 0.9;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(2) translateX(-75%) translateY(-75%) translateZ(0) rotate(-28deg);
    transition: transform 3s cubic-bezier(0.23, 1, 0.32, 1);
    opacity: 0.3;
}

.item:hover:after
{
    transform: scale(2) translateX(0%) translateY(0%) translateZ(0) rotate(-28deg);
}

.item:hover .item-image
{
    transform: scale(1.2) translateZ(0);
}

.item:hover .item-text
{
    opacity: 1;
    transform: translateY(0);
}

.item-image
{
    height: auto;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: transform 750ms cubic-bezier(0.23, 1, 0.32, 1);
}

.item-image::before
{
    content: "";
    display: block;
    padding-top: 100%;
    overflow: hidden;
}

.item-image img
{
    position: absolute;
    top: 0;
    left: 0;
    line-height: 0;
    margin: 0 !important;
}

.item-image img.landscape
{
    width: auto;
    height: 100% !important;
    max-height: 100%;
    transform: translateX(-25%);
}

.item-image img.portrait
{
    width: 100%;
    height: auto !important;
    max-width: 100% !important;
    transform: translateY(-25%);
}

.item-text
{
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    opacity: 0;
    text-align: center;
    z-index: 1;
    color: #fff;
    transition: opacity 500ms cubic-bezier(0.23, 1, 0.32, 1),
        transform 500ms cubic-bezier(0.23, 1, 0.32, 1);
    transition-delay: 300ms;
    transform: translateY(-20%);
}

.item-text-wrapper
{
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.item-text-title
{
    font-size: 18px;
    padding: 0 15px;
    color: #FFF;
    text-align: center;
    margin: auto;
    display: block;
}

@keyframes in-top
{
    0%
    {
        top: -100%;
        left: 0%;
        opacity: 1;
    }

    100%
    {
        top: 0%;
        left: 0%;
        opacity: 1;
    }
}

@keyframes in-bottom
{
    0%
    {
        top: 100%;
        left: 0%;
        opacity: 1;
    }

    100%
    {
        top: 0%;
        left: 0%;
        opacity: 1;
    }
}

@keyframes in-right
{
    0%
    {
        top: 0%;
        left: 100%;
        opacity: 1;
    }

    100%
    {
        top: 0%;
        left: 0%;
        opacity: 1;
    }
}

@keyframes in-left
{
    0%
    {
        top: 0%;
        left: -100%;
        opacity: 1;
    }

    100%
    {
        top: 0%;
        left: 0%;
        opacity: 1;
    }
}

#galerie-liste > li > a > .mask.in-top
{
    -webkit-animation-name: in-top;
    animation-name: in-top;
}

#galerie-liste > li > a > .mask.in-bottom
{
    -webkit-animation-name: in-bottom;
    animation-name: in-bottom;
}

#galerie-liste > li > a > .mask.in-right
{
    -webkit-animation-name: in-right;
    animation-name: in-right;
}

#galerie-liste > li > a > .mask.in-left
{
    -webkit-animation-name: in-left;
    animation-name: in-left;
}

@keyframes out-top
{
    0%
    {
        top: 0%;
        left: 0%;
        opacity: 1;
    }

    100%
    {
        top: -100%;
        left: 0%;
        opacity: 1;
    }
}

@keyframes out-bottom
{
    0%
    {
        top: 0%;
        left: 0%;
        opacity: 1;
    }

    100%
    {
        top: 100%;
        left: 0%;
        opacity: 1;
    }
}

@keyframes out-right
{
    0%
    {
        top: 0%;
        left: 0%;
        opacity: 1;
    }

    100%
    {
        top: 0%;
        left: 100%;
        opacity: 1;
    }
}

@keyframes out-left
{
    0%
    {
        top: 0%;
        left: 0%;
        opacity: 1;
    }

    100%
    {
        top: 0%;
        left: -100%;
        opacity: 1;
    }
}

#galerie-liste > li > a > .mask.out-top
{
    -webkit-animation-name: out-top;
    animation-name: out-top;
}

#galerie-liste > li > a > .mask.out-bottom
{
    -webkit-animation-name: out-bottom;
    animation-name: out-bottom;
}

#galerie-liste > li > a > .mask.out-right
{
    -webkit-animation-name: out-right;
    animation-name: out-right;
}

#galerie-liste > li > a > .mask.out-left
{
    -webkit-animation-name: out-left;
    animation-name: out-left;
}

#galerie-liste > li img
{
    z-index: 1;
    position: absolute;
    object-fit: contain;
    top: 50%;
    left: 50%;
    margin: 0;
    max-height: 100%;
    max-width: 100%;
    transform: translate(-50%, -50%);
}

/*Blog*/
.blog-categories
{
    margin-bottom: 10px;
}
.blog-categories > ul
{
    display: inline-block;
    list-style: none;
    margin: 0;
    padding: 0;
}
.blog-categories > ul > li
{
    display: inline-block;
    margin: 0;
    padding: 0 2px 2px 0;
}
.blog-categories > ul > li > a
{
    display: block;
    font-size: 12px;
    text-decoration: none;
    background-color: #16227e;
    padding: 1px 5px;
    border-radius: 3px;
    color: #FFF;
}
.blog-articles,
.blog-articles *
{
    box-sizing: border-box;
}
.blog-articles
{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-gap: 15px;
    margin: 0 0 15px;
}
.blog-article
{
    position: relative;
    overflow: hidden;
    border-radius: 20px;

    height: 220px;

    background-color: #FFF;
    box-shadow: 1px 1px 4px rgba(0,0,0,0.3);
}
.blog-article::after
{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(transparent 50%, rgba(0,0,0,0.5));
    z-index: 2;
}
.blog-article > img
{
    width: 100%;
    height: 100%;
    transform: scale(1);
    z-index: 1;
    margin: 0!important;
    transition: ease-in-out 500ms transform;
    object-fit: cover;
}
.blog-article:hover > img
{
    transform: scale(1.2);
}
.blog-article > span
{
    position: absolute;
    display: block;
    padding: 5px;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 10px;
    color: #FFF;
    z-index: 3;
    font-size: 17px;
}

.blog-article-couverture
{
    position: relative;
    border-radius: 20px;
    background-color: #CCC;
    height: 400px;
    overflow: hidden;
    margin-top: 160px;
}
.blog-article-couverture::after
{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(transparent 50%, rgba(0,0,0,0.5));
    z-index: 2;
}
.blog-article-couverture > a,
.blog-article-couverture > a:focus
{
    position: absolute;
    left: 20px;
    top: 20px;
    z-index: 3;
    padding: 5px 15px!important;
    margin: 0!important;
}
.blog-article-couverture > img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    margin: 0!important;
}
.blog-article-couverture > div 
{
    position: absolute;
    width: 50%;
    left: 20px;
    bottom: 20px;
    z-index: 3;
}
.blog-article-couverture > div > h1
{
    color: #FFF;
    text-align: left;
}
.blog-article-couverture > div > span.blog-article-categorie,
.blog-articles .blog-article-categorie
{
    display: inline-block;
    color: #FFF;
    padding: 1px 5px;
    background-color: #16227e;
    font-size: 12px;
    border-radius: 3px;
}
.blog-article-couverture > div > time,
.blog-article-date
{
    padding: 0 5px;
    color: #FFF;
    font-size: 12px;
}
.blog-article-couverture > span
{
    position: absolute;
    right: 5px;
    bottom: 5px;
    color: #CCC;
    font-size: 15px;
    background-color: #FFF;
    padding: 5px;
    border-radius: 20px;
    z-index: 3;
}
.blog-article-couverture > span > ul
{
    display: inline-block;
    margin: 0;
    padding: 0;
    list-style: none;
}
.blog-article-couverture > span > ul > li
{
    display: inline-block;
    margin: 0;
    padding: 2px;
}
.blog-article-couverture > span > ul > li > a
{
    display: block;
    padding: 2px;
    font-size: 17px;
    color: #CCC;
}
.blog-article-couverture > span > ul > li > a:hover
{
    color: #16227e!important;
}
.blog-article-accroche
{
    font-weight: bold;
    padding: 20px 0;
}
.blog-article-sommaire
{
    border: 1px solid #CCC;
    border-left: 3px solid #16227e;
    border-radius: 0 20px 20px 0;
    padding: 20px;
    margin: 20px 0;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.2);
}
.blog-article-sommaire .titre
{
    font-size: 17px;
    font-weight: bold;
}
.blog-article-sommaire li
{
    padding: 5px 0;
}
.blog-article-sommaire a
{
    text-decoration: none;
}
.blog-article-paragraphe
{
    padding: 20px 0;
}

/*FAQ*/
#faq
{
    list-style: none;
    margin: 0;
    padding: 0;
}

#faq > li
{
    background-color: #F2F2F2;
    margin: 1px;
    padding: 5px;
}

#faq > li > .question
{
    padding: 5px;
    cursor: pointer;
}

#faq > li > .reponse
{
    padding: 5px;
    font-style: italic;
}




#form_connexion
{
    display: block;
    max-width: 500px;
    margin: 0 auto;
}



#form_inscription
{
    display: block;
    max-width: 500px;
    margin: 0 auto;
    padding: 10px;
    border: 1px solid #E1E1E1;
    background-color: #FFF;
    box-shadow: 1px 2px 2px 0 rgba(0, 0, 0, 0.2);
    border-radius: 3px;
}

#type-compte
{
    margin: 0 0 10px;
}

#type-compte a
{
    display: block;
    margin: 0 auto 10px;
    padding: 10px;
    max-width: 250px;
    text-decoration: none;
    text-align: center;
    background-color: #FFF;
    border: 1px solid #E1E1E1;
    box-shadow: 1px 2px 2px 0 rgba(0, 0, 0, 0.2);
    border-radius: 3px;
}

#type-compte a:hover
{
    background-color: rgba(104, 217, 56, 0.2);
}

#type-compte a .icone
{
    margin: 20px auto;
    color: #FFF;
    background-color: #0075b5;
    border-radius: 100%;
    width: 70px;
    height: 70px;
    padding: 10px 5px;
}

#type-compte a .titre
{
    font-size: 16px;
    font-weight: 700;
}

#charte > div
{
    margin-bottom: 30px;
}

#mentions
{
    font-size: 0;
}

#mentions h2,
#mentions h3
{
    margin: 0;
    padding: 0 0 10px;
    text-align: left;
    text-align: center;
}

#mentions > div
{
    margin: 10px 0 10px;
    padding: 10px;
    font-size: 14px;
}

#mentions > div:first-child,
#mentions > div:first-child+div
{
    display: inline-block;
    width: calc(50% - 5px);
    margin: 10px 0 0;
    min-height: 225px;
    vertical-align: top;
}

#mentions > div:first-child
{
    margin-right: 5px;
}

#mentions > div:first-child+div
{
    margin-left: 5px;
}



/*AUTRES SLIDERS*/
.slider_galerie
{
    clear: both;
}

.slider_galerie > div:first-child
{
    display: inline-block;
    width: 50%;
    margin-right: auto;
    margin-left: auto;
    overflow: hidden;
    vertical-align: top;
    background-color: #D3D3D3;
}

.slider_galerie > div:first-child > ul
{
    position: relative !important;
    top: 0 !important;
    width: 100%;
    height: 100% !important;
    margin: 0;
}

.slider_galerie > div:first-child > ul > li
{
    position: relative !important;
    top: 0 !important;
    width: 100%;
    height: 100% !important;
    margin: 0;
    padding-top: 75%;
}

.slider_galerie > div:first-child > ul > li > a
{
    display: block;
    width: 100%;
    height: 100% !important;
}

.slider_galerie > div img
{
    margin: 0 !important;
    vertical-align: middle;
}

.slider_galerie > div:first-child > ul > li > a > img
{
    position: absolute;
    top: 50%;
    left: 50%;
    width: initial !important;
    height: initial !important;
    max-height: 100%;
    max-width: 100%;
    transform: translate(-50%, -50%);
}

.slider_galerie > div:first-child+div
{
    display: inline-block;
    position: relative;
    width: 50% !important;
    height: 100% !important;
    vertical-align: top;
    background-color: #EAEAEA;
}

.slider_galerie > div:first-child+div > div
{
    padding-top: 75%;
}

.slider_galerie > div:first-child+div > div > div
{
    position: absolute !important;
    top: 0;
    height: 100% !important;
    padding: 2px;
    overflow: auto !important;
    white-space: initial !important;
}

.slider_galerie > div:first-child+div > div > div > img
{
    height: 100px !important;
    margin: 2px !important;
}

.slider_galerie .boutonPagination.select
{
    background-color: #f3f2f2 !important;
}

.slider_galerie > div.CJSlider > div:nth-child(2),
.slider_galerie > div.CJSlider > div:nth-child(3)
{
    position: absolute;
    top: 50%;
    left: 10px;
    text-shadow: 0 0 1px rgba(0, 0, 0, 0.8);
    font-size: 30px;
    color: #FFF;
    opacity: 0.7;
    transform: translateY(-50%);
    cursor: pointer;
}

.slider_galerie > div.CJSlider > div:nth-child(3)
{
    right: 10px;
    left: initial;
}



.slider_galerie_miniatures > span
{
    display: inline-block;
    position: relative;
    width: 90px;
    height: 90px;
    margin: 0;
    margin: 1px;
    padding: 0;
    overflow: hidden;
    vertical-align: middle;
}

.slider_galerie_miniatures > span > img
{
    position: absolute;
    top: 50%;
    left: 50%;
    width: initial !important;
    height: initial !important;
    max-height: 170% !important;
    max-width: 210% !important;
    transform: translate(-50%, -50%);
}



.nuage
{
    text-align: justify;
    padding: 5px 0;
}
.nuage h2,
.nuage h3
{
    text-transform: initial;
    margin-bottom: 20px;
}


/*FOOTER*/
#footer
{
    position: relative;
    color: #fff;
    background-color: #3D3D3D;
}
#footer .titre
{
    font-size: 20px;
}
#footer .texte
{
    font-weight: 200;
}
#footer > div
{
    position: relative;
}
#footer a
{
    text-decoration: none;
    font-weight: 200;
}
#footer a:hover
{
    text-decoration: underline;
}
#footer .reseaux a
{
    text-decoration: none;
    font-size: 20px;
    display: inline-block;
    padding: 0 2px;
    background-color: #FFF;
    color: var(--color-main);
    border-radius: 13px;
    transition: 200ms ease-in-out background, 200ms ease-in-out color;
}
#footer .reseaux a:hover
{
    background-color: var(--color-main);
    color: #FFF;
}
#footer ul
{
    list-style: none;
    margin: 0;
    padding: 0;
}
#footer ul > li
{
    margin: 0;
    padding: 0;
}

#footer > div.container:first-of-type + div
{
    background-color: #323232;
}

#footer #infos_site
{
    padding: 10px 0;
    color: #C9C9C9;
}

#footer #infos_complementaires
{
    position: absolute;
    top: 0;
    right: 20px;
    padding: 10px 0;
}
#footer #infos_complementaires a 
{
    color: #C9C9C9;
    font-weight: 400;
}
#footer input[type='text']
{
    background-color: #323232;
    color: #FFF;
    border: 0;
}
#footer .bouton
{
    border-radius: 5px;
    padding: 10px 15px 11px;
}
/*
#footerTop
{
    padding: 20px 0;
}

#footerTop .footerTitre
{
    font-weight: bold;
    text-align: center;
    font-size: 20px;
}

#footerTop .footerDesc
{
    margin-top: 30px;
}

#footerTop .footerFB
{
    text-align: center;
}

#footerTop .footerFB > i
{
    font-size: 30px;
    color: #4464AA;
}

#footerTop #footerLien
{
    margin: 0 !important;
    padding: 0;
    list-style: none;
}

#footerTop #footerLien > li > a
{
    text-decoration: none;
}*/

/*#slideshow_image_accueil
{
    margin: 50px 0;
    padding: 0;
    text-align: center;
}

#slideshow_image_accueil img
{
    margin: 0 !important;
}

#slideshow_image_accueil li
{
    margin: 0 10px !important;
}

#slideshow_avis
{
    margin: 0 !important;
    padding: 0 !important;
}

#slideshow_avis li
{
    margin: 20px 0;
}*/

.background_article .slick-slider-contenu
{
    margin: auto;
    max-width: none;
    margin-top: 50px;
    overflow: unset;
}

.slick-slider-contenu img
{
    width: 250px;
    height: 350px;
    object-fit: contain;
    margin: auto !important;
}

.clair .slick-prev:before,
.clair .slick-next:before
{
    color: #000;
}

.sombre .slick-prev:before,
.sombre .slick-next:before
{
    color: #fff;
}
ul.slick-slider
{
    margin: 0;
    padding: 0;
}
.slick-prev
{
    left: -15px;
}
.slick-next
{
    right: -8px;
}

/*.galerieaccueils
{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 150px);
    grid-column-gap: 10px;
    grid-row-gap: 10px;
}

.galerieaccueils > div:first-child
{
    grid-area: 1 / 1 / 3 / 2;
    width: 100%;
    height: 100%;
}

.galerieaccueils > div:nth-child(2)
{
    grid-area: 1 / 2 / 2 / 3;
    width: 100%;
    height: 100%;
}

.galerieaccueils > div:nth-child(3)
{
    grid-area: 2 / 2 / 3 / 3;
    width: 100%;
    height: 100%;
}

.galerieaccueils > div:last-child
{
    grid-area: 1 / 3 / 3 / 4;
    width: 100%;
    height: 100%;
}

.galerieaccueils img
{
    position: absolute;
    margin: 0 !important;
    max-height: 100%;
    height: 100%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.galerieaccueils > div
{
    position: relative;
    overflow: hidden;
}*/

/*#slideshow_avis .boxAvis > div:first-child
{
    display: inline-block;
    width: 90px;
    font-size: 40px;
    text-align: center;
    vertical-align: middle;
    color: #3493DF;
}

#slideshow_avis .boxAvis > div:last-child
{
    display: inline-block;
    width: calc(100% - 95px);
    vertical-align: middle;
}*/


.background_article
{
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    position: relative;
    background-size: cover;
    background-position: 50% 50%;
}

.background_article.img-true
{
    transform: translateX(-50%) !important;
    padding: 35px 0 !important;
    min-height: 300px !important;
}

.background_article.img-true > .contenu-article
{
    margin: auto;
    transform: translate(0%) !important;
}

/*.CJEditeur_body ul,
.CJEditeur_body ol,
.contenu-article ul,
.contenu-article ol{
	list-style: circle;
}*/

.CJEditeur_body ul li,
.CJEditeur_body ol li,
.contenu-article ul li,
.contenu-article ol li
{
    margin-bottom: 10px;
}

.CJEditeur_body ul,
.CJEditeur_body ol,
.contenu-article ul,
.contenu-texte ul,
.contenu-conclusion ul,
.contenu-article ol,
.contenu-texte ol,
.contenu-conclusion ol
{
    display: table;
    padding-left: 20px;
}

.contenu-article td
{
    padding: 20px 10px;
    -webkit-backdrop-filter: brightness(0.95);
    backdrop-filter: brightness(0.95);
}

.contenu-article table,
.contenu-article table td
{
    border: 1px solid var(--color-main)!important;
}


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

.avantage
{
    border-radius: 10px;
    border: 2px solid var(--color-main);
    text-align: center;
    padding: 50px 2px;
    width: 19%;
}

.avantage > i
{
    color: var(--color-main);
    font-size: 50px;
    margin-bottom: 30px;
}

.avantage > h3
{
    font-weight: bold;
}

.avantage > p
{
    margin-bottom: 0;
}

/* Contact */
.container-fixe
{
    position: sticky;
    bottom: 8px;
    left: calc(100% - 55px);
    margin-bottom: 8px;
    background-color: #ffffff;
    border-radius: 30px;
    width: 48px;
    border: 2px solid var(--color-main);
    z-index: 8;
}

.container-fixe > a
{
    text-decoration: none;
    padding: 25px 0;
    /* transform: rotate(90deg); */
    display: block;
    color: var(--color-main);
    font-size: 16px;
    text-align: center;
    /* margin: 40px 0; */
}


/* Avis */
.slick-initialized .slick-slide
{
    margin: 5px 0;
}


.bloc {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 10px;
    border-radius: var(--radius);
    border: 1px solid rgb(2 65 120 / 13%);
    margin: 10px 0;
    background: rgb(2 65 120 / 13%);
}

.avis-liste {
    margin: 10px 0;
    column-count: 4;
    column-gap: 10px;
    padding: 0;
}

.avis {
    display: inline-block;
    width: 100%;
    padding: 10px;
    border-radius: var(--radius);
    border: 1px solid rgb(2 65 120 / 13%);
    margin: 10px 0;
    background-color : #avis>li:nth-child(odd):before,#avis>li:nth-child(odd):before,
}

.avis .titre {
    padding: 5px 0;
    font-weight: 700;
    text-align: center;
    font-weight: 700;
}

.avis .date {
    padding: 5px 0;
    font-style: italic;
    text-align: center;
}

.avis .stars {
    padding: 5px 0;
    font-size: 20px;
    margin: 8px 0;
    text-align: center;
    transition: all 0.3s ease;
}

i.fa-star {
    color: var(--color-main);
}

.avis .message {
    padding: 5px 0;
    font-size: 14px;
    margin: 8px 0;
}

.box_avis
{
    box-shadow: 0px 0px 10px -4px rgba(0, 0, 0, 0.25);
    padding: 5px;
}

#avis
{
    list-style: none;
    margin: 0;
    padding: 0;
}

#avis > li
{
    position: relative;
    margin: 10px 0;
    padding: 10px;
    background-color: #f1f1f1;
    border-radius: 10px;
}

#avis > li:nth-child(odd):before,
#avis > li:nth-child(even):before
{
    content: "";
    position: absolute;
    bottom: 10px;
    left: -10px;

    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7.5px 10px 7.5px 0;
    border-color: transparent #f1f1f1 transparent transparent;
}

#avis > li:nth-child(even):before
{
    left: inherit;
    right: -10px;
    border-width: 7.5px 0 7.5px 10px;
    border-color: transparent transparent transparent #f1f1f1;
}

#avis > li .titre
{
    font-weight: normal;
    font-size: 20px;
    color: var(--color-main);
}

#avis > li .date
{
    font-style: italic;
    font-size: 11px;
}

#avis > li .message
{
    display: block;
    margin-top: 10px;
}

#avis > li .message > .nom
{
    display: block;
    font-weight: bold;
    margin-top: 10px;
}

#avis > li .message > div > div,
#avis > li .message > div > div > *:first-child,
#avis > li .message > div > div > *:last-child
{
    display: inline;
}

#avis > li .reponse
{
    border-top: 1px solid var(--color-main);
    background-color: var(--color-main);
    /* opacity: 0.8; */
    margin-top: 10px;
    padding: 10px;
    border-radius: 0 0 8px 8px;
    color: white;
}

#avis > li .reponse > div:first-child
{
    display: block;
    font-weight: bold;
    margin-bottom: 10px;
}

.note
{
    font-size: 15px;
    margin: 8px 0;
}

.note > span
{
    display: inline-block;
    padding: 0 5px;
}

.note > i
{
    margin: 0 1px;
    font-size: 18px;
}

.notes > div > span
{
    display: inline-block;
    width: 150px;
}

i.fa-star
{
    color: var(--color-main);
}

/*Divers*/
#tarteaucitron #tarteaucitronServices .tarteaucitronMainLine
{
    background-color: #000 !important;
}

.slick-track
{
    display: flex;
    align-items: center;
}

.slick-slide
{
    float: none;
}

.slick-slide > div,
.slick-slide a
{
    text-align: center;
}

.slick-slide img
{
    margin: auto;
    max-width: 350px;
    max-height: 350px;
    width: initial !important;
    height: initial !important;
}

/*ARIANE*/
.ariane
{
	margin: 20px 0;
	padding: 0;	
}
.ariane > li
{
	display: inline-block;
	margin: 0;
	padding: 10px 3px;
	vertical-align: middle;

	font-style: normal;
	font-weight: 300;
	font-size: 14px;
	line-height: 14px;
	color: #86888B;
}
.ariane > li:not(:first-child)::before
{
  content: "\f105";
  font-family: "Font Awesome 5 Pro";
  font-weight: 300;
  margin-right: 5px;
  color: #BABDBE;
}
.ariane a
{
	font-style: normal;
	font-weight: 500;
	font-size: 14px;
	line-height: 14px;
	color: #34393C;
	text-decoration: none;
}

#form_document_otp
{
    max-width: 300px;
    margin: 0 auto;
    text-align: center;
}
#form_document_otp input[type='text']
{
    font-size: 30px;
    width: 40px;
    background-color: rgb(2 65 120 / 13%);
    border: 0;
    margin: 10px;
    text-align: center;
    font-weight: 700;
}
#documents
{
    list-style: none;
    margin: 0 0 20px;
    padding: 0;
}
#documents > li
{
    padding: 5px;
    margin: 0 0 5px;
    border: 1px solid rgb(2 65 120 / 13%);
    border-radius: var(--radius);
    transition: 200ms background-color ease-in-out;
}
#documents > li > div
{
    vertical-align: middle;
}
#documents > li:hover
{
    background-color: #f1f1f1;
}





.onglets
{
    display: flex;
    justify-content: space-between;
    height: 60px;
    gap: 5px;
}
.onglets > a
{
    flex: 1;
    height: 100%;
    text-align: center;
    background-color: #F0F0F0;
    padding:  5px;

    align-items: center;
    display: flex;
    justify-content: center;
    transition: color 0.3s ease;

    cursor: pointer;
}
.onglets > a:hover
{
    color: var(--color-main);
}
.onglets > a.select
{
    color: var(--color-main);
    background-color: initial;
}
.onglets + div > div:not(:first-child)
{
    display: none;
}

.prix
{
    font-size: 25px;
    color: var(--color-main);
}

#formations-dates
{
    padding-top: 0;
}
#formations-dates ul
{
    list-style: none;
    width: 100%;
    margin: 0;
    padding: 0;
}
#formations-dates ul > li
{
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 0 10px;
}
#formations-dates ul > li > div:first-child
{
    flex: 1;
}
#formations-dates ul > li:hover
{
    background-color: rgb(from var(--color-main) r g b / 0.2);
    border-radius: 100vh;
}
#formations-dates .card
{
    margin-top: 15px;
}

.formation
{
    display: grid;
    grid-template-columns: 1fr 370px;
    gap: 95px;
    max-width: 1200px;
    margin: 0 auto;
}
.formation-entete
{
    
}
.formation-entete .contenu
{

}

.ui-widget-header .ui-icon
{
    background-image: url(../js/jquery/theme/images/ui-icons_ffffff_256x240.png);
}
.ui-dialog
{
    padding: 0;
    border: 0;
    border-radius: 0;
    box-shadow: 0 0 2px rgba(0,0,0,0.4);
    z-index: 100;
}
.ui-widget-header
{
    background: none;
    border: 0;
    border-radius: 0;
    background-color: #2e3540;
}
.ui-dialog-title
{
    color: #FFF;
    border: 0;  
}
.ui-state-hover, 
.ui-widget-content .ui-state-hover, 
.ui-widget-header .ui-state-hover, 
.ui-state-focus, 
.ui-widget-content .ui-state-focus, 
.ui-widget-header .ui-state-focus
{
    border: 0;
    background: none;
}
.ui-dialog .ui-dialog-titlebar-close
{
    color: transparent;
    background: none;
    border: 0;
}
.ui-dialog .ui-dialog-titlebar-close:hover, 
.ui-dialog .ui-dialog-titlebar-close:focus
{
    padding: 1px;
}
.ui-dialog .ui-dialog-titlebar-close span
{
    left: 0;
    top: 0;
}
.ui-dialog .ui-button-text
{
    padding: 8px 15px;
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default
{
    background: none;
    border: 0;
}
.ui-widget-overlay
{
    background: none;
    background-color: rgba(0, 0, 0, 0.8);
    position: fixed;
    z-index: 99;
    backdrop-filter: blur(3px);
    opacity: 1;
    filter: grayscale(1);
}

/*Tablettes et mobiles*/
@media screen and (max-width:860px)
{
    .avis-liste {
        column-count: 1;
    }

    .galerie_pin > div
    {
        column-count: 2 !important;
    }

    .flex
    {
        flex-wrap: wrap;
    }

    .avantages_container
    {
        flex-direction: column;
        align-items: center;
    }

    .avantage
    {
        width: 80%;
        margin: 10px 0;
    }

    .row > *
    {
        display: block !important;
        width: initial !important;
        padding: initial !important;
    }

    #slider_accueil
    {
        margin-top: 129px;
    }

    .slide-contenu .row > .col-6
    {
        width: 45% !important;
        display: inline-block !important;
    }

    .slide-contenu .btnUrgent,
    .btnUrgent:active,
    .btnUrgent:focus
    {
        font-size: 12px;
        margin: 10px;
        padding: 5px;
    }

    .slide-contenu button,
    .slide-contenu button:active
    {
        font-size: 12px !important;
        margin: 10px !important;
        padding: 5px !important;
    }

    .galerieaccueils,
    .galerieaccueils > div
    {
        display: block !important;
    }

    .galerieaccueils > div
    {
        height: 150px !important;
        width: 100% !important;
        margin: 5px 0;
    }

    #slider_accueil .slide-contenu .slide-titre,
    #slider_accueil .slide-contenu .slide-texte
    {
        font-size: 17px;
    }

    .background_article.img-true .contenu-article
    {
        transform: translateX(0%) !important;
    }

    #header_top > div > a.bouton:first-child > span
    {
        display: none;
    }
    #header_top > div > a.bouton:first-child > i
    {
        margin-right: 0;
    }

    #header
	{
		position: relative;
	}

    #slider_accueil .scroll_slide-link
    {
        display: none;
    }

    #slider_accueil > ul > li
    {
        padding-top: 50%;
    }

    #header > .container > .fadeInDown
    {
        -webkit-animation-name: initial;
        animation-name: initial;
    }

    #header_top > .container > span:first-child
    {
        display: none;
    }

    #site
    {
        padding-top: 0;
    }
    .page-accueil_lp #site
    {
        padding-bottom: 100px;
    }
    #content,
    #slider_accueil
    {
        margin-top: 0!important;
    	padding-top: 0!important;
    }

    #site > #header + svg,
    #site > #header + svg + svg
    {
        width: 300px!important;
        height: 300px!important;
    }


    .burger
    {
        display: inline-flex;
        z-index: 2;
        position: absolute;
        top: 0;
        right: 0;
        width: 35px;
        height: 80px;
        margin: 8px 20px;
        text-align: left;
        cursor: pointer;
    }
    .burger > div
    {
        width: 100%;
        height: 4px;
        border-radius: 5px;
        background: var(--color-main);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transition: all 0ms 300ms;
    }
    .burger > div::before
    {
        content: '';
        position: absolute;
        bottom: 13px;
        background: var(--color-main);
        width: 100%;
        height: 4px;
        border-radius: 5px;
        transition: bottom 300ms 300ms ease, transform 300ms ease, background 300ms ease;
    }
    .burger > div::after
    {
        content: '';
        position: absolute;
        top: 13px;
        background: var(--color-main);
        width: 100%;
        height: 4px;
        border-radius: 5px;
        transition: top 300ms 300ms ease, transform 300ms ease, background 300ms ease;
    }
    .nav-open
    {
        overflow: hidden;
    }
    .nav-open .burger > div::after
    {
        top: 0;
        transform: rotate(45deg);
        transition: top 300ms ease, transform 300ms 300ms ease, background 300ms ease;
    }
    .nav-open .burger > div
    {
        background: transparent;
    }
    .nav-open .burger > div::before
    {
        bottom: 0;
        transform: rotate(-45deg);
        transition: bottom 300ms ease, transform 300ms 300ms ease, background 300ms ease;
    }

    #menu > ul
    {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        background-color: rgba(255,255,255,0.85);
        backdrop-filter: blur(7.5px);
        transition: ease-in-out 300ms opacity, ease-in-out 300ms padding, ease-in-out 300ms height;
    }

    body.nav-close #menu > ul
    {
        height: 0%;
        padding: 0;
        overflow: hidden;
        opacity: 0;
    }

    body.nav-open #menu > ul
    {
        height: 100vh;
        padding: 140px 40px 0;
        overflow: auto;
        opacity: 1;
    }
    body.nav-open #logo
    {
        z-index: 0;
    }
    body.nav-open #header > .card
    {
        backdrop-filter: none;
    }

    #menu > ul > li
    {
        display: block;
        border-bottom: 1px solid rgba(0, 0, 0, 0.5);
        text-align: left;
        height: initial;
    }
    #menu > ul > li:first-child > a,
    #menu > ul > li > a
    {
        display: block;
        padding: 20px 10px;
        font-size: 20px;
    }

    #menu > ul > li > ul,
    #menu > ul > li > a > .fa-angle-down
    {
        display: none;
    }

    #menu > ul > li.sous-menu > a
    {
        padding: 20px 10px;
    }

    #menu > ul > li.sous-menu.lang
    {
        border-bottom: 0;
    }
    #menu > ul > li.sous-menu.lang ul
    {
        display: inline-block;
        max-height: initial;
        box-shadow: initial;
        background-color: initial;
        border-radius: initial;
    }
    #menu > ul > li.sous-menu.lang ul > li
    {
        display: inline-block;
    }
    #menu > ul > li.sous-menu.lang > a
    {
        display: none;
    }

    .contenu-article.hero.image
    {
        background-attachment: initial !important;
    }


    #galerie-liste > li
    {
        width: 75%;
        padding-top: 50%;
    }

    .absolute.left,
    .absolute.right
    {
        position: relative !important;
        width: 100%;
        height: inherit;
    }



    #page-coordonnees iframe
    {
        width: 100%;
    }


   /* #page-tarifs
    {
        height: inherit;
        background-size: cover;
    }



    #page-horaires
    {
        height: initial;
    }

    #page-horaires .googlemapssearch
    {
        width: 100% !important;
    }

    .biseau_left:before
    {
        clip-path: initial;
        top: initial;
        margin-left: initial;
    }

    .highlight_bloc h2
    {
        padding-top: 0;
    }



    #page-partenaires .container
    {
        display: block;
        height: initial !important;
    }
*/


    #footer > div > div #infos_site,
    #footer > div > div #infos_complementaires
    {
        display: block;
        position: relative;
        right: inherit;
        left: inherit;
        padding: 5px;
        text-align: center;
    }

    iframe
    {
        width: 100%;
    }

    #content .contenu-accroche img,
    #content .contenu-texte img,
    #content .contenu-article img,
    #content .contenu-conclusion img
    {
        height: initial !important;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .contenu-article td
    {
        padding: 3px;
    }

    .ariane > li:first-child > a > i:before
	{
		content: "\f053";
		margin-right: 5px;
	}
	.ariane > li:first-child > a > i:after
	{
		content: "Accueil";
	    font-family: "Poppins", sans-serif;
        font-weight: 500;
        font-style: normal;
	    font-size: 14px;
	    line-height: 14px;
	    color: #34393C;
	    text-decoration: none;
	}
	.ariane > li:not(:nth-last-child(2))
	{
		display: none;
	}
	.ariane > li:not(:first-child):before
	{
		content: "\f053";
	}

    .product-page,
    .cart-container
    {
        flex-direction: column;
    }
    .product-image
    {
        max-width: 100%;
    }
    .cart-summary
    {
        width: 100%;
    }
    .cart-item
    {
        display: block;
    }

    .cart-item:first-child
    {
        display: none;
    }
    .cart-item
    {
        padding: 10px 0;
        position: relative;
    }
    .cart-item:first-child + div
    {
        padding-top: 0;
    }
    .cart-item:last-child
    {
        padding-bottom: 0;
    }
    .cart-item > div
    {
        display: inline-block;
        width: initial;
    }
    .cart-item > .cart-product-price
    {
        display: none;
    }
    .cart-item > .cart-product-info
    {
        display: block;
        width: initial;
        margin-bottom: 10px;
        padding-right: 25px;
    }
    .cart-item > .cart-remove
    {
        position: absolute;
        top: 10px;
        right: 0;
    }

    .delivery-box
    {
        width: 100%;
    }
}

@media screen and (max-width:430px)
{
    h1
    {
        font-size: 30px;
        padding: 15px 15px;
    }

    .triangle
    {
        scale: 0.5;
        translate: -95px;
    }
    .triangle1
    {
        scale: 0.6!important;
        translate: 55px!important;
    }
    .triangle2
    {
        scale: 0.4;
    }


    #slider_accueil > ul > li
    {
        padding-top: 70%;
    }



    .bloc3d > li
    {
        display: block;
        width: 100%;
        margin: 15px auto;
    }



    fieldset > ul > li,
    fieldset > .contenu > ul > li
    {
        display: block;
        width: 100%;
    }

    .liste
    {
        width: 100%;
    }

    .blog-articles
    {
        display: grid;
        grid-template-columns: 1fr;
        grid-gap: 15px;
    }

    #page-partenaires a > img
    {
        max-width: 100%;
    }

    #page-partenaires a > img
    {
        max-width: 100%;
    }

    .formation-entete .contenu > div:first-child
    {
        left: initial!important;
        transform: initial!important;
        margin: 30px 0;
    }
    .formation-entete .contenu > div:first-child + div
    {
        flex-direction: column;
    }



    /*#footer > div > div
    {
        display: block;
        position: relative !important;
        top: initial !important;
        right: initial !important;
        left: initial !important;
        text-align: center;
    }*/
    #footer
    {
    }
    #footer svg
    {
        scale: 0.5;
    }
    #footer svg:first-child
    {
        translate: -80px 0;
    }
    #footer svg:first-child + svg
    {
        translate: -100px 0;
    }
    #footer svg:first-child + svg + svg
    {
        translate: 100px 0;
    }


    #mentions > div:first-child,
    #mentions > div:first-child+div
    {
        display: block;
        width: initial;
    }

    .blog-article-couverture
    {
        margin-top: 40px;
    }

    .formation
    {
        display: block;
    }
    .formation > div:first-child + div > div:first-child
    {
        z-index: 9;
    }
    .formation > div:first-child + div > div:first-child > div:first-child
    {
        position: fixed;
        bottom: 0;
        width: 100%;
        z-index: 998;
        box-shadow: 0 0 11px 0 rgba(0,0,0,0.4);
    }
    .formation > div:first-child + div > div:first-child > div:first-child > div:first-child >  div:first-of-type
    {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 0 20px!important;
    }

    .article-formation > div:first-child
    {
        display: block!important;
    }
    .article-formation > div:first-child > div:first-child + div
    {
        display: block!important;
        padding: 10px;
        text-align: center;
    }
    .article-formation > div:first-child > div:first-child + div + div
    {
        display: block!important;
        text-align: right;
    }
    .article-formation > div:first-child + div
    {
        padding-top: 15px;
    }
    #total_reduction input
    {
        width: 100%;
    }
    #total_ht > span:first-child,
    #total_tva > span:first-child,
    #total_ttc > span:first-child,
    #total_reduction > span:first-child
    {
        white-space: nowrap;
    }

    img
    {
        max-width: 100%;
    }

    #footer > div:first-of-type > div:first-child
    {
        flex-direction: column;
    }

    .container-fixe
    {
        display: none;
    }
}

.triangle
{
    animation: float 4s ease-in-out infinite;
    transform-origin: center;
}

@keyframes float
{
  0% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-5px) rotate(1deg);
  }
  100% {
    transform: translateY(0) rotate(0deg);
  }
}

.triangle2
{
    animation: float2 5s ease-in-out infinite;
    transform-origin: center;
}

@keyframes float2 {
  0% {
    transform: translate(0, 0) rotate(0deg);
  }
  50% {
    transform: translate(5px, -6px) rotate(-1deg);
  }
  100% {
    transform: translate(0, 0) rotate(0deg);
  }
}