
/* ===== CLEAN TYPOGRAPHY OVERRIDE ===== */
/* Remove module-level font overrides */

[class*="ths-"] h1,
[class*="ths-"] h2,
[class*="ths-"] h3,
[class*="ths-"] h4{
  font-family: var(--ths-font-heading) !important;
  line-height: var(--ths-lh-heading) !important;
}

[class*="ths-"] p,
[class*="ths-"] span,
[class*="ths-"] div{
  font-family: var(--ths-font-body) !important;
  line-height: var(--ths-lh-body) !important;
}

[class*="ths-"] small,
[class*="ths-"] .meta,
[class*="ths-"] .label{
  font-size: var(--ths-fs-meta) !important;
  color: var(--ths-color-muted) !important;
}

[class*="ths-"] button,
[class*="ths-"] .btn{
  font-family: var(--ths-font-body) !important;
  font-size: var(--ths-fs-btn) !important;
  font-weight: 700 !important;
}

/* Remove random font-size overrides */
[class*="ths-"] *{
  letter-spacing: normal !important;
}

/* ===== PHASE 30 — TYPOGRAPHY POLISH / LUXURY LEVEL =====
   Refine text density and rhythm for premium spa UI.
*/
[class*="ths-"] h1{
  font-size: clamp(2.15rem, 3.2vw, 3.35rem) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.04em !important;
}

[class*="ths-"] h2{
  font-size: clamp(1.8rem, 2.7vw, 2.7rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.032em !important;
}

[class*="ths-"] h3{
  font-size: clamp(1.45rem, 2.1vw, 2rem) !important;
  line-height: 1.16 !important;
  letter-spacing: -0.024em !important;
}

[class*="ths-"] p,
[class*="ths-"] li,
[class*="ths-"] .ths-text,
[class*="ths-"] .ths-body,
[class*="ths-"] .ths-desc,
[class*="ths-"] .ths-content{
  line-height: 1.74 !important;
  letter-spacing: -0.006em !important;
  color: var(--ths-color-body, #6f6258) !important;
}

[class*="ths-"] small,
[class*="ths-"] .meta,
[class*="ths-"] .label,
[class*="ths-"] .ths-eyebrow,
[class*="ths-"] .ths-kicker{
  color: var(--ths-color-muted, #b78645) !important;
  letter-spacing: 0.11em !important;
  font-weight: 700 !important;
}

[class*="ths-"] .ths-title,
[class*="ths-"] .ths-heading,
[class*="ths-"] .ths-section-title{
  color: var(--ths-color-title, #17324d) !important;
  text-wrap: balance;
}

[class*="ths-"] .ths-text + .ths-text,
[class*="ths-"] p + p{
  margin-top: 0.7em !important;
}

@media (max-width: 849px){
  [class*="ths-"] h1{
    font-size: clamp(1.95rem, 7vw, 2.7rem) !important;
  }

  [class*="ths-"] h2{
    font-size: clamp(1.65rem, 5.8vw, 2.2rem) !important;
  }

  [class*="ths-"] h3{
    font-size: clamp(1.35rem, 4.8vw, 1.75rem) !important;
  }

  [class*="ths-"] p,
  [class*="ths-"] li,
  [class*="ths-"] .ths-text,
  [class*="ths-"] .ths-body,
  [class*="ths-"] .ths-desc,
  [class*="ths-"] .ths-content{
    line-height: 1.7 !important;
  }
}

/* PHASE 1 MOBILE PATCH */
@media(max-width:768px){
  .booking-layout{display:flex!important;flex-direction:column!important;}
  .booking-right{position:relative!important;top:auto!important;}
  .summary-footer{position:fixed;bottom:0;left:0;right:0;background:#fff;z-index:999;padding:12px;}
  .service-chip{font-size:16px!important;padding:10px 14px!important;margin:4px;}
}
