/**
 * Site footer: two bands over the dark warm ground. Top = logo + divider + booking
 * nav; bottom = policy links + contact line + social icons. Namespaced (site-footer).
 * Jost is loaded globally by ms-typography.
 */

/* #footer + .site-footer beats the legacy #footer rule (beige bg + building image) in main.css */
#footer.site-footer{
	--sf-ground:#21160d;   /* dark warm ground */
	--sf-text:#f6f5f3;     /* off-white */
	--sf-muted:#87837f;    /* muted grey for the bottom bar */
	--sf-gold:#b79d60;     /* brand gold, hover/focus accent on the nav */
	background:var(--sf-ground);
	color:var(--sf-text);
	font-family:'Jost',system-ui,sans-serif;
}
.site-footer *{box-sizing:border-box}
.site-footer a{color:inherit;text-decoration:none}

/* restore a visible keyboard focus ring (the theme globally sets outline:none !important) */
.site-footer a:focus-visible{outline:2px solid var(--sf-gold) !important;outline-offset:3px;border-radius:2px}
.site-footer__social-link:focus-visible{outline:2px solid var(--sf-text) !important;outline-offset:4px}

/* top band — symmetric columns with a centred divider; logo and nav each
   centred within their own half (matches Figma 298:86) */
.site-footer__top{
	display:grid;
	grid-template-columns:1fr 1px 1fr;
	align-items:center;
	max-width:1440px;margin:0 auto;
	padding:40px clamp(20px,5vw,68px);
}
.site-footer__logo{display:flex;justify-content:center}
.site-footer__logo img{display:block;width:clamp(170px,18vw,240px);height:auto}

.site-footer__divider{
	justify-self:center;align-self:center;
	width:1px;height:clamp(220px,30vw,352px);
	background:rgba(246,245,243,.18);
}

.site-footer__nav{display:flex;justify-content:center}
.site-footer__menu{
	list-style:none;margin:0;padding:0;
	display:flex;flex-direction:column;align-items:center;gap:4px;
	text-align:center;width:100%;
}
.site-footer__menu a{
	display:inline-block;
	color:var(--sf-text);
	font-size:clamp(18px,2vw,24px);line-height:1.6;
	transition:color .2s ease;
}
.site-footer__menu a:hover,
.site-footer__menu a:focus-visible{color:var(--sf-gold)}

/* bottom bar */
.site-footer__bottom{
	display:flex;align-items:center;justify-content:space-between;gap:24px;
	max-width:1440px;margin:0 auto;
	padding:40px clamp(20px,5vw,68px);
	color:var(--sf-muted);font-size:16px;line-height:1.2;
}
.site-footer__policies{display:flex;align-items:center;gap:8px;flex:1 1 0;min-width:0}
.site-footer__contact{margin:0;flex:0 1 auto;text-align:center}
.site-footer__social{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex:1 1 0}

.site-footer__bottom a{color:var(--sf-muted);transition:color .2s ease}
.site-footer__bottom a:hover,
.site-footer__bottom a:focus-visible{color:var(--sf-text)}
.site-footer__dot{padding:0 2px}

.site-footer__social-link{display:inline-flex;color:var(--sf-muted)}
.site-footer__social-link svg{display:block;width:24px;height:24px;fill:currentColor}

@media (max-width:900px){
	.site-footer__top{grid-template-columns:1fr;justify-items:center;row-gap:28px}
	.site-footer__divider{display:none}
	.site-footer__bottom{flex-direction:column;gap:16px;text-align:center}
	.site-footer__contact{order:-1}
	.site-footer__policies,
	.site-footer__social{flex:0 0 auto;justify-content:center}
}

@media (prefers-reduced-motion:reduce){
	.site-footer a{transition:none}
}
