/* Feuille commune des pages secondaires — La Graineterie & KM99 */
:root{
  --rose:#b5607a; --rose-dk:#7a3a50; --rose-light:#f7edf1; --rose-border:#e8c5d0;
  --km:#1c1c1c; --km-red:#c0392b;
  --white:#fff; --cream:#faf9f7; --stone:#f2ede8;
  --txt:#1a1a1a; --muted:#5f5a57; --border:#e2ddd9;
  --serif:'Cormorant Garamond',Georgia,serif; --sans:'DM Sans',system-ui,sans-serif;
  --sh-1:0 1px 1px rgba(74,34,50,.04),0 2px 4px rgba(74,34,50,.05),0 6px 14px -4px rgba(74,34,50,.08);
  --sh-2:0 1px 2px rgba(74,34,50,.05),0 6px 12px -2px rgba(74,34,50,.07),0 18px 36px -10px rgba(74,34,50,.16);
  --satin:linear-gradient(160deg,#fff 0%,#fdfaf8 55%,#f8f1ee 100%);
  --edge:inset 0 1px 0 rgba(255,255,255,.9);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--sans);color:var(--txt);font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased;
  background:radial-gradient(1200px 600px at 85% 0%,#fbf3f5 0%,rgba(251,243,245,0) 60%),var(--cream)}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
:focus-visible{outline:2px solid var(--rose);outline-offset:3px}
.ico{width:18px;height:18px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* Navigation */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.86);backdrop-filter:saturate(1.4) blur(12px);box-shadow:0 1px 0 rgba(226,221,217,.8),0 8px 24px -12px rgba(74,34,50,.18)}
.nav-in{max-width:1100px;margin:0 auto;padding:12px 24px;display:flex;align-items:center;gap:24px}
.nav-logo{font-family:var(--serif);font-size:21px;font-weight:600;white-space:nowrap}
.nav-logo small{font-weight:400;font-size:16px;opacity:.7}
.nav-links{display:flex;gap:22px;margin-left:auto;font-size:14px;color:var(--muted)}
.nav-links a:hover{color:var(--rose-dk)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;border-radius:999px;padding:12px 24px;font-size:15px;font-weight:500;font-family:var(--sans);cursor:pointer;transition:background .2s,transform .2s,box-shadow .2s;white-space:nowrap}
.btn-rose{color:#fff;background:linear-gradient(180deg,#8c4660 0%,var(--rose-dk) 55%,#6c3246 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 1px 2px rgba(74,34,50,.2),0 8px 18px -6px rgba(122,58,80,.55)}
.btn-rose:hover{background:linear-gradient(180deg,#c27089 0%,var(--rose) 60%,#a1546c 100%);transform:translateY(-1px)}
.btn-ghost{color:var(--rose-dk);background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(255,255,255,.72));border:1px solid var(--rose-border);box-shadow:var(--sh-1),var(--edge)}
.btn-ghost:hover{background:var(--rose-light)}
.btn-wa{color:#fff;background:#25D366;box-shadow:0 8px 18px -6px rgba(37,211,102,.55)}
.nav .btn{padding:9px 18px;font-size:14px}

/* En-tête de page */
.page-hero{max-width:900px;margin:0 auto;padding:130px 24px 40px;text-align:center}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:18px}
.crumbs a{color:var(--rose-dk)}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.5px;color:var(--rose-dk);font-weight:500;margin-bottom:14px}
.page-hero h1{font-family:var(--serif);font-size:clamp(34px,5vw,58px);font-weight:600;line-height:1.08;margin-bottom:18px}
.page-hero h1 em{font-weight:400;color:var(--rose-dk)}
.intro{font-size:clamp(16px,1.3vw,19px);color:var(--muted);max-width:680px;margin:0 auto;line-height:1.8}
.hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.hero-img{max-width:1100px;margin:10px auto 0;padding:0 24px}
.hero-img img{width:100%;aspect-ratio:21/9;object-fit:cover;border-radius:18px;box-shadow:var(--sh-2)}

/* Contenu */
main{max-width:900px;margin:0 auto;padding:10px 24px 90px}
main h2{font-family:var(--serif);font-size:clamp(28px,3.4vw,38px);font-weight:600;line-height:1.15;margin:60px 0 16px}
main h3{font-family:var(--serif);font-size:23px;font-weight:600;margin:28px 0 8px}
main p{color:var(--muted);margin-bottom:16px}
main p strong,main li strong{color:var(--txt);font-weight:500}
main ul.list{margin:0 0 18px 20px;color:var(--muted)}
main ul.list li{margin-bottom:6px}
.link{color:var(--rose-dk);font-weight:500;border-bottom:1px solid var(--rose-border)}

.card{background:var(--satin);border:1px solid rgba(226,221,217,.7);border-radius:16px;padding:22px 24px;box-shadow:var(--sh-1),var(--edge)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:22px 0}
.card h3{margin:0 0 6px}
.card p{font-size:14.5px;margin:0}
.card .meta{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;color:var(--rose-dk);margin-bottom:6px}
.card.gr{border-top:3px solid var(--rose)}
.card.km{border-top:3px solid var(--km-red)}

.highlight{background:linear-gradient(135deg,#fbeff3 0%,#f3dde5 100%);border:1px solid var(--rose-border);border-radius:16px;padding:24px 28px;margin:26px 0;box-shadow:var(--sh-1),var(--edge);display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.highlight .big{font-family:var(--serif);font-size:46px;font-weight:600;color:var(--rose-dk);line-height:1}
.highlight .lbl{flex:1;min-width:220px;color:var(--txt)}

/* Tableau des distances */
.dist{width:100%;border-collapse:separate;border-spacing:0;margin:22px 0;background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--sh-1)}
.dist th,.dist td{padding:11px 16px;text-align:left;font-size:15px;border-bottom:1px solid #f1ece8}
.dist th{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--rose-dk);background:var(--rose-light);font-weight:500}
.dist tr:last-child td{border-bottom:none}
.dist td:nth-child(2),.dist td:nth-child(3),.dist th:nth-child(2),.dist th:nth-child(3){text-align:right;white-space:nowrap}
.dist td:first-child{font-weight:500}
.dist tr:hover td{background:var(--cream)}
.note{font-size:13px;color:var(--muted)}

/* Atouts */
.perks{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}
.perk{background:var(--satin);border:1px solid rgba(226,221,217,.7);border-radius:14px;padding:16px 18px;box-shadow:var(--sh-1),var(--edge)}
.perk b{display:block;font-weight:500;font-size:15px}
.perk span{font-size:13.5px;color:var(--muted)}

/* FAQ */
.faq{border-bottom:1px solid var(--border)}
.faq summary{list-style:none;cursor:pointer;padding:18px 0;display:flex;justify-content:space-between;gap:16px;font-family:var(--serif);font-size:20px;font-weight:600}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-family:var(--sans);font-weight:300;font-size:22px;color:var(--rose-dk);transition:transform .2s}
.faq[open] summary::after{transform:rotate(45deg)}
.faq p{padding:0 0 18px;margin:0}

/* Appel à l'action */
.cta{margin:64px 0 0;border-radius:20px;padding:44px 36px;text-align:center;color:#fff;background:linear-gradient(160deg,#2a2226 0%,#1a1a1a 100%);box-shadow:var(--sh-2)}
.cta h2{color:#fff;margin:0 0 10px}
.cta p{color:rgba(255,255,255,.72);margin:0 auto 24px;max-width:560px}
.cta .row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.cta small{display:block;margin-top:16px;color:rgba(255,255,255,.5);font-size:13px}

footer{background:var(--txt);color:rgba(255,255,255,.6);padding:40px 24px;font-size:14px;text-align:center}
footer a{color:rgba(255,255,255,.85)}
footer p{margin-bottom:8px}

.mbar{display:none}
@media (max-width:760px){
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .nav-links{display:none}
  .nav-in{padding:10px 16px}
  .nav .btn{margin-left:auto}
  .page-hero{padding:100px 20px 28px}
  main{padding:0 20px 60px}
  .grid2,.grid3,.perks{grid-template-columns:1fr}
  .hero-img{padding:0 16px}
  .hero-img img{aspect-ratio:16/10}
  .dist th,.dist td{padding:10px 12px;font-size:14px}
  .cta{padding:32px 20px}
  .cta .btn{width:100%;white-space:normal}
  .mbar{display:grid;grid-template-columns:52px 52px 1fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:150;background:rgba(255,255,255,.9);backdrop-filter:saturate(1.4) blur(12px);border-top:1px solid var(--border);box-shadow:0 -8px 24px -12px rgba(74,34,50,.2);padding:10px 12px calc(10px + env(safe-area-inset-bottom))}
  .mbar a{display:flex;align-items:center;justify-content:center;height:52px;border-radius:14px;border:1px solid var(--border);background:#fff;font-weight:500;font-size:14.5px;gap:8px}
  .mbar .m-wa{background:#25D366;border-color:#25D366;color:#fff}
  .mbar .m-wa svg{width:22px;height:22px;fill:#fff}
  .mbar .m-book{color:#fff;border:none;background:linear-gradient(180deg,#8c4660 0%,var(--rose-dk) 55%,#6c3246 100%)}
}
