/* Production launch fixes for elastclinic.com.ua */

/* Keep production site focused: no design/prototype controls. */
.twk, .twk-toggle, .twk-panel { display: none !important; }

/* Mobile: avoid floating widgets covering clinical content. */
@media (max-width: 700px) {
  .dock,
  .sticky-cta,
  .dots-nav {
    display: none !important;
  }

  .fab {
    right: 18px;
    bottom: 18px;
    max-width: calc(100vw - 36px);
  }

  .hero-b__stats .stat__num,
  .stat__num {
    font-size: clamp(38px, 12vw, 52px) !important;
    line-height: 1;
  }

  .stat__lbl {
    white-space: normal;
    letter-spacing: 0.11em;
    font-size: 10px;
    max-width: 150px;
  }

  .stats__grid,
  .hero-b__stats .stats__grid {
    gap: 26px 18px !important;
  }
}

@media (max-width: 420px) {
  .hero__title {
    font-size: clamp(44px, 15vw, 64px) !important;
  }
  .hero__cta,
  .hero__cta-ghost {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* Production safety: content must remain visible even if scroll observers misfire. */
.reveal {
  opacity: 1 !important;
  transform: none !important;
}

/* Normalize inline booking fields. */
.field--inline input,
.field--inline select,
.field--inline textarea {
  width: 100%;
  border: 1px solid var(--ink-200);
  border-radius: 16px;
  padding: 16px 18px;
  font: inherit;
  background: #fff;
  color: var(--ink-900);
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.field--inline input:focus,
.field--inline select:focus,
.field--inline textarea:focus {
  border-color: var(--brand);
  box-shadow: 0 0 0 4px rgba(0,174,239,0.12);
}
