/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.elementor-custom-embed-play svg{
	width:262px!important;
	height:262px!important;
	opacity:1!important;
}

.elementor-custom-embed-image-overlay{
background-size:contain!important;
	background-repeat: no-repeat;
}

.elementor-2018 .elementor-element.elementor-element-9b2948b .eael-elements-flip-box-rear-container .eael-elements-flip-box-content{
	padding-top:20px!important;
}

.elementor-2018 .elementor-element.elementor-element-ab7dca2 .eael-elements-flip-box-rear-container .eael-elements-flip-box-content{
	padding-top:20px!important;
	
}

.elementor-2018 .elementor-element.elementor-element-353df07 .eael-elements-flip-box-rear-container .eael-elements-flip-box-content{
	padding-top:20px!important;
}

.elementor-2018 .elementor-element.elementor-element-f247896 .eael-elements-flip-box-rear-container .eael-elements-flip-box-content{
padding-top:20px!important;	
}

.elementor-2018 .elementor-element.elementor-element-ba2b1ef .eael-elements-flip-box-rear-container .eael-elements-flip-box-content{
padding-top:20px!important;	
}

.elementor-2018 .elementor-element.elementor-element-64c1915 .eael-elements-flip-box-rear-container .eael-elements-flip-box-content{
padding-top:20px!important;		
}

.eael-elements-slider-display-table {
    margin-top: auto;
    margin-bottom: auto;
}

.asset-flip-big .eael-elements-flip-box-icon-image{
	float:right!important;
}

.asset-flip-big strong{
	color: #339966;
    font-family: 'Montserrat';
    font-size: 25px;
	padding-top:30px;
}

 .products-grid {
        display: grid;
        gap: 0;
        height: 400px;
    }
    
    .products-grid.columns-1 { grid-template-columns: 1fr; }
    .products-grid.columns-2 { grid-template-columns: 1fr 1fr; }
    .products-grid.columns-3 { grid-template-columns: 1fr 1fr 1fr; }
    .products-grid.columns-4 { grid-template-columns: 1fr 1fr 1fr 1fr; }
    
    .product-item {
        position: relative;
        overflow: hidden;
        min-height: 400px;
    }
    
    .product-normal-state {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 1;
        transition: opacity 0.3s ease;
    }
    
    .product-hover-state {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        transition: opacity 0.3s ease;
        display: flex;
    }
    
    .product-item:hover .product-normal-state {
        opacity: 0;
    }
    
    .product-item:hover .product-hover-state {
        opacity: 1;
    }
    
    .product-background {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
    
    .product-title-overlay {
   position: absolute;
    left: auto;
    width: 100%;
    padding: 30px 20px 20px;
    box-sizing: border-box;
    bottom: 35%;
    right: auto;
    text-align: center;
    }
    
    .product-title-overlay .product-title {
    font-weight: bold;
    margin: 0;
    text-transform: ;
    letter-spacing: 2px;
    color: white;
    font-family: 'Montserrat';
    font-size: 60px;
    }
    
    /* Hover state layout */
    .product-gallery-side {
        flex: 1;
        position: relative;
    }
    
    .product-gallery-slider {
        position: relative;
        width: 100%;
        height: 100%;
    }
    
    .gallery-slide {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        opacity: 0;
        transition: opacity 0.5s ease;
    }
    
    .gallery-slide.active {
        opacity: 1;
    }
    
    .gallery-dots {
        position: absolute;
        bottom: 20px;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        gap: 8px;
    }
    
    .gallery-dot {
        width: 12px;
        height: 12px;
        border-radius: 50%;
        background-color: rgba(255, 255, 255, 0.5);
        cursor: pointer;
        transition: background-color 0.3s ease;
    }
    
    .gallery-dot.active {
        background-color: white;
    }
    
    .product-content-side {
        flex: 1;
        background-color: #154679;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 20px;
        box-sizing: border-box;
    }
    
    .product-content {
        text-align: left;
        color: white;
        max-width: 100%;
		
    }
    
    .product-content .product-title {
        font-size: 40px;
        font-weight: bold;
        margin: 0 0 15px 0;
        text-transform: ;
        letter-spacing: 2px;
        color: white;
	 	font-family: 'Montserrat';
    }
    
    .product-description {
        font-size: 13px;
        line-height: 1.6;
        color: white;
		font-family: 'Montserrat';
		font-weight:400
    }

.underlined {
  position: relative;
  text-decoration: none;
}

.underlined::after {
    content: '';
    position: absolute;
    bottom: -2px;
    transform: translateX(-50%);
    width: 109px;
    background-color: #fff;
    height: 5px;
	top:85px;
}  
    /* Responsive Design */
    @media (max-width: 768px) {

		.product-title-overlay .product-title{
			text-transform: capitalize!important;
		}
		
		.tb_hc_arrow_right__{
			margin-top:-50px!important;
		}

		.tb_hc_arrow_left__{
			margin-top:-50px!important;
		}
        .products-grid.columns-2,
        .products-grid.columns-3,
        .products-grid.columns-4 {
            grid-template-columns: 1fr;
        }
        
        .product-title {
            font-size: 2em;
        }
        
        .products-grid {
            height: auto;
        }
        
        .product-item {
            min-height: 250px;
        }
		
		.asset-flip-big strong{
	
    font-size: 16px;
}
    }

        /* Modal Overlay & Container */
        .mtm-modal-overlay {
            display: none;
            position: fixed;
            z-index: 999999;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.8);
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .mtm-modal-overlay.mtm-modal-active {
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 1;
        }

        .mtm-modal-container {
            background: white;
            width: 90%;
            max-width: 1200px;
            overflow: hidden;
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
            position: relative;
        }

        .mtm-modal-content-wrapper {
            display: flex;
            min-height: 750px;
        }

        /* Carousel Section */
        .mtm-carousel-section {
            flex: 2;
            background: #000;
            display: flex;
            flex-direction: column;
        }

        .mtm-carousel-viewport {
            flex: 1;
            overflow: hidden;
        }

        .mtm-carousel-slider {
            display: flex;
            height: 100%;
            transition: transform 0.5s ease;
        }

        .mtm-carousel-slide {
            min-width: 100%;
            height: 100%;
            background-size: cover;
            background-position: center;
        }

.mm-modal-shape{
	    position: absolute;
    z-index: 100;
    right: 0px;
	width:150px;
	display: none;
}

        .mtm-carousel-indicators {
          display: flex
;
    justify-content: center;
    gap: 12px;
    padding: 20px;
    position: absolute;
    bottom: 10px;
    margin-left: auto;
    margin-right: auto;
    /* display: inline-flex
; */
    left: 20%;
    right: 50%;
        }

        .mtm-carousel-dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: rgba(255, 255, 255, 0.4);
            cursor: pointer;
            transition: background 0.3s ease;
        }

        .mtm-carousel-dot.mtm-dot-active {
            background: white;
        }

        /* Content Section */
        .mtm-content-section {
            flex: 1;
            padding: 60px 50px;
            background: #154679;
            color: white;
            display: flex;
            flex-direction: column;
            justify-content: center;
            position: relative;
			background-image: url(https://anverdesign.co.za/mertech/wp-content/uploads/2025/06/Group-208.png);
    background-repeat: no-repeat;
    background-position: top right;
}

   .mtm-content-title {
            font-size: 60px!important;
    font-weight: bold;
    margin: 0 0 20px 0;
    position: relative;
    z-index: 2;
			font-family: 'Montserrat';
			
        }

        .mtm-content-subtitle {
            font-size: 30px;
            color: #00B48A;
            margin: 0 0 30px 0;
            position: relative;
            z-index: 2;
						font-family: 'Montserrat';
font-weight:bold;
        }

        .mtm-content-body {
            color: rgba(255, 255, 255, 0.9);
            line-height: 1.8;
            font-size: 16px;
            position: relative;
            z-index: 2;
        }

        .mtm-content-description {
            margin: 0;
									font-family: 'Montserrat';
font-size:18px;
			font-weight:400;
        }

        /* Close Button */
        .mtm-modal-close-btn {
            position: absolute;
            top: 20px;
            right: 25px;
            color: white;
            font-size: 35px;
            font-weight: bold;
            cursor: pointer;
            z-index: 200;
            transition: color 0.3s ease;
        }

        .mtm-modal-close-btn:hover {
            color: #4CAF50;
        }

        /* Flip Box Icon Hover Effects */
        .mtm-flip-icon-clickable {
            cursor: pointer;
            transition: transform 0.3s ease;
        }

        .mtm-flip-icon-clickable:hover {
            transform: scale(1.05);
        }

        .mtm-flip-icon-clickable::after {
            content: '';
            position: absolute;
            top: -10px;
            right: -10px;
            width: 20px;
            height: 20px;
            background: rgba(255, 255, 255, 0.3);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 12px;
            color: white;
            content: 'ⓘ';
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        .mtm-flip-icon-clickable:hover::after {
            opacity: 1;
        }

        /* Mobile Responsive */
        @media (max-width: 768px) {
            .mtm-modal-content-wrapper {
                flex-direction: column;
            }
            
            .mtm-carousel-section {
                height: 300px;
                flex: none;
            }
            
            .mtm-content-section {
                padding: 40px 30px;
            }
            
            .mtm-content-title {
                font-size: 36px;
            }
            
            .mtm-content-subtitle {
                font-size: 20px;
            }
        }

        @media (max-width: 480px) {
            .mtm-content-section {
                padding: 30px 20px;
            }
            
            .mtm-content-title {
                font-size: 28px;
            }
            
            .mtm-content-subtitle {
                font-size: 18px;
            }
            
            .mtm-content-body {
                font-size: 14px;
            }
        }
/* === MOBILE OVERRIDES TO STACK PRODUCT GRID=== */
@media (max-width: 768px) {

  .products-grid.columns-2,
  .products-grid.columns-3,
  .products-grid.columns-4 {
      display: flex !important;
      flex-direction: column !important;
      gap: 20px !important;
      height: auto !important;
  }

  .product-item {
      display: flex !important;
      flex-direction: column !important;
      position: relative;
      border: 1px solid #e0e0e0;
      overflow: hidden;
  }

  .product-normal-state {
      display: block !important;
      opacity: 1 !important;
      position: relative !important;
      height: 250px !important;
  }

  .product-background {
      height: 100% !important;
      width: 100% !important;
      background-size: cover !important;
      background-repeat: no-repeat !important;
      background-position: center !important;
  }

  .product-title-overlay {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 100%;
      text-align: center;
      color: white;
      padding: 0 10px;
      z-index: 2;
  }

  .product-title {
      font-size: 26px !important;
      text-transform: uppercase;
      font-weight: bold;
  }
	.product-description {
        font-size: 13px;
        line-height: 1.6;
        color: white;
		font-family: 'Montserrat';
		font-weight:400
    }

  .underlined::after {
      top: auto !important;
      bottom: -5px !important;
      height: 3px !important;
      width: 60px !important;
      left: 50%;
      transform: translateX(-50%);
      background-color: white;
  }

  .product-hover-state {
      display: none !important;
      opacity: 0 !important;
      position: relative !important;
      padding: 20px;
      background: #154679;
      color: white;
      order: 2;
      transition: opacity 0.3s ease;
  }

  .product-item:hover .product-hover-state {
      display: block !important;
      opacity: 1 !important;
  }
	.gallery-dots {
    padding-bottom: 20px;
}
}

.underlined {
  position: relative;
  display: inline-block;
  text-align: center;
}

.underlined::after {
  content: '';
  position: absolute;
  bottom: -8px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  background-color: white;
}
div:contains("Powered by") {
    display: none !important;
}



