/* 

TemplateMo - Finance Business

https://templatemo.com/tm-545-finance-business

*/

body {
  font-family: 'Poppins', sans-serif;
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
p {
	margin-bottom: 0px;
	font-size: 14px;
	color: #666666;
	line-height: 30px;
}
a {
	text-decoration: none!important;
}
ul {
	padding: 0;
	margin: 0;
	list-style: none;
}

h1,h2,h3,h4,h5,h6 {
	margin: 0px;
}

a.filled-button {
	background-color: #36b5ba;
	color: #fff;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 700;
	padding: 12px 30px;
	border-radius: 30px;
	display: inline-block;
	transition: all 0.3s;
}

a.filled-button:hover {
	background-color: #fff;
	color: #36b5ba;
}

a.border-button {
	background-color: transparent;
	color: #fff;
	border: 2px solid #fff;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 700;
	padding: 10px 28px;
	border-radius: 30px;
	display: inline-block;
	transition: all 0.3s;
}

a.border-button:hover {
	background-color: #fff;
	color: #36b5ba;
}

.section-heading {
	text-align: center;
	margin-bottom: 80px;
}

.section-heading h2 {
	font-size: 36px;
	font-weight: 600;
	color: #1e1e1e;
}

.section-heading em {
	font-style: normal;
	color: #36b5ba;
}

.section-heading span {
	display: block;
	margin-top: 15px;
	text-transform: uppercase;
	font-size: 15px;
	color: #666;
	letter-spacing: 1px;
}

#preloader {
  overflow: hidden;
  background: #36b5ba;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  position: fixed;
  z-index: 9999999;
  color: #fff;
}

#preloader .jumper {
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  display: block;
  position: absolute;
  margin: auto;
  width: 50px;
  height: 50px;
}

#preloader .jumper > div {
  background-color: #fff;
  width: 10px;
  height: 10px;
  border-radius: 100%;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  position: absolute;
  opacity: 0;
  width: 50px;
  height: 50px;
  -webkit-animation: jumper 1s 0s linear infinite;
  animation: jumper 1s 0s linear infinite;
}

#preloader .jumper > div:nth-child(2) {
  -webkit-animation-delay: 0.33333s;
  animation-delay: 0.33333s;
}

#preloader .jumper > div:nth-child(3) {
  -webkit-animation-delay: 0.66666s;
  animation-delay: 0.66666s;
}

@-webkit-keyframes jumper {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  5% {
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
  }
}

@keyframes jumper {
  0% {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  5% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/* Sub Header Style */

.sub-header {
	background-color: #36b5ba;
	height: 46px;
	line-height: 46px;
}

.sub-header ul li {
	display: inline-block;
}

.sub-header ul.left-info li {
	border-left: 1px solid rgba(250,250,250,0.3);
	padding: 0px 20px;
}

.sub-header ul.left-info li:last-child {
	border-right: 1px solid rgba(250,250,250,0.3);
}

.sub-header ul.left-info li i {
	margin-right: 10px;
	font-size: 18px;
}

.sub-header ul.left-info li a {
	color: #fff;
	font-size: 14px;
	font-weight: 600;
}

.sub-header ul.right-icons {
	float: right;
}

.sub-header ul.right-icons li {
	margin-right: -4px;
	width: 46px;
	display: inline-block;
	text-align: center;
	border-right: 1px solid rgba(250,250,250,0.3);
}

.sub-header ul.right-icons li:first-child {
	border-left: 1px solid rgba(250,250,250,0.3);
}

.sub-header ul.right-icons li a {
	color: #fff;
	transition: all 0.3s;
}

.sub-header ul.right-icons li a:hover {
	opacity: 0.75;
}



/* Header Style */
header {
	position: absolute;
	z-index: 99999;
	width: 100%;
	background-color: transparent!important;
	height: 80px;
	-webkit-transition: all 0.3s ease-in-out 0s;
    -moz-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
    transition: all 0.3s ease-in-out 0s;
}
header .navbar {
	padding: 20px 0px;
}
.background-header .navbar {
	padding: 10px 0px;
}
.background-header {
	top: 0;
	position: fixed;
	background-color: #fff!important;
	box-shadow: 0px 1px 10px rgba(0,0,0,0.1);
}
.background-header .navbar-brand h2 {
	color: #36b5ba!important;
}
.background-header .navbar-nav a.nav-link {
	color: #1e1e1e!important;
}
.background-header .navbar-nav .nav-link:hover,
.background-header .navbar-nav .active>.nav-link,
.background-header .navbar-nav .nav-link.current,
.background-header .navbar-nav .nav-link.show,
.background-header .navbar-nav .show>.nav-link {
	color: #36b5ba!important;
}
.navbar .navbar-brand {
	float: 	left;
	margin-top: 12px;
	outline: none;
}
.navbar .navbar-brand h2 {
	color: #fff;
	text-transform: uppercase;
	font-size: 24px;
	font-weight: 700;
	-webkit-transition: all .3s ease 0s;
    -moz-transition: all .3s ease 0s;
    -o-transition: all .3s ease 0s;
    transition: all .3s ease 0s;
}
.navbar .navbar-brand h2 em {
	font-style: normal;
	font-size: 16px;
}
#navbarResponsive {
	z-index: 999;
}
.navbar-collapse {
	text-align: center;
}
.navbar .navbar-nav .nav-item {
	margin: 0px 15px;
}
.navbar .navbar-nav a.nav-link {
	text-transform: capitalize;
	font-size: 15px;
	font-weight: 300;
	letter-spacing: 0.5px;
	color: #fff;
	transition: all 0.5s;
	margin-top: 5px;
}
.navbar .navbar-nav .nav-link:hover,
.navbar .navbar-nav .active>.nav-link,
.navbar .navbar-nav .nav-link.current,
.navbar .navbar-nav .nav-link.show,
.navbar .navbar-nav .show>.nav-link {
	color: #36b5ba;
	border-bottom: 3px solid #36b5ba;
}
.navbar .navbar-toggler-icon {
	background-image: none;
}
.navbar .navbar-toggler {
	border-color: #fff;
	background-color: #fff;	
	height: 36px;
	outline: none;
	border-radius: 0px;
	position: absolute;
	right: 30px;
	top: 20px;
}
.navbar .navbar-toggler-icon:after {
	content: '\f0c9';
	color: #36b5ba;
	font-size: 18px;
	line-height: 26px;
	font-family: 'FontAwesome';
}



/* Banner Style */

.img-fill{
  width: 100%;
  display: block;
  overflow: hidden;
  position: relative;
  text-align: center
}

.img-fill img {
  min-height: 100%;
  min-width: 100%;
  position: relative;
  display: inline-block;
  max-width: none;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

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

.blocks-box,
.slick-slider {
  margin: 0;
  padding: 0!important;
}

.slick-slide {
  float: left;
  padding: 0;
}

.Modern-Slider .item .img-fill {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	height:95vh;
}

.Modern-Slider .item-1 .img-fill {
	background-image: url(../images/slide_01.jpg);
}

.Modern-Slider .item-2 .img-fill {
	background-image: url(../images/slide_02.jpg);
}

.Modern-Slider .item-3 .img-fill {
	background-image: url(../images/slide_03.jpg);
}

.Modern-Slider .NextArrow{
  position:absolute;
  top:50%;
  right:30px;
  border:0 none;
  background-color: transparent;
  text-align:center;
  font-size: 36px;
  font-family: 'FontAwesome';
  color:#FFF;
  z-index:5;
  outline: none;
  cursor: pointer;
}

.Modern-Slider .NextArrow:before{
  content:'\f105';
}

.Modern-Slider .PrevArrow {
  position:absolute;
  top:50%;
  left:30px;
  border:0 none;
  background-color: transparent;
  text-align:center;
  font-size: 36px;
  font-family: 'FontAwesome';
  color:#FFF;
  z-index:5;
  outline: none;
  cursor: pointer;
}

.Modern-Slider .PrevArrow:before{
  content:'\f104';
}

ul.slick-dots {
  display: none!important;
}

.Modern-Slider .text-content {
	text-align: left;
  	width: 75%;
  	position: absolute;
  	top: 50%;
  	left: 50%;
  	transform: translate(-50%, -50%);
}

.Modern-Slider .item h6 {
  margin-bottom: 15px;
  font-size: 22px;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 1px;
  color:#36b5ba;
  animation:fadeOutRight 1s both;
}

.Modern-Slider .item h4 {
  margin-bottom: 30px;
  text-transform: uppercase;
  font-size: 44px;
  font-weight: 700;
  letter-spacing: 2.5px;
  color:#FFF;
  overflow:hidden;
  animation:fadeOutLeft 1s both;
}

.Modern-Slider .item p {
	max-width: 570px;
	color: #fff;
	font-size: 15px;
	font-weight: 400;
	line-height: 30px;
	margin-bottom: 40px;
}

.Modern-Slider .item a {
  margin: 0 5px;
}

.Modern-Slider .item.slick-active h6{
  animation:fadeInDown 1s both 1s;
}

.Modern-Slider .item.slick-active h4{
  animation:fadeInLeft 1s both 1.5s;
}

.Modern-Slider .item.slick-active{
  animation:Slick-FastSwipeIn 1s both;
}

.Modern-Slider .buttons {
  position: relative;
}

.Modern-Slider {background:#000;}


/* ==== Slick Slider Css Ruls === */
.slick-slider{position:relative;display:block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}
.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0}
.slick-list:focus{outline:none}.slick-list.dragging{cursor:hand}
.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}
.slick-track{position:relative;top:0;left:0;display:block}
.slick-track:before,.slick-track:after{display:table;content:''}.slick-track:after{clear:both}
.slick-loading .slick-track{visibility:hidden}
.slick-slide{display:none;float:left /* If RTL Make This Right */ ;height:100%;min-height:1px}
.slick-slide.dragging img{pointer-events:none}
.slick-initialized .slick-slide{display:block}
.slick-loading .slick-slide{visibility:hidden}
.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}




/* Request Form */

.request-form {
	background-color: #36b5ba;
	padding: 40px 0px;
	color: #fff;
}

.request-form h4 {
	font-size: 22px;
	font-weight: 600;
}

.request-form span {
	font-size: 15px;
	font-weight: 400;
	display: inline-block;
	margin-top: 10px;
}

.request-form a.border-button {
	margin-top: 12px;
	float: right;
}




/* Services */

.services {
	margin-top: 140px;
}

.service-item img {
	width: 100%;
	overflow: hidden;
}

.service-item .down-content {
	background-color: #f7f7f7;
	padding: 30px;
}

.service-item .down-content h4 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.25px;
	margin-bottom: 15px;
}

.service-item .down-content p {
	margin-bottom: 20px;
}



/* Fun Facts */

.fun-facts {
	margin-top: 140px;
	background-image: url(../images/fun-facts-bg.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
	padding: 140px 0px;
	color: #fff;
}

.fun-facts span {
	text-transform: uppercase;
	font-size: 15px;
	color: #fff;
	letter-spacing: 1px;
	margin-bottom: 10px;
	display: block;
}

.fun-facts h2 {
	font-size: 36px;
	font-weight: 600;
	margin-bottom: 35px;
}

.fun-facts em {
	font-style: normal;
	color: #36b5ba;
}

.fun-facts p {
	color: #fff;
	margin-bottom: 40px;
}

.fun-facts .left-content {
	margin-right: 45px;
}

.count-area-content {
	text-align: center;
	background-color: rgba(250,250,250,0.1);
	padding: 25px 30px 35px 30px;
	margin: 15px 0px;
}

.count-digit {
    margin: 5px 0px;
    color: #36b5ba;
    font-weight: 700;
    font-size: 36px;
}
.count-title {
    font-size: 20px;
    font-weight: 600;
    color: #fff;
    letter-spacing: 0.5px;
}



/* More Info */

.more-info {
	margin-top: 140px;
}

.more-info .left-image img {
	width: 100%;
	overflow: hidden;
}

.more-info .more-info-content {
	background-color: #f7f7f7;
}

.about-info .more-info-content {
	background-color: transparent;
}

.about-info .right-content {
	padding: 0px!important;
	margin-right: 30px;
}

.more-info .right-content {
	padding: 45px 45px 45px 30px;
}

.more-info .right-content span {
	text-transform: uppercase;
	font-size: 15px;
	color: #666;
	letter-spacing: 1px;
	margin-bottom: 10px;
	display: block;
}

.more-info .right-content h2 {
	font-size: 36px;
	font-weight: 600;
	margin-bottom: 35px;
}

.more-info .right-content em {
	font-style: normal;
	color: #36b5ba;
}

.more-info .right-content p {
	margin-bottom: 30px;
}


/* Testimonials Style */

.about-testimonials {
	margin-top: 0px!important;
}

.testimonials {
	margin-top: 140px;
	background-color: #f7f7f7;
	padding: 140px 0px;
}
.testimonial-item .inner-content {
	text-align: center;
	background-color: #fff;	
	padding: 30px;
	border-radius: 5px;
}
.testimonial-item p {
	font-size: 14px;
	font-weight: 400;
}
.testimonial-item h4 {
	font-size: 19px;
	font-weight: 700;
	color: #1e1e1e;
	letter-spacing: 0.5px;
	margin-bottom: 0px;
}
.testimonial-item span {
	display: inline-block;
	margin-top: 8px;
	font-weight: 600;
	font-size: 14px;
	color: #36b5ba;
}
.testimonial-item img {
	max-width: 60px;
	border-radius: 50%;
	margin: 25px auto 0px auto;
}




/* Call Back Style */

.callback-services {
	border-top: 1px solid #eee;
	padding-top: 140px;
}

.contact-us {
	background-color: #f7f7f7;
	padding: 140px 0px;
}

.contact-us .contact-form {
	background-color: transparent!important;
	padding: 0!important;
}

.callback-form {
	margin-top: 140px;
}

.callback-form .contact-form {
	background-color: #36b5ba;
	padding: 60px;
	border-radius: 5px;
	text-align: center;
}

.callback-form .contact-form input {
	border-radius: 20px;
	height: 40px;
	line-height: 40px;
	display: inline-block;
	padding: 0px 15px;
	color: #6a6a6a;
	font-size: 13px;
	text-transform: none;
	box-shadow: none;
	border: none;
	margin-bottom: 35px;
}

.callback-form .contact-form input:focus {
	outline: none;
	box-shadow: none;
	border: none;
}

.callback-form .contact-form textarea {
	border-radius: 20px;
	height: 120px;
	max-height: 200px;
	min-height: 120px;
	display: inline-block;
	padding: 15px;
	color: #6a6a6a;
	font-size: 13px;
	text-transform: none;
	box-shadow: none;
	border: none;
	margin-bottom: 35px;
}

.callback-form .contact-form textarea:focus {
	outline: none;
	box-shadow: none;
	border: none;
}

.callback-form .contact-form ::-webkit-input-placeholder { /* Edge */
  color: #aaa;
}
.callback-form .contact-form :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #aaa;
}
.callback-form .contact-form ::placeholder {
  color: #aaa;
}

.callback-form .contact-form button.border-button {
	background-color: transparent;
	color: #fff;
	border: 2px solid #fff;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 700;
	padding: 10px 28px;
	border-radius: 30px;
	display: inline-block;
	transition: all 0.3s;
	outline: none;
	box-shadow: none;
	text-shadow: none;
	cursor: pointer;
}

.callback-form .contact-form button.border-button:hover {
	background-color: #fff;
	color: #36b5ba;
}

.contact-us .contact-form button.filled-button {
	background-color: #36b5ba;
	color: #fff;
	border: none;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 700;
	padding: 12px 30px;
	border-radius: 30px;
	display: inline-block;
	transition: all 0.3s;
	outline: none;
	box-shadow: none;
	text-shadow: none;
	cursor: pointer;
}

.contact-us .contact-form button.filled-button:hover {
	background-color: #fff;
	color: #36b5ba;
}



/* Partners Style */

.contact-partners {
	margin-top: -8px!important;
}

.partners {
	margin-top: 140px;
	background-color: #f7f7f7;
	padding: 60px 0px;
}

.partners .owl-item {
	text-align: center;
	cursor: pointer;
}

.partners .partner-item img {
	max-width: 156px;
	margin: auto;
}



/* Footer Style */

footer {
	background-color: #232323;
	padding: 80px 0px;
	color: #fff;
}

footer h4 {
	color: #fff;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 0.25px;
	margin-bottom: 35px;
}
footer p {
	color: #fff;
}

footer ul.social-icons {
	margin-top: 25px;
}

footer ul.social-icons li {
	display: inline-block;
	margin-right: 5px;
}

footer ul.social-icons li:last-child {
	margin-right: 0px;
}

footer ul.social-icons li a {
	width: 34px;
	height: 34px;
	display: inline-block;
	line-height: 34px;
	text-align: center;
	background-color: #fff;
	color: #232323;
	border-radius: 50%;
	transition: all 0.3s;
}

footer ul.social-icons li a:hover {
	background-color: #36b5ba;
}

footer ul.menu-list li {
	margin-bottom: 13px;
}

footer ul.menu-list li:last-child {
	margin-bottom: 0px;
}

footer ul.menu-list li a {
	font-size: 14px;
	color: #fff;
	transition: all 0.3s;
}

footer ul.menu-list li a:hover {
	color: #36b5ba;
}

footer .contact-form input {
	border-radius: 20px;
	height: 40px;
	line-height: 40px;
	display: inline-block;
	padding: 0px 15px;
	color: #aaa!important;
	background-color: #343434;
	font-size: 13px;
	text-transform: none;
	box-shadow: none;
	border: none;
	margin-bottom: 15px;
}

footer .contact-form input:focus {
	outline: none;
	box-shadow: none;
	border: none;
	background-color: #343434;
}

footer .contact-form textarea {
	border-radius: 20px;
	height: 120px;
	max-height: 200px;
	min-height: 120px;
	display: inline-block;
	padding: 15px;
	color: #aaa!important;
	background-color: #343434;
	font-size: 13px;
	text-transform: none;
	box-shadow: none;
	border: none;
	margin-bottom: 15px;
}

footer .contact-form textarea:focus {
	outline: none;
	box-shadow: none;
	border: none;
	background-color: #343434;
}

footer .contact-form ::-webkit-input-placeholder { /* Edge */
  color: #aaa;
}
footer .contact-form :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #aaa;
}
footer .contact-form ::placeholder {
  color: #aaa;
}

footer .contact-form button.filled-button {
	background-color: transparent;
	color: #fff;
	background-color: #36b5ba;
	border: none;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: 700;
	padding: 12px 30px;
	border-radius: 30px;
	display: inline-block;
	transition: all 0.3s;
	outline: none;
	box-shadow: none;
	text-shadow: none;
	cursor: pointer;
}

footer .contact-form button.filled-button:hover {
	background-color: #fff;
	color: #36b5ba;
}



/* Sub-footer Style */

.sub-footer {
	background-color: #343434;
	text-align: center;
	padding: 25px 0px;
}

.sub-footer p {
	color: #fff;
	font-weight: 300;
	letter-spacing: 0.5px;
}

.sub-footer a {
	color: #fff;
}


.page-heading {
	text-align: center;
	background-image: url(../images/page-heading-bg.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 230px 0px 150px 0px;
	color: #fff;
}

.page-heading h1 {
	text-transform: capitalize;
	font-size: 36px;
	font-weight: 700;
	letter-spacing: 2px;
	margin-bottom: 18px;
}

.page-heading span {
	font-size: 15px;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #fff;
	display: block;
}


/* team */

.team {
	background-color: #f7f7f7;
	margin-top: 140px;
	margin-bottom: -140px;
	padding: 120px 0px;
}

.team-item img {
	width: 100%;
	overflow: hidden;
}

.team-item .down-content {
	background-color: #fff;
	padding: 30px;
}

.team-item .down-content h4 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.25px;
	margin-bottom: 10px;
}

.team-item .down-content span {
	color: #36b5ba;
	font-weight: 600;
	font-size: 14px;
	display: block;
	margin-bottom: 15px;
}

.team-item .down-content p {
	margin-bottom: 20px;
}


/* Single Service */

.single-services {
	margin-top: 140px;
}

#tabs ul {
  margin: 0;
  padding: 0;
}
#tabs ul li {
  margin-bottom: 10px;
  display: inline-block;
  width: 100%;
}
#tabs ul li:last-child {
  margin-bottom: 0px;
}
#tabs ul li a {
	text-transform: capitalize;
	width: 100%;
	padding: 30px 30px;
	display: inline-block;
	background-color: #36b5ba;
  	font-size: 20px;
  	color: #121212;
  	letter-spacing: 0.5px;
  	font-weight: 700;
  	transition: all 0.3s;
}
#tabs ul li a i {
	float: right;
	margin-top: 5px;
}
#tabs ul .ui-tabs-active span {
  background: #faf5b2;
  border: #faf5b2;
  line-height: 90px;
  border-bottom: none;
}
#tabs ul .ui-tabs-active a {
  color: #fff;
}
#tabs ul .ui-tabs-active span {
  color: #1e1e1e;
}
.tabs-content {
	margin-left: 30px;
  text-align: left;
  display: inline-block;
  transition: all 0.3s;
}
.tabs-content img {
	max-width: 100%;
	overflow: hidden;
}
.tabs-content h4 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.25px;
	margin-bottom: 15px;
	margin-top: 30px;
}
.tabs-content p {
  font-size: 14px;
  color: #7a7a7a;
  margin-bottom: 0px;
}



/* Contact Information */

.contact-information {
	margin-top: 140px;
}

.contact-information .contact-item {
	padding: 60px 30px;
	background-color: #f7f7f7;
	text-align: center;
}

.contact-information .contact-item i {
	color: #36b5ba;
	font-size: 48px;
	margin-bottom: 40px;
}

.contact-information .contact-item h4 {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.25px;
	margin-bottom: 15px;
}

.contact-information .contact-item p {
	margin-bottom: 20px;
}

.contact-information .contact-item a {
	font-weight: 600;
	color: #36b5ba;
	font-size: 15px;
}




/* Responsive Style */
@media (max-width: 768px) {
	.sub-header {
		display: none;
	}
	.Modern-Slider .item h6 {
	  margin-bottom: 15px;
	  font-size: 18px;
	}
	.Modern-Slider .item h4 {
	  margin-bottom: 25px;
	  font-size: 28px;
	  line-height: 36px;
	  letter-spacing: 1px;
	}
	.Modern-Slider .item p {
		max-width: 570px;
		line-height: 25px;
		margin-bottom: 30px;
	}
	.Modern-Slider .NextArrow{
	  right:5px;
	}
	.Modern-Slider .PrevArrow {
	  left:5px;
	}
	.request-form {
		text-align: center;
	}
	.request-form a.border-button {
		float: none;
		margin-top: 30px;
	}
	.services .service-item {
		margin-bottom: 30px;
	}
	.fun-facts .left-content {
		margin-right: 0px;
		margin-bottom: 30px;
	}
	.more-info .right-content  {
		padding: 30px;
	}
	footer {
		padding: 80px 0px 20px 0px;
	}
	footer .footer-item {
		border-bottom: 1px solid #343434;
		margin-bottom: 30px;
		padding-bottom: 30px;
	}
	footer .last-item {
		border-bottom: none;
	}
	.about-info .right-content {
		margin-right: 0px;
		margin-bottom: 30px;
	}
	.team .team-item {
		margin-bottom: 30px;
	}
	.tabs-content {
		margin-left: 0px;
		margin-top: 30px;
	}
	.contact-item {
		margin-bottom: 30px;
	}
}

@media (max-width: 992px) {
	.navbar .navbar-brand {
		position: absolute;
		left: 30px;
		top: 10px;
	}
	.navbar .navbar-brand {
		width: auto;
	}
	.navbar:after {
		display: none;
	}
	#navbarResponsive {
	    z-index: 99999;
	    position: absolute;
	    top: 80px;
	    left: 0;
	    width: 100%;
	    text-align: center;
	    background-color: #fff;
	    box-shadow: 0px 10px 10px rgba(0,0,0,0.1);
	}
	.navbar .navbar-nav .nav-item {
		border-bottom: 1px solid #eee;
	}
	.navbar .navbar-nav .nav-item:last-child {
		border-bottom: none;
	}
	.navbar .navbar-nav a.nav-link {
		padding: 15px 0px;
		color: #1e1e1e!important;
	}
	.navbar .navbar-nav .nav-link:hover,
	.navbar .navbar-nav .active>.nav-link,
	.navbar .navbar-nav .nav-link.current,
	.navbar .navbar-nav .nav-link.show,
	.navbar .navbar-nav .show>.nav-link {
		color: #36b5ba!important;
		border-bottom: none!important;
	}
}


/* ========================================
   IMMOBILIEN PREMIUM SECTION
======================================== */

.immobilien-section {
  padding: 120px 0;
  background: #1f2722;
  position: relative;
  overflow: hidden;
}

.immobilien-section::before {
  content: "";
  position: absolute;
  top: -120px;
  right: -120px;
  width: 350px;
  height: 350px;
  background: rgba(54,181,186,0.08);
  border-radius: 50%;
}

.immobilien-content {
  position: relative;
  z-index: 2;
}

.immobilien-badge {
  display: inline-block;
  background: #36b5ba;
  color: #fff;
  padding: 10px 20px;
  border-radius: 40px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
  margin-bottom: 25px;
  box-shadow: 0 0 25px rgba(54,181,186,0.3);
}

.immobilien-content h2 {
  font-size: 46px;
  line-height: 58px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 30px;
}

.immobilien-content h2 em {
  color: #36b5ba;
  font-style: normal;
}

.immobilien-content p {
  color: rgba(255,255,255,0.85);
  font-size: 15px;
  line-height: 30px;
  margin-bottom: 22px;
}

.immobilien-features {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 18px;
  margin: 45px 0;
}

.feature-item {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 14px;
  padding: 20px;
  display: flex;
  align-items: center;
  transition: 0.3s ease;
}

.feature-item:hover {
  transform: translateY(-4px);
  background: rgba(255,255,255,0.09);
}

.feature-item i {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 50%;
  background: rgba(54,181,186,0.15);
  color: #36b5ba;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 15px;
  font-size: 18px;
}

.feature-item span {
  color: #fff;
  font-size: 14px;
  font-weight: 500;
}

.immobilien-note {
  font-size: 13px !important;
  color: rgba(255,255,255,0.7) !important;
  margin-bottom: 35px !important;
}

.immobilien-image {
  position: relative;
  z-index: 2;
}

.immobilien-image img {
  width: 100%;
  min-height: 420px;
  object-fit: cover;
  border-radius: 18px;
  box-shadow: 0 0 45px rgba(0,0,0,0.3);
}

@media (max-width: 991px) {
  .immobilien-content {
    margin-bottom: 50px;
  }
}

@media (max-width: 768px) {
  .immobilien-section {
    padding: 90px 0;
  }

  .immobilien-content h2 {
    font-size: 34px;
    line-height: 44px;
  }

  .immobilien-features {
    grid-template-columns: 1fr;
  }

  .immobilien-image img {
    min-height: 280px;
  }
}



/* ========================================
   OLIVEIRA ANIMATION UPDATE
======================================== */

:root {
  --oliveira-accent: #36b5ba;
  --oliveira-dark: #1f2722;
}

/* Start: page blurred until wiper animation ends */
body.page-loading {
  overflow: hidden;
}

body.page-loading header,
body.page-loading .sub-header,
body.page-loading .main-banner,
body.page-loading .request-form,
body.page-loading .services,
body.page-loading .immobilien-section,
body.page-loading .fun-facts,
body.page-loading .more-info,
body.page-loading .instagram-section,
body.page-loading .contact-details,
body.page-loading .callback-form,
body.page-loading footer,
body.page-loading .sub-footer {
  filter: blur(9px);
  transform: scale(1.015);
  transition: filter 1.2s ease, transform 1.2s ease;
}

body:not(.page-loading) header,
body:not(.page-loading) .sub-header,
body:not(.page-loading) .main-banner,
body:not(.page-loading) .request-form,
body:not(.page-loading) .services,
body:not(.page-loading) .immobilien-section,
body:not(.page-loading) .fun-facts,
body:not(.page-loading) .more-info,
body:not(.page-loading) .instagram-section,
body:not(.page-loading) .contact-details,
body:not(.page-loading) .callback-form,
body:not(.page-loading) footer,
body:not(.page-loading) .sub-footer {
  filter: blur(0);
  transform: scale(1);
}

/* Opening cleaner overlay */
.opening-cleaner {
  position: fixed;
  inset: 0;
  z-index: 99999999;
  overflow: hidden;
  pointer-events: none;
  background: rgba(255,255,255,0.34);
  backdrop-filter: blur(11px);
  -webkit-backdrop-filter: blur(11px);
  animation: cleanerOverlayOut 1s ease 3.15s forwards;
}

.cleaner-blur {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 20% 30%, rgba(54,181,186,0.18), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,0.95), rgba(230,248,249,0.72));
  opacity: 0.98;
}

.cleaner-wiper {
  position: absolute;
  top: -18%;
  left: -34%;
  width: 44vw;
  min-width: 360px;
  height: 132vh;
  transform: rotate(-12deg);
  animation: wiperCleanSweep 3.35s cubic-bezier(.72,.02,.16,1) forwards;
}

.wiper-blade {
  position: absolute;
  left: 50%;
  top: 0;
  width: 54px;
  height: 100%;
  border-radius: 999px;
  background:
    linear-gradient(90deg, rgba(31,39,34,0.98), rgba(55,68,61,0.98), rgba(31,39,34,0.98));
  box-shadow:
    0 0 0 1px rgba(255,255,255,0.18) inset,
    0 28px 50px rgba(0,0,0,0.24);
}

.wiper-handle {
  position: absolute;
  left: calc(50% + 52px);
  top: 46%;
  width: 190px;
  height: 18px;
  border-radius: 20px;
  background: #1f2722;
  transform: rotate(8deg);
  box-shadow: 0 12px 25px rgba(0,0,0,0.22);
}

.wiper-handle::after {
  content: "";
  position: absolute;
  right: -26px;
  top: 50%;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  transform: translateY(-50%);
  background: var(--oliveira-accent);
  box-shadow: 0 0 26px rgba(54,181,186,0.45);
}

.wiper-shine {
  position: absolute;
  left: calc(50% + 56px);
  top: 0;
  width: 28vw;
  min-width: 260px;
  height: 100%;
  background:
    linear-gradient(90deg, rgba(255,255,255,0.92), rgba(255,255,255,0.56), rgba(255,255,255,0));
  filter: blur(3px);
}

.cleaner-text {
  position: absolute;
  left: 50%;
  bottom: 9%;
  transform: translateX(-50%);
  text-align: center;
  color: var(--oliveira-dark);
  animation: cleanerTextOut .6s ease 2.45s forwards;
}

.cleaner-text span {
  display: block;
  color: var(--oliveira-accent);
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 2px;
  font-size: 13px;
  margin-bottom: 10px;
}

.cleaner-text strong {
  display: block;
  font-size: clamp(24px, 4vw, 48px);
  line-height: 1.15;
  font-weight: 800;
}

/* Animated buttons */
a.filled-button,
button.filled-button,
a.border-button,
button.border-button,
.navbar .navbar-nav a.nav-link,
.sub-header ul.right-icons li a,
footer ul.social-icons li a {
  position: relative;
  overflow: hidden;
  transform: translateZ(0);
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    background-color .28s ease,
    color .28s ease,
    border-color .28s ease !important;
}

a.filled-button:hover,
button.filled-button:hover,
a.border-button:hover,
button.border-button:hover {
  transform: translateY(-4px) scale(1.035);
  box-shadow: 0 16px 34px rgba(54,181,186,0.35);
}

a.filled-button:active,
button.filled-button:active,
a.border-button:active,
button.border-button:active {
  transform: translateY(-1px) scale(.98);
}

a.filled-button::after,
button.filled-button::after,
a.border-button::after,
button.border-button::after {
  content: "";
  position: absolute;
  top: 0;
  left: -120%;
  width: 65%;
  height: 100%;
  background: linear-gradient(110deg, transparent, rgba(255,255,255,.5), transparent);
  transform: skewX(-22deg);
  transition: left .65s ease;
}

a.filled-button:hover::after,
button.filled-button:hover::after,
a.border-button:hover::after,
button.border-button:hover::after {
  left: 135%;
}

.navbar .navbar-nav a.nav-link:hover {
  transform: translateY(-2px);
}

.sub-header ul.right-icons li a:hover,
footer ul.social-icons li a:hover {
  transform: translateY(-3px) rotate(-6deg) scale(1.08);
}

/* Card and image animations */
.service-item,
.contact-box,
.instagram-card,
.count-area-content,
.more-info-content,
.feature-item,
.immobilien-image img {
  transition: transform .35s ease, box-shadow .35s ease, filter .35s ease;
}

.service-item:hover,
.contact-box:hover,
.instagram-card:hover,
.count-area-content:hover {
  transform: translateY(-8px);
  box-shadow: 0 18px 38px rgba(0,0,0,0.13);
}

.service-item img,
.more-info .left-image img,
.immobilien-image img {
  transition: transform .65s ease, filter .45s ease;
}

.service-item:hover img,
.more-info-content:hover .left-image img,
.immobilien-image:hover img {
  transform: scale(1.045);
  filter: saturate(1.08) contrast(1.03);
}

/* Scroll reveal */
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(34px);
  transition: opacity .8s ease, transform .8s ease;
}

.reveal-on-scroll.revealed {
  opacity: 1;
  transform: translateY(0);
}

.reveal-on-scroll.reveal-left {
  transform: translateX(-45px);
}

.reveal-on-scroll.reveal-right {
  transform: translateX(45px);
}

.reveal-on-scroll.reveal-left.revealed,
.reveal-on-scroll.reveal-right.revealed {
  transform: translateX(0);
}

/* Hero text soft entrance after cleaner */
body:not(.page-loading) .Modern-Slider .text-content {
  animation: heroSoftEnter .9s ease both;
}

/* Form field animation */
.callback-form .contact-form input,
.callback-form .contact-form select,
.callback-form .contact-form textarea {
  transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease;
}

.callback-form .contact-form input:focus,
.callback-form .contact-form select:focus,
.callback-form .contact-form textarea:focus {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.12) !important;
}

/* Keyframes */
@keyframes wiperCleanSweep {
  0% {
    left: -42%;
    opacity: 1;
  }
  22% {
    left: -18%;
  }
  52% {
    left: 34%;
  }
  78% {
    left: 76%;
    opacity: 1;
  }
  100% {
    left: 116%;
    opacity: 0;
  }
}

@keyframes cleanerOverlayOut {
  0% {
    opacity: 1;
    visibility: visible;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}

@keyframes cleanerTextOut {
  to {
    opacity: 0;
    transform: translateX(-50%) translateY(18px);
  }
}

@keyframes heroSoftEnter {
  from {
    opacity: 0;
    transform: translate(-50%, -46%);
  }
  to {
    opacity: 1;
    transform: translate(-50%, -50%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .opening-cleaner {
    display: none !important;
  }

  body.page-loading {
    overflow: auto;
  }

  body.page-loading header,
  body.page-loading .sub-header,
  body.page-loading .main-banner,
  body.page-loading .request-form,
  body.page-loading .services,
  body.page-loading .immobilien-section,
  body.page-loading .fun-facts,
  body.page-loading .more-info,
  body.page-loading .instagram-section,
  body.page-loading .contact-details,
  body.page-loading .callback-form,
  body.page-loading footer,
  body.page-loading .sub-footer {
    filter: none;
    transform: none;
  }

  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

@media (max-width: 768px) {
  .cleaner-wiper {
    min-width: 260px;
    width: 55vw;
  }

  .wiper-handle {
    width: 125px;
  }

  .cleaner-text {
    width: 90%;
  }

  a.filled-button:hover,
  button.filled-button:hover,
  a.border-button:hover,
  button.border-button:hover {
    transform: translateY(-2px) scale(1.015);
  }
}



/* ========================================
   OLIVEIRA CONTACT FORM FINAL FIX
======================================== */

.callback-form .contact-form select.form-control,
.callback-form .contact-form input[type="date"].form-control,
.callback-form .contact-form input[type="file"].form-control {
  border-radius: 20px;
  height: 40px;
  line-height: 40px;
  display: inline-block;
  padding: 0 15px;
  color: #6a6a6a;
  font-size: 13px;
  text-transform: none;
  box-shadow: none;
  border: none;
  margin-bottom: 35px;
  background-color: #fff;
}

.callback-form .contact-form select.form-control:focus,
.callback-form .contact-form input[type="date"].form-control:focus,
.callback-form .contact-form input[type="file"].form-control:focus {
  outline: none;
  box-shadow: 0 12px 28px rgba(0,0,0,0.12) !important;
}

.checkbox-grid {
  display: none !important;
}



/* ========================================
   OLIVEIRA FORM MESSAGES FINAL
======================================== */

.form-message {
  display: none !important;
  padding: 16px 20px;
  margin-bottom: 25px;
  border-radius: 6px;
  font-weight: 500;
  text-align: left;
}

.form-message.is-visible {
  display: block !important;
}

.form-message.form-success,
.form-message.success {
  background: #e7f6df;
  color: #2f6b19;
}

.form-message.form-error,
.form-message.error {
  background: #fde8e8;
  color: #9b1c1c;
}



/* ========================================
   OLIVEIRA GALLERY SECTION
======================================== */

.gallery-section {
  padding: 120px 0 20px;
  background: #fff;
}

.gallery-wrapper {
  position: relative;
}

.gallery-preview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.gallery-thumb {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border: none;
  padding: 0;
  border-radius: 16px;
  background: #f2f7f7;
  cursor: pointer;
  box-shadow: 0 10px 26px rgba(0,0,0,0.08);
  transition: transform .35s ease, box-shadow .35s ease, filter .35s ease;
}

.gallery-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .65s ease, filter .45s ease;
}

.gallery-thumb::after {
  content: none !important;
  display: none !important;
}

.gallery-thumb:hover {
  transform: translateY(-7px);
  box-shadow: 0 18px 40px rgba(0,0,0,0.16);
}

.gallery-thumb:hover img {
  transform: scale(1.08);
  filter: saturate(1.08) contrast(1.04);
}

.gallery-thumb:hover::after {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
}

.gallery-empty {
  grid-column: 1 / -1;
  text-align: center;
  padding: 40px 25px;
  border-radius: 16px;
  background: #f6f8f8;
  color: #666;
}

.gallery-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9999999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 40px 90px;
  background: rgba(8,13,12,0.88);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .35s ease, visibility .35s ease;
}

.gallery-lightbox.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.gallery-stage {
  position: relative;
  max-width: min(1100px, 90vw);
  max-height: 84vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.gallery-stage img {
  max-width: 100%;
  max-height: 84vh;
  object-fit: contain;
  border-radius: 18px;
  box-shadow: 0 28px 70px rgba(0,0,0,0.45);
  background: #fff;
  animation: galleryImageIn .42s ease both;
}

.gallery-stage img.is-changing {
  animation: galleryImageChange .34s ease both;
}

.gallery-counter {
  position: absolute;
  left: 50%;
  bottom: -42px;
  transform: translateX(-50%);
  color: #fff;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 999px;
  padding: 7px 18px;
  font-size: 13px;
}

.gallery-close,
.gallery-arrow {
  border: none;
  cursor: pointer;
  color: #fff;
  background: rgba(54,181,186,0.88);
  transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}

.gallery-close {
  position: absolute;
  top: 24px;
  right: 28px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  font-size: 34px;
  line-height: 44px;
  z-index: 2;
}

.gallery-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 58px;
  height: 58px;
  border-radius: 50%;
  font-size: 34px;
  z-index: 2;
}

.gallery-prev {
  left: 28px;
}

.gallery-next {
  right: 28px;
}

.gallery-close:hover,
.gallery-arrow:hover {
  background: #36b5ba;
  box-shadow: 0 14px 32px rgba(54,181,186,0.38);
}

.gallery-close:hover {
  transform: scale(1.08) rotate(6deg);
}

.gallery-arrow:hover.gallery-prev {
  transform: translateY(-50%) translateX(-4px) scale(1.08);
}

.gallery-arrow:hover.gallery-next {
  transform: translateY(-50%) translateX(4px) scale(1.08);
}

body.gallery-open {
  overflow: hidden;
}

@keyframes galleryImageIn {
  0% {
    opacity: 0;
    transform: scale(.992);
    filter: blur(4px);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
}

@keyframes galleryImageChange {
  0% {
    opacity: 0;
    transform: scale(.994);
    filter: blur(4px);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
}

@media (max-width: 992px) {
  .gallery-preview-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .gallery-lightbox {
    padding: 35px 72px;
  }
}

@media (max-width: 768px) {
  .gallery-section {
    padding: 90px 0 10px;
  }

  .gallery-preview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  .gallery-lightbox {
    padding: 30px 18px;
  }

  .gallery-arrow {
    width: 46px;
    height: 46px;
    font-size: 26px;
    top: auto;
    bottom: 22px;
  }

  .gallery-prev {
    left: calc(50% - 58px);
  }

  .gallery-next {
    right: calc(50% - 58px);
  }

  .gallery-close {
    top: 18px;
    right: 18px;
  }

  .gallery-counter {
    bottom: -38px;
  }
}



/* ========================================
   GALLERY NO TEXT OVERLAY
======================================== */

.gallery-counter {
  display: none !important;
}

.gallery-thumb::before,
.gallery-stage::before,
.gallery-stage::after {
  content: none !important;
}



/* ========================================
   GALLERY FINAL FIX: NO TEXT + SOFT MOTION
======================================== */

.gallery-thumb::before,
.gallery-thumb::after,
.gallery-stage::before,
.gallery-stage::after,
.gallery-counter {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.gallery-thumb {
  transition: transform .45s ease, box-shadow .45s ease, filter .45s ease !important;
}

.gallery-thumb img {
  transition: transform .9s cubic-bezier(.22,.61,.36,1), filter .6s ease, opacity .6s ease !important;
}

.gallery-thumb:hover {
  transform: translateY(-4px) !important;
}

.gallery-thumb:hover img {
  transform: scale(1.035) !important;
}

.gallery-stage img {
  animation: galleryImageIn .75s cubic-bezier(.22,.61,.36,1) both !important;
  transition: opacity .75s ease, transform .75s cubic-bezier(.22,.61,.36,1), filter .75s ease !important;
}

.gallery-stage img.is-changing {
  animation: galleryImageChange .75s cubic-bezier(.22,.61,.36,1) both !important;
}

.gallery-lightbox {
  transition: opacity .55s ease, visibility .55s ease !important;
}

.gallery-arrow,
.gallery-close {
  transition: transform .35s ease, background .35s ease, box-shadow .35s ease, opacity .35s ease !important;
}

@keyframes galleryImageIn {
  0% {
    opacity: 0;
    transform: scale(.992);
    filter: blur(4px);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
}

@keyframes galleryImageChange {
  0% {
    opacity: 0;
    transform: scale(.994);
    filter: blur(4px);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
}



/* ========================================
   GALLERY SPACING + INSTAGRAM SOCIAL UPDATE
======================================== */

.gallery-section {
  padding-bottom: 130px !important;
  margin-bottom: 0 !important;
}

.gallery-section + .immobilien-section,
.gallery-section + section,
.gallery-section + div {
  margin-top: 0 !important;
}

.instagram-section {
  padding: 120px 0 !important;
  background: #f7fafa !important;
}

.instagram-section .section-heading {
  margin-bottom: 55px;
}

.instagram-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: start !important;
}

.instagram-embed-card {
  background: #fff;
  border-radius: 18px;
  padding: 16px;
  box-shadow: 0 14px 35px rgba(0,0,0,0.08);
  overflow: hidden;
  transition: transform .35s ease, box-shadow .35s ease;
}

.instagram-embed-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 22px 48px rgba(0,0,0,0.13);
}

.instagram-embed-card .instagram-media {
  min-width: 100% !important;
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 auto !important;
}

@media (max-width: 992px) {
  .instagram-grid {
    grid-template-columns: 1fr !important;
  }

  .gallery-section {
    padding-bottom: 95px !important;
  }
}



/* ========================================
   SMOOTH NAVIGATION + SOFT GALLERY MOTION
======================================== */

html {
  scroll-behavior: smooth;
}

body {
  scroll-behavior: smooth;
}

.navbar .navbar-nav a.nav-link,
a[href^="#"] {
  scroll-behavior: smooth;
}

.gallery-lightbox {
  transition: opacity .65s ease, visibility .65s ease !important;
}

.gallery-stage img {
  transition:
    opacity .85s cubic-bezier(.22,.61,.36,1),
    transform .85s cubic-bezier(.22,.61,.36,1),
    filter .85s ease !important;
  animation: gallerySoftOpen .85s cubic-bezier(.22,.61,.36,1) both !important;
}

.gallery-stage img.is-changing {
  animation: gallerySoftChange .85s cubic-bezier(.22,.61,.36,1) both !important;
}

.gallery-stage img.gallery-fade-out {
  opacity: 0 !important;
  transform: scale(.985) !important;
  filter: blur(5px) !important;
}

.gallery-arrow,
.gallery-close {
  transition:
    transform .45s cubic-bezier(.22,.61,.36,1),
    background .45s ease,
    box-shadow .45s ease,
    opacity .45s ease !important;
}

.gallery-thumb,
.gallery-thumb img {
  transition:
    transform .85s cubic-bezier(.22,.61,.36,1),
    box-shadow .55s ease,
    filter .55s ease,
    opacity .55s ease !important;
}

@keyframes gallerySoftOpen {
  0% {
    opacity: 0;
    transform: scale(.985);
    filter: blur(5px);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
}

@keyframes gallerySoftChange {
  0% {
    opacity: 0;
    transform: scale(.985);
    filter: blur(5px);
  }
  100% {
    opacity: 1;
    transform: scale(1);
    filter: blur(0);
  }
}



/* ========================================
   ACTIVE MENU SECTION FIX
======================================== */

.navbar .navbar-nav a.nav-link.current {
  color: #36b5ba !important;
  border-bottom: 3px solid #36b5ba !important;
}

.background-header .navbar-nav a.nav-link.current {
  color: #36b5ba !important;
  border-bottom: 3px solid #36b5ba !important;
}

.navbar .navbar-nav a.nav-link {
  transition: color .35s ease, border-color .35s ease, transform .35s ease;
}

@media (max-width: 992px) {
  .navbar .navbar-nav a.nav-link.current {
    color: #36b5ba !important;
    border-bottom: none !important;
    font-weight: 600;
  }
}
