*,*::before,*::after{box-sizing:border-box}
html{font-size:62.5%;scroll-behavior:smooth}
body{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:1.7rem;line-height:1.6;color:#2c3228;background:#f4f1ea}
img{max-width:100%;height:auto;display:block;border:0}
a{color:#6b7c3a;text-decoration:none}
a:hover{color:#4e5c28}
p{margin:0 0 1em}
h1,h2,h3,h4{font-weight:400;line-height:1.2;margin:0 0 .6em;color:#3d4a2a}
ul{margin:0;padding:0;list-style:none}
button{font:inherit;cursor:pointer;background:none;border:0}
.field-label,.field-label-above>.field-label{display:none}
#responsive-menu{display:none;background:#2c3228;padding:1.2rem 2rem}
#responsive-menu.open{display:block}
#responsive-menu .menu{display:flex;flex-direction:column;gap:.4rem}
#responsive-menu a{color:#f4f1ea;padding:.8rem 0;display:block;border-bottom:1px solid rgba(255,255,255,.08)}
#nav-bar{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 1px 0 #e4dfd4}
#nav-bar .wrapper{max-width:1180px;margin:0 auto;padding:0 2rem}
.menu-wrapper{display:flex;align-items:center;gap:2rem;min-height:7.2rem}
#logo{display:flex;align-items:center;gap:1rem;flex:0 0 auto;color:#3d4a2a;font-size:2.2rem;letter-spacing:.04em}
#logo img{height:42px;width:auto;max-width:160px;object-fit:contain}
#logo img[src*="logo"]{content:unset}
#hamburger{display:none;width:44px;height:44px;margin-left:auto;position:relative}
#hamburger .line{display:block;height:2px;background:#3d4a2a;margin:7px 10px}
#main-menu{margin-left:auto}
#main-menu .menu{display:flex;gap:.2rem;flex-wrap:wrap}
#main-menu a{display:block;padding:1rem 1.2rem;color:#3d4a2a;font-size:1.5rem;text-transform:uppercase;letter-spacing:.08em}
#main-menu a:hover,#main-menu a.active,#main-menu .active-trail>a{color:#c9a227}
.menu-wrapper>img{width:22px;height:22px;opacity:.7;flex:0 0 auto}
.infos-bar{display:none}
main{min-height:50vh}
.wrapper{max-width:1180px;margin:0 auto;padding:0 2rem}
.page-accueil header,.slideshow{position:relative;min-height:62vh;background:#6d7a52 url("/css/placeholder.svg") center/cover no-repeat;color:#fff}
.slideshow-wrapper,.slide{min-height:62vh}
.slide .field-p-image img{width:100%;height:62vh;object-fit:cover;display:block;background:#6d7a52}
.slideshow-text-wrapper{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(180deg,rgba(44,50,40,.15),rgba(44,50,40,.55));padding:4rem 2rem}
.slideshow-text-wrapper p{font-size:4.2rem;line-height:1.15;margin:0;text-shadow:0 2px 16px rgba(0,0,0,.35)}
.scroll-down{position:absolute;left:50%;bottom:2rem;width:28px;height:28px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:translateX(-50%) rotate(45deg);opacity:.8}
.introduction{max-width:820px;margin:0 auto;padding:7rem 2rem;text-align:center;font-size:2rem;color:#4a5340}
.field-lien-introduction a,.lien,.field-lien-introduction a:visited{display:inline-block;margin-top:1.6rem;padding:.9rem 2.2rem;border:1px solid #c9a227;color:#3d4a2a;letter-spacing:.06em;text-transform:uppercase;font-size:1.4rem}
.field-lien-introduction a:hover,.lien:hover{background:#c9a227;color:#fff}
.prestations{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.prestation{min-height:340px;background:#7a8664 url("/css/placeholder.svg") center/cover no-repeat;position:relative;color:#fff}
.prestation .overlay{position:absolute;inset:0;background:rgba(40,46,32,.55);padding:3rem 2.4rem;display:flex;flex-direction:column;justify-content:flex-end;transition:background .2s}
.prestation:hover .overlay{background:rgba(40,46,32,.72)}
.prestation h2,.prestation h3{color:#fff;font-size:2.4rem;margin:0 0 1rem}
.prestation h2 p,.prestation h3 p{margin:0}
.prestation .field-p-texte{font-size:1.5rem;opacity:.95}
.prestation .field-p-texte p{margin:0 0 .35em}
.slogans{padding:7rem 2rem;text-align:center;max-width:860px;margin:0 auto}
.field-petit-slogan{font-size:1.8rem;color:#5b6452;margin-bottom:1.6rem}
.field-gros-slogan{font-size:2.8rem;color:#3d4a2a}
.no-parallax{min-height:280px;background:#6d7a52 url("/css/placeholder.svg") center/cover no-repeat}
.page-galerie>header,.page-prestations>header,.page-entreprise>header,.page-contact>header,.default-content-wrapper>header,.page-one-news article>header{padding:8rem 2rem 3rem;text-align:center;background:#eef0e6}
.page-galerie h1,.page-prestations h1,.page-entreprise h1,.page-contact h1,.default-content-wrapper h1,.page-one-news h1{font-size:4.4rem;margin:0}
.filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;padding:2rem}
.filters .filter{padding:.6rem 1.4rem;border:1px solid #d5d0c4;background:#fff;font-size:1.4rem;color:#3d4a2a;text-transform:uppercase;letter-spacing:.05em}
.filters .filter:hover,.filters .filter.active{background:#3d4a2a;color:#fff;border-color:#3d4a2a}
.galerie{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;padding:0 2rem 6rem;max-width:1180px;margin:0 auto}
.reference .inner,.page-one-news .element{position:relative;min-height:180px;background:#8a9374 url("/css/placeholder.svg") center/cover no-repeat}
.reference .overlay,.page-one-news .element .overlay{position:absolute;inset:0;background:rgba(44,50,40,.12)}
.page-entreprise .introduction{display:grid;grid-template-columns:1.2fr .8fr;gap:4rem;max-width:1100px;text-align:left;align-items:center}
.page-entreprise .right,.field-image-entreprise{min-height:280px;background:#8a9374 url("/css/placeholder.svg") center/cover no-repeat;border-radius:2px}
.page-contact .infos{max-width:720px;margin:0 auto;padding:4rem 2rem 2rem;font-size:2rem}
.map-wrapper{min-height:220px;background:#e7eadc;margin:0 0 4rem;display:flex;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem}
.field-p-latitude,.field-p-longitude{display:none}
.view-news{max-width:960px;margin:0 auto;padding:2rem 2rem 6rem}
.views-row a{display:grid;grid-template-columns:160px 1fr;gap:2rem;align-items:center;padding:1.6rem 0;border-bottom:1px solid #e4dfd4;color:inherit}
.img-wrapper{min-height:110px;background:#8a9374 url("/css/placeholder.svg") center/cover no-repeat;border-radius:2px}
.views-row .date{font-size:1.3rem;color:#8a7a3a;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.4rem}
.views-row h2,.views-row h3{margin:0;font-size:2.2rem}
.page-one-news article{max-width:960px;margin:0 auto}
.page-one-news .content{display:grid;grid-template-columns:1.4fr .8fr;gap:3rem;padding:2rem 2rem 4rem}
.page-one-news .date{color:#8a7a3a;margin-bottom:1rem;letter-spacing:.06em}
.lien-retour{text-align:center;padding:0 2rem 6rem}
footer{background:#2c3228;color:#d8d3c6;margin-top:0}
#footer-infos{padding:4.5rem 0 3rem}
#footer-infos .wrapper{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;align-items:center}
#footer-infos h2,#footer-infos h3{color:#fff;margin-bottom:.6rem}
#footer-infos img{width:90px;height:auto;margin:0 auto;opacity:.9}
#copyright{border-top:1px solid rgba(255,255,255,.08);padding:1.6rem 0 2.2rem;font-size:1.3rem}
#copyright .wrapper{display:flex;align-items:center;justify-content:space-between;gap:1.4rem;flex-wrap:wrap}
#copyright img{height:28px;width:auto;opacity:.55}
#copyright p{margin:0}
@media (max-width:900px){
  .prestations,.galerie{grid-template-columns:repeat(2,1fr)}
  .page-entreprise .introduction,.page-one-news .content,#footer-infos .wrapper{grid-template-columns:1fr}
  .views-row a{grid-template-columns:110px 1fr}
  .slideshow-text-wrapper p{font-size:3rem}
  #main-menu{display:none}
  #hamburger{display:block}
  .menu-wrapper>img{display:none}
}
@media (max-width:560px){
  .prestations,.galerie{grid-template-columns:1fr}
  .page-galerie h1,.page-prestations h1,.page-entreprise h1,.page-contact h1,.default-content-wrapper h1,.page-one-news h1{font-size:3.2rem}
}
