*{box-sizing:border-box}
.pub{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--fond);color:var(--encre);
  font:400 1rem/1.6 var(--p)}
.pub a{color:var(--lien)}
.pub :focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.pub__tete :focus-visible,.pub__pied :focus-visible{outline-color:var(--focus-barre)}
.evitement{position:absolute;left:.6rem;top:-4rem;z-index:10;padding:.45rem .8rem;border-radius:4px;
  background:var(--blanc);color:var(--encre);border:2px solid var(--focus);font-weight:700}
.evitement:focus{top:.6rem}
.pub__tete{background:var(--barre);color:var(--barre-txt);border-bottom:3px solid var(--or)}
.pub__saturer{max-width:72rem;margin:0 auto;padding:.9rem 1.2rem;display:flex;align-items:center;
  justify-content:space-between;gap:1.2rem;flex-wrap:wrap}
.pub__marque{display:flex;align-items:center;gap:.8rem;color:#fff;text-decoration:none;
  font:600 1.15rem/1.2 var(--pt)}
.pub .pub__marque{color:#fff}
.pub__marque img{width:auto;height:3rem;max-width:4.5rem;object-fit:contain;border-radius:6px;
  background:rgb(255 255 255/.92);padding:.2rem}
.pub__initiale{width:3rem;height:3rem;border-radius:6px;display:grid;place-items:center;flex:none;
  background:var(--or);color:#1b1a14;font:600 1.5rem/1 var(--pt)}
.pub__nav{display:flex;gap:.2rem;flex-wrap:wrap}
.pub .pub__nav a{padding:.45rem .75rem;border-radius:6px;color:var(--barre-txt);text-decoration:none;
  font-size:.95rem;font-weight:500;transition:background .15s,color .15s}
.pub .pub__nav a:hover{background:rgb(255 255 255/.06);color:#fff}
.pub .pub__nav a[aria-current="page"]{background:rgb(217 178 106/.14);color:#fff;box-shadow:inset 0 -3px 0 var(--or-clair)}
.pub__corps{flex:1 0 auto;width:100%;max-width:72rem;margin:0 auto;padding:2.4rem 1.2rem 3.6rem}
.pub__hero{max-width:44rem;margin-bottom:2rem}
.pub__hero h1{margin:0 0 .8rem;font:700 2rem/1.2 var(--pt);color:var(--encre)}
.pub__hero p{margin:0;color:var(--dim)}
.pub__grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem}
.pub__carte{display:block;padding:1.1rem 1.2rem;border:1px solid var(--bord);border-radius:4px;
  background:var(--blanc);color:var(--encre);text-decoration:none;box-shadow:0 1px 2px rgb(29 34 40/.08);
  border-top:3px solid var(--titre-b)}
.pub a.pub__carte{color:var(--encre)}
.pub a.pub__carte:hover{border-top-color:var(--or);background:var(--fond-2)}
.pub__carte h2{margin:0 0 .5rem;font:700 1.05rem/1.3 var(--pt);color:var(--titre-txt)}
.pub__carte p{margin:0;color:var(--dim);font-size:.92rem}
.pub__carte--statique p+p{margin-top:.3rem}
.pub__carte--statique h3{margin:1rem 0 .2rem;font-size:.95rem;color:var(--dim)}
.pub__section{margin-top:1.8rem}
.pub__section h2{margin:0 0 1rem;font:700 1.3rem/1.3 var(--pt)}
.pub__defile{overflow-x:auto;position:relative;border:1px solid var(--bord);border-radius:4px;
  background:var(--blanc);box-shadow:0 1px 2px rgb(29 34 40/.08)}
.pub__table{width:100%;border-collapse:collapse;font-size:.95rem}
.pub__table th{text-align:left;padding:.55rem .9rem;background:var(--titre-h);color:var(--titre-txt);
  font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;font-weight:700;border-bottom:1px solid var(--bord)}
.pub__table td{padding:.55rem .9rem;border-bottom:1px solid var(--ligne)}
.pub__table tbody tr:nth-child(even){background:var(--zebra)}
.pub__table tbody tr:last-child td{border-bottom:0}
.pub__tarifs{margin:.8rem 0 0;display:grid;gap:.3rem}
.pub__tarifs div{display:flex;justify-content:space-between;gap:1rem;font-size:.92rem}
.pub__tarifs dt{color:var(--dim)}
.pub__tarifs dd{margin:0;font-weight:600}
.pub__contact{margin:0;display:grid;gap:1rem;max-width:30rem}
.pub__contact dt{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--dim);font-weight:700}
.pub__contact dd{margin:.15rem 0 0}
.pub__defunts{margin:.4rem 0 0;padding-left:1.2rem}
.pub__refus{max-width:22rem;padding:.7rem .9rem;border:1px solid var(--err-bord);border-radius:4px;
  background:var(--err-fond);color:var(--err-txt);font-weight:600}
.pub .f-champ{display:grid;gap:.3rem;margin:0 0 .9rem;font-size:.95rem;max-width:22rem}
.pub .f-champ label{color:var(--dim)}
.pub .f-champ input{font:inherit;padding:.45rem .6rem;color:var(--encre);background:var(--champ);
  border:1px solid var(--dim);border-right-color:var(--bord);border-bottom-color:var(--bord);border-radius:2px}
.pub .f-champ ul{margin:0;padding:0;list-style:none;color:var(--err-txt);font-size:.82rem}
.pub .f-actions{display:flex;gap:.5rem}
.pub .b{font:inherit;font-size:.9rem;font-weight:600;padding:.5rem 1rem;border:1px solid var(--or);border-radius:4px;
  background:var(--or);color:#1b1a14;cursor:pointer}
.pub .b:hover{background:var(--or-clair)}
.pub__pied{background:var(--barre);color:var(--barre-txt);font-size:.88rem;border-top:3px solid var(--or)}
.pub__saturer--pied{display:block;padding:1rem 1.2rem}
.pub__pied p{margin:0;padding:.15rem 0}
.pub .pub__pied a{color:var(--or-clair)}
@media (max-width:640px){
  .pub__saturer{flex-direction:column;align-items:flex-start}
  .pub__hero h1{font-size:1.6rem}
}
