:root {
    --black: #000;
    --white: #fff;
    --primary: #198b3a;
    --primary-light: #2eb353;
    --primary-dark: #105c26;
    --second: #005187;
    --third: #2C7A99;
	--mainfont: "Playfair Display", serif;
	--secondfont: "Poppins", sans-serif;
    --back:#093516;
    --gris: #616468;
	--shadow-box: 0px 0px 15px 5px rgba(0,0,0,0.1);
	--shadow-text: 0px 0px 15px rgba(0,0,0,0.1);
	--grey1: rgba(0,0,0,0.03);
	--grey2: rgba(0,0,0,0.06);
	--grey3: rgba(0,0,0,0.09);
	--grey4: rgba(0,0,0,0.12);
	--spacing-size: 50px;
	--radius: 20px;
}

body {
    padding: 0px;
    margin: 0px;
  font-family: var(--mainfont);
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
    font-weight: normal;
    overflow-x: hidden;
 

}

ul {
    padding: 0px;
    margin: 0px;
}

a, a:hover {
    text-decoration: none;
}

.header {
    width: 100%;
    position: relative;
    margin: 0;
    z-index: 3;
    height:700px;
    overflow: hidden;
}
.header .overlay {
    position:absolute;
    width:100%;
    height:100%;
    background:black;
    opacity:.5;
    top:0;
    left:0;
}
.cta-resa {
    position:fixed;
    background:var(--primary);
    z-index:8;
    text-align:center;
    padding:25px;
    right:0;
    top:50%;
    transition: all .3s ease;
}
.cta-resa h2 {
    margin:0;
}
.cta-resa:hover {
    background:var(--primary-dark);
}
.cta-resa h2 {
    color:white;
    font-size:20px;
}

@media (max-width:762px) {
    .cta-resa {
        bottom:0;
        right:unset;
        width:100%;
        top:unset;
    }
}

h2 {
    color:var(--primary);
    font-weight:700;
    font-size:40px;
}
h3 {
    color:var(--second);
    font-weight:600;
    font-size:24px;
}

.header .d-flex {
   
height: 100%;
   
justify-content: space-between;
   
width: 100%;
   
align-items: center;
   
overflow: hidden;
}



.banner {
    position: relative;
    z-index: 0;
}

.block-banner {
    overflow: hidden;
    position: relative;
    max-height: 570px;
    border-radius: 0px 40px 40px 40px;
}
.banner {overflow:hidden;width: 100%;}
.page .banner{
    height: 400px;
}

.banner >div{
    animation: zoom 8s ease infinite alternate;
    background: url(../images/banner.jpg) no-repeat;
    background-position: top;
    background-size: cover;
    transform: scale(1.1);
    height: 100%;
    width: 100%;
    position: relative;
}


@keyframes zoom {
    0% {
        transform: scale(1.1);
    }

    100% {
        transform: scale(1.0);

    }
}

.banner img {opacity: 0;max-width: 100%;display: block;}

.logo {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    z-index: 3;
    flex-direction:column;
    color:white;
    text-align:center;
}
.logo h2, .logo h3 {
    color:white;
}

.logo a {
    margin-bottom: 30px;
}

.logo img {
    position: relative;
    z-index: 1;
    max-width: 100%;
    width:400px;
}



/* end header */




/* menu */

.navbar-nav .nav-item {
    display: block;
    transition: 0.5s ease all;
    padding: 0px 23px;
    padding-left: 0;
}
.navbar-nav .nav-item:hover{
}

.dropdown-item {
    transition: 0.5s ease all;
    color: #fff;
    padding: 10px 20px;
    font-size: 17px;
    font-weight: 500;
}

.dropdown-item:hover {
    background: var(--second);
    color: #fff;
}

.navbar-nav .nav-item.dropdown:hover>.dropdown-menu {
    display: block;
}

.dropdown-menu {
    left: 0;
    top: 100%;
    background: var(--primary);
    border: 0;
    border-radius: 0;
    margin: 0;
    padding: 0;
    bottom: initial;
}

.page .navbar-nav .nav-item:last-child {
    margin: 0
}

.navbar .navbar-nav .nav-item .nav-link {
    padding: 20px 20px;
    white-space: nowrap;
    transition: 0.3s ease all;
    font-size: 17px;
    text-align: left;
    font-weight: 500;
    color: #fff;
    position: relative;
    display: flex;
    align-items: center;
}
.navbar .navbar-nav .nav-item .nav-link:hover{
	background:var(--second)
}
.navbar .navbar-nav .nav-item:last-child {background: none;}
.navbar .navbar-nav .nav-item .nav-link:after{
    z-index:1
}
.navbar .navbar-nav .nav-item:last-child .nav-link:before {opacity:0}

.fixed .navbar .navbar-nav .nav-item .nav-link {
    color: #fff
}

.navbar .navbar-nav .nav-item .nav-link:hover:before {width: 100%;}


.navbar-nav .nav-item:hover>.nav-link:before {width: 100%;}

.bloc-menu.fixed .btn-menu {
    display: table;
}


.bloc-menu {
    display: none;
    margin-right: 15px;
    position: relative;
    left: 45px;
    cursor: pointer;
    z-index: 10;
    transition: 0.3s ease all;
}

.btn-menu {
    display: table;
    margin: 0 auto;
    position: relative;
    transition: 0.3s ease all;
}

.btn-menu:hover {
    transform: rotate(180deg);
}




.menubox {
    transition: 0.3s ease all;
    padding: 0;
    width: 100%;
    position: relative;
    z-index: 20;
}

.menubox.fixed {
    top: 0;
    z-index: 20;
    position: fixed;
    background: var(--primary);
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    left: 0;
    bottom: initial;
}

.inner-menubox {
    transition: 0.3s ease all;
    position: relative;
    width:100%;
    background: var(--primary);
}
.fixed .inner-menubox{
    border: none;
    background: var(--primary);
}

.navbar {
    padding: 0;
    position: relative;
    z-index: 1;
}

.navbar-nav {
    margin: 0px !important;
    padding: 12px 15px;
    z-index: 9;
    width: 100%;
    flex-wrap: wrap;
    max-width: 100%;
}

.navbar-nav:last-child {
    padding: 0;
    justify-content: center;
}



/****** end menu ***/

/* _____________________________HOMEPAGE_____________________________ */
#index section:not(.boxfooter):not(.header) {
    margin-top:calc(var(--spacing-size) * 3);
    margin-bottom:calc(var(--spacing-size) * 3);
}
.bloc-1 {
    z-index:10;
    background-image: url("../images/back.jpg");
    background-repeat: no-repeat;
    background-size:contain;
}
.bloc-1  h1  {
    margin-bottom:30px;
}
.bloc-1  h1 span {
    color:var(--second);
    display:block;
}
.bloc-1  h1 b, .bloc-1 h1 i {
    color:var(--primary);
}
.bloc-1 .intro {
    font-style: italic;
    font-size:18px;
    font-weight:600;
}

.bloc-1 .back-section {
    position:absolute;
    top:50%;
}

.bloc-2 .title {
    margin-bottom:50px;
}
.bloc-2 .img-wrapper {
    overflow:hidden;
    border-radius:30px;
    margin-bottom:15px;
}
.bloc-2 .services img {
    transition:all .3s ease;
    width:100%;
}
.bloc-2 .services img:hover {
    transform: scale(1.1);
}
.bloc-2 .services h3 {
    color:var(--second);
    text-align:center;
    margin-bottom:40px;
}

#index .container.transition {
    position:relative;
    margin-top:100px;
}
.container.transition img {
    position:absolute;
    bottom:100%;
    z-index:-1;
    right:0
}
.container.transition p {
    color:var(--second);
    font-size:26px;
    font-style:italic;
    font-weight:600;
}

.bloc-3 .wrapper {
    background: url(../images/back-atouts.jpg) no-repeat center / cover;
    border-radius:50px;
    overflow: hidden;
    padding:50px;
}
.bloc-3 h2 {
    color:white;
    margin-bottom:50px;
}
.bloc-3 h3 {
    color:white;
    font-family: var(--secondfont);
    font-weight:500;
    font-size:20px;
    margin-top:30px;
    margin-bottom:30px;
}
.bloc-4 .container {
    position:relative;
}
.bloc-4 .decoration {
    position:absolute;
    right:0;
    top:-260px;
    z-index:-1;
}
.bloc-4  h2  {
    margin-bottom:30px;
}
.bloc-4  h2 span {
    color:var(--second);
    display:block;
}
.bloc-4  h2 b, .bloc-4 h2 i {
    color:var(--primary);
}
.bloc-4  p {
    font-style: italic;
    font-size:18px;
    font-weight:600;
}
.bloc-5  h3 {
    margin-bottom:40px;
    font-style:italic;
}
.bloc-5  p {
    font-size:18px;
    font-weight:600;
}
.bloc-5 .cta-container {
    display:flex;
    margin-top:30px;
    gap:30px;
    justify-content:center;
}
.bloc-5 .cta-container .custom-btn {
    margin:0;
}
.cta-facebook .text-col h2 {
    margin-top:40px;
    margin-bottom:40px;
}

.bloc-6 .wrapper {
    background:url(../images/dieppe.jpg) no-repeat center / cover;
    border-radius:50px;
    padding:80px 50px;
}
.bloc-6, .bloc-6 h2 {
    color:white;
}
.bloc-6 h2 {
    margin-bottom:80px;
    font-style:italic;
}


/* _____________________________HOMEPAGE FIN_____________________________ */

/****** page interne ***/

.page .header {
    height:400px;
}
.page .logo  img{
    width:250px;
}



/****** Contact ***/


/****** end Contact ***/


.footer-ico {
    display: block;
    max-width: 120px;
    filter: brightness(0) saturate(100%) invert(36%) sepia(100%) saturate(373%) hue-rotate(85deg) brightness(97%) contrast(95%);
}



/****** footer ***/


.boxfooter {
    overflow: hidden;
    padding: 15px;
    z-index: 1;
    position: relative;
    margin: 0 auto;
    max-width: 1480px;
    padding-top: 20px;
}

.footerlink {
    color: #d0d0d0;
    font-size: 10px;
    font-family: verdana;
    text-align: right;
}

.footerlink ul {
    list-style: none;
    margin: 0px;
    padding: 0px;
    display: inline-block;
}

.footerlink ul li {
    display: inline-block;
}

.footerlink ul li a {
    text-decoration: none !important;
    transition: 0.3s ease all;
    color: var(--primary);
    padding: 0px 10px;
    font-size: 12px;
}

.footerlink ul li a:hover {
    color: white;
}

.inlineblock {
    display: inline-block;
}

.footerlink ul {
    padding: 0px;
    margin: 0px;
    list-style: none;
    background: none;
}

.boxfooter>div {
    width: 100%;
    margin: 0;
    align-items: center;
}


/****** footer ***/
footer .container {
    max-width:1400px;
}
footer .wrapper {
    background:url(../images/back-footer.jpg) no-repeat center / cover;
    padding:40px 0;
}
footer .col-wrapper {
    background:var(--primary);
    color:white;
    padding:50px;
    border-radius:40px;
}
footer .col-wrapper a {
    color:white;
    text-decoration: underline;
}
.col-wrapper h2 {
    color:white;
}
footer .social-link {
    display:flex;
    gap:20px;
}
footer .social-link img {
    width:30px;
}
footer .tel  {
    font-size: 20px;
}
footer .tel a {
    text-decoration: none;
}


/****** end page interne ***/

@media (max-width: 1280px) {
    .navbar .navbar-nav .nav-item .nav-link {
        text-align: center;
        padding: 21px 13px;
        font-size: 15px;
    }

    .header:after {
        width: 45%;
    }

    .flex-block_text h2 {
        position: absolute;
        right: 28px;
        top: 0;
        left: initial;
    }

    .flex-block-3 .flex-block_text {
        padding-top: 60px;
    }

    .navbar-nav:after {
        height: 100%;
    }

    .logo img {}
}

@media (min-width:991px) {
    .navbar-expand-lg .navbar-collapse {
        display: block !important;
    }

    .page .block-banner {
        height: 400px;
    }

    .page .banner>div {}
}

@media (max-width: 992px) {

    .banner-header {
        height: 100%;
    }

    .navbar .navbar-nav .nav-item .nav-link:before {
        display: none
    }

    .navbar {
        padding: 0px
    }

    .navbar-nav:after {
        display: none
    }

    .navbar-nav .nav-item .nav-link {
        text-align: left
    }

    .inner-menubox {
        padding: 0;
        background: none;
        left: 0;
        width: 100%;
        border: none;
    }

    .collapse:not(.show) {
        display: block;
    }

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

    .navbar-nav:first-child {
        padding-bottom: 0;
    }

    .menubox.fixed .navbar-nav {
        flex-direction: column;
    }

    .dropdown-item {
        text-transform: none;
        font-weight: 500;
        text-align: center;
    }

    .navbar-nav:last-child {
        background: none;
        max-width: 100%;
        margin: 0 !important;
        padding-top: 0;
    }

    .navbar .navbar-nav .nav-item .nav-link {
        padding: 7px 10px;
        color: #fff;
    }

    .navbar .navbar-nav .nav-item {
        background: none
    }

    .dropdown-menu {
        background: var(--second)
    }

    .menubox:before,
    .menubox:after {
        display: none
    }

    .activemenu {
        transform: none !important;
    }

    .menubox {
        width: 100%;
        top: 58px !important;
        border: none;
        background: var(--primary);
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 10;
        max-width: 100%;
        transform: translateX(-100%);
        transition: 0.3s ease all;
        bottom: initial;
        padding: 100px 20px;
        margin: 0;
        height: 100%;
    }

    .logo img {
        max-width: 100%;
        filter: drop-shadow(8px 8px 10px #000);
    }

    .logo {
        position: absolute;
        width: 100% !important;
        height: 100%;
        justify-content: center;
        align-items: center;
        padding: 0px 20px;
        left: 0;
    }

    .header .d-flex>div {
        width: 100%;
        display: flex;
    }

    .flex-block-text {
        padding: 0px 20px;
        margin-top: 0;
    }

    .logo a {
        padding: 20px 0;
        margin-bottom: 20px;
    }

    .logo h2, .logo h3 {
        font-size:20px;
    }

    .header {
        position: relative;
        top: 0;
        margin-top: 58px;
        max-height: initial;
        border: none;
        margin-bottom: 0;
        padding: 0;
        height: 400px;
    }

    .text-header span {
        font-size: 30px;
    }

    .text-header {
        bottom: 20px;
        right: 20px;
        text-shadow: 1px 1px 19px #000;
        font-size: 22px;
    }

    .page .header {
        margin-bottom: 0;
    }

    .header .d-flex {
        top: 0px;
    }

    .block-banner {
        height: 350px;
    }

    .bloc-menu a {
        display: table;
        padding: 0;
        top: 11px;
        left: 11px;
        position: relative;
        margin: 0;
    }

    .btn-menu:after {
        display: none
    }

    #bloc-1:after {
        display: none
    }

    .bloc-menu.fixed {
        left: 0;
        top: 0;
        box-shadow: none;
        border-radius: 0;
    }

    .bloc-menu {
        top: 0;
        left: 0;
        width: auto;
        position: fixed;
        top: 0px;
        width: 100%;
        height: 58px;
        overflow: hidden;
        z-index: 13;
        display: block;
        animation: none !important;
        background: var(--primary);
        padding: 0;
    }

    .bloc-menu.fixed .btn-menu {
        margin: 0;
        padding: 0;
        background: none;
        box-shadow: none;
    }

    .bloc-menu img {
        position: relative;
        left: 0;
        top: 0;
        width: 40px;
        filter: none !important;
    }

    .btn_scroll {
        display: none
    }

    .banner {
        width: 100%;
        max-width: 100%;
        height: 450px;
    }

    .header:before {
        display: none
    }

    .header:after {
        display: none
    }
    .bloc-1 {
        background:none;
    }
    .bloc-1 .img-col {
        order:1;
        margin-bottom:20px;
    }
    .bloc-1 .img-col img, .bloc-4 .img-col img {
        width:300px;
    }
    .bloc-1 .text-col {
        order:2;
    }
    .bloc-4 .img-col {
        margin-bottom:20px;
    }
    .bloc-4 .decoration {
        display:none;
    }
    .container.transition .parasol {
        opacity: .5;
        width: 180px;
        right: unset;
    }
        .bloc-5 .cta-container {
            flex-direction: column;
            align-items: center;
        }


}

@media (max-width: 767px) {
    .menubox:after {
        display: none;
    }

    .logo img {
        margin: 0 auto;
        display: block;
        max-width:220px;
    }

    .block-banner:after {
        background-size: 69% 100%;
    }

    .block-banner {
        width: 100%;
        margin: 0;
        border: none;
    }

    .logo a {
        /* margin: 0px;
        padding: 0 !important; */
    }

    .header .d-flex a {
        text-align: center;
    }

    .header .d-flex {
        display: block !important;
        padding: 0;
    }
    .boxfooter {
        margin-bottom: 74px;
    }
}

.page .pre-footer {margin-top:100px; margin-bottom:100px;}

.header video {width:100%; height:100%; object-fit: cover;}
#axo-content{overflow: hidden;}
#axo-content .container{width: 1440px; max-width: 100%;}
#axo-content .spacing-content{margin-top: var(--spacing-size); margin-bottom: var(--spacing-size);}
#axo-content hr{margin: 15px auto;}

/* !!!! DÉBUT !!!! STYLE IMAGE & TAILLE */

#axo-content .img-fluid-wh{width: 100%; height: 100%; object-fit: cover; display: block;}
#axo-content .img-fluid-w{width: 100%; object-fit: cover; display: block;}
#axo-content .img-fluid-w.h400{height: 300px;}
#axo-content .img-fluid-w.h300{height: 300px;}
#axo-content .img-fluid-w.h400{height: 400px;}
#axo-content .img-fluid-w.h500{height: 500px;}
#axo-content .img-fluid-w.h600{height: 600px;}
#axo-content .img-fluid-w.h700{height: 700px;}
#axo-content .img-fluid-w.h800{height: 800px;}

/* !!!! DÉBUT !!!! STYLE FIL D'ARIANNE */

#axo-content .breadcrumb{background: rgba(0,0,0,0); margin: 15px auto; padding: 10px 0px; border-bottom: 1px solid rgba(0,0,0,0.1); display: flex; justify-content: center;}
#axo-content .breadcrumb-item+.breadcrumb-item::before{padding: 0px 5px;}
#axo-content .breadcrumb-item{font-size: 13px;}
#axo-content .breadcrumb-item a{color: var(--primary); font-weight: 600; transition: all 0.4s; text-decoration: none;}
#axo-content .breadcrumb-item a:hover{opacity: 0.5;}
#axo-content .breadcrumb-item .active{color: #000;}

/* !!!! DÉBUT !!!! HEADER IMAGE */

#axo-content .axo-banner-header{position: relative; z-index: 1; margin-bottom: 0px;}
#axo-content .axo-banner-header .main-img{position: relative; z-index: 1; display: block; width: 100%; height: 500px; object-fit: cover;}
#axo-content .axo-banner-header:before{content: ''; display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 2; background: rgb(0,0,0);
background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%);}
#axo-content .axo-banner-header .caption{position: absolute; z-index: 3; bottom: 0; left: 0; padding: 40px 15px;}
#axo-content .axo-banner-header .caption .title-page:before{content: ''; display: block; width: 2px; height: calc(var(--spacing-size) * 2); background: #fff; margin: 0px auto 15px;}
#axo-content .axo-banner-header .caption .title-page{display: block; text-transform: uppercase; color: #fff; font-weight: 700; font-family: var(--secondfont); font-size: 70px; text-shadow: 0px 0px 10px rgba(0,0,0,0.3);}

/* !!!! DÉBUT !!!! BANNIERE IMAGE */

#axo-content .axo-banner-img hr, #axo-content .axo-banner-color hr{background: rgba(255,255,255,0.5);}
#axo-content .axo-banner-img, #axo-content .axo-banner-color{position: relative; z-index: 1; color: #fff; padding-top: calc(var(--spacing-size) * 2); padding-bottom: calc(var(--spacing-size) * 2); min-height: 600px; align-items: center;}
#axo-content .axo-banner-img:before{content: ''; display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 2; background: rgb(0,0,0,0.6);}
#axo-content .axo-banner-img .main-img{position: absolute; z-index: 1; display: block; width: 100%; height: 100%; left: 0; top: 0; object-fit: cover;}
#axo-content .axo-banner-img>.container,#axo-content .axo-banner-img>.container-fluid, #axo-content .axo-banner-color>.container,#axo-content .axo-banner-color>.container-fluid{position: relative; z-index: 10;}
#axo-content .axo-banner-img .small-title{color: #fff;}
#axo-content .shape1{clip-path: polygon(0 var(--spacing-size), 100% 0%, 100% calc(100% - var(--spacing-size)), 0% 100%);}
#axo-content .shape2{clip-path: polygon(0 0, 100% var(--spacing-size), 100% 100%, 0 calc(100% - var(--spacing-size)));}
#axo-content .shape3{clip-path: polygon(0 0, 100% var(--spacing-size), 100% calc(100% - var(--spacing-size)), 0 100%);}
#axo-content .shape4{clip-path: polygon(0 var(--spacing-size), 100% 0, 100% 100%, 0 calc(100% - var(--spacing-size)));}
#axo-content .shape5{clip-path: polygon(0% 0%, 50% var(--spacing-size), 100% 0, 100% 100%, 0% 100%);}
#axo-content .shape6{clip-path: polygon(0 0, 50% var(--spacing-size), 100% 0, 100% calc(100% - var(--spacing-size)), 50% 100%, 0 calc(100% - var(--spacing-size)));}
#axo-content .shape7{clip-path: polygon(0 var(--spacing-size), 50% 0, 100% var(--spacing-size), 100% 100%, 50% 100%, 0 100%);}
#axo-content .shape8{clip-path: polygon(0 var(--spacing-size), 50% 0, 100% var(--spacing-size), 100% 100%, 50% calc(100% - var(--spacing-size)), 0 100%);}
/* !!!! DÉBUT !!!! TEXTE */

#axo-content .h1,#axo-content .h2,#axo-content .h3,#axo-content .h4,#axo-content .h5{font-weight: 700; margin-bottom: 20px; color: var(--primary); font-family: var(--secondfont);}
#axo-content .title-after:after{content: ''; display: block; width: var(--spacing-size); height: 2px; margin: 20px 0px 0px; background: var(--second);}
#axo-content *.text-center .title-after:after{margin:20px auto 0;}
#axo-content .title-after.text-center:after{margin-left: auto; margin-right: auto;}
#axo-content .small-title{display: block; text-transform: uppercase; font-size: 60%; color: auto; font-family: var(--mainfont); margin-top: 7px;}

/* CUSTOM H1 */
#axo-content .page-title {margin-top:50px;}
#axo-content .page-title h1 {width:100%;text-align:center; color:var(--primary-light);}
#axo-content .page-title h1 small {display:block; color:var(--primary-dark);}
#axo-content .page-title .sub-title {width:100%;margin-top:25px;padding:30px;border-top: 2px solid var(--primary);border-bottom: 2px solid var(--primary); text-align:center;}
#axo-content .page-title .sub-title p {font-weight:600;}
#axo-content .page-title .sub-title p:last-child {margin:0;}

#axo-content .h1{font-size: 40px;}
#axo-content .h2{font-size: 36px;}
#axo-content .h3{font-size: 32px;}
#axo-content .h4{font-size: 28px;}
#axo-content .h5{font-size: 24px;}
#axo-content .h6{font-size: 20px;}

#axo-content p, #axo-content .p, #axo-content ul, #axo-content .table{font-size: 16px; font-weight: 400; line-height: 21px; font-family:var(--secondfont);}
#axo-content p a, #axo-content ul a{color: var(--primary); font-weight: bold; transition: all 0.4s; text-decoration: none;}
#axo-content p a:hover, #axo-content ul a:hover{opacity: 0.4;}
#axo-content ul{padding-left: 15px; margin-bottom: 15px;}

#axo-content .table{background:rgba(0,0,0,0.05);}
#axo-content a.link-btn.link-icone:after{font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f054" !important; display: inline-block; margin-left: 10px;}
#axo-content a.link-btn{color: #fff; text-align: center; cursor: pointer; background: var(--primary); color: #fff; text-transform: uppercase; transition: all 0.4s; font-size: 14px; font-weight: 500; display: table; text-decoration: none; padding: 9px 15px;}
#axo-content a.link-btn:hover{background: var(--second); color: #fff;}
#axo-content a.link-btn.large{width: 100%;}


/* !!!! DÉBUT !!!! COULEUR & PERSONNALISATION */

#axo-content .border-box{border: 2px solid var(--primary);}
#axo-content .back-primary{background: var(--primary); color: #fff;}
#axo-content .back-second{background: var(--second); color: #fff;}
#axo-content .back-third{background: var(--third); color: #fff;}
#axo-content .color-primary{color: var(--primary);}
#axo-content .color-second{color: var(--second);}
#axo-content .color-third{color: var(--second);}
#axo-content .back-grey1{background: var(--grey1);}
#axo-content .back-grey2{background: var(--grey2);}
#axo-content .back-grey3{background: var(--grey3);}
#axo-content .back-grey4{background: var(--grey4);}
#axo-content .rounded1{border-radius: 10px;}
#axo-content .rounded2{border-radius: 30px;}
#axo-content .rounded3{border-radius: 100%;}
#axo-content .back-primary .h1, #axo-content .back-primary .h2, #axo-content .back-primary .h3, #axo-content .back-primary .h4,#axo-content .back-primary .h5,#axo-content .back-primary .h6, #axo-content .back-second .h1, #axo-content .back-second .h2, #axo-content .back-second .h3, #axo-content .back-second .h4,#axo-content .back-second .h5,#axo-content .back-second .h6, #axo-content .back-third .h1, #axo-content .back-third .h2, #axo-content .back-third .h3, #axo-content .back-third .h4,#axo-content .back-third .h5,#axo-content .back-third .h6, #axo-content .axo-banner-img .h1, #axo-content .axo-banner-img .h2, #axo-content .axo-banner-img .h3, #axo-content .axo-banner-img .h4,#axo-content .axo-banner-img .h5,#axo-content .axo-banner-img .h6, #axo-content .back-primary .small-title, #axo-content .back-second .small-title, #axo-content .back-third .small-title{color: #fff;}
#axo-content .back-primary a.link-btn, #axo-content .back-primary a.link-btn, #axo-content .back-primary a.link-btn, #axo-content .back-primary a.link-btn,#axo-content .back-primary a.link-btn,#axo-content .back-primary a.link-btn, #axo-content .back-second a.link-btn, #axo-content .back-second a.link-btn, #axo-content .back-second a.link-btn, #axo-content .back-second a.link-btn,#axo-content .back-second a.link-btn,#axo-content .back-second a.link-btn, #axo-content .back-third a.link-btn, #axo-content .back-third a.link-btn, #axo-content .back-third a.link-btn, #axo-content .back-third a.link-btn,#axo-content .back-third a.link-btn,#axo-content .back-third a.link-btn, #axo-content .axo-banner-img a.link-btn, #axo-content .axo-banner-img a.link-btn, #axo-content .axo-banner-img a.link-btn, #axo-content .axo-banner-img a.link-btn,#axo-content .axo-banner-img a.link-btn,#axo-content .axo-banner-img a.link-btn, #axo-content .back-primary a.link-btn, #axo-content .back-second a.link-btn, #axo-content .back-third a.link-btn{background: transparent; border: 1px solid #fff; color: #fff}
#axo-content .back-primary a.link-btn:hover, #axo-content .back-primary a.link-btn:hover, #axo-content .back-primary a.link-btn:hover, #axo-content .back-primary a.link-btn:hover,#axo-content .back-primary a.link-btn:hover,#axo-content .back-primary a.link-btn:hover, #axo-content .back-second a.link-btn:hover, #axo-content .back-second a.link-btn:hover, #axo-content .back-second a.link-btn:hover, #axo-content .back-second a.link-btn:hover,#axo-content .back-second a.link-btn:hover,#axo-content .back-second a.link-btn:hover, #axo-content .back-third a.link-btn:hover, #axo-content .back-third a.link-btn:hover, #axo-content .back-third a.link-btn:hover, #axo-content .back-third a.link-btn:hover,#axo-content .back-third a.link-btn:hover,#axo-content .back-third a.link-btn:hover, #axo-content .axo-banner-img a.link-btn:hover, #axo-content .axo-banner-img a.link-btn:hover, #axo-content .axo-banner-img a.link-btn:hover, #axo-content .axo-banner-img a.link-btn:hover,#axo-content .axo-banner-img a.link-btn:hover,#axo-content .axo-banner-img a.link-btn:hover, #axo-content .back-primary a.link-btn:hover, #axo-content .back-second a.link-btn:hover, #axo-content .back-third a.link-btn:hover{background: #fff; color: #000}
#axo-content .back-second .title-after:after{background: var(--primary);}
#axo-content .shadow-box{box-shadow: var(--shadow-box);}
#axo-content .shadow-text{text-shadow: var(--shadow-text);}

#axo-content .axo-icone{font-size: 25px;}
#axo-content .axo-icone.big{font-size: 45px;}
#axo-content .axo-icone.box{background: var(--primary); color: #fff; display: flex; justify-content: center; align-items: center; width: var(--spacing-size); height: var(--spacing-size);}
#axo-content .axo-icone.box.big{width: calc(var(--spacing-size) * 2); height: calc(var(--spacing-size) * 2);}

.custom-btn {border-radius:40px;transition: all 0.3s ease; padding: 10px 20px; display: block; width: fit-content; background: var(--primary); color: var(--white);}
.custom-btn:hover {background:var(--primary-dark);color:white;}
*.text-center .custom-btn {margin:0 auto;}

#index .custom-btn {font-size:22px; padding:20px 40px; border-radius:20px; font-weight:600;}

ul.custom, #axo-content ul.custom { list-style: none; padding-left: 0; }
ul.custom li { padding-left: 1.6em; position: relative;}
ul.custom li:before { content: "\f00c"; font-family: "Font Awesome 5 Free"; font-weight: 900; position: absolute; left: 0; color: var(--primary);}
.text-center ul.custom li { width:fit-content; margin:0 auto;}

#axo-content .container.image-section {position:relative; min-width: calc(100% + 30px); color:white; margin-left: -15px; padding: 0; overflow: hidden; margin-bottom:50px;}
#axo-content .container.image-section .image-container {position:absolute; width:100%; height:100%;}
#axo-content .container.image-section img {width:100%; height:100%; object-fit: cover;}
#axo-content .container.image-section .image-container::after {content:"";position:absolute; width:100%; height:100%; top:0; left:0; background:rgba(0, 0, 0, 0.7);}
#axo-content .container.image-section .row {max-width:940px; width:100%; margin:0 auto; padding:130px 0;}
#axo-content .container.image-section .row.text-center .custom-btn {margin-inline: auto;}

/* SECTION CARDS FEATURES */
.cards-section .row > [class*="col-"]{padding-left: 12px; padding-right: 12px; margin-bottom: 24px;}
.card-feature{background: #fff; border-radius: 12px; padding: 36px 28px; height: 100%; box-shadow: var(--shadow-box); transition: transform 0.3s ease, box-shadow 0.3s ease; border-top: 4px solid transparent;}
.card-feature:hover{transform: translateY(-6px); box-shadow: 0px 12px 30px rgba(0,0,0,0.13); border-top-color: var(--primary);}
.card-feature--accent{background: var(--grey1); border-top-color: var(--primary);}
.card-feature__icon{font-size: 32px; color: var(--primary); margin-bottom: 18px;}
.card-feature__title{font-size: 20px; font-weight: 700; color: var(--primary); margin-bottom: 14px; line-height: 1.3;}
.card-feature p, .card-feature ul {font-size: 15px; color: var(--gris); line-height: 1.7; margin-bottom: 8px;}

/* HERO + CARDS  */
.hero-cards {color:white; position:relative; min-width: calc(100% + 30px); margin-left: -15px;}
.hero-cards:before {content:""; display:block; position:absolute; top:0; left:0; width:100%; height:80%; background:var(--back);}
.hero-cards .hero-cards__title {padding:80px 0 20px;}
.hero-cards .hero-cards__title p {opacity:.8;}
.hero-cards .outro {margin-top:30px; color:#000;}

.hero-cards.bis {padding:30px 0;}
.hero-cards.bis:before {height:100%;}

/* BOXED */
#axo-content .boxed {background:var(--primary); padding:100px 0; min-width: calc(100% + 30px); margin-left: -15px;}
#axo-content .boxed.second {background:var(--second);}
#axo-content .boxed.third {background:var(--third);}
#axo-content .boxed.back {background:var(--back);}
#axo-content .boxed.black {color:var(--black);}
#axo-content .boxed.white {color:var(--white);}
#axo-content .boxed.white a, .boxed.white a:hover {color:white;}
#axo-content .boxed h2 {margin-bottom:20px;}

/* BOX */
#axo-content .box {padding:20px; border-radius:10px; text-align:center; border:1px solid var(--primary); color:var(--primary-light); background:unset; background: color-mix(in srgb, var(--primary) 15%, transparent 100%); margin-top:var(--spacing-size); margin-bottom:var(--spacing-size);}
#axo-content .box p:last-child {margin:0;}

/* !!!! DÉBUT !!!! RESPONSIVE */

@media all and (max-width: 1440px) {
	#axo-content p, #axo-content .p, #axo-content ul, #axo-content .table{font-size: 15px; font-weight: 400; line-height: 20px;}
#axo-content .h1{font-size: 36px;}
#axo-content .h2{font-size: 33px;}
#axo-content .h3{font-size: 29px;}
#axo-content .h4{font-size: 26px;}
#axo-content .h5{font-size: 23px;}
#axo-content .h6{font-size: 20px;}
}

@media all and (max-width: 991px) {
	#axo-content .axo-banner-header .main-img{height: 280px;}
	#axo-content .axo-banner-header .caption .title-page{font-size: 40px;}
	#axo-content .h1{font-size: 30px;}
	#axo-content .h2{font-size: 27px;}
	#axo-content .h3{font-size: 24px;}
	#axo-content .h4{font-size: 21px;}
	#axo-content .h5{font-size: 18px;}
	#axo-content .h6{font-size: 15px;}
	#axo-content .img-fluid-w.h300, #axo-content .img-fluid-w.h400, #axo-content .img-fluid-w.h500,#axo-content .img-fluid-w.h600, #axo-content .img-fluid-w.h700,#axo-content .img-fluid-w.h800
	{max-height: 400px;}
}

@media all and (max-width: 560px) {
	#axo-content p, #axo-content .p, #axo-content ul, #axo-content .table{font-size: 14px; font-weight: 400;}
	#axo-content .img-fluid-w.h300, #axo-content .img-fluid-w.h400, #axo-content .img-fluid-w.h500,#axo-content .img-fluid-w.h600, #axo-content .img-fluid-w.h700,#axo-content .img-fluid-w.h800
	{height: 300px;}
	:root {
		--spacing-size: 30px;
	}
	#axo-content .axo-icone{font-size: 16px;}
	#axo-content .axo-icone.big{font-size: 26px;}
	#axo-content .axo-banner-header .caption .title-page{font-size: 30px;}
}

/* DÉBUT SLIDE STYLE */
.axo-slide-style .slick-prev, .axo-slide-style .slick-next{position: absolute; transition: all 0.4s; top: 50%; z-index: 99; background: var(--primary); width: 40px; height: 40px; display: flex; justify-content: center; align-items: center;}
.axo-slide-style .slick-prev:hover,.axo-slide-style .slick-next:focus,.axo-slide-style .slick-prev:focus, .axo-slide-style .slick-next:hover{background: #000;}
.axo-slide-style .slick-prev{left: 0px;}
.axo-slide-style .slick-next{right: 0px;}
.axo-slide-style .slick-dots{bottom: 0px; left: 0px; padding: 0px;}
.axo-slide-style .slick-dots li{padding: 0px; margin: 0px;}
.axo-slide-style .slick-dots li button{display: flex; justify-content: center; align-items: center; padding: 0px;}
.axo-slide-style .slick-prev:before{font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f053" !important;}
.axo-slide-style .slick-next:before{font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f054" !important;}
.axo-slide-style .slick-dots li button:before{left: 50%; top: 50%; transform: translate(-50%,-50%);}
.axo-slide-style .slick-dots li button:before{background: #fff; border: 1px solid var(--primary); content: '' !important; display: block; width: 14px !important; height: 14px !important; border-radius: 15px; opacity: 1 !important;}
.axo-slide-style .slick-dots li.slick-active button:before{background: var(--primary);}

/* DÉBUT TABLEAUX TARIFS */
.pricing-table{margin-bottom:40px; border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow-box);}
.pricing-table table{margin-bottom:0;}
.pricing-table thead tr:first-child th{background:var(--primary); color:#fff; border-color:#fff; font-weight:700; text-transform:uppercase; letter-spacing:.5px; vertical-align:middle;}
.pricing-table thead tr:last-child th{background:var(--primary-light); color:#fff; font-weight:500; border-color:#fff;}
.pricing-table tbody th{background:var(--primary); color:#fff; text-align:left; font-weight:600; vertical-align:middle;}
.pricing-table tbody td{background:#fff;}
.pricing-table tbody tr:nth-child(even) td{background:var(--grey2);}
.pricing-table th, .pricing-table td{padding:12px 15px; border-color:#fff;}
.pricing-table tbody tr:not(:last-child) th, .pricing-table tbody tr:not(:last-child) td{border-bottom:1px solid var(--grey3);}

.cta-tarifs{display:flex; justify-content:center; gap:20px; flex-wrap:wrap;}
.cta-tarifs .custom-btn{margin:0;}
/* FIN TABLEAUX TARIFS */

.avis-stars{color:#f5a623;}
.card-feature .custom-btn{margin:0 auto;}
.axo-slide-style a{outline: none; text-decoration: none;}