/* ==========================================================================
   Le Palais de l'Andouille - Daval, artisan charcutier (Le Val d'Ajol)
   Feuille de style unique du site : en-tete, banniere, sections, pied de page.
   ========================================================================== */
:root{
  --rouge:#a51f1f; --rouge-fonce:#7a1414; --noir:#1c1614; --creme:#fbf7f3;
  --gris:#6b5f5a; --trait:#e7dbd2;
}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:#221b19;min-height:100vh;display:flex;flex-direction:column;
  font:16px/1.7 "Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-text-size-adjust:100%}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.22;margin:0 0 14px}
img{max-width:100%;height:auto;display:block}
a{color:var(--rouge)}
.bloc{max-width:1120px;margin:0 auto;padding:0 24px}
.surtitre{text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:700;
  color:var(--rouge);margin:0 0 12px}
.sous{color:var(--gris);max-width:64ch}

/* --- En-tete --- */
.tete{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);
  border-bottom:1px solid var(--trait)}
.tete .bloc{display:flex;align-items:center;gap:18px;min-height:84px;flex-wrap:wrap}
.tete .logo img{height:60px;width:auto}
.menu{margin-left:auto;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.menu a{color:#3a2f2b;text-decoration:none;font-size:.95rem}
.menu a:hover,.menu a.actif{color:var(--rouge)}
.btn{display:inline-block;padding:11px 22px;border-radius:3px;background:var(--rouge);
  color:#fff !important;text-decoration:none;font-weight:600;font-size:.95rem;border:1.5px solid var(--rouge)}
.btn:hover{background:var(--rouge-fonce);border-color:var(--rouge-fonce)}
.btn.clair{background:transparent;border-color:#fff;color:#fff !important}
.btn.clair:hover{background:#fff;color:var(--rouge) !important}

/* --- Banniere --- */
.banniere{position:relative;display:flex;align-items:center;min-height:520px;
  background:#2b211e center/cover no-repeat;color:#fff}
.banniere::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(18,11,9,.82),rgba(18,11,9,.30))}
.banniere .bloc{position:relative;z-index:2;padding:80px 24px}
.banniere h1{font-size:3rem;color:#fff;max-width:17ch}
.banniere p{font-size:1.15rem;color:#f1e0da;max-width:46ch;margin:0}
.banniere .actions{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap}
.banniere.courte{min-height:280px}
.banniere.courte h1{font-size:2.4rem}

/* --- Sections --- */
.section{padding:78px 0}
.section.claire{background:var(--creme)}
.section h2{font-size:2.1rem;color:var(--noir)}
.deux{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.deux img{border-radius:3px}

/* --- Produits --- */
.grille{display:grid;gap:26px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:42px}
.produit{background:#fff;border:1px solid var(--trait)}
.produit img{width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--creme)}
.produit .txt{padding:22px 24px}
.produit h3{font-size:1.2rem;color:var(--rouge);margin-bottom:8px}
.produit p{margin:0;color:var(--gris);font-size:.96rem}

/* --- Boutiques --- */
.boutiques{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:42px}
.boutique{background:#fff;border:1px solid var(--trait);display:flex;flex-direction:column}
.boutique img{width:100%;aspect-ratio:16/10;object-fit:cover}
.boutique .txt{padding:26px 28px 30px;display:flex;flex-direction:column;flex:1}
.boutique h3{font-size:1.4rem;margin-bottom:10px}
.boutique p{color:var(--gris);margin:0 0 22px}
.boutique .btn{align-self:flex-start;margin-top:auto}

/* --- Bande d'appel --- */
.bande{background:var(--rouge);color:#fff;text-align:center;padding:56px 0}
.bande h2{color:#fff;font-size:2rem;margin-bottom:8px}
.bande p{margin:0 0 24px;color:#f6ddd7}

/* --- Contact --- */
.fiches{display:grid;gap:30px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:36px}
.fiche h3{font-size:1.15rem;color:var(--rouge)}
.fiche p{margin:0;color:var(--gris)}
.fiche a{text-decoration:none}
.fiche a:hover{text-decoration:underline}
.plan{margin-top:46px;border:1px solid var(--trait)}
.plan iframe{display:block;width:100%;height:380px;border:0}

/* --- Pied de page --- */
.pied{margin-top:auto;background:var(--noir);color:#c9bab3;padding:56px 0 0;font-size:.94rem}
.pied .cols{display:grid;gap:34px;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));padding-bottom:38px}
.pied h4{color:#fff;font:700 .78rem/1.4 "Segoe UI",Arial,sans-serif;letter-spacing:.16em;
  text-transform:uppercase;margin:0 0 14px}
.pied p{margin:0 0 8px}
.pied a{color:#e4cfc7;text-decoration:none}
.pied a:hover{text-decoration:underline}
.pied .logo{display:inline-block;background:#fff;padding:14px 18px;border-radius:4px}
.pied .logo img{height:62px;width:auto}
.pied .bas{border-top:1px solid rgba(255,255,255,.13);padding:18px 0 22px;text-align:center;
  font-size:.82rem;color:#9c8c85}

/* --- Page 404 --- */
.erreur{text-align:center;padding:92px 0 96px;background:var(--creme);
  display:flex;align-items:center;flex:1}
.erreur .bloc{width:100%}
.erreur .code{font-family:Georgia,"Times New Roman",serif;font-size:6.5rem;line-height:1;
  color:var(--rouge);margin:0 0 6px;letter-spacing:.04em}
.erreur h1{font-size:2.2rem;margin-bottom:14px}
.erreur p{color:var(--gris);max-width:52ch;margin:0 auto 10px}
.erreur .actions{margin-top:30px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.erreur .liens{margin-top:34px;font-size:.95rem}
.erreur .liens a{margin:0 12px;white-space:nowrap;line-height:2.2}

@media (max-width:860px){
  .deux,.boutiques{grid-template-columns:1fr}
  .banniere{min-height:420px}
  .banniere h1{font-size:2.1rem}
  .section{padding:54px 0}
  .tete .bloc{min-height:70px;gap:12px}
  .tete .logo img{height:46px}
  .menu{gap:16px;width:100%;margin-left:0;padding-bottom:12px}
}

@media (max-width:640px){
  .erreur{padding:60px 0 64px}
  .erreur .code{font-size:4.5rem}
}
