
/* ===== PHASE 29 — TYPOGRAPHY CLEANUP WAVE 4 / RESIDUE OVERRIDE CLEANUP ===== */

/* normalize strong/bold across site */
body strong,
body b{
  font-weight:600 !important;
}

/* normalize heading weight */
h1,h2,h3,h4,h5,h6{
  font-weight:700 !important;
  letter-spacing:-0.02em !important;
}

/* normalize paragraph readability */
p{
  line-height:1.72 !important;
  font-weight:500 !important;
}

/* remove legacy uppercase abuse */
[class*="title"],
[class*="heading"]{
  text-transform:none !important;
}

/* normalize small text / label */
small,
[class*="label"],
[class*="meta"]{
  font-weight:600 !important;
  letter-spacing:0.02em !important;
}

/* fix overly dark text */
body{
  color:#6f6258 !important;
}

/* improve rendering */
a, button{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}

/* ===== PHASE 30 — TYPOGRAPHY POLISH / LUXURY LEVEL =====
   Premium rhythm and hierarchy polish without changing module structure.
*/
body{
  color: var(--ths-color-body, #6f6258) !important;
  line-height: 1.72 !important;
}

h1,h2,h3,h4,h5,h6{
  color: var(--ths-color-title, #17324d) !important;
  font-weight: 700 !important;
  line-height: 1.14 !important;
  text-wrap: balance;
  hanging-punctuation: first last;
}

h1{ letter-spacing: -0.035em !important; }
h2{ letter-spacing: -0.03em !important; }
h3{ letter-spacing: -0.025em !important; }
h4,h5,h6{ letter-spacing: -0.02em !important; }

p, li{
  color: var(--ths-color-body, #6f6258) !important;
  line-height: 1.72 !important;
}

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

@media (max-width: 849px){
  h1,h2,h3,h4,h5,h6{
    text-wrap: pretty;
  }
}

/* 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;}
}
