/* Shared interaction details; page content and controls remain native Elementor. */
a[href], a[href] *, button, button *, summary, [role="button"],
input[type="submit"], input[type="button"], label[for] { cursor: pointer; }
button:disabled, input:disabled, [aria-disabled="true"] { cursor: not-allowed; }
button, input[type="submit"], input[type="button"], .button, .wp-element-button,
.elementor-button, .floating-whatsapp { border-radius: 10px; }
.woocommerce button.button, .woocommerce a.button, .woocommerce input.button,
.woocommerce #place_order { border-radius: 10px; }
.elementor .elementor-widget-button .elementor-button,
.lt-elementor-header .lt-header-contact .elementor-button,
.lt-elementor-header .lt-header-toggle .elementor-button { border-radius: 10px; }

/* One decorative marker per row, including Elementor's rich text lists. */
.elementor-widget-text-editor .quiet-list,
.elementor-widget-text-editor ul.quiet-list,
.elementor-widget-text-editor .quiet-list li,
.elementor-widget-text-editor.quiet-list ul,
.elementor-widget-text-editor.quiet-list li { list-style: none; }
.elementor-widget-text-editor .quiet-list { padding-left: 0; }
.elementor-widget-text-editor.quiet-list ul { margin: 0; padding-left: 0; }
.elementor-widget-text-editor .quiet-list li::marker,
.elementor-widget-text-editor.quiet-list li::marker { content: ""; }

/* Stretch the existing semantic treatment link over the entire native card. */
.lt-e-treatment-card, .lt-e-treatment-card > .elementor-widget-wrap { position: relative; cursor: pointer; }
.lt-e-treatment-card .elementor-widget-button,
.lt-e-treatment-card .elementor-widget-button > .elementor-widget-container,
.lt-e-treatment-card .elementor-button-wrapper,
.lt-e-treatment-card .elementor-widget-button .elementor-button { position: static; }
.lt-e-treatment-card .elementor-widget-button .elementor-button::before {
  content: ""; position: absolute; inset: 0; z-index: 3; border-radius: 20px;
}
body.elementor-editor-active .lt-e-treatment-card .elementor-widget-button .elementor-button::before { display: none; }

/* SVG gift illustrations need explicit width instead of Elementor's 48px icon default. */
.lt-e-gift-image.elementor-widget-image a img { width: 100%; max-width: 100%; height: auto; }
.lt-e-gift-art { min-width: 0; }
.lt-e-gift-feature > .elementor-container { align-items: center; gap: 52px; }
.lt-e-gift-feature .lt-e-gift-art { padding: 22px 12px; }

/* One right-facing arrow, aligned with the label, in the site's own ink color. */
a.text-link::after, .button:not(.elementor-widget)::after {
  content: ""; display: block; flex: 0 0 22px; width: 22px; height: 22px;
  margin: 0; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15M13 5l7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h15M13 5l7 7-7 7'/%3E%3C/svg%3E") center / contain no-repeat;
}
.lt-e-section .elementor-widget-button .elementor-button {
  display: inline-flex; align-items: center; justify-content: center; gap: 15px;
  max-width: 100%; white-space: normal; text-decoration: none;
}
.lt-e-section .elementor-widget-button .elementor-button-content-wrapper {
  display: inline-flex; align-items: center; gap: 10px; min-width: 0;
}
.lt-e-section .elementor-button-text { text-decoration: none; }
.button:has(svg)::after,
.lt-e-section .elementor-widget-button .elementor-button:has(.elementor-button-icon)::after { display: none; }
.lt-e-gift-feature .lt-e-gift-copy .elementor-widget-button { width: 100%; }
.lt-e-gift-feature .lt-e-gift-copy .elementor-widget-button .elementor-button { width: auto; text-align: left; }
@media (max-width: 767px) {
  .lt-e-gift-feature > .elementor-container { gap: 32px; }
  .lt-e-gift-feature .lt-e-gift-art { padding: 12px 10px; }
  .lt-e-home-hero .elementor-widget-button .elementor-button { width: 100%; }
}
@media (min-width: 768px) and (max-width: 1399px) {
  .lt-e-home-hero .hero-copy > .elementor-widget-wrap { display: flex; flex-direction: column; align-items: stretch; }
  .lt-e-home-hero .hero-copy > .elementor-widget-wrap > .elementor-widget-button { width: 100%; }
}

.lt-e-treatment-faq .elementor-toggle { border-top: 1px solid #cdb7a5; }
.lt-e-treatment-faq .elementor-toggle-item { border: 0; border-bottom: 1px solid #cdb7a5; }
.lt-e-treatment-faq .elementor-tab-title {
  position: relative; padding: 24px 45px 24px 0; border: 0;
  font: 400 32px/1.25 "Cormorant Garamond", Georgia, serif; color: #49352b;
}
.lt-e-treatment-faq .elementor-tab-title::after {
  content: "+"; position: absolute; right: 4px; top: 26px;
  font: 400 24px/1 "Manrope", Arial, sans-serif; color: #a77958;
}
.lt-e-treatment-faq .elementor-tab-title.elementor-active::after { content: "−"; }
.lt-e-treatment-faq .elementor-tab-title a { color: inherit; text-decoration: none; }
.lt-e-treatment-faq .elementor-tab-title:focus-visible { outline: 2px solid #a77958; outline-offset: 4px; }
.lt-e-treatment-faq .elementor-tab-content { padding: 0 40px 25px 0; border: 0; color: #7e6c5e; font: 400 20px/1.7 "Manrope", Arial, sans-serif; }
.lt-e-treatment-faq .elementor-tab-content p:last-child { margin-bottom: 0; }
@media (max-width: 767px) {
  .lt-e-treatment-faq .elementor-tab-title { font-size: 28px; padding-block: 22px; }
  .lt-e-treatment-faq .elementor-tab-content { font-size: 18px; padding-right: 12px; }
}

/* Keep WooCommerce's bundled hover palette identical to the normal buttons. */
.woocommerce button.button:hover, .woocommerce a.button:hover, .woocommerce input.button:hover,
.woocommerce #place_order:hover { background: var(--cacao); color: #fcf9f4; text-decoration: none; }
