/* ASH's shared type system: one expressive variable family, hosted locally.
   Font-family alone overrides legacy font shorthands; their sizing stays owned
   by each layout. The staff agenda and standalone demos keep their own type. */
@font-face{font-family:'Bricolage Grotesque';src:url('/assets/fonts/bricolage-grotesque-variable.woff2') format('woff2');font-weight:200 800;font-stretch:75% 100%;font-style:normal;font-display:swap}
/* Small, renamed Inter-derived symbol subset; see assets/fonts/Inter-OFL.txt. */
@font-face{font-family:'ASH UI Symbols';src:url('/assets/fonts/ash-ui-symbols.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+2190-21FF,U+25C6,U+2605-2606,U+2713}
:root{--shop-font:'Bricolage Grotesque','ASH UI Symbols',Arial,sans-serif}
body:not(.salon-page),body:not(.salon-page) :where(h1,h2,h3,h4,p,a,button,input,select,textarea,label,span,small,strong,summary,li,dt,dd,th,td,legend,div,nav,header,footer,aside,section){font-family:var(--shop-font)!important}
body:not(.salon-page){font-optical-sizing:auto;font-kerning:normal}
body:not(.salon-page) :is(h1,h2,h3,.statement,.service-tab,.score strong){font-weight:750;font-variation-settings:'wdth' 85,'opsz' 72;letter-spacing:-.035em}
body:not(.salon-page) :is(button,input,select,textarea,label,nav,.button,.action){font-variation-settings:normal}
body.home-page .hero-content h1{font-size:clamp(20px,2.15vw,30px);letter-spacing:-.04em;line-height:1.15}
body.home-page .reviews-heading h2{font-size:clamp(30px,3vw,44px);line-height:1.1}
body.home-page .visit-guide h2{font-size:clamp(25px,2.2vw,34px);line-height:1.16}
body.home-page .service-tab{font-variation-settings:'wdth' 80,'opsz' 48;letter-spacing:-.025em}
body:not(.salon-page) :is(.score strong,.app-stats strong,.app-date-tile strong,.hour){font-variant-numeric:tabular-nums}
body.customer-app :is(h1,h2,h3,.auth-welcome h2,.app-salon-info h2){font-weight:650;font-variation-settings:'wdth' 95,'opsz' 32;letter-spacing:-.035em;line-height:1.2}
body.customer-app :is(button,.action,.app-primary-link){font-weight:550;letter-spacing:-.015em}
body.customer-app .app-brand{letter-spacing:0}
@media(max-width:760px){body.home-page .hero-content h1{font-size:clamp(16px,4.1vw,26px)}body.inner-page:not(.customer-app) .intro h1{font-size:clamp(30px,8.4vw,42px);line-height:1.08}}
