 *{
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	text-rendering: geometricPrecision;
  }

  html{
	font-size: 16px;
	margin: 0;
	padding: 0;
	font-family: "Urbanist", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	scroll-behavior: smooth
  }

  body{
	background: white;
  margin: 0;
  padding: 0;
  color: #1E2E53;

  }

  a{
	text-decoration: none
  }

  .nav-fixed{


  }

  .nav-sec{
	display: flex;
	width:100%;
	padding:1rem 1.618rem;
	height: fit-content;
	position: fixed;
	  top:0;
	  left:0;
	  z-index: 999;
	  background: white;
	  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;

  }

  .nav-wrap{
	display: flex;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
	height: fit-content;
	justify-content: space-between;
	align-items: center
  }

  .nav-left-wrap{
	display: flex;
	align-items: center;
	width: fit-content;
	height: fit-content;
	gap:1.618rem
  }

  .nav-logo{
	display: flex;
	width:110px;
	height: fit-content
  }

  .nav-logo img{
	object-fit: contain;
	width: 100%;
	height: 100%
  }

  .nav-list{
	display: flex;
	align-items: center;
	width: fit-content;
	height: fit-content;
	gap:1.618rem
  }

  .nav-list a:first-child{
	font-weight: 700
  }

  .nav-list a{
	position: relative;
	font-size: 1.125rem;
  }

  .nav-list a:after{
	content:'';
	position: absolute;
	bottom:-5px;
	width: 0%;
	height: 2px;
	background: #1E2E53;
	left:0;
	transition: all 0.3s ease;
	border-radius: 10px
  }

  .nav-list a:hover:after{
	width: 100%
  }

  .cta{
	display: flex;
 background: #1E2E53;
	color:white;
	padding: 0.382rem 0.618rem;

	line-height: 1;
	border-radius: 0.382rem;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.3s ease;
	outline:1px solid transparent;
	outline-offset: 15px;
	width: fit-content
  }

  .cta:hover{
	background:white;
	color:#1E2E53;
	outline:1px solid #1E2E53;
	outline-offset: 0px
  }

  .cta-wrap{
	display: flex;
	width: fit-content;
	gap:1.618rem;
	height: fit-content;
	align-items: center;
	}

  .cta-alt{
	display: flex;
	width: 25px;
	aspect-ratio: 1

  }

  .cta-alt img{
	width: 100%;
  height: 100%;
  object-fit: contain
  }

  .hero-sec{
	display: flex;
	width: 100%;
	height: fit-content;
	min-height: 350px;

background: #DCEFFF;
	background: linear-gradient(180deg, rgba(220, 239, 255, 1) 0%, rgb(246 249 251) 100%);
	margin-top: 100px;
  }

  .hero-wrap{
	display: flex;
	flex-direction: column;
	width: 100%;
	justify-content: center;
	align-items: center;
	max-width: 1300px;
	margin: 0 auto;
	text-align: center
   }

   .hero-wrap h2{
	 margin-top:4.236rem
   }

  h1{

  }

  h2{

  }

  h3{
	margin: 0
  }

  p{
  margin: 0;
  line-height: 1.4
  }

  .strong{
	font-weight: 600
  }

  .services-sec{
	display: flex;
	width: 100%;
	height: fit-content;
	padding: 0 1.618rem;
	margin-top: -50px;
	flex-direction: column;
	align-items: center;
	gap:1.618rem
  }

  .services-wrap{
	display: grid;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
	height: fit-content;

	grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
	gap:1.618rem
  }

  .services-el{
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	text-align: center
  }

  .services-el h3{
	margin-bottom: 1rem
  }

  .services-el p{
	max-width: 35ch
  }

  .services-el-icon{
	display: flex;
	width:100px;
	aspect-ratio: 1;
	border:0px solid silver;
	border-radius: 100px;
	background: white;
	overflow: hidden;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.25rem
  }

  .services-el-icon svg{
	width: 75px
  }

  .p-xl{
	font-size: 1.618rem;
	font-weight: 700
  }



  .mobile-nav-button {
	display: flex;
	flex-direction: column;
	grid-gap: 5px;
	background: none;
	border: none;
	cursor: pointer
  }

  .mobile-nav-button:hover span:nth-child(1) {
	width: 15px
  }

  .mobile-nav-button:hover span:nth-child(2) {
	width: 10px
  }

  .mobile-nav-button span {
	height: 2px;
	width: 20px;
	background: #4f3b2b;
	transition: all 0.3s ease;
  }

  .mobile-nav {
	width: 100%;
	padding: 0;
	border: 0px solid silver;
	position: fixed;
	top: 0;
	right: 0%;
	transform: translateX(100%);
	box-sizing: border-box;
	height: 100vh;
	background: white;
	max-width: 500px;
	width: 90vw;

	font-weight: 600;
	letter-spacing: 1px;

	z-index: 999999;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 2px 0px;
	display: none
	;
	  flex-direction: column;
  }

  .mobile-nav .footer-social-wrap {
	display: flex
  ;
	align-items: center;
	gap: 1rem;
	padding: 1.618rem;
	margin-top: auto;
	height: fit-content;
	width: 100%;
	justify-content: center;
	margin-bottom: 4.236rem;
  }

  .mobile-nav .footer-social-wrap i{
	font-size: 1.25rem;
	color: #ac896d;
  }

  .mobile-nav-logo-wrapper {
	display: flex;
	width: 100%;
	padding: 1rem 1.618rem;
	/* background: #1b1b1b; */
	justify-content: space-between;
	align-items: center;
  }

  .mobile-nav-logo-wrapper .nav-logo {

  }

  .mobile-nav-link-wrapper {
	padding: 0;
	margin: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	grid-gap: 0.5rem;
	height: fit-content;
	padding: 1.618rem;

	position: relative;
  }

  .mobile-nav-link-wrapper:after{
	content:'';
	display: flex;
	width: 100%;
	height:100%;
	position: absolute;
	top:0;
	left:0;
	background-image: url(/assets/img/Pink-Palm-Leaves.jpg);
	background-size: cover;
	opacity: 0.6;
	z-index: -1;
	mask-image: linear-gradient(1deg, rgb(255 255 255) 0%, rgb(255 255 255) 25%, rgb(255 255 255 / 0%) 50%, rgb(255 255 255 / 0%) 90%, rgba(255, 255, 255, 0) 100%);
	display: none
  }

  .mobile-nav-link-wrapper>a {
   transition: all 0.3s ease;
   font-size: 1.25rem;
   padding: 1rem 0;
   text-decoration: none;
   color: #1d2e53;
   font-weight: 600;
   border-bottom: 1px solid #c1e9ff;
  }

  .mobile-nav-link-wrapper a:first-child {
	/* background: #eddab9; */
	font-weight: 800
  }

  .mobile-nav-link-wrapper a:hover {
	background: #fff1db;
	color: #0c0c0e;

  }



  .mobile-nav ul li {
	padding: 0;
	margin: 0;
	list-style: none;
  }

  .mobile-nav-button {
	display: none;
	flex-direction: column;
	grid-gap: 5px;
	background: none;
	border: none;
	cursor: pointer
  }

  .mobile-nav-button:hover span:nth-child(1) {
	width: 15px
  }

  .mobile-nav-button:hover span:nth-child(2) {
	width: 10px
  }

  .mobile-nav-button span {
	height: 2px;
	width: 20px;
	background: #4f3b2b;
	transition: all 0.3s ease;
  }

  .close-nav-button {
	display: flex;
	height: fit-content;
	background: none;
	transition: all 0.3s ease;
	border:none
  }

  .close-nav-button:hover {
	transform: scale(1.1)
  }

  .close-nav-button:hover i {
	color: indianred;
	cursor: pointer
  }

  .close-nav-button i {
	font-size: 1.618rem;
	color: #1d1d1d;
	transition: all 0.3s ease
  }

  .mobile-nav-info{
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding: 1.25rem;
  }

  .mobile-nav-info a{
	display: flex;
	gap:1rem;
	align-items: center
  }

  .mobile-nav-info a i{
	font-size: 1.25rem
  }

  .values-sec{
	display: flex;
	width: 100%;
	height: fit-content;
	min-height: 600px;

	background-image: url("/img/values-bg.jpg");
	background-size: cover;
	background-position: 75%;
	margin: 2.618rem 0;
	padding: 0 1.618rem;
	margin-bottom: 0
  }

  .values-wrap{
	display: flex;
	width: 100%;
	height: 100%;
	max-width: 1300px;
	margin: 0 auto;
	padding:2.618rem 0;
	flex-direction:column;
  }

  .values-grid{
	display: grid;
	width: 100%;
	max-width: 900px;
	height: fit-content;
	grid-template-columns: repeat(auto-fit,minmax(200px,1fr));
	gap:1.618rem;
  }

  .values-el{
	display: flex;
	width: 100%;
	height: fit-content;
	flex-direction: column;
	gap:1rem;
	transition: all 0.3s ease;
	cursor: pointer
  }

  .values-el h3{
	position: relative
  }

  .values-el h3:after{
	content:'';
	position: absolute;
	bottom:-5px;
	left:0;
	width:var(--underline-width, 0%);
	height:1.5px;
	border-radius: 5px;
	background: #1d2e53;
	transition: all 0.3s ease;
  }

  /* .values-el:hover h3:after{
	width: var(--underline-width, 100%)
  } */

  .values-el p{
	opacity: 0;
	transition: all 0.3s ease;
	position: relative;
	transform: translateY(10px)
  }

  /* .values-el:hover p{
	opacity: 1;
	transform: translateY(0px)
  } */

  .contact-sec{
	display: flex;
	width: 100%;
	height: fit-content;
	min-height: 650px;
	padding: 2.618rem 1.618rem;
  }

  .contact-wrap{
	display: flex;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
	flex-direction: column;
	align-items: center
  }

  .contact-wrap h2{
	font-size: 2.618rem;
	margin: 0;

  }

  .contact-wrap .p-xl{
	margin-bottom: 1rem
  }

  .info-fixed{
	display: flex;
	width: fit-content;
	padding: 0.618rem;
	background:red;
	color:white;
	position: fixed;
	bottom:1rem;
	right: 1rem
  }

  .contact-box{
	display: flex;
		flex-direction: column;
		padding: 1.618rem;
		gap: 1.618rem;
		margin-top: 4.236rem;
		align-items: center;
		border-radius: 50px;
		box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
		width: 100%;
		max-width: 450px;

  }

  .contact-box a{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap:0.618rem
  }

  .contact-box a i{
	font-size: 2rem
  }

  .contact-highlight{
	display: flex;
	flex-direction: column;
	background: #1E2E54;
	width:100%;
	padding:1rem;
	border-radius: 25px;
	color:white;
	align-items: center
  }

  .contact-highlight p:nth-child(1){
	font-weight: 700;
	margin-bottom: 0.618rem
  }

  .contact-highlight p:nth-child(2){
	font-weight: 300
  }

  .contact-highlight p:nth-child(3){
	font-weight: 300
  }

  .contact-highlight p:nth-child(4){
	font-weight: 700;
	font-size: 0.618rem;
	margin-top: 1rem
  }

  .miocondominio-sec{
	display: flex;
	width: 100%;
	height: fit-content;
	min-height: 350px;
	background: #DCEFFF;
	background: linear-gradient(180deg, rgba(220, 239, 255, 1) 0%, rgb(246 249 251) 100%);
  }

  .miocondominio-wrap{
	display: flex;
	flex-direction: column;
	width: 100%;
	justify-content: center;
	align-items: center;
	max-width: 1300px;
	margin: 0 auto;
	text-align: center;
  }

  .miocondominio-wrap h2{
	font-size: 2rem
  }

  .miocondominio-wrap p{
	font-size: 1.4rem;
	max-width: 50ch;
	margin: 0 auto
  }

  .miocondominio-wrap .cta{
	align-items: center;
	gap:1rem;
	margin-bottom: 1.618rem
  }

  .miocondominio-wrap .cta img{
	width:25px
  }

  footer{
	display: flex;
	width: 100%;
	height: fit-content;
	padding:2.618rem 1.618rem;
	background: linear-gradient(0deg, rgba(220, 239, 255, 1) 0%, rgb(246 249 251) 100%);
	flex-direction: column;
	padding-bottom: 0
  }

  .footer-wrap{
	display: flex;
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 1rem;

  }

  .footer-wrap a{
	gap:1rem;
	display: flex;
  }

  .footer-bottom{
	display: flex;
	padding: 1rem 1.618rem;
	justify-content: center;
  }

  .form-sec{
	  display: flex;
	  width: 100%;
	  height: fit-content;
	  min-height: 350px;
	  background: white;
	  padding: 2.618rem 1.618rem;

  }

  .form-wrap{
	display: grid;
	width: 100%;
	justify-content: center;
	align-items: center;
	max-width: 1300px;
	margin: 0 auto;
	text-align: center;
	gap: 2.618rem;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	align-items: center
  }

  .form-wrap input{
	border: none
  }

  .contact-form{
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  gap:1rem;
	  width: 100%;
	  max-width: 350px
  }

  .form-el{
	display: flex;
	width: 100%;
	flex-direction: column;
	gap:0.618rem;
  }

  .form-el label{
	width: fit-content;
	font-weight: 600;
  }

  .form-el input{
	border-radius: 50px;
	border:none;
	background: #ebebeb;
	line-height: 2;
	padding: 0.382rem 1rem;
  }

  .form-el textarea{
	border-radius: 12px;
	border:none;
	background: #ebebeb;
	line-height: 2;
	padding: 0.382rem 1rem;
  }

  .contact-form .form-el:nth-child(3){
	grid-column: 1/3

  }

  .contact-form .form-el:nth-child(4){
	grid-column: 1/3

  }

  .contact-form .privacy-policy:nth-child(5){
	grid-column: 1/3

  }

  .contact-form .form-el:nth-child(6){
	grid-column: 1/3

  }

  .privacy-policy{
	display: flex;
	width: 100%;
	gap:0.618rem
  }

  .privacy-policy label{
	font-size: calc(1rem / 1.125);
	text-align: left
  }

  .form-left{
	display: flex;
	flex-direction: column;
	align-items: center
  }

  .form-left h2{
	font-size: 2rem
  }

  .form-right{
	display: flex;
	width: 100%;
	height: fit-content;
	align-items: flex-end;

	flex-direction: column;
	gap: 1rem;
  }

  .form-right div{
	border-radius: 1rem;
	overflow: hidden;
  }

  .form-right a{
	display: flex;
	align-items: center;
	gap:0.618rem
  }

  .aboutus-sec{
  		display: flex;
		  width: 100%;
		  height: fit-content;
		  flex-direction: column;
		  gap:1rem;
		  padding:1.618rem;
  }

  .aboutus-wrap{
  	display: flex;
	  width: 100%;
	  height: fit-content;
	  max-width: 1300px;
	  margin: 0 auto;
	  flex-direction: column;
	  gap:4.236rem
  }

  .aboutus-wrap h1{
	  font-size: 2.618rem;
	  text-align: center;
	  margin:0
  }

  .aboutus-block{
  	display: grid;
	  width: 100%;
	grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
	gap:4.236rem;
  }

  .aboutus-text{
  		display: flex;
		  flex-direction: column;
		  width: 100%;
		  gap:1rem
  }

  .aboutus-text h2{
	  font-size: 2rem
  }

  .aboutus-image{
  	display: flex;
	  width: 100%;
	  aspect-ratio: 1.618;
	  border-radius: 0.618rem;
	  overflow: hidden
  }

  .aboutus-image img{
  		width: 100%;
		  height: 100%;
		  object-fit: cover;
	}

	.teamel-block{
		display: grid;
		width: 100%;
grid-template-columns: auto auto;
		height: fit-content;
		gap:1.618rem
	}

	.teamel-image{
		display: flex;
		width: 50px;
		aspect-ratio: 1;
		border: 1px solid silver;
		border-radius: 100px
	}

	.teamel-image img{

	}

	.teamel-text{
		display: flex;
		flex-direction: column;
		gap:1rem
	}

  @media only screen and (max-width:1100px){

	.values-el p{
	  opacity: 1;
	  transition: all 0.3s ease;
	  position: relative;
	  transform: translateY(0px)
	}

	.values-el {

		background: #ffffffb8;
		padding: 1rem;
		backdrop-filter: blur(10px);
		border-radius: 1rem;
	}
  }

  @media only screen and (max-width:650px){
	html{
	  font-size: 14px
	}

	.mobile-nav{
	  display: flex
	}

	.mobile-nav-button {
	  display: flex
	}

	.nav-list{
	  display: none
	}

	.cta-wrap{
	  display: none
	}

	.mobile-nav .cta-wrap{
	  display: flex;
	  margin: 0 auto;
	  margin-top: auto;
	  margin-bottom: 4rem;
	}

	.aboutus-block:nth-child(odd) .aboutus-image{
		grid-row: 2
	}

	.contact-wrap h2 {
		font-size: 2.618rem;
		margin: 0;
		max-width: 15ch;
		text-align: center;
		line-height: 1;
	}

	.values-el{
		pointer-events: none
	}





  }
