/**
 * Site-wide typography: Montserrat primary, Kanit fallback (Thai + Latin).
 */
:root {
  --lav-font-family: "Montserrat", "Kanit", sans-serif;
}

html,
body {
  font-family: var(--lav-font-family);
}

body :where(
  p,
  span,
  a,
  li,
  dt,
  dd,
  blockquote,
  cite,
  figcaption,
  label,
  legend,
  summary,
  small,
  strong,
  em,
  b,
  u,
  mark,
  time,
  address,
  pre,
  code,
  kbd,
  samp,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  td,
  th,
  caption
) {
  font-family: inherit;
}

body :where(input, textarea, select, button, optgroup, option) {
  font-family: var(--lav-font-family);
}

body :where(
  .amount,
  .price,
  .woocommerce-Price-amount,
  .woocommerce-Price-currencySymbol
) {
  font-family: var(--lav-font-family);
}

/* Elementor text and numeric widgets often set their own font-family. */
body :where(
  .elementor-widget-heading .elementor-heading-title,
  .elementor-widget-text-editor,
  .elementor-widget-text-editor p,
  .elementor-widget-accordion .elementor-accordion-title,
  .elementor-widget-tabs .elementor-tab-title,
  .elementor-widget-toggle .elementor-toggle-title,
  .elementor-widget-icon-box .elementor-icon-box-title,
  .elementor-widget-icon-box .elementor-icon-box-description,
  .elementor-widget-image-box .elementor-image-box-title,
  .elementor-widget-image-box .elementor-image-box-description,
  .elementor-widget-counter .elementor-counter-number,
  .elementor-widget-counter .elementor-counter-title,
  .elementor-widget-price-list .elementor-price-list-text,
  .elementor-widget-price-list .elementor-price-list-price,
  .elementor-widget-price-table,
  .elementor-widget-progress .elementor-progress-percentage,
  .elementor-widget-progress .elementor-title,
  .elementor-widget-star-rating,
  .elementor-widget-testimonial .elementor-testimonial-content,
  .elementor-widget-testimonial .elementor-testimonial-name,
  .elementor-widget-testimonial .elementor-testimonial-job,
  .elementor-widget-alert .elementor-alert-title,
  .elementor-widget-alert .elementor-alert-description,
  .elementor-widget-nav-menu a,
  .elementor-widget-search-form .elementor-search-form__input,
  .elementor-field-group input,
  .elementor-field-group textarea,
  .elementor-field-group select,
  .elementor-button,
  .elementor-button-text,
  .elementor-widget-woocommerce-product-title,
  .elementor-widget-woocommerce-product-price,
  .elementor-widget-woocommerce-product-add-to-cart,
  .elementor-widget-woocommerce-cart,
  .elementor-widget-woocommerce-checkout-page,
  .elementor-widget-woocommerce-my-account,
  .elementor-widget-woocommerce-products,
  .elementor-widget-woocommerce-product-meta,
  .elementor-widget-woocommerce-breadcrumb,
  .elementor-widget-theme-post-title .elementor-heading-title,
  .elementor-widget-theme-post-content,
  .elementor-widget-theme-post-excerpt,
  .elementor-widget-posts .elementor-post__title,
  .elementor-widget-posts .elementor-post__excerpt,
  .elementor-widget-posts .elementor-post__meta-data,
  .elementor-popup-modal,
  .dialog-widget-content
) {
  font-family: var(--lav-font-family) !important;
}

body :where(.woocommerce, .woocommerce-page, .woocommerce table, .woocommerce form) {
  font-family: var(--lav-font-family);
}
