@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600&family=Inter:wght@400;500;600&display=swap');
:root{--green:#354b2d;--green2:#263a24;--cream:#f5f1e9;--ink:#171713;--gold:#9a7445;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Inter,Arial,sans-serif;background:#fff}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}
h1,h2,.brand strong{font-family:"Cormorant Garamond",Georgia,serif}h2{font-size:clamp(2rem,4vw,3.3rem);line-height:.95;margin:.35rem 0 1.2rem}.eyebrow{letter-spacing:.28em;font-size:.72rem;color:#76552f;font-weight:600}.rule{display:block;width:42px;border-top:2px solid var(--gold);margin:1rem 0 1.4rem}
.header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:rgba(255,255,255,.97);position:sticky;top:0;z-index:20;box-shadow:0 1px 10px #0000000d}.brand{display:flex;align-items:center;gap:12px}.brand-mark{font-size:2.3rem}.brand strong{display:block;font-size:1.5rem}.brand small{font-size:.62rem;letter-spacing:.14em}.nav{display:flex;align-items:center;gap:2rem;font-size:.85rem}.nav>a:not(.btn){padding:29px 0 25px}.nav .active{border-bottom:2px solid var(--green)}.menu-toggle{display:none;border:0;background:none;font-size:1.8rem}
.btn{display:inline-block;border:0;border-radius:3px;background:var(--green);color:#fff;padding:15px 23px;font:500 .9rem Inter;cursor:pointer}.btn:hover{background:var(--green2)}.btn-small{padding:12px 18px}.btn-light{background:#f7f4ee;color:#222;border:1px solid #777}.btn-outline{background:transparent;border:1px solid white}
.hero{min-height:590px;position:relative;background:url("../img/exterieur.jpg") center/cover no-repeat;display:flex;align-items:center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,244,236,.92) 0%,rgba(247,244,236,.72) 28%,rgba(247,244,236,.05) 62%)}.hero-content{position:relative;z-index:2;margin-left:5.5vw;max-width:620px}.hero h1{font-size:clamp(4rem,7.2vw,7rem);line-height:.72;margin:.3rem 0 1.2rem;font-weight:500}.hero h2{font-size:2rem;margin:0}.hero-content>p:not(.eyebrow){line-height:1.6}.hero-actions{display:flex;gap:12px;margin-top:24px}.location{position:absolute;right:4vw;bottom:28px;background:#222d;color:#fff;padding:12px 18px;border-radius:5px;z-index:3}.location small{display:block;margin-top:5px}
.features{display:grid;grid-template-columns:repeat(7,1fr);padding:24px 4vw;background:#fbfaf7;border-bottom:1px solid #eee}.features div{text-align:center;padding:3px 12px;border-right:1px solid #ddd}.features div:last-child{border:0}.features b{display:block;color:var(--green);font-size:1.7rem;height:34px}.features span{font:600 .8rem "Cormorant Garamond",Georgia,serif}
.intro{display:grid;grid-template-columns:1.05fr 1fr;background:var(--cream)}.intro-photo{min-height:500px}.intro-copy{padding:70px 8vw 55px 5vw}.intro-copy p:not(.eyebrow){line-height:1.65;max-width:620px}
.gallery{display:grid;grid-template-columns:repeat(4,1fr)}.gallery figure{height:290px;margin:0;position:relative;overflow:hidden}.gallery figcaption{position:absolute;left:0;right:0;bottom:0;color:#fff;padding:42px 18px 14px;background:linear-gradient(transparent,#000a);font-size:.83rem}.gallery img{transition:transform .5s}.gallery figure:hover img{transform:scale(1.035)}
.booking{display:grid;grid-template-columns:.85fr 1.15fr;gap:5vw;padding:55px 5vw;background:#f6f2eb}.booking>div p:last-child{line-height:1.55}.booking-form{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-content:center}.booking-form label{font-size:.72rem}.booking-form input,.booking-form select{width:100%;margin-top:7px;border:1px solid #ddd;background:white;padding:14px;font:inherit}.booking-form .btn{grid-column:1/3}.form-message{grid-column:1/-1;margin:0;font-size:.85rem}
.region{height:390px;position:relative;color:white;background:#26352a;overflow:hidden}.region-bg{position:absolute;inset:0;background:url("../img/exterieur.jpg") center 63%/cover;filter:brightness(.48) saturate(.7)}.region-content{position:relative;z-index:2;padding:48px 5vw;max-width:650px}.region .eyebrow{color:#fff}.region p{line-height:1.55}footer{display:flex;justify-content:space-between;align-items:center;padding:30px 5vw;background:#20271f;color:#fff}footer span{opacity:.7;font-size:.8rem}
@media(max-width:980px){.menu-toggle{display:block}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:20px 5vw;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 8px 20px #0002}.nav.open{display:flex}.nav>a:not(.btn){padding:13px 0}.nav .active{border:0}.hero{min-height:650px;background-position:60% center}.hero-overlay{background:linear-gradient(90deg,rgba(247,244,236,.94),rgba(247,244,236,.55) 70%,rgba(247,244,236,.15))}.features{grid-template-columns:repeat(4,1fr);gap:18px}.features div{border:0}.intro{grid-template-columns:1fr}.intro-photo{min-height:390px}.gallery{grid-template-columns:1fr 1fr}.booking{grid-template-columns:1fr}.booking-form{grid-template-columns:1fr 1fr}.booking-form .btn{grid-column:1/-1}}
@media(max-width:620px){.header{height:66px;padding:0 18px}.brand strong{font-size:1.2rem}.brand-mark{font-size:1.7rem}.nav{top:66px}.hero{min-height:690px;align-items:flex-start;padding-top:80px;background-position:67% center}.hero-overlay{background:linear-gradient(180deg,rgba(247,244,236,.96) 0%,rgba(247,244,236,.78) 52%,rgba(247,244,236,.15) 100%)}.hero-content{margin:0 22px}.hero h1{font-size:4.1rem}.hero h2{font-size:1.65rem}.hero-content>p:not(.eyebrow) br{display:none}.hero-actions{flex-direction:column;align-items:flex-start}.location{right:16px;bottom:16px;font-size:.8rem}.features{grid-template-columns:repeat(2,1fr);padding:25px 16px}.intro-copy{padding:45px 24px}.intro-photo{min-height:310px}.gallery{grid-template-columns:1fr}.gallery figure{height:260px}.booking{padding:45px 24px}.booking-form{grid-template-columns:1fr}.booking-form .btn{grid-column:1}.region{height:450px}.region-content{padding:45px 24px}footer{gap:20px;align-items:flex-start;flex-direction:column}}
/* Ajustements v2 : logo, pictogrammes et hero */
.brand-logo{width:42px;height:36px;display:grid;place-items:center;color:var(--green)}
.brand-logo svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.features svg{width:31px;height:31px;margin:0 auto 7px;fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.features div:nth-child(1) svg circle,.features div:nth-child(6) svg circle{fill:var(--green);stroke:none}
.btn-icon{font-size:.78em;margin-right:5px}
@media(min-width:981px){
  .hero{min-height:540px}
  .hero h1{font-size:clamp(4rem,6.15vw,6.1rem);line-height:.78;margin:.35rem 0 1.05rem}
  .hero-overlay{background:linear-gradient(90deg,rgba(247,244,236,.90) 0%,rgba(247,244,236,.66) 25%,rgba(247,244,236,.16) 48%,rgba(247,244,236,0) 64%)}
  .hero-content{max-width:570px}
}
@media(max-width:620px){.brand-logo{width:34px;height:30px}.features svg{width:29px;height:29px}}

/* Ajustements v3 : header plus net + finition du hero */
.header{
  background:#fff;
  border-bottom:1px solid #e4e1da;
  box-shadow:0 2px 8px rgba(0,0,0,.04);
}
.brand{gap:13px}
.brand-logo{width:44px;height:38px}
.brand-logo svg{stroke-width:2.8}
.brand strong{
  font-size:1.58rem;
  font-weight:600;
  line-height:1;
  color:#181914;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.brand small{
  display:block;
  margin-top:7px;
  font-family:Inter,Arial,sans-serif;
  font-size:.68rem;
  font-weight:600;
  line-height:1;
  letter-spacing:.17em;
  color:#343a31;
}
.nav{
  font-size:.90rem;
  font-weight:500;
  color:#1d211c;
  -webkit-font-smoothing:antialiased;
}
.nav>a:not(.btn){padding:28px 0 25px}
.nav .active{border-bottom:2px solid var(--green)}
.features span{font-size:.88rem}

@media(min-width:981px){
  .hero{min-height:525px}
  .hero h1{font-size:clamp(3.8rem,5.65vw,5.65rem);line-height:.80}
  .hero-overlay{background:linear-gradient(90deg,rgba(247,244,236,.86) 0%,rgba(247,244,236,.60) 24%,rgba(247,244,236,.10) 47%,rgba(247,244,236,0) 61%)}
}
@media(max-width:620px){
  .brand-logo{width:36px;height:31px}
  .brand strong{font-size:1.25rem}
  .brand small{font-size:.61rem;margin-top:5px}
}

/* V4 — bande équipements plus lisible */
.features{padding:28px 3.5vw 27px;background:#fbfaf7;align-items:stretch}
.features div{display:flex;min-height:92px;flex-direction:column;align-items:center;justify-content:center;padding:0 14px;border-right:1px solid #d9d6cf}
.features svg{width:38px;height:38px;margin:0 auto 7px;stroke-width:2.2}
.features span{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-size:1.05rem;font-weight:600;line-height:1.15;color:#181914}
.features small{display:block;margin-top:7px;font:600 .62rem/1 Inter,Arial,sans-serif;letter-spacing:.18em;color:#9a7445}
@media(max-width:980px){.features{grid-template-columns:repeat(4,1fr);padding:24px 3vw;row-gap:16px}.features div{min-height:96px;border-right:1px solid #ddd}.features div:nth-child(4n){border-right:0}}
@media(max-width:620px){.features{grid-template-columns:repeat(2,1fr);padding:18px 10px;gap:0}.features div{min-height:112px;padding:12px 8px;border-right:1px solid #ddd;border-bottom:1px solid #e5e2dc}.features div:nth-child(even){border-right:0}.features svg{width:36px;height:36px}.features span{font-size:1rem}.features small{font-size:.58rem}}

/* V5 — lisibilité de la bande des équipements */
.features span{
    font-family:Inter,Arial,sans-serif;
    font-size:1rem;
    font-weight:600;
    line-height:1.25;
    letter-spacing:-.01em;
    color:#171b16;
}
.features small{
    margin-top:8px;
    font-family:Inter,Arial,sans-serif;
    font-size:.64rem;
    font-weight:600;
    line-height:1;
    letter-spacing:.18em;
    color:#9a7445;
}
@media(max-width:620px){
    .features span{font-size:.96rem;line-height:1.25}
    .features small{font-size:.57rem;letter-spacing:.14em}
}
