/*
Theme Name: Avada Child
Template: Avada
Version: 1.0
*/

/* Add your custom CSS below this line */

.imgCaro {
    aspect-ratio: 3 / 2;
    width: 100%;
    max-width: 100%;
    height: auto;          /* Let aspect-ratio drive height, not the parent */
    overflow: hidden;
    border-radius: 8px;
    display: block;
    position: relative;
}

/* Kill autoheight jumping — override Swiper's inline height on the wrapper */
.imgCaro .swiper-autoheight,
.imgCaro .swiper-autoheight .swiper-wrapper {
    height: 100% !important;
    align-items: center;      /* Centre slides vertically within fixed height */
}

/* Slides must fill the full fixed height */
.imgCaro .swiper-slide {
    height: 100% !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Item wrappers fill the slide */
.imgCaro .fusion-carousel-item-wrapper,
.imgCaro .fusion-image-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

/* Images fill and centre without distortion */
.imgCaro .fusion-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}


/* Pretty wrap for body text and headings site-wide */
p,
h1, h2, h3, h4, h5, h6,
li,
.fusion-text,
.fusion-column .fusion-builder-column-content {
    text-wrap: balance !important;
    text-wrap: pretty !important;
}

/* Override: balance for headings and text inside .tPretty */
.tPretty,
.tPretty p,
.tPretty h1, .tPretty h2, .tPretty h3,
.tPretty h4, .tPretty h5, .tPretty h6,
.tPretty li,
.tPretty .fusion-text {
    text-wrap: balance !important;  /* fallback */
    text-wrap: pretty !important;
}

/* Only apply 1600px alignment from 1200px viewport and up */
@media (min-width: 1200px) {
    .nbWideRow .awb-column__content {
        max-width: 1600px !important;
    }

    /* Hero content aligned with header (same 1600px container) */
    .nbHeroRow.fusion-builder-row-inner,
    .nbHeroRow.fusion-row {
        max-width: 1600px !important;
        width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box;
    }
}



/* Align first column with 1600px layout — only when the fullwidth container has class headerMenu (add that class in Avada to that section). */
.headerMenu.fusion-fullwidth .fusion-builder-row-inner .fusion-layout-column:first-child .fusion-column-wrapper {
    padding-left: max(24px, calc((100vw - 1600px) / 2 + 0px)) !important;
    box-sizing: border-box;
}

@media (max-width: 810px) {
    .headerMenu.fusion-fullwidth .fusion-builder-row-inner .fusion-layout-column:first-child .fusion-column-wrapper {
        padding-left: max(16px, calc((100vw - 1600px) / 2 + 0px)) !important;
    }
}


/* nbLongRow / nbLongRow2: max-width 1600px only at 1200px+; margins commented out (Avada container quirks) */
@media (min-width: 1200px) {
    .fusion-flex-container .fusion-row .fusion-flex-column.nbLongRow {
        max-width: 1600px !important;
        /* margin-left: calc(5%); */
        /* margin-right: calc(-4% / 2); */
    }
    .fusion-flex-container .fusion-row .fusion-flex-column.nbLongRow2 {
        max-width: 1600px !important;
    }
}

.imgFill{
  width: 100%;
  height: 180px; /* adjust to your preferred height */
  overflow: hidden;
  position: relative;
}

.imgFill img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.imgBox{
  max-height: 180px; /* adjust to your preferred height */
  overflow: hidden;
  position: relative;
}

.imgCar img {
  border-radius: 8px;
}

.imgPill{
  width: 100%;
  height: 300px; /* adjust to your preferred height */
  overflow: hidden;
  position: relative;
}

/* sticky header */
.headerMenu {
    margin-top: -82px !important;
}

@media (max-width: 810px) {
    .headerMenu {
        margin-top: -92px !important;
    }
}

/* sticky header */
.headerBlog {
    margin-top: -60px !important;
    
}
/* sticky header */
.headerUp {
    z-index: 60;
}

.fusion-accordian .fusion-panel  {
    border-radius: 12px;
}

/* Replace Avada ToTop arrow with inline SVG */
#toTop.fusion-top-top-link::before{
    content: "";
    display: block;
    width: 24px;
    height: 24px;
  
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  
    background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.6251 19C15.6251 19.4309 15.4542 19.8442 15.1495 20.1489C14.8448 20.4537 14.4311 20.625 14.0001 20.625H10.0001C9.5692 20.625 9.15591 20.4536 8.8512 20.1489C8.54649 19.8442 8.37516 19.4309 8.37512 19V13C8.37512 12.9005 8.33559 12.8052 8.26526 12.7349C8.19493 12.6645 8.09958 12.625 8.00012 12.625H4.70715C4.44379 12.625 4.18642 12.5467 3.96741 12.4004C3.74835 12.2541 3.57753 12.0461 3.47669 11.8027C3.37585 11.5593 3.34909 11.2911 3.40051 11.0327C3.45193 10.7744 3.57906 10.5373 3.76526 10.3511L10.8512 3.26514C11.1559 2.96053 11.5693 2.7891 12.0001 2.78906C12.4309 2.78906 12.8443 2.9601 13.149 3.26465L20.235 10.3511C20.4213 10.5373 20.5483 10.7744 20.5997 11.0327C20.6512 11.2911 20.6249 11.5593 20.524 11.8027C20.4232 12.0461 20.2524 12.254 20.0333 12.4004C19.8142 12.5467 19.5566 12.6251 19.2931 12.625H16.0001C15.9007 12.625 15.8053 12.6646 15.735 12.7349C15.6648 12.8052 15.6251 12.9006 15.6251 13V19Z" fill="white" fill-opacity="0.2"/><path d="M14.3751 13C14.3751 12.569 14.5465 12.1553 14.8512 11.8506C15.1559 11.5459 15.5692 11.375 16.0001 11.375H19.2936C19.3097 11.375 19.3256 11.3698 19.339 11.3608C19.3524 11.3518 19.3631 11.3392 19.3693 11.3242C19.3755 11.3092 19.3768 11.2927 19.3737 11.2769C19.3705 11.261 19.3627 11.2463 19.3512 11.2349L12.2653 4.14893C12.1949 4.07865 12.0995 4.03906 12.0001 4.03906C11.9007 4.0391 11.8053 4.07866 11.735 4.14893L4.64905 11.2349C4.63761 11.2463 4.62975 11.261 4.62659 11.2769C4.62343 11.2928 4.62527 11.3092 4.63147 11.3242C4.63768 11.3392 4.64827 11.3518 4.66174 11.3608C4.67523 11.3698 4.69094 11.375 4.70715 11.375H8.00012C8.4311 11.375 8.84479 11.5458 9.14954 11.8506C9.45428 12.1553 9.62512 12.569 9.62512 13V19C9.62516 19.0994 9.6647 19.1948 9.73499 19.2651C9.80528 19.3354 9.90072 19.375 10.0001 19.375H14.0001C14.0995 19.375 14.1949 19.3354 14.2653 19.2651C14.3356 19.1948 14.3751 19.0994 14.3751 19V13ZM15.6251 19C15.6251 19.4309 15.4542 19.8442 15.1495 20.1489C14.8448 20.4537 14.4311 20.625 14.0001 20.625H10.0001C9.5692 20.625 9.15591 20.4536 8.8512 20.1489C8.54649 19.8442 8.37516 19.4309 8.37512 19V13C8.37512 12.9005 8.33559 12.8052 8.26526 12.7349C8.19493 12.6645 8.09958 12.625 8.00012 12.625H4.70715C4.44379 12.625 4.18642 12.5467 3.96741 12.4004C3.74835 12.2541 3.57753 12.0461 3.47669 11.8027C3.37585 11.5593 3.34909 11.2911 3.40051 11.0327C3.45193 10.7744 3.57906 10.5373 3.76526 10.3511L10.8512 3.26514V3.26465C11.1559 2.96004 11.5693 2.7891 12.0001 2.78906C12.4309 2.78906 12.8443 2.9601 13.149 3.26465V3.26514L20.235 10.3511C20.4213 10.5373 20.5483 10.7744 20.5997 11.0327C20.6512 11.2911 20.6249 11.5593 20.524 11.8027C20.4232 12.0461 20.2524 12.254 20.0333 12.4004C19.8142 12.5467 19.5566 12.6251 19.2931 12.625H16.0001C15.9007 12.625 15.8053 12.6646 15.735 12.7349C15.6648 12.8052 15.6251 12.9006 15.6251 13V19Z" fill="white"/></svg>');
}

  #toTop{
    display: flex;
    align-items: center;
    justify-content: center;
  }

  /* Fixed frame; image fills via object-fit (needs a definite box — see img rules). */
  .imgBlog {
    width: 100%;
    height: 260px;
    min-height: 260px;
    overflow: hidden;
    position: relative;
  }

  /*
   * Theme + WP often use max-width:100%; height:auto on images, which preserves
   * aspect ratio inside the width and leaves empty space in a fixed-height box.
   * Absolute positioning + object-fit: cover forces the img to use the full frame.
   */
  .imgBlog img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    object-fit: cover;
    object-position: center;
    display: block;
  }

  .imgSub{
    height: 380px; /* adjust to your preferred height */
    overflow: hidden;
    position: relative;
  }

  .imgDub{
    height: 360px; /* adjust to your preferred height */
    overflow: hidden;
    position: relative;

    @media (max-width: 620px) {
      height: auto;
    }
  }

  .imgPop img{
    height: 340px; /* adjust to your preferred height */
    overflow: hidden;
    object-fit: cover;
    object-position: center;
    display: block;
    
  }

  .imgCards {
    overflow: hidden;
  }

  .imgCards img,
  img.imgCards {
   
    display: block;
    max-width: 100%;
    max-height: 360px;
    width: auto;
    height: auto;
    
    margin-inline: auto;
  }
  
  .colImg{
    overflow: hidden;
    height: 360px;
    position: relative;
    
  }

  .colImg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
  }

  /*
   * AWB main nav — “around the world” label loop (::after ghost + data-label from JS).
   * Markup: <li class="hoverText awb-menu__main-li"><a class="awb-menu__main-a"><span class="menu-text">Blog</span></a></li>
   * Do not set overflow on <a>/<li> here — Avada uses overflow:visible for dropdowns.
   * JS: menu-text-hover-loop.js stamps data-label on li.hoverText .menu-text (DOMContentLoaded).
   */
  li.hoverText .menu-text {
    display: inline-block;
    position: relative;
    overflow: hidden;
    line-height: 1.2;
    max-height: 1.2em;
    vertical-align: middle;
    transition: transform 0.6s cubic-bezier(0.27, 0, 0.175, 1 );
  }

  li.hoverText .menu-text::after {
    content: attr(data-label);
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    text-align: center;
    line-height: 1.2;
  }

  li.hoverText .awb-menu__main-a:hover .menu-text,
  li.hoverText .awb-menu__main-a:focus-visible .menu-text {
    transform: translateY(-15%);
  }

  @media (prefers-reduced-motion: reduce) {
    li.hoverText .menu-text {
      transition: none;
      transform: none;
    }

    li.hoverText .menu-text::after {
      content: none;
    }

    li.hoverText .awb-menu__main-a:hover .menu-text,
    li.hoverText .awb-menu__main-a:focus-visible .menu-text {
      transform: none;
    }
  }


  .tH{
    max-width: 24ch;
  text-wrap: balance;
  }

  .tP{
    max-width: 80ch;
  text-wrap: balance;
  }

  .tHi{
    max-width: 64ch;
  text-wrap: pretty !important;
  }

  .blogT p,
  .blogT h3, .blogT h4, .blogT h5, .blogT h6,
  .blogT li{
    max-width: 900px;
    text-wrap: auto !important;
  }

  .blogT h1, .blogT h2{
    max-width: 900px;
    text-wrap: balance !important;
  }
