/* Patient-facing controls, profiles and short philosophy. */
html body :is(.button,.nav-cta,.nav-call,.career-controls button):not(.text){
  display:inline-flex;align-items:center;justify-content:center;gap:.45rem;
  min-height:48px!important;padding:12px 18px!important;border-radius:12px!important;
  border:1px solid #0a3327!important;background:#0a3327!important;color:#fff!important;
  font-family:inherit;font-size:.95rem!important;font-weight:700;line-height:1.4;
  text-align:center;text-decoration:none;white-space:normal;max-width:100%;
  box-shadow:none!important;backdrop-filter:none!important;cursor:pointer;
}
html body :is(.button,.nav-cta,.nav-call,.career-controls button):not(.text):hover{
  background:#164f3c!important;border-color:#164f3c!important;color:#fff!important;
  transform:none!important;filter:none!important;box-shadow:none!important;
}
html body :is(.button.secondary,.button.booking-back,.nav-call){background:#fff!important;color:#0a3327!important;border-color:#81988e!important}
html body :is(.button.secondary,.button.booking-back,.nav-call):hover{background:#edf4ef!important;color:#0a3327!important;border-color:#0a3327!important}
html body :is(.button,.nav-cta,.nav-call,.career-controls button):focus-visible{outline:3px solid #0a3327;outline-offset:4px;box-shadow:0 0 0 4px #fff!important}
html body .button:disabled{background:#e3e9e5!important;color:#53665b!important;border-color:#b1bfb6!important;cursor:default}
.clinic-booking [hidden]{display:none!important}
.clinic-booking .booking-field label{font-weight:700}
.clinic-booking select{font-size:16px}
.patient-price-hint{font-size:1.05rem;font-weight:700;line-height:1.65;color:#0a3327}
html body .patient-philosophy{padding:48px 0!important;background:#eff5f0!important}
.patient-philosophy .wrap{max-width:1040px}
.patient-philosophy h2{max-width:780px}
.patient-philosophy p:not(.eyebrow){max-width:860px;line-height:1.65}
.patient-philosophy .lead{margin-bottom:12px}
.patient-team-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:36px;margin-bottom:36px}
.patient-team-intro .clean-section-head{margin:0}
html body .patient-team-intro .clean-team-hero{margin:0!important;box-shadow:none!important}
html body .patient-team-intro .clean-team-hero .photo-open{padding:0!important;max-height:none!important}
html body .patient-team-intro .clean-team-hero .photo-open img{height:auto!important;max-height:none!important;width:100%!important;aspect-ratio:3/2!important;object-fit:contain!important}
html body #team .clean-team-title{display:block;margin-bottom:24px}
#team .clean-team-title p{color:#435348;margin:8px 0 0;max-width:780px}
html body #team .clean-person-card{display:flex;flex-direction:column;transform:none!important}
html body #team .clean-person-copy{display:flex;flex-direction:column;flex:1;gap:10px;padding:20px!important}
html body #team .clean-person-copy h4{font-family:inherit;font-size:1.22rem!important;font-weight:750;line-height:1.35;margin:0;min-height:0;letter-spacing:-.015em}
html body #team .clean-person-copy>p{margin:0;min-height:0;font-size:.95rem;line-height:1.5}
html body #team .team-role,.clinic-booking .team-role{font-weight:700;color:#0a3327}
html body #team .pt-specialty{min-height:2.9em}
html body #team .team-note{font-size:.84rem;color:#435348}
html body #team .profile-booking{margin-top:auto!important;padding-top:14px;display:block}
html body #team .profile-booking .button{width:100%;min-height:48px!important;background:#0a3327!important;color:#fff!important;border-color:#0a3327!important}
html body #team .profile-booking .button:hover{background:#164f3c!important;border-color:#164f3c!important;color:#fff!important}
html body .hero .button.secondary{background:#fff!important;color:#0a3327!important}
@media(max-width:760px){
  .patient-team-intro{grid-template-columns:1fr;gap:22px}
  .patient-team-intro .clean-team-hero{max-width:540px}
  html body .patient-philosophy{padding:34px 0!important}
  html body #team .clean-person-copy h4{font-size:1.2rem!important}
  html body #team .pt-specialty{min-height:0}
}
@media(prefers-reduced-motion:reduce){html body :is(.button,.nav-cta,.nav-call,.clean-person-card){transition:none!important}}


/* One visible treatment-booking control, including menus, contact and fallback links. */
html body :is(a.button.booking-button,a.nav-cta.booking-button){
  min-height:48px!important;padding:12px 18px!important;border-radius:12px!important;
  border:1px solid #0a3327!important;background:#0a3327!important;color:#fff!important;
  font-size:.95rem!important;font-weight:700!important;line-height:1.4!important;
  text-decoration:none!important;letter-spacing:normal!important;box-sizing:border-box;
}
html body :is(a.button.booking-button,a.nav-cta.booking-button):hover{
  background:#164f3c!important;border-color:#164f3c!important;color:#fff!important;
}
html body #team .team-qualification,.clinic-booking .team-qualification{font-size:.85rem;line-height:1.5;color:#435348}
.clinic-booking .therapist-option .team-role,.clinic-booking .therapist-option .team-qualification{margin:0 0 8px}
.clinic-booking .therapist-option .actions .booking-button{min-width:180px}
html body .site-footer a.booking-button{margin-bottom:12px}

/* Brochure philosophy, visible without expanding a disclosure. */
.patient-philosophy .philosophy-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:28px 0}
.patient-philosophy .philosophy-principles article{padding:22px;border:1px solid #cbd9cf;border-radius:16px;background:#fff}
.patient-philosophy .philosophy-principles h3,.patient-philosophy .philosophy-digital h3{margin:0 0 12px;font-size:1.15rem;line-height:1.4;color:#0a3327}
.patient-philosophy .philosophy-principles p,.patient-philosophy .philosophy-digital p{margin:0;font-size:.95rem}
.patient-philosophy .philosophy-digital{padding:22px 24px;border-left:4px solid #0a3327;background:#e1ece4;border-radius:0 14px 14px 0}
html body #team .team-description,.clinic-booking .team-description{color:#435348;font-size:.9rem;line-height:1.55}
@media(max-width:760px){.patient-philosophy .philosophy-principles{grid-template-columns:1fr;gap:12px;margin:22px 0}.patient-philosophy .philosophy-principles article,.patient-philosophy .philosophy-digital{padding:18px}}
