/* Fresha: labelled 24px navigation, distinct active state. K Beauty tokens retained. */
.menu{display:flex;align-items:center;gap:12px}.menu>svg{width:24px;height:24px}.menu-sheet-families>a{color:var(--ink)}
.utility-footer{padding:64px max(24px,5vw) 24px;background:#30232b;color:#faf8f5;border:0}.footer-intro{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:32px;padding-bottom:44px;border-bottom:1px solid #ffffff30}.utility-footer .logo img{filter:brightness(0) invert(1);width:174px}.footer-intro>p{font-size:28px;line-height:1.2;margin:0;letter-spacing:-.7px}.footer-book{display:flex;align-items:center;gap:32px;border:1px solid #ffffff70;padding:17px 22px;min-height:52px;border-radius:4px;font-size:14px}.footer-book:hover{background:#faf8f5;color:#30232b}.utility-footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:48px;margin-top:36px}.utility-footer-grid h2{font-size:11px;letter-spacing:1.3px;text-transform:uppercase;color:#d5bdca;margin:0 0 16px}.utility-footer-grid nav{display:flex;flex-direction:column;align-items:flex-start;gap:0}.utility-footer-grid a,.footer-visit>a{display:flex;align-items:center;min-height:44px;font-size:15px;line-height:1.4}.utility-footer-grid a:hover{text-decoration:underline;text-underline-offset:5px}.utility-footer-grid p{font-size:15px;line-height:1.65;margin:0 0 12px}.utility-footer-grid .footer-note{font-size:12px;color:#d5bdca;margin-top:15px;max-width:26ch}.utility-footer-bottom{border-top:1px solid #ffffff30;margin-top:36px;padding-top:20px;display:flex;align-items:center;justify-content:space-between;color:#d5bdca;font-size:12px}.utility-footer-bottom a{display:flex;align-items:center;min-height:44px;gap:20px}.utility-footer a:focus-visible{outline:2px solid white;outline-offset:3px}
@media(max-width:760px){.app-dock{gap:4px;padding:7px 10px calc(7px + env(safe-area-inset-bottom));background:#fffdfb;box-shadow:0 -4px 18px #30232b0a}.app-dock a{color:#44323e;min-height:56px;font-size:11px;font-weight:500;gap:5px;border-radius:10px}.app-dock svg{width:24px;height:24px;stroke-width:2;flex-shrink:0}.app-dock a[aria-current=page]{color:#64364d;background:#f0e6eb;font-weight:650}.app-dock a[aria-current=page] svg{stroke-width:2.3}.app-dock .dock-book{background:#64364d;color:white}.utility-footer{padding:36px 24px 16px}.footer-intro{grid-template-columns:1fr;gap:24px;padding-bottom:28px}.footer-intro>p{font-size:28px}.footer-book{justify-content:space-between;width:100%;font-size:14px}.utility-footer .logo img{width:150px}.utility-footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px;margin-top:28px}.utility-footer-grid a{font-size:14px}.footer-visit{grid-column:1/-1;padding-top:24px;border-top:1px solid #ffffff30}.footer-visit>a{min-height:44px}.utility-footer-grid .footer-note{max-width:none}.utility-footer-bottom{margin-top:24px}.menu{font-size:14px}}
.utility-footer-grid nav{margin:0;width:100%}.utility-footer a{text-decoration:none}.utility-footer a::after{display:none}.footer-visit>a{gap:12px}
@media(min-width:761px) and (max-width:1000px){.appointment-hero{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:32px}}
@media(min-width:761px){header>.menu{display:none}}
/* Explicit touch surfaces: Fresha category tiles, adapted to K Beauty's menu. */
#mobile-menu .menu-nails{display:block;background:var(--plum);color:#faf8f5;border:0;border-radius:12px;padding:20px;margin-bottom:16px}
#mobile-menu .menu-nails>span:first-child{display:block;font-size:38px;line-height:1}
#mobile-menu .menu-nails small{display:block;color:#faf8f5;font-size:12px;margin-top:9px}
.menu-nails-action{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:13px;border-top:1px solid #faf8f560;font-size:13px;font-weight:550;line-height:1.4}
#mobile-menu .menu-sheet-families{gap:9px 10px}#mobile-menu .menu-sheet-families>a{background:#fffdfb;border:1px solid #d4c6ce;border-radius:9px;padding:13px 12px;min-height:66px;font-size:14px;gap:8px;transition:background .15s,border-color .15s}
#mobile-menu .menu-sheet-families>a:hover,#mobile-menu .menu-sheet-families>a:focus-visible{background:#f0e6eb;border-color:var(--plum)}#mobile-menu .menu-sheet-families>a:active{background:#e5d5dd}
#mobile-menu .menu-chevron{display:block;font-size:23px;font-weight:400;line-height:1;color:var(--plum)}
#mobile-menu .menu-sheet-utilities{gap:0 18px;margin-top:22px}#mobile-menu .menu-sheet-utilities>a{justify-content:space-between;gap:10px;border-bottom:1px solid #d4c6ce;min-height:49px;font-size:12px}
#mobile-menu .menu-sheet-address{font-size:11px;margin-top:18px;min-height:44px;text-decoration:underline;text-underline-offset:3px}
#mobile-menu .menu-sheet-body{padding-top:20px}#mobile-menu .menu-sheet-body>.eyebrow{font-size:9px;margin-bottom:12px}
@media(max-height:650px){#mobile-menu .menu-nails{padding:16px}#mobile-menu .menu-nails>span:first-child{font-size:32px}#mobile-menu .menu-sheet-families>a{min-height:60px}.menu-nails-action{margin-top:14px}}
@media(prefers-reduced-motion:reduce){#mobile-menu .menu-sheet-families>a{transition:none}}
.menu-nails-action{letter-spacing:0}

.appointment-photo:has(.photo-coiffure){background:#20332f}.appointment-photo .photo-coiffure img{scale:1;transform:none;object-fit:contain;object-position:center;animation:none}
@media(max-width:760px){.appointment-photo:has(.photo-coiffure){height:auto;aspect-ratio:1065/1600}.appointment-photo .photo-coiffure img{scale:1;object-fit:contain}}
@media(max-width:760px){.appointment-photo:has(.photo-coiffure){height:clamp(270px,78vw,350px);aspect-ratio:auto}}

.appointment-photo .photo-regard img{object-fit:cover;object-position:50% 46%;scale:1}
