html{min-height:100%;background:#fff}
body.home-page{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
.home-page header{position:relative;background:transparent;z-index:20;flex-wrap:wrap;min-height:74px;padding:12px 0;border-bottom:1px solid #222}
.home-page header::after{display:none}
.home-page .toggle{display:inline-flex;align-items:center;justify-content:center;order:0;width:44px;height:44px;padding:7px 0;background:transparent}
.home-page .brand{order:1;margin-left:auto}
.home-page main{flex:1;min-height:0;padding:0}
.home-background{position:fixed;inset:0;z-index:0;background:url("images/home-background.jpg") center center/cover no-repeat;opacity:1;transition:opacity .55s ease;pointer-events:none}
.home-page.home-leaving .home-background{opacity:0}
.home-page footer{position:relative;z-index:2;margin-top:auto;background:transparent}
.home-page nav,.home-page nav.open,html.enhanced .home-page nav,html.enhanced .home-page nav.open{display:flex;position:fixed;inset:74px 0 85px;z-index:19;background:transparent;padding:24px 28px;flex-direction:column;align-items:flex-start;gap:0;overflow:auto;width:auto;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease,visibility 0s linear .55s}
.home-page nav.open,html.enhanced .home-page nav.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .55s ease,visibility 0s}
.home-page nav a,html.enhanced .home-page nav a{font-size:19px;line-height:1.35;padding:9px 0;width:auto;color:#111;opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.home-background,.home-page nav{transition:none!important}}

/* Halve the stacked footer row gap: 16px + 8px becomes 8px + 4px. */
@media(max-width:650px){.home-page footer{row-gap:8px}.home-page footer .instagram{margin-bottom:4px}}





/* Mobile: anchor the background image to its left edge. */
@media(max-width:650px){.home-background{background-position:left center;}}
