.mfb-reservation{--res-ink:#242139;--res-muted:#666775;--res-accent:#282342;--res-line:#dfdedf;background:#f6f4f0;color:var(--res-ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55;padding:44px 24px 48px;clear:both;text-align:left}
.mfb-reservation *{box-sizing:border-box}.mfb-reservation [hidden]{display:none!important}
.mfb-reservation__wrap{max-width:1140px;margin:0 auto}.mfb-reservation__heading{margin-bottom:30px;max-width:810px}
.mfb-reservation .mfb-reservation__eyebrow{font:600 12px/1.5 Arial,Helvetica,sans-serif;letter-spacing:1.8px;text-transform:uppercase;color:#7b6747;margin:0 0 10px}
.mfb-reservation h1{font:normal 48px/1.12 Georgia,'Times New Roman',serif!important;letter-spacing:-1.4px;color:var(--res-ink);margin:0 0 14px;padding:0;border:0;background:none;text-transform:none}
.mfb-reservation__intro{font-size:15px;line-height:1.7;color:var(--res-muted);margin:0;max-width:750px}
.mfb-reservation__layout{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:28px;align-items:start}
.mfb-reservation__restaurant{overflow:hidden;border-radius:16px;background:#eae6df}.mfb-reservation__photo{height:430px;position:relative;overflow:hidden;background-image:linear-gradient(135deg,rgba(255,255,255,.08),rgba(0,0,0,.22))}
.mfb-reservation__photo img{width:100%;height:100%;object-fit:cover;display:block;max-width:none}.mfb-reservation__photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 25%,rgba(10,10,20,.78) 100%);pointer-events:none}
.mfb-reservation__caption{position:absolute;z-index:1;bottom:32px;left:30px;right:24px;color:white}.mfb-reservation__caption span{font:600 11px/1.5 Arial,sans-serif;letter-spacing:2px;color:#e9d4ae}
.mfb-reservation .mfb-reservation__caption h2{font:normal 34px/1.22 Georgia,serif!important;letter-spacing:-.5px;color:#fff;margin:13px 0 0;text-transform:none;background:none;padding:0;border:0}
.mfb-reservation__contact{padding:27px 30px 30px}.mfb-reservation .mfb-reservation__contact h2{font:bold 17px/1.4 Arial,sans-serif!important;text-transform:none;color:var(--res-ink);margin:0 0 9px;padding:0;background:none;border:0}
.mfb-reservation__contact p{font-size:14px;color:#55525d;margin:0 0 17px;line-height:1.65}.mfb-reservation a.mfb-reservation__phone{display:inline-block;color:var(--res-ink);font-size:14px;font-weight:bold;border-bottom:1px solid #b8afa0;padding-bottom:4px;text-decoration:none}.mfb-reservation__phone span{margin-left:15px}
.mfb-reservation__card{background:#fff;border:1px solid #e7e3dc;border-radius:16px;padding:32px;box-shadow:0 8px 30px rgba(32,28,16,.035);min-width:0}.mfb-reservation__step{font:600 11px/1.5 Arial,sans-serif;letter-spacing:1.5px;color:#8b7858;display:block}
.mfb-reservation .mfb-reservation__card h2{font:normal 29px/1.3 Georgia,serif!important;text-transform:none;color:var(--res-ink);margin:8px 0 6px;padding:0;background:none;border:0}.mfb-reservation__card-heading p{font-size:14px;color:var(--res-muted);margin:0 0 25px}
.mfb-reservation__visit{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr) minmax(0,1fr);gap:12px}.mfb-reservation__field{min-width:0;margin:0}
.mfb-reservation label{font:600 14px/1.5 Arial,sans-serif;display:block;color:#373343;margin:0 0 7px;float:none;text-transform:none}.mfb-reservation label span{font-weight:normal;font-size:12px;color:#80808b;margin-left:5px}
.mfb-reservation .mfb-reservation__field input,.mfb-reservation .mfb-reservation__field select,.mfb-reservation .mfb-reservation__field textarea{display:block;width:100%;max-width:100%;min-width:0;height:48px;margin:0;border:1px solid var(--res-line);border-radius:7px;padding:11px 12px;background:#fff;color:var(--res-ink);font:normal 15px/1.45 Arial,sans-serif;box-shadow:none;float:none;outline:none;transition:border-color .15s,box-shadow .15s}
.mfb-reservation .mfb-reservation__field input[type=date]{min-height:48px;appearance:auto;-webkit-appearance:auto}.mfb-reservation .mfb-reservation__field select{padding-right:6px;appearance:auto;-webkit-appearance:auto}.mfb-reservation .mfb-reservation__field textarea{height:auto;min-height:90px;resize:vertical}
.mfb-reservation .mfb-reservation__field ::placeholder{color:#9996a0;opacity:1}.mfb-reservation .mfb-reservation__field :focus{border-color:#777086;box-shadow:0 0 0 3px #efedf3}.mfb-reservation .mfb-reservation__field [aria-invalid=true]{border-color:#be3f38}.mfb-reservation .mfb-reservation__field select:disabled{background:#f6f5f6;color:#88848d;cursor:not-allowed}
.mfb-reservation__error{display:block;font-size:12px;line-height:1.5;color:#ad322b;margin-top:5px}.mfb-reservation__error:empty{display:none}.mfb-reservation__times-status{font-size:12px;line-height:1.6;color:var(--res-muted);margin:10px 0 0;min-height:20px}
.mfb-reservation__details-heading{border-top:1px solid #eeebef;margin:23px 0 18px;padding-top:20px}.mfb-reservation__details{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:17px 15px}.mfb-reservation__full{grid-column:1/-1}
.mfb-reservation .mfb-reservation__button{display:flex;align-items:center;justify-content:center;gap:24px;width:100%;min-height:52px;padding:14px 20px;margin:24px 0 0;border:1px solid var(--res-accent);border-radius:7px;background:var(--res-accent);color:#fff!important;font:bold 15px/1.4 Arial,sans-serif;cursor:pointer;text-decoration:none;text-shadow:none;box-shadow:none;text-transform:none;float:none;white-space:normal}
.mfb-reservation .mfb-reservation__button:hover{background:#3c355b}.mfb-reservation .mfb-reservation__button:focus-visible{outline:3px solid #bbabcb;outline-offset:3px}.mfb-reservation .mfb-reservation__button:disabled{opacity:.65;cursor:wait}
.mfb-reservation__confirmation{font-size:12px;line-height:1.7;color:var(--res-muted);margin:12px auto 0;text-align:center;max-width:410px}.mfb-reservation__alert{font-size:14px;line-height:1.5;background:#fff0ed;border:1px solid #f0c2b9;color:#9b3025;border-radius:7px;padding:12px 14px;margin:18px 0 0}
.mfb-reservation__success{text-align:center;padding:65px 10px;outline:none}.mfb-reservation__success p{color:var(--res-muted);font-size:15px}.mfb-reservation__success-mark{display:inline-grid;place-items:center;background:#e5efe7;color:#35724b;width:64px;height:64px;border-radius:50%;font-size:30px;margin-bottom:18px}
.mfb-reservation__closed{padding:40px 0}.mfb-reservation__closed p{font-size:15px;color:var(--res-muted)}.mfb-reservation__footer-note{font-size:12px;line-height:1.7;text-align:center;color:#77717b;max-width:850px;margin:26px auto 0}
@media(max-width:950px){.mfb-reservation__layout{gap:20px;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}.mfb-reservation__card{padding:25px}.mfb-reservation__photo{height:370px}.mfb-reservation__caption{left:22px}.mfb-reservation .mfb-reservation__caption h2{font-size:28px!important}.mfb-reservation__contact{padding:24px}}
@media(max-width:740px){.mfb-reservation{padding:29px 16px 32px}.mfb-reservation h1{font-size:36px!important;letter-spacing:-.7px}.mfb-reservation__heading{margin-bottom:22px}.mfb-reservation__intro{font-size:14px}.mfb-reservation__layout{display:flex;flex-direction:column;gap:22px}.mfb-reservation__card{order:0;width:100%;padding:24px 20px}.mfb-reservation__restaurant{order:1;width:100%;display:grid;grid-template-columns:1fr 1fr}.mfb-reservation__photo{height:auto;min-height:235px}.mfb-reservation__caption{left:16px;bottom:20px}.mfb-reservation .mfb-reservation__caption h2{font-size:23px!important}.mfb-reservation__caption span{font-size:9px}.mfb-reservation__contact{padding:22px 18px}.mfb-reservation .mfb-reservation__field input,.mfb-reservation .mfb-reservation__field select,.mfb-reservation .mfb-reservation__field textarea{font-size:16px}.mfb-reservation__visit{grid-template-columns:1fr 1fr}.mfb-reservation__visit .mfb-reservation__field:first-child{grid-column:1/-1}.mfb-reservation__details{grid-template-columns:1fr}.mfb-reservation__details-heading{margin-top:20px}.mfb-reservation__confirmation{font-size:12px}.mfb-reservation__footer-note{display:none}}
@media(prefers-reduced-motion:reduce){.mfb-reservation *{transition:none!important}}

.mfb-reservation .mfb-reservation__retry{border:0;background:none;color:var(--res-accent);text-decoration:underline;font:600 13px/1.5 Arial,sans-serif;padding:5px 0;cursor:pointer}
