/*
 Theme Name:   Hello Elementor Child
 Theme URI:    https://elementor.com/
 Description:  Child theme for Hello Elementor
 Author:       Sujan
 Template:     hello-elementor
 Version:      1.0.0
*/


/* 🥰---Code NO: 1---❤️ */

html,body{
    overflow-x: hidden;
}

.lst-none ul{
    list-style-type: none !important;
}
.mix-blend-mode{
    mix-blend-mode: difference;
}

.fire-bg img {
    animation: flameWobble 6s infinite linear;
}

@keyframes flameWobble {
    0%{
        filter:blur(2px);
         opacity: 0;
    }
   
    10%{
        filter:blur(0px);
    }
     20%{
       
         opacity: 1;
    }
  100% {
    transform: scale(1,1.2) translate(0, -30px) rotate(-2deg);
      opacity: 0;
  }
}

.delay-6s img{
    animation-delay: .6s;
}

.hero{
     animation:bg 150s linear  infinite !important;
}
.bg-change-animation{
    animation:bg 100s linear  infinite !important;
}

@keyframes bg{
    to{
        background-position-y: 1000px;
    }
}


.marquee-content .elementor-widget-container {
    display: flex
;
    width: 5000px;
    transform: translateX(0);
    animation: marquee 30s linear infinite;
    white-space: nowrap;
    will-change: transform;
}

.marquee-right .elementor-widget-container {
    animation-direction: reverse;
}

@keyframes marquee{
    100% {
    transform: translateX(-2000px);
}
}

.btn-orrange .elementor-button{
    overflow:hidden !important;
    position: relative;
  z-index: 0;
}

.btn-orrange .elementor-button:before, .btn-orrange .elementor-button:after,
.btn-orrange .elementor-button .elementor-button-content-wrapper:before,
.btn-orrange .elementor-button .elementor-button-content-wrapper:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #040202;
  transition: all .5s ease;
  z-index:-1;
}
.btn-orrange .elementor-button:before {
  transform: translate(-100%, -100%);
}
.btn-orrange .elementor-button:after {
  transform: translate(-100%, 100%);
}
.btn-orrange .elementor-button .elementor-button-content-wrapper:before {
  transform: translate(100%, -100%);
}
.btn-orrange .elementor-button .elementor-button-content-wrapper:after {
  transform: translate(100%, 100%);
}

.btn-orrange .elementor-button:hover:before {
  transform: translate(-49%, -49%);
}
.btn-orrange .elementor-button:hover:after {
  transform: translate(-49%, 49%);
}
.btn-orrange .elementor-button:hover .elementor-button-content-wrapper:before {
  transform: translate(50%, -50%);
}
.btn-orrange .elementor-button:hover .elementor-button-content-wrapper:after {
  transform: translate(50%, 50%);
}

.count-wrapper .elementor-icon-box-icon .elementor-icon svg {
    height: fit-content;
}


.count-wrapper{
backdrop-filter: blur(15px);

}

.hero{
     animation:bg 150s linear  infinite !important;
}
.bg-change-animation{
    animation:bg 100s linear  infinite !important;
}

@keyframes bg{
    to{
        background-position-y: 1000px;
    }
}


.service-item:hover .hover-content {
   transform: translateY(0);
    opacity: 1;
    visibility: visible;
}

.hover-content {
   transform: translateY(40%);
    transition: all .4s ease;
    opacity: 0;
    visibility: hidden;
}


.membership {
    animation: bg2 200s linear infinite forwards;
}

@keyframes bg2{
    100% {
    background-position-X: 2000px;
}
}


.membership-btn .elementor-button {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.membership-btn {
    height: 100%;
}

.membership-btn .elementor-button-wrapper {
    height: 100%;
}



.membership-details ul.elementor-icon-list-items li.elementor-icon-list-item span.elementor-icon-list-icon svg {
    transition: all .4s linear !important;
}
.membership-details ul.elementor-icon-list-items li.elementor-icon-list-item:hover span.elementor-icon-list-icon svg {
    transform: rotate(45deg);
}


/* 🥰---Code NO: 2  ---❤️ */

.trainer-image img {
	width: 400px !important;
    height: 448px !important;
    object-fit: cover;
    object-position: center center;
    border-radius: 16px 16px 16px 16px;
}



/* 🥰---  Code NO: 3  ---❤️ */

/* ================================
   ELEMENTOR PRO NESTED TABS
   LEFT SIDE STYLING
================================ */

/* Base tab button */
.trainer-tabs .e-n-tab-title {
  background: transparent;
  color: #ffffff;
/*   padding: 28px 32px; */
/*   border-bottom: 1px solid #222; */
  transition: all 0.3s ease;
  position: relative;
  border-radius: 0;
}

/* First tab – top radius */
.trainer-tabs .e-n-tab-title:first-child {
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
}

/* Last tab – bottom radius */
.trainer-tabs .e-n-tab-title:last-child {
  border-bottom-left-radius: 16px;
  border-bottom-right-radius: 16px;
  border-bottom: none;
}

/* ACTIVE tab (aria-selected=true) */
.trainer-tabs .e-n-tab-title[aria-selected="true"] {
  background: #ffffff;
  color: #ff4d00 !important;
  border-radius: 16px;
  border-bottom: none;
 
}

/* 🥰---  Code NO: 4  ---❤️ */

/* Default role color */
.trainer-role {
    font-family: "DM Sans", Sans-serif;
    font-size: 18px !important;
    font-weight: 400 !important;
    text-transform: capitalize!important;
    line-height: 10px!important;
    letter-spacing: -0.02em !important;
    color: #e7e7e7 !important;
	padding-left: 20px;
}
/* 🔥 ACTIVE TAB – role color change */
.trainer-tabs .e-n-tab-title[aria-selected="true"] .trainer-role {
  color: #7d7d7d !important; /* তোমার brand color */
}
@media (max-width: 1024px) {
  .trainer-role {
    font-size: 12px !important;
    letter-spacing: 0.3px;
	  padding-left:0px !important;
	  
  }
}



/* 🥰---  Code NO: 5  ---❤️ */




.trainer-tabs .e-n-tab-title {
  display: flex;
  align-items: center;
}

.trainer-tabs .e-n-tab-title-text {
  display: flex;
  align-items: center;
  gap: 6px;
}

.trainer-tabs .e-n-tab-icon {
  margin-left: auto;
}

/* Tablet & below */
@media (max-width: 1024px) {

  /* text container column হবে */
  .trainer-tabs .e-n-tab-title-text {
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
	
  }
}


/* 🥰---  Code NO: 6  ---❤️ */




/* Tablet & Mobile */
@media (max-width: 1024px) {

  /* Tabs heading container */
  .trainer-tabs .e-n-tabs-heading {
    display: flex;
    width: 100%;
  }

  /* Each tab takes equal space */
  .trainer-tabs .e-n-tab-title {
    flex: 1;                 /* 🔥 main line */
    width: auto;
    box-sizing: border-box;
    justify-content: space-between;
  }

  /* Text block should not shrink */
  .trainer-tabs .e-n-tab-title-text {
    flex: 1;
  }

}
@media (max-width: 1024px) {
  .trainer-tabs .e-n-tabs-heading {
    flex-wrap: wrap;
  }

  .trainer-tabs .e-n-tab-title {
    flex: 0 0 100%;
  }
}



/* 🥰---  Code NO: 7  ---❤️ */


.second-text{
    color: #fff;
    font-weight: bold;
}


/* 🥰---  Code NO: 8  ---❤️ */

.text-hover-box:hover .hover-text span {
    color: #9c9c9c !important;
	transition: color 1s ease;
}

.text-hover-box:hover .hover-text p {
    color: #040202 !important;
	transition: color 0.5s ease;
}


/* 🥰---  Code NO: 9  ---❤️ */

/* Parent */
.schedule-row{
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    gap: 20px !important;
}

/* All children */
.schedule-row > *{
    flex: 0 0 auto !important;
    width: auto !important;
    white-space: nowrap !important;
}

/* 1st child */
.schedule-row > *:nth-child(1){
    min-width: 200px !important;
    text-align: left !important;
}

/* 2nd child */
.schedule-row > *:nth-child(2){
    min-width: 200px !important;
    text-align: left !important;
}

/* 3rd child */
.schedule-row > *:nth-child(3){
    min-width: 150px !important;
    text-align: left !important;
}


/* -------------------- */
/* 📱 Mobile Responsive */
/* -------------------- */

@media (max-width: 767px){
	
	.schedule-row{
        gap: 10px !important;
		display: flex !important;
    }
    .schedule-row > *:nth-child(1) ,
	.schedule-row > *:nth-child(2),
	.schedule-row > *:nth-child(3)
	{
        min-width: 50px !important;
        white-space: normal !important;
		text-align: left !important;
    }

}


/* 🥰---  Code NO: 10  ---❤️ */




/* Elementor Nested Tabs – Pure Fade Animation */
[id^="e-n-tab-content-"].e-active {
     animation: nestedTabFade 1.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;

}

@keyframes nestedTabFade {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* 🥰---  Code NO: 11  ---❤️ */


/* ===== Common ===== */
.icon-marquee-left,
.icon-marquee-right{
    overflow: hidden;
    position: relative;
}

.icon-marquee-left .elementor-icon-list-items,
.icon-marquee-right .elementor-icon-list-items{
    display: flex;
    flex-wrap: nowrap;
    width: max-content;
}

.icon-marquee-left .elementor-icon-list-item,
.icon-marquee-right .elementor-icon-list-item{
    white-space: nowrap;
    margin-right: 40px;
}

/* ===== Left to Right ===== */
.icon-marquee-left .elementor-icon-list-items{
    animation: marquee-ltr 55s linear infinite;
}

/* ===== Right to Left ===== */
.icon-marquee-right .elementor-icon-list-items{
    animation: marquee-rtl 55s linear infinite;
}

/* ===== Animations ===== */
@keyframes marquee-ltr{
    from{
        transform: translateX(-50%);
    }
    to{
        transform: translateX(0);
    }
}

@keyframes marquee-rtl{
    from{
        transform: translateX(0);
    }
    to{
        transform: translateX(-50%);
    }
}


/* 🥰---  Code NO: 12  ---❤️ */

/* Default: image normal */
.bw-parent .bw-image img{
    filter: grayscale(0%);
    transition: filter 0.4s ease;
}

/* Hover on container OR any text inside */
.bw-parent:hover .bw-image img{
    filter: grayscale(100%);
}


/* 🥰---  Code NO: 13  ---❤️ */


.right-black-soft{
    position: relative;
    overflow: hidden;
}

/* Very small black area + soft fade */
.right-black-soft::after{
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to left,
        rgba(0,0,0,0.99) 0%,   /* extreme right: strong black */
        rgba(0,0,0,0.45) 10%,   /* very small deep area */
        rgba(0,0,0,0.18) 15%,  /* soft blade */
        rgba(0,0,0,0.08) 25%,  /* very light shadow */
        rgba(0,0,0,0) 35%      /* image fully clear */
    );
    pointer-events: none;
    z-index: 2;
}

/* Image layer */
.right-black-soft img{
    display: block;
    width: 100%;
    height: auto;
}

/* 🥰---  Code NO: 14  ---❤️ */


/* Outer container */
.outer-hover {
    overflow: hidden;
}

/* Image normal state */
.outer-hover .inner-img img {
    transition: 
        transform 0.35s ease,
        filter 0.35s ease;
    will-change: transform, filter;
}

/* Outer hover → image effect */
.outer-hover:hover .inner-img img {
    transform: scale(1.1);

    filter:
        blur(0px)
        brightness(91%)
        contrast(100%)
        saturate(85%)
        hue-rotate(55deg);
}


/* 🥰---  Code NO: 15  ---❤️ */
/* from button css*/
#top {
	margin-top:15px;
}

/* 🥰---  Code NO: 16  ---❤️ */


/* ===============================
   NORMAL STATE – Full Border
================================ */
.e-n-accordion-item > summary.e-n-accordion-item-title {
     border: 1px solid #2E2E2E !important;
    border-radius: 8px !important;
}

/* ===============================
   ACTIVE STATE – Remove Bottom Border
================================ */
.e-n-accordion-item[open] > summary.e-n-accordion-item-title {
   
    border-radius: 8px 8px 0 0 !important;
}

/* ===============================
   CONTENT BORDER
================================ */
.e-n-accordion-item[open] > div[role="region"] {
   
    border-radius: 0 0 8px 8px !important;
}



/* 🥰---  Code NO: 16  ---❤️ */

/* service page background move  */

.img-move img{
    animation: imgMove 120s linear infinite;
}

@keyframes imgMove{
   to{
        transform: translateY(1000px);
    }
}



/* 🥰---  Code NO: 17  ---❤️ */

.icon-right-end .elementor-button-content-wrapper{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.icon-right-end .elementor-button-icon{
    margin-left: auto;
}


/* 🥰---  Code NO: 18  ---❤️ */

/* ===== Tab Buttons ===== */
.tab-btn a{
    cursor: pointer !important;
    transition: all 0.25s ease !important;
}

/* Active Button */
.tab-btn.active a{
    background-color: #EE4E00 !important;
    color: #ffffff !important;
   
}

/* ===== Tab Contents ===== */


/* Optional smooth text feel */
.tab-content *{
    transition: all 0.3s ease !important;
}

.tab-content{
    will-change: opacity !important;
}

/* 🥰---  Code NO: 19  ---❤️ */

/* TRUE CENTER BIRTH OVERLAY */
.focus-blur-hover .elementor-gallery-item::before{
    content:'';
    position:absolute;
    top:50%;
    left:50%;
    width:0;
    height:0;
    background: rgba(160, 40, 40, 0.15);
    backdrop-filter: blur(6px);
    border-radius: 12px;
    opacity:0;
    transform: translate(-50%, -50%);
    transition:
        width 0.7s cubic-bezier(.16,.84,.44,1),
        height 0.7s cubic-bezier(.16,.84,.44,1),
        opacity 0.5s ease;
    z-index:1;
    box-shadow: inset 0 0 0 1px rgba(255, 60, 0, 1);

	
}


/* CENTER ICON – synced with overlay */
.focus-blur-hover .elementor-gallery-item::after{
    content:'\f06e';
    font-family:"Font Awesome 5 Free";
    font-weight:900;
    position:absolute;
    top:50%;
    left:50%;
    width:56px;
    height:56px;
    background:#ff5a2a;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    opacity:0;
    transform: translate(-50%, -50%) scale(0);
    transition:
        opacity 0.5s ease,
        transform 0.6s cubic-bezier(.16,.84,.44,1);
    z-index:2;
}

/* Hover */
.focus-blur-hover .elementor-gallery-item:hover::after{
    opacity:1;
    transform: translate(-50%, -50%) scale(1);
}


/* HOVER STATE */
.focus-blur-hover .elementor-gallery-item:hover::before{
    width: calc(100% - 66px);
    height: calc(100% - 66px);
    opacity:1;
}

.focus-blur-hover .elementor-gallery-item:hover::after{
    opacity:1;
    transform: translate(-50%, -50%) scale(1);
}

.focus-blur-hover .elementor-gallery-item:hover img{
    transform: scale(1.03);
}


/* 🥰---  Code NO: 18  ---❤️ */





/* Hide default option when dropdown opens */
#form-field-field_a31a82f option[value="default"]{
    display: none;
}



