/*
 Theme Name: Divi Child
 Theme URI: 
 Description: A child theme for Divi
 Author: Sreelakshmi
 Author URI: 
 Template: Divi
 Version: 1.0.0
*/

h1,h2,h3{
	padding-bottom:0px !important;
}
/* ======================================================================
   SECTION: Header Menu
   ====================================================================== */

@media (min-width: 768px) {
	.social-icons-module{
    position: absolute !important;    
	bottom: 84px !important;    
	left: 50% !important;    
	transform: translateX(-50%) !important;
}
.header-clmn1 {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}
.header-social-icons{
    display: grid;
   
    justify-content: center;
    gap: 20px;
}

    /* Hide full desktop menu */
    .sidebar-navigation .et_pb_menu__menu {
        display: none !important;
    }

    /* Show hamburger icon */
    .hamburger-icon {
        display: block !important;
        cursor: pointer;
    }

    /* When expanded, show menu */
    .sidebar-navigation.expanded .et_pb_menu__menu {
        display: block !important;
        position: absolute;
        left: 0;
        top: 100%;
        z-index: 9999;
        width: 400px;
        padding-left: 40px;
    }

    /* Default collapsed sidebar width */
    .section-header {
        width: 50px !important;
        transition: width 0.4s ease;
    }

    /* Expanded width */
    .section-header.section-expanded {
        width: 400px !important; /* 50px + 350px */
    }
/* Hide the "Explore Now" text when the menu is open */
.section-expanded .explore-text {
    display: none; /* hides the text */
}

/* Move the back arrow to the left when the menu is expanded */
.section-expanded .hamburger-icon img {
    float: left; /* floats the back arrow to the left side */
}
/* Make the UL inside sidebar-navigation display as block */
.sidebar-navigation ul {
    display: block !important; /* ensures the list takes full width and stacks vertically */
	list-style: none;
}
.sidebar-navigation li {
   margin-top: 20px !important; /* ensures the list takes full width and stacks vertically */
}
.sidebar-navigation a {
   padding-bottom: 0px !important; /* ensures the list takes full width and stacks vertically */
}
/* When menu expands, move the social icons to bottom-left */
.section-expanded .social-icons-module {
    position: absolute !important; /* allow manual positioning */
    bottom: 84px !important;       /* vertical position */
    left: 0 !important;            /* stick to the left edge */
    transform: none !important;    /* prevent shifting left */
	padding-left: 40px;
	
	 display: block !important;
}
/* When the menu/section is expanded, style the social icons container */
.section-expanded .header-social-icons {
    display: flex;               /* Arrange icons horizontally */
    justify-content: center;     /* Center icons horizontally */
    gap: 20px;                   /* Space between each icon */
    align-items: center;         /* Vertically align icons in the center */
}
/* Hide Divi's default mobile hamburger icon */
.mobile_menu_bar {
    display: none; /* prevents Divi's mobile menu icon from appearing */
}

/* Hide Divi's built-in mobile dropdown menu */
#mobile_menu1 {
    display: none !important; /* removes Divi's default mobile menu container */
}
.sidebar-navigation li a {
    position: relative;
    display: inline-block;
    
}

.sidebar-navigation li a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: #fff;
	
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.35s ease;
}

.sidebar-navigation li a:hover::after {
    color:#fff !important;

    transform: scaleX(1);
}
	.sidebar-navigation li a:hover{
	opacity:1 !important;
	    padding-left: 5px;
    padding-right: 5px;
	}
}
@media (max-width: 980px) {
    html,
    body {
        overflow-x: hidden;
    }
}

/* MOBILE ONLY – Hide section header initially */
@media (max-width: 767px) {

/* ------------------------------------
   Section Header Display Controls
------------------------------------ */
.section-header { 
    display:none; 
} 

.section-header.expanded { 
    display:block; 
} 

/* ------------------------------------
   Explore Text & Sidebar Navigation
------------------------------------ */
.explore-text { 
    display:none !important; 
} 

.sidebar-navigation { 
    display:block !important; 
} 

/* ------------------------------------
   Mobile Menu Style
------------------------------------ */
#mobile_menu1 { 
    display: block; 
    background: transparent; 
    padding:0px; 
    border: none !important; 
    box-shadow: none !important; 
    -moz-box-shadow: none !important; 
    -webkit-box-shadow: none !important; 
} 

/* ------------------------------------
   Header Column Structure
------------------------------------ */
.header-clmn1 { 
    position: relative !important; 
    min-height: 100vh !important; 
} 

/* ------------------------------------
   Social Icons Layout
------------------------------------ */
.social-icons-module .header-social-icons { 
    display: flex; 
    gap: 40px; 
    align-items: center; 
} 

/* ------------------------------------
   Hide Mobile Menu Icon
------------------------------------ */
.mobile_menu_bar { 
    display:none; 
} 

/* ------------------------------------
   Two Column Mobile Adjustments
------------------------------------ */
html .et-db .two-col-mob .et_pb_column { 
    width:47.25% !important; 
} 

html .et-db .two-col-mob .et_pb_column:nth-last-child(-n+2) { 
    margin-bottom:0; 
} 

html .et-db .two-col-mob .et_pb_column:not(:nth-child(2n)) { 
    margin-right:5.5% !important; 
} 

/* ------------------------------------
   Secondary Header Row
------------------------------------ */
.secondary-header-row { 
    display: flex !important; 
    flex-direction: column-reverse !important; 
    gap:0px; 
} 

/* ------------------------------------
   Hamburger Icon Click Fix
------------------------------------ */
.hamburger-icon { 
    pointer-events: none; 
} 

.hamburger-icon img { 
    pointer-events: auto; 
    cursor: pointer; 
} 

.section-header .hamburger-icon img { 
    cursor: pointer; 
    width: 30px; 
    height: auto; 
} 

/* ------------------------------------
   Mobile Menu List Items
------------------------------------ */
#mobile_menu1 li a { 
    border-bottom: 1px solid rgba(0, 0, 0, .03); 
    color: #666; 
    padding: 0px 0px 30px 40px !important; 
    display: block; 
}

/* ------------------------------------
   Fullscreen Section Header Override
------------------------------------ */
.section-header {
    display: none;
    position: absolute !important;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh !important;
    overflow-y: auto !important;
    background: #fff;
    z-index: 9999;
}

/* ------------------------------------
   Sidebar Navigation Height
------------------------------------ */
.sidebar-navigation{
    height:520px !important;
}

/* ------------------------------------
   Social Icons Positioning
------------------------------------ */
.social-icons-module {
    position: relative !important;
    bottom: 40px !important;
    left: 0px !important;
    padding-left:40px;
    z-index: 10000 !important;
}

}
/* ------------------------------------
  Home page
------------------------------------ */
/* ------------------------------------
   Media Query: Hero Row (430px to 767px)
------------------------------------ */
@media (min-width: 431px) and (max-width: 767px) {
    .hero-row {
        background-size: auto !important;
    }
}

/* ------------------------------------
   Font Weight 400 Fix
------------------------------------ */
#font-400{
    font-weight: 400;	
}

/* ------------------------------------
   Flex Column Vertical Gap Reset
------------------------------------ */
.et_flex_column{
    --vertical-gap: 0 !important;
}
.et_flex_section {
	--vertical-gap: 0 !important;
}
/* ------------------------------------
   Media Query: 981px to 1255px
------------------------------------ */
@media (min-width: 768px) and (max-width: 1255px) {
    .row-block {    
        flex-direction: column;
    }
    
    .row-block .et_pb_column {
        width: 100% !important;
    }
	.entrepreneurs-module{
		align-self: end !important;
	}
}
/* Adjust Achievement Text Size */
/* --------------------------------------------
   Tablet Layout (981px to 1273px)
   Adjust primary top text size
-------------------------------------------- */
@media (min-width: 981px) and (max-width: 1279px) {
    .achievement-row .primary-top-text {
        font-size: 39px !important;
    }
	.text-font-117 h2{
		 font-size: 98px !important;
	}
}


/* --------------------------------------------
   Mobile Layout (max-width: 767px)
   Fix empty columns + remove left padding
-------------------------------------------- */
@media (max-width: 767px) {
    .achievement-row .et_pb_column_empty {
        display: block !important;
        min-height: 1px !important;
    }

    /* Mobile blurb description padding fix */
    .mentor-coach .et_pb_blurb_description {
        padding-left: 0px !important;
		padding-top:10px !important;
    }
}
@media (max-width: 980px) {
    #multi-column-row {
        display: block !important;
    }
}

/* --------------------------------------------
   Mentor / Coach Heading Styles
-------------------------------------------- */
.mentor-coach h4 {
    padding-bottom: 0px !important;
    white-space: nowrap;
}


/* --------------------------------------------
   Mentor / Coach Description Padding
-------------------------------------------- */
.mentor-coach .et_pb_blurb_description {
    padding-left: 14px;
}



/* ----------------------------------------------------------
   Wrapper for thumbnail + play button + iframe
   Fixed width + height based on your requirement
----------------------------------------------------------- */
.custom-youtube-wrap {
  position: relative;
    aspect-ratio: 212 / 121; /* Maintains proportion if resized */
  cursor: pointer;
  overflow: hidden;
}

/* ----------------------------------------------------------
   Thumbnail image
   Will auto-fit inside the fixed wrapper
----------------------------------------------------------- */
.custom-youtube-wrap .yt-thumbnail {
  width: 100%;         /* Fill the wrapper width */
  height: 100%;        /* Fill the wrapper height */
  object-fit: cover;   /* Ensures thumbnail always fits without distortion */
  display: block;
}

/* ----------------------------------------------------------
   Custom Play Button (your SVG)
   Centered inside fixed container
----------------------------------------------------------- */
.yt-custom-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 80px;     /* Adjust as needed */
  height: 80px;
  background: url('https://pm.devboldd.com/wp-content/uploads/2025/12/play-button.svg')
              no-repeat center center / contain;
  pointer-events: none;
}

/* ----------------------------------------------------------
   Iframe also needs to fit inside 424×242 space
----------------------------------------------------------- */
.custom-youtube-wrap iframe {
  width: 100%;
  height: 100%;
  border: 0;
}
/* ==========================================
   Tablet & Mobile (max-width: 980px)
   Column Gradient – Corner Icon (::before)
========================================== */
@media (max-width: 980px) {

    .column-gradient {
        position: relative;   /* anchor for ::before */
    }

    .column-gradient::before {
        content: "";
        position: absolute;
        bottom: 20px;
        left: 20px;

        width: 60px;
        height: 30px;

        background-image: url("/wp-content/uploads/2025/12/corner.svg");
        background-repeat: no-repeat;
        background-position: bottom left;
        background-size: contain;

        pointer-events: none;
    }

}

/* ==========================================================
   Adjust background-size for .enterpreneur-row 
   ONLY between 555px and 767px
   ========================================================== */
@media (min-width: 555px) and (max-width: 767px) {
    .enterpreneur-row {
        background-size: 53% !important; /* Set background size */
    }
}
/* ================================
   MEDIA QUERY: max-width 429px
   Applies only on screens 429px and below
================================ */
@media (max-width: 429px) {

    /* Reduce H2 heading size on small screens */
    h2 {
        font-size: 40px !important;      /* Adjust font size if needed */
        line-height: 44px !important;    /* Maintain readable spacing */
    }

    /* Adjust entrepreneur body text for small screens */
    .entrepreneur-body-text {
        font-size: 35px !important;      /* Scales text for mobile */
        line-height: 39px !important;    /* Balanced line height */
    }
}
/* ============================================
   MEDIA QUERY: 768px to 818px
   Applies only between tablet sizes
============================================ */
@media (min-width: 768px) and (max-width: 818px) {

    /* Adjust H2 heading size for mid-tablet range */
   .home h2 {
        font-size: 80px !important;     /* Set larger font size */
        line-height: 94px !important;   /* Maintain proper spacing */
    }
}
/* ==========================================
  Publications/Patents - Done
========================================== */
/* ==========================================
   Vertical center border between 2 columns
   Border includes 10px top + bottom spacing
========================================== */

/* ==========================================
   Apply spacing only between 768px and 980px
========================================== */
@media (min-width: 981px) {
/* Extra spacing for right column */
.two-col-border .et_pb_column:last-child {
    padding-left: 50px;
}

/* Create border line using pseudo-element */
.two-col-border .et_pb_column:first-child {
    padding-right: 50px; /* space from border */
}
.two-col-border {
    display: flex;
    position: relative;
}

.two-col-border .et_pb_column {
    position: relative;
}


.two-col-border .et_pb_column:first-child::after {
    content: "";
    position: absolute;
    right: 0;
    top: 10px;             /* TOP padding */
    bottom: 10px;          /* BOTTOM padding */
    width: 1px;            /* thickness of vertical line */
    background-color: #6F6F6F; /* border color */
}
}
/* ==========================================
   Apply spacing only between 768px and 980px
========================================== */
@media (min-width: 768px) and (max-width: 980px) {

    /* Extra spacing for right column */
    .two-col-border .et_pb_column:last-child {
        padding-left: 35px;   /* spacing on right column */
    }

    /* Spacing for left column before the border line */
    .two-col-border .et_pb_column:first-child {
        padding-right: 35px;  /* spacing before border */
    }
	.two-col-border {
    display: flex;
    position: relative;
}

.two-col-border .et_pb_column {
    position: relative;
}


.two-col-border .et_pb_column:first-child::after {
    content: "";
    position: absolute;
    right: 0;
    top: 10px;             /* TOP padding */
    bottom: 10px;          /* BOTTOM padding */
    width: 1px;            /* thickness of vertical line */
    background-color: #6F6F6F; /* border color */
}

}
/* ============================================================
   ABOUT PAGE
   Gradient Bottom Border (709px wide, 2px height)
   ============================================================ */

.about-hero-section {
    position: relative; /* Needed so the gradient border can be positioned inside */
}

/* ----- Bottom Gradient Border Line ----- */
.about-hero-section::after {
    content: "";
    position: absolute;
    bottom: 0;           /* Sticks to the bottom of the hero section */
    left: 0;             /* Aligns the gradient line to the left */
    height: 2px;         /* Thickness of the border line */
    
    /* Gradient colors from red → orange at 262 degrees */
    background: linear-gradient(262deg, #E83C38 7.64%, #FF9B25 27%);
}
/* Media query – tablet & above (768px and up) */
@media (min-width: 768px) {
    .about-hero-section::after {
        width: 709px;     /* custom width for desktop/tablet */
    }
}
/* Media query – tablet & above (768px and up) */
@media (max-width: 767px) {
    .about-hero-section::after {
        width: 360px !important;     /* custom width for desktop/tablet */
    }
}
.inside-bullet-list {
    list-style-position: inside;
}
.bullet-list ul{
    padding: 0px !important
	list-style-position: inside;
}
/* ==========================================
   Inside Bullet List – 10px gap
========================================== */
.inside-bullet-list {
    list-style: none;     /* remove native marker */
    padding-left: 0;
    margin-left: 0;
}

.inside-bullet-list li {
    position: relative;
    padding-left: 20px;   /* bullet width + 10px gap */
    margin-left: 0;
}

/* Custom bullet */
.inside-bullet-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0.15em;
    font-size: 1em;
    line-height: 1;
}
.inside-bullet-list{
padding-bottom:0px !important;
}
/* ==========================================
   Remove bullet marker completely (no spacing)
========================================== */
.inside-bullet-list {
    list-style: none !important;   /* remove bullets */
    padding-left: 0 !important;    /* remove left gap */
    margin-left: 0 !important;
}


/* Kill ::marker explicitly (Chromium safe) */
.inside-bullet-list li::marker {
    content: "";
}

/* When hovering any column with class .clmn3 */
.clmn3:hover p {
    color: #000 !important; /* Text color changes to black */
}
/*   Blurb Image Module – Left & Right Padding*/

.blurb-image-module .et_pb_blurb_container{
    padding-left: 25px;  /* Space on the left */
    padding-right: 25px; /* Space on the right */
}
/* ==========================================
   Tablet & Mobile (max-width: 980px)
   Personality Module – Background Image (::before)
========================================== */
@media (min-width: 768px) and (max-width: 980px) {

    .personality-module {
        position: relative;      /* Required for ::before */
        overflow: hidden;        /* Prevent overflow */
    }

    /* Background image layer */
.personality-module::before {
content: "";
        position: absolute;
        top: 0;
        right: 20px;
        transform: translateY(190px);
        width: 250px;
        height: 250px;
        background-image: url(/wp-content/uploads/2025/12/PrakashMugali.webp);
        background-repeat: no-repeat;
        background-size: contain;
}


    /* Keep content above background */
    .personality-module > * {
        position: relative;
        z-index: 1;
    }

}




    /* Keep content above background */
    .personality-module > * {
        position: relative;
        z-index: 1;
    }

}
/* =========================================
      Entrepreneurship page
========================================= */	

@media (max-width: 981px) {
/* Bottom border aligned to right of section */
.white-divider-row{
    position: relative;
}

/* Bottom border line */
.white-divider-row::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;              /* align to right edge */
    width: 958px;          /* required border width */
    height: 2px;           /* border thickness */
    background: #fff;      /* border color */
}
}
/* ==========================================
   Mobile only (max-width: 767px)
   Bottom border aligned to right of section
========================================== */
@media (max-width: 767px) {

    .white-divider-row {
        position: relative;
    }

    /* Bottom border line */
    .white-divider-row::after {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;            /* align to right edge */
        width: 390px;        /* reduced width for mobile */
        height: 2px;         /* border thickness */
        background: #fff;    /* border color */
    }

}

/*   Text Utility – Extra Bold (900)*/
.text-900{
font-family: 'Avenir';
font-weight: 900 !important;
color:#F43E2E;
}
/* Orange text color */
.text-orange {
    color: #F43E2E;
}
.text-700{
font-weight: 700;
}
.text-900-white{
font-weight: 900;
}

/* Gradient Column – Bottom Left Corner Image*/
@media (min-width: 981px) {
.column-gradient::before {
    content: "";
    position: absolute;
    bottom: 40px;
    left: 40px;
    width: 60px;
    height: 30px;
    background-image: url("/wp-content/uploads/2025/12/corner.svg");
    background-repeat: no-repeat;
    background-position: bottom left;
    background-size: contain;
    pointer-events: none;
}
}
/* =========================================
   Contact Form 7 – Wrapper
========================================= */
.cf7-form-wrapper {
    width: 100%;
}

/* Row layout */
.cf7-row {
    display: flex;
    gap: 40px;
    margin-bottom: 25px;
}

/* Two-column grid */
.cf7-col {
    width: 50%;
}

/* Full-width row */
.cf7-row.full-width {
    flex-direction: column;
}

/* Form labels */
.cf7-form-wrapper label {
    font-size: 14px;
    color: #000;
    margin-bottom: 6px;
    display: block;
}

/* Input and textarea fields */
.cf7-form-wrapper input,
.cf7-form-wrapper textarea {
    width: 100%;
    border: none;
    border-bottom: 1px solid #ccc;
    padding: 10px 0;
    font-size: 14px;
    background: transparent;
}

/* Textarea specific styles */
.cf7-form-wrapper textarea {
    min-height: 120px;
    resize: none;
}

/* Submit button */
.cf7-submit {
    background: #F43E2E;
    color: #fff;
    border: none;
    padding: 14px 28px;
    font-size: 14px;
    cursor: pointer;
}

/* Mobile responsive */
@media (max-width: 767px) {

    .cf7-row {
        flex-direction: column;
        gap: 20px;
    }

    .cf7-col {
        width: 100%;
    }
}
/* =========================================
   YouTube Video – Preview & Popup
========================================= */
.youtube-video-wrapper {
  position: relative;
  z-index: 1; /* ensures below popup */
  cursor: pointer;
}

.youtube-video-wrapper .autoplay-preview {
  width: 100%;
  aspect-ratio: 16/9;
  display: block;
}

.youtube-video-wrapper .video-overlay {
  position: absolute;
  inset: 0;
  cursor: pointer;
}

/* popup overlay */
.video-popup-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.85);
  z-index: 99999 !important; /* very high, above all columns/videos */
  justify-content: center;
  align-items: center;
}

/* popup content container */
.video-popup-content {
  position: relative;
  max-width: 90%;
  width: 800px;
}

/* iframe video inside popup */
.video-popup-content .popup-video {
  width: 100%;
  aspect-ratio: 16/9;
}

/* close button */
.video-popup-content .popup-close {
  position: absolute;
  top: -20px;
  right: -20px;
  font-size: 32px;
  color: #fff;
  cursor: pointer;
}
/**********************************************
 * Mentoring page
 * *******************************************/
/* =====================================
   Process Item (Divi Text Module)
===================================== */
.process-item {
  position: relative;
}

/* IMPORTANT: Target Divi inner wrapper */
.process-item .et_pb_text_inner {
  position: relative;
  padding-left: 40px; /* space for bullet */
}

/* Bullet dot – vertically centered */
.process-item .et_pb_text_inner::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
  height: 8px;
  background: #ffffff;
  border-radius: 50%;
}
@media (min-width: 981px) {

/* =====================================
   Title
===================================== */
.process-title {
color: #FFF;
font-family: Avenir;
font-size: 40px !important;
font-style: normal;
font-weight: 350;
line-height: 45px !important; /* 112.5% */
}

/* =====================================
   Description
===================================== */
.process-item p {
  margin: 10px 0 0;
color: #FFF;
font-family: Avenir;
font-size: 20px;
font-style: normal;
font-weight: 400;
line-height: normal;
}
}
@media (max-width: 767px) {

/* =====================================
   Title
===================================== */
.process-title {
color: #FFF;
font-family: Avenir;
font-size: 30px !important;
font-style: normal;
font-weight: 350;
line-height: 35px !important; /* 112.5% */
}

/* =====================================
   Description
===================================== */
.process-item p {
  margin: 10px 0 0;
color: #FFF;
font-family: Avenir;
font-size: 20px;
font-style: normal;
font-weight: 400;
line-height: normal;
}
}
@media (min-width: 768px) and (max-width: 980px) {

/* =====================================
   Title
===================================== */
.process-title {
color: #FFF;
font-family: Avenir;
font-size: 35px !important;
font-style: normal;
font-weight: 350;
line-height: 40px !important; /* 112.5% */
}

/* =====================================
   Description
===================================== */
.process-item p {
  margin: 10px 0 0;
color: #FFF;
font-family: Avenir;
font-size: 20px;
font-style: normal;
font-weight: 400;
line-height: normal;
}
}
/* =====================================
   Divider (Separate Text Module)
===================================== */
.process-divider {
  width: 100%;
  margin: 18px 0;
  border-bottom: 1px dotted rgba(255,255,255,0.4);
  padding-bottom:40px;
}
.bullet ul{
 list-style: disc inside !important;
padding-bottom:0px !important;
}
/* =========================================
   Force each multi-column row to full width
   (Row / Column custom classes)
========================================= */

@media (min-width: 981px) and (max-width: 1247px) {

  /* Force full width for specific rows */
  #row-multi-column1 {
    width: 100% !important;
  }

  #row-multi-column2 {
    width: 100% !important;
  }

  #row-multi-column3 {
    width: 100% !important;
  }

  /* Blurb Module – Description Text Styling */
  #row-multi-column1 .et_pb_blurb_description,
  #row-multi-column2 .et_pb_blurb_description,
  #row-multi-column3 .et_pb_blurb_description {
    font-size: 18px;
    line-height: 22px;
  }

}
/* ==========================================
   Mobile range (555px – 767px)
   Zen Warrior Hero – Background size
========================================== */
@media (min-width: 555px) and (max-width: 767px) {

    .zen-warrior-hero {
        background-size: auto !important;
    }

}
/* ==========================================
   Mobile range (500px – 767px)
   Hero Entrepreneur Row – Background size
========================================== */
@media (min-width: 500px) and (max-width: 767px) {

    .hero-entrepreneur-row {
        background-size: auto !important;

    }

}

/* =====================================================
   TESTIMONIAL HOVER CARD – CONTAINER
   Acts as the parent wrapper for image + texts
===================================================== */
.hover-card {
  position: relative;          /* Needed for absolute children */
  overflow: hidden;            /* Hides overlay outside card */
  border-radius: 20px;         /* Rounded card corners */
}

/* =====================================================
   HOVER OVERLAY – FULL CARD CONTENT
   Slides up from bottom on hover
===================================================== */
.hover-card .hover-overlay {
  position: absolute;
  inset: 0;                    /* Covers entire card */
  
  /* Dark gradient for text readability */
  background: linear-gradient(
    to top,
    rgba(0,0,0,0.95),
    rgba(0,0,0,0.7)
  );

  padding: 40px 25px 30px;     /* Top spacing prevents text cut */
  
  display: flex;
  flex-direction: column;     /* Stack text vertically */
  justify-content: flex-start;/* Start text from top */
  align-items: center;

  overflow-y: auto;            /* Prevents top text clipping */

  opacity: 0;                  /* Hidden by default */
  transform: translateY(100%); /* Starts below the card */
  
  transition: 
    transform 0.45s ease-out,
    opacity 0.45s ease-out;

  z-index: 3;                  /* Above image and short text */
}

/* =====================================================
   SHOW OVERLAY ON CARD HOVER
===================================================== */
.hover-card:hover .hover-overlay {
  opacity: 1;
  transform: translateY(0);    /* Slide overlay up */
}

/* =====================================================
   SHORT TEXT – VISIBLE INITIALLY
===================================================== */
.short-text {
  position: absolute;
  bottom: 30px;                /* Position above bottom edge */
  left: 0;
  right: 0;
  
  text-align: center;
  padding: 0 20px;
  
  z-index: 2;                  /* Above image, below overlay */
  transition: opacity 0.3s ease;
}

/* =====================================================
   HIDE SHORT TEXT ON HOVER
===================================================== */
.hover-card:hover .short-text {
  opacity: 0;
}

/* =====================================================
   TESTIMONIAL INTRO / HIGHLIGHT TEXT
===================================================== */
.testimonial-intro-text {
  color: #FFF;
  text-align: center;
  font-family: "Avenir Next Condensed";
  font-size: 24px;
  font-weight: 600;
  line-height: 24px;
  margin-bottom: 4px;
}

/* =====================================================
   TESTIMONIAL AUTHOR NAME
===================================================== */
.testimonial-author-name {
  color: #FFF;
  text-align: center;
  font-family: Avenir;
  font-size: 24px;
  font-weight: 800;
  line-height: 24px;
  margin-bottom: 6px;
}

/* =====================================================
   TESTIMONIAL AUTHOR DESIGNATION
===================================================== */
.testimonial-author-designation {
  color: #FFF;
  text-align: center;
  font-family: Avenir;
  font-size: 18px;
  font-weight: 400;
  line-height: 20px;
  margin-bottom: 20px;
}

/* =====================================================
   LONG TESTIMONIAL CONTENT
===================================================== */
.long-text {
  color: #FFF;
  text-align: center;
  font-family: "Avenir-Next-Condensed-regular";
  font-size: 22px;
  font-weight: 400;
  line-height: 25px;
}
/* =====================================================
   MOBILE – FORCE TEXT BELOW IMAGE
===================================================== */
@media (max-width: 767px) {

  /* Make card flow normally */
  .hover-card {
    display: flex;
    flex-direction: column;
    overflow: visible;
  }

  /* Image should stay on top */
  .hover-card img {
    order: 1;
    position: relative;
    z-index: 1;
  }

  /* Overlay text moves BELOW image */
  .hover-card .hover-overlay {
    order: 2;
    position: relative;
    opacity: 1;
    transform: none;
    background: none;      /* remove dark gradient */
    padding: 20px 15px;
    overflow: visible;
  }

  /* Disable hover logic */
  .hover-card:hover .hover-overlay {
    transform: none;
    opacity: 1;
  }

  /* Hide desktop-only short text */
  .short-text {
    display: none;
  }
}

/* CF7 Submit Button Style */
.cf7-submit,
.wpcf7 input[type="submit"] {
  background:  #F43E2E;
  display: flex;
  width: 328px;
  height: 60px;
  padding: 20px 35px;
  justify-content: center;
  align-items: center;

  color: #FFF;
  font-family: Avenir, sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 400;
  line-height: 20px;

  border: none;
  border-radius: 0; /* change if needed */
  cursor: pointer;
}
/* Popup form container */
.cf7-popup-box {
  background: #FFF;
  box-shadow: 0 19px 30.2px 0 rgba(0, 0, 0, 0.30);
	border-radius: 0px !important;
	  width: 790px;
  height: auto;
  max-width: 95%;
padding:40px 70px;
}
/* ==========================================
   Popup Form Heading Style
   ========================================== */
.cf7-popup-box h2 {

  /* Text color */
  color: #000;

  /* Font settings */
  font-family: "Avanir Next Bold";
  font-size: 40px;
  font-style: normal;
  font-weight: 700;

  /* Line height for better readability */
  line-height: 45px;

  /* Limit heading width for clean layout */
  width: 400px;

  /* Space below heading */
  margin-bottom: 50px;
}
/* ==========================================
   Popup Form Label Font Style
   ========================================== */
.cf7-popup-box label {

  /* Text color */
  color: #000;

  /* Font family */
  font-family: Avenir, sans-serif;

  /* Font size & weight */
  font-size: 18px;
  font-style: normal;
  font-weight: 400;

  /* Line height for readability */
  line-height: 20px;
}

/* ==========================================
   Popup Form Input Bottom Border Only
   ========================================== */
.cf7-popup-box input[type="text"],
.cf7-popup-box input[type="email"],
.cf7-popup-box input[type="tel"],
.cf7-popup-box textarea {

  /* Remove all borders */
  border: none;

  /* Add only bottom border */
  border-bottom: 1px solid #9B9B9B;

  /* Remove default outline */
  outline: none;
}
/* ==========================================
   Popup Form Textarea Height
   ========================================== */
.cf7-popup-box textarea {

  /* Fixed textarea height */
  height: 60px;

  /* Prevent resize (optional) */
  resize: none;
}
/* ==========================================
   Popup Form Placeholder Text Style
   ========================================== */
.cf7-popup-box input::placeholder,
.cf7-popup-box textarea::placeholder {

  /* Placeholder text color */
  color: #9B9B9B;

  /* Font settings */
  font-family: Avenir, sans-serif;
  font-size: 18px !important;
  font-style: normal;
  font-weight: 400;

  /* Line height */
  line-height: 20px !important; 
}

/* ==========================================
   Popup Close Button — Fixed Top Right
   ========================================== */
.cf7-popup-close {
    position: relative;
    top: 0px;
    right: -675px;
    font-size: 26px;          /* size of the × */
    font-weight: bold;        /* bold symbol */
    color: #000;              /* color */
    cursor: pointer;          /* pointer on hover */
    z-index: 9999;            /* ensures it's above all */
    background: transparent;  /* optional */
    border: none;             /* remove default button border */
}
/* ==========================================
   Popup Form Heading — Mobile (max-width: 767px)
   ========================================== */
@media (max-width: 767px) {
  .cf7-popup-box h2 {

    /* Text color */
    color: #000;

    /* Font settings */
    font-family: "Avenir Next", sans-serif;
    font-size: 30px !important;
    font-style: normal;
    font-weight: 700;

    /* Line height */
    line-height: 35px !important; /* 116.667% */

    /* Optional: full width for mobile */
    width: 100%;

    /* Optional: center text */
    text-align: center;
  }
	.cf7-popup-close {
    position: relative;
    top: 20px;
    right: -308px;
    font-size: 26px;
    font-weight: bold;
    color: #000;
    cursor: pointer;
    z-index: 9999;
    background: transparent;
    border: none;
}
	  .cf7-popup-box {
    max-height: 90vh;      /* max height relative to viewport */
    overflow-y: auto;      /* enable vertical scroll if content exceeds */
    padding: 20px;         /* optional padding */
  }
}
@media (max-width: 429px) {
  .cf7-popup-close {
    position: absolute;   /* absolute inside popup */
    top: 10px;            /* distance from top of popup */
    right: 15px;          /* distance from right edge */
    font-size: 24px;      /* slightly smaller for small screens */
    font-weight: bold;
    color: #000;
    cursor: pointer;
    z-index: 9999;
    background: transparent;
    border: none;
  }
	.cf7-submit, .wpcf7 input[type="submit"] {
    background: #F43E2E;
    display: flex;
    width: 290px;
    height: 60px;
    padding: 20px 10px;
    justify-content: center;
    align-items: center;
    color: #FFF;
    font-family: Avenir, sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    border: none;
    border-radius: 0;
    cursor: pointer;
}
}
/* =========================================
   CF7 POPUP OVERLAY
   Full-screen dark background behind popup
========================================= */
.cf7-popup-overlay {
  position: fixed;              /* Fix popup to viewport */
  inset: 0;                     /* Top, right, bottom, left = 0 */
  background: rgba(0,0,0,0.65); /* Dark transparent overlay */
  display: none;                /* Hidden by default */
  align-items: center;          /* Vertically center popup */
  justify-content: center;      /* Horizontally center popup */
  z-index: 99999;               /* Stay above everything */
}

/* =========================================
   CF7 FORM CONTAINER
   Hide all forms initially
========================================= */
.cf7-form {
  display: none;
}

/* =========================================
   DESKTOP (≥ 981px)
========================================= */
@media (min-width: 981px) {

  .cf7-popup-box {
    background: #fff;        /* White popup background */
    max-width: 790px;        /* Fixed max width */
    width: 90%;              /* Responsive width */
    padding: 40px 70px;      /* Inner spacing */
    position: relative;      /* Needed for close button */
  }

}

/* =========================================
   TABLET (768px – 980px)
========================================= */
@media (min-width: 768px) and (max-width: 980px) {

  .cf7-popup-box {
    background: #fff;
    max-width: 100%;        /* Slightly smaller popup */
    width: 100%;
    display: flex;           /* Center content */
    align-items: center;
    justify-content: center;
    padding: 40px 70px;
    position: relative;
  }

}

/* =========================================
   MOBILE (≤ 768px)
========================================= */
@media (max-width: 768px) {

  .cf7-popup-box {
    background: #fff;
    max-width: 100%;         /* Full width on mobile */
    width: 90%;
    padding: 20px;           /* Reduced padding */
    position: relative;
  }

}
.number-counter h3{
	padding-left: 15px;
    padding-top: 20px;
}
/* =========================================
   VIDEO WIDTH FIX (981px – 1279px)
========================================= */
@media (min-width: 981px) and (max-width: 1279px) {
  .video-row .et_pb_video {
    width: auto !important;   /* Auto width for video */
    margin: 0 auto;           /* Center the video */
  }
}
/* =========================================
   CF7 POPUP CLOSE BUTTON
   Tablet view (768px – 980px)
========================================= */
@media (min-width: 768px) and (max-width: 980px) {

  .cf7-popup-close {
    position: absolute;        /* Absolute works better than relative */
    top: 20px;                 /* Distance from top of popup */
    right: 20px;               /* Distance from right edge */
    font-size: 26px;
    font-weight: bold;
    color: #000;
    cursor: pointer;
    z-index: 9999;
    background: transparent;
    border: none;
  }

}
/* =========================================
   " Button Hover
========================================= */
a.btn:hover {
  background-color: #000 !important;  /* Black background */
  color: #fff !important;             /* White text */
}

a.btn {
  transition: background-color 0.3s ease, color 0.3s ease;
}

/* ==========================================
   .zen-warrior-impact background size 
   for screen width between 981px and 1279px
========================================== */
@media (min-width: 981px) and (max-width: 1279px) {
 #zen-warrior-impact {
    background-size: 19% !important;
  }
}
/* =========================================
   CF7 SUCCESS STATE
   Hide form fields & heading after submit
========================================= */

/* Hide all fields and headings once form is sent */
.wpcf7-form.sent .cf7-form-wrapper {
  display: none;
}

/* Show thank-you message */
.wpcf7-response-output {
  display: block;
  margin-top: 20px;
  padding: 15px;
  background: #e8f5e9;
  border-left: 4px solid #2e7d32;
  color: #2e7d32;
  font-size: 16px;
}
/* Mentoring page – Hero image (575px to 767px) */
@media (min-width: 575px) and (max-width: 767px) {
 #hero-mentoring {
    background-size: 47% auto !important;
  }
}
/* =========================================
   AFTER SUBMIT – Thank You / Error State
   Auto height for message
========================================= */
.cf7-popup-box .wpcf7-form.sent,
.cf7-popup-box .wpcf7-form.invalid,
.cf7-popup-box .wpcf7-form.failed {
  height: 625px !important;
}
/* =========================================
   Center CF7 Thank You / Error Message
========================================= */

/* Make form a flex container after submit */
.wpcf7-form.sent,
.wpcf7-form.invalid,
.wpcf7-form.failed {
  display: flex;
  align-items: center;        /* Vertical center */
  justify-content: center;    /* Horizontal center */
  min-height: 100%;           /* Fill popup box */
}

/* Style the response message */
.wpcf7-response-output {
  color: #000;
  font-family: "Avenir Next";
  font-size: 40px;
  font-style: normal;
  font-weight: 700;
  line-height: 45px;
  text-align: center;
  margin: 0 !important;
  padding: 0 !important;
  border: none;
}

/* Success message popup styling */
.cf7-success-message {
  display: none;
  background: white;
  border-radius: 8px;
  padding: 40px;
  max-width: 500px;
  width: 90%;
  text-align: center;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  position: relative;
}






.cf7-response-popup {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,.6);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

.cf7-response-box {
  background: #fff;
  padding: 30px;
  max-width: 480px;
  width: 100%;
  position: relative;
}

.cf7-response-close {
  position: absolute;
  top: 10px;
  right: 15px;
  cursor: pointer;
  font-size: 22px;
}
