/* Quiet, useful endings: contextual actions, then a compact institutional footer. */
.site-footer.footer-refined{--footer-ink:#FBF8F2;--footer-muted:#C8C0C6;position:relative;isolation:auto;overflow:visible;margin:35px 0 0;padding:0 var(--gutter);border:0;border-top:1px solid #FBF8F226;border-radius:0;background:#1C191D;color:var(--footer-ink);box-shadow:none}
.site-footer.footer-refined:before,.site-footer.footer-refined:after{content:none;display:none}
.footer-refined .footer-main{display:grid;grid-template-columns:1.05fr 1.25fr .85fr;gap:clamp(25px,4vw,65px);padding:48px 0 38px;max-width:1440px;margin:auto}
.site-footer.footer-refined .site-wordmark{display:inline-flex;flex-direction:row;align-items:center;gap:12px;color:var(--footer-ink)}
.site-footer.footer-refined .site-wordmark .site-monogram{width:30px;height:auto;max-width:none;flex:none;display:block;filter:none}
.site-footer.footer-refined .site-name{font-size:29px;line-height:1.14;white-space:nowrap;color:var(--footer-ink)}
.site-footer.footer-refined .site-name-dedication{white-space:nowrap}
.site-footer.footer-refined .footer-identity>p{margin-top:22px;font-size:15px;line-height:1.75;color:var(--footer-muted);max-width:290px}
.footer-refined .footer-navigation{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:start}
.footer-refined .footer-navigation>div{display:flex;flex-direction:column;align-items:start;gap:14px}
.footer-refined .footer-navigation a,.footer-refined .footer-visit a{font-size:16px;line-height:1.5;text-decoration:none}
.footer-refined .footer-navigation a{padding:2px 0;color:var(--footer-ink)}
.footer-refined .footer-visit address{font-family:var(--sans);font-style:normal;font-size:16px;line-height:1.7;color:var(--footer-muted)}
.footer-refined .footer-visit .footer-contact{display:inline-block;margin-top:18px;padding-bottom:3px;border-bottom:1px solid #FBF8F277;color:var(--footer-ink);font-weight:500}
.footer-refined .footer-external{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:21px}
.footer-refined .footer-external a{font-size:14px;color:var(--footer-muted)}
.footer-refined .footer-legal{max-width:1440px;margin:auto;border-top:1px solid #FBF8F226;padding:20px 0 23px;display:flex;align-items:center;justify-content:space-between;gap:25px;color:var(--footer-muted);font-size:13px;line-height:1.65}
.footer-refined .footer-legal>div{display:flex;gap:28px;align-items:center}
.footer-refined a:hover,.footer-refined .footer-navigation a:hover,.footer-refined .footer-external a:hover{color:var(--footer-ink);text-decoration:underline;text-underline-offset:5px}
.footer-refined a:focus-visible{outline:2px solid #E2B7C8;outline-offset:5px;border-radius:2px}
/* Contextual enquiries are part of the page, not another large promotional panel. */
.closing-invitation{display:flex;align-items:center;justify-content:space-between;gap:35px;margin:30px var(--gutter) 40px;padding:32px 0 20px;border-top:1px solid var(--line);background:none;color:var(--ink);box-shadow:none;border-radius:0}
.closing-invitation>div{max-width:760px;min-width:0}.closing-invitation h2{font-size:clamp(29px,3vw,40px);line-height:1.14;color:var(--wine);margin-bottom:14px}.closing-invitation p{font-size:17px;line-height:1.75;max-width:66ch;color:var(--muted)}
.closing-invitation>.button{flex:none;font-size:15px;min-height:48px;padding:13px 23px;box-shadow:none}
/* Mille Semi remains visible without stacking another dark block above the footer. */
.mille-invitation{display:grid;grid-template-columns:auto 1fr auto;gap:30px;align-items:center;margin:30px var(--gutter) 45px;padding:28px 0;border-top:1px solid var(--line);background:none;color:var(--ink)}
.mille-invitation-amount{display:flex;align-items:center;gap:12px;padding-right:30px;border-right:1px solid var(--line);color:var(--wine)}
.mille-invitation-amount strong{font-family:Newsreader,Georgia,serif;font-weight:450;font-size:62px;letter-spacing:-.03em;line-height:1}.mille-invitation-amount span{font-size:13px;line-height:1.5}
.mille-invitation h2{font-size:33px;line-height:1.1;color:var(--wine);margin-bottom:10px}.mille-invitation p{font-size:16px;line-height:1.7;max-width:530px;color:var(--muted)}
.mille-invitation>.button{font-size:15px;min-height:46px;box-shadow:none}
@media(max-width:1100px) and (min-width:761px){.footer-refined .footer-main{grid-template-columns:1fr 1.25fr;gap:35px}.footer-refined .footer-visit{grid-column:1/-1;display:flex;align-items:center;gap:30px;flex-wrap:wrap}.footer-refined .footer-visit .footer-contact,.footer-refined .footer-external{margin-top:0}.mille-invitation{gap:22px}.mille-invitation-amount{padding-right:22px}.mille-invitation p{max-width:400px}}
@media(max-width:760px){
 .site-footer.footer-refined{margin-top:25px}
 .footer-refined .footer-main{grid-template-columns:1fr;gap:30px;padding:32px 0}
 .site-footer.footer-refined .site-wordmark .site-monogram{width:27px}.site-footer.footer-refined .site-name{font-size:27px;white-space:normal}.site-footer.footer-refined .site-name-dedication{display:inline}
 .site-footer.footer-refined .footer-identity>p{margin-top:16px;font-size:14px;max-width:none}
 .footer-refined .footer-navigation{grid-template-columns:1.15fr 1fr;gap:18px}.footer-refined .footer-navigation>div{gap:12px}.footer-refined .footer-navigation a{font-size:15px}
 .footer-refined .footer-visit{padding-top:23px;border-top:1px solid #FBF8F226}.footer-refined .footer-visit address{font-size:15px}.footer-refined .footer-visit .footer-contact{margin-top:13px}.footer-refined .footer-external{margin-top:16px;gap:22px}
 .footer-refined .footer-legal{display:block;font-size:12px;padding:17px 0 22px}.footer-refined .footer-legal>div{margin-top:12px;gap:24px}
 .closing-invitation{display:block;margin:24px var(--gutter) 30px;padding:25px 0 5px}.closing-invitation h2{font-size:31px}.closing-invitation p{font-size:16px}.closing-invitation>.button{margin-top:22px}
 .mille-invitation{grid-template-columns:auto 1fr;gap:18px;margin:25px var(--gutter) 30px;padding:25px 0}.mille-invitation-amount{padding-right:18px;gap:7px}.mille-invitation-amount strong{font-size:51px}.mille-invitation-amount span{font-size:12px}.mille-invitation h2{font-size:29px}.mille-invitation p{font-size:15px;line-height:1.65}.mille-invitation>.button{grid-column:1/-1;justify-self:start;margin-top:2px}
}

.footer-refined .footer-legal{flex-wrap:wrap}
.footer-refined .footer-credit{white-space:nowrap}
.footer-refined .footer-credit a{color:var(--footer-ink);text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.footer-refined .footer-credit{display:block;margin-top:10px}}

/* Official social profiles: icons with real names for keyboard and screen-reader users. */
.footer-refined .footer-socials{display:flex;gap:10px;margin-top:20px}
.footer-refined .footer-socials a{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #FBF8F24D;border-radius:50%;background:#FBF8F209;color:#FBF8F2;transition:background .2s,color .2s,transform .2s}
.footer-refined .footer-socials a:hover{background:#FBF8F2;color:#1C191D;transform:translateY(-2px)}
.footer-refined .footer-socials a:focus-visible{outline:2px solid #FBF8F2;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.footer-refined .footer-socials a{transition:none}.footer-refined .footer-socials a:hover{transform:none}}
