/* Shared footer, readable on both salon and editorial pages. */
.ha-site-footer{background:#25231f;color:#f6f1e8;padding:44px 24px;font:15px/1.65 system-ui,sans-serif;margin-top:0}.ha-footer-inner{max-width:1140px;margin:auto;display:flex;align-items:flex-start;justify-content:space-between;gap:32px;flex-wrap:wrap}.ha-footer-brand{font:25px/1.25 Georgia,serif;margin:0 0 10px}.ha-footer-inner p{margin:0;font-size:14px}.ha-footer-links{display:flex;gap:12px 24px;flex-wrap:wrap;max-width:550px}.ha-site-footer a,.ha-site-footer button{color:#f6f1e8!important;text-decoration:none;font:15px/1.65 system-ui,sans-serif}.ha-site-footer a:hover{text-decoration:underline;text-underline-offset:4px}.ha-site-footer button{padding:0;background:none;border:0;cursor:pointer;text-align:left}.ha-instagram{display:inline-flex;align-items:center;gap:9px;margin-top:14px}.ha-instagram svg{width:23px;height:23px;flex-shrink:0}.ha-site-footer a:focus-visible,.ha-site-footer button:focus-visible{outline:2px solid #d9bd8c;outline-offset:4px}
/* Illustration is a consent preview, not a geographic map. */
.ha-map-preview{position:absolute;inset:0;width:100%;height:100%;border:0;padding:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:#e9e4da;color:#29251e;font:16px/1.5 system-ui,sans-serif;z-index:2;overflow:hidden}.ha-map-preview[hidden]{display:none!important}.ha-map-art{position:absolute;inset:0;width:100%;height:100%;opacity:.75;pointer-events:none}.ha-map-message{position:relative;display:block;max-width:420px;background:#fffffff2;padding:26px 30px;border:1px solid #ded4c4;box-shadow:0 8px 30px #4a402018;border-radius:10px;text-align:center}.ha-map-message strong{display:block;font:26px/1.25 Georgia,serif;margin-bottom:12px}.ha-map-message span{display:block;margin:6px 0}.ha-map-message .ha-map-action{background:#27231e;color:white;border-radius:4px;padding:10px 16px;margin-top:15px;font-size:15px}.ha-map-note{font-size:12px;color:#655c4e}.ha-map-preview:focus-visible{outline:4px solid #9f7842;outline-offset:-4px}.u-map iframe[hidden]{display:none!important}
/* Keep the remaining team evenly arranged. */
.ha-location-suedwest .u-section-10 .u-repeater{grid-template-columns:repeat(3,minmax(0,1fr))!important}
/* First-visit voucher. */
.ha-coupon{position:fixed;inset:0;margin:auto;width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:42px 34px 30px;border:1px solid #d4c0a2;border-radius:14px;background:#faf6ee;color:#2a251d;box-shadow:0 24px 100px #0005;font:16px/1.6 system-ui,sans-serif}.ha-coupon:not([open]){display:none!important}.ha-coupon::backdrop{background:#17130f99}.ha-coupon .ha-coupon-close{position:absolute;right:14px;top:10px;border:0;background:none;color:#3b3023;font-size:28px;line-height:1;padding:8px;cursor:pointer}.ha-coupon-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:2px;color:#846640;margin:0}.ha-coupon h2{font:34px/1.15 Georgia,serif;margin:12px 0}.ha-coupon-value{font:76px/1 Georgia,serif;color:#8c6a39;margin:22px 0}.ha-coupon-conditions{font-size:13px;line-height:1.7;margin:22px 0;border-top:1px solid #d8cab5;padding-top:18px}.ha-coupon-actions{display:flex;gap:10px;flex-wrap:wrap}.ha-coupon-actions a{display:block;background:#2c271f;color:white!important;text-decoration:none!important;padding:12px 16px;border-radius:4px;font-size:14px}.ha-coupon :focus-visible{outline:3px solid #ac854d;outline-offset:4px}.ha-dialog-open{overflow:hidden}@media(max-width:991px){.ha-location-suedwest .u-section-10 .u-repeater{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:650px){.ha-footer-inner{display:block}.ha-footer-links{margin-top:24px;gap:10px 20px}.ha-site-footer{padding:32px 22px}.ha-map-message{padding:20px;max-width:90%}.ha-map-message strong{font-size:22px}.ha-map-preview{padding:12px}.ha-coupon{padding:38px 24px 24px}.ha-coupon h2{font-size:30px}.ha-coupon-value{font-size:64px}.ha-coupon-actions{flex-direction:column}.ha-location-suedwest .u-section-10 .u-repeater{grid-template-columns:1fr!important}}

/* Persistent voucher tab; the panel opens only on request. */
.ha-coupon-tab{position:fixed;right:0;top:58%;z-index:10001;background:#080808;color:#fff;border:1px solid #c1a77a;border-right:0;border-radius:12px 0 0 12px;padding:18px 13px;font:700 22px/1.2 system-ui,sans-serif;box-shadow:0 4px 16px #0003;cursor:pointer}
.ha-coupon-tab:focus-visible{outline:3px solid #b69359;outline-offset:3px}
.ha-coupon{inset:auto 72px 24px auto;margin:0;width:min(420px,calc(100vw - 94px));max-height:calc(100dvh - 48px);z-index:10002;box-shadow:0 12px 48px #0003}
@media(max-width:650px){.ha-coupon-tab{padding:15px 10px;font-size:20px}.ha-coupon{right:62px;bottom:16px;width:calc(100vw - 78px);padding:38px 20px 24px;max-height:calc(100dvh - 32px)}.ha-coupon h2{font-size:27px}}

.ha-coupon-tab{width:60px;box-sizing:border-box;padding-left:4px;padding-right:4px;text-align:center}.ha-coupon-tab span{display:block;font:500 10px/1.4 system-ui,sans-serif;margin-top:5px}
