/* =======================================================================
   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
========================================================================== */
html {
  font-size: 14px; /* 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;
color: var(--e-global-color-text); /* text-color */
line-height: 1.8;

}

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

/*.elementor-widget-wrap {
  max-width: 100% !important;
  overflow-x: hidden;
}
*/
.elementor-kit-8 a {
  text-decoration: underline;
}


li {
  margin-bottom: 1rem;
  line-height: 1.6em;
}


/* =======================================================================
   Fonts
========================================================================== */
/* Block Headings Font Sizes */
.wp-block-heading.is-style-h1 {
  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);
  color: var(--e-global-color-text); /* text-color */
}
.wp-block-heading.is-style-h2 {
  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);
  color: var(--e-global-color-text); /* text-color */
}
.wp-block-heading.is-style-h3 {
  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);
  color: var(--e-global-color-text); /* text-color */
}
.wp-block-heading.is-style-h4 {
  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);
  color: var(--e-global-color-text); /* text-color */
}
.wp-block-heading.is-style-h5 {
  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);
  color: var(--e-global-color-text); /* text-color */
}

/*** 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-bottom: 1rem;
  font-style: normal;
  color: var(--e-global-color-text);
}

h1 span,
h2 span,
h3 span,
h4 span,
h5 span,
h6 span {
  font-weight:400 !important;
}

#blog-hero h2 {
  margin-bottom: 0;
}

/* =======================================================================
 Dark & Light Theme Blocks
========================================================================== */
.light {
  background-color: var(--e-global-color-809f0c8);/*  light yellow */
}
.teal {
  background-color: var(--e-global-color-79e0b7c)!important;/* teal */
}

.dark {
  color: var(--e-global-color-primary); /* yellowyellow */
  background-color: var(--e-global-color-secondary)!important;/* secondary */
}
.dark .elementor-kit-8 h1,
.dark .elementor-kit-8 h2,
.dark .elementor-kit-8 h3,
.dark .elementor-kit-8 h4,
.dark .elementor-kit-8 h5,
.dark .elementor-kit-8 h6  {
 color: var(--e-global-color-primary); /* yellowyellow */

}
.dark h1, h2, h3, h4, h5, h6, a, button  {
  color: var(--e-global-color-primary); /* yellow */
}
.dark a {
  color: var(--e-global-color-primary);
}
.dark a:hover {
  text-decoration: underline;
}
/* =======================================================================
 Header & Headroom
========================================================================== */
#header {
  background-color: rgba(0, 61, 76, 0.5); /* Initial 50% opacity */
  transition: background-color 0.3s ease;
}
/* Sticky header behavior */
#header.headroom--pinned.headroom--top {
  background-color: rgba(0, 61, 76, 0.5); /* 50% opacity */
}

/* Sticky header behavior */
#header.headroom--pinned.headroom--not-top {
  background-color: rgba(0, 61, 76, 1); /* 100% opacity */
}

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

#header.headroom--not-top .e-n-menu-content .dropdown-container {
  background-color: rgba(0, 61, 76, 1) !important;
}

@media (max-width: 992px) {
  #header.menu-active,
  #header.menu-active.headroom--top,
  #header.menu-active.headroom--pinned {
    background-color: rgba(0, 61, 76, 1) !important;
  }

  #header.menu-active .dropdown-container,
  #header.menu-active .elementor-widget-n-menu .e-n-menu-title,
  #header.menu-active .elementor-widget-n-menu .e-n-menu-heading {
    background-color: rgba(0, 61, 76, 1) !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: rgba(0, 61, 76, 0.5); /* 100% opacity */
}
.dropdown-container {
    background-color: rgba(0, 61, 76, .5) !important; /* 100% opacity */
}

/* 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: 370px;
}
/* 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: 345px;
}
.elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-item:last-child {
  /* your styles here */
  width: auto;
}

/* Inner Menu List */
.menu-list {
  padding: 0rem 1rem 0rem 0rem;
}

/* Hide the icon by default */
.elementor-widget .elementor-icon-list-icon {
  display: none;
  width: 40px!important; /* Fixed width to reserve space */
  margin-right: 0.5em;
}

/* Reserve space on the left so text doesn't shift when icon appears */
.elementor-widget .elementor-icon-list-item {
  padding-left: 1.5rem;
  position: relative;
  transition: all .3s;
  text-decoration: none;
}
.elementor-widget .elementor-icon-list-item a {
  text-decoration: none;
}
/* Show the icon and apply color when hovering over the list item */
.elementor-widget .elementor-icon-list-item:hover .elementor-icon-list-icon {
  display: inline-block;
  width: 40px!important;
  color: var(--e-global-color-primary) !important;
  fill: var(--e-global-color-primary) !important; /* For SVG icons */
  position: absolute;
  left: 0;
  top: 70%;
  transform: translateY(-60%); /* Vertically center the icon */
}

@media (max-width:992px) {
  /* Hide the icon by default */
  .elementor-widget .elementor-icon-list-icon {
    width: 35px!important; /* Fixed width to reserve space */
    margin-right: 1rem;
  }
  /* Show the icon and apply color when hovering over the list item */
  .elementor-widget .elementor-icon-list-item:hover .elementor-icon-list-icon {
    width: 35px!important;
  }
}

/* Remove left padding only for icon list items inside the footer */
.elementor-location-footer .elementor-icon-list-item {
  padding-left: 0 !important;
  transition: all .3s;
}
/* List item hover */
.elementor-widget .elementor-icon-list-item a:hover {
  font-weight: 600;
}

/* List item hover footer */
#footer .elementor-icon-list-item span:hover {
  font-weight: 600;
}

/* 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;
}

/* Inner Menu List Item a link */
.elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a {
  gap: 0.5rem; /* Space between text and icon */
} 

/* Menu Toggle */
.elementor-kit-8 button:hover,
.e-n-menu-toggle:hover {
  background-color: transparent!important;
  border:none!important;
}

/* Mobile */
@media (max-width: 576px) {
.dropdown-container {
      background-color: transparent !important; /* 0% opacity */
  }
  .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: 385px;
    margin-left: auto;
    margin-right: 0;
    box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.2); /* bottom-only shadow */
    background-color: rgba(0, 61, 76, .5); /* 100% opacity */
    padding: 2rem 1rem;
    margin-top: 0.28rem;
    display: flex;
    flex-direction: column;
  }
  /* Inner Menu List */
  .menu-list {
    padding: 0rem 1rem 2rem 0rem;
  }
  #e-n-menu-title-6045 {
    display: block;
  }
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-item:last-child {
    width: fit-content;
  }
}

/* Tablet */
@media (min-width: 577px) and (max-width: 992px) {
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-toggle[aria-expanded=true]+.e-n-menu-wrapper {
    --n-menu-wrapper-display: flex;
    margin-top: 1.75rem;
}
  .dropdown-container {
      background-color: transparent !important; /* 0% opacity */
  }
  .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: 385px;
    margin-left: auto;
    margin-right: 0;
    box-shadow: 0px 15px 20px rgba(0, 0, 0, 0.2); /* bottom-only shadow */
    background-color: rgba(0, 61, 76, .5); /* 100% opacity */
    padding: 2rem 1rem;
    margin-top: 0.33rem;
    display: flex;
    flex-direction: column;
  }
  /* Inner Menu List */
  .menu-list {
    padding: 0rem 1rem 2rem 0rem;
  }
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-item:last-child {
    display: none!important;
  }
}

/* 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;
  }
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-item:last-child,
  #e-n-menu-title-6045  {
    display: none!important;
  }
}

/* Mobile Menu List Items Paddings */
@media (max-width: 993px) {
  li.elementor-icon-list-item {
    padding-bottom: calc(0.6rem / 1);
  }
}
/* Desktop */
@media (min-width: 1024px) {
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-item:last-child
  #e-n-menu-title-6045  {
    display: none!important;
  }
}

/* link text decoration*/
a.e-n-menu-title-container.e-focus.e-link {
    text-decoration: none;
}

.homesite-content {
  display: block!important;
}

/* =======================================================================
 Page Heros
========================================================================== */
/* Home + Large Page Hero + Splash  + Featured Icons Aerial */
#home-hero,
#large-hero,
#splash,
#featured-icons-aerial {
  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;
}

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

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

/* Minimal Page Hero */
#page-minimal-hero-img {
  width: 100%;
  background-repeat: no-repeat;
  object-fit: cover;
  background-position: center center;
  background-size: cover;
}
/* Desktop (1025px and above) */
@media (min-width: 1025px) {
  #page-minimal-hero-img {
    max-height: 300px;
    min-height: 300px;
  }
  #blog-hero {
    max-height: 550px;
    min-height: 450px;
  }
  /* Blog Hero Img */
  #blog-hero .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) {
  #page-minimal-hero-img {
    max-height: 300px;
    min-height: 300px;
  }
  /* Blog Hero Img */
  #blog-hero.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) {
  #page-minimal-hero-img {
    max-height: 200px;
    min-height: 200px;
  }
}
/* Small mobile (below 480px) */
@media (max-width: 480px) {
  #page-minimal-hero-img {
    max-height: 140px;
    min-height: 140px;
  }
}

/*** Hero Preload Colour ***/
.elementor-background-video-container { 
  background: #003D4C;
}
/* Responsive */
@media (min-width: 992px) {
    .elementor-background-video-container { 
        background:#003D4C;
    }
}
.elementor-background-video-container video { 
  opacity: 1;
  animation-name: fadeInOpacity;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  animation-duration: 2.2s;
  transition: opacity 2s ease-in-out; /* 🔥 esto es nuevo */
}
@keyframes fadeInOpacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* Flyover video */
#featured-icons-aerial .elementor-background-video-container { 
  background-image: url('/wp-content/themes/breeze/assets/videos/flyover-video-img.webp');
}
/* Responsive */
@media (min-width: 992px) {
    #featured-icons-aerial.elementor-background-video-container { 
        background-image: url('/wp-content/themes/breeze/assets/videos/flyover-video-img.webp');
    }
}
#featured-icons-aerial .elementor-background-video-container video { 
  opacity: 1;
  animation-name: fadeInOpacity;
  animation-iteration-count: 1;
  animation-timing-function: ease-in;
  animation-duration: 2.2s;
}



/* =======================================================================
 Buttons /* WP Editor Buttons
========================================================================== */
/*** Outline Buttons ***/
.wp-block-button.is-style-btn-default a, .elementor-kit-8 .elementor-button,
#e-n-menu-title-6045 {
	font-size:0.875rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	color: var( --e-global-color-809f0c8);
	border: solid 1px var( --e-global-color-809f0c8);
	border-radius: 2px!important;
	padding: 0.75rem 1rem;
	display: inline-block;
	line-height: 1.3;
	text-align: center;
	transition: all .3s;
  background-color: transparent;
  text-decoration: none;
}
.wp-block-button.is-style-btn-default a:hover,
.elementor-kit-8 .elementor-button:hover,
#e-n-menu-title-6045:hover {
  background-color: rgba(0, 43, 53, 1); /* Light Yellow */ 
  text-decoration: none;
}

.transparent .wp-block-button.is-style-btn-default a, .elementor-kit-8 .elementor-button {
  color: var(--e-global-color-809f0c8);/* Light Yellow */ 
	border: solid 1px var( --e-global-color-809f0c8);/* Light Yellow */ 
  background-color: transparent;
  text-decoration: none;
}

.transparent .wp-block-button.is-style-btn-default a:hover,
.elementor-kit-8 .elementor-button:hover {
  color: var(--e-global-color-809f0c8);/* Light Yellow */ 
	border: solid 1px var( --e-global-color-809f0c8);/* Light Yellow */ 
  background-color: rgba(0, 43, 53, 1);
  text-decoration: none;
}

/*
.transparent-dark .wp-block-button.is-style-btn-default a, .elementor-kit-8 .elementor-button {
  color: var(--e-global-color-secondary);/* Light Yellow 
	border: solid 1.5px var( --e-global-color-secondary);/* Light Yellow 
  background-color: transparent;
}

.transparent-dark .wp-block-button.is-style-btn-default a:hover,
.elementor-kit-8 .elementor-button:hover {
  color: var(--e-global-color-809f0c8);/* Light Yellow 
	border: solid 1.5px var( --e-global-color-809f0c8);/* Light Yellow 
  background-color: rgba(0, 43, 53, 1);
}*/

/*** Underline Buttons ***/
.elementor-button-info a.elementor-button,
.wp-block-button.is-style-btn-underline a, 
.elementor-cta__button.elementor-button {
	font-size: 0.875rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	border-style: solid !important;
	border-width: 0px 0px 2px 0px !important;
	border-radius: 0px!important;
  border-bottom: var(--e-global-color-text);
	padding: 0rem 0rem .75rem 0rem !important;
	background-color: transparent !important;
	transition: all .3s;
  margin-top: 1rem;
  color: var(--e-global-color-text);
}
.elementor-button-info a.elementor-button:hover,
.wp-block-button.is-style-btn-underline a:hover,
.elementor-cta__button.elementor-button:hover {
  font-weight: 700;
  color: rgba(0, 96, 117, 1) !important;          /* Red text */
  border-bottom: 2px solid rgba(0, 96, 117, 1) !important;   /* Optional underline if not already set */
  background-color: transparent !important; /* Ensure no background interferes */
}

.elementor-button-info.secondary a.elementor-button,
.wp-block-button.is-style-btn-underline a, 
.elementor-cta__button.elementor-button {
  font-weight: 600;
  color: var(--e-global-color-809f0c8)!important;/* Light Yellow */ 
	border-bottom: solid 2px var( --e-global-color-809f0c8)!important;/* Light Yellow */ 
}

.elementor-button-info.secondary a.elementor-button:hover,
.wp-block-button.is-style-btn-underline a:hover,
.elementor-cta__button.elementor-button:hover {
  font-weight: 700;
  color: var(--e-global-color-809f0c8)!important;/* Light Yellow */ 
	border-bottom: solid 2px var( --e-global-color-809f0c8)!important;/* Light Yellow */ 
}

/* Submit Buttons */
#contact-form .elementor-button[type="submit"]:hover {
  color: var(--e-global-color-809f0c8)!important;/* Light Yellow */ 
  background-color: var(--e-global-color-secondary)!important;
  transform: none !important;
  transition: none !important;
  margin-bottom: 0!important;
  margin-top: 0!important;
}
.elementor-2056 .elementor-element.elementor-element-e8702f7 .elementor-form-fields-wrapper {
    margin-left: calc( -10px/2 );
    margin-right: calc( -10px/2 );
    margin-bottom: 0!important;
}

/* Button Icon*/
#button-icon svg * {
  transition: fill 0.3s ease;
}

#button-icon:hover svg * {
  fill: var(--e-global-color-809f0c8); /* Light Yellow */
}


/* =======================================================================
 Cards
========================================================================== */
/* Post Card*/
.elementor-posts .elementor-post__card {
  /* Turn the container into a grid with 2 columns and 4 rows */
  display: grid;
  grid-template-columns: auto 1fr; 
  grid-template-rows: auto auto auto;
  grid-template-areas:
    "badge     badge"
    "title     title"
    "thumbnail thumbnail";
  gap: 1rem; /* spacing between grid cells */
  margin-bottom: 1rem;
  background-color: var(--e-global-color-primary)!important;
}
.category-forest .elementor-post__card {
  background-color: var(--e-global-color-79e0b7c)!important;
}
/* homesites cards */
.homesite.type-homesite.community-campfire .elementor-post__card {
  background-color: var(--e-global-color-secondary)!important;
  color: var(--e-global-color-primary)!important;
  margin-bottom: -20px !important;
  height: auto;
}
.homesite.type-homesite.community-campfire .elementor-post__card .elementor-post__title, .homesite.type-homesite.community-campfire .elementor-post__card .elementor-post__badge {
  color: var(--e-global-color-primary)!important;
}

/* Related Cards */
.related-cards {
  height: fit-content;
}
.related-cards .elementor-posts .elementor-post__card {
  margin-bottom: -20px !important;
  height: auto;
}

@media (max-width:768px) {
  .related-cards .elementor-posts .elementor-post__card {
    margin-bottom: 0.4rem !important;
    height: fit-content;
  }
}
.related-cards .elementor-posts-container.elementor-posts.elementor-posts--skin-cards.elementor-grid.elementor-has-item-ratio {
    gap: 2rem!important;
}
.related-cards .elementor-post__card {
  position: relative !important;
  overflow: hidden !important;
}

.related-cards .elementor-post__card img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  transform-origin: center center !important;
  transition: transform 0.4s ease !important;
}

.related-cards .elementor-post__card:hover img {
  transform: scale(1.1) !important;
}

/* post img */
.elementor-posts-container.elementor-has-item-ratio .elementor-post__thumbnail img {
    display: block !important;
    width: 100%;
    height: auto;
    left: unset !important;
    top: unset !important;
    transform: none!important;
}
/* Full height */
.e-con.e-flex>.e-con-inner {
    flex-wrap: nowrap;
}
/* Post Image Link */
.elementor-post__card .elementor-post__thumbnail__link {
  grid-area: thumbnail;
  margin-bottom: 0!important;
}

/* Post Badge - Make badge behave like inline-flex for tight spacing */
.elementor-post__card .elementor-post__badge {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0 !important;
  gap: 0.5rem;
  margin: 1rem auto 0 auto!important;
  color: var(--e-global-color-text);
  font-weight: 700;
  letter-spacing: 2px !important;
  background-color: transparent;
  padding: 2rem 2rem!important;
}

/* Post Category Icons - Insert custom icon after text */
.category-community .elementor-post__card .elementor-post__badge::after {
  content: '';
  display: inline-block;
  width: 1.75rem;
  height: 1.75rem;
  background-image: url('/wp-content/themes/breeze/assets/icons/THF_community_secondary_blue_icon.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
   padding-bottom: 2rem;
  margin-top:-20px;
}
.category-living .elementor-post__card .elementor-post__badge::after {
  content: '';
  display: inline-block;
   width: 1.75rem;
  height: 1.75rem;
  background-image: url('/wp-content/themes/breeze/assets/icons/THF_living_secondary_blue_icon.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
   padding-bottom: 2rem;
  margin-top:-20px;
}
.category-forest .elementor-post__card .elementor-post__badge::after {
  content: '';
  display: inline-block;
  width: 1.75rem;
  height: 1.75rem;
  background-image: url('/wp-content/themes/breeze/assets/icons/THF_forest_secondary_blue_icon.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
  padding-bottom: 2rem;
  margin-top:-20px;
}
#homesite-cards .homesite.community-campfire .elementor-post__card .elementor-post__badge::after {
  content: '';
  display: inline-block;
   width: 1.75rem;
  height: 1.75rem;
  background-image: url('/wp-content/themes/breeze/assets/icons/THF_homesites_primary_icon.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  flex-shrink: 0;
   padding-bottom: 2rem;
  margin-top:-20px;
}

/* Post Title */
.elementor-posts .elementor-post__card .elementor-post__title {
  margin-top: 2.5rem;
  line-height: 1.2;
  margin-bottom: 1rem !important;
  width: 100%;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  /* Gentle fade only at the very end */
  mask-image: linear-gradient(to right, black 98%, transparent 100%);
  -webkit-mask-image: linear-gradient(to right, black 98%, transparent 100%);
}
.elementor-post__text {
  grid-area: title;
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding: 0 2rem!important;
}

/* Post Tag */
.post-tags .elementor-widget-container .elementor-icon-list-items .elementor-icon-list-item {
  padding-left: 0!important;
}

/* Post a */
.elementor-post__title a {
  text-decoration: none;
}

/* Hover on Card Imgs */
/* Img container */
.elementor-posts .elementor-post__card {
  position: relative !important;
  overflow: hidden!important; 
}

/* Image inside the container */
.elementor-posts .elementor-post__card img {
  display: block !important;
  width: 100%;
  height: auto;
  transition: transform 0.4s ease !important;
  transform-origin: center center !important; /* Center zoom */
}

/* Hover effect */
.elementor-posts .elementor-post__card:hover img {
  transform: scale(1.1)!important; /* Increase the size */
}


/* =======================================================================
Text + Media
========================================================================== */
.text-media img {
  border-radius: 0;
}
@media (min-width:992px) {
  .text-media img {
    border-radius: 3px;
  }
}
/* featured icons text */
span.elementor-icon-box-title,
.elementor-icon-box-content {
  line-height: 1.3 !important;
}

/* =======================================================================
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 */
}
    
/* =======================================================================
   Gallery
========================================================================== */
/* Style the footer */
.elementor-slideshow__footer {
  width: 100%;
  z-index: 5;
  padding: 1rem;
  background-color: rgba(0, 128, 128, 0.5); /* semi-transparent teal */
  color: white;
  box-sizing: border-box;
  display: block;
}

/* =======================================================================
   Accordion
========================================================================== */
.elementor-widget-n-accordion .e-n-accordion-item-title-icon span {
    width: 26px;
}

@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: 23px;
  }
}
@media (min-width:1200px) {
    .elementor-widget-n-accordion .e-n-accordion-item-title-icon span {
    width: 26px;
  }
}

.e-n-accordion-item[open] .e-n-accordion-item-title {
  border-bottom: none !important;
}

