:root{--c-dark:#0A4E4F;--c-light:#D4EDE9;--c-mid:#72B4B0;--c-bg:#F5F5F5;--font-head:"Forum",serif;--font-body:"dp",sans-serif;--bs-primary:#0B4F50;--bs-primary-rgb:11,79,80;--bs-secondary:#72B5B0;--bs-secondary-rgb:114,181,176;--bs-secondary-bg-subtle:rgba(114,181,176,.1);--bs-secondary-border-subtle:rgba(114,181,176,.25);--bs-light:#D4EEEA;--bs-light-rgb:212, 238, 234;}
.nav{--bs-nav-link-padding-x: 2rem;--bs-nav-link-hover-color:#72B5B0;}
a{--bs-link-color-rgb:11,79,80;--bs-link-hover-color-rgb:114,181,176;}
.modal{--bs-modal-border-radius:0;}
@font-face{font-family:'forum';src:url('../assets/fonts/forum.woff') format('woff');font-display:swap;}
@font-face{font-family:'dp';src:url('../assets/fonts/dp.woff') format('woff');font-display:swap;}
@font-face{font-family:'dpb';src:url('../assets/fonts/dpb.woff') format('woff');font-weight:normal;font-display:swap;}
body{font-family:var(--font-body);background:#fff;color:#1A1A1A;scroll-behavior:smooth;line-height:1.75;}
.bg-grey{background-color:#F6F6F6;}
.ratio11{aspect-ratio: 1/1;}
.z-0{z-index: 0;}
.rotate90{transform: rotate(-90deg);}

::-webkit-scrollbar{width:10px}::-webkit-scrollbar-thumb{background:#0B4F50;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#0a4243}::-webkit-scrollbar-track{background:#e0e0e0}html{scrollbar-color:#0B4F50 #e0e0e0}

#toTop{position:fixed;bottom:20px;right:-200px;width:45px;height:45px;border-radius:50%;display:flex;border:none;background:#0B4F50;color:#fff;font-size:20px;cursor:pointer;align-items:center;justify-content:center;z-index:999;transition:all .3s}
#toTop.show{display:flex;opacity:1;right:20px;}

.btn{border-radius: 2rem;padding:1rem 3rem;font-family:"dpb",serif;font-weight: normal;font-size: 1.15rem;}

.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0B4F50;--bs-btn-border-color:#0B4F50;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0E6061;--bs-btn-hover-border-color:#0E6061;--bs-btn-focus-shadow-rgb:11,79,80;--bs-btn-active-color:#fff;--bs-btn-active-bg:#117172;--bs-btn-active-border-color:#117172;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0B4F50;--bs-btn-disabled-border-color:#0B4F50;}

.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#72B5B0;--bs-btn-border-color:#72B5B0;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#619f9a;--bs-btn-hover-border-color:#619f9a;--bs-btn-focus-shadow-rgb:114,181,176;--bs-btn-active-color:#fff;--bs-btn-active-bg:#5b9792;--bs-btn-active-border-color:#5b9792;--bs-btn-active-shadow:inset 0 3px 5px rgba(0,0,0,.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#72B5B0;--bs-btn-disabled-border-color:#72B5B0;}

.btn-arrow{position:relative;display: flex;align-items: center;padding:0;color: #fff;text-decoration: none;font-family:"dpb",serif;font-weight: normal;font-size: 1.15rem;}
.btn-arrow:after{content: url(../assets/arrow.svg);margin-left:1rem;width: 1.5rem;height: 1.5rem;transition: transform 0.1s ease;margin-bottom:0.25rem;}
.btn-arrow:before{content:'';position: absolute;bottom:-0.25rem;left:0;width:80%;height:2px;background-color:#72B5B0;transition: width 0.3s ease;}
.btn-arrow:hover:before{width:100%;}

h1,h2,h3,h4,h5{font-family:var(--font-head);color:var(--c-dark);}
.fs-7{font-size: 0.85rem;}
.fs-8{font-size: 0.75rem;}
.topbar{background:#064344;font-size:.85rem;color:#fff;}
.forum{font-family:"Forum",serif;font-weight: normal;}
.site-header{z-index:10;width:100%;position: relative;}
.logo{width:6rem;}
.nav-link{color:#fff;}
section{/*scroll-margin-top:120px;*/}
.hero-section{min-height: 100dvh;padding-top:125px;position: relative;overflow: hidden;}
.hero-section:before{content:"";position:absolute;bottom:10%;right:80%;width:30rem;background:url('../assets/ecoplouf-forme.svg') center/cover no-repeat;pointer-events:none;aspect-ratio: 1/1;}
.hero-arc{position:absolute;bottom:0;right:0;width:45%;aspect-ratio: 1/1;display:flex;justify-content:flex-end;align-items:center;pointer-events:none;}
.hero-arc img{width:100%;height:100%;object-fit:cover;border-radius:100vw 0 0 0;}
.hero-arc span{position:absolute;left:10%;top:10%;width:100%;height:100%;object-fit:cover;border-radius:100vw 0 0 0;border:2px solid #72B5B0;border-right:0;border-bottom:0;}
.hero-title{line-height: 1;font-size:calc(1.425rem + 2.1vw);}

.section-1{position: relative;overflow: hidden;}
.section-1:after{opacity:0.25;content:"";position:absolute;bottom:-10rem;right:-10rem;width:30rem;background:url('../assets/ecoplouf-forme-w.svg') center/cover no-repeat;pointer-events:none;aspect-ratio: 1/1;}
.section-2{position: relative;}
.section-2:after{content:"";position:absolute;transform:translate(50%, 50%);bottom:0;right:0rem;width:30%;background:url('../assets/ecoplouf-forme.svg') center/cover no-repeat;pointer-events:none;aspect-ratio: 1/1;z-index: 1;}

.circle-carousel,.circle-img{border-radius:50%;overflow:hidden;background:var(--c-light);display:flex;align-items:center;justify-content:center;}
.circle-carousel img,.circle-img img{object-fit:cover;width:100%;height:100%;}
.section-title{font-size:1.8rem;margin-bottom:1rem;}
.value-card{background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:30px;height:100%;}
.timeline{position:relative;margin-left:2rem;padding-left:1rem;border-left:2px solid var(--bs-secondary);}
.timeline-step{display:flex;;margin-bottom:40px;}
.timeline-step:last-child{margin-bottom:0;}
.step-number{transform:translateX(-3rem);width:4rem;height:4rem;border-radius:50%;background:var(--c-dark);color:#fff;font-size:3rem;display:flex;align-items:center;justify-content:center;font-family:"Forum",serif;font-weight: normal;flex-shrink: 0;}
.step-content h5{margin-bottom:5px;}
.contact-box{}
footer .col-md-4 ul li{margin-bottom:5px;}
footer .col-md-4 a{text-decoration:none;}
.reveal-on-scroll{opacity:0;transform:translateY(20px);transition:.7s ease;}
.reveal-on-scroll.inview{opacity:1;transform:translateY(0);}

input.form-control{border-radius: 2rem;padding: 1rem 2rem;font-family: "dp", serif;font-weight: normal;font-size: 1.15rem;}
textarea.form-control{border-radius: 2rem;padding: 1rem 2rem;font-family: "dp", serif;font-weight: normal;font-size: 1.15rem;}
.form-control{border-color: var(--bs-primary);}
.form-control::placeholder{font-style: italic;font-weight: normal !important;}
.form-check-input{transform: scale(1.4);border-color: var(--bs-primary);}


@media (min-width: 576px) {
    .hero-section{padding-top:225px;}
    .section-1:after{opacity:1;}
    .timeline-step{gap:20px;}
}


