*,*::before,*::after{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #117e7c;outline-offset:3px}.validation-message,.validation-errors{color:#a52626}.booking-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.booking-fields{border:0;padding:0;margin:0;min-width:0}.bt-service-options .bt-community-grid{grid-template-columns:minmax(0,1fr)}.tide-casa .service-options{grid-template-columns:minmax(0,1fr)}
/* Blazor moves focus to the page title after navigation; keep control focus rings visible. */
h1[tabindex="-1"]:focus{outline:none}
.restaurant-ordering{min-height:100vh;background:#f9f7f1;color:#163535;font-family:Arial,sans-serif}.ordering-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px max(24px,calc((100vw - 1200px)/2));background:#fff;border-bottom:1px solid #dce4de}.ordering-nav a,.ordering-nav span{color:#245454}.ordering-nav img{display:block}.ordering-main{max-width:1200px;margin:0 auto;padding:46px 24px 64px}.ordering-main h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.05;margin:10px 0 24px;letter-spacing:-.04em}.ordering-main h2{font-size:1.5rem;line-height:1.2;margin:0 0 20px}.ordering-main h3{font-size:1.08rem;line-height:1.3;margin:0 0 8px}.ordering-main p{line-height:1.6}.ordering-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,1fr);gap:40px;align-items:start;margin-top:32px}.ordering-panel{padding:28px;background:#fff;border:1px solid #d6e1d9;border-radius:18px;margin-bottom:28px;min-width:0}.ordering-category{margin-bottom:36px}.ordering-menu-item{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-bottom:1px solid #d6e1d9}.ordering-menu-item p{margin:4px 0 10px;color:#4a6562;font-size:.94rem}.ordering-quantity{display:flex;align-items:center;gap:12px;flex-shrink:0}.ordering-quantity button{min-width:40px;min-height:42px;padding:6px 12px;font-size:1.25rem}.ordering-quantity output{min-width:1.5em;text-align:center;font-variant-numeric:tabular-nums}.ordering-secondary{border:1px solid #acc4b9;border-radius:9px;padding:11px 15px;background:#fff;color:#164b45;font-weight:600;line-height:1.3;margin:3px 4px 3px 0}.restaurant-ordering button:disabled{cursor:not-allowed;opacity:.45}.ordering-options{border:0;padding:0;margin:22px 0;display:flex;flex-wrap:wrap;gap:9px;min-width:0}.ordering-options legend{font-weight:700;margin-bottom:12px;font-size:1rem}.ordering-options label{display:flex;align-items:flex-start;gap:8px;border:1px solid #c7d8cf;border-radius:10px;padding:11px 12px;flex:1 1 105px;cursor:pointer}.ordering-options label:has(input:checked){background:#edf7ee;border-color:#2e7467}.ordering-options label:has(input:disabled){opacity:.55;cursor:not-allowed}.ordering-options input{margin:3px 0 0;accent-color:#196657;min-width:16px;min-height:16px}.ordering-options small{display:block;font-size:.75rem;margin-top:5px;color:#4f6861;line-height:1.4}.ordering-tips label{flex:0 1 auto;font-size:.9rem}.ordering-fields{border:0;margin:0;padding:0;min-width:0}.restaurant-ordering .desk-field{display:flex;flex-direction:column;gap:8px;color:#214b46;font-size:.9rem;font-weight:600;margin:16px 0}.restaurant-ordering .desk-field input,.restaurant-ordering .desk-field textarea{width:100%;border:1px solid #b8cfc1;border-radius:9px;padding:12px;background:#fff;color:#153f38;font-weight:400;font-size:16px;min-width:0}.ordering-note{font-size:.85rem;color:#526860}.ordering-table-badge{display:inline-block;background:#e4f2df;border-radius:10px;padding:10px 15px;color:#215039}.ordering-notice{border:1px solid #bfccad;background:#f1f5e9;border-radius:10px;padding:14px 17px;margin:18px 0;line-height:1.6}.ordering-notice p{margin:4px 0}.ordering-error{color:#9b2525;background:#fff1ec;border-radius:9px;padding:12px;font-size:.95rem}.ordering-summary-lines{list-style:none;padding:0;margin:24px 0}.ordering-summary-lines li{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:7px 0;line-height:1.4}.ordering-summary-lines strong{white-space:nowrap}.ordering-totals{margin:20px 0;border-top:1px solid #d6e1d9;padding-top:12px}.ordering-totals>div{display:flex;justify-content:space-between;gap:14px;margin:11px 0}.ordering-totals dd{margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}.ordering-total{border-top:1px solid #d6e1d9;padding-top:15px;font-weight:700;font-size:1.18rem}.ordering-checkout>.bt-one-button,.ordering-fields>.bt-one-button{width:100%;justify-content:center;margin-top:10px}.ordering-review{border-top:1px solid #d6e1d9;padding-top:18px;margin-top:22px}.ordering-review p{font-size:.92rem}.ordering-receipt{max-width:650px}.ordering-footer{padding:26px;text-align:center;color:#4a6860;font-size:.86rem}.ordering-footer a{color:inherit}.ordering-table-form{display:flex;align-items:end;gap:14px;margin-bottom:28px}.ordering-table-form .desk-field{flex:1;margin:0;max-width:350px}.ordering-table-form button{margin-bottom:1px}.ordering-tables{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:18px}.ordering-table-card{padding:20px;border:1px solid #d6e1d9;border-radius:12px}.ordering-qr{display:block;width:200px;height:200px;object-fit:contain;max-width:100%;margin:12px 0;background:#fff}.ordering-table-card a{font-size:.9rem;overflow-wrap:anywhere;color:#23685a}.ordering-section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:18px}.ordering-section-heading a{color:#23685a}.ordering-orders{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.ordering-recent-order{padding:20px;border:1px solid #d6e1d9;border-radius:12px;overflow-wrap:anywhere}.ordering-recent-order p{font-size:.92rem;margin:10px 0}.ordering-recent-order ul{padding-left:20px;font-size:.92rem;line-height:1.6}.ordering-recent-order a{color:#23685a}.ordering-checkout .bt-one-button{font-size:1rem;white-space:normal}.ordering-nav span{font-size:.88rem}.ordering-main .bt-one-button{min-height:44px}
@media(max-width:760px){.ordering-layout{grid-template-columns:1fr;gap:20px}.ordering-main{padding:28px 18px 40px}.ordering-nav{padding:14px 18px;gap:14px}.ordering-nav span{font-size:.78rem;text-align:right}.ordering-panel{padding:22px 18px}.ordering-menu-item{gap:12px}.ordering-menu-item h3{font-size:1rem}.ordering-quantity{gap:5px}.ordering-quantity button{padding:6px 10px;min-width:36px}.ordering-table-form{flex-direction:column;align-items:stretch}.ordering-table-form .desk-field{max-width:none}.ordering-orders,.ordering-tables{grid-template-columns:1fr}.ordering-section-heading{flex-wrap:wrap}.ordering-options label{padding:10px}.ordering-summary-lines{font-size:.93rem}}

.bt-contact-aside .booking-text-choice{margin:0 0 22px;padding:16px;border:1px solid #cddbd2;border-radius:12px;background:#eef3ed}.bt-contact-aside .booking-text-choice>label{display:flex;align-items:flex-start;gap:10px;font-weight:600;margin:0}.bt-contact-aside .booking-text-choice input[type=checkbox]{width:20px;height:20px;padding:0;margin:2px 0 0;flex:0 0 20px;accent-color:#123f3e}.booking-text-choice small{font-weight:400}.bt-contact-aside .booking-text-choice p{margin:10px 0 0;font-size:.9rem;line-height:1.5;color:#49635e}
