/* The Royce — footer (2026-10 refresh). Sits inside .footer-section, which keeps
   the dark starry background from pages.css. */
.rf{position:relative;z-index:2;max-width:1240px;margin:0 auto;color:#f3ebd8;text-transform:none;letter-spacing:normal;font-family:"Inter Tight",-apple-system,BlinkMacSystemFont,sans-serif}
footer.footer-section .rf a{color:inherit;text-decoration:none;letter-spacing:inherit;text-transform:inherit;font-size:inherit}

/* Brand block */
.rf-top{display:flex;flex-direction:column;align-items:center;text-align:center;padding-bottom:clamp(40px,5vw,64px)}
footer.footer-section .rf-brand{display:block;width:clamp(96px,10vw,128px);margin:0 auto 6px}
footer.footer-section .rf-brand img{display:block;width:100%;height:auto}
footer.footer-section .rf-top .footer-tagline{margin:0;padding-bottom:0}
footer.footer-section .rf-ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;margin-top:clamp(28px,3.5vw,40px)}
footer.footer-section .rf a.rf-cta{display:inline-flex;align-items:center;justify-content:center;min-width:180px;padding:15px 30px;padding-left:calc(30px + 0.26em);border-radius:999px;border:1px solid rgba(201,169,97,0.55);font-size:10.5px;font-weight:500;letter-spacing:0.26em;text-transform:uppercase;color:#f3ebd8;transition:background-color 0.3s ease,color 0.3s ease,border-color 0.3s ease}
footer.footer-section .rf a.rf-cta:hover,footer.footer-section .rf a.rf-cta:focus-visible{background:rgba(201,169,97,0.14);border-color:#c9a961;color:#e3c886}
footer.footer-section .rf a.rf-cta--solid{background:#efe6d6;border-color:#efe6d6;color:#1a1612}
footer.footer-section .rf a.rf-cta--solid:hover,footer.footer-section .rf a.rf-cta--solid:focus-visible{background:#d4b876;border-color:#d4b876;color:#1a1612}

/* Columns */
.rf-grid{display:grid;grid-template-columns:1.1fr 1.3fr 1fr 0.9fr;gap:clamp(24px,3vw,48px);padding-top:clamp(32px,4vw,48px);border-top:1px solid rgba(201,169,97,0.28)}
footer.footer-section .rf-col h3{margin:0 0 18px;font-size:10px;font-weight:600;letter-spacing:0.34em;text-transform:uppercase;color:#c9a961}
footer.footer-section .rf-col p,footer.footer-section .rf-col address,footer.footer-section .rf-col li,footer.footer-section .rf-col dd,footer.footer-section .rf-col dt{margin:0;font-style:normal;font-size:14.5px;line-height:1.75;color:rgba(243,235,216,0.86)}
footer.footer-section .rf-col ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
footer.footer-section .rf-link{display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid transparent;transition:color 0.25s ease,border-color 0.25s ease}
footer.footer-section .rf-link:hover,footer.footer-section .rf-link:focus-visible{color:#e3c886;border-bottom-color:rgba(227,200,134,0.5)}
footer.footer-section .rf-link svg{width:15px;height:15px;flex:none}
footer.footer-section .rf-more{margin-top:12px !important;font-size:11px !important;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:#c9a961 !important}
footer.footer-section .rf-hours{display:grid;grid-template-columns:auto auto;justify-content:start;column-gap:24px;row-gap:4px;margin:0}
footer.footer-section .rf-hours dd{text-align:left;font-variant-numeric:tabular-nums}
footer.footer-section .rf-hours-note{margin-top:10px !important;font-size:12.5px !important;color:rgba(243,235,216,0.55) !important}

/* Notes strip */
.rf-notes{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,48px);margin-top:clamp(36px,4vw,52px);padding:20px 0;border-top:1px solid rgba(243,235,216,0.1);border-bottom:1px solid rgba(243,235,216,0.1)}
footer.footer-section .rf-notes p{margin:0;font-size:12px;line-height:1.7;color:rgba(243,235,216,0.62)}
footer.footer-section .rf-notes strong{display:block;margin-bottom:4px;font-size:9px;font-weight:600;letter-spacing:0.32em;text-transform:uppercase;color:#c9a961}

/* Bottom bar */
.rf-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 24px;padding-top:22px;font-size:12.5px;color:rgba(243,235,216,0.55)}
footer.footer-section .rf-legal{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px}
footer.footer-section .rf-legal a{color:rgba(243,235,216,0.8)}
footer.footer-section .rf-legal a:hover,footer.footer-section .rf-legal a:focus-visible{color:#e3c886}
footer.footer-section .rf-age{display:inline-grid;place-items:center;height:22px;padding:0 8px;border:1px solid rgba(243,235,216,0.28);border-radius:999px;font-size:10px;font-weight:600;letter-spacing:0.08em;color:rgba(243,235,216,0.75)}
footer.footer-section .rf-powered{display:inline-flex;align-items:baseline;gap:7px;line-height:1;color:rgba(243,235,216,0.55);transition:opacity 0.25s ease}footer.footer-section .rf-powered img{display:block;height:11px;width:auto;filter:brightness(0) invert(1);opacity:0.88}
footer.footer-section .rf-powered:hover,footer.footer-section .rf-powered:focus-visible{color:rgba(243,235,216,0.85)}footer.footer-section .rf-powered:hover img,footer.footer-section .rf-powered:focus-visible img{opacity:1}

@media (max-width:900px){
  footer.footer-section .rf-grid{grid-template-columns:1fr 1fr;row-gap:36px}
}
@media (max-width:520px){
  footer.footer-section .rf-grid{column-gap:20px;row-gap:32px}
  footer.footer-section .rf-col p,footer.footer-section .rf-col address,footer.footer-section .rf-col li,footer.footer-section .rf-col dd,footer.footer-section .rf-col dt{font-size:13.5px}
  footer.footer-section .rf-hours{grid-template-columns:1fr;row-gap:0}
  footer.footer-section .rf-hours dd{text-align:left;margin-bottom:6px}
  footer.footer-section .rf-hours dt{color:rgba(243,235,216,0.6)}
  footer.footer-section .rf-notes{grid-template-columns:1fr;gap:16px}
  footer.footer-section .rf a.rf-cta{min-width:0;flex:1 1 140px}
  footer.footer-section .rf-bottom{flex-direction:column;align-items:flex-start}
}
/* Mobile polish */
footer.footer-section .rf a.rf-cta{white-space:nowrap}
@media (max-width:520px){
  footer.footer-section .rf-ctas{gap:10px;width:100%;max-width:360px}
  footer.footer-section .rf a.rf-cta{flex:1 1 0;min-width:0;padding:14px 10px;padding-left:calc(10px + 0.18em);letter-spacing:0.18em;font-size:10px}
}
