/* Shared footer: four aligned columns, two rows, with a quiet contact band. */
.luxury-site .footer.footer-aligned{padding:64px var(--gutter) 24px;background:#17181a}
.footer.footer-aligned>div,.footer.footer-aligned>nav{max-width:1400px;margin-left:auto;margin-right:auto}
.luxury-site .footer-aligned .footer-top{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;padding:0 0 44px;border-bottom:1px solid #ffffff26}
.footer-aligned .footer-identity{display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.luxury-site .footer-aligned .footer-identity .brand img{width:128px;height:auto}
.luxury-site .footer-aligned .footer-tagline{font-family:'Suisse BP Intl',Arial,sans-serif;font-size:12px;line-height:1.5;letter-spacing:.18em;color:#bda675;text-transform:uppercase;transform:none;margin:0;padding:0;order:initial;flex-basis:auto}
.footer-aligned .footer-contact-details{width:100%;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;justify-self:stretch;text-align:left}
.footer-aligned .footer-reach{display:flex;flex-direction:column;gap:10px}
.luxury-site .footer-aligned .footer-contact-details a{display:block;width:fit-content;color:#e4e0d8;font-size:12px;line-height:1.8;letter-spacing:.025em;margin:0;text-decoration:none}
.footer-aligned .footer-contact-details address{margin:0;color:#a9aaab;font-size:12px;line-height:1.9;text-align:left;font-style:normal}
.luxury-site .footer-aligned .footer-directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:48px;row-gap:44px;align-items:start;padding:44px 0 48px;border:0}
.footer-aligned .footer-link-group{min-width:0}
.luxury-site .footer-aligned .footer-directory h3{font-family:'Suisse BP Intl',Arial,sans-serif;font-size:11px;font-weight:500;line-height:1.5;letter-spacing:.14em;text-transform:uppercase;color:#e7e3dc;margin:0 0 17px;padding:0}
.luxury-site .footer-aligned .footer-directory a{display:block;width:fit-content;max-width:100%;font-size:12px;line-height:1.75;color:#aaacae;letter-spacing:0;margin:0 0 9px;padding:0;text-decoration:none;overflow-wrap:anywhere;transition:color .2s}
.luxury-site .footer-aligned .footer-directory a:last-child{margin-bottom:0}
.luxury-site .footer-aligned a:hover{color:#ddc899}
.footer-aligned a:focus-visible{outline:1px solid #bda675;outline-offset:5px}
.luxury-site .footer-aligned .footer-bottom{display:flex;justify-content:space-between;align-items:start;gap:24px;border-top:1px solid #ffffff26;padding:24px 0 0;font-size:11px;line-height:1.8;color:#8d9092}
.footer-aligned .footer-bottom p{margin:0}
.footer-aligned .footer-bottom nav{display:flex;flex-wrap:wrap;gap:10px 26px;justify-content:flex-end}
.footer-aligned .footer-bottom a{font-size:11px;line-height:1.8;color:#a9aaab;text-decoration:none}
.footer-aligned .footer-utility-row{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:20px}
.footer-aligned .footer-sitemap-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0;padding:0;border:0;font-size:10px;line-height:1.8}
.footer-aligned .footer-sitemap-links a,.footer-aligned .footer-back-top{font-size:10px;line-height:1.8;color:#8d9092;text-decoration:none}
.footer-aligned .footer-back-top{white-space:nowrap}
.footer-aligned .footer-back-top span{margin-left:12px;color:#bda675}
@media(max-width:1000px){.luxury-site .footer-aligned .footer-top{grid-template-columns:1fr 1fr;gap:28px}.footer-aligned .footer-contact-details{gap:28px}.luxury-site .footer-aligned .footer-directory{column-gap:28px}.luxury-site .footer-aligned .footer-directory a{font-size:11px}}
@media(max-width:700px){.luxury-site .footer.footer-aligned{padding:44px 24px 24px}.luxury-site .footer-aligned .footer-top{grid-template-columns:1fr;gap:32px;padding-bottom:32px}.footer-aligned .footer-identity{gap:17px}.luxury-site .footer-aligned .footer-identity .brand img{width:112px}.footer-aligned .footer-contact-details{grid-template-columns:1fr 1fr;gap:22px}.footer-aligned .footer-contact-details address,.luxury-site .footer-aligned .footer-contact-details a{font-size:11px}.luxury-site .footer-aligned .footer-directory{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;row-gap:32px;padding:34px 0}.luxury-site .footer-aligned .footer-directory h3{font-size:10px;margin-bottom:14px}.luxury-site .footer-aligned .footer-directory a{font-size:11px;margin-bottom:9px}.luxury-site .footer-aligned .footer-bottom{flex-direction:column;gap:14px;padding-top:22px}.footer-aligned .footer-bottom nav{justify-content:flex-start;gap:8px 20px}.footer-aligned .footer-utility-row{align-items:flex-end;gap:16px}.footer-aligned .footer-sitemap-links{flex-direction:column;gap:6px}.footer-aligned .footer-back-top{font-size:10px}}

/* Official social marks, aligned with the brand and sized for touch. */
.footer-aligned .footer-social-block{margin-top:3px}
.luxury-site .footer-aligned .footer-social-label{margin:0 0 12px;color:#96999b;font-family:var(--body),sans-serif;font-size:10px;line-height:1.5;letter-spacing:.13em;text-transform:uppercase}
.luxury-site .footer-aligned .footer-social-links{display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0;border:0}
.luxury-site .footer-aligned .footer-social-links a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;margin:0;padding:0;border:1px solid #ffffff29;border-radius:50%;color:#d8d9da;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s}
.luxury-site .footer-aligned .footer-social-links svg{display:block;width:18px;height:18px;fill:currentColor}
.luxury-site .footer-aligned .footer-social-links a:hover{color:#ddc899;border-color:#bda67588;background:#bda6750d}
.luxury-site .footer-aligned .footer-social-links a:focus-visible{outline:2px solid #bda675;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.luxury-site .footer-aligned .footer-social-links a{transition:none}}

/* Reset legacy grid placement so contacts cannot create an implicit mobile column. */
.footer-aligned .footer-top>*{min-width:0}
.footer-aligned .footer-contact-details{grid-template-columns:repeat(2,minmax(0,1fr))}
.footer-aligned .footer-contact-details>*{min-width:0}
.luxury-site .footer-aligned .footer-contact-details a{max-width:100%;overflow-wrap:anywhere}
@media(max-width:700px){
  .luxury-site .footer-aligned .footer-contact-details{grid-column:auto;grid-row:auto;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
}
