/* FR Meal Pre-Order — Foyer Richelieu branding */
:root { --frmp-navy:#2a3b68; --frmp-gold:#b58f54; --frmp-grey:#6f6f6f; --frmp-light:#f5f3ef; }
.frmp-wrap { max-width:720px; margin:0 auto; font-family:"Open Sans",sans-serif; color:#292929; font-size:17px; }
.frmp-intro p { font-size:1.05em; color:var(--frmp-grey); }
.frmp-menus { display:flex; gap:12px; flex-wrap:wrap; margin:0 0 20px; }
.frmp-btn { display:inline-block; background:var(--frmp-navy); color:#fff !important; border:2px solid var(--frmp-navy); border-radius:6px; padding:12px 28px; font-size:1.05em; font-weight:600; font-family:Montserrat,"Open Sans",sans-serif; cursor:pointer; text-decoration:none !important; transition:background .15s; }
.frmp-btn:hover:not(:disabled) { background:var(--frmp-gold); border-color:var(--frmp-gold); }
.frmp-btn:disabled { opacity:.45; cursor:not-allowed; }
.frmp-btn-outline { background:transparent; color:var(--frmp-navy) !important; }
.frmp-btn-outline:hover { background:var(--frmp-navy); color:#fff !important; }
table.frmp-grid { width:100%; border-collapse:collapse; margin:0 0 14px; }
.frmp-grid th { background:var(--frmp-navy); color:#fff; font-family:Montserrat,sans-serif; padding:10px 8px; text-align:center; font-size:1em; }
.frmp-grid th .frmp-price { font-weight:400; font-size:.85em; color:#d8c49a; }
.frmp-grid td { border:1px solid #e3e0da; padding:8px; text-align:center; }
.frmp-col-date { text-align:left !important; font-weight:600; white-space:nowrap; width:38%; }
.frmp-weekend td { background:var(--frmp-light); }
.frmp-cell.frmp-closed { background:#eee; color:#bbb; }
.frmp-check { display:inline-flex; align-items:center; gap:6px; cursor:pointer; margin:0; }
.frmp-check input[type="checkbox"] { width:26px; height:26px; accent-color:var(--frmp-navy); cursor:pointer; margin:0; }
.frmp-check.frmp-incart span { font-size:.8em; color:var(--frmp-gold); font-weight:600; }
.frmp-footerbar { position:sticky; bottom:0; display:flex; align-items:center; gap:16px; flex-wrap:wrap; background:#fff; border-top:3px solid var(--frmp-gold); padding:14px 6px; }
.frmp-total { font-size:1.15em; }
.frmp-total strong { color:var(--frmp-navy); font-size:1.15em; }
@media (max-width:540px) { .frmp-wrap{font-size:15px} .frmp-col-date{width:auto} .frmp-btn{width:100%;text-align:center} .frmp-footerbar{gap:10px} .frmp-total{width:100%} }
@media print { .frmp-footerbar{position:static} }
