/*
Theme Name:     Traveler Childtheme
Description:    Traveler Child Theme
Theme URI:      https://travelerwp.com/
Author:         the ShineTheme
Author URI:     http://shinetheme.com
Version:        1.0
Template:       traveler
*/

/* ==========================================================================
   Global site font override — Figtree across the whole frontend.
   The compiled theme CSS hardcodes many different fonts in different
   places (Open Sans on body, Roboto on headings, Playfair Display / DM Sans /
   Lato / Caveat on specific widgets, Bootstrap's --bs-font-sans-serif var,
   etc.), each with its own selector specificity — a plain `body{}` rule
   can't beat those. `!important` is used deliberately here to guarantee every
   one of them loses to Figtree, and is scoped to real text elements only.

   Icon fonts are excluded on purpose: FontAwesome, Line Awesome, icomoon,
   Glyphicons, weathericons, etc. use a font's glyph table to draw icon
   shapes, not letters — if the override reached them, every icon on the
   site would render as a blank box or a random letter instead of its icon.
   In this theme icons are rendered almost exclusively on <i> tags, so <i>
   is left out of the override entirely; span/div are covered too but with
   the known icon-class patterns excluded.

   stt-icon-* (Traveler's own icomoon-based icon font — traveler-icon.css,
   100+ icons: stt-icon-arrow-left/-right/-up, stt-icon-star1,
   stt-icon-adult, stt-icon-category, etc.) was missing from that exclusion
   list — every icon using it rendered as a blank box with the child theme
   active (confirmed live: carousel arrows, back-to-top button). Added below.
   ========================================================================== */
:root {
    --bs-font-sans-serif: Figtree, ITCAvantGardePro, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}

body,
h1, h2, h3, h4, h5, h6,
p, a, li, td, th, label, caption, figcaption, blockquote,
button, input, textarea, select, option,
span:not([class*="fa-"]):not(.fa):not([class*="la-"]):not(.la):not([class^="icon-"]):not([class*=" icon-"]):not([class*="stt-icon"]):not(.glyphicon):not([class*="wi-"]):not(.wi):not(.meteocon):not(.codrops-icon),
div:not([class*="fa-"]):not([class^="icon-"]):not([class*=" icon-"]):not([class*="stt-icon"]):not(.meteocon):not(.codrops-icon) {
    font-family: Figtree, ITCAvantGardePro, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
}

/* ==========================================================================
   Hotel/tour/etc. card author avatar (bottom-right of the card image, e.g.
   /hotel-search/) renders as a square, not a circle. The theme's own CSS
   (elementorv2/assets/css/main.css) already rounds the ".service-avatar"
   wrapper link into a 35x35 circle, but only adds the matching
   `border-radius: 50%` to the <img> itself for the "list" card layout
   (".services-item.list.item-elementor a.service-avatar img") — the "grid"
   layout used here has no such rule, and the wrapper's `overflow` is left
   at its default `visible`, so the square avatar image just draws over
   the circular frame unclipped instead of being cropped to it. Confirmed
   live via computed styles (wrapper: 35x35, border-radius:50%, overflow:
   visible; img: border-radius:0). Mirrors the existing list-layout rule.
   ========================================================================== */
.services-item.item-elementor a.service-avatar {
    overflow: hidden;
}
.services-item.item-elementor a.service-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}