/* RMGT — annuaire boutiques Montgallet (dépend de rmgt.css) */
.shops{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--s5);margin:0;padding:0;list-style:none}
.shop{display:flex;flex-direction:column;gap:var(--s3);height:100%;padding:var(--s4);background:var(--paper);
  border:var(--bw) solid var(--ink);box-shadow:var(--sh);transition:transform .08s,box-shadow .08s}
.shop:hover,.shop:focus-within{transform:translate(-2px,-2px);box-shadow:var(--sh-lg)}
.shop__head{display:flex;align-items:center;gap:var(--s3)}
.shop__logo{flex:none;display:grid;place-items:center;width:52px;height:52px;background:var(--c,var(--yellow));
  border:var(--bw) solid var(--ink);font:700 1.2rem/1 var(--font)}
.shop__name{margin:0;font-size:var(--fs-lg)}
.shop__name a{color:var(--ink);text-decoration:none}.shop__name a:hover{background:var(--yellow)}
.shop__addr{font-style:normal;font-weight:500}
.shop__tags{display:flex;flex-wrap:wrap;gap:var(--s2);margin:0;padding:0;list-style:none}
.shop__status{display:flex;align-items:center;gap:var(--s2);margin:0;padding:var(--s2) var(--s3);
  border:var(--bw) solid var(--ink);font:700 var(--fs-sm)/1.3 var(--font)}
.shop__status::before{content:"";width:12px;height:12px;background:var(--ink);flex:none}
.shop__status--open{background:var(--green)}
.shop__status--closed{background:var(--red);color:#fff}.shop__status--closed::before{background:#fff}
.shop__offers{margin:0;font-weight:700}.shop__offers strong{background:var(--ink);color:var(--paper);padding:0 var(--s1)}
.shop__hours summary{cursor:pointer;font:700 var(--fs-sm)/1.4 var(--font);text-decoration:underline;text-decoration-thickness:2px}
.shop__hours dl{display:grid;grid-template-columns:auto 1fr;gap:2px var(--s3);margin:var(--s2) 0 0;font-size:var(--fs-sm)}
.shop__hours dt{font-weight:700}.shop__hours dd{margin:0}
.shop .btn{margin-top:auto}
.shops-filter{display:flex;flex-wrap:wrap;gap:var(--s2);margin:0 0 var(--s5);padding:0;list-style:none}
.shops-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--s4);margin-top:var(--s6)}
.shops-info>div{padding:var(--s4);border:var(--bw) solid var(--ink);box-shadow:var(--sh);background:var(--blue);color:#fff}
.shops-info>div:nth-child(2){background:var(--yellow);color:var(--ink)}
.shops-info>div:nth-child(3){background:var(--green);color:var(--ink)}
.shops-info h3{margin-bottom:var(--s1)}.shops-info p{margin:0}
