/* Time Booster Marketing exact WordPress bridge. Keep this file small: captured reference CSS remains authoritative. */
html, body.tbm-precision-exact { margin:0; padding:0; width:100%; }
body.tbm-precision-exact.tbm-exact-loading #main { visibility:hidden; }
html.tbm-loader-active,body.tbm-loader-active,body.tbm-precision-exact.tbm-exact-loading { overflow:hidden !important; overscroll-behavior:none !important; touch-action:none !important; }
body.tbm-loader-active { height:100vh !important; }
body.tbm-precision-exact #main { width:100%; }
body.tbm-precision-exact #wpadminbar { z-index:2147483647; }
body.tbm-precision-exact.admin-bar #main { margin-top:0; }

/* Elementor's wrappers must not become part of the captured layout in editor preview. */
.elementor-editor-active .elementor-widget-tbm_exact_home > .elementor-widget-container,
.elementor-editor-active [class*="elementor-widget-tbm_exact_"] > .elementor-widget-container { display:contents !important; }
.elementor-editor-active [class*="elementor-widget-tbm_exact_"] { width:100% !important; max-width:none !important; }

/* Elementor Global Colors mapped onto the exact Framer design tokens. Initial values are identical to the capture. */
:root {
  --token-737e72db-e634-4710-8a6a-012071c547a7: var(--e-global-color-tbm_ink, #051316);
  --token-341aaa18-16bf-4707-92e1-2a7294d0c900: var(--e-global-color-primary, #07798a);
  --token-a8cbe2ec-9749-4f0f-8839-1b4fb8ad3652: var(--e-global-color-text, #29464b);
  --token-13f611d3-c085-4845-b92f-2f02c29ff742: var(--e-global-color-accent, #d99827);
  --token-1bf6c22f-0186-4df7-b757-0fc13b466d57: var(--e-global-color-tbm_background, #f7fbfb);
  --token-932bf3b4-7623-4fd4-b6dc-115544bb8b98: var(--e-global-color-tbm_surface, #eff6f6);
  --token-84263139-4ef4-4575-bf7e-1fdb6494b5cc: var(--e-global-color-tbm_primary_deep, #096462);
  --token-99e5b169-b75d-4aa5-aa33-b5389bf40ba8: var(--e-global-color-tbm_white, #ffffff);
}
/* The captured design is overwhelmingly Inter with only three Satoshi presets. */
#main .framer-text { --framer-font-family: var(--e-global-typography-primary-font-family, "Inter") !important; }
#main .framer-styles-preset-167chs0,
#main .framer-styles-preset-16n5vcp,
#main .framer-styles-preset-iwola5 { --framer-font-family: var(--e-global-typography-accent-font-family, "Satoshi") !important; }

/* Global logo remains constrained by the original Framer wrappers. */
#main img[data-tbm-site-logo="1"] { object-fit:contain !important; }

/* Minimal non-layout additions. */
.tbm-footer-credit { position:absolute; left:50%; bottom:8px; transform:translateX(-50%); z-index:20; font:400 11px/1.4 var(--e-global-typography-primary-font-family,"Inter"),sans-serif; color:rgba(255,255,255,.72); white-space:nowrap; pointer-events:none; }
.tbm-form-status { margin-top:10px; font:500 14px/1.5 var(--e-global-typography-primary-font-family,"Inter"),sans-serif; }
.tbm-form-status.is-success { color:#2c6b3d; }
.tbm-form-status.is-error { color:#9a2c2c; }

/* Elementor global typography controls preserve the captured default families while remaining globally editable. */
#main :where(h1,h2,h3,h4,h5,h6,p,a,button,input,textarea,select,label,option) {
  font-family: var(--e-global-typography-primary-font-family, "Inter"), "Inter Placeholder", sans-serif !important;
}
#main :where(.framer-styles-preset-167chs0,.framer-styles-preset-16n5vcp,.framer-styles-preset-iwola5),
#main :where(.framer-styles-preset-167chs0,.framer-styles-preset-16n5vcp,.framer-styles-preset-iwola5) * {
  font-family: var(--e-global-typography-accent-font-family, "Satoshi"), "Satoshi Placeholder", sans-serif !important;
}

/* V3 precision pass: local service-card mask, exact shape first. */
#main .framer-EAMtm.framer-v-xaae4o.framer-xaae4o {
  -webkit-mask-image: url("../images/service-card-mask.png") !important;
  mask-image: url("../images/service-card-mask.png") !important;
  -webkit-mask-mode: alpha !important;
  mask-mode: alpha !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: cover !important;
  mask-size: cover !important;
  -webkit-mask-composite: source-over !important;
  mask-composite: add !important;
  isolation: isolate;
}

/* Keep keyboard navigation crisp without disturbing the captured hover variants. */
body.tbm-precision-exact #main :where(a,button,input,textarea,select):focus-visible,
.tbm-motion-story :where(a,button):focus-visible,
.tbm-video-intro button:focus-visible {
  outline: 2px solid var(--e-global-color-accent,#D99827) !important;
  outline-offset: 4px !important;
}

/* Full-screen video introduction. Desktop uses video, mobile intentionally uses the poster for smoothness. */
body.tbm-intro-active { overflow: hidden !important; }
.tbm-video-intro {
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #051316;
  color: #fff;
  opacity: 1;
  transform: translateZ(0);
  transition: opacity .65s cubic-bezier(.22,.61,.36,1), visibility .65s;
}
.tbm-video-intro.is-leaving { opacity: 0; visibility: hidden; }
.tbm-video-intro__media,
.tbm-video-intro__shade { position:absolute; inset:0; }
.tbm-video-intro__media {
  background-position:center;
  background-size:cover;
  transform: scale(1.025) translateZ(0);
  animation: tbm-intro-settle 2.7s cubic-bezier(.16,1,.3,1) both;
}
.tbm-video-intro__media video {
  width:100%; height:100%; object-fit:cover; display:block;
  transform:scale(1.04) translateZ(0);
  will-change:transform;
}
.tbm-video-intro__shade {
  background:linear-gradient(180deg,rgba(5,19,22,.28),rgba(5,19,22,.72));
  backdrop-filter:saturate(.92);
}
.tbm-video-intro__content {
  position:relative;
  z-index:2;
  width:min(850px,calc(100% - 48px));
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:16px;
  animation:tbm-intro-copy .8s .16s cubic-bezier(.16,1,.3,1) both;
}
.tbm-video-intro__kicker {
  margin:0;
  font:600 11px/1.2 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:.18em;
  color:#F3EAD5;
}
.tbm-video-intro__title {
  max-width:800px;
  margin:0;
  font:500 clamp(42px,6vw,84px)/.98 var(--e-global-typography-accent-font-family,"Satoshi"),var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:-.045em;
  color:#fff;
}
.tbm-video-intro__body {
  max-width:580px;
  margin:0;
  font:400 16px/1.6 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  color:rgba(255,255,255,.78);
}
.tbm-video-intro__skip {
  margin-top:10px;
  appearance:none;
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  padding:11px 18px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font:500 13px/1 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  cursor:pointer;
  backdrop-filter:blur(10px);
  transition:background .22s ease, transform .22s ease;
}
@media (hover:hover) and (pointer:fine) {
  .tbm-video-intro__skip:hover { background:rgba(255,255,255,.15); transform:translateY(-1px); }
}
@keyframes tbm-intro-settle { from{transform:scale(1.09) translateZ(0)} to{transform:scale(1.025) translateZ(0)} }
@keyframes tbm-intro-copy { from{opacity:0;transform:translate3d(0,22px,0)} to{opacity:1;transform:translate3d(0,0,0)} }

/* Added clinical video story. It follows the Precision Services palette and spacing language without touching captured sections. */
.tbm-motion-story {
  position:relative;
  z-index:1;
  overflow:hidden;
  padding:128px 40px;
  background:var(--e-global-color-primary,#051316);
  color:#fff;
}
.tbm-motion-story__shell {
  width:100%;
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);
  align-items:center;
  gap:clamp(56px,7vw,110px);
}
.tbm-motion-story__copy { max-width:520px; }
.tbm-motion-story__kicker {
  margin:0 0 24px;
  color:var(--e-global-color-accent,#D99827);
  font:600 11px/1.2 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:.18em;
}
.tbm-motion-story__title {
  margin:0;
  max-width:540px;
  color:#fff;
  font:500 clamp(42px,4.7vw,70px)/1 var(--e-global-typography-accent-font-family,"Satoshi"),var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:-.045em;
}
.tbm-motion-story__body {
  margin:26px 0 0;
  max-width:500px;
  color:rgba(255,255,255,.7);
  font:400 16px/1.7 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
}
.tbm-motion-story__cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:34px;
  min-height:48px;
  padding:0 22px;
  border-radius:999px;
  background:var(--e-global-color-accent,#D99827);
  color:#051316;
  text-decoration:none;
  font:600 14px/1 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  transition:transform .25s cubic-bezier(.2,.8,.2,1),filter .25s;
}
.tbm-motion-story__media {
  position:relative;
  min-height:min(70vh,700px);
  overflow:hidden;
  border-radius:28px;
  background-position:center;
  background-size:cover;
  box-shadow:0 28px 80px rgba(0,0,0,.22);
  transform:translateZ(0);
  contain:paint;
}
.tbm-motion-story__media::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 56%,rgba(5,19,22,.24));
}
.tbm-motion-story__media video,
#main [data-framer-name="Feature Section"] video {
  --tbm-parallax-y:0px;
  transform:translate3d(0,var(--tbm-parallax-y),0) scale(1.055);
  backface-visibility:hidden;
}
.tbm-motion-story__media video { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
@media (hover:hover) and (pointer:fine) {
  .tbm-motion-story__cta:hover { transform:translateY(-2px); filter:brightness(1.04); }
}

/* The existing Services page Load More control now reveals the real additional Precision services. */
.tbm-supplemental-services {
  overflow:clip;
  max-height:0;
  opacity:0;
  background:var(--e-global-color-tbm_background,#F7FBFB);
  transition:max-height .9s cubic-bezier(.16,1,.3,1),opacity .45s ease,padding .7s cubic-bezier(.16,1,.3,1);
  padding:0 40px;
}
.tbm-supplemental-services.is-open { max-height:2200px; opacity:1; padding:112px 40px 128px; }
.tbm-supplemental-services__shell { width:100%; max-width:1200px; margin:0 auto; }
.tbm-supplemental-services__head { display:grid; grid-template-columns:.7fr 1.3fr; gap:40px; align-items:start; margin-bottom:52px; }
.tbm-supplemental-services__eyebrow {
  margin:7px 0 0;
  color:var(--e-global-color-secondary,#07798A);
  font:600 11px/1.2 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:.16em;
}
.tbm-supplemental-services__title {
  margin:0;
  color:var(--e-global-color-primary,#051316);
  font:500 clamp(38px,4vw,62px)/1.04 var(--e-global-typography-accent-font-family,"Satoshi"),var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:-.04em;
}
.tbm-supplemental-services__intro {
  grid-column:2;
  margin:-22px 0 0;
  max-width:650px;
  color:var(--e-global-color-text,#29464b);
  font:400 15px/1.65 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
}
.tbm-supplemental-services__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.tbm-supplemental-service {
  min-height:132px;
  display:grid;
  grid-template-columns:42px 1fr 24px;
  align-items:start;
  gap:18px;
  padding:25px 26px;
  border:1px solid rgba(5,19,22,.09);
  border-radius:22px;
  background:rgba(255,255,255,.54);
  text-decoration:none;
  color:var(--e-global-color-primary,#051316);
  transition:transform .28s cubic-bezier(.2,.8,.2,1),background .28s,border-color .28s;
  content-visibility:auto;
  contain-intrinsic-size:132px;
}
.tbm-supplemental-service__number { color:var(--e-global-color-secondary,#07798A); font:600 12px/1.4 var(--e-global-typography-primary-font-family,"Inter"),sans-serif; padding-top:4px; }
.tbm-supplemental-service__body { display:flex; flex-direction:column; gap:9px; }
.tbm-supplemental-service__name { font:500 22px/1.2 var(--e-global-typography-accent-font-family,"Satoshi"),var(--e-global-typography-primary-font-family,"Inter"),sans-serif; letter-spacing:-.025em; }
.tbm-supplemental-service__note { color:var(--e-global-color-text,#29464b); font:400 14px/1.55 var(--e-global-typography-primary-font-family,"Inter"),sans-serif; }
.tbm-supplemental-service__arrow { font-size:17px; line-height:1; opacity:.62; transform:translate3d(0,2px,0); }
@media (hover:hover) and (pointer:fine) {
  .tbm-supplemental-service:hover { transform:translate3d(0,-3px,0); background:#fff; border-color:rgba(7,121,138,.22); }
}

/* Subtle scroll-drawn SVG. One path, one requestAnimationFrame loop, no layout work. */
.tbm-scroll-trace {
  --tbm-trace-color:#D99827;
  --tbm-trace-opacity:.22;
  position:fixed;
  z-index:6;
  top:10vh;
  right:8px;
  width:58px;
  height:80vh;
  pointer-events:none;
  opacity:var(--tbm-trace-opacity);
  mix-blend-mode:multiply;
  transform:translateZ(0);
}
.tbm-scroll-trace svg { width:100%; height:100%; overflow:visible; display:block; }
.tbm-scroll-trace path { fill:none; vector-effect:non-scaling-stroke; stroke-linecap:round; stroke-linejoin:round; }
.tbm-scroll-trace__ghost { stroke:var(--tbm-trace-color); stroke-width:.75; opacity:.2; }
.tbm-scroll-trace__draw { stroke:var(--tbm-trace-color); stroke-width:1.35; }
.tbm-scroll-trace__dot { fill:var(--tbm-trace-color); opacity:.84; }

@media (max-width: 767.98px) {
  .tbm-video-intro__content { width:calc(100% - 34px); gap:12px; }
  .tbm-video-intro__title { font-size:clamp(38px,12vw,58px); }
  .tbm-video-intro__body { font-size:14px; line-height:1.55; max-width:360px; }
  .tbm-video-intro__media { animation-duration:2.2s; }

  .tbm-motion-story { padding:82px 20px; }
  .tbm-motion-story__shell { grid-template-columns:1fr; gap:42px; }
  .tbm-motion-story__copy { max-width:none; }
  .tbm-motion-story__kicker { margin-bottom:18px; }
  .tbm-motion-story__title { font-size:clamp(38px,11vw,52px); max-width:440px; }
  .tbm-motion-story__body { font-size:15px; line-height:1.65; }
  .tbm-motion-story__media { min-height:56vh; max-height:560px; border-radius:20px; box-shadow:0 18px 44px rgba(0,0,0,.18); }
  .tbm-motion-story__media video { transform:translate3d(0,var(--tbm-parallax-y),0) scale(1.035); }

  .tbm-supplemental-services { padding-left:20px; padding-right:20px; }
  .tbm-supplemental-services.is-open { padding:78px 20px 92px; max-height:3600px; }
  .tbm-supplemental-services__head { grid-template-columns:1fr; gap:18px; margin-bottom:34px; }
  .tbm-supplemental-services__intro { grid-column:auto; margin:0; }
  .tbm-supplemental-services__grid { grid-template-columns:1fr; gap:10px; }
  .tbm-supplemental-service { min-height:116px; padding:21px 20px; border-radius:18px; grid-template-columns:32px 1fr 18px; gap:12px; }
  .tbm-supplemental-service__name { font-size:19px; }
  .tbm-supplemental-service__note { font-size:13px; }

  .tbm-scroll-trace { right:1px; width:34px; opacity:var(--tbm-trace-opacity); filter:opacity(.62); mix-blend-mode:normal; }
}

@media (prefers-reduced-motion: reduce) {
  .tbm-video-intro,
  .tbm-video-intro__media,
  .tbm-video-intro__content,
  .tbm-motion-story__cta,
  .tbm-supplemental-services,
  .tbm-supplemental-service { animation:none !important; transition-duration:.01ms !important; }
  .tbm-motion-story__media video,
  #main [data-framer-name="Feature Section"] video { transform:none !important; }
  .tbm-scroll-trace__draw { stroke-dasharray:none !important; stroke-dashoffset:0 !important; }
  .tbm-scroll-trace__dot { display:none; }
}

/* Contact-page clinic hours, sourced from the original Precision Services site and globally editable. */
.tbm-clinic-hours {
  position:relative;
  z-index:1;
  padding:88px 40px;
  background:var(--e-global-color-tbm_surface,#EFF6F6);
}
.tbm-clinic-hours__shell {
  width:100%;
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr);
  gap:clamp(42px,7vw,96px);
  align-items:center;
}
.tbm-clinic-hours__eyebrow {
  margin:0 0 14px;
  color:var(--e-global-color-secondary,#07798A);
  font:600 11px/1.2 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:.16em;
}
.tbm-clinic-hours__title {
  margin:0;
  color:var(--e-global-color-primary,#051316);
  font:500 clamp(36px,4vw,58px)/1.02 var(--e-global-typography-accent-font-family,"Satoshi"),var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:-.04em;
}
.tbm-clinic-hours__grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.tbm-clinic-hours__item {
  min-height:118px;
  padding:22px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border:1px solid rgba(5,19,22,.08);
  border-radius:20px;
  background:rgba(255,255,255,.66);
}
.tbm-clinic-hours__day {
  color:var(--e-global-color-text,#29464b);
  font:500 13px/1.35 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
}
.tbm-clinic-hours__time {
  color:var(--e-global-color-primary,#051316);
  font:500 18px/1.25 var(--e-global-typography-accent-font-family,"Satoshi"),var(--e-global-typography-primary-font-family,"Inter"),sans-serif;
  letter-spacing:-.02em;
}

@media (max-width: 767.98px) {
  .tbm-clinic-hours { padding:68px 20px; }
  .tbm-clinic-hours__shell { grid-template-columns:1fr; gap:30px; }
  .tbm-clinic-hours__grid { grid-template-columns:1fr; }
  .tbm-clinic-hours__item { min-height:88px; padding:18px 20px; border-radius:17px; }
  .tbm-clinic-hours__time { font-size:17px; }
}

/* V4 Signature brand system. Geometry remains captured reference; this layer owns identity and progressive loading only. */
:root {
  color-scheme: light;
  --tbm-brand-primary:#07798A;
  --tbm-brand-primary-deep:#096462;
  --tbm-brand-cyan:#0595C7;
  --tbm-brand-gold:#D99827;
  --tbm-brand-cream:#F3EAD5;
  --tbm-brand-ink:#051316;
  --tbm-brand-text:#29464B;
  --tbm-brand-surface:#F7FBFB;
  --tbm-brand-white:#FFFFFF;
  --tbm-brand-border:#D7E7E9;
  --tbm-logo-width:225px;
  --tbm-logo-width-mobile:165px;
  --tbm-button-radius:999px;
  --tbm-card-radius:28px;
}
body.tbm-precision-exact { background:var(--tbm-brand-surface); color:var(--tbm-brand-text); }
body.tbm-precision-exact ::selection { background:var(--tbm-selection-bg,var(--tbm-brand-primary)); color:var(--tbm-selection-text,#fff); }
body.tbm-precision-exact :where(a,button,input,textarea,select):focus-visible { outline-color:var(--tbm-focus-ring,var(--tbm-brand-gold)) !important; }

/* Preserve the captured logo wrapper, but let the supplied full wordmark breathe within it. */
#main header[data-framer-name="Header"] img[data-tbm-site-logo="1"] {
  width:min(var(--tbm-logo-width),100%) !important;
  max-width:var(--tbm-logo-width) !important;
  max-height:var(--tbm-logo-max-height,76px) !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:left center !important;
  filter:none !important;
}
#main .framer-ilrjo7-container footer img[data-tbm-site-logo="1"] {
  width:min(calc(var(--tbm-logo-width) * 1.08),100%) !important;
  max-width:calc(var(--tbm-logo-width) * 1.08) !important;
  height:auto !important;
  object-fit:contain !important;
  object-position:left center !important;
}

/* Brand accents are richer, never louder than the treatment content. */
#main :where(a,button) { -webkit-tap-highlight-color:rgba(7,121,138,.12); }
#main :where(button,[role="button"],a) { text-underline-offset:.18em; }
.tbm-motion-story__cta,.tbm-video-intro__skip { border-radius:var(--tbm-button-radius) !important; }
.tbm-motion-story__media,.tbm-supplemental-service,.tbm-clinic-hours__item { border-radius:var(--tbm-card-radius); }

/* Exact disconnected service-card island is hardened against browser mask edge artifacts. */
#main .framer-EAMtm.framer-v-xaae4o.framer-xaae4o {
  -webkit-mask-image:url("../images/service-card-mask.png") !important;
  mask-image:url("../images/service-card-mask.png") !important;
  -webkit-mask-size:100% 100% !important;
  mask-size:100% 100% !important;
  -webkit-mask-position:0 0 !important;
  mask-position:0 0 !important;
  -webkit-mask-repeat:no-repeat !important;
  mask-repeat:no-repeat !important;
  transform:translateZ(0);
  backface-visibility:hidden;
}

/* Signature cloud loader. It blocks page interaction and reveals the untouched site through a wavy center split. */
.tbm-brand-loader {
  position:fixed; inset:0; z-index:2147483600; overflow:hidden; isolation:isolate;
  display:grid; place-items:center; background:#F7FBFB; color:var(--tbm-brand-ink,#051316);
  opacity:1; visibility:visible; pointer-events:auto; cursor:progress;
  --tbm-loader-progress:0%;
  --tbm-loader-cloud-alpha:var(--tbm-loader-cloud-strength,.88);
}
.tbm-brand-loader::after {
  content:""; position:absolute; inset:0; z-index:5; pointer-events:none; opacity:.18;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.16'/%3E%3C/svg%3E");
  mix-blend-mode:soft-light;
}
.tbm-brand-loader__clipdefs { position:absolute; width:0; height:0; overflow:hidden; }
.tbm-brand-loader .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}
.tbm-brand-loader__curtains,.tbm-brand-loader__ambient { position:absolute; inset:0; pointer-events:none; }
.tbm-brand-loader__curtains { z-index:1; }
.tbm-brand-loader__ambient { z-index:2; opacity:.68; }
.tbm-brand-loader__curtain {
  position:absolute; top:0; bottom:0; width:54vw; overflow:hidden;
  background:
    radial-gradient(85% 60% at 46% 18%,rgba(255,255,255,.95),rgba(247,251,251,.64) 54%,rgba(231,247,248,.54) 100%),
    linear-gradient(150deg,#fbfefe 0%,#edf8f9 46%,#f8fcfc 100%);
  will-change:transform; transform:translate3d(0,0,0);
  transition:transform var(--tbm-loader-reveal-duration,1050ms) cubic-bezier(.77,0,.18,1),filter .8s cubic-bezier(.2,.8,.2,1);
}
.tbm-brand-loader__curtain--left { left:0; clip-path:url(#tbm-loader-left-clip); }
.tbm-brand-loader__curtain--right { right:0; clip-path:url(#tbm-loader-right-clip); }
.tbm-brand-loader__cloud {
  position:absolute; display:block; border-radius:999px; filter:blur(56px); opacity:calc(.62 * var(--tbm-loader-cloud-alpha));
  transform:translate3d(0,0,0) scale(1); will-change:transform,opacity; mix-blend-mode:multiply;
}
.tbm-brand-loader__cloud.is-teal { width:58vw;height:52vh;left:-20vw;top:13vh;background:radial-gradient(circle at 55% 45%,rgba(7,121,138,.34),rgba(7,121,138,.03) 68%,transparent 74%);animation:tbm-cloud-teal 8.2s ease-in-out infinite alternate; }
.tbm-brand-loader__cloud.is-cyan { width:54vw;height:50vh;right:-19vw;bottom:8vh;background:radial-gradient(circle at 42% 48%,rgba(5,149,199,.28),rgba(5,149,199,.025) 69%,transparent 75%);animation:tbm-cloud-cyan 9.7s ease-in-out infinite alternate; }
.tbm-brand-loader__cloud.is-gold { width:31vw;height:30vh;right:7vw;top:8vh;background:radial-gradient(circle,rgba(217,152,39,.16),rgba(217,152,39,.015) 66%,transparent 74%);filter:blur(64px);opacity:calc(.48 * var(--tbm-loader-cloud-alpha));animation:tbm-cloud-gold 10.5s ease-in-out infinite alternate; }
.tbm-brand-loader__cloud.is-mist { width:62vw;height:38vh;left:13vw;bottom:-14vh;background:radial-gradient(ellipse,rgba(255,255,255,.96),rgba(202,239,242,.32) 54%,transparent 78%);filter:blur(48px);mix-blend-mode:screen;opacity:.76;animation:tbm-cloud-mist 7.6s ease-in-out infinite alternate; }
.tbm-brand-loader__ambient .tbm-brand-loader__cloud { opacity:calc(.28 * var(--tbm-loader-cloud-alpha)); filter:blur(76px); }
.tbm-brand-loader__inner {
  position:relative; z-index:10; width:min(760px,calc(100vw - 48px)); display:flex; flex-direction:column; align-items:center; text-align:center;
  padding:24px 0; transform:translate3d(0,0,0); transition:opacity .38s ease,transform .62s cubic-bezier(.16,1,.3,1);
}
.tbm-brand-loader__logo-split { position:relative; width:min(460px,68vw); aspect-ratio:1501/438; margin:0 0 26px; opacity:0; transform:translateY(12px) scale(.985); animation:tbm-loader-logo-in .78s .12s cubic-bezier(.16,1,.3,1) forwards; }
.tbm-brand-loader__logo-half { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; user-select:none; pointer-events:none; filter:drop-shadow(0 12px 28px rgba(7,121,138,.07)); transition:transform .8s cubic-bezier(.77,0,.18,1),opacity .42s ease,filter .55s ease; }
.tbm-brand-loader__logo-half.is-left { clip-path:inset(0 50% 0 0); }
.tbm-brand-loader__logo-half.is-right { clip-path:inset(0 0 0 50%); }
.tbm-brand-loader__company { max-width:780px; margin:0; color:#083D45; font:500 clamp(18px,2.1vw,30px)/1.18 var(--e-global-typography-primary-font-family,"Inter"),sans-serif; letter-spacing:-.025em; opacity:0; transform:translateY(10px); animation:tbm-loader-copy-in .68s .33s cubic-bezier(.16,1,.3,1) forwards; }
.tbm-brand-loader__subtitle { margin:16px 0 0; color:rgba(41,70,75,.68); font:500 12px/1.4 var(--e-global-typography-primary-font-family,"Inter"),sans-serif; letter-spacing:.12em; text-transform:uppercase; opacity:0; transform:translateY(8px); animation:tbm-loader-copy-in .6s .48s cubic-bezier(.16,1,.3,1) forwards; }
.tbm-brand-loader__counter { margin-top:26px; display:flex; align-items:flex-start; color:var(--tbm-brand-primary,#07798A); font:400 clamp(44px,5.2vw,72px)/.92 var(--e-global-typography-accent-font-family,"Satoshi"),var(--e-global-typography-primary-font-family,"Inter"),sans-serif; letter-spacing:-.055em; font-variant-numeric:tabular-nums; opacity:0; transform:translateY(7px); animation:tbm-loader-copy-in .58s .57s cubic-bezier(.16,1,.3,1) forwards; }
.tbm-brand-loader__counter-unit { margin:4px 0 0 5px; font-size:.35em; letter-spacing:0; color:rgba(7,121,138,.64); }
.tbm-brand-loader__meter { position:relative; width:min(420px,62vw); height:2px; margin-top:22px; background:rgba(41,70,75,.11); border-radius:999px; overflow:visible; opacity:0; animation:tbm-loader-copy-in .55s .66s ease forwards; }
.tbm-brand-loader__meter-fill { position:absolute; inset:0 auto 0 0; width:var(--tbm-loader-progress,0%); border-radius:inherit; background:linear-gradient(90deg,var(--tbm-brand-primary,#07798A) 0%,var(--tbm-brand-cyan,#0595C7) 72%,var(--tbm-brand-gold,#D99827) 100%); box-shadow:0 0 18px rgba(5,149,199,.18); transition:width .12s linear; }
.tbm-brand-loader__meter-fill::after { content:""; position:absolute; right:-3px; top:50%; width:7px; height:7px; border-radius:50%; background:#fff; border:1.5px solid var(--tbm-brand-gold,#D99827); box-shadow:0 0 0 5px rgba(217,152,39,.08); transform:translateY(-50%); }
.tbm-brand-loader__precision { display:flex; gap:7px; margin-top:28px; opacity:0; animation:tbm-loader-copy-in .5s .82s ease forwards; }
.tbm-brand-loader__precision i { width:4px;height:4px;border-radius:50%;background:rgba(7,121,138,.28);animation:tbm-loader-dots 1.7s ease-in-out infinite; }
.tbm-brand-loader__precision i:nth-child(2){animation-delay:.11s}.tbm-brand-loader__precision i:nth-child(3){animation-delay:.22s;background:rgba(217,152,39,.6)}.tbm-brand-loader__precision i:nth-child(4){animation-delay:.33s}.tbm-brand-loader__precision i:nth-child(5){animation-delay:.44s}
.tbm-brand-loader.is-complete .tbm-brand-loader__company,.tbm-brand-loader.is-complete .tbm-brand-loader__subtitle,.tbm-brand-loader.is-complete .tbm-brand-loader__counter,.tbm-brand-loader.is-complete .tbm-brand-loader__meter,.tbm-brand-loader.is-complete .tbm-brand-loader__precision { opacity:0; transform:translateY(-7px); transition:opacity .32s ease,transform .42s cubic-bezier(.2,.8,.2,1); animation:none; }
.tbm-brand-loader.is-complete .tbm-brand-loader__logo-split { animation:none; opacity:1; transform:scale(1.01); transition:transform .45s cubic-bezier(.2,.8,.2,1); }
.tbm-brand-loader.is-revealing { background:transparent; }
.tbm-brand-loader.is-revealing::after,.tbm-brand-loader.is-revealing .tbm-brand-loader__ambient { opacity:0; transition:opacity .25s ease; }
.tbm-brand-loader.is-revealing .tbm-brand-loader__curtain--left { transform:translate3d(-112%,0,0); filter:blur(.1px); }
.tbm-brand-loader.is-revealing .tbm-brand-loader__curtain--right { transform:translate3d(112%,0,0); filter:blur(.1px); }
.tbm-brand-loader.is-revealing .tbm-brand-loader__logo-half.is-left { transform:translate3d(-86px,0,0) scale(.985); opacity:0; filter:blur(1.2px); }
.tbm-brand-loader.is-revealing .tbm-brand-loader__logo-half.is-right { transform:translate3d(86px,0,0) scale(.985); opacity:0; filter:blur(1.2px); }
.tbm-brand-loader.is-finished { pointer-events:none; visibility:hidden; }
@keyframes tbm-loader-logo-in { to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes tbm-loader-copy-in { to{opacity:1;transform:translateY(0)} }
@keyframes tbm-loader-dots { 0%,100%{opacity:.25;transform:scale(.8)} 50%{opacity:1;transform:scale(1.35)} }
@keyframes tbm-cloud-teal { from{transform:translate3d(-4vw,-2vh,0) scale(.92) rotate(-4deg)} to{transform:translate3d(8vw,4vh,0) scale(1.08) rotate(5deg)} }
@keyframes tbm-cloud-cyan { from{transform:translate3d(5vw,2vh,0) scale(.94) rotate(3deg)} to{transform:translate3d(-8vw,-4vh,0) scale(1.09) rotate(-5deg)} }
@keyframes tbm-cloud-gold { from{transform:translate3d(4vw,-3vh,0) scale(.86)} to{transform:translate3d(-6vw,5vh,0) scale(1.15)} }
@keyframes tbm-cloud-mist { from{transform:translate3d(-3vw,2vh,0) scale(.96)} to{transform:translate3d(6vw,-5vh,0) scale(1.08)} }


/* Branded image placeholder. The real media simply replaces it without layout shift. */
#main img.tbm-media-pending { transition:opacity .38s ease,background-color .28s ease !important; }
.tbm-media-shell { position:relative !important; overflow:hidden; background:linear-gradient(135deg,#E9F4F4,#F8FCFC) !important; }
.tbm-media-shell::before {
  content:"";position:absolute;z-index:0;left:50%;top:50%;width:min(92px,24%);aspect-ratio:581/472;transform:translate(-50%,-50%);
  background:var(--tbm-placeholder-mark) center/contain no-repeat;opacity:var(--tbm-placeholder-opacity,.13);pointer-events:none;
}
.tbm-media-shell.tbm-placeholder-pulse::before { animation:tbm-placeholder-pulse 1.65s ease-in-out infinite; }
#main img.tbm-placeholder-pulse { animation:tbm-placeholder-img-pulse 1.65s ease-in-out infinite; }
.tbm-media-shell.tbm-media-ready::before { opacity:0;transition:opacity .28s ease; }
.tbm-media-shell.tbm-media-ready img { opacity:1 !important; }
@keyframes tbm-placeholder-pulse { 0%,100%{transform:translate(-50%,-50%) scale(.97);opacity:.08} 50%{transform:translate(-50%,-50%) scale(1.02);opacity:var(--tbm-placeholder-opacity,.13)} }
@keyframes tbm-placeholder-img-pulse { 0%,100%{filter:saturate(.9) brightness(.99)} 50%{filter:saturate(1) brightness(1.025)} }

/* Brand-specific scroll signature: body contour, spinal trail and joint accent. */
.tbm-brand-ornament { position:fixed;z-index:5;right:7px;top:8vh;width:68px;height:84vh;pointer-events:none;opacity:var(--tbm-ornament-opacity,.16);transform:translateZ(0); }
.tbm-brand-ornament svg{width:100%;height:100%;overflow:visible;display:block}.tbm-brand-ornament path{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.tbm-brand-ornament__ghost{stroke:var(--tbm-ornament-color,#07798A);stroke-width:.75;opacity:.18}.tbm-brand-ornament__draw{stroke:var(--tbm-ornament-color,#07798A);stroke-width:1.35}.tbm-brand-ornament__spine{stroke:var(--tbm-ornament-color,#07798A);stroke-width:1;stroke-dasharray:2.2 7;opacity:.58}.tbm-brand-ornament__joint{fill:var(--tbm-ornament-accent,#D99827);stroke:rgba(255,255,255,.76);stroke-width:1}.tbm-brand-ornament__ring{fill:none;stroke:var(--tbm-ornament-accent,#D99827);stroke-width:1;opacity:.72}

/* Tiny premium lift only on V4 additions. Captured Framer cards keep their own interactions. */
@media (hover:hover) and (pointer:fine) {
  .tbm-supplemental-service,.tbm-clinic-hours__item { transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s,border-color .28s; }
  .tbm-supplemental-service:hover,.tbm-clinic-hours__item:hover { transform:translate3d(0,calc(var(--tbm-hover-lift,7px) * -1),0); box-shadow:0 18px 50px rgba(5,19,22,.08); border-color:rgba(7,121,138,.22); }
}

@media (max-width:767.98px) {
  #main header[data-framer-name="Header"] img[data-tbm-site-logo="1"]{width:min(var(--tbm-logo-width-mobile),100%) !important;max-width:var(--tbm-logo-width-mobile) !important;max-height:var(--tbm-logo-max-height-mobile,56px) !important}
  .tbm-brand-ornament{right:0;width:34px;opacity:calc(var(--tbm-ornament-opacity,.16)*.55)}
  .tbm-brand-loader__inner{width:min(240px,74vw)}.tbm-brand-loader__mark{width:min(118px,34vw)}
}
@media (max-width:767.98px) {
  .tbm-brand-loader__inner{width:min(92vw,560px);padding:20px 22px}
  .tbm-brand-loader__logo-split{width:min(78vw,390px);margin-bottom:22px}
  .tbm-brand-loader__company{max-width:88vw;font-size:clamp(18px,5.2vw,25px);line-height:1.22}
  .tbm-brand-loader__subtitle{font-size:10px;letter-spacing:.1em;margin-top:13px}
  .tbm-brand-loader__counter{font-size:clamp(42px,14vw,62px);margin-top:22px}
  .tbm-brand-loader__meter{width:min(72vw,330px);margin-top:18px}
  .tbm-brand-loader__cloud{filter:blur(42px)}
  .tbm-brand-loader__cloud.is-gold{filter:blur(52px);opacity:calc(.34 * var(--tbm-loader-cloud-alpha))}
  .tbm-brand-loader__curtain{width:56vw}.tbm-brand-loader__curtain--right{right:-2vw}.tbm-brand-loader__curtain--left{left:-2vw}
  .tbm-brand-loader.is-revealing .tbm-brand-loader__logo-half.is-left{transform:translate3d(-48px,0,0);opacity:0}
  .tbm-brand-loader.is-revealing .tbm-brand-loader__logo-half.is-right{transform:translate3d(48px,0,0);opacity:0}
}
@media (prefers-reduced-motion:reduce) {
  .tbm-brand-loader__curtain{transition-duration:.18s!important}.tbm-brand-loader.is-revealing .tbm-brand-loader__curtain{transform:translate3d(0,0,0)!important;opacity:0!important}.tbm-brand-loader.is-revealing .tbm-brand-loader__logo-half{transform:none!important;opacity:0!important}
  .tbm-brand-loader__cloud,.tbm-brand-loader__logo-split,.tbm-brand-loader__company,.tbm-brand-loader__subtitle,.tbm-brand-loader__counter,.tbm-brand-loader__meter,.tbm-brand-loader__precision i,.tbm-media-shell::before{animation:none!important}
  .tbm-brand-ornament__draw{stroke-dasharray:none!important;stroke-dashoffset:0!important}
}
.tbm-media-credit{position:absolute;right:18px;bottom:8px;z-index:20;font:400 10px/1.35 var(--e-global-typography-primary-font-family,"Inter"),sans-serif;color:rgba(255,255,255,.48);white-space:nowrap;pointer-events:none}
@media(max-width:767.98px){.tbm-media-credit{right:12px;bottom:5px;font-size:9px}}
/* Full Precision wordmark geometry inside the captured header and footer owners. */
#main header[data-framer-name="Header"] .framer-wzbmbx,
#main header[data-framer-name="Header"] .framer-wzbmbx > a.framer-jaeaq5 {
  width:var(--tbm-logo-width) !important;
  height:min(calc(var(--tbm-logo-width) * .2918),var(--tbm-logo-max-height,76px)) !important;
  min-width:var(--tbm-logo-width) !important;
  flex:none !important;
}
#main .framer-ilrjo7-container footer .framer-julhtp[data-framer-name="Logo"] {
  aspect-ratio:1501/438 !important;
  height:auto !important;
}
@media(max-width:767.98px){
  #main header[data-framer-name="Header"] .framer-wzbmbx,
  #main header[data-framer-name="Header"] .framer-wzbmbx > a.framer-jaeaq5 {
    width:var(--tbm-logo-width-mobile) !important;
    min-width:var(--tbm-logo-width-mobile) !important;
    height:min(calc(var(--tbm-logo-width-mobile) * .2918),var(--tbm-logo-max-height-mobile,56px)) !important;
  }
}

/* ==========================================================
   V6 PRODUCTION MOTION PASS
   Tight timing, restrained colour, true full-screen menu,
   full-width recovery film, safe service pills and reviews.
   ========================================================== */

/* Loader is a first-navigation experience only. The PHP shell exists on the
   first frame, but is completely inert unless the synchronous eligibility
   script marks the document before paint. */
.tbm-brand-loader{visibility:hidden;pointer-events:none}
html.tbm-loader-eligible .tbm-brand-loader{visibility:visible;pointer-events:auto}
html.tbm-loader-eligible,html.tbm-loader-eligible body,html.tbm-loader-active,html.tbm-loader-active body{overflow:hidden!important;overscroll-behavior:none!important;touch-action:none}
.tbm-brand-loader{--tbm-loader-cloud-alpha:clamp(.28,var(--tbm-loader-cloud-strength,.56),.68)}
.tbm-brand-loader__cloud.is-teal{opacity:calc(.46 * var(--tbm-loader-cloud-alpha))!important}
.tbm-brand-loader__cloud.is-cyan{opacity:calc(.40 * var(--tbm-loader-cloud-alpha))!important}
.tbm-brand-loader__cloud.is-gold{opacity:calc(.16 * var(--tbm-loader-cloud-alpha))!important}
.tbm-brand-loader__ambient{opacity:.62!important}
.tbm-brand-loader__lottie{position:relative;width:min(430px,72vw);height:min(162px,27vw);display:grid;place-items:center;margin:0 auto 18px;opacity:1;transform:translateZ(0);transition:opacity .16s ease,transform .28s cubic-bezier(.16,1,.3,1)}
.tbm-brand-loader__lottie-logo{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;transform-origin:center;will-change:transform,opacity}
.tbm-brand-loader__lottie-pulse{position:absolute;left:31%;top:39%;width:52px;height:52px;border-radius:50%;border:1.5px solid rgba(217,152,39,.68);box-shadow:0 0 0 8px rgba(217,152,39,.055),0 0 22px rgba(5,149,199,.08);pointer-events:none;will-change:transform,opacity}
.tbm-brand-loader__logo-split{position:absolute!important;left:50%;top:50%;width:min(430px,72vw)!important;height:min(162px,27vw);margin:0!important;transform:translate(-50%,-84%)!important;opacity:0!important;pointer-events:none}
.tbm-brand-loader__logo-split.is-handoff{opacity:1!important}
.tbm-brand-loader__lottie.is-handoff{opacity:0;transform:scale(.998)}
.tbm-brand-loader__company,.tbm-brand-loader__subtitle,.tbm-brand-loader__counter,.tbm-brand-loader__meter{animation-duration:.34s!important}
.tbm-brand-loader__company{animation-delay:.20s!important}.tbm-brand-loader__subtitle{animation-delay:.27s!important}.tbm-brand-loader__counter{animation-delay:.32s!important}.tbm-brand-loader__meter{animation-delay:.38s!important}
.tbm-brand-loader.is-complete .tbm-brand-loader__company,.tbm-brand-loader.is-complete .tbm-brand-loader__subtitle,.tbm-brand-loader.is-complete .tbm-brand-loader__counter,.tbm-brand-loader.is-complete .tbm-brand-loader__meter{transition:opacity .18s ease,transform .25s cubic-bezier(.16,1,.3,1)!important}
.tbm-brand-loader__curtain{transition:transform var(--tbm-loader-reveal-duration,520ms) cubic-bezier(.76,0,.24,1),opacity .24s ease!important}
.tbm-brand-loader.is-revealing .tbm-brand-loader__logo-half{transition:transform .44s cubic-bezier(.16,1,.3,1),opacity .23s ease,filter .3s ease!important}


/* Service pills intentionally inherit the exact captured reference component styling. */
/* Recovery film: true edge-to-edge media using the original captured video.
   JS maps scroll progress to scale, curve and clip inset. */
.tbm-motion-story{position:relative;width:100%;max-width:none!important;padding:clamp(72px,8vw,118px) 0!important;margin:0!important;background:transparent!important;overflow:clip!important}
.tbm-motion-story__shell{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;position:relative}
.tbm-motion-story__copy{position:absolute;z-index:3;left:clamp(22px,6vw,96px);bottom:clamp(24px,5vw,72px);width:min(540px,calc(100vw - 44px));padding:clamp(20px,2.8vw,34px)!important;border-radius:24px;background:rgba(255,255,255,.82)!important;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 22px 70px rgba(5,19,22,.09);color:var(--tbm-brand-ink,#051316)!important}
.tbm-motion-story__kicker{color:var(--tbm-brand-primary,#07798A)!important;letter-spacing:.14em!important;font-size:11px!important}
.tbm-motion-story__title{color:var(--tbm-brand-ink,#051316)!important;margin-top:10px!important}
.tbm-motion-story__body{color:var(--tbm-brand-text,#29464B)!important}
.tbm-motion-story__cta{background:var(--tbm-brand-primary,#07798A)!important;color:#fff!important}
.tbm-motion-story__media{position:relative!important;width:100vw!important;max-width:none!important;height:110vh!important;min-height:110vh!important;margin-left:calc(50% - 50vw)!important;overflow:hidden!important;background-color:#e9f3f3!important;background-size:cover!important;background-position:center!important;transform-origin:center center;will-change:transform,clip-path;border-radius:0}
.tbm-motion-story__media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,19,22,.16),transparent 52%);pointer-events:none}
.tbm-motion-story__media video{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;transform:translate3d(0,var(--tbm-parallax-y,0),0) scale(1.035)!important}

/* Three independently pausable review streams. */
.tbm-review-marquee{position:relative;padding:clamp(112px,10vw,158px) 0;background:var(--tbm-brand-surface,#F7FBFB);overflow:hidden;border:0;isolation:isolate}
.tbm-review-marquee__head{width:min(1180px,calc(100% - 48px));margin:0 auto clamp(34px,4vw,56px)}
.tbm-review-marquee__eyebrow{font-size:11px;letter-spacing:.16em;font-weight:600;color:var(--tbm-brand-primary,#07798A);margin:0 0 10px}
.tbm-review-marquee__title{max-width:760px;margin:0;color:var(--tbm-brand-ink,#051316);font-size:clamp(32px,4vw,58px);line-height:1.04;font-weight:500}
.tbm-review-marquee__rows{display:grid;gap:14px}
.tbm-review-marquee__row{width:100%;overflow:hidden;opacity:0;transform:translate3d(0,14px,0);transition:opacity .38s ease,transform .42s cubic-bezier(.16,1,.3,1)}
.tbm-review-marquee__row.is-visible{opacity:1;transform:none}
.tbm-review-marquee__track{display:flex;width:max-content;gap:14px;will-change:transform;animation:tbm-review-left 62s linear infinite}
.tbm-review-marquee__row.is-reverse .tbm-review-marquee__track{animation-name:tbm-review-right;animation-duration:68s}
.tbm-review-marquee__row:nth-child(3) .tbm-review-marquee__track{animation-duration:74s}
.tbm-review-marquee__row:hover .tbm-review-marquee__track{animation-play-state:paused}
.tbm-review-card{width:clamp(310px,29vw,430px);min-height:220px;display:flex;flex-direction:column;justify-content:space-between;padding:26px 28px;border:1px solid rgba(7,121,138,.11);border-radius:22px;background:rgba(255,255,255,.88);box-shadow:0 10px 36px rgba(5,19,22,.035)}
.tbm-review-card__stars{font-size:12px;letter-spacing:.11em;color:#c88a27}.tbm-review-card__quote{margin:18px 0 24px;font-size:15px;line-height:1.62;color:var(--tbm-brand-text,#29464B)}
.tbm-review-card__foot{display:flex;flex-direction:column;gap:3px}.tbm-review-card__name{font-size:14px;color:var(--tbm-brand-ink,#051316)}.tbm-review-card__context{font-size:12px;color:rgba(41,70,75,.64)}
@keyframes tbm-review-left{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% - 7px),0,0)}}
@keyframes tbm-review-right{from{transform:translate3d(calc(-50% - 7px),0,0)}to{transform:translate3d(0,0,0)}}

@media(max-width:767.98px){
  .tbm-brand-loader__lottie{width:min(360px,82vw);height:min(132px,31vw);margin-bottom:14px}.tbm-brand-loader__lottie-pulse{width:38px;height:38px;left:31%;top:39%}.tbm-brand-loader__logo-split{width:min(360px,82vw)!important;height:min(132px,31vw)}
  .tbm-motion-story{padding:62px 0!important}.tbm-motion-story__media{height:110vh!important;min-height:110vh!important}.tbm-motion-story__copy{left:18px;bottom:18px;width:calc(100vw - 36px);padding:20px!important;border-radius:20px}.tbm-motion-story__media::after{background:linear-gradient(0deg,rgba(5,19,22,.22),transparent 52%)}
  .tbm-review-marquee{padding:92px 0}.tbm-review-marquee__head{width:calc(100% - 36px)}.tbm-review-card{width:min(82vw,345px);min-height:210px;padding:22px}.tbm-review-marquee__rows{gap:11px}.tbm-review-marquee__track{gap:11px;animation-duration:54s}.tbm-review-marquee__row.is-reverse .tbm-review-marquee__track{animation-duration:59s}.tbm-review-marquee__row:nth-child(3) .tbm-review-marquee__track{animation-duration:64s}
}
@media(prefers-reduced-motion:reduce){.tbm-review-marquee__track{animation:none!important;transform:none!important}.tbm-review-marquee__row{opacity:1!important;transform:none!important}.tbm-motion-story__media{clip-path:none!important;transform:none!important}}

#main .framer-EAMtm .framer-1unry2n{padding-right:6px!important}
.tbm-brand-loader.is-complete .tbm-brand-loader__logo-split.is-handoff{transform:translateX(-50%) scale(1.01)!important}


/* V7 global logo ownership: footer uses the exact WordPress custom logo,
   while retaining the captured footer slot geometry. */
#main .framer-ilrjo7-container footer img[data-tbm-site-logo="1"]{
  width:auto!important;max-width:min(var(--tbm-logo-width,225px),100%)!important;height:auto!important;max-height:var(--tbm-logo-max-height,76px)!important;object-fit:contain!important;object-position:left center!important;
}
@media(max-width:767.98px){#main .framer-ilrjo7-container footer img[data-tbm-site-logo="1"]{max-width:min(var(--tbm-logo-width-mobile,165px),100%)!important;max-height:var(--tbm-logo-max-height-mobile,56px)!important}}



/* ==========================================================
   V7.2.4 CLEAN SITE MENU
   One trigger in the captured header slot and one body-level fullscreen menu.
   No Framer variant synchronization, duplicate nav state or native-menu fallback.
   ========================================================== */
html.tbm-site-menu-open,
body.tbm-site-menu-open{overflow:hidden!important;overscroll-behavior:none!important}

/* Retire only the original Framer hamburger. The header/nav itself is never hidden. */
#main header[data-framer-name="Header"] button.tbm-native-menu-retired{display:none!important;visibility:hidden!important;pointer-events:none!important}

.tbm-site-menu-trigger,
.tbm-site-menu__close{
  width:54px;height:54px;min-width:54px;min-height:54px;border:0;border-radius:999px;padding:0;
  display:grid;place-items:center;position:relative;background:var(--tbm-brand-accent,#96530F);cursor:pointer;
  appearance:none;-webkit-appearance:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent;
}
.tbm-site-menu-trigger{grid-template-rows:repeat(3,2px);align-content:center;gap:5px}
.tbm-site-menu-trigger>span{display:block;width:20px;height:2px;border-radius:999px;background:#fff;pointer-events:none}
.tbm-site-menu-trigger:active,.tbm-site-menu__close:active{scale:.94}

.tbm-site-menu{
  position:fixed;inset:0;z-index:2147483000;width:100vw;height:100vh;height:100svh;height:100dvh;
  background:rgba(247,251,251,.96);-webkit-backdrop-filter:blur(28px) saturate(1.02);backdrop-filter:blur(28px) saturate(1.02);
  color:var(--tbm-brand-ink,#051316);opacity:0;visibility:hidden;pointer-events:none;overflow:hidden;
  transition:opacity .16s ease,visibility 0s linear .17s;
}
.tbm-site-menu.is-open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .16s ease,visibility 0s linear 0s}
.tbm-site-menu__bar{
  position:absolute;inset:0 0 auto;z-index:3;min-height:96px;padding:max(18px,env(safe-area-inset-top,0px)) clamp(22px,4vw,54px) 14px;
  display:flex;align-items:center;justify-content:space-between;pointer-events:none;
}
.tbm-site-menu__logo,.tbm-site-menu__close{pointer-events:auto}
.tbm-site-menu__logo{display:flex;align-items:center;width:clamp(150px,15vw,210px);max-height:62px}
.tbm-site-menu__logo img{display:block;width:100%;height:auto;max-height:62px;object-fit:contain;object-position:left center}
.tbm-site-menu__close span{position:absolute;left:50%;top:50%;width:20px;height:2px;border-radius:999px;background:#fff;transform-origin:center}
.tbm-site-menu__close span:first-child{transform:translate(-50%,-50%) rotate(45deg)}
.tbm-site-menu__close span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}
.tbm-site-menu__stage{
  width:100%;height:100%;display:grid;place-items:center;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
  padding:clamp(112px,14vh,154px) clamp(20px,4vw,52px) max(44px,env(safe-area-inset-bottom,0px));
}
.tbm-site-menu__nav{
  width:min(680px,100%);margin:auto;padding-left:clamp(34px,5.8vw,92px);display:flex;flex-direction:column;
  align-items:flex-start;justify-content:center;gap:clamp(8px,1.25vh,15px);text-align:left;
}
.tbm-site-menu__link{
  display:block;width:100%;padding:2px 0;color:var(--tbm-brand-ink,#051316)!important;text-decoration:none!important;
  font-family:var(--e-global-typography-primary-font-family,"Inter","Inter Placeholder",sans-serif);font-size:clamp(40px,5.2vw,68px);
  font-weight:500;line-height:1.03;letter-spacing:-.045em;text-align:left!important;opacity:0;transform:translate3d(0,22px,0);
  clip-path:inset(0 0 100% 0);will-change:transform,opacity,clip-path;
}
.tbm-site-menu.is-open .tbm-site-menu__link{animation:tbm-site-menu-reveal .25s cubic-bezier(.16,1,.3,1) calc(18ms + var(--tbm-menu-index,0)*30ms) both}
.tbm-site-menu__link[aria-current="page"]{color:var(--tbm-brand-primary,#07798A)!important}
@keyframes tbm-site-menu-reveal{to{opacity:1;transform:translate3d(0,0,0);clip-path:inset(0)}}

/* Touch interaction: links do not flash browser outlines, and cards compress immediately on press. */
body.tbm-precision-exact a,
.tbm-site-menu a{-webkit-tap-highlight-color:transparent}
body.tbm-precision-exact a:focus,
body.tbm-precision-exact a:focus-visible,
.tbm-site-menu a:focus,
.tbm-site-menu a:focus-visible{outline:0!important;outline-offset:0!important;box-shadow:none!important}
.tbm-pressable-card{scale:1;transform-origin:center;transition:scale .12s cubic-bezier(.2,.8,.2,1)!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.tbm-pressable-card:active{scale:.972}

/* Patient comments/reviews get breathing room and one uninterrupted section surface. */
.tbm-review-marquee{background:var(--tbm-brand-surface,#F7FBFB)!important;padding-block:clamp(112px,10vw,158px)!important}
.tbm-review-marquee__head{margin-bottom:clamp(44px,5vw,68px)!important}
.tbm-review-marquee__rows{gap:16px;background:transparent!important}
.tbm-review-marquee__row{background:transparent!important;transition:opacity .24s ease,transform .28s cubic-bezier(.16,1,.3,1)!important}
.tbm-review-card{background:rgba(255,255,255,.92)!important}
.tbm-review-card__quote{margin:24px 0 30px!important}
#comments,.comments-area{background:var(--tbm-brand-surface,#F7FBFB);padding-block:clamp(72px,8vw,120px);margin:0}

@media(max-width:767.98px){
  .tbm-site-menu-trigger,.tbm-site-menu__close{width:48px;height:48px;min-width:48px;min-height:48px}
  .tbm-site-menu__bar{min-height:88px;padding:max(16px,env(safe-area-inset-top,0px)) 20px 10px}
  .tbm-site-menu__logo{width:min(165px,47vw);max-height:56px}.tbm-site-menu__logo img{max-height:56px}
  .tbm-site-menu__stage{place-items:center;padding:100px 20px max(32px,env(safe-area-inset-bottom,0px))}
  .tbm-site-menu__nav{width:min(520px,100%);padding-left:clamp(26px,9vw,50px);gap:clamp(7px,1.15vh,12px)}
  .tbm-site-menu__link{font-size:clamp(34px,10vw,48px);line-height:1.06}
  .tbm-review-marquee{padding-block:92px!important}.tbm-review-marquee__head{margin-bottom:42px!important}
}
@media(max-height:620px){.tbm-site-menu__stage{place-items:start center;padding-top:96px}.tbm-site-menu__nav{gap:5px}.tbm-site-menu__link{font-size:clamp(30px,8vh,40px)}}
@media(prefers-reduced-motion:reduce){
  .tbm-site-menu,.tbm-site-menu__link,.tbm-pressable-card{transition:none!important;animation:none!important}
  .tbm-site-menu.is-open .tbm-site-menu__link{opacity:1!important;transform:none!important;clip-path:none!important}
  .tbm-motion-story__media{clip-path:inset(3.2% 3.2vw round 54px)!important;transform:scale(.97)!important}
}

/* ==========================================================
   V7.3 INSIGHTS + SVG SCROLL PROGRESS
   The native scrollbar is visually removed. The existing Precision SVG trace
   becomes the visible progress language for the whole frontend and exposes an
   article percentage on single insight pages.
   ========================================================== */
html{scrollbar-width:none;-ms-overflow-style:none}
html::-webkit-scrollbar,body.tbm-precision-exact::-webkit-scrollbar{width:0!important;height:0!important;display:none!important;background:transparent!important}

.tbm-brand-ornament__progress{display:none;position:absolute;right:3px;bottom:-5px;min-width:38px;padding:4px 7px;border-radius:999px;background:rgba(247,251,251,.94);border:1px solid rgba(7,121,138,.14);font:600 10px/1.1 Inter,sans-serif;color:var(--tbm-brand-primary,#07798A);text-align:center;letter-spacing:.02em;box-shadow:0 5px 18px rgba(5,19,22,.05)}
.tbm-brand-ornament.is-reading-progress{opacity:max(var(--tbm-ornament-opacity,.16),.42)}
.tbm-brand-ornament.is-reading-progress .tbm-brand-ornament__progress{display:block}

/* Captured /blog shell, dynamic content grid. */
#main .tbm-blog-grid-host{width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;display:block!important;overflow:visible!important;padding:0!important}
.tbm-blog-grid{width:min(1280px,calc(100% - 48px));margin:0 auto clamp(96px,10vw,150px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tbm-insight-card{display:flex;min-width:0;min-height:520px;flex-direction:column;color:var(--tbm-brand-ink,#051316)!important;text-decoration:none!important;border:1px solid rgba(7,121,138,.11);border-radius:30px;overflow:hidden;background:#fff;box-shadow:0 12px 40px rgba(5,19,22,.035)}
.tbm-insight-card__media{display:block;position:relative;aspect-ratio:1.28/1;overflow:hidden;background:#eaf3f3}
.tbm-insight-card__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .42s cubic-bezier(.16,1,.3,1)}
.tbm-insight-card:hover .tbm-insight-card__media img{transform:scale(1.025)}
.tbm-insight-card__body{display:flex;flex:1;flex-direction:column;padding:24px 24px 22px}
.tbm-insight-card__meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:19px;font-size:11px;line-height:1.3;text-transform:uppercase;letter-spacing:.085em;color:rgba(41,70,75,.66)}
.tbm-insight-card__title{display:block;font-size:clamp(21px,2vw,29px);line-height:1.08;letter-spacing:-.035em;font-weight:520;color:var(--tbm-brand-ink,#051316)}
.tbm-insight-card__excerpt{display:block;margin-top:15px;font-size:14px;line-height:1.62;color:var(--tbm-brand-text,#29464B)}
.tbm-insight-card__foot{display:flex;justify-content:space-between;gap:16px;margin-top:auto;padding-top:25px;font-size:12px;color:var(--tbm-brand-primary,#07798A)}

/* Single article composition. */
.tbm-insight-page{min-height:100vh;background:var(--tbm-brand-surface,#F7FBFB);color:var(--tbm-brand-ink,#051316)}
.tbm-insight-header{position:relative;z-index:30;width:100%;min-height:100px;padding:20px clamp(24px,4vw,64px);display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--tbm-brand-surface,#F7FBFB)}
.tbm-insight-header__logo{display:flex;align-items:center;width:clamp(160px,17vw,230px);max-height:64px}
.tbm-insight-header__logo img{display:block;width:100%;height:auto;max-height:64px;object-fit:contain;object-position:left center}
.tbm-insight-header__actions{display:flex;align-items:center;gap:12px}
.tbm-insight-header__cta{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;border-radius:999px;background:var(--tbm-brand-primary,#07798A);color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:600}
.tbm-insight-menu-slot{position:relative;display:flex;align-items:center;justify-content:center;min-width:54px;min-height:54px}
.tbm-insight-menu-slot .framer-OSja9{width:54px;height:54px;border:0;background:transparent}

.tbm-insight-article{width:100%;overflow:hidden}
.tbm-insight-hero{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:clamp(88px,11vw,160px) 0 clamp(54px,7vw,92px);text-align:left}
.tbm-insight-back{display:inline-flex;margin-bottom:42px;color:var(--tbm-brand-primary,#07798A)!important;text-decoration:none!important;font-size:13px;font-weight:600}
.tbm-insight-kicker,.tbm-insight-section-label{display:block;margin-bottom:18px;font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.12em;font-weight:650;color:var(--tbm-brand-primary,#07798A)}
.tbm-insight-hero h1{max-width:1020px;margin:0;font-size:clamp(48px,7.4vw,104px);line-height:.93;letter-spacing:-.06em;font-weight:500;color:var(--tbm-brand-ink,#051316)}
.tbm-insight-deck{max-width:760px;margin:34px 0 0;font-size:clamp(18px,2vw,24px);line-height:1.48;color:var(--tbm-brand-text,#29464B)}
.tbm-insight-meta{display:flex;align-items:center;gap:10px;margin-top:28px;font-size:12px;color:rgba(41,70,75,.66)}
.tbm-insight-hero-media{width:min(1380px,calc(100% - 36px));height:min(78vh,850px);min-height:560px;margin:0 auto clamp(90px,9vw,140px);border-radius:clamp(38px,6vw,88px);overflow:hidden;background:#eaf3f3}
.tbm-insight-hero-media img{display:block;width:100%;height:100%;object-fit:cover}
.tbm-insight-layout{width:min(1160px,calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:clamp(56px,8vw,110px);align-items:start}
.tbm-insight-copy{font-size:clamp(17px,1.35vw,20px);line-height:1.78;color:var(--tbm-brand-text,#29464B)}
.tbm-insight-copy>p:first-child{font-size:1.12em;line-height:1.7;color:var(--tbm-brand-ink,#051316)}
.tbm-insight-copy h2{margin:2.7em 0 .72em;font-size:clamp(30px,3.2vw,48px);line-height:1.02;letter-spacing:-.04em;font-weight:520;color:var(--tbm-brand-ink,#051316)}
.tbm-insight-copy h3{margin:2.2em 0 .6em;font-size:clamp(23px,2.2vw,32px);line-height:1.1;letter-spacing:-.025em;color:var(--tbm-brand-ink,#051316)}
.tbm-insight-copy p,.tbm-insight-copy ul,.tbm-insight-copy ol{margin:0 0 1.35em}
.tbm-insight-copy ul,.tbm-insight-copy ol{padding-left:1.2em}.tbm-insight-copy li{margin:.45em 0}
.tbm-insight-copy strong{color:var(--tbm-brand-ink,#051316)}
.tbm-insight-copy a{color:var(--tbm-brand-primary,#07798A)!important;text-underline-offset:3px}
.tbm-insight-side{position:sticky;top:28px;display:flex;flex-direction:column;gap:14px}
.tbm-insight-side__card,.tbm-insight-side__cta{display:flex;flex-direction:column;gap:10px;padding:24px;border-radius:24px;border:1px solid rgba(7,121,138,.12);background:#fff}
.tbm-insight-side__card span{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:rgba(41,70,75,.62)}
.tbm-insight-side__card strong{font-size:26px;letter-spacing:-.035em}.tbm-insight-side__card p{margin:0;font-size:13px;line-height:1.55;color:var(--tbm-brand-text,#29464B)}
.tbm-insight-side__cta{background:var(--tbm-brand-primary,#07798A);color:#fff!important;text-decoration:none!important;font-size:13px}.tbm-insight-side__cta strong{font-size:21px;line-height:1.05}
.tbm-insight-sources,.tbm-insight-related{width:min(1160px,calc(100% - 48px));margin:clamp(96px,10vw,150px) auto 0;padding-top:48px;border-top:1px solid rgba(7,121,138,.13)}
.tbm-insight-sources{display:grid;grid-template-columns:.6fr 1.4fr;gap:50px}
.tbm-insight-sources h2,.tbm-insight-related h2{margin:0;font-size:clamp(34px,4vw,56px);line-height:1;letter-spacing:-.045em;font-weight:520}
.tbm-insight-sources ol{margin:0;padding-left:1.3em}.tbm-insight-sources li{padding:10px 0;font-size:14px;line-height:1.5}.tbm-insight-sources a{color:var(--tbm-brand-text,#29464B)!important;text-underline-offset:3px}
.tbm-insight-disclaimer{width:min(760px,calc(100% - 48px));margin:64px auto 0;padding:24px 26px;border-radius:22px;background:#eef6f6;font-size:12px;line-height:1.65;color:rgba(41,70,75,.76)}
.tbm-insight-related{margin-bottom:clamp(100px,11vw,160px)}
.tbm-insight-related__head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:34px}.tbm-insight-related__head>a{font-size:13px;color:var(--tbm-brand-primary,#07798A)!important}
.tbm-insight-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tbm-insight-related__card{display:flex;flex-direction:column;overflow:hidden;border-radius:24px;border:1px solid rgba(7,121,138,.11);background:#fff;color:var(--tbm-brand-ink,#051316)!important;text-decoration:none!important}
.tbm-insight-related__media{display:block;aspect-ratio:1.38/1;overflow:hidden;background:#eaf3f3}.tbm-insight-related__media img{width:100%;height:100%;object-fit:cover;display:block}
.tbm-insight-related__body{display:flex;min-height:205px;flex:1;flex-direction:column;padding:20px}.tbm-insight-related__body small{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:rgba(41,70,75,.62)}.tbm-insight-related__body strong{margin-top:12px;font-size:20px;line-height:1.13;letter-spacing:-.025em}.tbm-insight-related__body>span{margin-top:auto;padding-top:20px;font-size:12px;color:var(--tbm-brand-primary,#07798A)}
.tbm-insight-footer{padding:58px clamp(24px,4vw,64px);display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;border-top:1px solid rgba(7,121,138,.12);background:var(--tbm-brand-surface,#F7FBFB)}
.tbm-insight-footer__logo{width:190px}.tbm-insight-footer__logo img{display:block;width:100%;height:auto}.tbm-insight-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:18px 26px}.tbm-insight-footer nav a{font-size:12px;color:var(--tbm-brand-text,#29464B)!important;text-decoration:none!important}.tbm-insight-footer p{grid-column:1/-1;margin:0;font-size:11px;color:rgba(41,70,75,.56)}

@media(max-width:1023.98px){
  .tbm-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tbm-insight-layout{grid-template-columns:1fr;gap:56px}.tbm-insight-side{position:static;display:grid;grid-template-columns:1fr 1fr}.tbm-insight-sources{grid-template-columns:1fr;gap:26px}.tbm-insight-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tbm-insight-related__card:last-child{display:none}
}
@media(max-width:767.98px){
  .tbm-brand-ornament.is-reading-progress{right:0;width:38px;opacity:.62}.tbm-brand-ornament__progress{right:1px;bottom:-1px;min-width:34px;padding:3px 5px;font-size:9px}
  .tbm-blog-grid{width:calc(100% - 32px);grid-template-columns:1fr;gap:16px;margin-bottom:96px}.tbm-insight-card{min-height:0;border-radius:24px}.tbm-insight-card__body{min-height:280px;padding:21px}.tbm-insight-card__title{font-size:25px}
  .tbm-insight-header{min-height:82px;padding:14px 18px}.tbm-insight-header__logo{width:min(165px,45vw)}.tbm-insight-header__cta{display:none}.tbm-insight-menu-slot{min-width:48px;min-height:48px}.tbm-insight-menu-slot .framer-OSja9{width:48px;height:48px}
  .tbm-insight-hero{width:calc(100% - 36px);padding:72px 0 46px}.tbm-insight-back{margin-bottom:34px}.tbm-insight-hero h1{font-size:clamp(43px,13vw,64px);line-height:.95}.tbm-insight-deck{font-size:18px;margin-top:26px}.tbm-insight-meta{margin-top:22px}
  .tbm-insight-hero-media{width:calc(100% - 20px);height:68vh;min-height:460px;margin-bottom:78px;border-radius:38px}
  .tbm-insight-layout{width:calc(100% - 36px);display:block}.tbm-insight-copy{font-size:17px;line-height:1.72}.tbm-insight-copy h2{margin-top:2.4em;font-size:34px}.tbm-insight-side{display:grid;grid-template-columns:1fr;margin-top:54px}
  .tbm-insight-sources,.tbm-insight-related{width:calc(100% - 36px);margin-top:82px;padding-top:34px}.tbm-insight-disclaimer{width:calc(100% - 36px);margin-top:44px}.tbm-insight-related{margin-bottom:94px}.tbm-insight-related__head{align-items:flex-start;flex-direction:column}.tbm-insight-related__grid{grid-template-columns:1fr}.tbm-insight-related__card:last-child{display:flex}
  .tbm-insight-footer{padding:42px 18px;grid-template-columns:1fr}.tbm-insight-footer nav{justify-content:flex-start}.tbm-insight-footer p{grid-column:1}
}

/* V7.3.1 specialist interaction + route reveal repair. Homepage team cards are
   real interaction targets even though the captured Framer component is a div. */
#main .framer-PiAQm.tbm-specialist-home-card{
  cursor:pointer!important;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  pointer-events:auto!important;
}
#main .framer-PiAQm.tbm-specialist-home-card:active{scale:.972}
#main .framer-PiAQm.tbm-specialist-home-card{position:relative!important}
#main .framer-PiAQm.tbm-specialist-home-card > .tbm-specialist-card-link{
  position:absolute!important;inset:0!important;z-index:20!important;display:block!important;
  border-radius:inherit!important;text-decoration:none!important;color:inherit!important;
  -webkit-tap-highlight-color:transparent;
  pointer-events:auto!important;
}
#main .framer-PiAQm.tbm-specialist-home-card > .tbm-specialist-card-link:focus-visible{
  outline:2px solid var(--tbm-primary,#07798a)!important;outline-offset:4px!important;
}

/* Specialists archive fallback uses the same restrained vertical reveal language
   as the captured site. It only activates on elements the V7.3 patcher marks. */
#main .tbm-specialist-reveal-node{
  opacity:0!important;
  transform:translate3d(0,20px,0)!important;
  transition:opacity .26s ease var(--tbm-specialist-delay,0ms),transform .31s cubic-bezier(.16,1,.3,1) var(--tbm-specialist-delay,0ms)!important;
}
#main .tbm-specialist-reveal-node.is-visible,
#main .tbm-specialist-reveal-node.tbm-specialist-reveal-complete{
  opacity:1!important;
  transform:none!important;
}
#main .framer-4ocrpv > a .framer-zjm4rc-container{
  transform-origin:center center;
}
#main .framer-4ocrpv > a.tbm-specialist-card-visible .framer-zjm4rc-container{
  animation:tbm-specialist-card-in .34s cubic-bezier(.16,1,.3,1) var(--tbm-specialist-card-delay,0ms) both!important;
}
#main .framer-4ocrpv > a.tbm-specialist-card-visible .framer-12ww06p{
  animation:tbm-specialist-copy-in .24s ease calc(var(--tbm-specialist-card-delay,0ms) + 85ms) both!important;
}
#main .framer-12oq07k .framer-18opyxm.tbm-specialist-cta-visible{
  animation:tbm-specialist-cta-in .34s cubic-bezier(.16,1,.3,1) both!important;
}
@keyframes tbm-specialist-card-in{
  from{opacity:0;transform:translate3d(0,42px,0) scale(.95)}
  to{opacity:1;transform:translate3d(0,0,0) scale(1)}
}
@keyframes tbm-specialist-copy-in{
  from{opacity:0;transform:translate3d(0,10px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
@keyframes tbm-specialist-cta-in{
  from{opacity:0;transform:scale(.94)}
  to{opacity:1;transform:scale(1)}
}
@media(prefers-reduced-motion:reduce){
  #main .tbm-specialist-reveal-node,
  #main .framer-4ocrpv > a.tbm-specialist-card-visible .framer-zjm4rc-container,
  #main .framer-4ocrpv > a.tbm-specialist-card-visible .framer-12ww06p,
  #main .framer-12oq07k .framer-18opyxm.tbm-specialist-cta-visible{
    animation:none!important;transition:none!important;opacity:1!important;transform:none!important;
  }
}

/* ===== V7.6.0: specialists retired ======================================= */
#main [data-framer-name="Experts Section"]{display:none!important}

/* ===== V7.6.0: Pricing + Partners (home, under the hero) ================= */
.tbm-x{--x-ink:var(--token-737e72db-e634-4710-8a6a-012071c547a7,#051316);--x-body:var(--token-a8cbe2ec-9749-4f0f-8839-1b4fb8ad3652,#29464b);--x-brand:var(--tbm-brand-primary,var(--token-341aaa18-16bf-4707-92e1-2a7294d0c900,#07798a));--x-soft:var(--token-1bf6c22f-0186-4df7-b757-0fc13b466d57,#f7fbfb);--x-tint:var(--token-932bf3b4-7623-4fd4-b6dc-115544bb8b98,#eff6f6);
  position:relative;width:100%;padding:120px 30px;font-family:"Inter","Inter Placeholder",sans-serif;box-sizing:border-box}
.tbm-x *,.tbm-x *::before,.tbm-x *::after{box-sizing:border-box}
.tbm-x__wrap{max-width:1140px;margin:0 auto;display:flex;flex-direction:column;gap:56px}
.tbm-x__head{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.tbm-x__eyebrow{display:inline-flex;padding:4px 16px;border-radius:50px;background:#fff;color:var(--x-ink);font-size:14px;line-height:1.5;border:1px solid rgba(7,121,138,.14)}
.tbm-x__title{margin:0;max-width:780px;color:var(--x-ink);font-size:44px;font-weight:400;letter-spacing:-.044em;line-height:1.2;text-wrap:balance}
.tbm-x__intro{margin:0;max-width:528px;text-wrap:balance;color:var(--x-body);font-size:16px;letter-spacing:-.03em;line-height:1.5}

.tbm-pricing{background:#fff}
.tbm-pricing .tbm-x__eyebrow{background:var(--x-tint);border-color:transparent}
.tbm-pricing__grid{display:grid;grid-template-columns:repeat(var(--tbm-cols,4),minmax(0,1fr));gap:24px}
.tbm-price-card{display:flex;flex-direction:column;gap:18px;padding:28px 24px;border-radius:20px;background:var(--x-soft);border:1px solid rgba(7,121,138,.08);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}
.tbm-price-card:hover{transform:translateY(-4px);border-color:rgba(7,121,138,.22);box-shadow:0 18px 40px rgba(5,19,22,.06)}
.tbm-price-card__label{margin:0;color:var(--x-ink);font-size:18px;font-weight:500;letter-spacing:-.03em;line-height:1.3;min-height:2.6em}
.tbm-price-card__price{margin:0;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;color:var(--x-ink)}
.tbm-price-card__amount{font-size:40px;font-weight:500;letter-spacing:-.05em;line-height:1;font-variant-numeric:tabular-nums}
.tbm-price-card__cur{font-size:14px;font-weight:500;letter-spacing:.06em;color:var(--x-brand)}
.tbm-price-card__note{margin:0;margin-top:auto;padding-top:16px;border-top:1px solid rgba(41,70,75,.12);color:var(--x-body);font-size:14px;line-height:1.5}
.tbm-pricing__foot{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:20px 24px;border-radius:20px;background:var(--x-tint)}
.tbm-pricing__pay{margin:0;display:inline-flex;align-items:center;gap:10px;color:var(--x-ink);font-size:16px;letter-spacing:-.03em}
.tbm-pricing__pay svg{width:26px;height:26px;padding:4px;border-radius:50%;background:var(--x-brand);color:#fff;flex:none}
.tbm-x__btn{display:inline-flex;align-items:center;gap:12px;padding:10px 8px 10px 24px;border-radius:50px;background:var(--x-ink);color:#fff!important;font-size:16px;font-weight:500;letter-spacing:-.02em;text-decoration:none!important;transition:background .3s}
.tbm-x__btn:hover{background:var(--x-brand)}
.tbm-x__btn-dot{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#fff;color:var(--x-ink)}
.tbm-x__btn-dot svg{width:18px;height:18px}

.tbm-partners{background:var(--x-soft);padding-top:100px;padding-bottom:100px}
.tbm-partners__grid{display:grid;grid-template-columns:repeat(var(--tbm-cols,2),minmax(0,1fr));gap:24px;max-width:900px;width:100%;margin:0 auto}
.tbm-partner-card{display:flex;align-items:center;gap:24px;padding:20px;border-radius:20px;background:#fff;border:1px solid rgba(7,121,138,.1);color:inherit;text-decoration:none;transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
a.tbm-partner-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(5,19,22,.06)}
.tbm-partner-card__logo{--pad:14px;position:relative;flex:none;width:132px;height:104px;border-radius:14px;background:var(--x-soft);overflow:hidden}
.tbm-partner-card__logo img{position:absolute;inset:var(--pad);width:calc(100% - var(--pad)*2);height:calc(100% - var(--pad)*2);max-width:none;object-fit:contain;display:block}
.tbm-partner-card__body{display:flex;flex-direction:column;gap:6px;min-width:0}
.tbm-partner-card__name{margin:0;color:var(--x-ink);font-size:22px;font-weight:500;letter-spacing:-.041em;line-height:1.3}
.tbm-partner-card__detail{margin:0;color:var(--x-body);font-size:15px;line-height:1.5}

@media (max-width:1199.98px){
  .tbm-x{padding:80px 30px}.tbm-partners{padding:72px 30px}
  .tbm-x__wrap{gap:44px}.tbm-x__title{font-size:36px}
  .tbm-pricing__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767.98px){
  .tbm-x{padding:60px 20px}.tbm-partners{padding:56px 20px}
  .tbm-x__wrap{gap:32px}.tbm-x__head{align-items:flex-start;text-align:left}.tbm-x__title{font-size:30px}
  .tbm-pricing__grid,.tbm-partners__grid{grid-template-columns:1fr;gap:14px}
  .tbm-price-card{padding:22px 20px;gap:14px}.tbm-price-card__label{min-height:0}.tbm-price-card__amount{font-size:34px}
  .tbm-pricing__foot{flex-direction:column;align-items:flex-start;padding:18px 20px}
  .tbm-partner-card{gap:16px;padding:16px}.tbm-partner-card__logo{width:96px;height:80px;--pad:10px}.tbm-partner-card__name{font-size:19px}
}
@media (prefers-reduced-motion:reduce){.tbm-price-card,.tbm-partner-card{transition:none}.tbm-price-card:hover,a.tbm-partner-card:hover{transform:none}}

/* V7.6.1 desktop navigation contrast pill. Keeps the captured header structure intact. */
@media (min-width: 768px) {
  #main header[data-framer-name="Header"] :is([data-framer-name="Desktop"],[data-framer-name="Desktop V2"]) [data-framer-name="Links"] {
    background: rgba(255,255,255,.88) !important;
    border: 1px solid rgba(7,121,138,.14) !important;
    border-radius: 999px !important;
    padding: 5px 7px !important;
    box-shadow: 0 8px 24px rgba(5,19,22,.08) !important;
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
  }
  #main header[data-framer-name="Header"] :is([data-framer-name="Desktop"],[data-framer-name="Desktop V2"]) [data-framer-name="Links"] [data-framer-name="Menu item"] > a {
    border-radius: 999px !important;
    padding: 8px 11px !important;
  }
  #main header[data-framer-name="Header"] :is([data-framer-name="Desktop"],[data-framer-name="Desktop V2"]) [data-framer-name="Links"] a[aria-current="page"] {
    background: rgba(7,121,138,.09) !important;
  }
}

/* V7.6.2 testimonial footer containment.
   Keep one compact patient label plus the avatar; never let footer copy escape the card. */
#main [data-framer-name="Testimonials Section"] [data-framer-name="Text & Avatar Wrapper"]{
  width:100%!important;
  min-width:0!important;
  display:flex!important;
  flex-flow:row nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  overflow:hidden!important;
}
#main [data-framer-name="Testimonials Section"] [data-framer-name="Text & Avatar Wrapper"] > [data-framer-component-type="RichTextContainer"]:last-child{
  display:none!important;
}
#main [data-framer-name="Testimonials Section"] [data-framer-name="Text & Avatar Wrapper"] > [data-framer-component-type="RichTextContainer"]:first-child{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  max-width:calc(100% - 52px)!important;
  overflow:hidden!important;
  white-space:normal!important;
}
#main [data-framer-name="Testimonials Section"] [data-framer-name="Text & Avatar Wrapper"] > [data-framer-component-type="RichTextContainer"]:first-child .framer-text{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  font-size:14px!important;
  line-height:1.35!important;
}
#main [data-framer-name="Testimonials Section"] [data-framer-name="Text & Avatar Wrapper"] > [data-framer-name="Avatar"]{
  flex:0 0 40px!important;
  width:40px!important;
  min-width:40px!important;
  max-width:40px!important;
  margin-left:auto!important;
  overflow:hidden!important;
}
