/* Place-led closing composition. Shared structure, individual material palette. */
.appointment-link{justify-self:end;text-decoration:none;display:grid;gap:5px;text-align:center;border:1px solid currentColor;padding:13px 22px;min-height:58px;line-height:1.15;transition:background .2s,color .2s}
.appointment-link>span{font:22px/1.1 Newsreader,Georgia,serif;letter-spacing:-.02em}.appointment-link small{font:9px/1.4 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}.appointment-link:hover{background:#252622;color:#f2ebe1}.lamplight .appointment-link{border-color:#9c9a8a;color:#f2ebe1}.lamplight .appointment-link:hover{background:#f2ebe1;color:#202020}
.salon-footer{--footer-bg:#e7e2d5;--footer-ink:#30332b;background:var(--footer-bg);color:var(--footer-ink);display:block;padding:70px 6vw 22px;margin:0;border-top:1px solid #77776644}.footer-invitation{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:center;max-width:1200px;margin:auto;padding-bottom:60px}.salon-footer p{max-width:none}.salon-footer .footer-caption{font:10px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.18em;margin:0 0 15px}.salon-footer .call-signature{font:400 clamp(74px,9vw,132px)/1 Newsreader,Georgia,serif;letter-spacing:-.06em;text-decoration:none;display:block;width:fit-content;padding:0 0 10px;transition:opacity .2s}.call-signature:hover{opacity:.7}.salon-footer .footer-number{display:inline-flex;align-items:center;min-height:44px;font:13px/1.4 Arial,sans-serif;letter-spacing:.15em;text-decoration:none}.footer-conversation{justify-self:end;min-width:240px}.salon-footer .footer-conversation p{font:32px/1.2 Newsreader,Georgia,serif;letter-spacing:-.02em;margin:0 0 22px}.footer-conversation>a{display:block;width:fit-content;min-height:44px;font-size:12px;padding:10px 0}.footer-details{border-top:1px solid #88887766;padding:28px 0;display:grid;grid-template-columns:1fr 1.4fr auto;gap:28px;align-items:start;max-width:1200px;margin:auto}.footer-details address{font:13px/1.8 Arial,sans-serif}.footer-details p{font:12px/1.8 Arial,sans-serif;margin:0}.footer-details>a{font-size:12px;padding:8px 0;min-height:44px}.footer-colophon{border-top:1px solid #88887744;padding-top:17px;max-width:1200px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:25px}.footer-colophon>span{font-size:10px;letter-spacing:.03em}.salon-footer nav{display:flex;flex-direction:row;gap:25px;flex-wrap:wrap}.salon-footer nav a{font-size:11px;min-height:44px;display:inline-flex;align-items:center}.salon-footer a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.lamplight .salon-footer{--footer-bg:#202020;--footer-ink:#f2ebe1;border-top:0}.lamplight .footer-caption{color:#c6b89d}.lamplight .footer-details,.lamplight .footer-colophon{border-color:#f2ebe133}.sage .salon-footer{--footer-bg:#353e30;--footer-ink:#f2ebe1}.terracotta .salon-footer{--footer-bg:#e9dfcf;--footer-ink:#38352d}.atelier .salon-footer{--footer-bg:#e5e3d7}.atelier .footer-conversation p{font-family:Arial,sans-serif;font-size:26px;letter-spacing:-.04em}.plaster .salon-footer{--footer-bg:#e8e7dc}
@media(max-width:650px){header{padding:0 18px;grid-template-columns:44px minmax(0,1fr) auto;gap:12px}.brand{width:150px;justify-self:center}.appointment-link{padding:9px 10px;min-height:44px;align-content:center}.appointment-link>span{font-size:17px}.appointment-link small{display:none}.salon-footer{padding:45px 24px 16px}.footer-invitation{grid-template-columns:1fr;gap:24px;padding-bottom:28px}.salon-footer .call-signature{font-size:86px}.footer-conversation{justify-self:start;min-width:0}.salon-footer .footer-conversation p{font-size:26px;margin-bottom:12px}.footer-conversation>a{display:inline-flex;margin-right:25px}.footer-details{grid-template-columns:1fr;gap:14px;padding:24px 0}.footer-details address{font-size:14px}.footer-colophon{display:block;padding-top:23px}.salon-footer nav{gap:22px;margin-top:8px}.direction-bar{font-size:9px}}
@media(max-width:370px){header{padding:0 12px;gap:7px}.brand{width:132px}.appointment-link>span{font-size:15px}.appointment-link{padding:10px 8px}}
@media(prefers-reduced-motion:reduce){.appointment-link,.call-signature{transition:none}}
