/* Knight's Pub — design « L'Ardoise » : vert bouteille, craie, pierre */
:root{
  --green:#0e2a1f;      /* plafond / fond principal */
  --green-deep:#0a1f17; /* ardoises */
  --green-line:#1c4432;
  --green-neon:#4fae7d; /* accents craie verte */
  --chalk:#f2ead8;      /* craie / texte principal */
  --chalk-soft:#c8e6d3; /* craie verte pâle */
  --stone:#d9c49a;      /* pierre calcaire */
  --muted:#9fb8a7;
  --body:'Lora',Georgia,'Times New Roman',serif;
  --chalkfont:'Caveat','Segoe Script',cursive;
  --label:'Archivo',Verdana,system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
body{background:var(--green);color:var(--chalk);font-family:var(--body);font-size:18px;line-height:1.65}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--green-neon);outline-offset:3px}

/* Header */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;gap:18px;padding:12px 20px;
  background:rgba(10,31,23,.88);backdrop-filter:blur(6px);border-bottom:1px solid var(--green-line)}
.nav .brand{display:flex;align-items:center}
.nav .brand img{height:46px;width:auto;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}
.nav .brand span{color:var(--green-neon)}
.nav ul{display:flex;gap:16px;list-style:none;margin-left:auto;flex-wrap:wrap}
.nav a.l{font-family:var(--label);font-size:12px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--chalk-soft)}
.nav a.l:hover{color:var(--chalk)}
.langs{display:flex;gap:8px;align-items:center}
.langs a{display:block;padding:3px;border:1px solid transparent;border-radius:4px;opacity:.5;transition:.2s}
.langs a:hover{opacity:1}
.langs a.on{opacity:1;border-color:var(--green-line);background:rgba(28,68,50,.5)}
.langs svg{width:26px;height:17px;display:block;border-radius:2px}
@media(max-width:700px){.nav ul{display:none}.langs{margin-left:auto}}

/* Hero */
.hero{position:relative;min-height:92vh;display:flex;align-items:flex-end;overflow:hidden}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,28,20,.30) 0%,rgba(9,28,20,.55) 55%,rgba(9,28,20,.95) 100%)}
.hero .in{position:relative;width:100%;max-width:1080px;margin:0 auto;padding:120px 24px 60px}
.over{font-family:var(--label);font-size:11px;letter-spacing:.35em;text-transform:uppercase;color:var(--chalk-soft)}
.crest-img{width:118px;height:auto;margin-bottom:16px;filter:drop-shadow(0 6px 18px rgba(0,0,0,.5))}
h1{font-size:clamp(46px,8.5vw,92px);font-weight:700;line-height:1;margin:12px 0 10px;text-shadow:0 2px 24px rgba(0,0,0,.55);text-wrap:balance}
.hero .sub{font-style:italic;font-size:clamp(19px,2.5vw,25px);color:#d8cdb4;max-width:36ch}
.ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{font-family:var(--label);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;
  padding:16px 26px;border-radius:6px;border:2px solid var(--chalk);color:var(--chalk);transition:.2s}
.btn.solid{background:var(--chalk);color:var(--green-deep)}
.btn:hover{background:rgba(242,234,216,.15)}
.btn.solid:hover{background:#fff}
.badge{position:absolute;right:5%;top:14%;background:#102e22;border:2px dashed rgba(242,234,216,.6);padding:16px 22px;
  transform:rotate(3deg);text-align:center;box-shadow:0 14px 40px rgba(0,0,0,.4)}
.badge b{display:block;font-family:var(--chalkfont);font-size:30px;line-height:1;font-weight:700}
.badge span{font-style:italic;font-size:15px;color:var(--chalk-soft)}
@media(max-width:820px){.badge{display:none}}

/* Ardoise happy hour */
.slate{background:var(--green-deep);border-top:3px solid var(--green-line);border-bottom:3px solid var(--green-line);
  padding:56px 24px;text-align:center}
.slate h2{font-family:var(--chalkfont);font-size:clamp(40px,6vw,58px);font-weight:700;line-height:1;color:#f6efdd}
.slate h2:before,.slate h2:after{content:" ✳ ";color:var(--green-neon);font-family:var(--body);font-size:.5em;vertical-align:middle}
.slate .hh{font-size:21px;color:var(--chalk-soft);margin-top:10px}
.slate .hh b{color:var(--chalk)}
.chalkline{width:220px;margin:22px auto;border-top:2px dashed rgba(242,234,216,.5)}
.shots{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.shot{border:2px dashed rgba(242,234,216,.4);padding:12px 18px;transform:rotate(-1.5deg)}
.shot:nth-child(2n){transform:rotate(1.5deg)}
.shot b{display:block;font-family:var(--chalkfont);font-size:24px;line-height:1.1}
.shot i{font-size:14px;color:var(--chalk-soft)}
.slate .always{margin-top:24px;font-size:16px;font-style:italic;color:var(--muted)}

/* Sections communes */
.wrap{max-width:1080px;margin:0 auto;padding:84px 24px}
.kick{font-family:var(--label);font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--green-neon);text-align:center}
h2.t{font-size:clamp(28px,4vw,40px);text-align:center;margin:8px 0 10px;text-wrap:balance}
.lead{text-align:center;font-style:italic;color:var(--chalk-soft);max-width:56ch;margin:0 auto 44px}

/* Ambiance */
.duo{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:980px) and (min-width:761px){.duo{grid-template-columns:1fr 1fr}.duo figure:last-child{grid-column:span 2}}
figure{position:relative}
figure img{aspect-ratio:4/3;object-fit:cover;width:100%;border:1px solid var(--green-line)}
figcaption{position:absolute;left:14px;bottom:14px;background:rgba(10,31,23,.85);font-family:var(--label);
  font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:9px 13px}
@media(max-width:760px){.duo{grid-template-columns:1fr}}

/* Carte */
.carte{background:var(--green-deep);border-top:1px solid var(--green-line);border-bottom:1px solid var(--green-line)}
.carte .cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:26px;margin-bottom:40px}
.carte .col{border:2px dashed rgba(242,234,216,.35);padding:22px}
.carte .col h3{font-family:var(--chalkfont);font-size:28px;margin-bottom:8px;color:#f6efdd}
.carte .col p{font-size:16px;color:var(--chalk-soft)}
.carte .pdf{text-align:center}
.carte .pdf .btn{border-color:var(--green-neon);color:var(--chalk)}
.carte .soon{display:block;margin-top:10px;font-style:italic;font-size:14px;color:var(--muted)}
@media(max-width:760px){.carte .cols{grid-template-columns:1fr}}

/* Privatisation */
.priv{position:relative;overflow:hidden}
.priv>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.priv .veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,28,20,.94) 0%,rgba(9,28,20,.72) 55%,rgba(9,28,20,.45) 100%)}
.priv .in{position:relative;max-width:1080px;margin:0 auto;padding:96px 24px}
.priv h2{font-size:clamp(28px,4vw,40px);margin:8px 0 14px;max-width:20ch;text-wrap:balance}
.priv p{max-width:52ch;color:#d8cdb4}
.priv ul{margin:18px 0 26px;padding-left:0;list-style:none;color:var(--chalk-soft)}
.priv li{margin:6px 0}
.priv li:before{content:"✳ ";color:var(--green-neon)}

/* Infos */
.infos .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.info h3{font-family:var(--label);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--green-neon);margin-bottom:10px}
.info p{font-size:17px}
.info .m{color:var(--muted)}
.info .btn{display:inline-block;margin-top:14px;padding:12px 20px}
@media(max-width:760px){.infos .grid{grid-template-columns:1fr;gap:26px}}

footer{border-top:1px solid var(--green-line);text-align:center;padding:26px 24px;color:var(--muted);font-style:italic;font-size:15px}
footer .links{margin-top:6px}
footer a{color:var(--chalk-soft)}
