/*
 * Biotechnom — responsive (demo-style)
 * Hero, overlapping cards, and front-page sections scale without horizontal scroll.
 */

/* Tablet: reduce overlap pull so cards do not collide with hero */
@media screen and (max-width: 1024px) {
	.wp-block-columns.bt-4-column-row {
		margin-top: -40px;
	}
}

/* WordPress stacks columns at ~782px — reset overlap fully when stacked */
@media screen and (max-width: 781px) {
	.wp-block-columns.bt-4-column-row {
		margin-top: 0;
	}

	.main-home-page .wp-block-columns:not(.is-not-stacked-on-mobile) {
		gap: 1.25rem;
	}

	/* Front-page section titles (inline 36px in patterns) */
	.main-home-page h2.wp-block-heading {
		font-size: clamp(1.5rem, 5vw, 2rem) !important;
		line-height: 1.25 !important;
	}

	.fse-sections-02 h2.wp-block-heading {
		font-size: clamp(1.5rem, 5vw, 2rem) !important;
	}

	/* Welcome / about block: image + text comfortable when stacked */
	.fse-sections-02 .wp-block-columns .wp-block-column[style*="flex-basis:4%"] {
		display: none;
	}
}

/* Mobile Portrait View */
@media screen and (max-width:767px) {
	/*Mobile Menu CSS*/
	.wp-block-navigation__responsive-container.is-menu-open.has-modal-open{ background-color:#fff !important; padding:25px;}
	.fse-sections-01, .fse-sections-02{ padding-top:50px !important; padding-bottom:50px !important;}
	.wp-block-group.header-Top .wp-block-group{ flex-wrap:wrap !important; gap:5px !important;  flex-direction: column !important; }
	.wp-block-cover.hdrbanner-BX{ min-height:400px !important;}
	.gv-hero-slider,
	.gv-hero-inner {
		min-height: min(56vh, 480px) !important;
	}
	.gv-slide-caption-wrap {
		padding-left: 1rem !important;
		padding-right: 1rem !important;
		padding-top: clamp(1.5rem, 4vw, 2.5rem) !important;
		padding-bottom: clamp(2.5rem, 6vw, 3.5rem) !important;
		text-align: center;
	}
	.gv-hero-caption,
	.gv-slide-caption-wrap .gv-hero-title,
	.gv-slide-caption-wrap .gv-hero-sub {
		max-width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	.gv-hero-title {
		font-size: clamp(1.5rem, 6vw, 1.85rem) !important;
	}
	.gv-hero-sub {
		font-size: 0.95rem !important;
	}
	.gv-hero-actions {
		flex-direction: column;
		align-items: stretch;
		justify-content: center;
	}
	.gv-hero-dots {
		bottom: 1rem;
		left: 50%;
		transform: translateX(-50%);
		padding: 0 0.75rem;
	}
	.gv-slide .wp-block-button.gv-hero-btn .wp-block-button__link,
	a.gv-hero-btn {
		justify-content: center;
		width: 100%;
		box-sizing: border-box;
	}
	.wp-block-group.bannerInfo h2{ font-size:28px !important; margin-bottom:20px !important;}
	.wp-block-group.bannerInfo h4{ margin-top:0 !important;}
	ul.blog-list-style li{ padding:30px; margin-bottom:25px;}
	ul.blog-list-style li .blog-thumbx{ width:100%; float:none; margin:0 0 20px 0;}
	body.page-template-front .site-main-header{ position: relative !important; }
	.wp-block-button.QuoteBtn a{ position:absolute; right:0; bottom:4px; padding:12px 20px !important;}
	.fse-sections-01 h2.wp-block-heading, .fse-sections-02 h2.wp-block-heading, .fse-sections-03 h2.wp-block-heading{ font-size: clamp(1.5rem, 5vw, 2rem) !important;}
	.footer-top-contact-info .wp-block-column-is-layout-flow{ border-right:0 !important;}
	
	.fse-sections-01 h2.wp-block-heading{ margin-bottom:30px !important;}
	.wp-block-group.header-main-banner{ margin-top:0 !important}
	.header-right-contactinfo.wp-container-core-group-is-layout-7f3422df{ justify-content:flex-start !important; padding:0 20px !important; gap:20px !important;}
	.wp-block-column.logo { padding:20px !important;border-right:none;	flex-basis:25% !important;}
	.energix_about_small{ margin-top:-50px !important;  float:none !important;}
	.wp-block-group.energix-hdr-right{ gap:10px !important;}
	.logo{ position:relative !important; padding:0 !important; top:0 !important;}
	.logo::before, .logo::after{ display:none !important}
	.wp-block-group.header-top-row{ gap:10px !important;}

	/* Service icon row: one column, full width cards */
	.wp-block-columns.bt-4-column-row .wp-block-column {
		flex-basis: 100% !important;
	}

	/* Avoid edge clipping on notched phones */
	main.main-home-page {
		padding-left: max(0px, env(safe-area-inset-left));
		padding-right: max(0px, env(safe-area-inset-right));
	}

	.site-main-header .wp-block-group.is-layout-flex {
		flex-wrap: wrap;
		row-gap: 0.75rem;
	}
}


@media screen and (max-width:599px) {
	.wp-block-group.header-nav-bar{ padding-top:0 !important; padding-bottom:0 !important;}
	.wp-block-cover.hdrbanner-BX{ min-height:350px !important;}
	body .header-top-left.is-layout-flex, 
	body .header-top-right.is-layout-flex{ flex-wrap:wrap; gap:10px;}
	.wp-block-column.logo {padding:20px !important;	border-right:none;	flex-basis:25% !important;}
	ul.blog-list-style li .blog-thumbnail{ width:100% !important; float:none !important; margin:0 0 25px 0 !important; }
	body .headtop-Wrap.is-layout-flex, body .header-right-contactinfo.is-layout-flex{ flex-wrap:wrap !important;  gap:10px !important;}
	.wp-block-group.bt-middle-row{ border:none !important; padding-left:0 !important; padding-right:0 !important;}
	
	/* Navigation Responsive CSS*/
	.wp-block-navigation__responsive-container-close svg,
	.wp-block-navigation__responsive-container-open svg{ width: 42px; height: 42px;  }    
	.wp-block-navigation__responsive-container-open svg path,
	.wp-block-navigation__responsive-container-close svg path{ fill: var(--wp--preset--color--black);  }
	.wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container { width: 100%; border-bottom: none;  gap: 0 !important;   }
	.wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item {width:100%;gap: 0 !important;border: none !important;}
	.wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item a { width: calc( 100% - 48px ); padding: 12px 24px 12px;line-height: 30px;text-align: left;}
	.wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation__submenu-icon { font-size: 19px;line-height: 1; position: absolute; right: 0;top: 0; display: block !important; margin-left: 15px; padding: 3px 10px; float: right; height: 42px; width: 42px;}
	.wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation__submenu-icon svg { width: 30px;height: 13px; stroke: var(--wp--preset--color--black);display: block;margin: 0 !important;padding: 0 !important;}
	.wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item ul.wp-block-navigation__submenu-container {
	width: 100%;gap: 0;margin: 0;padding: 0;display: none;box-shadow: none;  }
	.wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=true] + ul.wp-block-navigation__submenu-container { display: block; margin: 0; padding: 0;  }

	.gv-hero-slider,
	.gv-hero-inner {
		min-height: min(52vh, 420px) !important;
	}
}

@media screen and (max-width: 781px){
.wp-block-column.logo {padding:20px !important;}

}

@media screen and (max-width: 980px){
	.wpcf7 input[type="text"], .wpcf7 input[type="tel"], .wpcf7 input[type="email"], .wpcf7 textarea{ width:100%;}
	.wp-block-group.header-main-banner:after{ display:none !important;}
	.energix_about_small{ margin-top:-50px !important;  float:none !important;}
	.logo{ position:relative !important; padding:0 !important; top:0 !important;}
}
@media screen and (max-width:1200px) and (min-width:482px) { 
	.wp-block-group.bannerInfo h5.wp-block-heading{ margin-top:100px !important;}

}

@media screen and (max-width:1800px) and (min-width:1200px) { 
	.wp-block-group.bannerInfo h5.wp-block-heading{ margin-top:100px !important;}
}

@media screen and (max-width:6000px) and (min-width:1024px) { 
	.logo {
		text-align: left;   
		padding:35px 70px 0px 0px;
		position: absolute;
		z-index: 999; 
		top: -73px;
		background: #fff;
	}
	.logo::before {
		background-color: #fff;
		content: "";
		display: block;
		height: 100%;
		position: absolute;
		left: -999999px;
		top: 0;
		width: 999999px;
	}
	.logo::after{
		content: '';
		width: 0;
		height: 0;
		border-bottom: 74px solid #fff;
		border-right: 60px solid transparent;
		position: absolute;
		right: -59px;
		top: -0;
	 }
}



