/* ======================================
   FONTS
   ====================================== */
@font-face {
    font-family: 'eicons';
    src: url('https://pendulee.com/wp-content/plugins/elementor/assets/lib/eicons/fonts/eicons.woff2?5.47.0') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: 'Josefin Sans';
    src: url('https://fonts.wp.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjQbMZhLybvUVw.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: 'Karla';
    src: url('https://fonts.wp.com/s/karla/v33/qkB9XvYC6trAT55ZBi1ueQVIjQTD-JrIH2G7nytkHRyQ8p4wUje6bmMorHA.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: 'Karla';
    src: url('https://fonts.wp.com/s/karla/v33/qkB_XvYC6trAT7RQNNK2EG7SIwPWMNlCVytER0IPh7KX59Z0CnSKbGkvjnJSTw.woff2') format('woff2');
    font-display: swap;
}

@font-face {
    font-family: 'Josefin Sans';
    src: url('https://fonts.wp.com/s/josefinsans/v34/Qw3PZQNVED7rKGKxtqIqX5E-AVSJrOCfjY46_DjQbMZhLybpUVzEEQ.woff2') format('woff2');
    font-display: swap;
}

/* ======================================
   SAFE CLS & LAYOUT STABILITY FIXES
   ====================================== */

/* 1. Images & Videos: Preserve sizing without hiding them */
img {
  max-width: 100%;
  height: auto;
  aspect-ratio: attr(width) / attr(height);
  display: block;
}

.wp-block-image img,
.wp-block-gallery img {
  width: 100%;
  height: auto;
}

.wp-block-embed iframe,
.wp-block-video video,
iframe,
video {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}

/* 2. Min-height constraints to stop layout shift */
.wp-block-cover {
  min-height: 50vh;
}

.site-header,
header {
  min-height: 80px;
}

button,
.wp-block-button__link {
  line-height: 1.2;
  min-height: 44px;
}

/* Lazy-loaded image placeholder */
img[loading="lazy"] {
  background-color: #f2f2f2;
}

.wp-block-embed__wrapper {
  min-height: 200px;
}

/* 3. Stabilize Headings */
h1, h2, h3, h4, h5, h6 {
  line-height: 1.2;
  max-width: 100%;
}

/* 4. Hide truly hidden elements cleanly */
[hidden],
.is-hidden,
.display-none,
.elementor-hidden-desktop,
.elementor-hidden-tablet,
.elementor-hidden-mobile {
  display: none !important;
}

/* 5. Hide slideshow counters as previously requested */
.wp-block-jetpack-slideshow .wp-block-jetpack-slideshow_pagination,
.splide__pagination,
.slider-counter,
.gallery-counter {
    display: none !important;
}