/* Hide both by default */
.desktop-break,
.mobile-break {
    display: none;
}

/* Desktop only */
@media (min-width: 768px) {
    .desktop-break {
        display: inline;
    }
}

/* Mobile only */
@media (max-width: 767px) {
    .mobile-break {
        display: inline;
    }
}


.elementor-widget-text-editor ul {
    list-style-type: disc !important;
    padding-left: 20px !important;
    margin-left: 20px !important;
}

.elementor-widget-text-editor li {
    display: list-item !important;
}



/* Container allows controlled bleed */

::selection {
    background-color: #FFFA2E; /* optional */
    color: #0c1633;
}

::-moz-selection {
    background-color: #FFFA2E; /* optional */
    color: #0c1633;
}


.hero-section {
  overflow-x: hidden;
}

.hz-scale-heading {
  font-size: clamp(
    5rem,
    calc(2rem + 10vw),
    22rem
  );
  line-height: 0.7;
  transform-origin: center top;
}


.hz-scale-heading {
  letter-spacing: -0.045em !important;
}

.hz-scale-heading .bleed {
  letter-spacing: -0.045em !important;
}

.elementor-element-1ea9d16,
.e-con-inner {
  overflow: visible !important;
}

@media (max-width: 768px) {
  .hz-scale-heading {
    font-size: clamp(3rem, 14vw, 8rem);
  }
}



/* Typography weights */
.hz-scale-heading .light {
  font-weight: 100;
}

.hz-scale-heading .heavy {
  font-weight: 900;
}

/* Allow slight viewport bleed on execution */
.hz-scale-heading .bleed {
  display: inline-block;
  transform-origin: center;
}

/* Prevent layout breaking */
.elementor-element-1ea9d16 {
  overflow: visible;
}

@media (max-width: 768px) {
  .hz-scale-heading {
    font-size: clamp(3rem, 14vw, 6rem)!important;
  }
}


.staggered-images {
  will-change: transform, opacity;
  transition: transform 0.9s cubic-bezier(.19,1,.22,1),
              opacity 0.9s ease;
}


/* Remove mobile page title / breadcrumb bar */
@media (max-width: 768px) {
  .page-header,
  .entry-header,
  .breadcrumbs,
  .breadcrumb,
  .page-title {
    display: none !important;
  }
}

/* Remove rounded corners from ALL blog/post images */
.post img,
.blog img,
.elementor-post img,
.elementor-post__thumbnail img,
.wp-post-image,
img {
    border-radius: 0 !important;
}

/* Blog post block quote edits */
blockquote {
  position: relative;
  border-radius: 0px;
  padding: 0px 0px 0px 45px;
  margin: 45px 0;
  font-size: 28px;
  color: #fafafa;
  line-height: 1.2;
  font-style: normal;
  font-weight: 500;
  border-left: 10px solid #fffa2e; /* change to your brand color */
  background: none;
}

blockquote::before {
  content: "“";
  position: absolute;
  left: 12px;
  top: -12px;
  font-size: 0px;
  color: #fffa2e; /* subtle */
  font-family: "Neue Power", serif;
  font-weight: 900;
  line-height: 1.0;
}

blockquote p {
  margin: 0;
}

@media (max-width: 767px) {
  blockquote {
    font-size: 18px;
    padding: 25px 20px 25px 20px;
  }

  blockquote::before {
    font-size: 0px;
    left: 12px;
  }
}

/* Text wrap control on blog images */

/* STEP 1 — Stop theme from forcing images full width */
.single-post .elementor-widget-theme-post-content .elementor-widget-container img {
    width: auto !important;
    max-width: 100% !important;
    display: inline !important;
}

/* STEP 2 — Enable wrapping */
.single-post .elementor-widget-theme-post-content .elementor-widget-container img.alignleft {
    float: left !important;
    margin: 0 25px 15px 0 !important;
    max-width: 45% !important;
}

.single-post .elementor-widget-theme-post-content .elementor-widget-container img.alignright {
    float: right !important;
    margin: 0 0 15px 25px !important;
    max-width: 45% !important;
}

/* STEP 3 — Ensure paragraphs flow around floats */
.single-post .elementor-widget-theme-post-content .elementor-widget-container p {
    overflow: visible !important;
}





/* Force center dots for all Elementor carousels */
.swiper-pagination {
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    text-align: center !important;
}



/* ================================
   MOBILE CAROUSEL VIDEO LOCKDOWN
   ================================ */

@media (max-width: 767px) {

  /* 1️⃣ Disable ALL interaction with videos */
  .elementor-swiper video,
  .elementor-swiper iframe {
    pointer-events: none !important;
  }

  /* 2️⃣ Hide native video controls (HTML5 videos) */
  .elementor-swiper video::-webkit-media-controls {
    display: none !important;
  }
  .elementor-swiper video::-webkit-media-controls-enclosure {
    display: none !important;
  }

  /* 3️⃣ Prevent fullscreen button (YouTube/Vimeo iframes) */
  .elementor-swiper iframe {
    pointer-events: none !important;
  }

  /* 4️⃣ Stop Elementor hover play / interaction weirdness */
  .elementor-swiper .elementor-background-video-container {
    pointer-events: none !important;
  }

  /* 5️⃣ Make videos behave like background images */
  .elementor-swiper video {
    object-fit: cover;
  }

  /* 6️⃣ Reduce motion feel on mobile */
  .elementor-swiper video {
    animation: none !important;
  }

  /* 7️⃣ If autoplay is being forced, hide video entirely and show poster */
  .elementor-swiper video[autoplay] {
    opacity: 0 !important;
  }

}



/* Add spacing between wrapped images and text */
.single-post img.alignleft {
    margin-right: 32px !important;
    margin-bottom: 18px !important;
}

.single-post img.alignright {
    margin-left: 32px !important;
    margin-bottom: 18px !important;
}

/* If Elementor image widget is used */
.single-post .elementor-widget-image {
    margin-bottom: 18px;
}

.fullwidth-blog-img {
    width: 100%;
    max-width: 100%;
    height: auto;
    display: block;
}


/* Hide video controls */
.elementor-widget-video video,
video {
    controls: none !important;
    -webkit-playsinline: true !important;
    playsinline: true !important;
    object-fit: cover !important;
}


@media (max-width: 767px) {

/* Make video ignore all touch */
.elementor-widget-media-carousel video,
.elementor-widget-video video {
    pointer-events: none !important;
}

	
/* Ensure carousel UI stays clickable */
.swiper,
.swiper-wrapper,
.swiper-slide {
    pointer-events: auto !important;
}

}


video {
    -webkit-playsinline: true !important;
}



.wp-caption-text {
	margin-top: 10px;
    color: #777777; /* your yellow */
}


.postid-10515 .featured {
    display: none;
}


/* Clean WP MediaElement controls — no borders, no yellow states */

.mejs-controls button,
.mejs-controls .mejs-button > button {
    border: none !important;
    box-shadow: none !important;
}

/* Remove theme hover + active background only */
.mejs-controls button:hover,
.mejs-controls button:active,
.mejs-controls button:focus {
    background-color: transparent !important;
}


.single-post .wp-video {
    margin-top: -20px;
}



/* Hide featured image on single post IF post contains video */
.single-post .post-thumbnail {
    display: none;
}

/* Make video full width like featured image */
.single-post .wp-video,
.single-post .wp-video video {
    width: 100% !important;
    height: auto !important;
}


.single-post img.wp-image-10519 {
    display: none !important;
}

.postid-8321 .elementor-element-354ce1d4 {
    margin-top: -30px !important;
}