/* Continuous backgrounds; existing inner columns remain bounded. */
body { background-color: #fcfaf5; }
#page { width: 100%; max-width: none; margin-inline: 0; }
#site-content { background-color: #fcfaf5; }
/* Top-level section backgrounds fill the page; nested cards keep their layout. */
#site-content > article.page > .wp-block-cover,
#site-content > article.page > .wp-block-group.has-background { width: 100%; max-width: none; margin-inline: 0; }
#site-content > article.page > .wp-block-columns.has-background {
    width: 100%; max-width: none; margin-inline: 0;
    padding-inline: max(24px, calc((100% - 1320px) / 2 + 12px));
}
#site-content > article.page > .wp-block-group.has-background > .wp-block-group__inner-container {
    max-width: 1320px; margin-inline: auto; padding-inline: 24px;
}
/* Plain, ungrouped prose also retains a comfortable reading measure. */
#site-content > article.page > :is(p,h1,h2,h3,h4,ul,ol):not(.has-background) {
    max-width: 760px; margin-inline: auto; padding-inline: 24px;
}
@media (max-width: 600px) {
    #site-content > article.page > .wp-block-columns.has-background,
    #site-content > article.page > .wp-block-group.has-background > .wp-block-group__inner-container,
    #site-content > article.page > :is(p,h1,h2,h3,h4,ul,ol):not(.has-background) { padding-inline: 20px; }
}

/* Quiet booking dock. Keep the final content and focused controls above it. */
body:has(nav.svelte-1gi6h7b){padding-bottom:76px}
html:has(nav.svelte-1gi6h7b){scroll-padding-bottom:88px}
body nav.svelte-1gi6h7b.svelte-1gi6h7b{
    left:auto;right:20px;bottom:16px;width:max-content;max-width:calc(100% - 40px);
    border:1px solid #aa2118;border-radius:10px;background:#aa2118;
    box-shadow:0 2px 12px #302d2914;z-index:990;
}
nav.svelte-1gi6h7b ul.svelte-1gi6h7b{flex-direction:row}
nav.svelte-1gi6h7b button.svelte-1gi6h7b{
    min-height:44px;padding:10px 15px;font-size:14px;gap:7px;
    background:#aa2118;color:#fff;justify-content:center;
}
nav.svelte-1gi6h7b li:not(:last-child) button.svelte-1gi6h7b{border-bottom:0;border-right:1px solid #8b1a13}
nav.svelte-1gi6h7b button.svelte-1gi6h7b:hover{background:#8b1a13;color:#fff}
nav.svelte-1gi6h7b button.svelte-1gi6h7b:focus-visible{outline:2px solid #fff;outline-offset:-4px}
nav.svelte-1gi6h7b svg.svelte-1gi6h7b{width:18px;height:18px;flex-shrink:0}
nav.svelte-1gi6h7b svg [stroke]{stroke:currentColor}
nav.svelte-1gi6h7b svg [fill="#FFFFFF"]{fill:currentColor}
@media(max-width:767px){
    body:has(nav.svelte-1gi6h7b){padding-bottom:calc(60px + env(safe-area-inset-bottom,0px))}
    html:has(nav.svelte-1gi6h7b){scroll-padding-bottom:calc(76px + env(safe-area-inset-bottom,0px))}
    body nav.svelte-1gi6h7b.svelte-1gi6h7b{left:0;right:0;bottom:0;max-width:none;width:100%;border:0;border-top:1px solid #8b1a13;border-radius:0;padding:7px 12px calc(7px + env(safe-area-inset-bottom,0px));box-shadow:0 -2px 10px #302d290a}
    nav.svelte-1gi6h7b ul.svelte-1gi6h7b{width:100%}
    nav.svelte-1gi6h7b li.svelte-1gi6h7b{flex:1;min-width:0}
    nav.svelte-1gi6h7b button.svelte-1gi6h7b{font-size:14px;padding:10px 6px;min-height:44px;white-space:nowrap}
}
/* Give focused fields breathing room when the on-screen keyboard is open. */
@media(max-width:767px){body:has(input:focus,textarea:focus,select:focus) nav.svelte-1gi6h7b{visibility:hidden}}
