/* =======================================================================
   Theme Meta Information 
========================================================================== */
/* 
Theme Name: Stack
Theme URI: --
Description: --
Author: --
Author URI: --
Template: hello-elementor
Version: 2.0.0
Text Domain: stack-child
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* =======================================================================
   Base Font Size & Responsive Typography
========================================================================== */
:root {
  --tec-color-accent-primary: #B02A37;
  --tec-color-accent-primary-hover: var(--e-global-color-primary);
  --tec-font-family-sans-serif: var(--e-global-typography-primary-font-family);
}

@import url("https://use.typekit.net/glv5rng.css");

html {
  font-size: 16px; /* Base font size for small screens */
}

@media (min-width: 992px) {
  html {
      font-size: 16px; /* Increased font size for larger screens */
  }
}

body {
font-family: "montserrat", sans-serif;
font-weight: 400;
font-style: normal;

}

@media (max-width: 991px) {
  body {
    overflow-x: hidden;
  }
}

/*.elementor-widget-wrap {
  max-width: 100% !important;
  overflow-x: hidden;
}
*/

li {
  margin-bottom: 0.5rem;
  line-height: 1.6em;
}
.wp-block-image img {
    box-sizing: border-box;
    height: auto;
    max-width: 100%;
    vertical-align: bottom;
    border-radius: 1em;
}
a {
  font-weight: 600;
}

/* =======================================================================
   Fonts
========================================================================== */
/* Block Headings Font Sizes */
.wp-block-heading.is-style-h1 {
  margin: 1rem auto;
  font-weight: var(--e-global-typography-c297f56-font-weight);
  font-style: normal;
  font-size: var(--e-global-typography-c297f56-font-size);
  line-height: var(--e-global-typography-c297f56-line-height);
  letter-spacing: var(--e-global-typography-c297f56-letter-spacing);
  text-transform: var(--e-global-typography-c297f56-text-transform);
}
.wp-block-heading.is-style-h2 {
  margin: 1rem auto;
 font-weight: var(--e-global-typography-21c5652-font-weight);
  font-style: normal;
  font-size: var(--e-global-typography-21c5652-font-size);
  line-height: var(--e-global-typography-21c5652-line-height);
  letter-spacing: var(--e-global-typography-21c5652-letter-spacing);
  text-transform: var(--e-global-typography-21c5652-text-transform);
}
.wp-block-heading.is-style-h3 {
  margin: 1rem auto;
  font-weight: var(--e-global-typography-9ddb4af-font-weight);
  font-style: normal;
  font-size: var(--e-global-typography-9ddb4af-font-size);
  line-height: var(--e-global-typography-9ddb4af-line-height);
  letter-spacing: var(--e-global-typography-9ddb4af-letter-spacing);
  text-transform: var(--e-global-typography-9ddb4af-text-transform);
}
.wp-block-heading.is-style-h4 {
  margin: 1rem auto;
  font-weight: var(--e-global-typography-2fe9092-font-weight);
  font-style: normal;
  font-size: var(--e-global-typography-2fe9092-font-size);
  line-height: var(--e-global-typography-2fe9092-line-height);
  letter-spacing: var(--e-global-typography-2fe9092-letter-spacing);
  text-transform: var(--e-global-typography-2fe9092-text-transform);
}
.wp-block-heading.is-style-h5 {
  margin: 1rem auto;
  font-weight: var(--e-global-typography-a73f9a2-font-weight);
  font-style: normal;
  font-size: var(--e-global-typography-a73f9a2-font-size);
  line-height: var(--e-global-typography-a73f9a2-line-height);
  letter-spacing: var(--e-global-typography-a73f9a2-letter-spacing);
  text-transform: var(--e-global-typography-a73f9a2-text-transform);
}

.wp-block-heading.is-style-h6 {
  margin: 1rem auto;
  font-weight: var(--e-global-typography-7b4f8fe-font-weight);
  font-style: normal;
  font-size: var(--e-global-typography-7b4f8fe-font-size);
  line-height: var(--e-global-typography-7b4f8fe-line-height);
  letter-spacing: var(--e-global-typography-7b4f8fe-letter-spacing);
  text-transform: var(--e-global-typography-7b4f8fe-text-transform);
}
/*** Let's move these into Global Styles and add aboce ***/
.elementor-kit-8 h1,
.elementor-kit-8 h2,
.elementor-kit-8 h3,
.elementor-kit-8 h4,
.elementor-kit-8 h5,
.elementor-kit-8 h6  {
  margin: .5rem auto;
  font-style: normal;
}

.wp-block-heading.is-style-s1 {
  margin: 1rem auto;
  font-style: normal;
  font-size: var(--e-global-typography-45735d1-font-size);
  line-height: var(--e-global-typography-45735d1-line-height);
  letter-spacing: var(--e-global-typography-45735d1-letter-spacing);
  font-weight: var(--e-global-typography-45735d1-font-weight);
  text-transform: var(--e-global-typography-45735d1-text-transform);
}
.wp-block-heading.is-style-s2 {
  margin: 1rem auto;
  font-style: normal;
  font-size: var(--e-global-typography-43c312b-font-size);
  line-height: var(--e-global-typography-43c312b-line-height);
  letter-spacing: var(--e-global-typography-43c312b-letter-spacing);
  font-weight: var(--e-global-typography-43c312b-font-weight);
  text-transform: var(--e-global-typography-43c312b-text-transform);
}
.elementor-kit-8 p.is-style-c1 {
  margin: 1rem auto 1rem 0;
  font-family: var(--e-global-typography-6d86073-font-family), Sans-serif!important;
  font-weight: var(--e-global-typography-6d86073-font-weight);
  font-size: var(--e-global-typography-6d86073-font-size);
  line-height: var(--e-global-typography-6d86073-line-height);
  letter-spacing: var(--e-global-typography-6d86073-letter-spacing);
}
.elementor-kit-8 p.is-style-c2 {
  margin: 1rem auto 1rem 0;
  font-family: var(--e-global-typography-6d86073-font-family), Sans-serif!important;
  font-weight: var(--e-global-typography-c6d21ea-font-weight);
  font-size: var(--e-global-typography-c6d21ea-font-size);
  line-height: var(--e-global-typography-c6d21ea-line-height);
  letter-spacing: var(--e-global-typography-c6d21ea-letter-spacing);
}

.elementor-kit-8 p.is-style-lead {
  margin: 1rem auto;
  font-family: var(--e-global-typograph-6c1f0bb-font-family), Sans-serif!important;
  font-weight: var(--e-global-typography-6c1f0bb-font-weight);
  font-size: var(--e-global-typography-6c1f0bb-font-size);
  line-height: var(--e-global-typography-6c1f0bb-line-height);
  letter-spacing: var(--e-global-typography-6c1f0bb-letter-spacing);
}

.elementor-kit-8 p.is-style-body-sm {
  font-size: var(--e-global-typography-2b1aeb5-font-size);
}


/* =======================================================================
 Header & Headroom
========================================================================== */
/*#header {
  background-color: var(--e-global-color-4a6002a);/* Initial 50% opacity 
}
/* Sticky header behavior
#header.headroom--pinned.headroom--top {
}

/* Sticky header behavior 
#header.headroom--pinned.headroom--not-top {
}

/* Sticky header behavior 
#header.headroom--pinned {
  transform: translateY(0%); /* Sticky header is visible 
}
#header.headroom--unpinned {
  transform: translateY(-100%); /* Hide header when scrolled 
  transition: background-color 0.3s ease;
}
*/


/* =======================================================================
   Header & Headroom – Default + Transparent Styles
========================================================================== */
/* DEFAULT STYLE */
.header-default #header {
  background-color: var(--e-global-color-5a0de86); /* Solid fill */
  transition: background-color 0.3s ease, transform 0.3s ease;
}

/* TRANSPARENT STYLE */
.header-transparent #header {
  background-color: transparent; /* Initial transparent */
  transition: background-color 0.3s ease, transform 0.3s ease;
}

/* White links on Transparent Header*/
.header-transparent #header .e-n-menu-title-text {
  color: #fff;
}
/* Transparent header logic with scroll */
.header-transparent #header.headroom--top {
  background-color: transparent; /* At top: stays transparent */
  color: #fff !important;
}
/* After scroll: solid */
.header-transparent #header.headroom--not-top {
  background-color: var(--e-global-color-5a0de86); /* Solid fill */
  color: #fff!important;
}
/* After scroll: change thext color */
.header-transparent #header.headroom--not-top .e-n-menu-title-text  {
  color: #fff!important;
}

/* --- COMMON HEADROOM BEHAVIOR --- */
#header.headroom--pinned {
  transform: translateY(0%); /* Visible when pinned */
}
#header.headroom--unpinned {
  transform: translateY(-100%); /* Hidden when unpinned */
}

/* Smoother transitions */
#header {
  transition: background-color 0.3s ease, transform 0.3s ease;
}

/* Turn header solid*/
.header-transparent #header.headroom--not-top,
.header-transparent #header:has(.e-active),
.header-transparent #header:has(.e-n-menu-toggle[aria-expanded="true"]) {
  background-color: var(--e-global-color-5a0de86) !important;
}

/* Keep menu text white in those states */
.header-transparent #header.headroom--not-top .e-n-menu-title-text,
.header-transparent #header:has(.e-active) .e-n-menu-title-text,
.header-transparent #header:has(.e-n-menu-toggle[aria-expanded="true"]) .e-n-menu-title-text {
  color: #fff !important;
}


/* =======================================================================
 Main Nav
========================================================================== */
/* Mobile and Table Menu Content */
.elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-content {
  overflow: hidden;
  max-width: 345px;
  background-color: var(--e-global-color-5a0de86); /* Solid fill */
}
/* Mobile and Table Menu Title */
.elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-title {
  justify-content: space-between;
  max-width: 100%;
}
/* Mobile and Table Menu Item */
.elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-item {
  display: flex;
  flex-direction: column;
  width: 100%;
}

/* Inner Menu Heading */
.elementor-widget-n-menu .e-n-menu-heading {
  background-color: transparent;
  padding: 1rem;
  margin-left: auto;
  margin-right: 0;
  text-align: left;
}

/* Dropdown container */
.dropdown-container {
  padding: 0 2rem 2rem 2rem !important;
}

/* Mobile */
@media (max-width: 576px) {
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-title {
    background-color: transparent !important;
  }
  .elementor-widget-n-menu .e-n-menu-heading {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: 0;
    box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.2); /* bottom-only shadow */
    background-color: var(--e-global-color-5a0de86); /* Solid fill */
    padding: 2rem 1rem;
  }
  
}

/* Tablet */
@media (min-width: 577px) and (max-width: 768px) {
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-title {
    justify-content: space-between;
    max-width: 450px !important;
    background-color: transparent !important;
  }
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-item {
    display: flex;
    flex-direction: column;
    width: 425px!important;
  }
  .elementor-widget-n-menu .e-n-menu-heading {
    width: 100%;
    max-width: 450px;
    margin-left: auto;
    margin-right: 0;
    background-color: var(--e-global-color-5a0de86); /* Solid fill */
    padding: 2rem 1rem;
  }
}

/* Desktop */
@media (min-width: 993px) {
  .elementor-widget-n-menu .e-n-menu-heading {
    padding: 0;
    margin-top: 0;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    height: auto;
  }
}

/* Mobile Menu List Items Paddings */
@media (max-width: 993px) {
  li.elementor-icon-list-item {
    padding-bottom: calc(0.6rem / 1);
  }
}



/* =======================================================================
Footer
========================================================================== */
.footer-mask {
  background-repeat: no-repeat;
  background-size: 100% auto;
}

/* Responsive heights */
@media (min-width: 1400px) {
  #footer {

  }
}
@media (max-width: 1399px) {
  #footer {

  }
}
@media (max-width: 1199px) {
  #footer {

  }
}
@media (max-width: 992px) {
  #footer {

  }
}
@media (max-width: 768px) {
  #footer{

  }
}
@media (max-width: 576px) {
  #footer{

  }
}

/* =======================================================================
 Dark & Light Theme Blocks
========================================================================== */
.dark {
  background-color: #444; /* Dark theme styling for blocks */
}


/* =======================================================================
 Page Heros
========================================================================== */
/* Home + Large Page Hero */
#home-hero,
#large-hero {
  width: 100% !important;
  height: 100vh;
  min-height: 700px;
  max-height: 1080px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
}

#highlight {
  width: 100% !important;
  height: 70vh;
  min-height: 600px;
  max-height: 850px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
}

/* Responsive heights */
@media (max-width: 1200px) {
  #home-hero,
  #large-hero {
    height: 90vh;
    min-height: 700px;
  }
  #highlight {
    height: 60vh;
    min-height: 600px;
    background-position: center top;
  }
}
@media (max-width: 992px) {
  #home-hero,
  #large-hero {
    height: 80vh;
    min-height: 600px;
  }
  #highlight {
    height: 50vh;
    min-height: 600px;
    background-position: center top;
  }
}
@media (max-width: 768px) {
  #home-hero,
  #large-hero {
    height: 65vh;
    min-height: 500px;
    background-position: center top;
  }
  #highlight {
    height: 50vh;
    min-height: 500px;
    background-position: center top;
  }
}
@media (max-width: 576px) {
  #home-hero,
  #large-hero {
    height: 55vh;
    min-height: 450px;
    background-position: center top;
    background-size: cover;
  }
  #highlight {
    height: 55vh;
    min-height: 500px;
    background-position: center top;
    background-size: cover;
  }
}

/* Default Page Hero */
#page-hero {
  width: 100%;
  height: 70vh;
  min-height: 600px;
  max-height: 600px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  overflow: hidden;
}
/* Large screens */
@media (max-width: 1200px) {
  #page-hero {
    height: 60vh;
    min-height: 500px;
  }
}
/* Medium screens */
@media (max-width: 992px) {
  #page-hero {
    height: 55vh;
    min-height: 500px;
  }
}
/* Tablets */
@media (max-width: 768px) {
  #page-hero {
    height: 50vh;
    min-height: 400px;
    background-position: center center;
  }
}
/* Mobile */
@media (max-width: 576px) {
  #page-hero {
    height: 45vh;
    min-height: 400px;
    background-position: center center;
    background-size: cover;
  }
}

/* Medium + Small Page Heros */
#medium-hero,
#small-hero {
  width: 100%;
  background-repeat: no-repeat;
  object-fit: cover;
  background-position: center center;
  background-size: cover;
}
/* Desktop (1025px and above) */
@media (min-width: 1025px) {
  #medium-hero {
    max-height: 400px;
    min-height: 400px;
  }
   #small-hero {
    max-height: 300px;
    min-height: 300px;
  }
  #blog-hero {
    max-height: 550px;
    min-height: 450px;
  }
  /* Blog Hero Img */
  .elementor-widget-theme-post-featured-image img {
    max-height: 400px;
    min-height: 350px;
    height: auto;
    object-fit: cover;
  }
}
/* Tablet (768px - 1024px) */
@media (max-width: 1024px) {
  #medium-hero {
    max-height: 400px;
    min-height: 400px;
  }
   #small-hero {
    max-height: 300px;
    min-height: 300px;
  }
  /* Blog Hero Img */
  .elementor-widget-theme-post-featured-image img {
    max-height: 350px;
    min-height: 300px;
    height: auto;
    object-fit: cover;
  }
}
/* Mobile (below 768px) */
@media (max-width: 768px) {
  #medium-hero {
    max-height: 340px;
    min-height: 340px;
  }
   #small-hero {
    max-height: 340px;
    min-height: 340px;
  }
}
/* Small mobile (below 480px) */
@media (max-width: 480px) {
  #medium-hero {
    max-height: 340px;
    min-height: 340px;
  }
  #medium-hero {
    max-height: 340px;
    min-height: 340px;
  }
}
/*** Hero Preload Colour ***/
.elementor-background-video-container { 
  background: radial-gradient(50% 50% at 50% 50%, rgba(19, 32, 63, 1) 0%, rgba(33, 33, 33, 1) 100%);
}
/* Responsive */
@media (min-width: 992px) {
    .elementor-background-video-container { 
        background: 
      /*url('data:image/svg+xml,<svg width="121" height="153" viewBox="0 0 121 153" fill="none" xmlns="http://www.w3.org/2000/svg"><path opacity="0.25" d="M117.527 66.865C112.148 64.6827 108.98 71.045 108.98 71.045C108.98 71.045 105.24 71.9056 100 73.1196C103.138 66.0044 104.807 58.0439 104.807 49.6531C104.807 18.7947 82.4266 0 52.473 0C15.7187 0 0 30.3205 0 51.7739C0 70.1076 8.99537 91.0077 29.7373 99.6904C8.4235 114.151 4.43586 128.244 4.43586 128.244C-3.57033 153.524 18.0989 152.986 18.0989 152.986C35.7342 153.616 63.8795 133.223 63.8795 133.223L63.6013 132.716C46.5997 141.69 41.0047 140.015 30.3091 138.54L28.8872 139.278C38.3462 141.122 33.9876 143.98 33.9876 143.98C16.306 154.23 10.3091 141.153 10.3091 141.153C4.29676 127.306 21.7465 110.755 21.7465 110.755C26.1824 107.159 30.2937 104.101 34.5131 101.381C39.6136 102.933 45.3169 103.809 51.7002 103.809C72.1484 103.809 88.0989 93.8507 97.0016 78.9594C104.56 77.4994 110.788 76.4544 110.788 76.4544C115.07 79.4819 118.594 77.315 120.325 74.1646C121.886 71.337 120.649 68.1251 117.558 66.865H117.527ZM12.643 48.0549C12.643 19.0713 29.3045 4.50274 51.5302 4.50274C72.5657 4.50274 92.0093 21.5917 92.0093 53.3567C92.0093 62.5466 90.5874 69.9231 88.2844 75.8397C85.1932 76.5774 82.0866 77.2996 79.2581 77.9912C72.473 79.6355 51.9166 87.5653 45.085 90.8847C42.4421 92.1602 39.9846 93.4665 37.6662 94.7881C22.7666 87.5346 12.6584 70.7837 12.6584 48.0702L12.643 48.0549ZM55.2705 98.7684C50.7883 98.7684 46.4761 98.0768 42.4575 96.7398C46.9706 94.3732 51.8393 92.2217 57.5425 90.1163C60.4792 89.0252 72.8594 84.4456 78.609 82.955C80.7574 82.4017 83.1994 81.8178 85.7496 81.2645C77.6044 95.5719 63.4622 98.7837 55.2705 98.7837V98.7684ZM116.09 75.1174C114.22 75.8397 112.21 75.1174 111.561 73.5038C110.927 71.8902 111.917 70 113.787 69.2777C115.641 68.5554 117.666 69.2777 118.3 70.8913C118.934 72.5049 117.944 74.3951 116.074 75.1174H116.09Z" fill="white"/></svg>') no-repeat center,*/
      radial-gradient(50% 50% at 50% 50%, rgba(19, 32, 63, 1) 0%, rgba(33, 33, 33, 1) 100%);
    }
}
.elementor-background-video-container video { 
  opacity: 1;
  animation-name: fadeInOpacity;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  animation-duration: 2.2s;
}
@keyframes fadeInOpacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

#blog-hero.Dark {
  background: url('/wp-content/themes/breeze/assets/imgs/dark-texture.webp')
              center center / cover no-repeat;
}

#blog-hero.Light {
  background: url('/wp-content/themes/breeze/assets/imgs/light-texture.webp')
              center center / cover no-repeat;
}

/* Scoped text color for all headings & paragraphs inside blog-hero */
#blog-hero .blog-content h1,
#blog-hero .blog-content h2,
#blog-hero .blog-content h3,
#blog-hero .blog-content p,
#blog-hero .elementor-heading-title {
  color: white;
}

/* When hero has Light class, override text color */
#blog-hero.Light .blog-content h1,
#blog-hero.Light .blog-content h2,
#blog-hero.Light .blog-content h3,
#blog-hero.Light .blog-content p,
#blog-hero.Light .elementor-heading-title {
  color: #343A40;
}


/* =======================================================================
 Buttons
========================================================================== */
/*** Default Buttons ***/
.wp-block-button.is-style-btn-default a, .elementor-kit-8 .elementor-button, .tribe-block__event-website a, .tribe-events-c-subscribe-dropdown__button-text {
	font-size:0.875rem!important;
  font-family: var(--e-global-typography-45735d1-font-family), Sans-serif;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: white;
	border-radius: 100px;
	padding: .75rem 1.25rem .75rem 1.25rem;
	display: inline-block;
	line-height: 1;
	text-align: center;
	transition: all .3s;
  margin-top: 1rem;
  background-color: var(--e-global-color-primary);
}
.wp-block-button.is-style-btn-default a:hover,
.elementor-kit-8 .elementor-button:hover,
.tribe-block__event-website a:hover,
.tribe-events-c-subscribe-dropdown__button-text:hover {
  color: white;
  background-color: #58151C;
}

/**** Event Buttons ***/
.tribe-block__event-website a, 
.tribe-events-c-subscribe-dropdown__button-text {
  min-height: auto;
}


/*** Outline Buttons ***/
.wp-block-button.is-style-btn-outline a, .elementor-kit-8 .elementor-button-info .elementor-button {
	font-size:0.875rem;
  font-family: var(--e-global-typography-45735d1-font-family), Sans-serif;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: var(--e-global-color-5a0de86);
	border-radius: 100px;
	border: solid 1px var(--e-global-color-primary);
	padding: .75rem 1.25rem .75rem 1.25rem;
	display: inline-block;
	line-height: 1;
	text-align: center;
	transition: all .3s;
  margin-top: 1rem;
  background-color: transparent;
}
.wp-block-button.is-style-btn-outline a:hover,
.elementor-kit-8 .elementor-button-info .elementor-button:hover {
  color: white;
  background-color: #58151C;
  border: solid 1px var(--e-global-color-primary);
}



/* =======================================================================
 Icon Buttons
========================================================================== */
/* Right-arrow icon */
.wp-block-button.is-style-btn-icon-right a,
.elementor-kit-8 .elementor-button-icon-right .elementor-button a {
  font-size: 0.875rem;
  font-family: var(--e-global-typography-45735d1-font-family, sans-serif);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #343A40;
  border-radius: 100px;
  border: none;
  padding: 0;
  line-height: 1;
  text-align: center;
  background-color: transparent!important;
  transition: color .3s ease;
  /* Prepare for the icon */
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .3rem; /* space between text and icon */
}
.wp-block-button.is-style-btn-icon-right a::after,
.elementor-kit-8 .elementor-button-icon-right .elementor-button a::after {
  content: "";
  width: 1.125rem;
  height: 1.125rem;
  margin-bottom: .25rem;
  flex: 0 0 1.125rem;
  background: url('/wp-content/themes/breeze/assets/icons/arrow-right.svg')
              center / contain no-repeat;
  transition: transform .25s ease, opacity .25s ease; /* image swap is instant */
  opacity: 1;
} 
/* Hover color */
.wp-block-button.is-style-btn-icon-right a:hover,
.elementor-kit-8 .elementor-button-icon-right .elementor-button:hover {
  color: #58151C;
}
/* Hover: swap icon + nudge to the right */
.wp-block-button.is-style-btn-icon-right a:hover::after,
.elementor-kit-8 .elementor-button-icon-right .elementor-button:hover::after {
  background-image: url('/wp-content/themes/breeze/assets/icons/arrow-right-hover.svg');
}
/* Left-arrow icon */
.wp-block-button.is-style-btn-icon-left a,
.elementor-kit-8 .elementor-button-icon-left .elementor-button a {
  font-size: 0.875rem;
  font-family: var(--e-global-typography-45735d1-font-family, sans-serif);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #343A40;
  border-radius: 100px;
  border: none;
  padding: 0;
  line-height: 1;
  text-align: center;
  background-color: transparent!important;
  transition: color .3s ease;
  /* Prepare for the icon */
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .3rem; /* space between text and icon */
}
.wp-block-button.is-style-btn-icon-left a::before,
.elementor-kit-8 .elementor-button-icon-left .elementor-button a::before {
  content: "";
  width: 1.125rem;
  height: 1.125rem;
  margin-bottom: .25rem;
  flex: 0 0 1.125rem;
  background: url('/wp-content/themes/breeze/assets/icons/arrow-left.svg')
              center / contain no-repeat;
  transition: transform .25s ease, opacity .25s ease; /* image swap is instant */
  opacity: 1;
} 
/* Hover color */
.wp-block-button.is-style-btn-icon-left a:hover,
.elementor-kit-8 .elementor-button-icon-left .elementor-button:hover {
  color: #58151C;
}
/* Hover: swap icon + nudge to the right */
.wp-block-button.is-style-btn-icon-left a:hover::before,
.elementor-kit-8 .elementor-button-icon-left .elementor-button:hover::before {
  background-image: url('/wp-content/themes/breeze/assets/icons/arrow-left-hover.svg');
}
/* Arrow Icon Bounce Animation on hover */
@keyframes bounce-right {
  0%, 100% {
    transform: translateX(0);
  }
  40% {
    transform: translateX(6px);
  }
  60% {
    transform: translateX(0);
  }
}
@keyframes bounce-left {
  0%, 100% {
    transform: translateX(0);
  }
  40% {
    transform: translateX(-6px);
  }
  60% {
    transform: translateX(0);
  }
}

/* Right arrow bounce on hover */
.wp-block-button.is-style-btn-icon-right a:hover::after,
.elementor-kit-8 .elementor-button-icon-right .elementor-button:hover::after {
  background-image: url('/wp-content/themes/breeze/assets/icons/arrow-right-hover.svg');
  animation: bounce-right 0.75s ease-in-out infinite;
}
/* Left arrow bounce on hover */
.wp-block-button.is-style-btn-icon-left a:hover::before,
.elementor-kit-8 .elementor-button-icon-left .elementor-button:hover::before {
  background-image: url('/wp-content/themes/breeze/assets/icons/arrow-left-hover.svg');
  animation: bounce-left 0.75s ease-in-out infinite;
}


/* =======================================================================
 Icon Links
========================================================================== */
/* Base normalization for the Icon List widget */
.elementor-widget-icon-list .elementor-icon-list-item, 
.elementor-widget-icon-list .elementor-icon-list-item a {
  display:flex;
  align-items:center;
  gap:.3rem; /* space between icon & text */
  margin-top: .5rem;
}

.elementor-widget-icon-list .elementor-icon-list-icon,
.elementor-widget-icon-list .elementor-icon-list-text{
  margin: 0 !important;; /* kill any theme margins */
  padding: 0 !important;; /* kill any theme margins */
}

/* ===== Direction controls (add class on the widget) ===== */

/* Icon on the LEFT */
.elementor-widget-icon-list.icon-left .elementor-icon-list-item,
.elementor-widget-icon-list.icon-left .elementor-icon-list-item a {
  flex-direction:row;
  text-align:left;
}

/* Icon on the RIGHT */
.elementor-widget-icon-list.icon-right .elementor-icon-list-item,
.elementor-widget-icon-list.icon-right .elementor-icon-list-item a{
  flex-direction:row-reverse;
  text-align:right;
}

/* Optional: tighten SVG baseline alignment */
.elementor-widget-icon-list .elementor-icon-list-icon svg{
  display:block; /* avoids extra descender gap */
}

.elementor-widget.elementor-widget-icon-list .elementor-icon-list-icon svg {
  margin:0;
}
/* card link */
span a {
  font-weight: 700!important;
}
.elementor-icon-wrapper {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
}

/* =======================================================================
Testimonials
========================================================================== */
.elementor-testimonial-wrapper .elementor-testimonial-content {
  position: relative;
  margin-bottom: 3rem;
}
/* Add opening curly quote */
.elementor-testimonial-content::before {
  content: "“";
  margin-right: 0.1em;
}
/* Add closing curly quote */
.elementor-testimonial-content::after {
  content: "”";
  margin-left: 0.1em;
}
/* meta details alignment */
.elementor-widget-testimonial .elementor-widget-container .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-meta-inner .elementor-testimonial-details {
    flex-direction: row;
    display: flex;
    justify-content: center;
    gap: .5rem;
    align-items: center;
}
@media (max-width:576px) {
  .elementor-widget-testimonial .elementor-widget-container .elementor-testimonial-wrapper .elementor-testimonial-meta .elementor-testimonial-meta-inner .elementor-testimonial-details {
    flex-direction: row;
    display: flex;
    justify-content: center;
    gap: .5rem;
    align-items: center;
    flex-wrap: wrap;
  }
}
.elementor-testimonial-wrapper {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: center;
}
/* comma after name */
.elementor-testimonial-name::after {
  content: ",";
  margin-left: 0.2em; /* optional spacing */
}
/* =======================================================================
Halfbox - Elementor
========================================================================== */
/* Contained Default */
.halfbox-block {
  position: relative; /* needed so ::before positions correctly */
  direction: ltr;
  display: grid;
  grid-template-columns: 45% 1fr;
  grid-template-rows: auto;
  gap: 3rem;
  margin-bottom: 3rem;
  margin-top: 3rem;
  padding: 3rem;
  z-index: 1; /* ensures content stays above the pseudo-element */
  overflow: hidden; /* keeps ::before contained */
  border-radius: 1em;
  color: #343A40;
}
/* img mask */
.halfbox-mask-img {
  position: relative;
  overflow: hidden;
  min-height: 0;   /* override any earlier min-height */
  height: auto;    /* shrink-wrap */

}
.halfbox-mask-img img {
  /* Mask fills the element’s box */
  -webkit-mask: url('/wp-content/themes/breeze/assets/masks/halfbox-img-mask.webp')
                no-repeat center / 100% 100%;
  mask: url('/wp-content/themes/breeze/assets/masks/halfbox-img-mask.webp')
        no-repeat center / 100% 100%;
  /* optional: to make sure transparency works */
  background-color: transparent;
  width: 100%;
  height: 600px;               /* fill the wrapper’s height */
  object-fit: cover;          /* cover + crop as needed */
  object-position: center;    /* center center */
  display: block;
}

/* Full-width image block */
@media (max-width: 768px) {
  .halfbox-block {
    /* direction: ltr; */
    display: flex;
    grid-template-columns: 40% 1fr;
    grid-template-rows: auto;
    gap: 1rem;
    margin-bottom: 3rem;
    margin-top: 3rem;
    flex-direction: column;
  }
  .halfbox-mask-img {
    min-height: 320px;        /* or adjust the aspect-ratio instead */
  }

  .halfbox-mask-img img {
    height: auto;
  }
}

/* =======================================================================
  Halfbox - Editor Default - Contained
========================================================================== */
/* Contained Default */
.wp-block-media-text {
  position: relative; /* needed so ::before positions correctly */
  direction: ltr;
  display: grid;
  grid-template-columns: 45% 1fr;
  grid-template-rows: auto;
  gap: 3rem;
  margin-bottom: 3rem;
  margin-top: 3rem;
  padding: 3rem;
  z-index: 1; /* ensures content stays above the pseudo-element */
  overflow: hidden; /* keeps ::before contained */
  border-radius: 1em;
  color: #343A40;
}
.wp-block-media-text::before {
  content: "";
  position: absolute;
  inset: 0; /* shorthand for top/right/bottom/left: 0 */
  background: url('/wp-content/themes/breeze/assets/imgs/light-texture.webp')
              center center / cover no-repeat;
  opacity: 0.4; /* <<< adjust this value to control bg opacity */
  z-index: -1; /* places it behind the content */
}
.wp-block-media-text .wp-block-media-text__content  {
  padding: 0;
  color:#343A40;
}
.elementor-widget-container p {
    max-width: 1140px!important;
}
/* img mask */
.wp-block-media-text__media {
  position: relative;
  overflow: hidden;
  min-height: 0;   /* override any earlier min-height */
  height: auto;    /* shrink-wrap */

}
.wp-block-media-text__media img {
 /* Mask fills the element’s box */
  -webkit-mask: url('/wp-content/themes/breeze/assets/masks/halfbox-img-mask.svg')
                no-repeat center / 100% 100%;
  mask: url('/wp-content/themes/breeze/assets/masks/halfbox-img-mask.svg')
        no-repeat center / 100% 100%;
  /* optional: to make sure transparency works */
  background-color: transparent;
  width: 100%;
  height: 600px;               /* fill the wrapper’s height */
  object-fit: cover;          /* cover + crop as needed */
  object-position: center;    /* center center */
  display: block;
}
/* Full-width image block */
@media (max-width: 768px) {
  .wp-block-media-text {
      position: relative;/* needed so ::before positions correctly */
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
    display: flex;
    grid-template-columns: 40% 1fr;
    grid-template-rows: auto;
    gap: 1rem;
    margin-bottom: 3rem;
    margin-top: 3rem;
    flex-direction: column;
    padding: 2rem 1.6rem;
  }
  .wp-block-media-text__media {
    min-height: 320px;        /* or adjust the aspect-ratio instead */
  }

  .wp-block-media-text__media img {
    height: auto;
  }
}
/* ---------- Mobile fix: keep a real box for the image ---------- */
@media (max-width: 768px) {
  .wp-block-media-text__media {
    width: 100%;
    /* pick the shape you want; 4/5 works nicely with your mask */
    aspect-ratio: 4 / 5;
    min-height: 320px;                 /* safety floor */
    position: relative;
  }

  .wp-block-media-text__media img {
    width: 100%;
    height: 100%;                      /* fill the wrapper */
    object-fit: cover;
    object-position: center;

    /* Safari + masks need explicit longhands */
    -webkit-mask-image: url('/wp-content/themes/breeze/assets/masks/halfbox-img-mask.svg');
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center;
    -webkit-mask-size: 100% 100%;
            mask-image: url('/wp-content/themes/breeze/assets/masks/halfbox-img-mask.svg');
            mask-repeat: no-repeat;
            mask-position: center;
            mask-size: 100% 100%;
  }
}


/* =======================================================================
Halfbox - Editor Full With - Dark
========================================================================== */
.wp-block-media-text.is-style-full-width,
.halfbox-block-full-width {
  position: relative;/* needed so ::before positions correctly */
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  direction: ltr;
  display: grid;
  grid-template-columns: 50% 1fr;/* 50/50 split */
  grid-template-rows: auto;
  gap: 0;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
  padding: 0;
  z-index: 1;/* content above pseudo-element */
  border-radius: 0 !important;
  color: #fff !important;
  align-items: stretch;/* grid items fill the row height */
}

/* Full-width dark texture underlay */
.wp-block-media-text.is-style-full-width::before {
  content: "";
  position: absolute;
  inset: 0;
  left: 0;
  right: 0;
  background: url('/wp-content/themes/breeze/assets/imgs/dark-texture.webp')
              center center / cover no-repeat;
  opacity: 1; 
  z-index: -1;
}

/* Neutralize global paragraph max-width inside this block only */
.wp-block-media-text.is-style-full-width .wp-block-media-text__content p,
.halfbox-block-full-width .halfbox-block-full-width-text p  {
  max-width: none !important;
}
/* Properly scoped heading colors inside this block */
.wp-block-media-text.is-style-full-width .wp-block-media-text__content h2,
.wp-block-media-text.is-style-full-width .wp-block-media-text__content h3,
.wp-block-media-text.is-style-full-width .wp-block-media-text__content h4,
.halfbox-block-full-width .halfbox-block-full-width-text h2, 
.halfbox-block-full-width .halfbox-block-full-width-text h3,
.halfbox-block-full-width .halfbox-block-full-width-text h4 {
  color: #fff;
}
/* Content area spacing & centering */
.wp-block-media-text.is-style-full-width .wp-block-media-text__content,
.halfbox-block-full-width .halfbox-block-full-width-text  {
  min-height: 100%;
  padding: 5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #fff !important;
}

/* Force 4:3 aspect ratio on the media area */
/* 4:3 on the media container*/
.wp-block-media-text.is-style-full-width .wp-block-media-text__media, 
.halfbox-block-full-width .halfbox-block-full-width-img {
  aspect-ratio: 4 / 3;
  overflow: hidden;/* clean crop */
  align-self: start;/* prevent stretching beyond 4:3 */
}

/* Fills the media inside the 4:3 box */
.wp-block-media-text.is-style-full-width .wp-block-media-text__media > img,
.wp-block-media-text.is-style-full-width .wp-block-media-text__media > picture > img,
.wp-block-media-text.is-style-full-width .wp-block-media-text__media > video,
.halfbox-block-full-width .halfbox-block-full-width-img  > img,
.halfbox-block-full-width .halfbox-block-full-width-img  > picture > img, 
.halfbox-block-full-width .halfbox-block-full-width-img  > video  {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover; 
  object-position: center center;
  /* Remove any previous caps so the ratio controls height */
  max-height: none !important;
  height: 100% !important;
  /* If you had a halfbox mask on the imgs, keep it disabled here */
  -webkit-mask: none !important;
  mask: none !important;
  border-radius: 0!important;
}

.halfbox-block-full-width .halfbox-block-full-width-img img {
   border-radius: 0!important;
}

/* Fallback for browsers without aspect-ratio support */
@supports not (aspect-ratio: 1 / 1) {
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media,
  .halfbox-block-full-width .halfbox-block-full-width-img {
    position: relative;
  }
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media::before,
  .halfbox-block-full-width .halfbox-block-full-width-img::before {
    content: "";
    display: block;
    padding-top: 75%;/* 4:3 = 3/4 */
  }
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media > img,
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media > picture > img,
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media > video,
  .halfbox-block-full-width .halfbox-block-full-width-img  > img,
  .halfbox-block-full-width .halfbox-block-full-width-img  > picture > img, 
  .halfbox-block-full-width .halfbox-block-full-width-img  > video  {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

/* Buttons (white outline )*/
.wp-block-media-text.is-style-full-width .wp-block-buttons .wp-block-button.is-style-btn-default a,
.halfbox-block-full-width .wp-block-buttons .wp-block-button.is-style-btn-default a {
  font-size: 0.875rem;
  font-family: var(--e-global-typography-45735d1-font-family), Sans-serif;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #fff;
  border-radius: 100px;
  border: solid 1px #fff;
  padding: .75rem 1.25rem;
  display: inline-block;
  line-height: 1;
  text-align: center;
  transition: all .3s;
  margin-top: 1rem;
  background-color: transparent;
}
.wp-block-media-text.is-style-full-width .wp-block-buttons .wp-block-button.is-style-btn-default a:hover,
.halfbox-block-full-width .wp-block-buttons .wp-block-button.is-style-btn-default a:hover {
  color: #fff;
  background-color: #58151C;
  border: solid 1px #58151C;
}

/* Mobile */
@media (max-width: 768px) {
  /* Keep full-bleed, but stack for mobile */
  .wp-block-media-text.is-style-full-width,
  .halfbox-block-full-width {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-height: none; /* allow natural height */
    overflow: visible;
  }

  .wp-block-media-text.is-style-full-width::before,
  .halfbox-block-full-width::before {
    left: 0;
    right: 0;
  }

  /* Put image first, keep 4:3 (remove fixed 500px height) */
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media,
  .halfbox-block-full-width .halfbox-block-full-width-img {
    order: -1;
    width: 100%;
    height: auto !important;/* kill fixed heights */
    aspect-ratio: 4 / 3;
  }
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media > img,
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media > picture > img,
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media > video,
  .halfbox-block-full-width .halfbox-block-full-width-img  > img,
  .halfbox-block-full-width .halfbox-block-full-width-img  > picture > img, 
  .halfbox-block-full-width .halfbox-block-full-width-img  > video {
    height: 100% !important;
  }
  /* Content spacing / alignment */
  .wp-block-media-text.is-style-full-width .wp-block-media-text__content,
  .halfbox-block-full-width .halfbox-block-full-width-text {
    order: 0;
    padding: 2rem;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
}

/* Fix: make media fill the row height between 768–1376px */
@media (min-width: 769px) and (max-width: 1376px) {
  /* let grid set equal heights */
  .wp-block-media-text.is-style-full-width,
  .halfbox-block-full-width {
    align-items: stretch; /* (already set, but safe) */
  }

  /* remove the 4:3 lock and stretch the media container */
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media,
  .halfbox-block-full-width .halfbox-block-full-width-img {
    aspect-ratio: auto;       /* overrides 4/3 */
    height: 100%;             /* fill grid row height */
    align-self: stretch;      /* ensure it actually stretches */
  }

  /* make any wrappers inside fill too (picture, video, etc.) */
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media > *,
  .halfbox-block-full-width .halfbox-block-full-width-img > * {
    width: 100%;
    height: 100%;
    display: block;
  }

  /* final cover fit */
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media img,
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media picture > img,
  .wp-block-media-text.is-style-full-width .wp-block-media-text__media video,
  .halfbox-block-full-width .halfbox-block-full-width-img img,
  .halfbox-block-full-width .halfbox-block-full-width-img picture > img,
  .halfbox-block-full-width .halfbox-block-full-width-img video {
    object-fit: cover;
    object-position: center;
  }
}


/* =======================================================================
CARDS
========================================================================== */
.card {
   border-radius: 1em;
}
.card .featured img {
	aspect-ratio: 7 / 8; 
  object-fit: cover;
	object-position: center;
  border-radius: 1em;
  transition: filter 0.3s ease;
}

.card:hover .featured img {
  filter: brightness(0.6); 
}
/* Card Types */
.card.card-type-splash .featured img {
	aspect-ratio: 7 / 8; 
}
.card.card-type-default .featured img {
	aspect-ratio: 4 / 3; 
}
.card.card-type-splash {
  position: relative;	
}

/* Aspect 7/8 */
.card.card-collection,
.card.card-collection .featured img,
.card.card-type-splash.card-blog,
.card.card-type-splash.card-blog .featured img,
.card.card-promo,
.card.card-promo .featured img {
	aspect-ratio: 7 / 8; 

}
/* Aspect 4/3 */
.card.card-listing .featured img,
.card.card-event .featured img,
.card.card-type-default.card-blog .featured img {
	aspect-ratio: 4 / 3; 
}
.card.card-listing .featured img {
  border-radius: 1em 1em 0 0;
}
/* Aspect 4/2 */
.card.card-menu,
.card.card-menu .featured img {
	aspect-ratio: 4 / 2; 
}

@media (max-width: 567px) { 
  .card.card-promo,
  .card.card-promo .featured img {
    aspect-ratio: 4 / 2; 
  }
  .card.card-type-default.card-blog .featured img {
    aspect-ratio: 4 / 3; 
  }
}


/* =======================================================================
CARD Carousel Slider
========================================================================== */
/* Force JetEngine slider to go full viewport width */
.jet-listing-grid__slider {
    position: relative;
    width: 100vw;
    max-width: 100vw;
    left: 0 !important;
    margin-left: calc(35% - 35vw) !important;
    margin-right: 0 !important;
}

.jet-listing-grid__slider-icon {
    background: transparent!important;
    line-height: auto;
    margin-top: calc(-36px / 2);
    border-radius: 100px;
    border: none;
    padding:0;
}
/* Hide only the LEFT arrow when it's disabled */
.jet-listing-grid__slider-icon.prev-arrow[aria-disabled="true"] {
    display: none !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Card */
.jet-listing-grid__slider .jet-listing-grid__item .card {
  width: 350px!important;
}

@media (min-width: 992px) { 
  .jet-listing-grid__slider {
    position: relative;
    width: 86vw; 
    max-width: 86vw;
  }
}

@media (min-width:568px) and (max-width:767px) {
   .jet-listing-grid__slider .jet-listing-grid__item .card {
    width:300px!important;
  } 
}
@media (max-width: 567px) { 
  .jet-listing-grid__slider .jet-listing-grid__item .card {
    width: 80vw!important;
  }
}





/* =======================================================================
CARD LISTINGS + EVENTS 
========================================================================== */
.card-mask {
  position: relative;
  display: block;
  width: 100%;
  /* Apply the SVG mask */
  -webkit-mask: url("/wp-content/themes/breeze/assets/masks/card-mask.svg") no-repeat center / cover;
  mask:         url("/wp-content/themes/breeze/assets/masks/card-mask.svg") no-repeat center / cover;
  /* Optional smoothing */
  -webkit-mask-composite: source-over;
}
.card-mask img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover; /* change to contain if you prefer */
  aspect-ratio: 4 / 3; 
  border-radius: 1em 1em 0 0!important;
}

.listing-phone {
    align-items: flex-start !important;
    justify-content: flex-start !important;
    text-align: left !important;
    width: 100%;
    margin: 0;
}

.listing-phone a {
    align-items: flex-start !important;
    justify-content: flex-start !important;
    text-align: left !important;
}





/* =======================================================================
CARD PROMO 
========================================================================== */
/* --- Base card --- */
.card.card-promo {
  position: relative;
  overflow: hidden;
  display: flex;
  min-height: 425px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  perspective: 1200px;
}

/* Hide Dynamic Field of the onsite link */
.promo-onsite-url,
.promo-onsite-source {
  display: none !important;
}
/* Overlay clickeable de los dynamic links (onsite / external) */
.card-splash.card-promo a.promo-link-overlay {
  position: absolute;
  inset: 0;          /* top:0; right:0; bottom:0; left:0 */
  width: 100%;
  height: 100%;
  z-index: 5;
  display: block;
  text-indent: -9999px; /* oculta el texto del link */
  background: transparent; /* evita interferir visualmente */
}

.card-splash.card-promo .elementor-widget {
	position: static;
}

/* Align Top */
.card.card-promo .card-promo-inner.alignment-top {
  justify-content: flex-start;
  align-items: flex-start;
}
/* Align Bottom */
.card.card-promo .card-promo-inner.alignment-bottom {
  justify-content: flex-end;
  align-items: flex-end;
}

@media (max-width: 567px) { 
  /* --- Base card --- */
  .card.card-promo {
    min-height: 250px;
  }
}

/* --- Flip Card Inner --- */
.card.card-splash.card-promo .card-promo-inner {
  position: absolute;
  inset: 0;
  display: flex;
  transform-style: preserve-3d;
  transition: transform .6s cubic-bezier(.2,.7,.2,1);
  backface-visibility: hidden;
}
.card.card-splash.card-promo:hover .card-promo-inner {
  transform: rotateY(180deg);
}

/* --- Front face (default) --- */
.card.card-splash.card-promo .promo-title {
  position: relative;
  backface-visibility: hidden;
  transform: rotateY(0deg) translateZ(1px);
  padding: 0; 
  text-align: left;
  transition: opacity .25s ease;
}

/* --- Back face (hover) --- */
.card.card-splash.card-promo .promo-flip-text {
  position: absolute; inset: 0;
  display: flex;

  transform: rotateY(180deg) translateZ(1px);
  backface-visibility: hidden;
  padding: 0;
  text-align: left;
  opacity: 0;
  transition: opacity .25s ease;
  z-index: 2;
}

/* Reveal back face on hover */
.card.card-splash.card-promo:hover .promo-title { opacity: 0; display:none;}
.card.card-splash.card-promo:hover .promo-flip-text { opacity: 1; }

.card.card-splash.card-promo:hover {
  padding: 1.5rem;
  position: relative;
  overflow: hidden;
  display: flex;
  filter: brightness(100%)!important;
  min-height: 425px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  perspective: 1200px;
}

/* --- The hover link layer --- */
.card.card-splash.card-promo .promo-flip-text {
  position: absolute;
  inset: 0; /* full cover */
  display: flex;

  padding: 0; 
  text-decoration: none;
  color: inherit;
  opacity: 0;
  pointer-events: none;/* off until hover */
  z-index: 3;
}

/* Activate link only on hover */
.card.card-splash.card-promo:hover .promo-flip-text {
  opacity: 1;
  pointer-events: auto;/* now clickable */
}

@media (max-width: 567px) { 
  /* --- Base card --- */
  .card.card-splash.card-promo:hover {
    min-height: 250px;
    padding: 1.5rem 4rem 0 0;

  }
}
/* Overlay clickeable dentro de la card */
.card-splash.card-promo .jet-listing-dynamic-link__link {
  position: absolute;
  inset: 0;          /* top:0; right:0; bottom:0; left:0; */
  width: 100%;
  height: 100%;
  z-index: 5;
  display: block;
  text-indent: -9999px; /* oculta el texto del link */
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  outline: 2px dashed orange;
}





/* =======================================================================
   Images - Editor
========================================================================== */
.wp-block-image.is-style-full-width img {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  border-radius: 0;
}

/* =======================================================================
   Gallery - Elementor
========================================================================== */
/* Style the footer */
.elementor-slideshow__footer {
  width: 100%;
  z-index: 5;
  padding: 1rem;
  background-color: rgba(0, 0, 0, 0.05); /* semi-transparent teal */
  color: white;
  box-sizing: border-box;
  display: block;
}

/* =======================================================================
   Gallery - Editor
========================================================================== */
.scrim {
  background-color: rgba(0, 0, 0, 0.5) !important;
}
.lightbox-trigger {
  display: none;
}
.wp-lightbox-container button:focus, .wp-lightbox-container button:hover, .wp-lightbox-container button:not(:hover):not(:active):not(.has-background) {
    background-color: #5a5a5a40;
    border: none;
    display: none;
}
.wp-block-gallery.has-nested-images figure.wp-block-image img {
  border-radius: 1em;
}
.is-style-masonry .wp-block-image {
    width: 100% !important;
    /* margin-bottom: var(--wp--style--unstable-gallery-gap) !important; */
}

/* =======================================================================
  Gallery Masonry  - Editor
========================================================================== */
.elementor-widget-image img {
  border-radius: 1em;
}
.alignwide {
  margin-inline: 0;
}

.wp-block-gallery {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.wp-block-gallery.wp-block-gallery-1 {
  gap: 1rem!important;
  --wp--style--unstable-gallery-gap: 1rem!important;
}
.is-style-masonry.columns-default {
   -webkit-columns: 3; /* Chrome, Safari, Opera */
   -moz-columns: 3; /* Firefox */
   columns: 3; /* Standard syntax */
}
.is-style-masonry{
   display:block !important;
}
.is-style-masonry .wp-block-image {
   width:100% !important;
   margin-bottom:1rem !important;
}
.is-style-masonry.columns-1 {
   -webkit-columns: 1; /* Chrome, Safari, Opera */
   -moz-columns: 1; /* Firefox */
   columns: 1; /* Standard syntax */
}
.is-style-masonry.columns-2 {
   -webkit-columns: 2; /* Chrome, Safari, Opera */
   -moz-columns: 2; /* Firefox */
   columns: 2; /* Standard syntax */
}
.is-style-masonry.columns-3 {
   -webkit-columns: 3; /* Chrome, Safari, Opera */
   -moz-columns: 3; /* Firefox */
   columns: 3; /* Standard syntax */
}
.is-style-masonry.columns-4 {
   -webkit-columns: 4; /* Chrome, Safari, Opera */
   -moz-columns: 4; /* Firefox */
   columns: 4; /* Standard syntax */
}
.is-style-masonry.columns-5 {
   -webkit-columns: 5; /* Chrome, Safari, Opera */
   -moz-columns: 5; /* Firefox */
   columns: 5; /* Standard syntax */
}

.is-style-masonry.columns-6 {
   -webkit-columns: 6; /* Chrome, Safari, Opera */
   -moz-columns: 6; /* Firefox */
   columns: 6; /* Standard syntax */
}
.is-style-masonry.columns-7 {
   -webkit-columns: 7; /* Chrome, Safari, Opera */
   -moz-columns: 7; /* Firefox */
   columns: 7; /* Standard syntax */
}
.is-style-masonry.columns-8 {
   -webkit-columns: 8; /* Chrome, Safari, Opera */
   -moz-columns: 8; /* Firefox */
   columns: 8; /* Standard syntax */
}

/* Default: 3 columns (already handled by .columns-3) */
/* On mobile: switch to 1 column */
@media (max-width: 567px) {
  .wp-block-gallery.columns-3 {
    grid-template-columns: 1fr;
    position: relative;
    width: 100vw;
    max-width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw!important;
    margin-right: -50vw!important;
    box-sizing: border-box;
  }
}
/* =======================================================================
  Slider - Elementor
========================================================================== */
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 40px!important;
    left: 0;
    width: 100%;
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 12px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 12px));
    display: inline-block;
    border-radius: 25%;
} 
.swiper .wp-block-image img {
  border-radius: 1em;
   width: 100%!important;
}
/* border radius on bg img */
.elementor-511 .elementor-element .swiper-slide-bg {
    border-radius: 1em;
}
.elementor-511 .elementor-element .elementor-background-overlay {
  border-radius: 1em;
}

/* border radius on bullets pagination */
.elementor-511 .elementor-element .swiper-pagination-bullet {
    border-radius: 100px;
}

/* =======================================================================
  Slider - Editor
========================================================================== */
.wp-block-cb-carousel-v2 .cb-pagination .cb-pagination-bullet {
  width: var(--wp--custom--carousel-block--pagination-bullet-size, 12px);
  height: var(--wp--custom--carousel-block--pagination-bullet-size, 12px);
  background-color: #fff;
  opacity: .5;
}
.wp-block-cb-carousel-v2 .cb-pagination .cb-pagination-bullet.swiper-pagination-bullet-active {
width: var(--wp--custom--carousel-block--pagination-bullet-size, 12px);
  height: var(--wp--custom--carousel-block--pagination-bullet-size, 12px);
  background-color: #fff;
  opacity: 1;
}

/* =======================================================================
   Highlight - HOME Elementor
========================================================================== */
.home-highlight-arrow {
    margin-top: -310px!important;
  }
/* Between 756px and 500px */
@media (min-width: 430px) and (max-width: 459px) {
  .home-highlight-arrow {
    margin-top: -350px!important;
  }
}
/* Between 756px and 500px */
@media (min-width: 460px) and (max-width: 545px) {
  .home-highlight-arrow {
    margin-top: -430px!important;
  }
}
/* Between 756px and 500px */
@media (min-width: 546px) and (max-width: 756px) {
  .home-highlight-arrow {
    margin-top: -240px!important;
  }
}


/* =======================================================================
   Highlight - Editor - Default Img Cover
========================================================================== */
.wp-block-cover .wp-block-cover__background {
  opacity: .2;
  background-color: #000000!important;
}
.wp-block-cover .wp-block-cover__inner-container,
.highlight-default .highlight-container {
  margin: 0 auto;
}
.wp-block-cover .wp-block-cover__inner-container h2,
.highlight-default .highlight-container h2 {
  color:#fff;
  font-weight: 700;
  font-style: normal;
  font-size: var(--e-global-typography-21c5652-font-size);
  line-height: var(--e-global-typography-21c5652-line-height);
  letter-spacing: var(--e-global-typography-21c5652-letter-spacing);
  text-transform: var(--e-global-typography-21c5652-text-transform);
}
.wp-block-cover .wp-block-cover__inner-container p.is-style-c1,
.highlight-default .highlight-container p.is-style-c1 {
  margin: -10px auto 1rem auto;
}
.wp-block-cover .wp-block-cover__inner-container p.is-style-c2,
.highlight-default .highlight-container p.is-style-c2  {
  margin: -10px auto 1rem auto;
}

/* =========================================================
  Highlight - Editor - Dark Arrow Cover
========================================================= */
/* Cover full-bleed and stack-safe */
.wp-block-cover.is-style-dark-arrow,
.highlight-dark-arrow {
  position: relative;
  overflow: visible;                
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  min-height: auto;
  height: 750px;
  color: #fff;
}

/* Keep inner content above the masked layers */
.wp-block-cover.is-style-dark-arrow > .wp-block-cover__inner-container
.highlight-dark-arrow > .highlight-container {
  position: relative;
  z-index: 1;
  margin: 0 auto;
}

/* Background layers fill the whole cover box */
.wp-block-cover.is-style-dark-arrow > .wp-block-cover__background,
.wp-block-cover.is-style-dark-arrow > img.wp-block-cover__image-background,
.wp-block-cover.is-style-dark-arrow > .wp-block-cover__image-background,
.wp-block-cover.is-style-dark-arrow > video.wp-block-cover__video-background,
.wp-block-cover.is-style-dark-arrow > .wp-block-cover__background,
.highlight-dark-arrow > .wp-block-cover__background  {
  position: absolute;
  inset: 0;/* top:0 right:0 bottom:0 left:0 */
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  z-index: 0;/* below inner content */
}

/* Texture layer with the mask (most robust) */
.wp-block-cover.is-style-dark-arrow::before
.highlight-dark-arrow::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none; /* let clicks pass through */
  /* Texture background to be masked */
  background-image: url('/wp-content/themes/breeze/assets/masks/highlight-mask-xl.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  /* Mask (desktop/tablet) */
  -webkit-mask: url('/wp-content/themes/breeze/assets/masks/highlight-mask-xl.webp')
                no-repeat center center / cover;
  mask:         url('/wp-content/themes/breeze/assets/masks/highlight-mask-xl.webp')
                no-repeat center center / cover;
  width: 100%;
}

/* Apply the same mask to Cover's built-in background layers */
.wp-block-cover.is-style-dark-arrow > .wp-block-cover__background,
.wp-block-cover.is-style-dark-arrow > img.wp-block-cover__image-background,
.wp-block-cover.is-style-dark-arrow > .wp-block-cover__image-background,
.wp-block-cover.is-style-dark-arrow > video.wp-block-cover__video-background,
.highlight-dark-arrow > .wp-block-cover__background {
  -webkit-mask: url('/wp-content/themes/breeze/assets/masks/highlight-mask-xl.webp')
                no-repeat center center / cover;
  mask:         url('/wp-content/themes/breeze/assets/masks/highlight-mask-xl.webp')
                no-repeat center center / cover;
}
@media (max-width: 767.98px) {
  .wp-block-cover.is-style-dark-arrow::before {
    -webkit-mask: url('/wp-content/themes/breeze/assets/masks/highlight-mobile-mask.webp')
                  no-repeat center / cover;
    mask:         url('/wp-content/themes/breeze/assets/masks/highlight-mobile-mask.webp')
                  no-repeat center / cover;
  }
  .wp-block-cover.is-style-dark-arrow > .wp-block-cover__background,
  .wp-block-cover.is-style-dark-arrow > img.wp-block-cover__image-background,
  .wp-block-cover.is-style-dark-arrow > .wp-block-cover__image-background,
  .wp-block-cover.is-style-dark-arrow > video.wp-block-cover__video-background {
    -webkit-mask: url('/wp-content/themes/breeze/assets/masks/highlight-mobile-mask.svg')
                  no-repeat center / cover;
    mask:         url('/wp-content/themes/breeze/assets/masks/highlight-mobile-mask.svg')
                  no-repeat center / cover;
  }
  /* Widen inner content a bit on small screens */
  .wp-block-cover .wp-block-cover__inner-container
  .highlight-dark-arrow .highlight-container {
    width: 85%;
  }
}

@media (min-width: 1024px) {
   .wp-block-cover .wp-block-cover__inner-container,
  .highlight-dark-arrow .highlight-container {
    width: 55%;
  }
}
@media (min-width: 1440px) {
  .wp-block-cover.is-style-dark-arrow::before,
  .wp-block-cover.is-style-dark-arrow > .wp-block-cover__background,
  .wp-block-cover.is-style-dark-arrow > img.wp-block-cover__image-background,
  .wp-block-cover.is-style-dark-arrow > .wp-block-cover__image-background,
  .wp-block-cover.is-style-dark-arrow > video.wp-block-cover__video-background {
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-position: bottom center;
    mask-position: bottom center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }
  .wp-block-cover .wp-block-cover__inner-container,
  .highlight-dark-arrow .highlight-container {
    width: 55%;
  }

}

/* =========================================================
     Highlight - Arrow - Elementor
========================================================= */
.highlight-arrow {
    -webkit-mask-image: url('/wp-content/themes/breeze/assets/masks/highlight-mask-xl.webp');
    -webkit-mask-size: cover;
    -webkit-mask-position: bottom center;
}

/* =========================================================
     Highlight - Editor - Dark Cover
========================================================= */
.wp-block-cover.is-style-dark,
.highlight-dark {
color: white!important;
}
.wp-block-cover.is-style-dark > .wp-block-cover__background {
  background-image: url('/wp-content/themes/breeze/assets/textures/dark-texture.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 1; /* adjust this value to control bg opacity */
}

/* =========================================================
    Highlight - Editor - Light Cover
========================================================= */
.wp-block-cover.is-style-light,
.highlight-light {
color: #343A40;
}
.wp-block-cover.is-style-light > .wp-block-cover__background {
  background-image: url('/wp-content/themes/breeze/assets/textures/light-texture.webp');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 1; /* adjust this value to control bg opacity */
}
.wp-block-cover.is-style-light .wp-block-cover__inner-container h2,
.highlight-dark .hightlight-container h2 {
  color: #343A40!important; 
}

/* =======================================================================
   Accordions - Editor
========================================================================== */
.plethoraplugins-accordion.plethoraplugins-theme__minimal.plethoraplugins-theme__basic .pds-accordion__icon,
.plethoraplugins-accordion.plethoraplugins-theme__minimal.plethoraplugins-theme__tabby .pds-accordion__icon.plethoraplugins-accordion.plethoraplugins-theme__minimal.plethoraplugins-theme__basic .pds-accordion__icon {
  right:0!important;
}
@media (max-width:567px) {
  .elementor-widget-n-accordion .e-n-accordion-item-title-icon span {
    width: 13px;
  }
}
@media (min-width:568px) and (max-width:767px) {
  .elementor-widget-n-accordion .e-n-accordion-item-title-icon span {
    width: 13px;
  }
}
@media (min-width:768px) {
    .elementor-widget-n-accordion .e-n-accordion-item-title-icon span {
    width: 18px;
  }
}
@media (min-width:992px) {
    .elementor-widget-n-accordion .e-n-accordion-item-title-icon span {
    width: 30px;
  }
}
@media (min-width:1200px) {
    .elementor-widget-n-accordion .e-n-accordion-item-title-icon span {
    width: 30px;
  }
}
.e-n-accordion-item[open] .e-n-accordion-item-title {
  border-bottom: none !important;
}

/* accordion bg*/
.plethoraplugins-accordion.plethoraplugins-theme__minimal.plethoraplugins-theme__basic, .plethoraplugins-accordion.plethoraplugins-theme__minimal.plethoraplugins-theme__tabby {
    background-color: var(--e-global-color-43bc68c);
    color: var(--pds-tabs-content-text-color);
    margin: var(--pds-tabs-margin);
    padding: 1rem 0!important; 
}
/* accordion title block */
.plethoraplugins-accordion.plethoraplugins-theme__minimal.plethoraplugins-theme__basic .pds-accordion__title {
   background: none!important;
   color: var(--n-accordion-title-normal-color);
    cursor: pointer;
    display: flex;
    flex-direction: row;
    flex-grow: var(--n-menu-title-flex-grow);
    gap: var(--n-accordion-icon-gap);
    justify-content: space-between;
    list-style: none;
    padding: var(--n-accordion-padding);
}
/* accordion title */
span.pds-accordion__heading {
  font-family: var(--e-global-typography-a73f9a2-font-family), Sans-serif;
  font-weight: var(--e-global-typography-a73f9a2-font-weight);
  line-height: var(--e-global-typography-a73f9a2-line-height);
  font-size: var(--e-global-typography-a73f9a2-font-size);
}
.plethoraplugins-accordion.plethoraplugins-theme__minimal .pds-accordion__item {
  padding: 1rem 0;
  border-style: solid;
  border-width: 0px 0px 1px 0px;
  border-color: #C3C7CA;
}
/* Hide the original SVG arrow */
.pds-accordion__icon svg {
  display: none !important;
}
/* Default icon: plus */
.pds-accordion__icon {
  width: 1.25rem!important;
  height: 1.25rem!important;
  background-image: url('/wp-content/themes/breeze/assets/icons/plus.svg');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  display: inline-block;
}
/* Open state: minimize icon */
.pds-js-accordion-controller[aria-expanded="true"] .pds-accordion__icon {
  background-image: url('/wp-content/themes/breeze/assets/icons/minus.svg');
}
/* Full-width image block */
@media (max-width: 567px) {
    .plethoraplugins-accordion {
    position: relative;
    width: 100vw;
    max-width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw!important;
    margin-right: -50vw!important;
    box-sizing: border-box;
  }
  .plethoraplugins-accordion.plethoraplugins-theme__minimal .pds-accordion__item {
  padding: 1rem;
}
}
.pds-accordion__content {
  padding: 1rem 0!important;
}

/* =======================================================================
   Events
========================================================================== */
/* Events header */
.tribe-events {
    margin-top: 5rem!important;
    padding: 0;
}
/* Search Bar */
.tribe-events-header__events-bar .tribe-events-c-events-bar {
  border-radius: 20px!important;
}

/* Seach Bar - Find Events button */
.tribe-common--breakpoint-medium.tribe-events .tribe-common-c-btn.tribe-events-c-search__button {
  font-size:0.875rem!important;
  font-family: var(--e-global-typography-45735d1-font-family), Sans-serif;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: white;
	border-radius: 100px;
	padding: .75rem 1.25rem .75rem 1.25rem;
	display: inline-block;
	line-height: 1;
	text-align: center;
	transition: all .3s;
  margin-top: 0;
  background-color: var(--e-global-color-primary);
}
/* Seach Bar - Text */
.tribe-events .tribe-events-c-view-selector__list-item-text,
.tribe-common--breakpoint-medium.tribe-common .tribe-common-form-control-text__input {
  font-size:1rem;
}

/* Event Template */
#tribe-events-pg-template {
  max-width: 100%!important;
}

/* Upcoming Events Button */
.tribe-events button.tribe-events-c-top-bar__datepicker-button:hover {
  background: transparent;
}
.tribe-events button.tribe-events-c-top-bar__datepicker-button:focus {
    outline: none;
}
/* Event List Container */
.tribe-common--breakpoint-medium.tribe-common .tribe-common-g-row--gutters>.tribe-common-g-col {
    padding-left: 0;
    padding-right: 0;
}

/* Event List Date */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event-date-tag {
    min-width: 80px;
    width: auto;
}

/* Event List Text */
.tribe-common--breakpoint-medium.tribe-common .tribe-common-b2 {
  font-size: 1rem;
}
.tribe-events .tribe-events-calendar-list__event-title-link {
  font-size: 2rem!important;
}
.tribe-events-c-top-bar__today-button,
span.tribe-events-c-top-bar__datepicker-desktop {
  font-size: 1rem!important;
}
.tribe-events p, .tribe-events span {
    font-size: 1rem!important;
}
span.tribe-events-calendar-list__event-date-tag-daynum {
  font-size: 2rem!important;
}

/* Links */
.tec-events-elementor-event-widget__organizer a {
  text-decoration: none!important;
  font-size: 1rem!important;
  font-weight: 600!important;
}
/* Add to Calendar btn */
.tec-events-elementor-event-widget__export-dropdown .tec-events-elementor-event-widget__export-dropdown-button {
  border-radius: 100px!important;
}
/* Google map container */
.tec-events-elementor-event-widget__venue .tec-events-elementor-event-widget__venue-container {
  margin: 0!important;;
}
[class*=tec-events-elementor-event-widget] [class*=tec-events-elementor-event-widget] {
  margin-bottom: 0!important;;
}

/* Img: Aspect Ratio on Event Single Page*/
/* Force a small portrait "poster" box on the image wrapper and any inner wrappers */
.tec-events-elementor-event-widget__image,
.tec-events-elementor-event-widget__image > a,
.tec-events-elementor-event-widget__image > figure,
.tec-events-elementor-event-widget__image > picture {
  width: 320px !important;/* set poster width */
  height: 420px !important;/* set poster height (3:4) */
  aspect-ratio: auto !important; /* ignore intrinsic aspect ratio */
  display: block !important;
  overflow: hidden !important;      
  position: relative !important;
  border-radius: 1em; 
  flex: 0 0 320px !important; /* prevent flex layouts from stretching it */
  max-width: none !important; /* defeat theme max-width */
}
/* Make the image fill and crop inside that box */
.tec-events-elementor-event-widget__image img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;/* crop without distortion */
  object-position: center !important;
  display: block !important;
}
/* If Elementor adds img width:100% globally inside widgets, keep ours fixed */
.elementor-widget img.attachment-large,
.elementor-widget img.size-full {
  max-width: none !important;
}
/* Make it a bit smaller on mobile */
@media (max-width: 768px) {
  .tec-events-elementor-event-widget__image,
  .tec-events-elementor-event-widget__image > a,
  .tec-events-elementor-event-widget__image > figure,
  .tec-events-elementor-event-widget__image > picture {
    width: 160px !important;
    height: 240px !important;
    flex: 0 0 160px !important;
  }
  .tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event {
    padding-right:0;
}
}

/* Img: Aspect Ratio on Event List */
/* content alignment */
.tribe-common--breakpoint-medium.tribe-events .tribe-events-calendar-list__event {
    flex-direction: row-reverse;
    justify-content: space-between;
    padding-right:2rem;
}
/* Event List — force portrait poster on the actual <img> */
img.tribe-events-calendar-list__event-featured-image,
.tribe-events img.tribe-events-calendar-list__event-featured-image {
  width: 220px !important;        /* poster width */
  height: 300px !important;       /* poster height (3:4) */
  display: block !important;
  max-width: none !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 1em;
}
/* If there’s a link/wrapper around the img, size it too so flex doesn’t stretch */
.tribe-events .tribe-events-calendar-list__event-featured-image-wrapper,
.tribe-events a.tribe-events-calendar-list__event-featured-image-wrapper,
.tribe-events .tribe-events-calendar-list__event-featured-image-link {
  width: 220px !important;
  height: 300px !important;
  flex: 0 0 220px !important;
  overflow: hidden !important;
  border-radius: 1em;
  position: relative;
  padding-left: 0;
  padding-right: 0;
}
/* Mobile: smaller poster */
@media (max-width: 768px) {
  img.tribe-events-calendar-list__event-featured-image,
  .tribe-events img.tribe-events-calendar-list__event-featured-image,
  .tribe-events .tribe-events-calendar-list__event-featured-image-wrapper,
  .tribe-events a.tribe-events-calendar-list__event-featured-image-wrapper,
  .tribe-events .tribe-events-calendar-list__event-featured-image-link {
    width: 160px !important;
    height: 240px !important;
    flex: 0 0 160px !important;
  }
}

/* Event Details */
.tribe-events-gmap {
  display: none;
}
.tec-events-elementor-event-widget__venue .tec-events-elementor-event-widget__venue-container {
  border: none!important;
  padding: 0!important;
}
.tec-events-elementor-event-widget__venue .tec-events-elementor-event-widget__venue-details {
  padding: 0!important;
  display: flex;
  flex-direction: column;
  align-content: flex-start;
  justify-content: center;
  gap: 1rem;
}
.tec-events-elementor-event-widget__venue-address-address {
  font-style: normal;
}
.tec-events-elementor-event-widget__venue .tec-events-elementor-event-widget__venue-details .tec-events-elementor-event-widget__venue-phone-link {
  text-decoration: none!important;
}

/* Event Map */
/* Event Map */
.tec-events-elementor-event-widget__venue .tec-events-elementor-event-widget__venue-container {
    border: 1px solid var(--tec-color-border-secondary);
    border-radius: var(--tec-border-radius-default);
    display: flex!important;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
    height: fit-content;
    margin: 100%;
    width: 100%!important;
    max-width: 100%!important;
    /* flex-direction: row; */
    gap: 2rem;
    justify-content: space-between;
}
@media only screen and (min-width: 767px) {
.tec-events-elementor-event-widget__venue .tec-events-elementor-event-widget__venue-container {
    border: 1px solid var(--tec-color-border-secondary);
    border-radius: var(--tec-border-radius-default);
    display: flex!important;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
    height: fit-content;
    margin: auto;
    max-width: 100%!important;
    width: 100%!important;
    /* flex-direction: row; */
    gap: 2rem;
    justify-content: space-between;
}
}
/* =======================================================================
   BLogs
========================================================================== */
.blog-content .wp-block-heading {
  margin-top: 2rem;
}
.blog-content p {
  max-width: 1140px!important;
  width: 100%;
  padding: 0 1rem 0 0rem;
}
.wp-block-gallery.has-nested-images figure.wp-block-image img {
  margin: 0 auto;
}

figure.wp-block-image {
    margin: 2rem auto;
}

.wp-block-embed__wrapper {
    position: relative;
    margin: 2rem auto;
}

/* =======================================================================
   IG
========================================================================== */
.eapps-instagram-feed-posts-grid-load-more-container.eapps-instagram-feed-posts-grid-load-more-enabled {
    display: none!important;
}

/* border radiuso on ig imgs */
.eapps-instagram-feed-posts-item-template-tile .eapps-instagram-feed-posts-item-overlay {
  border-radius: .75em;
}
#eapps-instagram-feed-1 .eapps-instagram-feed-posts-item-overlay {
    background: rgba(0, 0, 0, 0.8);
    border-radius: .75em;
}
#eapps-instagram-feed-1 .eapps-instagram-feed-posts-item {
  border-radius: .75em;
}