/* Shared salon tokens keep the privacy UI consistent with the existing site. */
#cc-main {
  --cc-font-family: var(--font-main);
  --cc-bg: #fff;
  --cc-primary-color: var(--color-dark);
  --cc-secondary-color: #51484e;
  --cc-btn-primary-bg: #b00d63;
  --cc-btn-primary-color: #fff;
  --cc-btn-primary-border-color: #b00d63;
  --cc-btn-primary-hover-bg: #900a51;
  --cc-btn-primary-hover-border-color: #900a51;
  --cc-btn-secondary-bg: #b00d63;
  --cc-btn-secondary-color: #fff;
  --cc-btn-secondary-border-color: #b00d63;
  --cc-btn-secondary-hover-bg: #900a51;
  --cc-btn-secondary-hover-color: #fff;
  --cc-btn-secondary-hover-border-color: #900a51;
  --cc-toggle-on-bg: #b00d63;
  --cc-cookie-category-block-bg: #f7f2f5;
  --cc-cookie-category-block-hover-bg: #f0e6ec;
  --cc-footer-bg: #f7f2f5;
  --cc-modal-border-radius: 20px;
  --cc-btn-border-radius: 25px;
}
#cc-main .cm__title, #cc-main .pm__title { font-family: var(--font-heading); }
#cc-main .cm__title { font-size: 1.45rem; }
#cc-main .pm__body { min-height: 0; overflow-x: hidden; overflow-wrap: anywhere; }
#cc-main .pm__header, #cc-main .pm__footer { flex-shrink: 0; }
#cc-main .pm__close-btn { flex-shrink: 0; }
.privacy-links { display: flex; justify-content: center; flex-wrap: wrap; gap: 1rem 2rem; margin-top: 1.2rem; }
.privacy-links a, .privacy-links button { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
.privacy-links button { padding: 0; border: 0; background: transparent; font: inherit; cursor: pointer; }
.privacy-links a:hover, .privacy-links button:hover { color: #f8a8d4; }
.privacy-button { display: inline-block; padding: .85rem 1.4rem; border: 2px solid #b00d63; border-radius: 30px; background: #b00d63; color: #fff; font: inherit; cursor: pointer; text-decoration: none; }
.privacy-button:hover { background: #900a51; border-color: #900a51; }
.privacy-button:focus-visible, .privacy-links :focus-visible { outline: 3px solid var(--color-accent); outline-offset: 5px; }
.footer_contact-map { display: grid; place-items: center; border-radius: 15px; overflow: hidden; }
.map-consent { box-sizing: border-box; max-width: 32rem; margin: 1rem; padding: 1.5rem; text-align: center; background: rgba(255,255,255,.97); border-radius: 20px; box-shadow: 0 8px 25px #0002; }
.map-consent h4 { font-family: var(--font-heading); font-size: 1.4rem; margin: 0 0 .7rem; }
.footer__contact .map-consent p { font-size: 1rem; line-height: 1.5; opacity: 1; }
.map-consent > a { display: block; margin-top: 1rem; text-decoration: underline; }
.privacy-page { --privacy-header-height: 80px; }
.privacy-header :focus-visible { outline: 2px solid var(--color-accent); outline-offset: 5px; }
.privacy-main { width: 100%; max-width: 1200px; margin: 0 auto; padding: calc(var(--privacy-header-height) + clamp(2rem, 5vw, 4rem)) 0rem clamp(2rem, 5vw, 4rem); }
.privacy-intro { max-width: 48rem; margin-bottom: 2rem; }
.privacy-main h1 { font-family: var(--font-heading); font-size: clamp(2rem, 5vw, 3.4rem); line-height: 1.15; margin: .7rem 0 1rem; }
.privacy-main p, .privacy-main li, .privacy-main dd { line-height: 1.8; }
.privacy-card { padding: clamp(1.25rem, 4vw, 2.5rem); margin: 1.25rem 0; background: #fff; border-radius: 20px; box-shadow: 0 8px 20px #0000000d; }
.privacy-card h2 { font-family: var(--font-heading); font-size: 1.5rem; margin: 0 0 1rem; }
.privacy-card h3 { font-size: 1.1rem; margin-top: 1.5rem; }
.privacy-card a:not(.privacy-button) { color: #b00d63; text-decoration: underline; overflow-wrap: anywhere; }
.privacy-card ul { padding-left: 1.3rem; }
.privacy-card dt { font-weight: bold; margin-top: .6rem; }
.privacy-card dd { margin-left: 0; }
@media (max-width: 480px) { .map-consent { padding: 1rem; margin: .5rem; } }
