@import url(https://fonts.googleapis.com/css?family=Lora:400,700);
@import url(https://fonts.googleapis.com/css?family=Roboto:400,700);
body{
	font-family: "Trebuchet MS", Sans-serif;
}
section{
	padding: 60px 0 20px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.title-box{
	text-align: center;
	text-transform: uppercase;
	position: relative;
	margin-bottom: 60px;
}
.title-box:after{
	content: '';
	width: 50px;
	height: 3px;
	position: absolute;
	bottom: -20px;
	left: calc(50% - 25px);
	background-color: #30ADDD;
}
.section-title{
	margin-top: 0;
}
.section-subtitle{
	/*margin-bottom: 0;*/
}

.c-table{
	width: 100%;
	height: 100%;
	display: table;
	text-align: center;
}
.ct-cell{
	color: #fff;
	display: table-cell;
	vertical-align: middle;
}

.overlay-light, .overlay-dark{
	position: relative;
}
.overlay-light div, .overlay-dark div{
	z-index: 2;
}
.overlay-light:after, .overlay-dark:after{
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 1;
}
.overlay-light:after{
	background-color: rgba(255, 255, 255, 0.8);
}
.overlay-dark:after{
	background-color: rgba(0, 0, 0, 0.5);
}

.img-full{
	width: 135%;
}





/*navbar*/
.navbar-default .navbar-nav>.active>a, .navbar-default .navbar-nav>.active>a:focus, .navbar-default .navbar-nav>.active>a:hover{
	color: #fff;
	background-color: #01172d;
}
.navbar-default .navbar-nav>li>a{
	color: #fff;
	text-transform: uppercase;
}
.navbar-default .navbar-nav>li>a:focus, .navbar-default .navbar-nav>li>a:hover{
	color: #fff;
}
.navbar-default{
	background-color: #0e2742;
	border-color: transparent;
}
.navbar-brand img{
	width: 60px;
	transition: all 0.4s ease-in-out;
}
.navbar-toggle{
	border-radius: 0;
}
@media (min-width: 768px){
	.navbar-brand img{
		width: 310px;
	}
	.navbar-nav>li>a{
		padding-top: 30px;
		padding-bottom: 30px;
	}	
}





/**********************
		Header
**********************/
/* Reset basic spacing */


/* 1. GLOBAL RESETS */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: #f9f9f9;
  font-family: sans-serif;
}

/* 2. DESKTOP / DEFAULT STYLES */
.site-header {
  background-color: #ffffff;
  padding: 20px 20px; /* Generous padding for desktop view */
  border-bottom: 1px solid #eaeaea;
}

.header-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* Logo Setup */
.site-logo {
  width: 180px;       /* Standard desktop logo size */
  max-width: 100%;    /* Prevents logo from ever overflowing its container */
  height: auto;       /* Maintains perfect aspect ratio */
  display: block;
}

.site-content {
  padding: 20px;
}

/* Banner Setup */
.main-banner {
	
  width: 107%;        /* Fluid width: stretches to fill the container */
  max-width: 2000px;  /* Desktop upper limit limit */
  height: auto;       /* Changes height dynamically based on width scale */
  display: block;
  margin: -20px -40px;
    margin-top: -20px;
    margin-right: -40px;
    margin-bottom: -60px;
    margin-left: -37px;
  border-radius: 8px; /* Smooth rounded corners on desktop */

}

/* 3. MOBILE RESPONSIVE TWEAKS (Screens under 768px wide) */
@media (max-width: 768px) {
  .site-header {
    padding: 12px 15px; /* Shrunk padding so it fits narrow screens */
  }

  .site-logo {
    width: 130px;       /* Scales logo down so it fits better on mobile headers */
  }

  .site-content {
    padding: 10px;      /* Reduces whitespace margins on mobile edges */
  }

  .main-banner {
  	width: 127%;          /* Forces the banner to span the full screen width */
    border-radius: 0px; /* Flush edge-to-edge look looks better on mobile */
  }
}




/**********************
		CTA
**********************/
.cta{
	color: #000;
	text-align: justify;
	padding: 0;
}
.cta-bg{
	background-color: #ebe9de;
	padding: 60px 0;
}
.cta h1{
	text-transform: uppercase;
}
.cta-btn{
	margin-top: 20px;
	display: inline-block;
	font-size: 30px;
	padding: 10px 30px;
	border: 3px solid #757171;
}
.cta-btn a{
	color: #313030;
	text-decoration: none;
}


/**********************
		Choose
**********************/
.choose{
	text-align: center;
	background-image: url(../images/choose.jpg);
}
.choose-box{
	margin-bottom: 30px;
}
.choose-icon{
	color: #4c4c4c;
	font-size: 72px;
}
.choose-title{
	text-transform: uppercase;
	font-size: 18px;
	letter-spacing: 2px;
	margin-top: 10px;
	margin-bottom: 30px;
}
.choose-detail{

}






/**********************
		Practice
**********************/



/* The default look of the box */
.hover-box {
  width: 290px;
  padding: 2px;
  background-color: #f9f9f9;
  border: 2px solid #ddd;
  border-radius: 10px;
  text-align: center;
  
  /* This makes the change smooth instead of a sudden snap */
  transition: all 0.3s ease;
  cursor: pointer;
}

.hover-box i {
    font-size: 42px;
    color: #333;
    display: block;
    margin-bottom: 15px;
}

/* What happens when you hover */
.hover-box:hover {
  background-color: #0e2742;
  border-color: #0e2742; /* A nice blue color */
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1); /* Adds a soft shadow */
  transform: translateY(-5px); /* Makes the box "pop" up slightly */
}

.hover-box:hover h3 {
  color: #fff;
}

.hover-box:hover i {
    font-size: 42px;
    color: #fff;
    display: block;
    margin-bottom: 15px;
}







.practice{
	text-transform: uppercase;
}
.practice-box{
	position: relative;
	margin-bottom: 30px;
	font-family: 'Roboto';
}
.practice-box:hover .overlay{
	opacity: 1;
}
.overlay{
	top: 0;
	left: 0;
	opacity: 0;
	width: 100%;
	height: 100%;
	position: absolute;
	transition: all 0.4s ease-in-out;
	background-color: rgba(0, 84, 166, 0.7);
}
.paractice-icon{
	font-size: 72px;
}
.practice-title{
	font-size: 20px;
	margin: 0;	
}






/**********************
		Consultation
**********************/
.consultation{
	background-color: #F2EEED;
}
.consultation-form .form-control{
	margin-bottom: 30px;
	border-radius: 0;
}
.consultation-form  .bootstrap-select .btn, .consultation-form .dropdown-menu{
	border-radius: 0;
}
.btn-cn{
	background-color: #2546B2;
	border-radius: 0;
	color: #fff;
}
.btn-cn:hover{
	border-color: #2546B2;
	background-color: transparent;
	color: #455579;
}








/**********************
		Slider
**********************/
.slider-1{
	text-align: justify;
	font-weight: 500;
	background-image: url(../images/familly-back.jpg);
	
}
#slider_1{
	background-color: #ebe9de;

}
.slider-1-item-box{
	color: #000;
	padding: 0px;
}
.slider-1-item-box h2{
	margin:-40px auto 20px;
	text-transform: uppercase;
}
.slider-icon{
	font-size: 72px;
}
.slider-1-item-box p{
	line-height: 1.5;
	font-size: 17px;
	font-family: "Trebuchet MS", Sans-serif;
}
.slider_1{
	position: relative;
}
.slider_1 .owl-controls .owl-dots{
	bottom: 40px;
    position: relative;
}
.mb0{
	margin-bottom: -33px;
}


/**********************
		Team
**********************/
.team{
	background-color: #F2EEED;
}
.team-box{
	padding: 10px;
	margin-bottom: 30px;
	/*background-color: #fff;*/
	transition: all 0.4s ease-in-out;
}
.team-box:hover{
	box-shadow: 2px 2px 5px #0054A6;
}
.team-detail{
	background-color: #e1e1e1;
	color: #4b4b4b;
	padding: 20px;
}
.team-box ul{
	text-align: center;
	padding-left: 0;
}
.team-box ul li{
	list-style-type: none;
}
.team-box h3{
	/*font-weight: 700;*/
}





/**********************
		Clients
**********************/
.client-box{
	margin-bottom: 30px;
}
.client-box img{
	opacity: 0.5;
	transition: all 0.4s ease-in-out;
}
@media (min-width: 768px){
	.client-box img{
		padding: 50px 0;
	}
}
.client-box:hover img{
	opacity: 1;
}







/**********************
		Testimonial
**********************/


.testimonial-slider {
  position: relative;
  max-width: 800px;
  margin: 0px auto;
  overflow: hidden;
  background: #DCE7F4;
  border-radius: 12px;
  box-shadow: 40px 20px 20px rgba(0,0,0,0.1);
  padding: 110px;
}

.slider-container {
  display: flex;
  transition: transform 0.5s ease-in-out;
}

.slide {
  min-width: 100%;
  opacity: 0;
  transition: opacity 0.5s ease;
  display: none;
}

.slide.active {
  display: block;
  opacity: 1;
}

.testimonial-content p {
  font-size: 1.9rem;
  line-height: 1.6;
  color: #333;
  font-style: italic;
  margin-bottom: 25px;
}

.user-info {
  display: flex;
  align-items: center;
  gap: 15px;
}

.user-info img {
  border-radius: 50%;
  width: 60px;
  height: 60px;
  object-fit: cover;
}

.user-info h4 {
  margin: 0;
  font-size: 1.1rem;
}

.user-info span {
  color: #777;
  font-size: 1.4rem;
}

/* Controls */
.nav-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.1);
  border: none;
  padding: 15px;
  cursor: pointer;
  border-radius: 50%;
  transition: 0.3s;
}

.nav-btn:hover { background: #333; color: #fff; }
.prev-btn { left: 10px; }
.next-btn { right: 10px; }

/* Responsive adjustments */
@media (max-width: 600px) {
  .testimonial-slider { padding: 20px; margin: 10px; }
  .testimonial-content p { font-size: 1rem; }
  .nav-btn { padding: 10px; }
}



/**********************
		FAQ
**********************/
.faq{
	background-image: url(../images/faq.jpg);
}
.faq .panel-group .panel{
	margin-bottom: 20px;
}
.faq .panel-default>.panel-heading{
	background-color: #2546B2;
}
.faq .panel-body{
	background-color: #5B6B8D;
	color: #fff;
}
.faq .panel-default>.panel-heading a{
	color: #fff;
	text-transform: uppercase;
}
.faq .panel-heading, .faq .panel-body, .faq .panel-group .panel{
	border-radius: 0;
}



/**********************
		Contact
**********************/
.contact{
	background-color: #fff;
	color: #10182D;
}
.contact-logo{
	margin-bottom: 30px;
}
.contact ul{
	padding-left: 0;
}
.contact ul li{
	list-style-type: none;
}
.contact ul li span{
	padding-right: 10px;
}
.contact ul, .contact p{
	line-height: 1.7;
	font-family: 'Roboto';
}
.input-group-addon, .form-control{
	background-color: #fff;
	border-color: transparent;
}
.contact .input-group{
	padding-bottom: 20px;
}
.input-group .form-control:last-child, .input-group-addon:last-child, .input-group-btn:first-child>.btn-group:not(:first-child)>.btn, .input-group-btn:first-child>.btn:not(:first-child), .input-group-btn:last-child>.btn, .input-group-btn:last-child>.btn-group>.btn, .input-group-btn:last-child>.dropdown-toggle{
	border-radius: 0;
}
.input-group .form-control:first-child, .input-group-addon:first-child, .input-group-btn:first-child>.btn, .input-group-btn:first-child>.btn-group>.btn, .input-group-btn:first-child>.dropdown-toggle, .input-group-btn:last-child>.btn-group:not(:last-child)>.btn, .input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){
	border-radius: 0;
}
.contact button{
	background-color: #2546B2;
	border-radius: 0;
	color: #fff;
}
.contact button{
	padding: 8px;
}





.subscribe{
	border-bottom: 3px solid #2C3447;
	background-color: #10182D;
	color: #969595;
}
.subscribe h2{
	color: #fff;
}
.subscribe-form{
	margin-top: 30px;
}




/*Footer*/
.footer{
	background-color: #10182D;
	padding-top: 20px;
	padding-bottom: 10px;
	color: #969595;
}

.footer .footer-social {
  font-size: 24px;
}
.footer .footer-social a {
  color: #969595;
  margin: 8px;
}
@media (min-width: 768px){
	.footer .footer-social{
		float: right;
	}
}
@media (max-width: 767px){
	footer, .subscribe{
		text-align: center;
	}
}


/* ===== Responsive Improvements Added ===== */

img{max-width:50%;height:auto;}

.container{max-width:100%;}

.hover-box{
    width:100%;
    max-width:100%;
}

.img-full {
  width: 103%;
  box-sizing: border-box; /* Prevents padding from breaking the 100% width */
  
  padding-top: 69px;
padding-right: 17px;
padding-bottom: 17px;
padding-left: 17px;
}

@media (max-width:991px){
    .header,
    .intro-box{
        height:auto;
        min-height:650px;
    }

    .intro h1{
        font-size:42px;
        line-height:1.3;
        text-align:left;
    }

    .btn-header{
        position:relative;
        left:auto;
        bottom:auto;
        margin-top:20px;
    }

    .testimonial-slider{
        padding:40px 25px;
    }
}

@media (max-width:767px){

    section{
        padding:40px 0 15px;
    }

    .navbar-brand img{
        width:133px !important;
    }

    .navbar-nav{
        margin:0;
        text-align:center;
    }

    .header{
        background-position:center center;
        background-size:cover;
    }

    .intro h1{
        font-size:30px;
        text-align:left;
        word-break:break-word;
    }

    .cta,
    .slider-1{
        text-align:left;
    }

    .testimonial-slider{
        padding:20px;
        box-shadow:none;
    }

    .testimonial-content p{
        font-size:16px;
    }

    .user-info{
        flex-direction:column;
        text-align:center;
    }

    .title-box{
        margin-bottom:35px;
    }

    iframe,
    video{
        max-width:100%;
    }
}

@media (max-width:480px){

    .intro h1{
        font-size:24px;
    }

    .btn-header{
        width:100%;
        text-align:center;
        padding:12px 15px;
    }

    .fun-number{
        font-size:34px;
    }

    .section-title{
        font-size:26px;
    }
}


