/* ── Pages-lieu "Que voir au Maroc" (charte olive) ── */
.lieu-hero{ position:relative; min-height:56vh; display:flex; align-items:flex-end;
  padding:0 5rem 3rem; overflow:hidden; background:#152E1F; }
.lieu-hero::before{ content:''; position:absolute; inset:0; background-image:var(--img);
  background-size:cover; background-position:center; z-index:0; }
.lieu-hero.noimg::before{ background:
  repeating-linear-gradient(135deg,rgba(200,164,64,.08) 0 9px,transparent 9px 18px),
  linear-gradient(160deg,#2A5238,#152E1F); }
.lieu-hero::after{ content:''; position:absolute; inset:0; z-index:0;
  background:linear-gradient(0deg,rgba(21,46,31,.92),rgba(21,46,31,.35) 55%,rgba(21,46,31,.55)); }
.lieu-hero .inner{ position:relative; z-index:2; max-width:1100px; margin:0 auto; width:100%; }
.fil{ font-family:'DM Sans',sans-serif; font-size:.72rem; letter-spacing:.06em; color:rgba(255,255,255,.75);
  margin-bottom:.8rem; }
.fil a{ color:rgba(255,255,255,.75); text-decoration:none; } .fil a:hover{ color:var(--gold); }
.fil .fam{ color:var(--gold); }
.lieu-hero h1{ font-family:'Playfair Display',serif; color:#fff; font-size:clamp(2rem,5vw,3.4rem);
  line-height:1.08; margin-bottom:.6rem; }
.lieu-hero .accroche{ color:rgba(255,255,255,.9); font-size:1.05rem; max-width:640px; line-height:1.6; font-style:italic; }

.lieu-wrap{ max-width:820px; margin:0 auto; padding:3.5rem 1.5rem 4rem; }
.lieu-wrap .intro p{ font-size:1rem; color:#2c352d; line-height:1.8; margin-bottom:1.2rem; }
.lieu-wrap h2{ font-family:'Playfair Display',serif; color:var(--navy); font-size:1.6rem; margin:2.4rem 0 1.1rem; }
.avoir{ list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:.6rem 1.4rem; }
.avoir li{ position:relative; padding-left:1.5rem; font-size:.92rem; color:#3a4139; line-height:1.5; }
.avoir li::before{ content:''; position:absolute; left:0; top:.5em; width:8px; height:8px; border-radius:50%;
  background:var(--gold); }
.lieu-cta{ margin:2.6rem 0; background:var(--navy); border-radius:12px; padding:1.6rem 1.8rem;
  display:flex; align-items:center; justify-content:space-between; gap:1.2rem; flex-wrap:wrap; }
.lieu-cta b{ font-family:'Playfair Display',serif; color:#fff; font-size:1.15rem; display:block; }
.lieu-cta span{ color:rgba(255,255,255,.8); font-size:.88rem; }
.faq-item{ border-top:1px solid var(--line); padding:1.1rem 0; }
.faq-item h3{ font-family:'DM Sans',sans-serif; font-weight:600; color:var(--navy); font-size:1rem; margin-bottom:.4rem; }
.faq-item p{ color:#4a5148; font-size:.92rem; line-height:1.65; }
.voisins{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:1.1rem; }
.voisin{ display:block; text-decoration:none; border:1px solid var(--line); border-radius:10px; overflow:hidden;
  background:#fff; transition:border-color .2s,transform .2s; }
.voisin:hover{ border-color:var(--gold); transform:translateY(-2px); }
.voisin .v-ph{ height:96px; background:
  repeating-linear-gradient(135deg,rgba(200,164,64,.09) 0 9px,transparent 9px 18px),
  linear-gradient(160deg,#2A5238,#152E1F); background-size:cover; background-position:center; }
.voisin .v-nom{ padding:.7rem .9rem; font-family:'Playfair Display',serif; color:var(--navy); font-size:.98rem; }
@media (max-width:900px){
  .lieu-hero{ padding:140px 1.5rem 2.4rem; min-height:0; }
  .avoir{ grid-template-columns:1fr; }
  .voisins{ grid-template-columns:1fr; }
}
