/* Réserver une table — styles propres à la page (refonte 2026-09-24) */

.rs-hero{min-height:56vh;min-height:56svh}
@media (max-width:760px){.rs-hero{min-height:64svh}}
.rs-hero h1{max-width:16ch}

.rs-main{padding-top:clamp(40px,7vw,96px)}
.rs-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}
@media (max-width:960px){.rs-grid{grid-template-columns:1fr}}
.rs-intro{color:var(--muted);max-width:52ch}

/* Rappels : midi / soir / lundi */
.rs-rules{list-style:none;margin:22px 0 26px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rs-rules li{display:flex;align-items:center;gap:10px;background:var(--washi);border-radius:12px;padding:12px 12px;line-height:1.3;font-size:.95rem}
.rs-rules b{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-d)}
.rs-rules__ico{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--shu)}
.rs-rules__ico svg{width:18px;height:18px}
@media (max-width:560px){
  .rs-rules{gap:6px;margin:18px 0 20px}
  .rs-rules li{flex-direction:column;justify-content:center;text-align:center;gap:6px;padding:12px 6px;font-size:.95rem}
  .rs-rules__ico{width:32px;height:32px}
  .rs-rules b{font-size:.7rem;letter-spacing:.12em}
}

/* Module resOS : avant chargement = gros bouton (sk.css) ; après = iframe */
.rs-widget{scroll-margin-top:calc(var(--hdr) + 12px);background:#fff;border-radius:var(--r);box-shadow:var(--shadow-s);padding:clamp(18px,3vw,28px);text-align:center;position:relative}
.rs-widget::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;border-radius:var(--r) var(--r) 0 0;background:var(--shu)}
.rs-widget a#booking-widget-2{width:100%;max-width:420px}
.rs-widget iframe#booking-widget-2,.rs-widget iframe.resos-booking-widget{display:block;width:100%!important;max-width:none!important;height:720px!important;min-height:0!important;margin:0 auto;padding:0;border:0;border-radius:10px;background:#fff;box-shadow:none;color:inherit}
@media (max-width:560px){
  .rs-widget{padding:10px 6px 12px;margin:0 calc(var(--gut) * -.5)}
  .rs-widget iframe#booking-widget-2,.rs-widget iframe.resos-booking-widget{height:760px!important}
}
.rs-help{margin:12px 0 0;text-align:center}
.rs-help a{color:var(--shu-d);font-weight:700}

/* Colonne téléphone / horaires */
.rs-side{display:grid;gap:20px}
@media (min-width:961px){.rs-side{position:sticky;top:calc(var(--hdr) + 20px)}}
.rs-phone{background:var(--ink);color:#e9e3d8;border-radius:var(--r);padding:clamp(22px,3.5vw,32px);position:relative;overflow:hidden}
.rs-phone::after{content:"電話";position:absolute;right:14px;top:14px;writing-mode:vertical-rl;font-family:var(--jp);font-size:2.2rem;line-height:1;color:#fff;opacity:.08}
.rs-phone .sk-eyebrow{color:var(--gold-l)}
.rs-phone__title{color:#fff;font-size:clamp(1.5rem,3vw,1.9rem)}
.rs-phone p{color:#cfc6b8}
.rs-phone__num{display:flex;align-items:center;justify-content:center;gap:12px;min-height:58px;margin:6px 0 12px;border-radius:999px;background:var(--shu);color:#fff;text-decoration:none;font-family:var(--serif-text);font-weight:700;font-size:1.45rem;letter-spacing:.04em}
.rs-phone__num svg{width:22px;height:22px}
.rs-phone__num:hover{background:var(--shu-d)}
.rs-phone .rs-phone__note{font-size:.93rem;color:#a79e90;margin-bottom:12px}
.rs-phone .sk-status{background:rgba(255,255,255,.1);color:#bfe3a5}
.rs-phone .sk-status.is-closed{color:#f3b3a9}

.rs-hours{background:#fff;border-radius:var(--r);padding:clamp(20px,3vw,28px);box-shadow:0 1px 0 var(--line),var(--shadow-s)}
.rs-hours__title{display:flex;align-items:center;gap:10px;font-size:1.3rem;margin-bottom:.4em}
.rs-hours__title svg{width:22px;height:22px;color:var(--shu)}
.rs-hours .sk-hours{margin-bottom:12px}
.rs-hours .sk-hours tr.is-current th,.rs-hours .sk-hours tr.is-current td{color:var(--ink)}
.rs-hours .sk-hours tr.is-current th::after{content:"en ce moment";display:block;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--shu-d);font-weight:700;margin-top:2px}
.rs-special{margin:0}

/* Avant de venir */
.rs-reviews{margin-top:clamp(36px,5vw,56px);text-align:center}
.rs-reviews p{margin:0 0 12px;color:var(--muted);font-size:.9rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.rs-reviews__links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.rs-reviews__links a{display:inline-flex;align-items:center;min-height:46px;padding:.5em 1.4em;border-radius:999px;border:1px solid var(--line);background:#fff;text-decoration:none;font-weight:700;letter-spacing:.04em}
.rs-reviews__links a:hover{border-color:var(--ink)}
@media (max-width:1180px){.rs-main .sk-vert{display:none}}
@media (max-width:400px){.rs-hours{padding:20px 16px}.rs-hours .sk-hours{font-size:.95rem}.rs-hours .sk-hours th{padding-right:10px}}

/* QA visuelle 25/09 */
.rs-main .sk-title,.rs-more .sk-title{text-wrap:balance}
.rs-help a{white-space:nowrap}
/* Tablette : les 3 tuiles restent sur une ligne (évite la 3e tuile géante en pleine largeur) */
@media (min-width:641px) and (max-width:1023px){
  .rs-more .sk-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
  .rs-more .sk-grid--3>:nth-child(3):last-child{grid-column:auto}
  .rs-more .sk-tile__body h3{font-size:1.2rem}
}
/* Mobile : les 3 plateformes d'avis tiennent sur une seule ligne */
@media (max-width:480px){
  .rs-reviews__links{gap:8px;flex-wrap:nowrap}
  .rs-reviews__links a{padding:.5em 1em;font-size:.95rem;letter-spacing:.02em}
}
@media (max-width:350px){.rs-reviews__links{flex-wrap:wrap}}
