/* Asantap site typography. Public theme presentation only. */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/wp-content/themes/my-listing-child/assets/fonts/blog-inter/inter-latin-ext-wght-normal.woff2') format('woff2');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('/wp-content/themes/my-listing-child/assets/fonts/blog-inter/inter-latin-wght-normal.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
body.my-listing {
  --as-font-heading: 'Inter Variable', Inter, system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --as-font-body: var(--as-font-heading);
  --as-type-ui: 16px;
  --as-type-label: 14px;
  --as-type-reading: 17px;
  font-family: var(--as-font-body) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-feature-settings: 'cv11', 'ss01';
}
/* Override legacy component font declarations without touching icon faces. */
body.my-listing :is(h1,h2,h3,h4,h5,h6,p,a,button,input,textarea,select,option,label,small,strong,b,em,blockquote,table,th,td,li,dt,dd,figcaption,summary):not(:is(.fa,.fas,.far,.fab,.fal,.fad,.material-icons,.mi,[class^="icon-"],[class*=" icon-"])),
body.my-listing :is(.elementor-widget-text-editor,.elementor-heading-title,.elementor-button-text,.elementor-icon-list-text,.select2-selection__rendered,.select2-results__option,.category-name,.as-faq,.catalog-browse,.as-plan-design,.as-aeo-profile) {
  font-family: var(--as-font-body) !important;
}
/* Icon-only elements, their pseudo-elements, maps and embedded documents retain their own fonts. */
body.my-listing :is(.fa,.fas,.far,.fab,.fal,.fad,.material-icons,.mi,[class^="icon-"],[class*=" icon-"]) {
  font-feature-settings: normal;
}
body.my-listing input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="file"]):not([type="color"]),
body.my-listing :is(textarea,select,.select2-selection__rendered,.select2-results__option) {
  font-size: var(--as-type-ui) !important;
}
body.my-listing :is(input,textarea)::placeholder { font-family: var(--as-font-body); opacity: 1; }
body.my-listing .form-group > label,
body.my-listing .woocommerce-form-row > label,
body.my-listing :is(.as-faq__search,.catalog-search) > label {
  font-size: var(--as-type-label) !important;
  line-height: 1.45;
}
body.my-listing :is(button,.buttons,.elementor-button-text,input[type="submit"]) {
  font-weight: 600;
  letter-spacing: 0;
}
/* Header and footer are compact UI, rather than long-form text. */
body.my-listing .c27-main-header .main-nav > li > a { font-size: 15px !important; line-height: 1.45; }
body.my-listing .c27-main-header :is(.header-button a,.user-profile-name,.mob-sign-in a) { font-size: 15px !important; line-height: 1.45; }
body.my-listing #asantap-footer :is(.elementor-nav-menu--main a.elementor-item,.elementor-icon-list-text,.elementor-widget-text-editor p) { font-size: 14px !important; line-height: 1.6; }
body.my-listing #asantap-footer .af-bottom :is(.elementor-heading-title,a.elementor-item) { font-size: 12px !important; line-height: 1.5; }
/* Homepage: keep the existing composition while increasing small helper text. */
body.my-listing.as-home .as-ref-title .elementor-heading-title {
  font-size: clamp(32px,3.1vw,44px) !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
}
body.my-listing.as-home .as-ref-eyebrow .elementor-heading-title { font-size: 12px !important; line-height: 1.5 !important; letter-spacing: .06em !important; }
body.my-listing.as-home .as-ref-lead .elementor-heading-title { font-size: 17px !important; line-height: 1.65 !important; }
body.my-listing.as-home .elementor .as-ref-search .featured-search .md-group > label { font-size: 16px !important; }
body.my-listing.as-home .elementor .as-ref-search .featured-search .md-group:focus-within > label,
body.my-listing.as-home .elementor .as-ref-search .featured-search .md-group:has(input:valid) > label,
body.my-listing.as-home .elementor .as-ref-search .featured-search .md-group:has(input:not(:placeholder-shown)[placeholder]) > label { font-size: 13px !important; }
body.my-listing.as-home :is(.search-form .buttons,.featured-search .buttons) { font-size: 16px !important; }
body.my-listing :is(.as-home-category-card__label,.catalog-link,.catalog-browse__link,.apd-browse a) { font-size: 15px !important; line-height: 1.5; }
/* Place cards: names stand out, addresses and categories remain secondary. */
body.my-listing :is(.listing-preview-title,.as-ads-card-body h3,.discovery-card h3) { font-size: 16px !important; line-height: 1.45 !important; font-weight: 600 !important; letter-spacing: -.01em; }
body.my-listing :is(.asv2-card-category,.as-ads-card-body > p) { font-size: 13px !important; line-height: 1.5 !important; }
body.my-listing :is(.asv2-card-address,.lf-contact li,.lf-contact li span) { font-size: 14px !important; line-height: 1.55 !important; }
body.my-listing .catalog-group__title { font-size: 16px !important; line-height: 1.4 !important; }
body.my-listing :is(.catalog-hero__intro,.as-faq__intro,.asantap-auth-heading > p) { font-size: 17px !important; line-height: 1.65 !important; }
/* Reading sections on profiles and FAQ receive comfortable leading. */
body.my-listing.single-job_listing .pf-body > :is(p,ul,ol),
body.my-listing.single-job_listing .pf-body > :is(ul,ol) > li {
  font-size: var(--as-type-reading) !important;
  line-height: 1.8 !important;
}
body.my-listing.single-job_listing .pf-body > p { margin-bottom: 18px; }
body.my-listing.single-job_listing .pf-body > p:last-child { margin-bottom: 0; }
body.my-listing.single-job_listing .title-style-1__heading { font-size: 20px !important; line-height: 1.35 !important; letter-spacing: -.015em; }
body.my-listing.single-job_listing .as-reviews-heading h2 { font-size: 26px !important; line-height: 1.25 !important; }
body.my-listing.single-job_listing :is(.as-reviews-heading > p,.as-reviews-empty > p,.as-review-intro) { font-size: 16px !important; line-height: 1.65 !important; }
body.my-listing .as-faq .as-faq__answer,
body.my-listing .as-faq .as-faq__answer :is(p,ul,ol,li) { font-size: var(--as-type-reading) !important; line-height: 1.8 !important; }
body.my-listing .as-faq summary { font-size: 16px !important; line-height: 1.5 !important; }
body.my-listing :is(.as-faq__search label,.as-faq__search-hint,.catalog-search__help,.asantap-auth-intro,.comment-notes) { font-size: 14px !important; line-height: 1.6 !important; }
/* Filter labels keep their separate row above 16px field values. */
body.my-listing.page-id-136 #finderSearch .md-group > label { font-size: 14px !important; line-height: 20px; }
body.my-listing.page-id-136 #finderSearch .select2-selection__rendered { font-size: 16px !important; }
body.my-listing.page-id-136 .fl-results-no { font-size: 14px !important; line-height: 1.6; }
@media (max-width: 767px) {
  body.my-listing { --as-type-reading: 16px; }
  body.my-listing.as-home .as-ref-lead .elementor-heading-title { font-size: 16px !important; }
  body.my-listing :is(.catalog-hero__intro,.as-faq__intro,.asantap-auth-heading > p) { font-size: 16px !important; }
  body.my-listing #bottomMobileMenu :is(a,span) { font-size: 11px; line-height: 1.35; }
}

body.my-listing.as-home .elementor .as-ref-search .featured-search input { font-size: 16px !important; }

/* Native Elementor card typography has per-widget !important declarations. */
body.my-listing.as-home .elementor .elementor-element .lf-item-info .listing-preview-title { font-size: 16px !important; line-height: 1.45 !important; font-weight: 600 !important; }
body.my-listing.as-home .elementor .elementor-element .asv2-card-meta .asv2-card-category { font-size: 13px !important; line-height: 1.5 !important; }
body.my-listing.as-home .elementor .elementor-element .asv2-card-meta .asv2-card-address { font-size: 14px !important; line-height: 1.55 !important; }
body.my-listing.page-id-136 #finderListings .listing-preview-title { font-size: 16px !important; line-height: 1.45 !important; }
body.my-listing :is(.as-home-category-card__label,.as-sponsored-label) { font-family: var(--as-font-body) !important; }
