
/*****************************************
Table Of Contents:

01. General Styles
02. Preloader
03. Navigation
04. Header
05. Customers
06. Description
07. Features
08. Features Lightboxes
09. Details
10. Video
11. Pricing
12. Testimonials
13. Newsletter
14. Footer
15. Copyright
16. Back To Top Button
17. Extra Pages
18. Sign Up and Log In Pages
19. Media Queries
******************************************/

/*****************************************
Colors:
- Backgrounds, buttons, bullets, icons - blue #222725
- Backgrounds, light button, light body text - light gray #f3f7fd
- Headings text - black #333
- Body text - dark gray #555
******************************************/


/******************************/
/*     01. General Styles     */
/******************************/
.prevent-select {
  -webkit-user-select: none; /* Safari */
  -ms-user-select: none; /* IE 10 and IE 11 */
  user-select: none; /* Standard syntax */
}

.grecaptcha-badge { /* hide that ugly thing */
    visibility: hidden;
}

body {
    padding-top: 49px; /* Adjust based on the combined height of the phone number bar and navbar */
	max-width: 100%;
    overflow-x: hidden;
}
html {
    width: 100%;
	height: 100%;
	max-width: 100%;
    overflow-x: hidden;
}

body, p {
	color: #555; 
	font: 400 1rem/1.625rem "Open Sans", sans-serif;;
}

.p-large {
	font: 400 1.125rem/1.75rem "Open Sans", sans-serif;
}

.p-small {
	font: 400 0.875rem/1.5rem "Open Sans", sans-serif;
}

h1 {
	color: #333;
	font: 700 2.5rem/3.125rem "Open Sans", sans-serif;
	letter-spacing: -0.2px;
}

h2 {
	color: #333;
	font: 700 2rem/2.625rem "Open Sans", sans-serif;
	letter-spacing: -0.2px;
}

h3 {
	color: #333;
	font: 700 1.625rem/2.125rem "Open Sans", sans-serif;
	letter-spacing: -0.2px;
}

h4 {
	color: #333;
	font: 700 1.375rem/1.75rem "Open Sans", sans-serif;
	letter-spacing: -0.1px;
}

h5 {
	color: #333;
	font: 700 1.125rem/1.5rem "Open Sans", sans-serif;
	letter-spacing: -0.1px;
}

h6 {
	color: #333;
	font: 700 1rem/1.375rem "Open Sans", sans-serif;
	letter-spacing: -0.1px;
}

.above-heading {
	color: #e70000;
	font: 700 0.75rem/0.875rem "Open Sans", sans-serif;
	text-align: center;
}

.p-heading {
	margin-bottom: 3.25rem;
}

.testimonial-text {
	font: italic 400 1rem/1.625rem "Open Sans", sans-serif;
}

.testimonial-author {
	font: 700 1rem/1.625rem "Open Sans", sans-serif;
	letter-spacing: -0.1px;
}

.li-space-lg li {
	margin-bottom: 0.375rem;
}

.indent {
	padding-left: 1.25rem;
}

a {
	color: #555;
	text-decoration: underline;
}

a:hover {
	color: #555;
	text-decoration: underline;
}

a.white {
	color: #fff;
}

.white-text {
  color: #fff;
}

.decorative-line {
	display: block;
	width: 5rem;
	height: 0.5rem;
	margin-right: auto;
	margin-left: auto;
}

.blue {
	color: #222725;
}

.btn-solid-reg {
	display: inline-block;
	padding: 1.1875rem 2.125rem 1.1875rem 2.125rem;
	border: 0.125rem solid ##d7265d;
	border-radius: 2rem;
	background-color: #e70000;
	color: #fff;
	font: 700 0.875rem/0 "Open Sans", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-solid-reg:hover {
	background-color: transparent;
	color: #222725;
	text-decoration: none;
}

.btn-solid-lg {
	display: inline-block;
	padding: 1.375rem 2.625rem 1.375rem 2.625rem;
	border: 0.125rem solid #222725;
	border-radius: 2rem;
	background-color: #222725;
	color: #fff;
	font: 700 0.875rem/0 "Open Sans", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-solid-lg:hover {
	background-color: transparent;
	color: #222725;
	text-decoration: none;
}

.btn-outline-reg {
	display: inline-block;
	padding: 1.1875rem 2.125rem 1.1875rem 2.125rem;
	border: 0.125rem solid #222725;
	border-radius: 2rem;
	background-color: transparent;
	color: #222725;
	font: 700 0.875rem/0 "Open Sans", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-outline-reg:hover {
	background-color: #222725;
	color: #fff;
	text-decoration: none;
}

.btn-outline-lg {
	display: inline-block;
	padding: 1.375rem 2.625rem 1.375rem 2.625rem;
	border: 0.125rem solid #222725;
	border-radius: 2rem;
	background-color: transparent;
	color: #222725;
	font: 700 0.875rem/0 "Open Sans", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-outline-lg:hover {
	background-color: #222725;
	color: #fff;
	text-decoration: none;
}

.btn-outline-sm {
	display: inline-block;
	padding: 0.875rem 1.5rem 0.875rem 1.5rem;
	border: 0.125rem solid #222725;
	border-radius: 2rem;
	background-color: transparent;
	color: #222725;
	font: 700 0.875rem/0 "Open Sans", sans-serif;
	text-decoration: none;
	transition: all 0.2s;
}

.btn-outline-sm:hover {
	background-color: #222725;
	color: #fff;
	text-decoration: none;
}

.form-group {
	position: relative;
	margin-bottom: 1.25rem;
}

.form-group.has-error.has-danger {
	margin-bottom: 0.625rem;
}

.form-group.has-error.has-danger .help-block.with-errors ul {
	margin-top: 0.375rem;
}

.label-control {
	position: absolute;
	top: 0.87rem;
	left: 1.25rem;
	color: #555;
	opacity: 1;
	font: 400 0.875rem/1.375rem "Open Sans", sans-serif;
	cursor: text;
	transition: all 0.2s ease;
}

/* IE10+ hack to solve lower label text position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {  
	.label-control {
		top: 0.9375rem;
	}
}

.form-control-input:focus + .label-control,
.form-control-input.notEmpty + .label-control,
.form-control-textarea:focus + .label-control,
.form-control-textarea.notEmpty + .label-control {
	top: 0.125rem;
	opacity: 1;
	font-size: 0.75rem;
	font-weight: 700;
}

.form-control-input,
.form-control-select {
	display: block; /* needed for proper display of the label in Firefox, IE, Edge */
	width: 100%;
	padding-top: 1.0625rem;
	padding-bottom: 0.0625rem;
	padding-left: 1.25rem;
	border: 1px solid #c4d8dc;
	border-radius: 0.25rem;
	background-color: #fff;
	color: #555;
	font: 400 0.875rem/1.875rem "Open Sans", sans-serif;
	transition: all 0.2s;
	-webkit-appearance: none; /* removes inner shadow on form inputs on ios safari */
}

.form-control-select {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	height: 3rem;
}

/* IE10+ hack to solve lower label text position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {  
	.form-control-input {
		padding-top: 1.25rem;
		padding-bottom: 0.75rem;
		line-height: 1.75rem;
	}

	.form-control-select {
		padding-top: 0.875rem;
		padding-bottom: 0.75rem;
		height: 3.125rem;
		line-height: 2.125rem;
	}
}

select {
    /* you should keep these first rules in place to maintain cross-browser behavior */
    -webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
    -o-appearance: none;
    appearance: none;
    background-image: url('../images/down-arrow.png');
    background-position: 96% 50%;
    background-repeat: no-repeat;
    outline: none;
}

select::-ms-expand {
    display: none; /* removes the ugly default down arrow on select form field in IE11 */
}

.form-control-textarea {
	display: block; /* used to eliminate a bottom gap difference between Chrome and IE/FF */
	width: 100%;
	height: 8rem; /* used instead of html rows to normalize height between Chrome and IE/FF */
	padding-top: 1.25rem;
	padding-left: 1.3125rem;
	border: 1px solid #c4d8dc;
	border-radius: 0.25rem;
	background-color: #fff;
	color: #555;
	font: 400 0.875rem/1.75rem "Open Sans", sans-serif;
	transition: all 0.2s;
}

.form-control-input:focus,
.form-control-select:focus,
.form-control-textarea:focus {
	border: 1px solid #a1a1a1;
	outline: none; /* Removes blue border on focus */
}

.form-control-input:hover,
.form-control-select:hover,
.form-control-textarea:hover {
	border: 1px solid #a1a1a1;
}

.checkbox {
	font: 400 0.75rem/1.25rem "Open Sans", sans-serif;
}

input[type='checkbox'] {
	vertical-align: -15%;
	margin-right: 0.375rem;
}

/* IE10+ hack to raise checkbox field position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {  
	input[type='checkbox'] {
		vertical-align: -9%;
	}
}

.form-control-submit-button {
	display: inline-block;
	width: 100%;
	height: 3.125rem;
	border: 1px solid #222725;
	border-radius: 1.5rem;
	background-color: #e70000;
	color: #fff;
	font: 700 0.875rem/0 "Open Sans", sans-serif;
	cursor: pointer;
	transition: all 0.2s;
}

.form-control-submit-button:hover {
	background-color: #e70000;
	color: #222725;
}
.text-center {
  text-align: center;
}

/* Form Success And Error Message Formatting */
#smsgSubmit.h3.text-center.tada.animated,
#lmsgSubmit.h3.text-center.tada.animated,
#nmsgSubmit.h3.text-center.tada.animated,
#pmsgSubmit.h3.text-center.tada.animated,
#smsgSubmit.h3.text-center,
#lmsgSubmit.h3.text-center,
#nmsgSubmit.h3.text-center,
#pmsgSubmit.h3.text-center {
	display: block;
	margin-bottom: 0;
	color: #555;
	font-size: 1.125rem;
	line-height: 1rem;
}

.help-block.with-errors .list-unstyled {
	color: #555;
	font-size: 0.75rem;
	line-height: 1.125rem;
	text-align: left;
}

.help-block.with-errors ul {
	margin-bottom: 0;
}
/* end of form success and error message formatting */

/* Form Success And Error Message Animation - Animate.css */
@-webkit-keyframes tada {
	from {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	to {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

@keyframes tada {
	from {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	to {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

.tada {
	-webkit-animation-name: tada;
	animation-name: tada;
}

.animated {
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
/* end of form success and error message animation - Animate.css */

/* Fade-move Animation For Details Lightbox - Magnific Popup */
/* at start */
.my-mfp-slide-bottom .zoom-anim-dialog {
	opacity: 0;
	transition: all 0.2s ease-out;
	-webkit-transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
	-ms-transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
	transform: translateY(-1.25rem) perspective(37.5rem) rotateX(10deg);
}

/* animate in */
.my-mfp-slide-bottom.mfp-ready .zoom-anim-dialog {
	opacity: 1;
	-webkit-transform: translateY(0) perspective(37.5rem) rotateX(0); 
	-ms-transform: translateY(0) perspective(37.5rem) rotateX(0); 
	transform: translateY(0) perspective(37.5rem) rotateX(0); 
}

/* animate out */
.my-mfp-slide-bottom.mfp-removing .zoom-anim-dialog {
	opacity: 0;
	-webkit-transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg); 
	-ms-transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg); 
	transform: translateY(-0.625rem) perspective(37.5rem) rotateX(10deg); 
}

/* dark overlay, start state */
.my-mfp-slide-bottom.mfp-bg {
	opacity: 0;
	transition: opacity 0.2s ease-out;
}

/* animate in */
.my-mfp-slide-bottom.mfp-ready.mfp-bg {
	opacity: 0.8;
}
/* animate out */
.my-mfp-slide-bottom.mfp-removing.mfp-bg {
	opacity: 0;
}
/* end of fade-move animation for details lightbox - magnific popup */

/* Fade Animation For Image Lightbox - Magnific Popup */
@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
.desktop-logo {
  display: block;
}

/* Mobile logo (initially hidden) */
.mobile-logo {
    display: none;
}


.fadeIn {
	-webkit-animation: fadeIn 0.6s;
	animation: fadeIn 0.6s;
}

@-webkit-keyframes fadeOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

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

.fadeOut {
	-webkit-animation: fadeOut 0.8s;
	animation: fadeOut 0.8s;
}
/* end of fade animation for image lightbox - magnific popup */


/*************************/
/*     02. Preloader     */
/*************************/
.spinner-wrapper {
	position: fixed;
	z-index: 999999;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #fff;
}

.spinner {
	position: absolute;
	top: 50%; /* centers the loading animation vertically one the screen */
	left: 50%; /* centers the loading animation horizontally one the screen */
	width: 3.75rem;
	height: 1.25rem;
	margin: -0.625rem 0 0 -1.875rem; /* is width and height divided by two */ 
	text-align: center;
}

.spinner > div {
	display: inline-block;
	width: 1rem;
	height: 1rem;
	border-radius: 100%;
	background-color: #e70000;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}

.spinner .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0); }
	40% { -webkit-transform: scale(1.0); }
}

@keyframes sk-bouncedelay {
	0%, 80%, 100% { 
		-webkit-transform: scale(0);
		-ms-transform: scale(0);
		transform: scale(0);
	} 40% { 
		-webkit-transform: scale(1.0);
		-ms-transform: scale(1.0);
		transform: scale(1.0);
	}
}

.contact-us-bar {
    position: fixed;
    top: 135px; /* Adjust based on the height of the navbar */
    width: 100%;
    background-color: #f8f9fa; /* Light background color */
    z-index: 1030; /* Below the navbar */
    padding: 10px 0; /* Adjust padding as needed */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.contact-form {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.contact-form .form-group {
    flex: 1;
    margin: 0 5px;
}

.contact-form .input-group-text {
    background-color: #e9ecef;
    border-right: none;
}

.contact-form .form-control,
.contact-form .form-select {
    border-left: none;
}

.contact-form .btn {
    margin-left: 10px;
    flex-shrink: 0;
}

@media (max-width: 991.98px) {
    .contact-us-bar {
        display: none;
    }
	.phone-number-text {
		display: none;
	}
	.phone-number-bar {
		display: none;
	}
	

    /* Adjust body padding when contact form bar is hidden */
    body {
        padding-top: 25px; /* Height of phone number bar and navbar */
    }
}


@media (max-width: 575.98px) {
    .contact-form .form-group {
        flex: 0 0 100%;
        margin: 5px 0;
    }
	
	.navbar-nav {
		margin-left: -10px;
	}

    .contact-form .btn {
        margin: 10px auto 0;
    }
}

.heat-pump-section {
  padding: 60px 0;
}

.heat-pump-section .button-group .btn {
  min-width: 150px;
  margin-bottom: 10px;
}

.heat-pump-section .button-group .btn.active {
  background-color: #e70000;
  color: #fff;
}

.heat-pump-section .tab-content {
  position: relative;
  overflow: hidden;
  min-height: 300px; /* Adjusted to accommodate image */
}

.heat-pump-section .tab-pane {
  opacity: 0;
  pointer-events: none;
  transform: translateX(100%);
  transition: transform 0.5s ease, opacity 0.5s ease;
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
}

.heat-pump-section .tab-pane.active {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(0);
  z-index: 2;
}

.heat-pump-section .tab-pane.animate-in {
  opacity: 1;
  transform: translateX(0);
}

.heat-pump-section .tab-pane.animate-out {
  opacity: 0;
  transform: translateX(-100%);
}

/* Responsive layout for image and text */
@media (min-width: 768px) {
  .heat-pump-section .tab-pane .row {
    display: flex;
    align-items: center;
  }
  
}

@media (max-width: 767.98px) {
  .heat-pump-section .tab-content {
    min-height: 400px; /* Increase for mobile layout */
  }
}

/* Ensure images fit within their columns */
.heat-pump-section .tab-pane img {
  max-width: 100%;
  height: auto;
  border-radius: 5px;
  margin-bottom: 20px;
}



/**************************/
/*     03. Navigation     */
/**************************/
.navbar-custom {
    background-color: #222725;
    margin-top: -2px;
    box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1);
    font: 700 0.875rem/1rem "Open Sans", sans-serif;
    transition: all 0.05s;
    position: fixed;
    top: 25px; /* Position it below the phone number bar */
    width: 100%;
    z-index: 1040;
    padding: 0; /* Remove padding to accommodate larger logo */
    overflow: visible; 
}

.navbar-custom .navbar-text {
    font-size: 1rem; /* Reduced font size */
    color: #fff;
    margin-left: 10px;
	margin-top: 50px;
}

.navbar-custom .navbar-brand img {
    height: 105px;
    z-index: 5000; /* Reduced logo height */
}

.navbar-custom .right-nav-image {
    height: 110px; /* Reduced height */
    margin-left: 10px;
    z-index: 5000;
}

.phone-number-bar {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #222725; /* Match navbar background color */
    z-index: 1050; /* Ensure it stays above other elements */
    padding: 5px 0; /* Adjust padding as needed */
    text-align: center; /* Center the phone number text */
}

/* Phone Number Text */
.phone-number-text {
    font-size: 1.25rem; /* Adjusted font size */
    color: #fff;
    font-weight: bold;
    z-index: 5000;
}
.fb-like{
	display: flex; 
	justify-content: center; 
	align-items: center; 
	height: 100%;
	margin-left: 10px;
}



/* Ensure everything lines up horizontally */
.navbar-custom .container-fluid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 5000;
}

.navbar-custom .collapse.navbar-collapse {
    flex-grow: 1;
    justify-content: center;
}

/* Center the navigation items */
.navbar-nav {
  z-index: 5000;
  flex-direction: row;
  margin-left: -45px;
}

.navbar-nav .nav-item {
    margin: 0 10px; /* Adjust spacing between nav items */
}

/* Adjust the toggler button position */
.navbar-toggler {
    margin-left: 5px;
}

/* Remove default margin from the navbar-brand */
.navbar-brand {
    margin-right: 0;
}


.navbar-custom .container {
	max-width: 135.5rem;
}

.navbar-custom .navbar-brand.logo-image {

}

.navbar-custom .navbar-brand.logo-image img {
    height: 150px;
}

.navbar-custom .navbar-brand.logo-text {
	font: 700 2rem/1.5rem "Open Sans", sans-serif;
  z-index: 5000;
	color: #fff;;
	text-decoration: none;
}

.navbar-custom .navbar-nav {
	margin-top: 0.75rem;
	margin-bottom: 0.5rem;
}

.navbar-custom .nav-item .nav-link {
	padding: 0.625rem 0.75rem 0.625rem 0.75rem;
	color: #fffff;
	text-decoration: none;
	transition: all 0.4s ease;
}

.navbar-custom .nav-item .nav-link:hover,
.navbar-custom .nav-item .nav-link.active {
	color: #e70000;
	opacity: 1;
}

/* Dropdown Menu */
.navbar-custom .dropdown:hover > .dropdown-menu {
    display: block; /* Makes the dropdown menu stay open while hovering */
    min-width: auto;
    animation: fadeDropdown 0.2s; /* Required for the fade animation */
}

/* Team Carousel */
.team-carousel .carousel-item {
    padding: 20px 0;
}

.team-carousel img {
    width: 150px;
    height: 150px;
    object-fit: cover;
    border-radius: 50%;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2);
}

.team-carousel h5 {
    font-weight: 600;
    color: #333;
}

.team-carousel p {
    font-size: 0.9rem;
    color: #666;
}

/* Team Background Styles */
.team-background {
    position: relative;
    background-image: url('../images/team-bg.webp'); /* Replace with your background image path */
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 100%;
    overflow: hidden;
    padding: 60px 0; /* Adjust padding as needed */
}

/* Darkened Overlay */
.team-background::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); /* Adjust opacity for darkness */
    z-index: 1;
}

/* Ensure Carousel Content Appears Above Overlay */
.team-background .team-carousel {
    position: relative;
    z-index: 2;
}

/* Optional: Style Adjustments for Carousel Items */
.team-carousel .carousel-inner {
    padding: 20px; /* Adjust padding as needed */
}

.team-carousel h2,
.team-carousel h5 {
	color: #fff;
}
.team-carousel p {
    color: #fff; /* Change text color for contrast */
}


@keyframes fadeDropdown {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.navbar-custom .dropdown-toggle:focus { /* removes dropdown outline on focus */
	outline: 0;
}

.navbar-custom .dropdown-menu {
	margin-top: 0;
	border: none;
	border-radius: 0.25rem;
	background-color: #222725;
}

.navbar-custom .dropdown-item {
	color: #f7f5f5;
	opacity: 0.8;
	font: 700 0.875rem/0.875rem "Open Sans", sans-serif;
	text-decoration: none;
}

.navbar-custom .dropdown-item:hover {
	background-color: #222725;
	color: #fff;
	opacity: 1;
}

.navbar-custom .dropdown-items-divide-hr {
	width: 100%;
	height: 1px;
	margin: 0.75rem auto 0.725rem auto;
	border: none;
	background-color: #c4d8dc;
	opacity: 0.2;
}
/* end of dropdown menu */

.navbar-custom .nav-item .btn-outline-sm {
	margin-top: 0.25rem;
	margin-bottom: 1.375rem;
	margin-left: 0.5rem;
	border: 0.125rem solid #222725;
	color: #222725;
}

.navbar-custom .nav-item .btn-outline-sm:hover {
	background-color: #fff;
	color: #222725;
}

.navbar-custom .navbar-toggler {
	padding: 0;
	border: none;
	color: #222725;
	font-size: 2rem;
}

.navbar-custom button[aria-expanded='false'] .navbar-toggler-awesome.fas.fa-times{
	display: none;
}

.navbar-custom button[aria-expanded='false'] .navbar-toggler-awesome.fas.fa-bars{
	display: inline-block;
}

.navbar-custom button[aria-expanded='true'] .navbar-toggler-awesome.fas.fa-bars{
	display: none;
}

.navbar-custom button[aria-expanded='true'] .navbar-toggler-awesome.fas.fa-times{
	display: inline-block;
	margin-right: 0.125rem;
}
.row-collage {
  display: flex;
  flex-wrap: wrap;
  padding: 0 4px;
  align-items: stretch; /* Makes all items in the row stretch to align */
}

/* Create four equal columns that sit next to each other */
.column-collage {
  flex: 25%;
  max-width: 25%;
  padding: 0 4px;
  display: flex;
  flex-direction: column;
}

.column-collage img {
  margin-top: 8px;
  vertical-align: middle;
  width: 100%;
  height: auto;
}

/* Make the last image in each column have the same height */
.column-collage img:last-child {
  flex-grow: 1;
  object-fit: cover; /* Ensures image fills the available space */
}

/* Responsive layout - makes a two column-layout instead of four columns */
@media screen and (max-width: 800px) {
  .column-collage {
    flex: 50%;
    max-width: 50%;
  }
}

/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
  .column-collage {
    flex: 100%;
    max-width: 100%;
  }
}

/*********************/
/*    04. Header     */
/*********************/
.header {
	background-color: #f9f9f9;
}

.phone-number-container {
    position: absolute;
    top: 0;
    right: 0;
    padding: 10px 20px;
    background-color: #333; /* Optional: background color */
    color: white; /* Optional: text color */
    font-size: 16px; /* Adjust the font size */
    z-index: 9999; /* Make sure it's above the navbar */
}

.phone-number {
    font-weight: bold; /* Optional: make the phone number bold */
}

/*********************/
/*    4.5. Special   */
/*********************/
/* Wrapper for the entire content */
/* Wrapper for the entire content */
.content-wrapper {
    display: flex;
    height: 100vh; /* REMOVE ON PUBLISH OF DEV INDEX */
    margin-top: 106px; /* Offset for fixed navbar */
}

/* Image section with text overlay */
.imgheader {  
    background: url("../images/background.webp") no-repeat center center;
    background-size: cover;
    height: 80%; /* Full height of the container */
    width: 100%; /* Full width */
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative; /* Required for absolute positioning of text */
}
 
.imgheader::after {
    content: '';
    position: absolute;
    bottom: 0;            /* Position at the bottom of imgheader */
    left: 0;
    width: 100%;
    height: 5px;          /* Adjust the height as needed */
    background-color: #e70000;  /* Stripe color */
}

/* Centered text content */
.text-content {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    color: white;
    text-shadow: 1px 1px 2px black;
    padding: 2rem;
    bottom: 10rem; /* Positions the content at the bottom of the container */
    left: 50%; /* Centers horizontally */
    transform: translateX(-50%); 
}

.text-content h1, .text-content p, .text-content i {
    color: white;
}

/* Adjustments for mobile devices */
@media screen and (max-width: 768px) {
    .text-content {
        padding: 1.5rem;
    }
	
	.hide-when-small {
		display: none;
	}

    .text-content h1 {
        font-size: 2rem;
    }

    .text-content p {
        font-size: 1rem;
    }
}

@media screen and (max-width: 480px) {
    .text-content h1 {
        font-size: 1.5rem;
    }

    .text-content p {
        font-size: 0.9rem;
    }

    .text-content {
        padding: 1rem;
    }
}

/***********************/
/*  04. Header cont.   */
/***********************/

.header .header-content {
	padding-top: 8rem;
	padding-bottom: 4rem;
	text-align: center;
}

.header .text-container {
	margin-bottom: 3rem;
}

.header h1 {
	margin-bottom: 1rem;
	color: #00000;
	font-size: 2.5rem;
	line-height: 3rem;
}

.header .p-large {
	margin-bottom: 2rem;
	color: #242424;
}

.header .btn-solid-lg {
	margin-right: 0.5rem;
	margin-bottom: 1.125rem;
	margin-left: 0.5rem;
	border-color: #f3f7fd;
	background-color: #8c8c8c;
	color: #ffffff;
}

.header .btn-solid-lg:hover {
	background: transparent;
	color: #f3f7fd;
}

.header .btn-outline-lg {
	border-color: #222725;
	color: #222725;
}

.header .btn-outline-lg:hover {
	background-color: #f3f7fd;
	color: #222725;
}

.header-frame {
	margin-top: -1px; /* To remove white margin in FF */
	width: 100%;
	height: 2.25rem;
}


/*************************/
/*     05. Customers     */
/*************************/
.slider-1 {
	padding-top: 5rem;
	padding-bottom: 3.25rem;
}

.slider-1 .slider-container {
	text-align: center;
}


/***************************/
/*     06. Description     */
/***************************/
.cards-1 {
	padding-top: 3.25rem;
	padding-bottom: 3rem;
	text-align: center;
}

.cards-1 .h2-heading {
	margin-bottom: 3.5rem;
}

.cards-1 .card {
	max-width: 21rem;
	margin-right: auto;
	margin-bottom: 3.5rem;
	margin-left: auto;
	padding: 0;
	border: none;
}

.cards-1 .card-image {
	max-width: 16rem;
	margin-right: auto;
	margin-bottom: 2rem;
	margin-left: auto;
}

.cards-1 .card-title {
	margin-bottom: 0.5rem;
}

.cards-1 .card-body {
	padding: 0;
}


/************************/
/*     07. Features     */
/************************/
.tabs {
	padding-top: 8rem;
	padding-bottom: 8.125rem;
	background-color: #f3f7fd;
}

.tabs .h2-heading,
.tabs .p-heading {
	text-align: center;
}

.tabs .nav-tabs {
	display: block;
	margin-bottom: 2.25rem;
	border-bottom: none;
}

.tabs .nav-link {
	padding: 0.375rem 1rem 0.375rem 1rem;
	border: none;
	color: #86929b;
	font-weight: 700;
	font-size: 1.25rem;
	line-height: 1.75rem;
	text-align: center;
	text-decoration: none;
	transition: all 0.2s ease;
}

.tabs .nav-link:hover,
.tabs .nav-link.active {
	background: transparent;
	color: #222725;
}

.tabs .nav-link .fas {
	margin-right: 0.625rem;
}

.tabs .image-container {
	margin-bottom: 2.75rem;
}

.tabs .list-unstyled .fas {
	color: #222725;
	font-size: 0.5rem;
	line-height: 1.625rem;
}

.tabs .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.tabs #tab-1 h3 {
	margin-bottom: 0.75rem;
}

.tabs #tab-1 .list-unstyled {
	margin-bottom: 1.5rem;
}

.tabs #tab-2 h3 {
	margin-bottom: 0.75rem;
}

.tabs #tab-2 .list-unstyled {
	margin-bottom: 1.5rem;
}

.tabs #tab-3 h3 {
	margin-bottom: 0.75rem;
}

.tabs #tab-3 .list-unstyled {
	margin-bottom: 1.5rem;
}


/***********************************/
/*     08. Features Lightboxes     */
/***********************************/
.lightbox-basic {
	margin: 2.5rem auto;
	padding: 2rem 1.5rem 2rem 1.5rem;
	border-radius: 0.25rem;
	background: #fff;
	text-align: left;
}

.lightbox-basic .container {
	padding-right: 0;
	padding-left: 0;
}

.lightbox-basic .image-container {
	
	margin-right: auto;
	margin-bottom: 3rem;
	margin-left: auto;
}

.lightbox-basic h3 {
	margin-bottom: 0.5rem;
}

.lightbox-basic hr {
	width: 2.5rem;
	height: 0.125rem;
	margin-top: 0;
	margin-bottom: 0.875rem;
	margin-left: 0;
	border: 0;
	background-color: #222725;
	text-align: left;
}

.lightbox-basic h4 {
	margin-bottom: 1rem;
}

.lightbox-basic .list-unstyled .fas {
	color:#222725;
	font-size: 0.5rem;
	line-height: 1.625rem;
}

.lightbox-basic .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.lightbox-basic .btn-outline-reg,
.lightbox-basic .btn-solid-reg {
	margin-top: 0.75rem;
}

/* Signup Button */
.lightbox-basic .btn-solid-reg.mfp-close {
	position: relative;
	width: auto;
	height: auto;
	color: #fff;
	opacity: 1;
}

.lightbox-basic .btn-solid-reg.mfp-close:hover {
	color: #222725;
}
/* end of signup Button */

/* Back Button */
.lightbox-basic a.mfp-close.as-button {
	position: relative;
	width: auto;
	height: auto;
	margin-left: 0.375rem;
	color: #222725;
	opacity: 1;
}

.lightbox-basic a.mfp-close.as-button:hover {
	color: #fff;
}
/* end of back button */

.lightbox-basic button.mfp-close.x-button {
	position: absolute;
	top: -0.125rem;
	right: -0.125rem;
	width: 2.75rem;
	height: 2.75rem;
	color: #707984;
}


/***********************/
/*     09. Details     */
/***********************/
.basic-1 {
	padding-top: 7.5rem;
}

.basic-1 .text-container {
	margin-bottom: 3.75rem;
}

.basic-1 .list-unstyled {
	margin-bottom: 1.375rem;
}

.basic-1 .list-unstyled .fas {
	color: #222725;
	font-size: 0.5rem;
	line-height: 1.625rem;
}

.basic-1 .list-unstyled .media-body {
	margin-left: 0.625rem;
}


/*********************/
/*     10. Video     */
/*********************/
.basic-2 {
	padding-top: 8rem;
	padding-bottom: 6.75rem;
	background-color: #f3f7fd;
	text-align: center;
}

.basic-2 .image-container {
	margin-bottom: 2rem;
}

.basic-2 .image-container img {
	border-radius: 0.75rem;
}

.basic-2 .video-wrapper {
	position: relative;
}

/* Video Play Button */
.basic-2 .video-play-button {
	position: absolute;
	z-index: 10;
	top: 50%;
	left: 50%;
	display: block;
	box-sizing: content-box;
	width: 2rem;
	height: 2.75rem;
	padding: 1.125rem 1.25rem 1.125rem 1.75rem;
	border-radius: 50%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
}
  
.basic-2 .video-play-button:before {
	content: "";
	position: absolute;
	z-index: 0;
	top: 50%;
	left: 50%;
	display: block;
	width: 4.75rem;
	height: 4.75rem;
	border-radius: 50%;
	background: #222725;
	animation: pulse-border 1500ms ease-out infinite;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
}
  
.basic-2 .video-play-button:after {
	content: "";
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	display: block;
	width: 4.375rem;
	height: 4.375rem;
	border-radius: 50%;
	background: #222725;
	transition: all 200ms;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-ms-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
}
  
.basic-2 .video-play-button span {
	position: relative;
	display: block;
	z-index: 3;
	top: 0.375rem;
	left: 0.25rem;
	width: 0;
	height: 0;
	border-left: 1.625rem solid #fff;
	border-top: 1rem solid transparent;
	border-bottom: 1rem solid transparent;
}
  
@keyframes pulse-border {
	0% {
		transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
		opacity: 1;
	}
	100% {
		transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.5);
		opacity: 0;
	}
}
/* end of video play button */  

.basic-2 .p-heading {
	margin-bottom: 1rem;
}


/***********************/
/*     11. Pricing     */
/***********************/
.cards-2 {
	padding-top: 7.875rem;
	padding-bottom: 2.25rem;
	text-align: center;
}

.cards-2 .h2-heading {
	margin-bottom: 3.75rem;
}

.cards-2 .card {
	display: block;
	max-width: 19rem;
	margin-right: auto;
	margin-bottom: 3rem;
	margin-left: auto;
	border: 1px solid #ccd3df;
	border-radius: 0.375rem;
}

.cards-2 .card .card-body {
	padding: 2.5rem 2rem 2.75rem 2em;
}

.cards-2 .card .card-title {
	margin-bottom: 0.5rem;
	color: #222725;
	font: 700 1.125rem/1.5rem "Open Sans", sans-serif;
}

.cards-2 .card .price .currency {
	margin-right: 0.25rem;
	color: #434c54;
	font-weight: 700;
	font-size: 1.5rem;
	vertical-align: 40%;
}

.cards-2 .card .price .value {
	color: #434c54;
	font: 700 3.25rem/3.5rem "Open Sans", sans-serif;
	text-align: center;
}

.cards-2 .card .frequency {
	font-size: 0.875rem;
}

.cards-2 .card .divider {
	height: 1px;
	margin-top: 1.75rem;
	margin-bottom: 2rem;
	border: none;
	background-color: #ccd3df;
}

.cards-2 .card .list-unstyled {
	margin-top: 1.875rem;
	margin-bottom: 1.625rem;
	text-align: left;
}

.cards-2 .card .list-unstyled .media {
	margin-bottom: 0.5rem;
}

.cards-2 .card .list-unstyled .fas {
	color: #222725;
	font-size: 0.875rem;
	line-height: 1.625rem;
}

.cards-2 .card .list-unstyled .fas.fa-times {
	margin-left: 0.1875rem;
	margin-right: 0.125rem;
	color: #555;
}

.cards-2 .card .list-unstyled .media-body {
	margin-left: 0.625rem;
}


/****************************/
/*     12. Testimonials     */
/****************************/
.slider-2 {
	padding-top: 2.75rem;
	padding-bottom: 4rem;
}

.slider-2 .slider-container {
	position: relative;
}

.slider-2 .swiper-container {
	position: static;
	width: 82%;
	text-align: center;
}

.slider-2 .image-wrapper {
	width: 6rem;
	margin-right: auto;
	margin-bottom: 1rem;
	margin-left: auto;
}

.slider-2 .image-wrapper img {
	border-radius: 50%;
}

.slider-2 .testimonial-text {
	margin-bottom: 0.5rem;
}

.slider-2 .testimonial-author {
	color: #333;
}

.slider-2 .swiper-button-prev,
.slider-2 .swiper-button-next {
	width: 1.125rem;
}

.slider-2 .swiper-button-prev:focus,
.slider-2 .swiper-button-next:focus {
	/* even if you can't see it chrome you can see it on mobile device */
	outline: none;
}

.slider-2 .swiper-button-prev {
	left: -0.375rem;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2028%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23505c67'%2F%3E%3C%2Fsvg%3E");
	background-size: 1.125rem 1.75rem;
}

.slider-2 .swiper-button-next {
	right: -0.375rem;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2028%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23505c67'%2F%3E%3C%2Fsvg%3E");
	background-size: 1.125rem 1.75rem;
}


/**************************/
/*     13. Newsletter     */
/**************************/
.form {
	padding-top: 4rem;
	padding-bottom: 6rem;
}

.form .text-container {
	margin-bottom: 3.5rem;
	padding: 3.5rem 1rem 2.5rem 1rem;
	border-radius: 0.5rem;
	background-color: #f3f7fd;
}

.form h2 {
	margin-bottom: 2.75rem;
	text-align: center;
}

.form .icon-container {
	text-align: center;
}

.form .fa-stack {
	width: 2em;
	margin-bottom: 0.75rem;
	margin-right: 0.375rem;
	font-size: 1.5rem;
}

.form .fa-stack .fa-stack-1x {
    color: #fff;
	transition: all 0.2s ease;
}

.form .fa-stack .fa-stack-2x {
	color: #222725;
	transition: all 0.2s ease;
}

.form .fa-stack:hover .fa-stack-1x {
	color: #222725;
}

.form .fa-stack:hover .fa-stack-2x {
    color: #f3f7fd;
}


/* Circle Image Styling */
.circle-img img {
    width: 150px; /* Adjust size as needed */
    height: 150px;
    object-fit: cover;
    border-radius: 50%;
    border: 3px solid #ddd; /* Optional border */
}

.skills-section h2 {
    font-size: 36px;
    color: #333;
    margin-bottom: 30px;
}

.skills-section h4 {
    font-size: 24px;
    color: #555;
    margin-top: 15px;
}

.skills-section p {
    font-size: 16px;
    color: #777;
}

/**********************/
/*     14. Footer     */
/**********************/
.footer-frame {
	width: 100%;
	height: 1.5rem;
}

.footer {
	padding-top: 3rem;
	padding-bottom: 0.5rem;
	background-color: #e73737;
}

.footer .footer-col {
	margin-bottom: 2.25rem;
}

.footer h4 {
	margin-bottom: 0.625rem;
	color: #fff;
}

.footer .list-unstyled,
.footer p {
	color: #f3f7fd;
}

.footer .footer-col.middle .list-unstyled .fas {
	color: #fff;
	font-size: 0.5rem;
	line-height: 1.5rem;
}

.footer .footer-col.middle .list-unstyled .media-body {
	margin-left: 0.5rem;
}


.footer .footer-col.last .list-unstyled .fas {
	color: #fff;
	font-size: 0.875rem;
	line-height: 1.5rem;
}

.footer .footer-col.last .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.footer .footer-col.last .list-unstyled .fas.fa-globe {
	margin-left: 1rem;
	margin-right: 0.625rem;
}


/*************************/
/*     15. Copyright     */
/*************************/
.copyright {
	padding-top: 1rem;
	padding-bottom: 0.375rem;
	background-color: #222725;
	text-align: center;
}

.copyright .p-small {
	padding-top: 1.375rem;
	border-top: 1px solid #718ad1;
	color: #f3f7fd;
}

.copyright a {
	color: #f3f7fd;
	text-decoration: none;
}


/**********************************/
/*     16. Back To Top Button     */
/**********************************/
a.back-to-top {
	position: fixed;
	z-index: 999;
	right: 0.75rem;
	bottom: 0.75rem;
	display: none;
	width: 2.625rem;
	height: 2.625rem;
	border-radius: 1.875rem;
	background: #e70000 url("../images/uparrow.png") no-repeat center 47%;
	background-size: 1.125rem 1.125rem;
	text-indent: -9999px;
}

a:hover.back-to-top {
	background-color: #222725; 
}


/***************************/
/*     17. Extra Pages     */
/***************************/
.ex-header {
	padding-top: 8rem;
	padding-bottom: 5rem;
	background-color: #222725;
	text-align: center;
}

.ex-header h1 {
	color: #fff;
}

.ex-basic-1 {
	padding-top: 2rem;
	padding-bottom: 0.875rem;
	background-color: #f3f7fd;
}

.ex-basic-1 .breadcrumbs {
	margin-bottom: 1.125rem;
}

.ex-basic-1 .breadcrumbs .fa {
	margin-right: 0.5rem;
	margin-left: 0.625rem;
}

.ex-basic-2 {
	padding-top: 4.75rem;
	padding-bottom: 4rem;
}

.ex-basic-2 h3 {
	margin-bottom: 1rem;
}

.ex-basic-2 .text-container {
	margin-bottom: 3.625rem;
}

.ex-basic-2 .text-container.last {
	margin-bottom: 0;
}

.ex-basic-2 .text-container.dark {
	padding: 1.625rem 1.5rem 0.75rem 2rem;
	background-color: #f3f7fd;
}

.ex-basic-2 .image-container-large {
	margin-bottom: 4rem;
}

.ex-basic-2 .image-container-large img {
	border-radius: 0.25rem;
}

.ex-basic-2 .image-container-small img {
	border-radius: 0.25rem;
}

.ex-basic-2 .list-unstyled .fas {
	color: #222725;
	font-size: 0.5rem;
	line-height: 1.625rem;
	scale: 3;
	margin-right: 8px;
}

.ex-basic-2 .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.ex-basic-2 .form-container {
	margin-top: 3rem;
}

.ex-basic-2 .btn-outline-reg {
	margin-top: 1.75rem;
}

.ex-footer-frame {
	width: 100%;
	height: 2.75rem;
	background-color: #f3f7fd;
}


/****************************************/
/*     18. Sign Up and Log In Pages     */
/****************************************/
.ex-2-header {
	padding-top: 9rem;
	background-color: #222725;
	text-align: center;
	min-height: 100vh;
}

.ex-2-header h1,
.ex-2-header p {
	color: #fff;
}

.ex-2-header p {
	max-width: 24rem;
	margin-right: auto;
	margin-bottom: 2.5rem;
	margin-left: auto;
}
.license-heading {
	color: #fff;
}

.ex-2-header .form-container {
	max-width: 26rem;
	margin-right: auto;
	margin-left: auto;
	padding: 2.25rem 1.25rem 1.25rem 1.25rem;
	border-radius: 0.5rem;
	background-color: #f3f7fd;
}

.ex-2-header .checkbox {
	text-align: left;
}


/*****************************/
/*     19. Media Queries     */
/*****************************/	
/* Min-width width 768px */
@media (min-width: 768px) {
	
	/* General Styles */
	.p-heading {
		width: 85%;
		margin-right: auto;
		margin-left: auto;
	}

	.h2-heading {
		width: 80%;
		margin-right: auto;
		margin-left: auto;
	}
	/* end of general styles */


	/* Header */
	.header .text-container {
		margin-bottom: 4rem;
	}

	.header h1 {
		font-size: 3.5rem;
		line-height: 4.125rem;
	}

	.header .btn-solid-lg {
		margin-bottom: 0;
		margin-left: 0;
	}

	.header-frame {
		height: 5.5rem;
	}
	/* end of header */


	/* Testimonials */
	.slider-2 .swiper-button-prev {
		width: 1.375rem;
		background-size: 1.375rem 2.125rem;
	}
	
	.slider-2 .swiper-button-next {
		width: 1.375rem;
		background-size: 1.375rem 2.125rem;
	}
	/* end of testimonials */


	/* Newsletter */
	.form .text-container {
		padding: 4rem 2.5rem 3rem 2.5rem;
	}

	.form form {
		margin-right: 4rem;
		margin-left: 4rem;
	}
	/* end of newsletter */


	/* Footer */
	.footer-frame {
		height: 5rem;
	}
	/* end of footer */


	/* Extra Pages */
	.ex-header {
		padding-top: 15rem;
		padding-bottom: 9rem;
	}

	.ex-basic-2 .text-container.dark {
		padding: 2.5rem 3rem 2rem 3rem;
	}

	.ex-basic-2 .form-container {
		margin-top: 0;
	}
	/* end of extra pages */


	/* Sign Up And Log In Pages */
	.ex-2-header {
		padding-top: 11rem;
	}

	.ex-2-header .form-container {
		padding: 2.25rem 1.75rem 1.25rem 1.75rem;
	}
	/* end of sign up and log in pages */
}
/* end of min-width width 768px */
/* Optional styling for the second row */
.contact-desktop {
    background-color: #f8f9fa; /* Light background for contact form */
    padding: 10px 0; /* Padding for the form section */
}

.contact-desktop .form-control {
    width: 180px; /* Adjust width of input fields */
    min-width: 150px; /* Ensure consistent field width */
}

.contact-desktop a {
    padding: 12px 20px;
    font-size: 16px;
    background-color: #007bff;
    color: white;
    text-decoration: none;
    align-self: center; /* Center the button vertically */
}

.contact-desktop a:hover {
    background-color: #0056b3;
}

@media (max-width: 767.98px) {
	.navbar-brand img,
    .right-nav-image {
        max-height: 60px; /* Adjust as necessary */
    }
	.navbar-nav {
		flex-direction: column !important; /* Force vertical arrangement */
		align-items: center !important;   /* Ensure items are centered */
		width: 100%;                      /* Ensure it spans the full width */
	  }
    .navbar-nav .nav-item {
		margin: 10px 0 !important; /* Add vertical spacing between items */
		width: 100%;               /* Ensure each item takes full width */
		text-align: center;        /* Center align text */
	  }
	.navbar-custom {
		margin-top: -30px;
	}
	.navbar-collapse {
		display: flex; 
		align-items: center !important;    /* Center items in the menu */
		flex-direction: column !important;
		text-align: center; /* Ensure the collapse menu is centered */
	}
    /* Show phone number and image in collapsed menu on mobile */
    .navbar-custom .collapse.navbar-collapse .d-md-flex {
        display: flex !important;
        justify-content: center;
        margin-top: -15px;
    }
	.navbar-nav .nav-link {
        padding: 0.5rem 1rem; /* Reduce padding for mobile */
        text-align: center;   /* Center the text */
    }
}

@media (max-width: 668px) {
    .contact-desktop {
        pointer-events: none;  /* Disables clicking */
        opacity: 0;        
    }
    .desktop-logo {
        display: none; /* Hide desktop logo */
    }

    .mobile-logo {
        display: block; /* Show mobile logo */
    }
}

/* Phone number flex adjustment for screen width below 1390px */
@media (max-width: 1517px) {
    .navbar .container {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .navbar-brand,
    .navbar-nav {
        width: 100%;
        text-align: center;
    }

    .navbar-nav {
        display: flex;
        justify-content: right;
        flex-direction: row;
    }
}



/* Min-width width 992px */
@media (max-width: 992px) {
	
	/* Navigation */
	.navbar-custom {
		padding: 2.125rem 1.5rem 2.125rem 2rem;
    background-color: #222725;
		box-shadow: none;
    z-index: 5000;
	}
	
	.navbar-brand .desktop-logo,
	  .navbar-brand .mobile-logo {
		transform: scale(1.4); /* Adjust the scale factor for desired size */
		transform-origin: center center;/* Automatically adjust height to maintain aspect ratio */
	  }

	.navbar-custom .navbar-nav {
    justify-content: right;
		margin-top: 0;
		margin-bottom: 0;
		margin-left: -20px;
	}

	.navbar-custom .nav-item .nav-link {
		padding: 0.25rem 0.75rem 0.25rem 0.75rem;
	}
	
	.navbar-custom .nav-item .nav-link:hover,
	.navbar-custom .nav-item .nav-link.active {
		opacity: 1;
	}

	.navbar-custom.top-nav-collapse {
        padding: 0.5rem 1.5rem 0.5rem 2rem;
		background-color: #222725;
		box-shadow: 0 0.0625rem 0.375rem 0 rgba(0, 0, 0, 0.1);
	}

	.navbar-custom.top-nav-collapse .nav-item .nav-link:hover,
	.navbar-custom.top-nav-collapse .nav-item .nav-link.active {
		color: #fffff;
	}

	.navbar-custom .dropdown-menu {
		padding-top: 1rem;
		padding-bottom: 1rem;
		border-top: 0.25rem solid rgba(0, 0, 0, 0);
		border-radius: 0.25rem;
	}

	.navbar-custom.top-nav-collapse .dropdown-menu {
		border-top: 0.25rem solid rgba(0, 0, 0, 0);
		box-shadow: 0 0.375rem 0.375rem 0 rgba(0, 0, 0, 0.02);
	}

	.navbar-custom .dropdown-item {
		padding-top: 0.25rem;
		padding-bottom: 0.25rem;
	}

	.navbar-custom .dropdown-items-divide-hr {
		width: 81%;
	}

	.navbar-custom .nav-item .btn-outline-sm {
		margin-top: 0;
		margin-bottom: 0;
		margin-left: 1rem;
	}
	/* end of navigation */


	/* General Styles */
	.p-heading {
		width: 65%;
	}

	.h2-heading {
		width: 60%;
	}
	/* end of general styles */


	/* Header */
	.header .header-content {
		text-align: left;
	}

	.header .text-container {
		margin-top: 4rem;
		margin-bottom: 0;
	}

	.header .image-container {
		position: relative;
		margin-top: 3rem;
	}
	
	.header .image-container .img-wrapper {
		position: absolute;
		display: block;
		width: 470px;
	}

	.header-frame {
		height: 8rem;
	}
	/* end of header */


	/* Description */
	.cards-1 .card {
		display: inline-block;
		width: 17rem;
		max-width: 100%;
		margin-right: 1rem;
		margin-left: 1rem;
		vertical-align: top;
	}

	.cards-1 .card-image {
		width: 9rem;
	}
	/* end of description */


	/* Features */
	.tabs .nav-tabs {
		display: flex;
		justify-content: center;
		margin-bottom: 2.75rem;
	} 

	.tabs .nav-link {
		padding-right: 1.25rem;
		padding-left: 1.25rem;
		border-bottom: 2px solid rgb(202, 202, 202);
	}
	
	.tabs .nav-link:hover,
	.tabs .nav-link.active {
		border-bottom: 2px solid #222725;
	}

	.tabs .image-container {
		margin-bottom: 0;
	}
	/* end of features */


	/* Features Lightboxes */
	.lightbox-basic {
		max-width: 62.5rem;
		padding: 2.5rem 2.5rem 2.5rem 2.5rem;
	}

	.lightbox-basic .image-container {
		max-width: 100%;
		margin-right: 2rem;
		margin-bottom: 0;
		margin-left: 0.5rem;
	}
	
	.lightbox-basic h3 {
		margin-top: 0.5rem;
	}
	/* end of features lightboxes */


	/* Details */
	.basic-1 {
		padding-top: 8rem;
	}

	.basic-1 .text-container {
		margin-bottom: 0;
	}
	/* end of details */


	/* Video */
	.basic-2 .image-container {
		max-width: 53.125rem;
		margin-right: auto;
		margin-left: auto;
	}

	.basic-2 p {
		width: 65%;
		margin-right: auto;
		margin-left: auto;
	}
	/* end of video */


	/* Pricing */
	.cards-2 .card {
		display: inline-block;
		margin-right: 0.5rem;
		margin-left: 0.5rem;
		vertical-align: top;
	}
	/* end of pricing */


	/* Testimonials */
	.slider-2 .swiper-container {
		width: 92%;
		text-align: left;
	}

	.slider-2 .image-wrapper {
		float: left;
		width: 10rem;
		margin-bottom: 0;
	}

	.slider-2 .text-wrapper {
		max-width: 100%;
		margin-top: 1.25rem;
		margin-left: 13rem;
	}

	.slider-2 .swiper-button-prev {
		left: -0.75rem;
	}

	.slider-2 .swiper-button-next {
		right: -0.75rem;
	}
	/* end of testimonials */


	/* Newsletter */
	.form .text-container {
		width: 55rem;
		margin-right: auto;
		margin-left: auto;
		padding-top: 5rem;
		padding-bottom: 4.5rem;
	}

	.form h2 {
		margin-right: 7rem;
		margin-left: 7rem;
	}

	.form form {
		margin-right: 9rem;
		margin-left: 9rem;
	}
	/* end of newsletter */


	/* Extra Pages */
	.ex-header h1 {
		width: 80%;
		margin-right: auto;
		margin-left: auto;
	}

	.ex-basic-2 {
		padding-bottom: 5rem;
	}
	/* end of extra pages */
}
/* end of min-width width 992px */


/* Min-width width 1200px */
@media (min-width: 1200px) {
	
	/* General Styles */
	.h2-heading {
		width: 50%;
	}
	/* end of general styles */


	/* Header */
	.header .header-content {
		padding-top: 11rem;
		padding-bottom: 5rem;
	}

	.header .text-container {
		margin-top: 5.5rem;
		margin-right: 0.5rem;
	}

	.header .image-container {
		margin-top: 1rem;
		margin-left: 1.5rem;
	}

	.header .image-container .img-wrapper {
		width: 630px;
	}

	.header-frame {
		height: 9.375rem;
	}
	/* end of header */
	

	/* Customer */
	.slider-1 .slider-container {
		margin-right: 3rem;
		margin-left: 3rem;
	}
	/* end of customer */


	/* Description */
	.cards-1 .card {
		width: 18.875rem;
		margin-right: 2rem;
		margin-left: 2rem;
	}

	.cards-1 .card-image {
		width: 12.5rem;
	}
	/* end of description */


	/* Features */
	.tabs .image-container {
		margin-right: 1.5rem;
		margin-left: 1rem;
	}
	
	.tabs .text-container {
		margin-top: 1.5rem;
		margin-right: 1rem;
		margin-left: 1.5rem;
	}
	/* end of features */


	/* Details */
	.basic-1 .image-container {
		margin-right: 1rem;
		margin-left: 1.5rem;
	}
	
	.basic-1 .text-container {
		margin-top: 1rem;
		margin-right: 1.5rem;
		margin-left: 1rem;
	}

	.basic-1 h2 {
		margin-bottom: 1rem;
	}
	/* end of details */


	/* Pricing */
	.cards-2 .card {
		width: 19.375rem;
		max-width: 100%;
		margin-right: 1.75rem;
		margin-left: 1.75rem;
	}

	.cards-2 .card .card-body {
		padding-right: 2.25rem;
		padding-left: 2.25rem;
	}
	/* end of pricing */


	/* Testimonials */
	.slider-2 .slider-container {
		width: 64.125rem;
		margin-right: auto;
		margin-left: auto;
	}
	/* end of testimonials */


	/* Newsletter */
	.form .text-container {
		width: 64.75rem;
		padding-top: 6rem;
		padding-bottom: 5.5rem;
	}

	.form h2 {
		margin-right: 12rem;
		margin-left: 12rem;
	}

	.form form {
		margin-right: 15rem;
		margin-left: 15rem;
	}
	/* end of newsletter */


	/* Footer */
	.footer .footer-col.first {
		margin-right: 1.5rem;
	}

	.footer .footer-col.middle {
		margin-right: 0.75rem;
		margin-left: 0.75rem;
	}

	.footer .footer-col.last {
		margin-left: 1.5rem;
	}
	/* end of footer */


	/* Extra Pages */
	.ex-header h1 {
		width: 60%;
		margin-right: auto;
		margin-left: auto;
	}

	.ex-basic-2 .form-container {
		margin-left: 1.75rem;
	}

	.ex-basic-2 .image-container-small {
		margin-left: 1.75rem;
	}
	/* end of extra pages */
}
/* end of min-width width 1200px */