/* Dedicated hairdresser page, using the shared Sovado palette and type system. */
.hair-page { --hp-purple:#5147e5; --hp-ink:#101426; --hp-muted:#626b7d; padding-bottom:100px; }
.sv-page .hair-page .hp-container { width:min(100% - 64px,1280px); margin-inline:auto; }
.hair-page .hp-section { padding-block:104px; }
.hair-page .hp-eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 21px; color:var(--hp-purple); font-size:11px; line-height:1.5; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.hair-page h2 { font-size:clamp(34px,3.6vw,52px); line-height:1.09; letter-spacing:-.052em; font-weight:780; }
.hair-page h2 em { color:var(--hp-purple); font-style:normal; }
.hair-page p { color:var(--hp-muted); }
.hair-page .hp-hero { padding-top:26px; }
.hair-page .hp-hero-grid { position:relative; isolation:isolate; display:grid; place-items:center; min-height:690px; padding:72px 36px 88px; overflow:hidden; border-radius:36px; background:#171923; }
.hair-page .hp-hero-grid::after { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(180deg,rgba(12,12,24,.4),rgba(12,12,24,.67) 48%,rgba(12,12,24,.58)); pointer-events:none; }
.hair-page .hp-hero-copy { position:relative; width:100%; max-width:820px; text-align:center; }
.hair-page .hp-hero-copy .hp-eyebrow,
.hair-page .hp-hero-copy .hp-actions,
.hair-page .hp-hero-copy .hp-hero-note { justify-content:center; }
.hair-page .hp-hero-copy .hp-eyebrow { color:#fff; }
.hair-page .hp-hero-copy .hp-eyebrow > span { width:7px; height:7px; border-radius:50%; background:#d5ceff; box-shadow:0 0 0 5px #ffffff20; margin-right:4px; }
.hair-page h1 { font-size:clamp(48px,5.5vw,80px); line-height:1.06; letter-spacing:-.061em; font-weight:820; text-wrap:initial; }
.hair-page .hp-hero-copy h1 { color:#fff; text-shadow:0 2px 18px #00000029; }
.hair-page h1 em { color:inherit; font-style:normal; }
.hair-page .hp-lead { max-width:680px; color:#fff; margin:25px auto 13px; font-size:20px; font-weight:650; letter-spacing:-.025em; line-height:1.5; }
.hair-page .hp-hero-description { max-width:620px; color:#f0eff4; font-size:16px; line-height:1.8; margin:0 auto 28px; }
.hair-page .hp-actions { display:flex; align-items:center; flex-wrap:wrap; gap:22px; }
.hair-page .hp-textlink { display:inline-flex; align-items:center; gap:10px; color:var(--hp-purple); font-size:14px; line-height:1.5; font-weight:700; }
.hair-page .hp-textlink > .sv-icon { width:19px; height:19px; }
.hair-page .hp-textlink:hover { text-decoration:underline; text-underline-offset:4px; }
.hair-page .hp-hero-copy .hp-textlink { min-height:56px; padding:14px 23px; border:1px solid #ffffff99; border-radius:13px; background:#ffffff0a; font-size:14px; color:#fff; gap:15px; }
.hair-page .hp-hero-copy .hp-textlink:hover { background:#ffffff1a; text-decoration:none; }
.hair-page .hp-hero-copy a:focus-visible { outline-color:#fff; }
.hair-page .hp-hero-note { display:flex; align-items:center; gap:7px; margin:21px 0 0; font-size:12px; color:#eeecf4; }
.hair-page .hp-hero-note > .sv-icon { width:15px; height:15px; color:#bfe9d3; }
.sv-page .hair-page .hp-hero-photo { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 35%; }
.hair-page .hp-booking-note { position:relative; z-index:1; display:flex; gap:13px; align-items:center; width:min(calc(100% - 48px),560px); margin:-28px auto 0; background:#fff; padding:20px; border:1px solid #e7e7ef; border-radius:17px; box-shadow:0 12px 36px #15143810; }
.hair-page .hp-note-icon { display:grid; place-items:center; width:46px; height:46px; border-radius:13px; flex-shrink:0; background:#eeecff; color:var(--hp-purple); }
.hair-page .hp-booking-note small { display:block; margin-bottom:3px; font-size:10px; color:#787b8d; }
.hair-page .hp-booking-note strong { display:block; color:var(--hp-ink); font-size:13px; letter-spacing:-.015em; line-height:1.4; }
.hair-page .hp-booking-note div > span { display:block; font-size:11px; color:var(--hp-muted); margin-top:3px; }
.hair-page .hp-note-check { display:grid; flex-shrink:0; place-items:center; width:25px; height:25px; border-radius:50%; background:#e4f5ed; color:#277355; margin-left:auto; font-size:13px; }
.hair-page .hp-benefits { display:grid; grid-template-columns:repeat(3,1fr); list-style:none; padding:30px 0; margin:36px 0 0; border-block:1px solid #e6e7ed; gap:28px; }
.hair-page .hp-benefits li { display:flex; justify-content:center; align-items:center; gap:12px; font-size:13px; font-weight:600; line-height:1.5; }
.hair-page .hp-benefits .sv-icon { color:var(--hp-purple); width:21px; height:21px; }
.hair-page .hp-section-heading { max-width:700px; margin:0 auto 50px; text-align:center; }
.hair-page .hp-section-heading .hp-eyebrow { justify-content:center; }
.hair-page .hp-section-heading > p:last-child:not(.hp-eyebrow) { max-width:600px; font-size:16px; line-height:1.8; margin:24px auto 0; }
.hair-page .hp-section-heading h2 > span { color:#858999; }
.hair-page .hp-relief-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:42px; }
.hair-page .hp-relief-grid article { display:flex; flex-direction:column; align-items:flex-start; }
.hair-page .hp-relief-icon { display:grid; width:46px; height:46px; place-items:center; color:var(--hp-purple); background:#eeecff; border-radius:14px; margin-bottom:23px; }
.hair-page .hp-relief-icon.hp-mint { background:#e2f4e9; color:#3f795d; }
.hair-page .hp-relief-icon.hp-peach { background:#fae9df; color:#a4633a; }
.hair-page .hp-relief-grid h3 { font-size:23px; max-width:320px; line-height:1.25; letter-spacing:-.035em; margin-bottom:14px; text-wrap:initial; }
.hair-page .hp-relief-grid p { font-size:14px; line-height:1.85; margin-bottom:21px; }
.hair-page .hp-relief-grid .hp-textlink { margin-top:auto; font-size:13px; }
.hair-page .hp-day { background:#f7f7fc; scroll-margin-top:110px; }
.hair-page .hp-day .hp-section { padding-block:84px 74px; }
.hair-page .hp-day-tabs { display:flex; width:max-content; max-width:100%; margin:0 auto 42px; background:#fff; border:1px solid #e5e5ef; padding:5px; border-radius:15px; gap:5px; }
.hair-page .hp-day-tabs button { display:flex; align-items:center; gap:10px; color:#64697c; background:transparent; border:0; border-radius:10px; padding:14px 23px; font-size:14px; font-weight:650; line-height:1.4; }
.hair-page .hp-day-tabs button[aria-selected=true] { background:var(--hp-purple); color:#fff; }
.hair-page .hp-day-tabs button:hover:not([aria-selected=true]) { background:#f0effa; color:var(--hp-purple); }
.hair-page .hp-day-panel { display:grid; grid-template-columns:.9fr 1.1fr; align-items:center; gap:75px; min-height:415px; }
.hair-page .hp-day-panel + .hp-day-panel { margin-top:50px; }
.hair-page .hp-day-tabs:not([hidden]) ~ .hp-day-panel { margin-top:0; }
.hair-page .hp-plan-label { display:inline-block; padding:5px 10px; margin-bottom:21px; border:1px solid #dcdae9; color:#65617d; font-size:10px; line-height:1.4; border-radius:6px; }
.hair-page .hp-day-copy h3 { font-size:clamp(27px,2.55vw,36px); line-height:1.17; letter-spacing:-.045em; text-wrap:initial; margin-bottom:21px; }
.hair-page .hp-day-copy > p { font-size:15px; line-height:1.8; margin-bottom:24px; }
.hair-page .hp-checks { list-style:none; display:grid; gap:12px; padding:0; margin:0; font-size:13px; color:#4b5364; }
.hair-page .hp-checks li { display:flex; align-items:flex-start; gap:9px; }
.hair-page .hp-checks .sv-icon { width:17px; height:17px; color:var(--hp-purple); margin-top:2px; }
.hair-page .hp-demo { min-width:0; border:1px solid #e1e2ed; background:#fff; border-radius:18px; box-shadow:0 14px 34px #24243907; overflow:hidden; }
.hair-page .hp-demo-top { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 22px; border-bottom:1px solid #eeedf3; }
.hair-page .hp-demo-brand { display:flex; align-items:center; gap:9px; font-size:12px; font-weight:650; }
.hair-page .hp-demo-brand img { width:18px; height:22px; object-fit:contain; }
.hair-page .hp-demo-brand > span { color:#c5c5d3; padding-inline:3px; }
.hair-page .hp-demo-tag { font-size:9px; color:#76798a; border:1px solid #e6e6ee; border-radius:5px; padding:3px 7px; }
.hair-page .hp-calendar-heading { display:flex; align-items:center; justify-content:space-between; margin:20px 24px; }
.hair-page .hp-calendar-heading small { display:block; color:#818597; font-size:10px; margin-bottom:3px; }
.hair-page .hp-calendar-heading strong { display:block; font-size:21px; letter-spacing:-.04em; }
.hair-page .hp-calendar-heading > .sv-icon { width:19px; color:#888599; }
.hair-page .hp-calendar-columns { display:grid; grid-template-columns:45px 1fr 1fr; padding-inline:19px; font-size:11px; text-align:center; padding-bottom:12px; }
.hair-page .hp-calendar-grid { display:grid; grid-template-columns:45px 1fr 1fr; padding-inline:19px; }
.hair-page .hp-calendar-times { display:flex; flex-direction:column; gap:38px; font-size:9px; color:#8b8b9b; padding-top:7px; }
.hair-page .hp-calendar-lane { padding:4px 5px; background:repeating-linear-gradient(to bottom,#ebedf3 0px,#ebedf3 1px,transparent 1px,transparent 55px); border-left:1px solid #ebedf3; }
.hair-page .hp-appointment { padding:11px 10px; border-left:3px solid #7970ef; background:#efedff; border-radius:6px; height:99px; color:#4d4384; }
.hair-page .hp-appointment small { display:flex; flex-wrap:wrap; align-items:center; gap:4px; font-size:8px; margin-bottom:8px; line-height:1.2; }
.hair-page .hp-appointment small > span { border-radius:3px; font-size:7px; padding:3px 5px; background:#5147e5; color:white; }
.hair-page .hp-appointment strong { display:block; font-size:12px; line-height:1.4; }
.hair-page .hp-appointment > span { display:block; font-size:10px; margin-top:4px; }
.hair-page .hp-appointment-peach { margin-top:16px; background:#fcf0e8; border-color:#d9a37d; color:#96623d; }
.hair-page .hp-appointment-mint { height:126px; background:#e8f5ed; border-color:#7daf95; color:#3d7256; }
.hair-page .hp-calendar-free { padding:20px 7px; font-size:9px; text-align:center; color:#a0a2ae; }
.hair-page .hp-demo-confirm { display:flex; align-items:center; gap:8px; justify-content:center; padding:13px 10px; background:#f1f9f4; color:#43765a; font-size:10px; }
.hair-page .hp-calendar-demo > .hp-demo-confirm { margin-top:18px; }
.hair-page .hp-demo-confirm .sv-icon { width:15px; height:15px; }
.hair-page .hp-client-header { display:flex; align-items:center; gap:13px; padding:23px; }
.hair-page .hp-avatar { display:grid; place-items:center; width:49px; height:49px; border-radius:50%; background:#eeeaff; color:#6553ad; font-size:15px; font-weight:600; }
.hair-page .hp-client-header strong { display:block; font-size:19px; letter-spacing:-.035em; }
.hair-page .hp-client-header div > span { display:block; font-size:10px; color:#7f8392; margin-top:3px; }
.hair-page .hp-client-header > .sv-icon { margin-left:auto; color:#9884c8; width:19px; }
.hair-page .hp-client-note { margin:0 23px; padding:20px; border-radius:10px; background:#f7f5fc; border:1px solid #ece7f6; }
.hair-page .hp-client-note small { font-size:9px; color:#847993; display:block; margin-bottom:8px; }
.hair-page .hp-client-note strong { display:block; font-size:13px; margin-bottom:9px; }
.hair-page .hp-client-note p { font-size:12px; line-height:1.8; margin:0; }
.hair-page .hp-client-history { padding:20px 23px 25px; }
.hair-page .hp-client-history > small { font-size:10px; color:#7e8393; }
.hair-page .hp-client-history > div { display:flex; align-items:center; gap:11px; margin-top:13px; }
.hair-page .hp-client-history .sv-icon { color:#a29aad; width:18px; }
.hair-page .hp-client-history strong { display:block; font-size:12px; }
.hair-page .hp-client-history span > small { display:block; font-size:10px; margin-top:3px; color:#868799; }
.hair-page .hp-history-check { color:#538567; margin-left:auto; }
.hair-page .hp-receipt { padding:25px; }
.hair-page .hp-receipt-client { display:flex; align-items:center; gap:10px; padding-bottom:22px; border-bottom:1px solid #e8e8f0; font-size:12px; }
.hair-page .hp-receipt-client .sv-icon { width:18px; color:#88809e; }
.hair-page .hp-receipt-client > span { margin-left:auto; color:#9995a5; font-size:9px; }
.hair-page .hp-receipt-line { display:flex; align-items:center; justify-content:space-between; padding-top:22px; gap:20px; font-size:13px; }
.hair-page .hp-receipt-line small { display:block; font-size:10px; color:#8c8e9d; margin-top:3px; }
.hair-page .hp-receipt-total { display:flex; align-items:center; justify-content:space-between; margin:24px 0 20px; padding-top:20px; border-top:1px dashed #d8d9e3; font-size:13px; }
.hair-page .hp-receipt-total strong { font-size:28px; letter-spacing:-.04em; }
.hair-page .hp-receipt .hp-demo-confirm { border-radius:7px; }
.hair-page .hp-example-note { margin:30px 0 0; color:#818597; text-align:center; font-size:10px; }
.hair-page .hp-relationship { display:grid; grid-template-columns:1fr .94fr; align-items:center; gap:90px; }
.hair-page .hp-relationship-photo { position:relative; }
.sv-page .hair-page .hp-relationship-photo img { width:100%; height:570px; object-fit:cover; object-position:50% center; border-radius:23px; }
.hair-page .hp-relationship-photo > span { position:absolute; bottom:0; left:0; right:0; padding:70px 26px 26px; background:linear-gradient(transparent,#111811b3); color:#fff; font-size:14px; font-weight:600; border-radius:0 0 23px 23px; }
.hair-page .hp-relationship-copy .hp-eyebrow { font-size:10px; }
.hair-page .hp-relationship-copy h2 { font-size:clamp(33px,3.2vw,46px); margin-bottom:22px; text-wrap:initial; }
.hair-page .hp-relationship-copy > p:not(.hp-eyebrow) { font-size:15px; line-height:1.8; }
.hair-page .hp-relationship-item { display:flex; gap:15px; margin-top:24px; }
.hair-page .hp-relationship-item > .sv-icon { width:21px; height:21px; color:var(--hp-purple); margin-top:2px; }
.hair-page .hp-relationship-item h3 { font-size:16px; line-height:1.4; letter-spacing:-.02em; text-wrap:initial; }
.hair-page .hp-relationship-item p { font-size:13px; line-height:1.8; margin:7px 0 0; }
.hair-page .hp-relationship-copy > .hp-textlink { margin-top:29px; font-size:13px; }
.hair-page .hp-migration { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding:52px 58px; border-radius:24px; background:#f4f3fb; }
.hair-page .hp-migration h2 { font-size:39px; }
.hair-page .hp-migration > div > p:not(.hp-eyebrow) { margin:21px 0; font-size:14px; line-height:1.8; }
.hair-page .hp-migration .hp-eyebrow { font-size:10px; margin-bottom:16px; }
.hair-page .hp-migration ol { padding:0; margin:0; list-style:none; }
.hair-page .hp-migration li { display:flex; align-items:flex-start; gap:17px; padding-block:13px; }
.hair-page .hp-migration li > span { display:grid; place-items:center; flex-shrink:0; width:32px; height:32px; border:1px solid #dad7ee; color:var(--hp-purple); border-radius:50%; font-size:12px; background:#fff; }
.hair-page .hp-migration li strong { display:block; font-size:14px; padding-top:3px; }
.hair-page .hp-migration li p { font-size:12px; margin:5px 0 0; }
.hair-page .hp-migration .hp-migration-note { display:flex; gap:7px; align-items:center; border-top:1px solid #e0ddf0; margin-top:17px; padding-top:18px; font-size:11px; }
.hair-page .hp-migration-note .sv-icon { color:var(--hp-purple); width:16px; height:16px; }
.hair-page .hp-plan-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.hair-page .hp-plan { padding:29px; border:1px solid #e3e3ee; border-radius:18px; display:flex; flex-direction:column; align-items:flex-start; }
.hair-page .hp-plan-featured { border-color:#aaa2f1; background:#f7f6ff; }
.hair-page .hp-plan-top { display:flex; align-items:center; justify-content:space-between; width:100%; gap:10px; margin-bottom:29px; font-size:13px; font-weight:700; }
.hair-page .hp-plan-top > small { background:#e7e3ff; color:#6053bb; font-size:9px; font-weight:600; border-radius:5px; padding:4px 7px; }
.hair-page .hp-plan h3 { font-size:21px; line-height:1.25; letter-spacing:-.035em; margin-bottom:14px; text-wrap:initial; }
.hair-page .hp-plan > p { font-size:13px; line-height:1.8; margin-bottom:25px; }
.hair-page .hp-price { margin-top:auto; display:flex; gap:9px; align-items:baseline; }
.hair-page .hp-price strong { font-size:38px; line-height:1.2; letter-spacing:-.055em; }
.hair-page .hp-price > span { font-size:12px; color:#7c7f90; }
.hair-page .hp-price-note { display:block; color:#7a7c8c; font-size:10px; margin-top:9px; }
.hair-page .hp-plan-link { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-top:27px; padding:13px 15px; border:1px solid #d9d6ee; border-radius:9px; width:100%; color:var(--hp-purple); font-size:12px; font-weight:650; }
.hair-page .hp-plan-link .sv-icon { width:17px; height:17px; }
.hair-page .hp-plan-link:hover { background:#eeebff; }
.hair-page .hp-plan-featured .hp-plan-link { background:var(--hp-purple); border-color:var(--hp-purple); color:#fff; }
.hair-page .hp-plan-featured .hp-plan-link:hover { background:#3e34c7; }
.hair-page .hp-pricing-bottom { display:flex; gap:45px; align-items:center; justify-content:space-between; margin-top:24px; }
.hair-page .hp-pricing-bottom p { font-size:11px; max-width:630px; margin:0; }
.hair-page .hp-pricing-bottom .hp-textlink { flex-shrink:0; font-size:12px; }
.hair-page .hp-faq { display:grid; grid-template-columns:.75fr 1.25fr; gap:100px; padding-block:10px 100px; }
.hair-page .hp-faq h2 { margin-bottom:23px; }
.hair-page .hp-faq > div > p:not(.hp-eyebrow) { font-size:14px; max-width:280px; }
.hair-page .hp-faq-list details { border-bottom:1px solid #e3e4ed; }
.hair-page .hp-faq-list details:first-child { border-top:1px solid #e3e4ed; }
.hair-page .hp-faq-list summary { display:flex; justify-content:space-between; align-items:center; gap:23px; list-style:none; cursor:pointer; padding-block:22px; font-size:14px; font-weight:650; line-height:1.5; }
.hair-page .hp-faq-list summary > span { font-size:22px; line-height:1; font-weight:400; color:var(--hp-purple); transition:transform .2s; }
.hair-page .hp-faq-list details[open] summary > span { transform:rotate(45deg); }
.hair-page .hp-faq-list details p { font-size:13px; line-height:1.85; padding-right:35px; margin:0 0 23px; }
@media (max-width:1100px) {
  .hair-page .hp-booking-note { padding:15px; gap:10px; }
  .hair-page .hp-booking-note strong { font-size:12px; }
  .hair-page .hp-note-check { display:none; }
  .hair-page .hp-benefits { gap:20px; }
  .hair-page .hp-benefits li { font-size:11px; gap:8px; }
  .hair-page .hp-day-panel { gap:38px; }
  .hair-page .hp-relationship { gap:45px; }
  .sv-page .hair-page .hp-relationship-photo img { height:550px; }
  .hair-page .hp-migration { padding:40px; gap:40px; }
  .hair-page .hp-plan { padding:23px; }
  .hair-page .hp-plan h3 { font-size:19px; }
  .hair-page .hp-faq { gap:55px; }
}
@media (max-width:800px) {
  .sv-page .hair-page .hp-container { width:calc(100% - 40px); }
  .hair-page { padding-bottom:60px; }
  .hair-page .hp-section { padding-block:72px; }
  .hair-page .hp-hero { padding-top:20px; }
  .hair-page .hp-hero-grid { min-height:650px; padding:58px 28px 76px; border-radius:24px; }
  .hair-page h1 { font-size:clamp(43px,8.5vw,66px); }
  .hair-page .hp-hero-description { max-width:560px; }
  .sv-page .hair-page .hp-hero-photo { object-position:57% center; }
  .hair-page .hp-booking-note { padding:17px; }
  .hair-page .hp-note-check { display:grid; }
  .hair-page .hp-benefits { margin-top:33px; padding:23px 0; gap:17px; }
  .hair-page .hp-benefits li { flex-direction:column; align-items:flex-start; justify-content:flex-start; font-size:11px; }
  .hair-page .hp-section-heading { margin-bottom:35px; }
  .hair-page .hp-relief-grid { gap:24px; }
  .hair-page .hp-relief-grid h3 { font-size:20px; }
  .hair-page .hp-relief-grid p { font-size:13px; }
  .hair-page .hp-relief-grid .hp-textlink { font-size:12px; gap:7px; }
  .hair-page .hp-day .hp-section { padding-block:65px 48px; }
  .hair-page .hp-day-tabs { margin-bottom:30px; }
  .hair-page .hp-day-tabs button { font-size:12px; padding:12px 19px; }
  .hair-page .hp-day-panel { grid-template-columns:1fr; gap:30px; }
  .hair-page .hp-day-copy { max-width:590px; }
  .hair-page .hp-demo { width:100%; max-width:580px; margin-inline:auto; }
  .hair-page .hp-day-copy h3 { font-size:32px; }
  .hair-page .hp-relationship { grid-template-columns:1fr; gap:37px; }
  .sv-page .hair-page .hp-relationship-photo img { height:410px; }
  .hair-page .hp-relationship-copy { max-width:570px; }
  .hair-page .hp-relationship-copy h2 { font-size:40px; }
  .hair-page .hp-migration { grid-template-columns:1fr; gap:24px; padding:32px; }
  .hair-page .hp-migration h2 { font-size:35px; }
  .hair-page .hp-migration li { padding-block:10px; }
  .hair-page .hp-plan-grid { grid-template-columns:1fr; gap:14px; }
  .hair-page .hp-plan { padding:27px; }
  .hair-page .hp-plan-top { margin-bottom:18px; }
  .hair-page .hp-plan h3 { font-size:23px; }
  .hair-page .hp-plan > p { max-width:480px; }
  .hair-page .hp-plan-link { margin-top:20px; }
  .hair-page .hp-pricing-bottom { align-items:flex-start; flex-direction:column; gap:15px; }
  .hair-page .hp-faq { grid-template-columns:1fr; gap:35px; padding-bottom:70px; }
  .hair-page .hp-faq h2 br { display:none; }
  .hair-page .hp-faq > div > p:not(.hp-eyebrow) { max-width:440px; }
}
@media (max-width:540px) {
  .sv-page .hair-page .hp-container { width:calc(100% - 36px); }
  .hair-page .hp-eyebrow { font-size:10px; margin-bottom:19px; }
  .hair-page h1 { font-size:clamp(31px,9vw,48px); }
  .hair-page .hp-hero-grid { min-height:650px; padding:48px 18px 68px; border-radius:20px; }
  .hair-page .hp-lead { font-size:18px; margin-top:22px; }
  .hair-page .hp-hero-description { font-size:14px; line-height:1.85; margin-bottom:24px; }
  .hair-page .hp-actions { gap:17px; }
  .hair-page .hp-hero-copy .hp-actions { align-items:center; flex-direction:column; }
  .hair-page .hp-hero-copy .sv-button { width:100%; }
  .hair-page .hp-hero-copy .hp-textlink { align-self:center; justify-content:center; width:100%; }
  .hair-page .hp-hero-note { font-size:10px; justify-content:center; margin-top:19px; }
  .hair-page .hp-booking-note { width:calc(100% - 20px); border-radius:13px; padding:13px; gap:10px; }
  .hair-page .hp-note-icon { width:36px; height:36px; border-radius:9px; }
  .hair-page .hp-note-icon .sv-icon { width:19px; height:19px; }
  .hair-page .hp-booking-note small { font-size:8px; }
  .hair-page .hp-booking-note strong { font-size:10px; }
  .hair-page .hp-booking-note div > span { font-size:9px; }
  .hair-page .hp-note-check { display:none; }
  .hair-page .hp-benefits { gap:16px; margin-top:28px; }
  .hair-page .hp-benefits li { font-size:10px; line-height:1.5; font-weight:550; }
  .hair-page .hp-benefits .sv-icon { width:20px; height:20px; }
  .hair-page h2 { font-size:34px; }
  .hair-page .hp-section-heading > p:last-child:not(.hp-eyebrow) { font-size:14px; margin-top:20px; }
  .hair-page .hp-relief-grid { grid-template-columns:1fr; gap:28px; }
  .hair-page .hp-relief-grid article + article { border-top:1px solid #e7e7ef; padding-top:28px; }
  .hair-page .hp-relief-icon { width:40px; height:40px; margin-bottom:16px; border-radius:12px; }
  .hair-page .hp-relief-grid h3 { font-size:22px; max-width:330px; margin-bottom:12px; }
  .hair-page .hp-relief-grid p { margin-bottom:16px; }
  .hair-page .hp-day-tabs { width:100%; gap:3px; padding:4px; border-radius:12px; }
  .hair-page .hp-day-tabs button { justify-content:center; flex:1; font-size:10px; gap:5px; padding:12px 5px; }
  .hair-page .hp-day-copy h3 { font-size:28px; }
  .hair-page .hp-day-copy > p { font-size:14px; }
  .hair-page .hp-checks { font-size:12px; gap:10px; }
  .hair-page .hp-demo-top { padding:14px 15px; }
  .hair-page .hp-demo-brand { gap:7px; font-size:11px; }
  .hair-page .hp-demo-tag { font-size:8px; }
  .hair-page .hp-calendar-heading { margin:17px; }
  .hair-page .hp-calendar-heading strong { font-size:19px; }
  .hair-page .hp-calendar-columns,.hair-page .hp-calendar-grid { padding-inline:10px; grid-template-columns:32px 1fr 1fr; }
  .hair-page .hp-calendar-lane { padding-inline:3px; }
  .hair-page .hp-appointment { padding:8px 6px; }
  .hair-page .hp-appointment small { font-size:7px; margin-bottom:6px; }
  .hair-page .hp-appointment small > span { font-size:6px; }
  .hair-page .hp-appointment strong { font-size:10px; }
  .hair-page .hp-appointment > span { font-size:8px; }
  .hair-page .hp-calendar-free { font-size:8px; }
  .hair-page .hp-demo-confirm { font-size:9px; }
  .hair-page .hp-client-header { padding:19px; }
  .hair-page .hp-client-header strong { font-size:17px; }
  .hair-page .hp-client-header > .sv-icon { display:none; }
  .hair-page .hp-client-note { margin-inline:17px; padding:16px; }
  .hair-page .hp-client-history { padding:20px 19px; }
  .hair-page .hp-receipt { padding:18px; }
  .hair-page .hp-receipt-client { gap:7px; font-size:11px; }
  .hair-page .hp-receipt-client > span { font-size:8px; }
  .hair-page .hp-receipt-line { font-size:12px; }
  .hair-page .hp-example-note { font-size:9px; }
  .sv-page .hair-page .hp-relationship-photo img { height:360px; object-position:52% center; border-radius:18px; }
  .hair-page .hp-relationship-photo > span { font-size:11px; padding-inline:19px; border-radius:0 0 18px 18px; }
  .hair-page .hp-relationship-copy h2 { font-size:35px; }
  .hair-page .hp-relationship-copy > p:not(.hp-eyebrow) { font-size:14px; }
  .hair-page .hp-migration { padding:29px 23px; border-radius:18px; }
  .hair-page .hp-migration .hp-eyebrow { font-size:9px; }
  .hair-page .hp-migration h2 { font-size:33px; }
  .hair-page .hp-migration li { gap:12px; }
  .hair-page .hp-migration li strong { font-size:13px; }
  .hair-page .hp-migration li p { font-size:11px; }
  .hair-page .hp-migration .hp-migration-note { align-items:flex-start; font-size:10px; }
  .hair-page .hp-migration-note .sv-icon { margin-top:2px; }
  .hair-page .hp-faq-list summary { font-size:13px; padding-block:20px; }
  .hair-page .hp-faq-list details p { padding-right:15px; }
}
@media (prefers-reduced-motion:reduce) { .hair-page *, .hair-page *::before, .hair-page *::after { transition:none!important; animation:none!important; scroll-behavior:auto!important; } }
