/* ----------
  NOMYA — styles de base
---------- */
:root{
  --sage:#8d9a8c;       /* vert sauge (fond logo) */
  --sage-dark:#7e8b7d;
  --cream:#efe6d9;      /* texte crème du logo */
  --ink:#1f2321;        /* contraste élevé */
  --sand:#f7f3ee;
  --shadow: 0 10px 30px rgba(0,0,0,.12);
  --radius: 14px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:'Poppins', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  color:var(--ink);
  background:linear-gradient(180deg,var(--sand),#ffffff);
  line-height:1.6;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}

/* Header */
.site-header{
  position:sticky; top:0; z-index:10;
  display:flex; align-items:center; justify-content:space-between;
  padding:.75rem 1rem; background:rgba(255,255,255,.75); backdrop-filter: blur(8px);
  border-bottom:1px solid rgba(0,0,0,.04);
}
.site-header[data-elevate].scrolled{box-shadow:var(--shadow);}

.brand img{height:40px; width:auto; display:block; border-radius:8px}

.nav ul{display:flex; gap:1rem; align-items:center; list-style:none; margin:0; padding:0}
.nav a{color:var(--ink); text-decoration:none; font-weight:500}
.nav a:hover{opacity:.8}
.burger{display:none; font-size:1.25rem; background:none;border:0}

/* Hero */
.hero{
  background: var(--sage);
  color: var(--cream);
  padding: 7rem 1rem 5rem;
  position: relative;
  overflow:hidden;
}
.hero__media{position:absolute; inset:0; display:flex; justify-content:center; align-items:center; opacity:.06}
.hero__logo{max-width:540px; width:80%; filter:grayscale(100%) contrast(110%)}
.hero__content{position:relative; max-width:1100px; margin:0 auto; text-align:center}
.hero h1{font-size: clamp(2rem, 4vw, 3rem); margin:0 0 .5rem}
.lead{font-size: clamp(1.05rem, 2.2vw, 1.25rem); margin:0 0 1.25rem}
.hero__badges{display:flex; gap:.5rem; justify-content:center; margin-top:1rem; opacity:.9}
.hero__badges span{border:1.5px solid var(--cream); padding:.35rem .6rem; border-radius:999px; font-size:.85rem}

/* Sections */
.section{padding:4rem 1rem}
.section--alt{background:#fff}
.section__header{max-width:900px; margin:0 auto 2rem; text-align:center}
.container{max-width:1100px; margin:0 auto}
.center{text-align:center}
.micro{font-size:.9rem; opacity:.75}

/* Cards / grid */
.grid{display:grid; gap:1rem}
.grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{
  background:#fff; border:1px solid rgba(0,0,0,.06); border-radius:var(--radius); padding:1.25rem;
  box-shadow:var(--shadow);
}
.card h3{margin-top:0}

/* Teaser cards */
.grid--cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1.25rem}
.teaser{background:#fff; border-radius:var(--radius); overflow:hidden; border:1px solid rgba(0,0,0,.05); box-shadow:var(--shadow)}
.teaser__media{height:180px; background:linear-gradient(135deg,var(--sage),var(--sage-dark)); opacity:.8}
.teaser__content{padding:1rem}
.link{color:var(--sage-dark); font-weight:600; text-decoration:none}
.link:hover{text-decoration:underline}

/* Founder */
.founder{display:grid; grid-template-columns: 1.2fr .8fr; gap:1.5rem; align-items:center}
.founder__media{border-radius:var(--radius); height:320px; background:linear-gradient(160deg,var(--sage),var(--sage-dark)); box-shadow:var(--shadow)}

/* Gallery */
.gallery{display:grid; grid-template-columns:repeat(6,1fr); gap:.6rem}
.gallery .ph{padding-top:75%; background:#e8ece7; border-radius:.6rem; box-shadow:inset 0 0 0 2px rgba(0,0,0,.03)}

/* --- Section "À l’origine de NOMYA" --- */
.section--about{
  background:#f3ece2;                 /* beige doux, dans l’esprit de ta palette */
  padding:4rem 1rem;
}
.section--about .container{
  max-width:820px;
}
.section--about h2{
  text-align:center;
  margin:0 0 1.5rem;
}
.section--about p{
  line-height:1.7;
  margin:0 0 1.1rem;
  color:var(--ink);
}
.about-quote{
  margin:1.5rem 0;
  padding:1.1rem 1.4rem;
  border-left:4px solid var(--sage);   /* vert sauge NOMYA */
  background:#f7f3ee;
  font-style:italic;
  color:var(--ink);
}

/* CTA band */
.section--cta{background:linear-gradient(180deg,var(--sage),var(--sage-dark)); color:var(--cream); text-align:center}
.section--cta a{color:var(--cream)}

/* Buttons */
.cta{
  display:inline-block; padding:.85rem 1.15rem; border-radius:999px; font-weight:700; letter-spacing:.2px; text-decoration:none;
  background:var(--ink); color:#fff; transition: transform .08s ease, box-shadow .2s ease;
  box-shadow:0 8px 20px rgba(0,0,0,.18);
}
.cta:hover{transform: translateY(-1px)}
.cta--inline{background:var(--sage-dark)}
.cta--ghost{background:transparent; border:1.5px solid var(--ink); color:var(--ink)}
.cta--frame{background:transparent; border:2px solid var(--cream); color:var(--cream)}
.cta--lg{font-size:1.05rem; padding:1rem 1.5rem}

/* Footer */
.site-footer{padding:2rem 1rem; background:#111; color:#ddd}
.footer__grid{display:grid; gap:1rem; grid-template-columns:1fr auto auto; align-items:end}
.site-footer a{color:#fff; text-decoration:none}
.site-footer a:hover{text-decoration:underline}

/* Responsive */
@media (max-width: 880px){
  .grid--3{grid-template-columns:1fr}
  .founder{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(3,1fr)}
  .nav ul{display:none}
  .burger{display:block}
}
.teaser {
  transition: opacity 0.3s ease, transform 0.3s ease;
}

/* ----------
   Helpers
---------- */
.is-hidden {
  display: none;
}

/* Bloc des séjours supplémentaires : centré en dessous des 2 premiers */
.extra-sejours {
  margin-top: 2.5rem;
  max-width: 720px;        /* largeur contenue pour un joli centrage */
  margin-left: auto;
  margin-right: auto;
}

/* Détails des séjours (texte qui s'ouvre) */
.teaser__details {
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(0, 0, 0, 0.06);
  font-size: 0.95rem;
  line-height: 1.7;
}

.teaser__details h4 {
  margin-bottom: 0.5rem;
  font-size: 1rem;
}

.teaser__details ul {
  padding-left: 1.2rem;
  margin-bottom: 1rem;
}

/* Zone des boutons "Je réserve" + "En savoir plus" */
.teaser__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  margin-top: 1rem;
}


