/* Author:WebThemez
 * Author URI:http://webthemez.com
 * License: Creative Commons Attribution 3.0 License (https://creativecommons.org/licenses/by/3.0/)
 */
@import url(http://fonts.googleapis.com/css?family=Open+Sans:300italic,700italic,400,700);
@import url(http://fonts.googleapis.com/css?family=Raleway:700,400,300);


:root {
	--maroon-dark: #5c1010;
	--maroon-primary: #800020;
	--maroon-medium: #a0233f;
	--maroon-light: #a31b1b;
	--cream: #f5f1e8;
	--gold: #d4af37;
	--lightgrey: #EEEEEE;
}
body {
	font-family: 'Open Sans', sans-serif;
}
.brand {
	font-family: 'Raleway', sans-serif;
}
html,
body {
	height: 100%;
}
body {
	font-size: 15px;
	line-height: 1.50;
	color: #333333;
	background-color: #ffffff;
	position: relative;
}
h1,
h2,
h3,
h4,
h5,
h6 {
	color: #333333;
}
h1 {
	font-size: 38px;
	font-weight: 700;
	margin-bottom: 20px;
}
h2 {
	font-size: 28px;
	margin-bottom: 15px;
}
h3 {
	font-size: 22px;
}
h4 {
	font-size: 18px;
	font-weight: 700;
}
h5 {
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 700;
}
h6 {
	font-weight: 700;
}
h1 span,
h2 span,
h3 span,
h4 span {
	color: var(--maroon-primary);
	font-style: italic;

}
.colored {
	color: var(--maroon-primary);
}
a {
	color: #55acee;
}
a:hover {
	color: #339BEB;
}
a:focus,
a:active {
	outline: none;
}
.large {
	font-size: 18px;
}
img {
	display: block;
	max-width: 100%;
	height: auto;
}
.list-unstyled li {
	padding: 5px 0;
}
.list-horizontal {
	padding: 15px 0;
}
.list-horizontal-item img {
	display: block;
	margin: 0 auto;
}
.list-icons {
	padding: 0;
	margin: 20px 0;
	list-style: none;
	font-size: 18px;
}
.list-icons li {
	padding: 0 0 15px 0;
}
blockquote {
	border-left: none;
	padding-left: 0;
	padding-right: 0;
}
.title {
	margin-top: 0;
}

/* Layout
----------------------------------------------------------------------------- */
.header {
	color: #ffffff;
	background-color: var(--maroon-dark);
	padding: 8px 0;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.header.modal-open-header {
	transform: translateY(-100%);
}
.header .row {
	display: flex;
	align-items: center;
}
.banner {
	width: 100%;
	height: 100%;
	min-height: 100%;
	position: relative;
	color: #fff;
}
.banner-image {
	vertical-align: middle;
	min-height: 100%;
	width: 100%;
}
.banner:after {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(74, 4, 38, 0.53);
	content: "";
}
.banner-caption {
	position: absolute;
	top: 50%;
	width: 100%;
	z-index: 2;
}
.subfooter {
	background-color: var(--maroon-dark);
	padding: 20px 0;
}
.subfooter a {
	color: var(--cream);
}
.section {
	background-color: #ffffff;
	padding: 80px 0;
}

/* Backgrounds
----------------------------------------------------------------------------- */
.default-bg {
	background-color: #222222;
	color: #ffffff;
}
.default-bg.blue {
	background-color: #55acee;
}
.btn-primary {
	color: #fff;
	background-color: var(--maroon-medium);
	border:0px;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary.focus, .btn-primary:active, .btn-primary.active, .open > .dropdown-toggle.btn-primary {
	color: #fff;
	background-color: var(--maroon-primary);
	border:0px;
}
.transprant-bg {
	color: #ffffff;
}
.default-bg h1,
.default-bg h2,
.default-bg h3,
.default-bg h4,
.default-bg h5,
.default-bg h6,
.transprant-bg h1,
.transprant-bg h2,
.transprant-bg h3,
.transprant-bg h4,
.transprant-bg h5,
.transprant-bg h6 {
	color: #ffffff;
}
.default-bg blockquote footer,
.transprant-bg blockquote footer {
	color: #cccccc;
}
.default-bg a,
.transprant-bg a {
	color: #ffffff;
	text-decoration: underline;
}
.default-bg a:hover,
.transprant-bg a:hover {
	text-decoration: none;
}
.transprant-bg {
	-webkit-background-size: cover !important;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;
	background-size: cover !important;
	background-position: 50% 0;
	background-repeat: no-repeat;
	z-index: 1;
	position: relative;
	background: #fff;
}
.transprant-bg .transprant-bg {
	margin-top: 80px;
	z-index: 3;
}
.transprant-bg:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 100%;
	background-color: var(--maroon-dark);
}
.transprant-bg.blue:after {
	background-color: rgba(85, 172, 238, 0.7);
}
.transprant-bg .container {
	z-index: 3;
	position: relative;
}
/*.bg-image-1 {*/
/*	background: url("../images/bg-image-1.jpg") 50% 0px no-repeat;*/
/*}*/
.bg-image-2 {
}
.caption-data {position: absolute; top: 50%; left: 50%; z-index: 20; text-align: center; -webkit-transform: translate(-50%,-50%); -moz-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
.caption-data h1 span {font-size: 50px; line-height: inherit; font-weight: 700; color: #ffffff}
.caption-data h3{line-height:34px;}
button.cta-button.btn-light, button.cta-button.btn-dark, .contact-form button.cta-button, button.cta-button.btn-default {
	background: transparent;
}
button.cta-button.btn-light, button.cta-button.btn-dark, .contact-form button.cta-button, button.cta-button.btn-default,
a.cta-button {
	background: transparent;
}
button.cta-button,
a.cta-button {
	font-size: 16px;
	line-height: 16px;
	border: 1px solid #fff;
	padding: 20px 10px;
	border-radius: 4px;
	font-weight: 600;
	color: #fff;
	transition: background 0.3s, border-color 0.3s, color 0.3s;
	margin-top: 20px;
}
button.cta-button:hover,
a.cta-button:hover,
a.cta-button:focus {
	background: #fff;
	color: #000;
}
a.cta-button {
	display: inline-block;
	text-decoration: none;
}
/* Misc
----------------------------------------------------------------------------- */
.no-view {
	opacity: 0;
	filter: alpha(opacity=0);
}
.object-visible,
.touch .no-view {
	opacity: 1 !important;
	filter: alpha(opacity=100) !important;
}

/* Targeting only Firefox for smoothest animations */
@-moz-document url-prefix() {
	.object-visible,
	.touch .no-view {
		-webkit-transition: opacity 0.6s ease-in-out;
		-moz-transition: opacity 0.6s ease-in-out;
		-o-transition: opacity 0.6s ease-in-out;
		-ms-transition: opacity 0.6s ease-in-out;
		transition: opacity 0.6s ease-in-out;
	}
}
.space {
	padding: 20px 0;
}
.pr-10 {
	padding-right: 10px;
}
.pl-10 {
	padding-left: 10px;
}
.pclear {
	padding-bottom: 0;
}
.secPadding{
	padding: 70px 0;
}
/* Sections
----------------------------------------------------------------------------- */
.banner-caption h1,
.banner-caption h2,
.banner-caption h3,
.banner-caption h4,
.banner-caption h5,
.banner-caption h6 {
	color: #ffffff;
}
.banner-caption h1 {
	font-size: 60px;
}
.footer h1{
	color:#fff;
}
.footer h3{
	padding-top: 0px;
	color:white;
}
.footer-content p{
	color: white;
	font-size: 16px;
	padding: 2px;
}
.contacts i{
	font-size: 20px;
	/*color: var(--maroon-primary);*/
}
.contacts a {
	color: #ffffff;
	text-decoration: none;
	transition: color 0.25s ease;
}
.contacts a:hover,
.contacts a:focus {
	color: var(--gold);
	/*text-decoration: underline;*/
}
.footer{
	min-height: 100%;
}
.footer.section {
	background: #020202;
	color: #949494;
}
.subfooter p {
	margin-bottom: 0;
	color: #fff;
}
.hero-caption{
	text-align:center;
	padding:40px 0;
}
.hero-caption h2{
	text-align:center;
}
.hero-caption p{

}
/* Template Components
----------------------------------------------------------------------------- */
/* Buttons
---------------------------------- */
.btn {
	padding: 8px 15px;
	font-size: 14px;
	line-height: 1.42857143;
	min-width: 160px;
	text-align: center;
	border-radius: 0;
	text-transform: uppercase;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}
.btn-default {
	color: #FFFFFF;
	background: var(--maroon-primary);
	border: 0;
}
.btn-default:hover {
	color: #ffffff;
	background-color: var(--maroon-dark);
	border: 0;
}

/* Collapse
---------------------------------- */
.panel-group .panel {
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	border: none;
}
.panel-default > .panel-heading {
	padding: 0;
	outline: none;
	border: none;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-o-border-radius: 0;
	border-radius: 0;
	width: 100%;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
	border: 1px solid #f0f0f0;
	border-top: none;
	background-color: #fafafa
}
.panel-heading a {
	font-weight: 400;
	padding: 12px 35px 12px 15px;
	display: inline-block;
	width: 100%;
	background-color: #fff;
	color: var(--maroon-primary);
	position: relative;
	text-decoration: none;
	border: #ECECEC 1px solid;
}
.panel-heading a.collapsed {
	color: #333333;
	background-color: #FAFAFA;
}
.panel-heading a:after {
	font-family: "FontAwesome";
	content: "\f147";
	position: absolute;
	right: 15px;
	font-size: 14px;
	font-weight: 300;
	top: 50%;
	line-height: 1;
	margin-top: -7px;
}
.panel-heading a.collapsed:after {
	content: "\f196";
}
.panel-heading a:hover {
	text-decoration: none;
	background-color: #FFFFFF;
	color: var(--maroon-primary);
}
.panel-title a i {
	padding-right: 10px;
	font-size: 20px;
}

/* Pills
---------------------------------- */
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus,
.nav-pills > li > a:hover {
	background-color: var(--maroon-dark);
	border-color: var(--maroon-dark);
	color: #ffffff;
}
.nav-pills > li > a {
	border-radius: 0;
	padding: 8px 15px;
	border: 1px solid #cacaca;
	color: #666666;
	font-size: 12px;
	text-transform: uppercase;
	font-weight: 300;
}

#footer-form .form-control {
	height: 50px;
	padding: 12px 45px 12px 18px;   /* extra right padding so text clears the icon */
	font-size: 15px;
	color: #333;
	background-color: #ffffff;
	border: 1px solid #ddd;
	border-radius: 12px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
	transition: all 0.3s ease;
}

#footer-form textarea.form-control {
	height: 140px;
	resize: none;
	padding-top: 15px;
	padding-right: 45px;   /* keep textarea text clear of the icon too */
}

/* Focus effect */
#footer-form .form-control:focus {
	border-color: var(--maroon-primary);
	outline: none;
	box-shadow:
			0 0 0 3px rgba(128, 0, 32, 0.15),
			0 6px 18px rgba(128, 0, 32, 0.12);
}

/* Placeholder styling */
#footer-form .form-control::placeholder {
	color: #999;
	font-size: 14px;
}

/* Icons inside fields */
#footer-form .form-group {
	position: relative;
}

#footer-form .form-control-feedback {
	position: absolute;
	top: 50%;
	right: 15px;              /* moved closer to the edge */
	transform: translateY(-50%);
	color: var(--maroon-primary);
	font-size: 16px;
	line-height: 1;
	height: auto;
	width: auto;              /* Bootstrap's default 34px width was pushing/centering it oddly */
	pointer-events: none;
}

#footer-form textarea + .form-control-feedback {
	top: 25px;
	transform: none;
}

/* Modern Send button */
#footer-form .btn-default {
	float: right;
	padding: 12px 35px;
	border-radius: 25px;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.5px;
	background: var(--maroon-primary);
	color: #fff;
	border: none;
	transition: all 0.3s ease;
}

#footer-form .btn-default:hover {
	background: var(--maroon-dark);
	transform: translateY(-3px);
	box-shadow: 0 8px 18px rgba(128, 0, 32, 0.25);
}
/* Modals
---------------------------------- */
.modal-content {
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
}
.modal-header {
	background-color: #626262;
	color: #ffffff;
}
.modal-header h4 {
	color: #ffffff;
}
.modal-header .close {
	font-weight: 300;
	color: #FFFFFF;
	text-shadow: none;
	filter: alpha(opacity=100);
	opacity: 1;
}

@media (min-width:1200px) {
	.modal-lg {
		width: 1140px;
	}
}

/* Media
---------------------------------- */
.media .fa {
	font-size: 24px;
	width: 40px;
	height: 25px;
	line-height: 25px;
	padding: 0 5px;
	text-align: center;
}

/* Navigations
----------------------------------------------------------------------------- */
.header .navbar {
	margin-bottom: 0;
}
.main-navigation .navbar-default {
	background-color: transparent;
	border: none;
}
.main-navigation .navbar-default .navbar-nav > li > a {
	color: #fff;
	padding: 5px 15px;
	font-size: 18px;
	font-weight: 400;
}
.main-navigation .navbar-default .navbar-nav > li.active > a {
	background-color: transparent;
	color: var(--maroon-light);
}
.main-navigation .navbar-default .navbar-nav > li > a:hover,
.main-navigation .navbar-default .navbar-nav > li.active > a:hover {
	color: var(--maroon-light);
}

/* carousel */
#quote-carousel
{
	padding: 0 10px 30px 10px;
	margin-top: 30px;
}

/* Control buttons  */
#quote-carousel .carousel-control
{
	background: none;
	color: #222;
	font-size: 2.3em;
	text-shadow: none;
	margin-top: 30px;
}
/* Previous button  */
#quote-carousel .carousel-control.left
{
	left: -12px;
}
/* Next button  */
#quote-carousel .carousel-control.right
{
	right: -12px !important;
}
/* Changes the position of the indicators */
#quote-carousel .carousel-indicators
{
	right: 50%;
	top: auto;
	bottom: 0px;
	margin-right: -19px;
}
/* Changes the color of the indicators */
#quote-carousel .carousel-indicators li
{
	background: #c0c0c0;
}
#quote-carousel .carousel-indicators .active
{
	background: #333333;
}
#quote-carousel img
{
	width: 250px;
	height: 100px
}
/* End carousel */

.item blockquote {
	border-left: none;
	margin: 0;
}

.item blockquote img {
	margin-bottom: 10px;
}

.item blockquote p:before {
	content: "\f10d";
	font-family: 'Fontawesome';
	float: left;
	margin-right: 10px;
}



/**
  MEDIA QUERIES
*/

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
	#quote-carousel
	{
		margin-bottom: 0;
		padding: 0 40px 30px 40px;
	}

}

/* Small devices (tablets, up to 768px) */
@media (max-width: 768px) {

	/* Make the indicators larger for easier clicking with fingers/thumb on mobile */

	#quote-carousel .carousel-indicators {
		bottom: -20px !important;
	}
	#quote-carousel .carousel-indicators li {
		display: inline-block;
		margin: 0px 5px;
		width: 15px;
		height: 15px;
	}
	#quote-carousel .carousel-indicators li.active {
		margin: 0px 5px;
		width: 20px;
		height: 20px;
	}
}

@media (min-width:768px) {
	.main-navigation .navbar-default .navbar-nav > li > a {
		padding-top: 30px;
		padding-bottom: 30px;
		-webkit-transition: all 0.3s ease-in-out;
		-moz-transition: all 0.3s ease-in-out;
		-o-transition: all 0.3s ease-in-out;
		-ms-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
}
@media (min-width:768px) and (max-width:991px) {
	.main-navigation .container-fluid {
		padding-left: 0;
		padding-right: 0;
	}
	.navbar-nav {
		float: left !important;
	}
}
@media (max-width:767px) {
	.header.navbar-fixed-top {
		position: absolute;
	}
}

/* Fixed Header
----------------------------------------------------------------------------- */
.fixed-header-on .header {
	background-color: rgba(92, 16, 16, 0.75);
	padding: 0px 0px;
	border-radius: 100px;
}
.fixed-header-on .brand {
	font-size: 24px;
}
.fixed-header-on .logo {
	-webkit-transform: scale(0.75);
	transform: scale(0.75);
	margin-top: 0;
	margin-bottom: 0;
}
@media (min-width:768px) {
	.fixed-header-on .navbar-default .navbar-nav > li > a {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}
@media (max-width:991px) {
	.fixed-header-on .logo,
	.fixed-header-on .brand,
	.fixed-header-on .site-slogan {
		display: none;
	}
}
/* Vision & Mission cards
---------------------------------- */
.vision-mission-row {
	margin-top: 20px;
}
.vm-card {
	background-color: rgba(128, 0, 32, 0.06);
	border: 1px solid var(--maroon-primary);
	border-radius: 30px;
	padding: 40px 30px;
	text-align: left;
	height: 100%;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	box-shadow: 0 15px 30px rgba(92, 16, 16, 0.15);
}
.vm-card:hover {
	transform: translateY(-8px);
}
.vm-header {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
}
.vm-icon {
	width: 50px;
	height: 50px;
	min-width: 50px;
	margin-right: 20px;
	border-radius: 50%;
	background-color: var(--maroon-primary);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.3s ease, background-color 0.3s ease;
}
.vm-icon i {
	font-size: 24px;
	color: #ffffff;
	transition: transform 0.3s ease;
}
.vm-card:hover .vm-icon {
	background-color: var(--maroon-dark);
}
.vm-card:hover .vm-icon i {
	transform: scale(1.15) rotate(-15deg);
}
.vm-card h2 {
	color: var(--maroon-primary);
	margin: 0;
	font-weight: 700;
	font-size: 30px;
}
.vm-card h2 span{
	font-style: italic;
}
.vm-card p {
	color: black;
	font-size: 15px;
	line-height: 1.6;
	margin-bottom: 0;
}
.vm-card:hover h2,.vm-card:hover h2 span{
	color :var(--maroon-dark);
}
@media (max-width: 767px) {
	.vm-card {
		margin-bottom: 30px;
	}
}

/* Blocks/Widgets
----------------------------------------------------------------------------- */
/* Logo, Site Name, Site Slogan
---------------------------------- */
.logo {
	margin: 0px 0px 0px 0;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	max-width: 55%;
}
.logo,
.logo-section {
	float: left;
}
.brand {
	font-size: 38px;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s ease-in-out;
	-o-transition: all 0.3s ease-in-out;
	-ms-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	padding: 10px 0;
}
.brand a {
	color: #ffffff;
}
.brand a:hover {
	text-decoration: none;
}
.site-slogan {
	font-size: 12px;
}

/* block-lists
---------------------------------- */
.block-list .media-left {
	width: 60px;
	transition: transform 0.3s ease;
}
.block-list .media-left:hover {
	transform: translateY(-8px);
}
.block-list .media-heading{
	font-weight: 520;
}
.block-list p{
	font-size: 16px;
}
.block-list .fa,
.block-list .fas
{
	border: 1px solid #fff;
	width: 65px;
	height: 65px;
	border-radius: 50%;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 24px;
	padding: 0;
}
/* Social Links
---------------------------------- */
.social-links {
	padding: 0;
	list-style: none;
	margin: 15px 0;
}
.social-links li {
	margin: 10px 10px 10px 0;
	display: inline-block;
	font-size: 36px;
}
.social-links li a {
	color: #BBBBBB;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	-ms-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	border: 1px solid #D0D0D0;
	width: 52px;
	height: 52px;
	display: inline-block;
	border-radius: 50%;
	font-size: 26px;
	text-align: center;
	padding: 4px;
}
.social-links li.twitter a:hover {
	color: #55acee;
}
.social-links li.skype a:hover {
	color: #00aff0;
}
.social-links li.linkedin a:hover {
	color: #0976b4;
}
.social-links li.googleplus a:hover {
	color: #dd4b39;
}
.social-links li.youtube a:hover {
	color: #b31217;
}
.social-links li.flickr a:hover {
	color: #ff0084;
}
.social-links li.facebook a:hover {
	color: #3b5998;
}
.social-links li.pinterest a:hover {
	color: #cb2027;
}

/* Isotope Items
---------------------------------- */
.filters {
	margin: 0 0 30px 0;
}
.filters .nav-pills > li {
	margin-right: 2px;
	margin-bottom: 2px;
}
.filters .nav-pills > li + li {
	margin-left: 0px;
}
.text-center.filters .nav-pills > li {
	margin-right: 2px;
	margin-left: 2px;
	margin-bottom: 2px;
	display: inline-block;
	float: none;
}
.isotope-container {
	overflow: hidden;
}
.isotope-item {
	margin-bottom: 20px;
}
@media (max-width:480px) {
	.filters .nav-pills > li {
		width: 100%;
		display: block;
	}
}
/* Portfolio image boxes - masonry style, natural aspect ratio
---------------------------------- */
.image-box .overlay-container {
	position: relative;
	overflow: hidden;
	line-height: 0;
}
.image-box .overlay-container img {
	width: 100%;
	height: auto;
	display: block;
	transition: transform 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.image-box .overlay-container:hover img {
	transform: scale(1.08);
}
/* Portfolio hover & caption - modern style
----------------------------------------------------------------------------- */
.image-box {
	position: relative;
}
.image-box .overlay-container {
	position: relative;
	overflow: hidden;
	line-height: 0;
	border-radius: 8px;
}
.image-box .overlay-container img {
	width: 100%;
	height: auto;
	display: block;
	transition: transform 0.6s cubic-bezier(0.25, 0.8, 0.25, 1), filter 0.4s ease;
}
.image-box .overlay-container:hover img {
	transform: scale(1.06);
	filter: brightness(0.55);
}

.portfolio-caption {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 18px 20px;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0) 100%);
	color: #ffffff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.3px;
	line-height: 1.4;
	pointer-events: none;
	transform: translateY(8px);
	opacity: 0.92;
	transition: transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), opacity 0.4s ease;
}
.image-box .overlay-container:hover .portfolio-caption {
	transform: translateY(0);
	opacity: 1;
}

.overlay-icon {
	position: absolute;
	inset: 0;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.35s ease;
}
.image-box .overlay-container:hover .overlay-icon {
	opacity: 1;
}
.overlay-icon i {
	width: 52px;
	height: 52px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 17px;
	color: var(--maroon-primary);
	background: #ffffff;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
	transform: scale(0.7) rotate(-20deg);
	transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.25s ease, color 0.25s ease;
}
.image-box .overlay-container:hover .overlay-icon i {
	transform: scale(1) rotate(0deg);
}
.overlay-icon:hover i {
	background: var(--maroon-primary);
	color: #ffffff;
}

/* Portfolio title button - clean minimal pill
----------------------------------------------------------------------------- */
.isotope-item .btn-default {
	color: var(--maroon-primary);
	background: #ffffff;
	border: 1px solid #eee;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	font-weight: 600;
	font-size: 13px;
	letter-spacing: 0.3px;
	transition: all 0.25s ease;
}
.isotope-item .btn-default:hover {
	color: #ffffff;
	background: var(--maroon-primary);
	border-color: var(--maroon-primary);
	box-shadow: 0 4px 14px rgba(128, 0, 32, 0.25);
}

/* Projects Accordion
---------------------------------- */
.projects-accordion .project-panel {
	margin-bottom: 20px;
	border-radius: 6px;
	overflow: hidden;
	box-shadow: 0 5px 15px rgba(92, 16, 16, 0.08);
}
.projects-accordion .panel-heading {
	padding: 0;
}
.projects-accordion .panel-title a {
	display: block;
	padding: 25px 30px;
	font-size: 20px;
	font-weight: 700;
	background-color: rgba(128, 0, 32, 0.06);
	color: var(--maroon-primary);
	border: none;
	position: relative;
	transition: background-color 0.3s ease;
}

.projects-accordion .panel-title a i {
	margin-right: 15px;
	font-size: 22px;
}
.projects-accordion .panel-title a:hover,
.projects-accordion .panel-title a:focus {
	background-color: rgba(128, 0, 32, 0.12);
	text-decoration: none;
	color: var(--maroon-dark);
}
.projects-accordion .panel-title a:after {
	content: "\f078";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 16px;
	transition: transform 0.3s ease;
}
.projects-accordion .panel-title a.collapsed:after {
	transform: translateY(-50%) rotate(-90deg);
}
.projects-accordion .panel-body {
	padding: 30px;
	color: black;
	background-color: #ffffff;
	border: 1px solid #eee;
	border-top: none;
}
.projects-accordion .panel-body h4{
	color: var(--maroon-dark);
	font-weight: bold;
}
/* Project Carousel (Ongoing Projects images)
---------------------------------- */
.project-carousel {
	border-radius: 6px;
	overflow: hidden;
	background-color: #ffffff;
}
.project-carousel .carousel-inner,
.project-carousel .item {
	height: 260px;
	background-color: #ffffff;
}
.project-carousel .item img {
	width: auto;
	max-width: 100%;
	height: 260px;
	max-height: 260px;
	object-fit: contain;
	display: block;
	margin: 0 auto;
	background-color: #ffffff;
}
.project-carousel .carousel-control {
	width: 40px;
	background: none;
	opacity: 0.5;
	transition: opacity 0.2s ease;
}
.project-carousel:hover .carousel-control {
	opacity: 1;
}
.project-carousel .carousel-control i {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	font-size: 20px;
	color: var(--maroon-primary);
	text-shadow: none;
}
.project-carousel .carousel-control.left i {
	left: 15px;
}
.project-carousel .carousel-control.right i {
	right: 15px;
}
.project-carousel .carousel-indicators {
	bottom: 10px;
	margin-bottom: 0;
}
.project-carousel .carousel-indicators li {
	width: 8px;
	height: 8px;
	margin: 0 3px;
	background-color: rgba(128, 0, 32, 0.3);
	border: none;
}
.project-carousel .carousel-indicators .active {
	background-color: var(--maroon-primary);
	width: 10px;
	height: 10px;
	margin: 0 3px;
}
@media (max-width: 767px) {
	.project-carousel .carousel-inner,
	.project-carousel .item,
	.project-carousel .item img {
		height: 220px;
		max-height: 220px;
	}
}

/* Management Team cards
---------------------------------- */
.team-row {
	margin-top: 20px;
}
.team-card {
	text-align: center;
	padding: 20px;
	transition: transform 0.3s ease;
}
.team-card:hover {
	transform: translateY(-8px);
}
.team-card img {
	width: 160px;
	height: 160px;
	object-fit: cover;
	border-radius: 50%;
	margin: 0 auto 20px auto;
	border: 3px solid var(--maroon-primary);
}
.team-card h4 {
	margin-bottom: 5px;
	color: #333333;
}
.team-card .team-title {
	color: var(--maroon-primary);
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	margin-bottom: 15px;
}
.team-card p {
	font-size: 14px;
	color: #555555;
	line-height: 1.6;
}
@media (max-width: 767px) {
	.team-card {
		margin-bottom: 30px;
	}
}

/* Portfolio Modal - modern redesign
----------------------------------------------------------------------------- */
/*.portfolio-modal {*/
/*	z-index: 2000;*/
/*}*/
/*.modal-backdrop {*/
/*	z-index: 1990;*/
/*}*/
.portfolio-modal .modal-dialog {
	margin-top: 2%;
}
.portfolio-modal .modal-content {
	border-radius: 14px;
	overflow: hidden;
	border: none;
	box-shadow: 0 25px 60px rgba(0, 0, 0, 0.3);
}
.portfolio-modal .modal-body {
	padding: 0;
}
.portfolio-modal .close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 10;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.45);
	color: #ffffff;
	opacity: 1;
	font-size: 20px;
	font-weight: 300;
	text-shadow: none;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background 0.25s ease;
}
.portfolio-modal .close:hover {
	background: var(--maroon-primary);
	color: #ffffff;
}
.portfolio-modal-image {
	height: 100%;
	min-height: 320px;
	background-color: #000;
	display: flex;
	align-items: center;
	overflow: hidden;
}
.portfolio-modal-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.portfolio-modal .col-md-6:last-child {
	padding: 40px 40px 40px 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.portfolio-modal-title {
	color: var(--maroon-primary);
	font-weight: 700;
	margin-bottom: 18px;
	font-size: 24px;
}
.portfolio-modal p {
	color: #444444;
	font-size: 15px;
	line-height: 1.7;
}
@media (max-width: 767px) {
	.portfolio-modal .modal-dialog {
		margin-top: 20px;
	}
	.portfolio-modal-image {
		min-height: 220px;
	}
	.portfolio-modal .col-md-6:last-child {
		padding: 25px;
	}
}

/* ============================
   Scroll Reveal Animation System
   ============================ */
[data-animation-effect] {
	opacity: 0;
	will-change: transform, opacity;
	transition: opacity 0.8s cubic-bezier(0.25, 0.8, 0.25, 1),
	transform 0.8s cubic-bezier(0.25, 0.8, 0.25, 1);
}
[data-animation-effect="fadeIn"]     { transform: translateY(30px); }
[data-animation-effect="fadeInLeft"] { transform: translateX(-60px); }
[data-animation-effect="fadeInRight"]{ transform: translateX(60px); }

[data-animation-effect].in-view {
	opacity: 1;
	transform: translate(0, 0) scale(1);
}
.caption-data[data-animation-effect] {
	transform: translate(-50%, calc(-50% + 30px));
}
.caption-data[data-animation-effect].in-view {
	transform: translate(-50%, -50%);
}

/* Cascade cards in a row one after another instead of all at once */
.team-row [data-animation-effect],
.vision-mission-row [data-animation-effect] {
	transition-delay: var(--reveal-delay, 0s);
}

@media (prefers-reduced-motion: reduce) {
	[data-animation-effect] {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}

/* ============================
   Banner "Latch" Effect
   ============================ */
.banner {
	overflow: hidden;
}
.banner-image {
	transition: transform 0.1s linear;
	transform-origin: center top;
}

/* The About section rounds over the banner's bottom edge and casts
   a shadow, giving the impression it "latches" onto the banner as you scroll */
section:first-of-type.section {
	position: relative;
	z-index: 5;
	background-color: #ffffff;
	border-radius: 40px 40px 0 0;
	margin-top: -40px;
	box-shadow: 0 -20px 40px rgba(0, 0, 0, 0.15);
}
.banner {
	overflow: hidden;
	isolation: isolate;
}

.banner-image {
	min-height: calc(100% + 140px);
	transform-origin: center top;
	will-change: transform;
}

.caption-data {
	will-change: transform, opacity;
	transition: opacity 100ms linear !important;
}

/* Prevent the About section itself from visibly overflowing during reveal */
.section[data-animation-effect] {
	overflow: clip;
}

