/* Deterministic states for interactions previously driven by Webflow IX2.
   Loaded after shared.min.css so these win on equal specificity. */

/* FAQ accordion: collapsed by default, expands when JS adds .tdx-open */
.faq-answer-info { max-height: 0; overflow: hidden; transition: max-height .45s ease; }
.faq-list-item.tdx-open .faq-answer-info { max-height: 1200px; }
.faq-arw { transition: transform .35s ease; }
.faq-list-item.tdx-open .faq-arw { transform: rotate(180deg); }

/* Slider mask laid out horizontally for the vanilla slider */
.w-slider-mask { display: flex; }
.w-slider-dot { width: 9px; height: 9px; border-radius: 50%; background: rgba(255,255,255,.4);
  display: inline-block; margin: 0 4px; cursor: pointer; transition: background .2s; }
.w-slider-dot.w-active { background: #fff; }

/* Optional reveal hook (additive: content is visible without it) */
[data-w-id].tdx-reveal { opacity: 0; transform: translateY(16px); }
[data-w-id].tdx-reveal.tdx-in { opacity: 1; transform: none; transition: opacity .6s ease, transform .6s ease; }

/* Native lead forms (booking + checklist) */
.td-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; opacity: 0; }
.td-lead-form .td-field { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
.td-lead-form .td-field label { font-size: 14px; font-weight: 500; color: inherit; }
.td-lead-form .input-field { width: 100%; }
.td-lead-form textarea.input-field { min-height: 90px; }
.td-submit { width: 100%; border: 0; cursor: pointer; padding: 16px 24px; border-radius: 35px;
  background: var(--td-green, #0affc2); color: var(--p-main, #0c212d);
  font-weight: 500; font-size: 17px; transition: filter .2s; }
.td-submit:hover { filter: brightness(.95); }
