/* v3.6: scoped improvements, retaining the supplied design. */
.cr-dialog:not([open]),.cr-viewer:not([open]){display:none!important}
.cr-event-fields{border:1px solid #d4d8de;border-radius:8px;padding:16px;margin:0 0 18px}
.cr-event-fields legend{padding:0 6px;font-weight:700}
.cr-dialog .cr-close{z-index:2}
.cr-dialog{max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px)}
.cr-dialog a{overflow-wrap:anywhere}
.cr-footer-social{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}
.cr-footer .cr-footer-social a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid #ffffff60;border-radius:6px;color:#fff;font-size:13px}
img[data-focal="portrait-full"],img[data-focal="group-full"]{object-fit:contain!important;object-position:center!important;background:#f0eeeb;height:auto!important;max-height:640px}
.cht-gallery-link img{object-fit:cover!important;object-position:center!important;background:transparent!important}
.cht-trainer-photo img{object-fit:contain!important;object-position:center!important;height:auto!important;max-height:640px}
.cht-site.cht-classic .cht-hero h1{font-size:clamp(34px,4.5vw,62px)!important;line-height:1.1!important;max-width:620px}
.cht-site.cht-classic .cht-hero h1 span{display:block}
.cht-site .cht-section{padding-block:clamp(36px,5vw,68px)!important}
:where(.cht-about-page,.cht-courses-page,.cht-makeup-page,.cht-beauty-page,.cht-studio-page,.cht-contact-page) img{max-width:100%}
.ca-title h1{font-size:clamp(36px,5.5vw,68px)!important;line-height:1.15!important}
@media(max-width:650px){.cr-head{gap:8px}.cr-logo{flex-basis:65px}.cr-logo img{width:65px;height:65px}.cr-head>.cr-book{padding:10px 12px!important}.cr-menu summary{padding:10px 8px}.cr-menu summary span:last-child{font-size:12px}.cr-dialog{padding:25px 18px}.cr-event-fields{padding:12px}.cr-footer{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.ca-photo img[data-focal="group-full"]{max-height:none}.cc-contact-visual{aspect-ratio:auto}.cc-contact-visual img{height:auto!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}
/* v3.8: final gallery fill rules. Every gallery image fills its allocated tile.
   Individual focal points protect faces while object-fit:cover removes blank bands. */
.cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-link{
  display:block!important;width:100%!important;height:100%!important;overflow:hidden!important;
}
.cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item img,
.cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:nth-child(n) img{
  display:block!important;width:100%!important;height:100%!important;max-width:none!important;
  object-fit:cover!important;background:transparent!important;transform:none!important;
}
.cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:first-child img{object-position:50% 36%!important}
.cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:nth-child(2) img{object-position:50% 21%!important}
.cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:nth-child(3) img{object-position:50% 18%!important}
.cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:nth-child(4) img{object-position:50% 50%!important}
.cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:nth-child(5) img{object-position:50% 27%!important}

/* Keep trainer portraits natural; this rule no longer affects the gallery. */
.cht-site.cht-classic .cht-trainer-photo img,
body :is(.ca-photo,.cm-trainer-photo,.cb-trainer-photo,.cs-trainer-photo) img[data-focal="portrait-full"]{object-fit:contain!important;object-position:center!important;height:auto!important}

/* v3.8: home text visibility / alignment hardening.
   WordPress/theme CSS must never wash out or clip the course section heading. */
.cht-site.cht-classic .cht-courses .cht-center{
  display:block!important;width:100%!important;max-width:100%!important;
  margin-inline:auto!important;text-align:center!important;overflow:visible!important;
}
.cht-site.cht-classic .cht-courses .cht-heading{
  display:block!important;width:min(100%,900px)!important;max-width:900px!important;
  margin:0 auto 14px!important;padding:0!important;position:relative!important;left:auto!important;right:auto!important;
  transform:none!important;clip:auto!important;clip-path:none!important;overflow:visible!important;
  color:#303640!important;opacity:1!important;visibility:visible!important;text-shadow:none!important;
  text-align:center!important;white-space:normal!important;
}
.cht-site.cht-classic .cht-courses .cht-eyebrow{
  color:#3f4551!important;opacity:1!important;visibility:visible!important;
}
.cht-site.cht-classic .cht-courses .cht-intro{
  display:block!important;max-width:760px!important;margin-inline:auto!important;
  color:#606570!important;opacity:1!important;visibility:visible!important;text-align:center!important;
}
.cht-site.cht-classic .cht-courses .cht-course-card :is(h3,p,.cht-course-number,.cht-course-link){
  opacity:1!important;visibility:visible!important;
}
.cht-site.cht-classic .cht-courses .cht-course-card h3{color:#3f4551!important}
.cht-site.cht-classic .cht-courses .cht-course-card p{color:#606570!important}
.cht-site.cht-classic .cht-courses .cht-course-number{color:#3f4551!important}
.cht-site.cht-classic .cht-courses .cht-course-link{color:#303640!important}

@media(max-width:650px){
  .cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:first-child img{object-position:50% 38%!important}
  .cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:nth-child(2) img{object-position:50% 18%!important}
  .cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:nth-child(3) img{object-position:50% 14%!important}
  .cht-site.cht-classic .cht-gallery.cht-gallery-final .cht-gallery-item:nth-child(5) img{object-position:50% 22%!important}
}
