
@import "animate.css";
@import "pro_hover.css";

/*@import "touchTouch.css";
@import "owl.carousel.css";*/
/*========================================================
                    Main layout styles
=========================================================*/

:root{
  --primary:#233746;
  --accent:#EAC40A;
  --bg:#f7f4ea;
  --white:#ffffff;
}
.stat::before{
  content:'';
  position:absolute;
  left: 0;
  top:2.5rem;
  width: 10px;
  height:60%;
  background:var(--accent); /* #EAC40A */
  border-radius:2px;
}
/* =========================
   SECTION IDS (HOOKS)
   ========================= */
#why-section{}
#numbers-section{}
#partners-section{}
#final-section{}

/* SECTION TITLES */
.col-3-title{
  font-size:3vw;
  line-height:3vw;
  color:var(--primary);
  margin-bottom:3rem;
}

/* CONTENT GRID */
.content-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4rem;
}
.content-grid p{font-size:1rem}

/* WHY */
.why-box{
  background:var(--white);
  padding:3rem;
  border-radius:20px;
  box-shadow:0 20px 40px rgba(0,0,0,.05);
}

/* NUMBERS */
.numbers{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:2rem;
}
.stat{
  background:var(--white);
  padding:2.5rem;
  /* border-radius:20px; */
}
.stat h3{
  font-size: 50px;
  color: #233746;
  margin-bottom: 19px;
}

/* PARTNERS */
.partners{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3rem;
}
.partner-list li{
  list-style:none;
  margin-bottom:1rem;
  padding-left:1.5rem;
  position:relative;
}
.partner-list li::before{
  content:'';
  width:8px;
  height:8px;
  background:var(--accent);
  border-radius:50%;
  position:absolute;
  left:0;
  top:.6rem;
}
.partner-images{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1.5rem;
}
.partner-images div{
  background-size:cover;
  background-position:center;
  height:180px;
  border-radius: 10px;
}

/* FOOTER */
.final{
  background:var(--primary);
  /* color:var(--white); */
  padding:5rem 0;
}
.final p{
  max-width:700px;
  font-size:1.1rem;
  margin: 0 auto;
}
.final .accent-line{margin-top:2rem}
/* =========================
   SECTION SPACING
   ========================= */
#why-section,
#numbers-section,
#partners-section,
#final-section{
  padding:120px 0px;
}

/* =========================
   BACKGROUNDS
   ========================= */

/* 1ÃƒÂ¯Ã‚Â¸Ã‚ÂÃƒÂ¢Ã†â€™Ã‚Â£ Primera secciÃƒÆ’Ã‚Â³n ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Å“ blanca */
#why-section{
  background:#ffffff;
}

/* 2ÃƒÂ¯Ã‚Â¸Ã‚ÂÃƒÂ¢Ã†â€™Ã‚Â£ Segunda secciÃƒÆ’Ã‚Â³n ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Å“ azul full width */
#numbers-section{
  position:relative;
  z-index:1;
}

#numbers-section::before{
  content:'';
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:100vw;
  height:100%;
  background:#233746;
  z-index:-1;
}

/* Texto claro solo para esta secciÃƒÆ’Ã‚Â³n */
#numbers-section .col-3-title,
#numbers-section p{
  /* color:#ffffff; */
  color: #646464;
}

/* 3ÃƒÂ¯Ã‚Â¸Ã‚ÂÃƒÂ¢Ã†â€™Ã‚Â£ Tercera secciÃƒÆ’Ã‚Â³n ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Å“ f7f4ea full width */
#partners-section{
  position:relative;
  z-index:1;
}

#partners-section::before{
  content:'';
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:100vw;
  height:100%;
  background:#f7f4ea;
  z-index:-1;
}

/* 4ÃƒÂ¯Ã‚Â¸Ã‚ÂÃƒÂ¢Ã†â€™Ã‚Â£ SecciÃƒÆ’Ã‚Â³n final ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Å“ blanca (texto intacto) */
#final-section{
  background:#ffffff;
  text-align: center;
}
/* RESPONSIVE */
@media(max-width:900px){
  .hero{grid-template-columns:1fr}
  .hero h1{font-size:8vw;line-height:8.5vw}
  .col-3-title{font-size:6vw;line-height:6vw}
  .content-grid,.partners{grid-template-columns:1fr}
  .numbers{grid-template-columns:1fr}
  .main{width:90%}
}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/* === CONTENEDOR DEL VIDEO === */
.fixed-quote-btn {
    position: fixed;
    bottom: 20px;
    left: 7%;
    margin-left: 0px;
    /* width: 150px; */
    background: #EAC40A;
    color: white;
    font-weight: bold;
    background-size: 100%;
    background-position: center;
    padding: 5px 20px;
    /* border-radius: 30px; */
    text-decoration: none;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    transition: all 0.3s 
ease;
    z-index: 9999;
} 
.social-box{
  padding: 40px 0px;
  background: #1d2b35;
  margin-top: 80px;
  background: linear-gradient(to right, rgba(29, 43, 53, 0) 0%, #1d2b35 50%, rgba(29, 43, 53, 0) 100%);
}
.fixed-quote-btn:hover {
  background-color: #283b4a;
  transform: translateY(-3px);
}
/* === VIDEO ADAPTABLE === */
#bg-video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  z-index: 1;
}
.project {
  opacity: 0;
  transition: opacity 0.6s ease;
  display: none;
}

.project.active {
  display: block;
  opacity: 1;
}
#projects {
  position: relative;
  padding: 120px 20px;
}
.p-header {
  position: relative;
  overflow: hidden;
   /* hace que los hijos se alineen al fondo */
}
.contracting-section {float: left;width: 48%;padding: 4%; /* Ajusta los grados para mÃƒÆ’Ã‚Â¡s o menos inclinaciÃƒÆ’Ã‚Â³n */ /* Punto de referencia para la inclinaciÃƒÆ’Ã‚Â³n */transform: rotate(-4deg); /* ajusta el ÃƒÆ’Ã‚Â¡ngulo aquÃƒÆ’Ã‚Â­ */transform-origin: center; /* gira alrededor del centro */padding-top: 120px;padding-left: 7%;}

.contracting-section .container {
     /* Inversa al skew de la secciÃƒÆ’Ã‚Â³n */
}

.contracting-section .text-block { }

.contracting-section .text-block h2 { }

.contracting-section .text-block h3 { }

.contracting-section .text-block ul { }

.contracting-section .text-block ul li { }

.contracting-section .text-block .highlight { }

.contracting-section .image-block { }

.contracting-section .image-block img {width: 100%;}

.preconstruction-section {float: left;width: 46%;transform: rotate(-4deg); /* ajusta el ÃƒÆ’Ã‚Â¡ngulo aquÃƒÆ’Ã‚Â­ */transform-origin: center; /* gira alrededor del centro */padding-top: 20px;padding: 4%;padding-top: 220px;padding-bottom: 120px;border-left: 1px solid #e7e7e7;}

.preconstruction-section .container {}

.preconstruction-section .container.reverse {}

.preconstruction-section .container.reverse .text-block { }

.preconstruction-section .text-block { }

.preconstruction-section .text-block h2 { }

.preconstruction-section .text-block p { }

.preconstruction-section .image-block { }

.preconstruction-section .image-block img {width: 100%;margin-bottom: 20px;}


.p-title {
  margin: 0;
}

.p-controls {
  float: left;
  /* margin-top: 8px; */ /* distancia respecto al tÃƒÆ’Ã‚Â­tulo */
       /* fuerza a colocarse debajo del h2 */
}
/* Loader circular general */
.loader {
  border: 4px solid rgba(255,255,255,0.2);
  border-top: 4px solid #fff;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  margin: 60px auto;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  to { transform: rotate(360deg); }
}
.p-btn {
  background: none;
  border: none;
  letter-spacing: 1px;
  transition: color 0.3s;
}
.services-section {
  position: relative;
  background-image: url(../images/service.jpg); /* color base */
  color: #fff;
  overflow: hidden;
  padding: 80px 0px;
  background-size: cover;
  background-position: center;
}
#quote-section {
  background: #ffffff;
  /* color: white; */
  padding: 80px 10%;
}

.quote-container {float: left;width: 50%;}
.project {
  display: none; /* Ocultar todo al inicio */
}
/* Formulario */
.quote-form {
  flex: 1;
  /* min-width: 340px; */
}

.quote-form form {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.quote-form input,
.quote-form select,
.quote-form textarea {
  width: 100%;
  padding: 12px 14px;
  border: none;
  outline: none;
  color: #646464;
  font-size: 14px;
  border-radius: 0px;
  margin-bottom: 10px;
  /* font-weight: bold; */
  margin-top: 0;
  border-radius: 3px;
  border: 1px solid #d6d6d6;
}
.home-slider {
  min-height: 800px;
  position: absolute;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  top: 0;
  left: 0;
  z-index: 99;
}

.home-slider .slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 0;
  transition: opacity 1s ease-in-out;
  pointer-events: none; /* evita que slides ocultos bloqueen clicks */
}

.home-slider .slide.active {
  opacity: 1;
  z-index: 1;
  pointer-events: auto;
}
.home-slider .slider-dots {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
  z-index: 10000;
}

.home-slider .slider-dots .dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
  cursor: pointer;
  transition: background 0.3s;
}

.home-slider .slider-dots .dot.active {
  background: #fff;
}
/* Preloader */
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #283b4a; /* color azul */
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999999; /* respetado */
  display: none;
  transition: opacity 0.6s ease, visibility 0.6s ease;
}

/* Contenedor del logo */
.preloader-logo {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.preloader-logo img.logo-brillo{
    position: absolute;
    z-index: 9999999;
    left: 0px;
    width: 202px;
    top: -1px;
    /* display: none; */
}
.preloader-logo img {
  width: 200px; /* tamaÃƒÆ’Ã‚Â±o del logo */
  height: auto;
  display: block;
}

.preloader-logo::after {
  content: '';
  position: absolute;
  top: -20%;
  left: -75%;
  width: 25%;
  height: 200%;
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 1) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  pointer-events: none;
  transform: rotate(15deg);
  animation: shine 1.8s infinite;
  animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1); /* suavizado tipo ease-out */
}

@keyframes shine {
  0% {
    left: -75%;
  }
  25% {
    left: -50%;
  }
  50% {
    left: -25%;
  }
  75% {
    left: 0%;
  }
  100% {
    left: 100%;
  }
}
.fade-container {
  opacity: 1;
  transition: opacity .35s ease;
}

.fade-container.fade-out {
  opacity: 0;
  pointer-events: none;
}
/* AnimaciÃƒÆ’Ã‚Â³n del brillo */
@keyframes shine {
  0% { left: -75%; }
  100% { left: 125%; }
}
/* Estado inicial: muy grande y transparente */
.zoom-fade-in {
  transform: scale(5);
  opacity: 0;
  transition: transform 0.8s ease-out, opacity 0.8s ease-out;
}

/* Cuando se haga visible: tamaÃƒÆ’Ã‚Â±o normal y opacidad completa */
.zoom-fade-in.visible {
  transform: scale(1);
  opacity: 1;
}
/* Cuando estÃƒÆ’Ã‚Â© oculto */
#preloader.hidden {
  opacity: 0;
  visibility: hidden;
}
.quote-form select {
  appearance: none;
  cursor: pointer;
}
/* Estado inicial oculto */
.fade-in {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s ease-out, transform 1s ease-out;
}

/* Cuando entra en viewport */
.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}
.quote-form textarea {
  resize: none;
}

.quote-form input::placeholder,
.quote-form textarea::placeholder {
  color: #b2b2b2;
}
#quoteForm,
#quoteForm2 {
  display: none;
}

.show-form {
  display: block !important;
}
.dimensions {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.dimensions input {
  flex: 1;
}

.quote-form button {
  background: #ffffff;
  color: #385466;
  background-size: 100%;
  background-position: center;
  font-weight: bold;
  padding: 12px;
  border: none;
  /* border-radius: 6px; */
  cursor: pointer;
  margin-top: 10px;
  transition: background 0.3s ease, color 0.3s ease;
}
.whatsapp-button img{ width:100%}
.whatsapp-button {
  position: fixed;
  bottom: 20px; /* distancia desde el borde inferior */
  right: 20px;  /* distancia desde el borde derecho */
  width: 60px;  /* tamaÃƒÆ’Ã‚Â±o del botÃƒÆ’Ã‚Â³n */
  height: 60px;
  z-index: 9999; /* para que estÃƒÆ’Ã‚Â© siempre encima */
  border-radius: 50%; /* redondo */
  overflow: hidden;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2); /* sombra opcional */
  cursor: pointer;
  transition: transform 0.2s;
}

.whatsapp-button:hover {
  transform: scale(1.1); /* efecto al pasar el mouse */
}
.quote-form button:hover {
  background: #ffffff;
  color:#EAC40A;
}

/* Texto derecho */
.quote-text {float: left;width: 45%;margin-left: 5%;}

.quote-text h2 {
  font-size: 5vw;
  line-height: 1;
  font-weight: 800;
  font-style: italic;
  margin: 0 0 20px;
}

.quote-text p {
  font-size: 19px;
  line-height: 22px;
  /* text-transform: uppercase; */
  /* font-weight: bold; */
}
/* TriÃƒÆ’Ã‚Â¡ngulo centrado */
.top-triangle {
  display: none;
  width: 0;
  height: 0;
  border-left: 50vw solid #fff;
  border-right: 50vw solid #fff;
  border-bottom: 120px solid transparent; /* mismo color del fondo */
  position: relative;
}

/* Borde blanco arriba del triÃƒÆ’Ã‚Â¡ngulo */
.top-triangle::before {
  content: "";
  position: absolute;
  top: -50px;
  left: -50vw;
  border-left: 50vw solid transparent;
  border-right: 50vw solid transparent;
  border-bottom: 50px solid #000000; /* borde blanco */
}


.services-content {
}

.services-title {font-size: 3vw;/* text-transform: uppercase; */line-height: 3vw;/* font-weight: 900; */color: #ffffff;margin-bottom: 40px;}

.services-body {height: auto;display: inline-block;width: 100%;}

.services-list {
  list-style: none;
  margin: 0;
  padding: 0;
  float: left;
  width: 40%;
  line-height: 16px;
  margin-left: 2%;
}

.services-list li {
  padding: 6px 0;
  cursor: pointer;
  border-left: 3px solid transparent;
  transition: 0.3s;
  font-size: 19px;
  padding-left: 10px;
  line-height: 26px;
}

.services-list li:hover,
.services-list li.active {
  border-left: 3px solid #EAC40A;
  color: #EAC40A;
}
.project { display: none; margin-bottom: 30px; }
.project.active { display: block; }

.project-media { position: relative; }
.main-media { width: 100%; height: 400px; background-size: cover; background-position: center; }
.project-image { width: 100%; height: 100%; background-size: cover; background-position: center; }

.media-thumbnails { display: flex; margin-top: 10px; gap: 10px; }
.thumbnail { width: 80px; height: 60px; background-size: cover; background-position: center; cursor: pointer; border: 2px solid transparent; }
.thumbnail:hover { border-color: #EAC40A; }
.service-detail {
  float: left;
  margin-left: 4%;
  width: 54%;
}

.service-name {
 height: 100px;
}

.service-description {
  line-height: 1.6;
}

.bottom-image img {
  width: 100%;
  display: block;
  margin-top: 50px;
}
.p-btn:hover {
  color: #1a1a1a;
}
.filter-bar {
  display: flex;
  gap: 0px;
  margin-bottom: 20px;
  flex-wrap: wrap;
  color: red;
  margin-top: 20px;
}

.filter-bar div {
  padding: 2px 6px;
  cursor: pointer;
  border-radius: 5px;
  user-select: none;
  font-weight: bold;
  text-transform: uppercase;
  font-size: 12px;
  color: #EAC40A;
  line-height: 17px;
}

.filter-bar div.active {
  text-decoration: underline;
}

#projects {
  padding: 60px 20px;
  /* background: #f9f9f9; */
  overflow: hidden;
}

.projects-container {
}
.cls-1 {
  stroke: black; /* o el color que quieras */
  fill: none;
  stroke-width: 1; /* ajusta segÃƒÆ’Ã‚Âºn tu lÃƒÆ’Ã‚Â­nea */
  stroke-dasharray: 100; /* longitud aproximada de tu path */
  stroke-dashoffset: 100;
  animation: draw 2s linear forwards;
}

@keyframes draw {
  to { stroke-dashoffset: 0; }
}
.project {
  /* display: flex; */
  /* flex-direction: column; */
  /* align-items: center; */
  text-align: center;
}

.project-image {
  width: 70%;
  aspect-ratio: 13 / 9;
  background-size: cover;
  background-position: center;
  /* border-radius: 12px; */
  /* box-shadow: 0 8px 18px rgba(0,0,0,0.15); */
  transition: transform 0.4s ease, box-shadow 0.4s ease;
  float: left;
}

.project-image:hover {
  transform: scale(1.03);
  box-shadow: 0 12px 25px rgba(0,0,0,0.25);
}

.p-description {
  margin-top: 20px;
  text-align: left;
  width: 25%;
  margin-left: 5%;
  float: left;
  font-size: 13px;
  line-height: 19px;
}

.p-d-title {
  font-size: 15px;
  font-weight: 600;
  color: #1a1a1a;
}

.p-d-medida {font-size: 15px;}

.p-d-desc {
}
.p-btns {
  font-size: 13px;
  line-height: 13px;
  float: left;
}
.prevB {}
.nextB {}
    /* Carousel wrapper */
#reviews-carousel {max-width: 500px;margin: 0 auto;margin-bottom: 0px;overflow: hidden;position: relative;min-height: 200px;margin-top: 40px;}

/* Track que contiene las reviews */
.carousel-track {
  display: flex;
  transition: transform 0.5s ease-in-out;
}

/* Cada review ocupa todo el ancho */
.review {
  flex: 0 0 100%;
  box-sizing: border-box;
  padding: 20px;
  text-align: left;
  padding-left: 89px;
  padding-bottom: 0px;
}
 .project-media video,
.project-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  /* border-radius: 6px; */
}

.project-media {
  width: 70%;
  height: 100%;
  position: relative;
  overflow: hidden;
  float: left;
}
/* Foto circular */
.review img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 15px;
}

/* Nombre + botones inline */
.review h4 {margin: 0px;}

/* Comentario */
.review p {
  font-size: 14px;
  /* color: #555; */
  margin-bottom: 10px;
  margin: 0px;
}

/* Estrellas */
.review .stars {
  color: #EAC40A;
  font-size: 18px;
}

/* Botones */
.review h4 button {
  padding: 5px 10px;
  font-size: 14px;
  cursor: pointer;
}
	#slider{height: 1060px;}
	.r-text-box{padding: 15% 10%;}
	.r-text{width: 100%;float: left;margin: 0 auto;}
	.r-img{
    width: 100%;
    height: 400px;
}
	#reviews2 .r-img{ display:none }
	#reviews2 #slider{height: 540px;}
/* === RESPONSIVE === */
@media (orientation: landscape) {
  #bg-video {
    width: 100vw;
    height: auto;
  }
}

@media (orientation: portrait) {
  #bg-video {
    width: auto;
    height: 100vh;
  }
}

.bg{background:url(../images/home-japan.jpg);width:100%;height: 700px;background-size: cover;background-position: right;position: absolute;top: 0;z-index: -1;opacity: 0.27;background-repeat:no-repeat;}
html {
	-ms-touch-action: none;
}

body {
  background: #fff;
  font-size: 15px;
  line-height: 25px;
  color: #646464;
  margin:0;
  padding:0;
  font-family: "Raleway", sans-serif;
}
p{font-size: 15px;}
body,
html {
  height: 100%;
}
.col-3 p{
    max-width: 400px;
    margin-left: 30px;
}

video::-webkit-media-controls-fullscreen-button {
    display: none;
}
video::-webkit-media-controls-play-button {}
video::-webkit-media-controls-timeline {}
video::-webkit-media-controls-current-time-display{}
video::-webkit-media-controls-time-remaining-display {}
video::-webkit-media-controls-mute-button {}
video::-webkit-media-controls-toggle-closed-captions-button {}
video::-webkit-media-controls-volume-slider {}

#my-books{background-color: #f2f2f2;    font-family: 'Bacasime Antique', serif;
    letter-spacing: 0px;
    padding-top: 60px;
    padding-bottom: 60px;}
#all{padding-top: 60px;text-align: center;padding-bottom: 60px;background: white;}
* {
  position: relative;
  -webkit-text-size-adjust: none;
}
#news{
    background: #f7f4ea;
    padding-top: 80px;
    padding-bottom: 80px;
}
.new-box{
    padding: 60px;
    float: left;
    /* height: 105%; */
    background-size: cover;
    background-position: center;
    color: #ffffff;
    min-height: 300px;
    width: 100%;
}
.new-bg{
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #094f84;
    opacity: 0.6;
}
.new-tag{
    background: #EAC40A;
    display: inline-block;
    padding: 0px 10px;
    font-weight: bold;
    color: #fff;
    font-size: 13px;
}
.swiper-button-next,
.swiper-button-prev {
    color: #ffffff !important;
}
.swiper-pagination-bullet-active{background: #ffffff !important;}
.new-txt{
    font-size: 26px;
    line-height: 30px;
    font-weight: normal;
    font-style: italic;
    margin-top: 10px;
    margin-bottom: 10px;
}
.new-btn{
    color: #EAC40A;
    font-weight: bold;
}
.home-img img{
    height: 300px;
}
.p-d-category{background: #EAC40A;display: inline-block;padding: 2px 10px;color: #ffffff;font-weight: bold;margin-bottom: 5px;}
.s2{width:100%;overflow:hidden}
.q-title{
    font-size: 8vw;
    line-height: 8vw;
    font-weight: 900;
}
.bottom-image{margin-top: -40px;}
.p-h1{float:left;}
.c-btn{
    top: 95px;
    position: absolute;
    z-index: 999999;
    cursor: pointer;
    left: 0;
}
.prev, .next{
    color: #EAC40A;
    text-transform: uppercase;
    float: left;
    font-weight: bold;
    margin-right: 5px;
    font-size: 12px;
}
#cb{}
.col-4{}
.col-4-subtitle{
    font-size: 23px;
    font-weight: 600;
}
a{color: #ffffff}
#contact .h2{
    color: #ffffff;
    margin-top: 0px;
}
.h2{
	 -webkit-transition: color 0.3s ease, transform 0.3s ease;
       -moz-transition: color 0.3s ease, transform 0.3s ease;
        -ms-transition: color 0.3s ease, transform 0.3s ease;
         -o-transition: color 0.3s ease, transform 0.3s ease;
            transition: color 0.3s ease, transform 0.3s ease;
	font-size: 23px;
	line-height: 3vw;
	font-weight: bold;
	color: #233746;
	font-style: italic;
	margin-top: 40px;
}

.col-4-title{
    font-size: 60px;
    line-height: 60px;
    font-weight: 900;
    text-transform: uppercase;
}
.col-3-title{
    font-size: 3vw;
    /* text-transform: uppercase; */
    line-height: 3vw;
    /* font-weight: 900; */
    color: #233746;
}

#sign-up{
    background: #bfa18e;
    color: #fff;
    padding: 80px;
    width: 600px;
    position: fixed;
    top: 8%;
    bottom: 8%;
    overflow: scroll;
    display: none;
    left: 50%;
    margin-left: -300px;
    z-index: 999999;
}
.books-main{margin-top: 80px;}
.buttons-box{ margin-top:20px}
.col-4b{
	   width:100%;
	   max-width:300px;
	   border: 1px solid #bfa18d;
	   display: inline-block;
	   border-radius: 5px;
	   margin-top: 20px;
	   font-family: 'Montserrat';
	   overflow: hidden;
	   }
.about-1 img,.about-2 img,.about-3 img{width: 100%;}
.about-1{
	
}
select {
  width: 100%;
  padding: 10px;
  margin-top: 6px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  font-size: 15px;
  background-color: #fff;
  color: var(--text);
  transition: border-color var(--transition);
}
select:focus {
  border-color: var(--primary);
  outline: none;
  box-shadow: 0 0 0 2px rgba(237, 123, 94, 0.2);
}
.user-img-box{
	text-align: center;
	letter-spacing: 0px;
	margin-bottom: 40px;
}
.top-port-2{
		   margin-top: -120px;
		   z-index: 9;
		   position: relative;
		   display: inline-block;
		   /* border: 7px solid #000; */
		   /* background: #000; */
		   float: right;
		   }
.col-2b{
    float: left;
    width: 60%;
    letter-spacing: 0px;
}
.col-3b{
    float: left;
    width: 40%;
}
#site-footer {
  background: #233746;
  color: white;
  text-align: center;
  padding: 120px 20px 30px;
  font-family: 'Arial', sans-serif;
}

.footer-content {
  margin: 0 auto;
}

.footer-logo {
  width: 170px;
  margin-bottom: 25px;
  filter: brightness(0) invert(1); /* Si tu logo no es blanco */
}

.footer-phone {
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  margin: 8px 0;
  line-height: 18px;
}

.footer-email a {
  color: #EAC40A;
  font-size: 1rem;
  text-decoration: none;
  transition: color 0.3s ease;
}

.footer-email a:hover {
  color: #ffffff;
}

.footer-info {
  color: #ffffffcc;
  margin-top: 15px;
  font-weight: normal;
  font-size: 12px;
  line-height: 19px;
}

.footer-copy {
  color: #ffffffa8;
  font-size: 8px;
  margin-top: 0px;
  border-top: 1px solid #ffffff22;
  padding-top: 30px;
  letter-spacing: 0.5px;
  font-weight: normal;
  margin: 0px;
  letter-spacing: 2px;
}

.c-title-down{
    border-bottom: 1px solid #bfa18d;
    position: relative;
    padding: 5px;
    font-weight: bold;
    cursor: pointer;
}
.c-title-box{
    padding: 10px;
    font-size: 13px;
}
.col-box{ padding-right:40px}
.user-img{
    width: 150px;
    height: 150px;
    border: 2px solid #d5ad6d;
    margin: 0 auto;
    border-radius: 100px;
    margin-bottom: 20px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.new_img{cursor:pointer;margin-bottom: 20px;font-size: 13px;font-style: italic;}
.close-btn{
    position: absolute;
    right: 20px;
    top: 0;
}
.course-box{
    background: #fff;
    display: inline-block;
    float: left;
    width: 223px;
    border-radius: 5px;
    text-align: center;
    letter-spacing: 0px;
    overflow: hidden;
    margin: 5px;
    box-shadow: 2px 0px 23px -12px rgba(0,0,0,0.36);
    -webkit-box-shadow: 2px 0px 23px -12px rgba(0,0,0,0.36);
    -moz-box-shadow: 2px 0px 23px -12px rgba(0,0,0,0.36);
}

.btn-sign-up{ cursor:pointer}
.course-img{
    display: block;
    height: 170px;
    background-size: cover;
    background-position: center top;
}
.btn-sign-up i{ margin-right:5px}
.course-title{font-size: 16px;font-weight: bold;padding-top: 15px;padding-bottom: 15px;border-bottom: 1px solid #eaeaea;line-height: 21px;height: 73px;max-height: 73px;}
.course-col-2{
    width: 50%;
    float: left;
    padding-top: 15px;
    padding-bottom: 15px;
    font-size: 11px;
}
.course-col-1{ 
    width: 100%;
    padding-top: inherit;
    font-size: 11px;
    text-align: left;
    padding: 0px 20px;
}
.course-box-2{ padding:10px}
.course-col-1 svg, .course-col-1 i{ margin-right:5px}
.course-col-2 svg{ margin-right:5px}
.about-1-img{
	float: right;
	width: 50%;
}
#three-columns {
    display: flex;
    gap: 20px; /* espacio entre columnas */
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
    box-sizing: border-box;
    margin-top: 40px;
}

#three-columns .col-1 {
    flex: 1; /* hace que las 3 columnas midan lo mismo */
}


.col-1 {
  position: relative; /* para que el texto estÃƒÆ’Ã‚Â© encima */
  z-index: 1;
  /* color: #fff; */
  padding: 20px;
  flex: 1;
}
#about-all{
    background: url(../images/vintage-bg.png);
    padding-top: 60px;
    padding-bottom: 60px;
}
.about-1-text{
	float: left;
	width: 40%;
	text-align: right;
	font-family: 'Raleway', sans-serif;
	letter-spacing: 0px;
	font-size: 26px;
	line-height: 29px;
	margin-left: 5%;
	margin-top: 10%;
	transform: rotate(-3deg);


  /* Legacy vendor prefixes that you probably don't need... */

  /* Safari */
	-webkit-transform: rotate(-3deg);

  /* Firefox */
	-moz-transform: rotate(-3deg);

  /* IE */
	-ms-transform: rotate(-3deg);

  /* Opera */
	-o-transform: rotate(-3deg);

  /* Internet Explorer */
}


/* Contenedor principal */
#reviews {
}

/* PÃƒÆ’Ã‚Â¡rrafo introductorio */
#reviews .r-p {
    background: #A5D2B2;
    color: #ffffff;
    padding: 40px;
    text-align: center;
}
#reviews .r-p p{max-width: 800px;margin: 0 auto;font-weight: bold;}

/* TÃƒÆ’Ã‚Â­tulo grande de la secciÃƒÆ’Ã‚Â³n */
#reviews .r-txt {
    position: absolute;
    left: 0;
    top: 197px;
    font-size: 18vw;
    font-weight: 900;
    color: #A5D2B2;
    z-index: -1;
}

/* Cada columna individual */
#reviews .col-1 {}

/* NÃƒÆ’Ã‚Âºmero de cada columna */
#reviews .col-1-number {}

/* TÃƒÆ’Ã‚Â­tulo de cada columna */
#reviews .col-1-title {}

/* PÃƒÆ’Ã‚Â¡rrafo de cada columna */
#reviews .col-1 p {}

/* Limpiar floats o inline-block */
#reviews .clearfloat {}
.about-2{}
.about-2-img{
	width: 43%;
	float: left;
	margin-top: -10%;
}
/* Contenedor de columnas */
.col-1 {
  float: left; /* Para alinearlas en fila */
   /* Tres columnas iguales */
  box-sizing: border-box;
  padding: 20px 0px; /* Espacio interno */
  text-align: left; /* Centrar contenido */
   /* ahora sÃƒÆ’Ã‚Â­ funciona */
  display: block;
  border-top: 1px solid #233746;
}

/* NÃƒÆ’Ã‚Âºmero grande en la parte superior */
.col-1-number {
  font-size: 120px;
  color: #a5d2b2;
  margin-bottom: 10px;
  font-weight: 900;
  line-height: 100px;
}

/* TÃƒÆ’Ã‚Â­tulo de la columna */
.col-1-title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 10px;
  text-transform: uppercase;
  font-weight: 900;
}

/* Texto descriptivo */
.col-1 p {
  font-size: 12px;
  line-height: 1.5;
  /* color: #233746; */
  height: 127px;
  overflow: hidden;
}

/* Limpiar floats */
.clearfloat {
  clear: both;
}

/* Responsive para pantallas pequeÃƒÆ’Ã‚Â±as */
@media (max-width: 900px) {
  .col-1 {
    width: 50%; /* Dos columnas en tablet */
  }
}

@media (max-width: 600px) {
  .col-1 {
    width: 100%; /* Una columna en mÃƒÆ’Ã‚Â³vil */
  }
}
.about-2-text{
		float: right;
		text-align: left;
		font-family: 'Raleway', sans-serif;
		letter-spacing: 0px;
		font-size: 26px;
		line-height: 29px;
		width: 40%;
		margin-top: 10%;
		margin-right: 10%;
		transform: rotate(-3deg);


  /* Legacy vendor prefixes that you probably don't need... */

  /* Safari */
		-webkit-transform: rotate(-3deg);

  /* Firefox */
		-moz-transform: rotate(-3deg);

  /* IE */
		-ms-transform: rotate(-3deg);

  /* Opera */
		-o-transform: rotate(-3deg);
}
.about-3{
	
}
.about-3-img{
	float: right;
	width: 40%;
	margin-top: -5%;
}
.about-3-text{
		float: left;
		width: 40%;
		text-align: right;
		font-family: 'Raleway', sans-serif;
		letter-spacing: 0px;
		font-size: 26px;
		line-height: 29px;
		margin-left: 13%;
		margin-top: 10%;
		transform: rotate(-3deg);


  /* Legacy vendor prefixes that you probably don't need... */

  /* Safari */
		-webkit-transform: rotate(-3deg);

  /* Firefox */
		-moz-transform: rotate(-3deg);

  /* IE */
		-ms-transform: rotate(-3deg);

  /* Opera */
		-o-transform: rotate(-3deg);
}
	.scroll-down{width: 200px;margin:0 auto;opacity: 0.3;margin-top: 40px;}
.scroll-down img{width: 100%;}
.btns-cycle{
    position: absolute;
    z-index: 99999;
    color: #fff;
    text-transform: uppercase;
    font-size: 11px;
    font-weight: bold;
    cursor: pointer;
    left: 0;
    top: 30px;
    left: 30px;
} 
#reviews2 .btns-cycle{
    left: 50%;
    margin-left: -77.5px;
    color: #bfa18d;
}
.btns-cycle div{float:left;cursor: pointer;}
#as-seen h1{
    margin: 0;
    margin-bottom: 20px;
}
.video-container {
  position: relative;
  width: 55%;      /* Ocupa todo el ancho del div */
  height: 400px;    /* Altura completa de la ventana, puedes ajustar */
  overflow: hidden; /* Para que no se salga del contenedor */
  float: left;
}

.video-container video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  object-fit: cover; /* Asegura que el video llene el div sin deformarse */
  z-index: 1;
}
.as-title{
    margin-bottom: 20px;
    letter-spacing: 0px;
    font-family: 'Bacasime Antique', sans-serif;
    text-transform: none;
    font-size: 20px;
}
#as-seen{
    padding-top: 60px;
    /* padding-bottom: 60px; */
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 12px;
}
#rates-bottom{padding: 160px 0px;text-align: center;background:url(../images/rates-bottom.jpg);background-repeat: no-repeat;position: relative;background-size: cover;background-position: center;}
.r-subtitle-2{
    text-transform: uppercase;
    color: #fff;
    font-weight: bold;
    color: #fff;
    position: relative;
    z-index: 9;
    margin-bottom: 20px;
}
#rates-bottom h1{color:#fff;margin-left:0;letter-spacing: 0px;margin-bottom: 20px;}
.rates-bg{
    height: 100%;
    border: 0;
    width: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #3d3d3d;
    opacity: 0.3;
}
#view-port{ padding:80px 0px; text-align: center;background:url(../images/reviews.jpg);background-size: cover;background-position: center}
#view-port h1{margin: 0}
#reviews2{background: #f6eeea;background-size: cover;background-position: center bottom;padding-top: 40px;padding-bottom: 40px;margin-top: 0px;}
#reviews{
    padding: 80px 0px;
}
.about-main{ width:80%; margin:0 auto; max-width:800px
		   }
#reviews2 h1{color: #bfa18d;font-family: 'Raleway', sans-serif;letter-spacing: 0px;font-size: 67px;text-transform: none;}

#reviews h1{color: #bfa18d;font-family: 'Raleway', sans-serif;letter-spacing: 0px;font-size: 67px;text-transform: none;}
.r-img{
    /* float: left; */
    width: 70px;
    height: 70px;
    background-size: cover;
    background-position: center center;
    border-radius: 50px;
    position: absolute;
    left: 0;
}
#reviews2 .r-img{ display:none}
.r-title{font-size: 30px;line-height: 30px;}
.r-name{font-size: 17px;text-transform: uppercase;letter-spacing: 5px;font-family: 'Montserrat', sans-serif;font-weight: bold;}
.r-text-box{
    padding: 15% 10%;
    padding-left: 20%;
    letter-spacing: 0px;
    font-family: 'Bacasime Antique', sans-serif;
}

.r-text{
    float: left;
    width: 63%;
    background: #fff;
    position: relative;
    margin-left: -6%;
    margin-top: -80px;
    z-index: -1;
}
#reviews2 .r-text{margin:0 auto;float: none;}
#sign-up h1{ color:#ffffff}
.about-title{font-size: 45px;font-family: 'Raleway', sans-serif;margin-bottom: 30px;}
.top-menu li{float:left;margin-right: 20px;margin-top: 10px;}
#about-me{text-align: center;padding: 230px 0px;padding-top: 600px;color: #fff;margin: 0 auto;background: url(../images/about-me-home.jpg);font-weight: bold;background-position: center center;background-size: cover;}
h1{font-size: 50px;text-transform: lowercase;font-weight: normal;line-height: 60px;margin-top: 0;font-family: 'Bacasime Antique', serif;color: #bfa18d;position: relative;display: inline-block;letter-spacing: 5px;margin-left: 80px;}
.gry{color:#333;}
.white{color:white}
h2{font-weight: 100;line-height: 45PX;margin-bottom: 0;font-size: 30px;/* color: #bfa18d; *//* font-family: 'Cormorant Garamond', serif; */}
#toTop{ -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;position: fixed;
right: 0;
bottom: 0;
font-size: 40px;
margin: 20px;
color: #fff;}
#toTop:hover{ color:#ccc}
.clearfloat { clear: both; height: 0; font-size: 1px; line-height: 0px; }
/*========================================================
                    COLS
=========================================================*/
.col-1{float: right;}
.col-2{
    width: 55%;
    float: left;
    margin-top: 5%;
    z-index: 999;
    position: relative;
    margin-right: 5%;
}
.col-3{
    width: 50%;
    padding: 4%;
    float: left;
    /* padding-top: 0px; */
    /* max-width: 400px; */
    position: relative;
    letter-spacing: 0px;
}
.col-4{
    width: 45%;
    float: left;
    background: url(../images/orange.png);
    background-size: 100% 100%;
    color: #fff;
    padding: 6%;
    height: 400px;
}
.col-5{ width:48%; margin-top:4%; margin-right:2%; float:left}
.col-6{ width:48%; margin-left:2%; float:left}
.col-7{
    width: 22%;
    float: left;
    margin: 2%;
    text-align: center;
    text-transform: lowercase;
    font-size: 27px;
    line-height: 30px;
    font-family: 'Cormorant Garamond', serif;
    letter-spacing: 5px;
    }
.col-8 h1{margin-left: 80px;color:#bfa18d;}
.col-8{
    width: 60%;
    margin-left: 5%;
    float: left;
    margin-top: 8%;
    }
	.col-8 a{
	    margin-left: 80px;
	    margin-top:0;
	}
.main-900{ width:900px;margin:0 auto;}
.col-me{float:left;width: 45%;margin-top: -30px;z-index: 99;position: relative;}
.col-me img{width: 95%;}
.me-title{
    text-align: left;
    margin-left: -40px;
    margin-bottom: 40px;
    font-family: 'Raleway', sans-serif;
    font-size: 45px;
    letter-spacing: 0;
    color: #bfa18d;
}
	.col-9{
		float:right;
		width: 45%;
		padding-top: 80px;
		margin: 0 auto;
		text-align: center;
		}
.col-9 p{font-size: 16px;letter-spacing: 0px;line-height: 21px;text-align: left;font-family: 'Bacasime Antique', serif;}
	.col-10{width: 100%;text-align: center;margin-bottom: 40px;letter-spacing: 0px;font-family: 'Bacasime Antique', sans-serif;}
	.col-11{width: 100%;margin: 0 auto;}
	.col-10 .mail{color: #bfa18d;}
.col-10 a{
    display: block;
    line-height: 17px;
}
	.alpha{ margin-left:0;}
	.omega{ margin-right:0}
.dash-box{margin-top: 60px;}
/*========================================================
                    CONTENT styles
=========================================================*/
#world{   position: fixed;
    top: -15%;
    left: 25%;
    z-index: -3;}
.main{
  width: 80%;
  margin:0 auto;
}
.p-title{
    font-size: 10vw;
    font-weight: 900;
    line-height: 10vw;
    float: left;
}
.free-bool{
    margin-left: 20px;
}
.free-bool li{float:left;margin-right: 30px;}
#teacher, #parents, #about-us, #how-works, #contact{padding-top:120px;padding-bottom:120px;overflow:hidden;position:relative;background: #ffffff;}
ul{ margin:0; padding:0}
/*========================================================
                    HEADER
=========================================================*/
header{height: 50px;top: 0;position: absolute;width:100%;z-index:9999;color: #fff;z-index: 9999999;display: block;}
header.fixed{position:fixed;top:0;display: block;/* color: #939393; */}
header.fixed .subMenu a{}
header.fixed:after{
	height:1px;
	width:100%;
	color: #D5AD6D; /*if no support for background-clip*/
	}
	.top-menu{
    list-style: none;
    font-size: 15px;
}
.top-menu a{
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
  color: #fff;
  font-size: 10px;
  }
.top-menu a:hover{color:#bfa18d}
	.top-menu span{
    font-weight: bold;
    text-transform: uppercase;
}
	.menu-mobile{
    display: none;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 9999999;
}
.menu-mobile2{
    display: block;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 99999;
    height: 92px;
    width: 100%;
}
.menu-mobile2.fixed{
 background: #283b4a;
 /* border-bottom: 4px solid #bfa18d; */
 background: linear-gradient(
  to bottom,
  rgba(16, 62, 91, 1) 0%,
  rgba(16, 62, 91, 0) 100%
);
}
.subMenu svg{
	display:none;
	}

#nav-icon1, #nav-icon2, #nav-icon3, #nav-icon4 {
  width: 30px;
  height: 20.5px;
  position: relative;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
  float: right;
  margin-right: 45px;
  margin-top: 35px;
  cursor: pointer;
}

#nav-icon1 span, #nav-icon3 span, #nav-icon4 span {
  display: block;
  position: absolute;
  height: 9px;
  width: 100%;
  background: #d3531a;
  border-radius: 9px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}
/* Icon 2 */

.menu-mobile.fixed #nav-icon2.open span {
	background:#fff
}
#nav-icon2.open span {
	  background: #ffffff;
}
.services-title {}
/* TransiciÃƒÆ’Ã‚Â³n del fondo del contenedor (padre) */
/* Contenedor: NO cambia background */
.col-two {
    float: left;
    width: 50%;
    padding: 60px;
    margin-top: 40px;
    color: #ffffff;
}
.contact{
    background-image: url(../images/touch.png);
    background-position: center;
    background-size: cover;
}
/* TransiciÃƒÆ’Ã‚Â³n del texto y botÃƒÆ’Ã‚Â³n */
.col-two p,
.get-form {
    display: inline-block; /* Necesario para transform */
    -webkit-transform: translateX(0);
       -moz-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);

    -webkit-transition: transform 0.3s ease;
       -moz-transition: transform 0.3s ease;
        -ms-transition: transform 0.3s ease;
         -o-transition: transform 0.3s ease;
            transition: transform 0.3s ease;

    will-change: transform;
}

/* Hover: solo se mueve a la derecha */
.col-two:hover p,
.col-two:hover .get-form {
    -webkit-transform: translateX(5px);
       -moz-transform: translateX(5px);
        -ms-transform: translateX(5px);
            transform: translateX(5px);
}
#contact .cols {
    display: flex;
          /* Espacio entre columnas */
    align-items: stretch;  /* Ambas columnas tendrÃƒÆ’Ã‚Â¡n la misma altura */
}

.col-two {
    flex: 1;               /* Ambas columnas tomarÃƒÆ’Ã‚Â¡n el mismo ancho */
    display: flex;
    flex-direction: column;
    justify-content: space-between; /* Para que el botÃƒÆ’Ã‚Â³n quede al fondo si quieres */
}
/* Estilos para estados 'active' si los usas */
.col-two.active {
    background: #EAC40A;
}
.col-two.active .get-form {
    color: #ffffff;
}

/* Si hay reglas mÃƒÆ’Ã‚Â¡s especÃƒÆ’Ã‚Â­ficas que pisan el color, puedes usar esto (ÃƒÆ’Ã‚Âºltimo recurso) */
/* .col-two:hover .get-form { color: #fff !important; } */
.get-form {
    cursor: pointer;
    color: #fff;
    font-weight: bold;
}
#nav-icon2 span {
  display: block;
  position: absolute;
  height: 2px;
  width: 50%;
  background: #ffffff;
  opacity: 1;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

#nav-icon2 span:nth-child(even) {
  left: 50%;
  border-radius: 0 9px 9px 0;
}

#nav-icon2 span:nth-child(odd) {
  left:0px;
  border-radius: 9px 0 0 9px;
}

#nav-icon2 span:nth-child(1), #nav-icon2 span:nth-child(2) {
  top: 0px;
}

#nav-icon2 span:nth-child(3), #nav-icon2 span:nth-child(4) {
  top: 9px;
}

#nav-icon2 span:nth-child(5), #nav-icon2 span:nth-child(6) {
  top: 18px;
}

#nav-icon2.open span:nth-child(1),#nav-icon2.open span:nth-child(6) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#nav-icon2.open span:nth-child(2),#nav-icon2.open span:nth-child(5) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#nav-icon2.open span:nth-child(1) {
  left: 3px;
  top: 4px;
}

#nav-icon2.open span:nth-child(2) {
  left: calc(50% - 3px);
  top: 4px;
}

#nav-icon2.open span:nth-child(3) {
  left: -50%;
  opacity: 0;
}

#nav-icon2.open span:nth-child(4) {
  left: 100%;
  opacity: 0;
}

#nav-icon2.open span:nth-child(5) {
  left: 3px;
  top: 13px;
}

#nav-icon2.open span:nth-child(6) {
  left: calc(50% - 3px);
  top: 13px;
}
.fixed .subMenu{top: 29px;}
.subMenu {
  font-size: 13px;
  top: 40px;
  display: block;
  margin: 0;
  list-style: none;
  /* text-transform: uppercase; */
  text-align: center;
  z-index: 999;
  float: right;
  margin-right: 5%;
}
.subMenu .inner{
	margin-right: 0px;
	width: 100%;
	}
.subMenu a {
  font-weight: bold;
  padding: 5px 15px;
  float: left;
  display:block;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  color: #ffffff;
  text-decoration: none;
  }
.subMenu a.btnW {background:#FFF;color: #EAC40A;}

.subMenu a.btn {background:url(../images/orange.png);color: #ffffff;}
	.subMenu a:hover{
		
  text-decoration:underline
	
 
}
	.subMenu a.active {
		
	color: #D5AD6D; /*if no support for background-clip*/
	
}
	.menu-boton, .close-boton{ -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease; cursor:pointer;}
	.menu-boton {
  font-size: 40px;
  margin: 10px;
  /* float: left; */
  width: 116px;
  text-align: center;
  position: absolute;
  top: 0px;
  left: 50%;
  margin-left: -58px;
  cursor:pointer;
}
	.close-boton {
  width: 40px;
  top: -100px;
  position: absolute;
  font-size: 40px;
  left: 50%;
  display: block;
  margin-left: -20px;
  margin-top:10px;
  text-align: center;
  cursor:pointer;
  background-color:transparent;
}
#contact-box{
    background: #f6eeea;
    padding-top: 40px;
    padding-bottom: 40px;
}
.dropzpne-box{ display:none}
.home-text-2 span{font-size:15px;display:block;line-height: 15px;margin-top: 30px;max-width: 320px;}
.home-text-2{color: #fff;font-family: 'Bacasime Antique', serif;text-transform: uppercase;font-size: 3.5vw;line-height: 3.5vw;position: absolute;z-index: 9;bottom: 50px;left: 10%;max-height: 520px;}

.home-text{position:absolute;top: 25%;left: 10%;z-index: 9999;color: #fff;/* text-transform: uppercase; */font-weight: bold;/* mix-blend-mode: difference; */ /* mezcla con el video */}
.blur{ overflow:hidden}
	.menu-boton:hover, .close-boton:hover{ color:#ccc; }
	.menu2{height: 100%;top: 0;padding-top: 40px;position: fixed;width: auto;z-index: 9999;padding-right: 0;display: none;width: 100%;right: 0;display: none;background: #233746;z-index: 99999;background-size: 100% 100%;color: #fff;overflow: scroll;}
.home-title{
    font-size: 6vw;
    line-height: 6vw;
    font-weight: normal;
    font-style: italic;
    margin-top: 20px;
    margin-bottom: 20px;
}
.home-text span{font-size: 2vw;color: #EAC40A;display: block;width: 80%;line-height: 2vw;font-weight: normal;}
.logo-small{
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
	float: left;
	margin-left: 5%;
	padding: 10px;
	display:block;
	font-family: 'Raleway', sans-serif;
	position: absolute;
	top: 20px;
	z-index: 999999;
	font-size: 32px;
	color: #fff;
	letter-spacing: 0px;
	width: 180px;
}
	.logo-small img{ width:100%}
.logo-small span{
    text-align: center;
    font-size: 10px;
    font-family: 'Montserrat', sans-serif;
    line-height: 25px;
    color: #fff;
    margin: 0;
    padding: 0;
    letter-spacing: 3px;
    position: absolute;
    bottom: -20px;
    font-weight: lighter;
    width: 100%;
    left: 0;
}
.logo-small.fixed span{
	color:#bfa18d;
	bottom: -9px;
	font-size: 6px;
	font-weight: bold;
	left: 0px;
}
.logo-small-2 span{
    text-align: center;
    font-size: 10px;
    font-family: 'Montserrat', sans-serif;
    line-height: 25px;
    color: #fff;
    margin: 0;
    padding: 0;
    letter-spacing: 3px;
    position: absolute;
    bottom: -20px;
    font-weight: lighter;
    width: 100%;
    left: 0;
}
.logo-small-2.fixed span{
	color:#bfa18d;
	bottom: -9px;
	font-size: 6px;
	font-weight: bold;
	left: 0px;
}
.logo-small-2{
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
	transition: all 1s ease;
	float: left;
	margin-left: 5%;
	padding: 10px;
	display:block;
	font-family: 'Raleway', sans-serif;
	position: absolute;
	top: 5px;
	z-index: 999999;
	font-size: 32px;
	color: #fff;
	letter-spacing: 0px;
	left: 50%;
	margin-left: -127.5px;
}
.main-small{
	width:700px;
	margin:0 auto;
}
.logo-small.fixed{
	background: none;
	position:fixed;
	top: 8px;
	color: #bfa18d;
	font-size: 24px;
	width: 120px;
}
.logo-small-2.fixed{
	background: none;
	position:fixed;
	top: -4px;
	color: #bfa18d;
	font-size: 24px;
}
.subMenu a.login{background: #bfa18d;color: #fff;padding:5px 10px;margin:10px;font-weight:normal;display: inline-block;min-width: 108px;}

.logo{
    text-align: center;
    width: 53%;
    float: left;
    position: absolute;
    top: 200px;
    left: 5%;
    background: url(../images/logo-home.png) no-repeat;
    background-size: 100%;
    height: 65%;
    }
.logo img{}
.logo-txt{    font-size: 27px;
    letter-spacing: 4px;}
	.slogan{
    font-size: 12px;
    letter-spacing: 2px;
    color: #D5AD6D;
    }
#menul {
  font-size: 38px;
  padding-left: 3px;
}
.txt-gold{color: #D5AD6D;}
.txt-language{ text-decoration: underline; cursor:pointer}
.try-it{
    width: 100%;
    background: #000;
    position: fixed;
    border-top: 1px solid #D5AD6D;
    bottom: 0;
    list-style:none;
    margin: 0;
    z-index: 99999999;}
.try-it li{
	padding: 14px 20px;
	float: left;
	position: relative;
	overflow: hidden;
	height: 80px;
	/* border-right: 1px solid #8e8e8e; */
}
.try-it-btn{ display:none}
.try-it-num{float: left;font-size: 50px;color: #D5AD6D;line-height: 50px;margin-right: 10px;}
.bg-menu{width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-filter: blur(5px); 
    -moz-filter: blur(5px);
    -o-filter: blur(5px);
    -ms-filter: blur(5px);
    filter: blur(5px);
    background-image: url(../images/bg-menu.png);
    z-index: 99999999;}

/*========================================================
                    INICIO
=========================================================*/
.home{
	  height: 100vh;
	  background-repeat: no-repeat;
	  background-size: cover;
	  background-position: center -200px;
	  min-height: 800px;
	}
  .home-bg{
    background-image: url(../images/home-bg.png);
    width: 100%;
    height: 100%;
    z-index: 9;
    background-size: 100% 100%;
    background-position: center;
    min-height: 800px;
  }
.top-text{
    font-family: 'Raleway', sans-serif;
    letter-spacing: 0px;
    text-align: center;
    font-size: 30px;
    margin-top: 20px;
}
.top-port{
    text-align: center;
    margin-top: -80px;
    z-index: 99;
    position: relative;
}
.top-port img{width: 30%;max-width: 350px; -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; transition: all 0.3s ease;}
.top-port img:hover{
-webkit-transform: scale(1.03);
	        transform: scale(1.03);
}
.muted, .muted2{
	    position:absolute;
	    top: 100px;
	    right: -40px;
	    width: 80px;
	    height: 80px;
	    background: #bfa18d;
	    border-radius: 40px;
	    text-align: center;
	    line-height: 85px;
	    color: #fff;
	    cursor: pointer;
	    font-size: 22px;
	    animation: zoom-in-zoom-out 1s linear infinite;
}

@keyframes zoom-in-zoom-out {
  0% {
    transform: scale(1, 1);
  }
  50% {
    transform: scale(1.1, 1.1);
  }
  100% {
    transform: scale(1, 1);
  }
}
.r-titles{font-family: 'Raleway', sans-serif;font-size: 25px;line-height: 25px;}
.r-subtitle{ text-transform: uppercase; font-size: 13px; font-family: 'Montserrat', sans-serif; font-weight: bold; letter-spacing: 5px}
.col-r{float: right;width: 50%;padding: 0px 4%;}
.col-r-img{float: left;width: 46%;margin-top: 0px;margin-left: 4%;}
.col-r-img img{width: 100%;}
#rates{
    font-family: 'Bacasime Antique', serif;
    letter-spacing: 0px;
    padding-top: 60px;
    padding-bottom: 60px;
    }
#rates h1 span{font-family: 'Raleway', sans-serif;color: #5f5f5f;text-transform: capitalize;font-size: 31px;-webkit-transform: rotate(-15deg);-moz-transform: rotate(-15deg);-ms-transform: rotate(-15deg);-o-transform: rotate(-15deg);transform: rotate(-15deg);display: block;}
.port-top .top-title{top: 220px;}
.port-top .top-title2{top: 195px;}
#my-books h1{display: block;text-align: center;font-size: 21px;font-family: 'Montserrat', sans-serif;line-height: 30px;text-transform: uppercase;font-weight: bold;margin: 0;margin-bottom: 60px;margin-top: 20px;padding-left: 40px;padding-right: 40px;}

#rates h1{display: block;text-align: center;font-size: 21px;font-family: 'Montserrat', sans-serif;line-height: 30px;text-transform: uppercase;font-weight: bold;margin: 0;margin-bottom: 60px;margin-top: 20px;padding-left: 40px;padding-right: 40px;}
#top.port-top{height: 400px;}
#top.rates-top{height: 650px;}
#top{padding-bottom:40px;position:relative;height: 400px;}
.top-bg{width: 100%;height: 100%;position: absolute;background: #23232359;z-index: 9;}
#ayleen{
	padding-top: 90px;
	background-position: 100px 5px;
	background-repeat: no-repeat;
	background-size: 100%;
	padding-bottom:80px;
	position: relative;
	background: #ffffff;
	z-index: 1;
}
#questions{ padding-top:80px; padding-bottom:80px}
#about{
	background: #fff;
	/* padding-top: 90px; */
	position: relative;
}
#portfolio{
	background: #fff;
	padding-top: 0px;
	padding-bottom:80px;
	position: relative;
	margin-bottom:80px;
}
.portfolio-cols{
	margin: 1rem 0;
	-webkit-column-count: 3;
	-moz-column-count: 3;
	column-count: 3;
	-webkit-column-gap: 1rem;
	-moz-column-gap: 1rem;
	column-gap: 0px;
	-webkit-column-width: 33.33333333333333%;
	-moz-column-width: 33.33333333333333%;
	column-width: 33.33333333333333%;
	}
#portfolio img{
    width:100%;
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    margin-bottom: -7px;
    }
    .footer-collab {
  background-color: #111;
  padding: 30px 20px;
  text-align: center;
}

.collab-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
}

.collab-text {
  color: #657a8a;
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.collab-logos {
  display: flex;
  align-items: center;
  gap: 18px;
}

.collab-logos img {
  max-height: 70px;
  width: auto;
  filter: grayscale(100%);
  opacity: 0.9;
  transition: filter 0.3s ease, opacity 0.3s ease;
}

.collab-logos img:hover {
  filter: grayscale(0%);
  opacity: 1;
}

.collab-divider {
  color: #657a8a;
  font-size: 20px;
}
#portfolio img:hover{ opacity:0.7 }
.social-icons {
  list-style: none;
  display: flex;
  gap: 16px;
  padding: 0;
  margin: 0 auto;
  width: 168px;
  cursor: pointer;
}

.social-icons li a {
  font-size: 17px;
  color: #657a8a;
  text-decoration: none;
  cursor: pointer;
}

.social-icons li a:hover {
  color:#ffffff
}
.top-img{
    height: 100%;
    width: 100%;
    float: right;
    position: absolute;
    right: 0;
    top: 0;
    }
.top-title{
    z-index: 9;
    position: absolute;
    top: 220px;
    font-size: 50px;
    letter-spacing: 20px;
    text-transform: lowercase;
    color: #fff;
    font-weight: normal;
    line-height: 85px;
    font-family: 'Raleway', sans-serif;
    display: inline-block;
    word-break: break-all;
    width: 100%;
    letter-spacing: 0px;
    text-align: center;
    margin: 0 auto;
    }
.button-3{font-size: 11px;font-family: sans-serif;text-transform: uppercase;background: #fff;color: #bfa18d;padding: 10px 20px;border-radius: 20px;letter-spacing: 3px;cursor: pointer;}
.top-title2.contact{top: 293px;margin-left: 0px;line-height: 17px;}
.top-title2{
    z-index: 9;
    position: absolute;
    top: 190px;
    font-size: 9px;
    font-weight: normal;
    line-height: 85px;
    display: inline-block;
    word-break: break-all;
    width: 100%;
    letter-spacing: 4px;
    color: #fff;
    text-align: center;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    margin: 0 auto;
    font-weight: bold;
    margin-left: -80px;
    }
#rates p { font-size: 16px; line-height: 21px}
#rates ul {
    margin-left: 25px;
    margin-top: 20px;
    margin-bottom: 20px;
}
#rates ul li{line-height: 21px;margin-right: 28px;}
#rates-img{background-image: url(../images/rates.jpg);background-size: cover;background-repeat: no-repeat;background-position: center -100px;}

	#white{ background:#fff; position:relative; display:block; padding-top:80px; padding-bottom:80px}
	#brown{background: #fff1e4;position:relative;display:block;padding-top:80px;padding-bottom:80px;}
#portfolio-img{background-image: url(../images/portfolio.jpg);background-size: cover;background-repeat: no-repeat;background-position: center;}
#contact-img{background-image: url(../images/contact-img.jpg);background-repeat: no-repeat;background-size: cover;background-position: center center;}
 
#about-img{background-image: url(../images/top-back.jpeg);background-size: cover;background-repeat: no-repeat;background-position: center top;}
#services-img{background-image: url(../images/services.jpg);background-size: cover;background-repeat: no-repeat; width:40%}

.service-img-2 img{width: 100px;margin-right: 20px;}
.service-type-img{
    float: left;
    width: 40%;
    margin-right: 5%;
    }
	.service-type-img img{ width:100%}
.service-img-2 { float:left}
.service-txt-2{
    font-size: 30px;
    color: #bfa18d;
    font-family: 'Cormorant Garamond', serif;
}
.service-desc{
    font-size: 18px;
    margin-top: 15px;
}
.service-item{
    overflow: hidden;
}
.service-item.notes p{font-size:13px;font-style: italic;}
.service-items{ overflow:hidden}
#home-2{background-image: url(../images/home-2.JPG);background-size: cover;background-repeat: no-repeat;background-position: center;}
#home-3{background-image: url(../images/home-3.JPG);background-size: cover;background-repeat: no-repeat;background-position: center;}
#home-4{background-image: url(../images/home-4.JPG);background-size: cover;background-repeat: no-repeat; background-position: center;}
#home-5{background-image: url(../images/home-5.jpg);background-size: cover;background-repeat: no-repeat;background-position: center;}

#home-portafolio{
    padding-top: 120px;
    padding-bottom: 80px;
    background: #bfa18d;
    text-align: right;
}

#home-portafolio h1{ color:#fff}

.cycle {/* overflow: hidden; */position: relative;z-index: 1;width: 85%;max-width: 1000px;margin: 0 auto;margin-top: 20px;}
#slider{width:100%;height: 580px;}
.item{width:100%;height:100%;padding-top: 80px;}
.firma{width: 100%;font-family: 'Bacasime Antique', serif;text-align: right;font-size: 19px;text-transform: uppercase;margin-top: 30px;}
.firma img{
    width: 240px;
    margin-right: -19px;
}
.flower{
    bottom: -100px;
    position: absolute;
}
.flower img{
    width: 50%;
    margin-left: 80px;
    margin-bottom: 4%;
}
.me-img{
    width: 45%;
    padding: 2%;
    float: left;
    /* height: 105%; */
    background-size: cover;
    background-position: center;
}
.me-img img{
    width: 100%;
}.col-8 .line-title{ background:#bfa18d}
.line-title{height: 2px;width: 50px;background: #fff;position: absolute;left: -80px;margin-top: 25px;}
.comas{ opacity:0.5}
.portafolio-img img { width:100%; -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;}
.portafolio-img img:hover{ cursor:pointer; opacity:.7}
.portafolio-img { margin-bottom:4%}
#education-img{background-image: url(../images/education.jpg);background-size: cover;background-repeat: no-repeat;background-position: center 30%;}
#home-services{background-repeat: no-repeat;background-size: 99% 100%;padding-top: 40px;padding-bottom: 40px;text-align: center;}
.home-services-box{padding-top: 100px;padding-bottom: 100px;}
.service-img{
    width: 90px;
}
.service-img img{ width:100%;  -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;}
.service-img img:hover{ cursor:pointer;transform: scale(1.1); }

.service-txt{color: #bfa18d;margin-top: 20px;}

#services-txt h1{color:#bfa18d}

#services-txt{
	background: url(../images/services.png);
	background-repeat: no-repeat;
	background-position: 5px -100px;
	background-size: 60%;
	
	}
	#letsdothis{padding-top: 120px;padding-bottom: 120px;background: #f6eeea;}
	#letsdothis img{
    float: right;
    width: 30%;
}
.footer-rose{margin: 0 auto;width: 350px;text-align: center;height: 140px;margin-bottom: 40px;padding-top: 80px;}
.rose-line{
    height: 2px;
    width: 50px;
    background: #ccc;
    float: left;
    margin: 40px;
    margin-top: 60px;
}
.rose-img{
    float: left;
}
.rose-img img{
	width:170px;
}
.alpha{ margin-left:0;}
	.omega{ margin-right:0}
.footer-list-1{
    float: left;
    margin: 20px;
    list-style: none;
}
.footer-list-2{
    float: right;
    margin: 20px;
    list-style: none;
}
footer{font-weight: bolder;padding-bottom: 60px;background: #233746;font-size: 13px;padding-top: 180px;}
footer a{-webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;}
footer a:hover{color:#bfa18d}
footer a.mail{color: #bfa18d;}
/*========================================================
                    NOSOTROS
=========================================================*/


#boton-1, .boton-1{
    padding: 5px 10px;
    color: #fff;
    background: #D5AD6D;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    text-transform: uppercase;
    display: block;
    font-size: 13px;
    text-align: center;
    margin-top: 8px;
    }
#boton-1:hover, .boton-1:hover{ background:#fff; color:#000;}
.button-2 {
	display: inline-block;
	padding: 15px 40px;
	text-transform: lowercase;
	font-size: 15px;
	vertical-align: middle;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	background: none;
	-webkit-transition-duration: 0.1s;
	font-weight: bold;
	transition-duration: 0.1s;
	text-align: center;
	text-transform: uppercase;
	margin-top: 40px;
	border-radius: 30px;
	cursor: pointer;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.button-2:before {
  /* content: ""; */
  position: absolute;
  z-index: -1;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.button-2:hover:before, .button-2:focus:before, .button-2:active:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
.button-2.white {color:#fff;border: 2px solid #fff;}
.button-2.pink {
	border: 2px solid #bfa18d;
	color: #bfa18d;
	font-family: 'Bacasime Antique', sans-serif;
	line-height: 25px;
}
.button-2.white:hover {color:#bfa18d;
	background: #fff;
  	border: 2px solid #fff;}
.button-2.pink:before{
	color:#fff;
	background: #bfa18d;
  	border: 2px solid #bfa18d;
	}
.button-2.pink:hover, .button.pink:focus, .button.pink:active {
  color: #fff;    border: 2px solid #bfa18d;background: #bfa18d;
}

.button-2.pink2 {
	border: 2px solid #bfa18d;
	color: #bfa18d;
	background: #f6eeea;
}
.button-2.pink2:before{
	color:#fff;
	background: #fff;
  	border: 2px solid #bfa18d;
	}
.button-2.pink2:hover, .button.pink:focus, .button.pink:active {
  color: #fff; background:#bfa18d;    border: 2px solid #bfa18d;
}

.button-2.brown {
	color:#bfa18d;
	background: #fff;
  	border: 2px solid #bfa18d;
}
.button-2.brown:hover{
	color:#fff;
	background: #bfa18d;
  	border: 2px solid #bfa18d;
	}
.button-2.brown2 {
	color:#fff;
	background: #bfa18d;
  	border: 2px solid #bfa18d;
}
.button-2.brown2.signup-disabled{background: #a8a8a8;border: 2px solid #a8a8a8;cursor: no-drop;}
.button-2.brown2:hover{
	opacity:0.5
	}
.mr20{ margin-right:10px}
.button-2.brown3 {
	color:#bfa18d;
	background: #fff;
  	border: 2px solid #bfa18d;
}
.button-2.brown3:hover{
	opacity:0.5
	}


/* ============================= TRY IT FORM =============================== */
.try-it label {display: inline-block;position: relative;}
.try-it label select { cursor: pointer;  }
.try-it label input,
.try-it label textarea,
.try-it label select {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-ms-box-sizing: border-box;-o-box-sizing: border-box;box-sizing: border-box;position: relative;float: left;outline: none;border-radius: 0;outline: none;box-shadow: none;width: 100%;color: #fff;font-size: 13px;text-transform: uppercase;background: none;border: none;border: 1px solid #8e8e8e;-webkit-appearance: none;}
.try-it label input {box-shadow: none !important;padding: 5px;outline: none;background: none;font-family: 'Bacasime Antique', sans-serif;}
.try-it label select {font-family: 'Bacasime Antique', sans-serif;box-shadow: none !important;padding: 5px;padding-right: 29px;outline: none;border:none;color: #fff;}

	.try-it-checkbox{
    font-size: 13px;
    text-transform: uppercase;
    color: #ffffff;
    display: inline-block;
    position: relative;
    margin-left: 5px;
}
.try-it-checkbox label {
  width: 15px;
  height: 15px;
  cursor: pointer;
  position: absolute;
  top: 4px;
  left: 0;
  background: none;
  border-radius: 8px;
  border: 2px solid #8e8e8e;
}
.try-it-checkbox label:after {
	content:'';
	width: 15px;
	height: 15px;
	position: absolute;
	opacity: 0;
	background: #8e8e8e;
	border-radius: 8px;
	left: -2px;
	top: -2px;
}
.try-it-checkbox label:hover::after {
  opacity: 0.3;
}
.try-it-checkbox input[type="checkbox"] {
  visibility: hidden;
}
.try-it-checkbox input[type="checkbox"]:checked + label:after {
  opacity: 1;
}


/* end .squaredThree */
#try-it-select:after {
    position: absolute;
    display: none;
    font-family: "Font Awesome 5 Solid";
    font-size: 24px;
    content: "\f107";
    top: 1px;
    right: 5px;
    color: #666;
    pointer-events: none;
}
#try-it-select svg {
    position: absolute;
    right: 5px;
    top: 3px;
}
#try-it-search svg {
    position: absolute;
    top: 4px;
    right: 0px;
	 font-size: 16px;
	 pointer-events: none;
}
#try-it-search:after {
    display: none;
    font-family: "Font Awesome 5 Solid";
    content: "\f002";
}
.try-it label textarea {height: 120px;overflow: auto;width: 100%;padding: 13px 7px 12px 16px;margin: 0px;resize: none;background: none;font-family: 'Bacasime Antique', sans-serif;color:#848484;font-weight:300;}
.try-it span { display: block }
.try-it ._placeholder {position: absolute; /*!*/left: 0;right: 0;top: 0;bottom: 0;cursor: text;padding: 12px 7px 11px 17px;opacity: .99;min-width: 200px;color:#848484;font-size: 20px;font-family: 'Bacasime Antique', sans-serif;font-weight:300;}
.try-it ._placeholder.focused { opacity: .4; /*filter: alpha(opacity=40); */ /*.box-shadow(0px 0px 7px 0px rgba(0, 0, 255, 0.5));*/  }
.try-it ._placeholder.hidden { display: none }
.try-it .message { width: 100%; margin-left: 0px; float: none; }
.try-it .error-message,
.try-it .empty-message { height: 0; overflow: hidden; font: 10px/20px Arial; -webkit-transition: 0.3s ease-in height; -moz-transition: 0.3s ease-in height; -o-transition: 0.3s ease-in height; transition: 0.3s ease-in height; position: absolute; right: 3px; top: 0; }
.try-it .invalid .error-message,
.try-it .empty .empty-message { height: 20px }
.try-it .success-message { position: absolute; nowhitespace: afterproperty; overflow: hidden; height: 0; left: 0; top: 0; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; /*.box-shadow(inset 0px 0px 10px 0px rgba(0, 0, 0, 0.2));_NO__DOTCOMMA__AFTER__*/ -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; z-index: 10; width: 100%; text-align: center; -webkit-transition: all 0.7s linear; -moz-transition: all 0.7s linear; -o-transition: all 0.7s linear; transition: all 0.7s linear; padding: 0px 0; color:#fff; font: 16px/18px Arial, sans-serif; font-family: 'Bacasime Antique', sans-serif;   background: #7D0E11; }
.try-it.success .success-message { padding: 137px 0; height: 100%; border: 1px solid #d4d4d4; -webkit-transition: all 0.7s linear; -moz-transition: all 0.7s linear; -o-transition: all 0.7s linear; transition: all 0.7s linear; }
.try-it label input#file { cursor: pointer }
.try-it label#title-label { line-height: 47px; width: 12%; }


/* ============================= FORM =============================== */
.close-s{color:#fff;float: right;font-size: 20px;cursor: pointer;}
#form { padding-top: 60px; padding-bottom: 80px; background: url(../images/contacto.jpg) center center; background-size: auto 110%; font-weight:300 }
#contact-form ,#contact-form2{position: relative;margin-top: -1px;text-align: left;margin-bottom: 40px;font-family: 'Bacasime Antique', sans-serif;font-size: 15px;letter-spacing: 0px;color: #939393;}
#contact-form label ,#contact-form2 label{display: inline-block;position: relative;min-height: 70px;width: 100%;float: left;}
#contact-form label select ,#contact-form2 label select{ cursor: pointer }
#contact-form label.date ,#contact-form2 label.date{ margin-bottom:20px}
#contact-form label:nth-child(odd) ,#contact-form2 label:nth-child(odd){margin-left: 0px;}
#sign-up #contact-form span {display: block;color: #fff;}

#contact-form2 label input,
#contact-form2 label textarea,
#contact-form2 label select,
#contact-form label input,
#contact-form label textarea,
#contact-form label select, #contact-form2 label select {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;-ms-box-sizing: border-box;-o-box-sizing: border-box;box-sizing: border-box;position: relative;float: left;outline: none;border-radius: 0;outline: none;box-shadow: none;width: 100%;color: #939393;font-size: 13px;background: none;border: none;border-bottom: 2px solid #bfa18d;-webkit-appearance: none;font-weight: normal;}
#contact-form label input, #contact-form2 label input {height: 47px;box-shadow: none !important;padding: 13px 7px 11px 15px;outline: none;background: #f6eeea;font-family: 'Bacasime Antique', sans-serif;font-size: 15px;}
#contact-form label select, #contact-form2 label select {height: 47px;box-shadow: none !important;padding: 13px 7px 12px 18px;outline: none;background: #f6eeea;font-family: 'Bacasime Antique', sans-serif;font-size: 15px;letter-spacing: 0px;color: #939393;}
#contact-form label textarea,#contact-form2 label textarea {height: 120px;overflow: auto;width: 100%;padding: 15px 7px 12px 16px;margin: 0px;resize: none;background: #f6eeea;font-family: 'Bacasime Antique', sans-serif;color: #939393;font-weight:300;font-size: 15px;}
#contact-form span, #contact-form2 span {display: block;color: #bfa18d;}
#contact-form ._placeholder {position: absolute; /*!*/right: 0;bottom: 0;cursor: text;padding: 12px 7px 11px 17px;opacity: .99;min-width: 260px;color: #939393;font-size: 13px;font-family: 'Bacasime Antique', sans-serif;font-weight: normal;letter-spacing: 0px;font-size: 15px;}
#contact-form ._placeholder.focused { opacity: .4; /*filter: alpha(opacity=40); */ /*.box-shadow(0px 0px 7px 0px rgba(0, 0, 255, 0.5));*/  }
#contact-form ._placeholder.hidden { display: none }
#contact-form .message { width: 100%; margin-left: 0px; float: none; }
#contact-form .error-message,
#contact-form .empty-message {height: 0;overflow: hidden;font-size: 13px;-webkit-transition: 0.3s ease-in height;-moz-transition: 0.3s ease-in height;-o-transition: 0.3s ease-in height;transition: 0.3s ease-in height;position: absolute;right: 3px;top: 0;color: #eb5f5f;}
#contact-form .invalid .error-message,
#contact-form .empty .empty-message { height: 20px }
#contact-form .success-message {nowhitespace: afterproperty;overflow: hidden;height: 0;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box; /*.box-shadow(inset 0px 0px 10px 0px rgba(0, 0, 0, 0.2));_NO__DOTCOMMA__AFTER__*/-webkit-box-shadow: none;-moz-box-shadow: none;box-shadow: none;z-index: 10;width: 100%;-webkit-transition: all 0.7s linear;-moz-transition: all 0.7s linear;-o-transition: all 0.7s linear;transition: all 0.7s linear;padding: 0px 0;color: #939393;margin-top: 20px;font: 16px/18px Arial, sans-serif;font-family: 'Bacasime Antique', sans-serif;}
#contact-form.success .success-message {padding: 0;height: 100%;-webkit-transition: all 0.7s linear;-moz-transition: all 0.7s linear;-o-transition: all 0.7s linear;transition: all 0.7s linear;}
#contact-form label input#file { cursor: pointer }
#contact-form label#title-label { line-height: 47px; width: 12%; }
#contacto{padding-top: 20px;padding-bottom:80px;}
.direccion{ text-align:center; font-weight:300; }
.emailc{ text-align:center; font-weight:300;}
#envelope{ margin-right:10px; color: #939393;}
.tel {font-size: 60px;text-align: center;font-weight: bold;line-height: 60px;color: #939393;}
#map_canvas { position: relative; width: 100%; /* border: 3px solid #CCC; */ height: 400px; }
.enviado {
  position: absolute;
  left: 50%;
  width: 300px;
  margin-left: -150px;
  top: 50%;
  margin-top: -58px;
  /* height: 300px; */
  font-weight: 300;
}
.enviado .fa {
  font-size: 80px;
  display: block;
}




@media (min-width: 1220px) { 

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

}
@media only screen and (max-width: 1024px) { 
	.home{
	  background-position: center top;
	}
#rates-img {
    background-image: url(../images/rates.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
}
	.col-3 {
    width: 50%;
 }
	#about-me{text-align: center;padding: 230px 0px;padding-top: 600px;color: #fff;margin: 0 auto;background: url(../images/about-me-home.jpg);font-weight: bold;background-position: center bottom;background-size: cover;}
.home-text span{ font-size:3vw; line-height:3vw}
	.home-text{position:absolute;top: 280px;left: 7%;z-index: 9999;/* color: #fff; *//* text-transform: uppercase; */font-size: 6vw;line-height: 6vw;}
.home-text span
.menu-mobile.fixed #nav-icon2 span{
	/* background: #bfa18d; */
}	
.menu-mobile{ 
    display: block;
}
.logo-small {
}
	.subMenu {
    float: none;
    margin: 0px;
}
.subMenu a {
    padding: 30px 0px;
    text-align: right;
    position: relative;
    color: #fff;
    text-align: center;
    font-size: 25px;
    display: block;
    width: 100%;
    font-weight: normal;
}
.subMenu .inner {
    padding: 80px 0px;
}
.home-txt {
    text-align: left;
    font-weight: 100;
    font-size: 36px;
    line-height: 60px;
    margin-left: 5%;
    padding-left: 250px;
    margin-right: 10%;
}
h1 {
    font-size: 50px;
    line-height: 60px;
}
h2 {
    font-size: 35px;
    
    line-height: 35px;
}
#inicio, .bg {
    height: 900px;
   
}
header {
    height: 100%;
    top: 0;
    padding-top: 40px;
    position: fixed;
    width: auto;
    z-index: 9999;
    padding-right: 0;
    display: none;
    width: 100%;
    right: 0;
    display:none;
    background: #ffffff;
    z-index: 99999;
    background: #bfa18e82;
    color: #fff;
}
header.fixed{}
.subMenu svg{
	display:block;
	position: absolute;
	right: 12px;
	top: 15px;
	z-index: 12;
	}


.try-it label select { cursor: pointer; margin-top:-2px }
#password{ margin-top:-2px}
	.main-900{ width:750px;}
.menu-box {
    width: 100%;
    height: 50px;
    color: #939393;
    text-align: center;
    font-size: 27px;
    line-height: 45px;
    position: fixed;
    top: 0;
    z-index: 999999;
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
    text-align: right;
}
.menu-box.fixed{display: block;background: none;}
header.fixed{position:fixed;display: none;top: 0;bottom:0;position:fixed;overflow-y:scroll;overflow-x:hidden;}

}
@media only screen and (max-width: 767px) {
	.project-media{ width:100%}
	.quote-text{
    width: 100%;
    margin: 0;
    margin-top: 40px;
    
}
.media-thumbnails{
  gap:5px;
}
	.quote-container{
    width: 100%;
}
	.p-title{font-size: 11vw;line-height: 11vw;}
	.services-title{font-size: 11vw;line-height: 11vw;}
	.service-name{margin-left: -30px;}
	.service-detail {
  max-width: 500px;
  margin-left: 10%;
  width: 80%;
  margin: 0 auto;
  float: none;
  margin-top: 60px;
  margin-bottom: 40px;
}
	.services-list li:hover, .services-list li.active {
    border-bottom: 3px solid #EAC40A;
    color: #EAC40A;
    border-left: none;
}
	.services-list{
    width: 100%;
    float: none;
    height: auto;
    display: inline-block;
}
	.services-list li{float:left;margin-left: 9px;border-left: none;padding-left: 5px;border-bottom: 3px solid transparent;}
	.preconstruction-section{
		 width: 80%;
		 float: none;
		 margin: 0 auto;
		 padding-top: 60px;
		 border-left: none;
	}
	.contracting-section{width: 85%;margin: 0 auto;float: none;padding-top: 120px;padding-bottom: 60px;border-bottom: 1px solid #e7e7e7;}
	.q-title{
    font-size: 18vw;
    line-height: 18vw;
}
	.footer-phone{/* font-size:9vw; *//* line-height:9vw; */}
	#contact .cols {
        flex-direction: column; /* Apilan las columnas verticalmente */
    }
#contact .cols .col-two:first-child {
    margin-top: 40px;
}
    #contact .cols .col-two {
        width: 100%;            /* Cada columna ocupa todo el ancho */
        margin-top: 0px;
    }
	.main{width: 92%;}
	#reviews .r-txt{
    font-size: 21vw;
    position: relative;
    top: 18px;
}
	#reviews-carousel{
    margin-left: 15%;
    /* margin-top: 160px; */
}
	#three-columns{
    gap: 0px;
    width: 100%;
    flex-direction: column;
}
	.p-description{width:100%;margin-left: 0;}
	.project-image{ width:100%}
	.video-container{
    width: 100%;
    height: 350px;
}
	.col-4{/* padding-top: 12%; */width: 100%;height: 260px;padding: 8%;}
	.col-4-title{
    font-size: 45px;
    line-height: 45px;
    font-weight: 900;
    text-transform: uppercase;
}

	.col-3-title{
    font-size: 7vw;
    /* text-transform: uppercase; */
    line-height: 7vw;
 }
.home{
	  background-position: center top;
	}
	
	.course-img{height: 250px;}
	.col-2b{
    float: left;
    width: 100%;
    letter-spacing: 0px;
		margin-bottom:20px
}
	.c-back span{ display:none}
	.col-box{ padding:0px}
	.col-3b {
    float: left;
    width: 100%;
}
	.course-box{width:100%;margin: 0;margin-bottom: 20px;}
	#sign-up {
    background: #bfa18e;
    color: #fff;
    padding: 5%;
    width: 90%;
    position: fixed;
    top: 8%;
    bottom: 8%;
    margin: 5%;
    overflow: scroll;
    display: none;
    left: auto;
}
	#rates-bottom {
    padding: 160px 0px;
    text-align: center;
    background: url(../images/rates-bottom.jpg);
    background-repeat: no-repeat;
    position: relative;
    background-size: auto 120%;
    background-position: center;
}
	#rates-img{}
	.about-1 img,.about-2 img,.about-3 img{width: 100%;}
.about-1{
	
}
.about-1-img{
	float: right;
	width: 50%;
}
.about-1-text{
	float: left;
	width: 40%;
	text-align: right;
	font-family: 'Raleway', sans-serif;
	letter-spacing: 0px;
	font-size: 26px;
	line-height: 29px;
	margin-left: 5%;
	margin-top: 10%;
}
.about-2{}
.about-2-img{
	width: 43%;
	float: left;
	margin-top: -10%;
	position: absolute;
	margin-left: 5%;
}
.about-2-text{
		float: right;
		text-align: left;
		font-family: 'Raleway', sans-serif;
		letter-spacing: 0px;
		font-size: 26px;
		line-height: 29px;
		width: 31%;
		margin-top: 6%;
		margin-right: 0%;
}
.about-3{
	
}
.about-3-img{
	float: right;
	width: 58%;
	margin-top: 5%;
	margin-right: 10%;
}
.about-3-text{
		float: left;
		width: 40%;
		text-align: right;
		font-family: 'Raleway', sans-serif;
		letter-spacing: 0px;
		font-size: 26px;
		line-height: 29px;
		margin-left: 13%;
		margin-top: 10%;
}
	.home-text-2{bottom: 50px;font-size: 5vw;line-height: 5vw;}
	#portfolio-img{background-position: center right;}
	.col-r-img{
    width: 80%;
    float: none;
    margin: 0 auto;
}
	.col-r{
    width: 80%;
    float: none;
    padding: 0;
    margin: 0 auto;
    margin-top: 40px;
}
	.item{margin-top:0px;padding-top: 0px;}
	.cycle{margin-top: 0px;}

	.top-port img{ width:80%;}
	.main-900{ width:80%;}
	.top-title2{/* top:120px; */}
	.home-text {top: 300px;/* bottom: 100px; */}
	.me-img{
    width: 100%;
    /* position: absolute; */
}
	.home-title{font-size: 7vw;line-height: 8vw;}

.top-title{/* top: 390px; */}
.try-it-form{ display:none;}
.try-it-btn{
    width: 100%;
    text-align: center;
    height: 45px;
    background: #D5AD6D;
    text-transform: uppercase;
    line-height: 45px;
	display:block;
    }
	.try-it-btn svg{ 
	margin-left: 10px;
	}
	.home-txt {
    text-align: left;
    font-weight: 100;
    font-size: 30px;
    line-height: 45px;
    width: 80%;
    padding: 0;
    margin: 10%;
    padding-top: 120px;
}
h1 {
    font-size: 50px;
    line-height: 60px;
}
h2 {
    font-size: 25px;
    

    line-height: 25px;
}

.col-1 {
	width: 100%;
	margin-right: 0%;
	margin-bottom: 37px;
}
.col-2, .col-5, .col-6, .col-10, .col-11 {
    width: 100%;
    margin-right: 0%;
	margin-left:0%;
}
.col-10, .col-11{}
.main-small{ width:80%; margin:0 auto}
.news-swiper {
    width: 100% !important;  /* fuerza que cada slide ocupe todo el contenedor */
    min-width: 0;             /* evita overflow en flexbox */
}
.col-3 {
    width: 81%;
    margin-left: 60px;
    margin-top: 20px;
}
.flower img {
    width: 50%;
    margin-left: 20px;
    margin-bottom: 4%;
}
#ayleen {
   /* padding-bottom: 120px; */
   /* margin-top: -80px; */
   /* background-size:300%; */
}
#services-txt {
    
    background-size: 300%;
}
.col-7 {
    width: 50%;
    float: left;
    margin: 0;
    margin-bottom: 40px;
}
.rose-img img{
	width:140px;
}
.footer-rose {
    width: 320px;
}
#letsdothis img {
    float: right;
    width: 60%;
    margin-top: 40px;
}
.top-img {
}
	.col-me{
    width: 60%;
}
	.col-9{
    width: 85%;
    padding-top: 60px;
}
#top {
    
    overflow: hidden;
}
.top-title {
    left: 0;
}
.portfolio-cols {
    margin: 1rem 0;
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
    -webkit-column-gap: 1rem;
    -moz-column-gap: 1rem;
    column-gap: 10px;
    -webkit-column-width: 100%;
    -moz-column-width: 100%;
    column-width: 100%;
}
#services-img, #contact-img{ width:100%}
.service-type-img {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 40px;
}
.col-11{ overflow:hidden}

#nav-icon1, #nav-icon2, #nav-icon3, #nav-icon4 {
 margin-right:20px
}


.c-col-left{ width:96%; margin:2%}
.c-col-right{
    width: 96%;
    margin: 2%;
}
	
}


@media only screen and (max-width: 480px) { 
	.review{ padding-right:30px}
	    #reviews-carousel {
        margin-left: 30px;
        /* margin-top: 120px; */
    }
		#reviews .r-txt{
    font-size: 25vw;
    position: relative;
    top: 11px;
}
	.col-3-title{
    font-size: 9vw;
    /* text-transform: none; */
    line-height: 9vw;
 }
    .home-text {
    top: 250px;
    max-width: 87%;
}	
	.home-img img {
    width: 90%;
    height: auto;
}
	.home-title{font-size: 12vw;line-height: 12vw;margin-top: 30px;}
	.home-text span{font-size: 5vw;line-height: 5vw;}
	.home-slider{ height: 780px;}
	.home{height: 780px;overflow: hidden;}
		#contact-img{background-image: url(../images/contact-img-mobile.jpg);background-repeat: no-repeat;background-size: cover;background-position: center center;}

	.button-book{
    right: -30px;
    top: 40px;
}
		.buttons-box {
    text-align: center;
}
	.mr20{ margin-right:0px}
	.buttons-box .button-2{
    margin-top: 20px;
}
	.top-port-2{width: 100%;float: none;}
	.top-port-2 video{width: 100%;float: none;height: auto;}

	.about-1 img,.about-2 img,.about-3 img{width: 100%;}
.about-1{
	
}
	#rates h1{ padding:0px}
.about-1-img{
	float: right;
	width: 71%;
}
	.col-4b{ width:100%}
.about-1-text{
	float: left;
	width: 73%;
	text-align: right;
	font-family: 'Raleway', sans-serif;
	letter-spacing: 0px;
	font-size: 26px;
	line-height: 29px;
	margin-left: 5%;
	margin-top: 10%;
	margin-bottom: 5%;
}
.about-2{}
.about-2-img{
	width: 61%;
	float: left;
	margin-top: 7%;
	margin-left: -25%;
}
.about-2-text{
		float: right;
		text-align: left;
		font-family: 'Raleway', sans-serif;
		letter-spacing: 0px;
		font-size: 26px;
		line-height: 29px;
		width: 44%;
		margin-top: 14%;
		margin-right: 0px;
}
.about-3{
	
}
.about-3-img{
	float: right;
	width: 100%;
	margin: 0;
}
.about-3-text{
		float: left;
		width: 100%;
		font-family: 'Raleway', sans-serif;
		letter-spacing: 0px;
		font-size: 26px;
		line-height: 29px;
		margin-left: 0;
		margin-top: 10%;
		text-align: center;
		margin-bottom: 5%;
}

	
	#rates-bottom{ background-size:auto 120%}
	#portfolio-img{/* background-position:-250px 0px; */}
	.home-text-2{font-size: 6vw;line-height: 6vw;bottom: 50px;}
	.logo-small{
    top: 10px;
    width: 170px;
}
	#rates-img{
		background-size: cover;
		background-position: right;
	}
	.col-9 p{
    font-size: 19px;
    line-height: 23px;
}
	.col-me{float:left;width: 80%;padding-top: 90px;}

	.col-8{
		 width:80%;
	}
	.col-8 a{
		 width:80%;
		 margin-left: 80px;
	}
#slider{}
#contact-form label {
margin-left:0px;width: 100%;min-height: 60px;}
	#contact-form label:nth-child(odd){margin-left:0px;}
	#ayleen {
   /* padding-bottom: 120px; */
   /* margin-top: -80px; */
   /* background-size:80%; */
   background-position: center 60px;
}
.comas{/* display:none; */}
	
.hero-why{
  display:flex;
  align-items:center;
}

.hero-why-inner{
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:5rem;
}

/* Texto */
.hero-why-text p{
  font-size:1.1rem;
  line-height:1.8;
  margin-bottom:1.5rem;
  max-width:620px;
}

.hero-why-text .lead{
  font-size:1.4rem;
  font-weight:500;
}

.hero-why-text .emphasis{
  font-size:1.2rem;
  font-weight:600;
  color:var(--primary);
}

/* Responsive */
@media(max-width:900px){
  .hero-why-inner{
    grid-template-columns:1fr;
  }

  .hero-why-text p{
    max-width:100%;
  }
}
.col-3{padding-top:0px;margin-left: 0px;width: 90%;}
.home-services-box{ padding-top:0px}
#services-txt {
    background: url(../images/services.png);
    background-repeat: no-repeat;
    background-position: center 40px;
    background-size: 80%;
    padding-top: 60px;
} 
#nav-icon1, #nav-icon2, #nav-icon3, #nav-icon4 {
    width: 30px;
    height: 20.5px;
    position: relative;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s 
ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s 
ease-in-out;
    cursor: pointer;
    float: right;
    /* margin-right: 45px; */
    margin-top: 13.5px;
}

	#reviews h1{ margin-left:5%}
h1 {
    font-size: 30px;
    line-height: 30px;
    margin-left: 0px;
}
.top-title{}
}
@media only screen and (max-width: 320px) { 
    
 

}

/* =========================
   STATEMENT SECTION
   ========================= */
#statement-section{
  padding: 80px 0;
  /* padding-bottom: 0px; */
  background: #f2f2f2;
}

.statement{
  text-align:left;
}

.statement-title{
  font-size: 63px;
  line-height: 63px;
  font-weight:700;
  color:var(--primary);
  margin-bottom:2.5rem;
  margin-top: 0px;
}

.statement-text{
  font-size:1.2rem;
  line-height:1.9;
  max-width:720px;
  color:var(--primary);
  margin-bottom: 0px;
}

/* Responsive */
@media(max-width:900px){
  .statement-title{
    font-size:9vw;
    line-height:9.5vw;
  }
}
:root{
  --primary:#233746;
  --accent:#EAC40A;
  --white:#ffffff;
}

/* =========================
   WHY SECTION
   ========================= */
#why-section{
  padding:120px 0;
  background: #f2f2f2;
  /* padding-top: 60px; */
}

.hero-why-inner{
  display:grid;
  grid-template-columns: 1fr 1.3fr;
  gap:5rem;
  align-items:center;
  max-width:1200px;
  margin:0 auto;
  padding: 0 60px;
  /* padding-left: 0px; */
}

/* =========================
   LEFT: BUILDING ANIMATION
   ========================= */
.hero-why-animation{
  display:flex;
  justify-content:flex-start;
  align-items:center;
}

.building-animation {
  width: 100%;
  max-width: 100%;
  margin: 0;
  background: #fff;
}

.building-animation svg {
  display: block;
  width: 100%;
  height: auto;
}

/* SVG drawing */
.draw{
  fill:none;
  stroke:var(--primary);
  stroke-width:3;
  stroke-linecap:round;
  stroke-dasharray:600;
  stroke-dashoffset:600;
}

/* Play on scroll */
.animate .draw{
  animation: drawLine 5s ease forwards;
}

.animate .delay-1{ animation-delay:0s; }
.animate .delay-2{ animation-delay:.6s; }
.animate .delay-3{ animation-delay:1.8s; }
.animate .delay-4{ animation-delay:3.2s; }

@keyframes drawLine{
  to{ stroke-dashoffset:0; }
}

/* =========================
   RIGHT: WHY CONTENT
   ========================= */
.hero-why-title{
  margin-bottom:2.5rem;
}


.hero-why-text p{
  font-size: 15px;
  line-height:1.8;
  margin-bottom:1.4rem;
  max-width:620px;
}

.hero-why-text .lead{
  font-size: 17px;
  font-weight:500;
}

.hero-why-text .emphasis{
  font-weight:600;
  color:var(--primary);
}

/* =========================
   RESPONSIVE
   ========================= */
@media(max-width:900px){
  .hero-why-inner{
    grid-template-columns:1fr;
  }

  .hero-why-animation{
    justify-content:center;
    margin-bottom: 0px;
  }

}

/* SecciÃƒÂ³n statement */
#statement-section::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background: #f2f2f2;
}

/* SecciÃƒÂ³n proyectos */
#projects-section {
  background: #f7f4ea;
  padding: 120px 0;
}

/* Grid de proyectos */
.projects-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2.5rem;
  margin-bottom: 4rem;
}

/* Tarjeta de proyecto */
.project-card {
  overflow: hidden;
  cursor: pointer;
  transition: transform .3s, box-shadow .3s;
  border-radius: 10px;
}

.project-card:hover {
  transform: translateY(-5px);
}

.project-card img {
  width: 100%;
  height: 280px;
  object-fit: cover;
}

.project-card h3 {
  color: #233746;
  margin: 1rem;
}

.project-card p {
  margin: 0 1rem 1rem;
  font-size: 0.95rem;
  line-height: 1.5;
}

/* Textos generales */
.project-text h2 {
  color: #233746;
  margin-top: 2rem;
}

.project-text p {
  font-size: 1.05rem;
  line-height: 1.7;
  margin-bottom: 1.5rem;
}

/* MODAL PROYECTOS */
.project-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0,0,0,0.6);
  z-index: 99999999;
  justify-content: center;
  align-items: center;
  overflow: auto;
}

/* Contenido del modal */
.project-modal-content {
  background: #ffffff;
  padding: 2rem;
  border-radius: 0px;
  max-width: 700px;
  width: 90%;
  max-height: 90vh; /* Ajuste altura mÃƒÂ³vil */
  box-shadow: 0 20px 50px rgba(0,0,0,.2);
  position: relative;
  overflow-y: auto;
}

/* BotÃƒÂ³n Close */
.close-modal {
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 2rem;
  cursor: pointer;
  color: #233746;
  z-index: 10;
}

/* Encabezados dentro del modal */
.project-modal-content h3 {
  margin-top: 0;
}

/* GalerÃƒÂ­a tipo slider */
.project-gallery {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  margin-bottom: 1.5rem;
  height: 300px; /* altura fija para las imÃƒÂ¡genes grandes */
}

.project-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: none; /* solo se muestra la activa */
  transition: opacity 0.5s ease;
}

/* Imagen visible */
.project-gallery img.active {
  display: block;
}

/* Flechas */
.gallery-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  font-size: 2rem;
  color: #233746;
  background: rgba(255,255,255,0.7);
  padding: 0.2rem 0.6rem;
  border-radius: 50%;
  cursor: pointer;
  z-index: 5;
  user-select: none;
}

.gallery-arrow.left {
  left: 10px;
}

.gallery-arrow.right {
  right: 10px;
}

/* Ajustes responsive */
@media(max-width:600px){
  .project-gallery {
    height: 200px;
  }
  .gallery-arrow {
    font-size: 1.5rem;
  }
}

/* SecciÃƒÂ³n Servicios */
section#services-section {
  padding: 0;
  margin-top: -21px;
}

/* Bloques de servicio */
.service-block {
  position: relative;
  height: 400px;
  overflow: hidden;
  margin-bottom: -21px;
  clip-path: polygon(0 5%, 100% 0%, 100% 95%, 0% 100%);
  cursor: pointer;
  transition: all 0.5s ease;
}

/* Alternar diagonal */
.service-block.alt {
  clip-path: polygon(0 0%, 100% 5%, 100% 100%, 0% 95%);
}

/* Fondo de la imagen con overlay de color */
.service-block .bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  z-index: 1;
  transition: transform 1.2s ease, opacity 1.2s ease;
}

/* Overlay de color azul oscuro */
.service-block .bg-image::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #23374682; /* azul corporativo con transparencia */
  z-index: 2;
  pointer-events: none; /* para que el hover funcione en la imagen */
}

/* TÃƒÂ­tulo centrado */
.service-block .title {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  z-index: 2;
  color: #fff;
  transition: opacity 0.5s ease;
}

/* Texto completo */
.service-block .text {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
  transform: translate(-50%, -50%);
  text-align: center;
  font-size: 1rem;
  line-height: 1.6;
  opacity: 0;
  color: #fff;
  z-index: 3;
  transition: opacity 0.8s ease;
}

.service-block .text.gry {
  color: #646464;
}

/* Hover: zoom imagen + fade out, mostrar texto */
.service-block:hover .bg-image {
  transform: scale(2); /* zoom dramÃƒÂ¡tico */
  opacity: 0;           /* desaparece */
}

.service-block:hover .title {
  opacity: 0;           /* desaparece */
}

.service-block:hover .text {
  opacity: 1;           /* aparece el texto */
}

/* Responsive */
@media(max-width: 768px){
  .service-block {
    height: 400px;
  }
  .service-block .title {
    font-size: 1.5rem;
  }
  .service-block .text {
    font-size: 0.95rem;
  }
}
.title {
  position: relative;
  display: inline-block; /* hace que la lÃƒÂ­nea tenga el mismo width del texto */
  padding-bottom: 12px;  /* separaciÃƒÂ³n entre texto y lÃƒÂ­nea */
}

.title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5px;
  background-color: var(--line-color);
}
.tilde-section{padding: 30px 0;}

.tilde-section__container{
max-width:1200px;
margin:auto;
display:flex;
gap:50px;
align-items:center;
}

.tilde-section__container--narrow{
display:block;
max-width:900px;
}

.tilde-section__text{
flex:1;
}

.tilde-section__image{
flex:1;
}

.tilde-section__image img{
width:100%;
border-radius:8px;
}

.tilde-section__title{
margin-bottom:20px;
}

.tilde-section__subtitle{
margin-top:30px;
margin-bottom:15px;
}

.tilde-section__list{
padding-left:20px;
}

.tilde-section__support-list{
padding-left:20px;
}

.tilde-section__support-list li{
margin-bottom:12px;
}
#subcontractor{background: #EAC40A;color: #fff;padding: 80px 10%;background: url(../images/sub.jpg) #EAC40A;background-size: cover;background-position: center;}
.subs-box{
  text-align: left;
  max-width: 600px;
}
.subcontractor-bg{background: #EAC40A;width: 100%;height: 100%;position: absolute;left: 0;top: 0;position: absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-attachment:fixed;background-image: linear-gradient(rgba(234,196,10,0.9), rgba(234,196,10,0.9)),
url("../images/sub.jpg");}

.insight-hero{background-image:url("hero.jpg");background-size:cover;background-position:center;position:relative;margin-top: 80px;}

.insight-hero-overlay{/* background: #bababa; */width:100%;padding:80px 0;border-bottom: 1px solid #dcdcdc;border-top: 1px solid #dcdcdc;}

.insight-container{max-width:1000px;margin:auto;padding: 0 40px;}

.insight-category{
color:#EAC40A;
font-size:14px;
letter-spacing:2px;
text-transform:uppercase;
}

.insight-title{color: #233746;font-size: 7vw;line-height: 7vw;margin-top:10px;text-transform: capitalize;}

.insight-meta{/* color:#ddd; */margin-top:10px;}

.insight-content{padding:80px 0;padding-top: 0;width: 80%;margin: 0 auto;}

.insight-feature-image{width:100%;margin:40px 0;max-width: 800px;border-radius:6px;}

.insight-text{
font-size:18px;
line-height:1.7;
margin-bottom:30px;
}

.insight-quote{
border-left:4px solid #EAC40A;
padding-left:20px;
margin:40px 0;
font-size:20px;
font-style:italic;
color:#333;
}
.line{
    height: 100%;
    position: fixed;
    z-index: 0;
    background: #dcdcdc;
    width: 1px;
    left: 10%;
    top: 0;
}
.project-info{
display:flex;
gap:40px;
margin:30px 0 40px 0;
flex-wrap:wrap;
}

.project-item{
display:flex;
flex-direction:column;
}

.project-label{
font-size:12px;
text-transform:uppercase;
letter-spacing:1px;
color:#888;
}

.project-value{
font-size:16px;
font-weight:600;
}

.insight-subtitle{
margin-top:40px;
margin-bottom:20px;
}
.project-details{font-size: 13px;line-height: 17px;}
.detail-label{
    color: #233746;
    margin-right: 10px;
    text-transform: uppercase;
    /* min-width: 68px; */
    display: inline-block;
    font-size: 10px;
    letter-spacing: 2px;
    text-align: left;
} 
.related-updates{padding:80px 0;border-top: 1px solid #dcdcdc;}

.related-title{
margin-bottom:40px;
}

.related-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
}

.related-card{
text-decoration:none;
color:inherit;
display:block;
}

.related-card img{width:100%;height:220px;object-fit:cover;margin-bottom:15px;border-radius: 5px;}

.related-card h3{
font-size:18px;
margin-bottom:10px;
}

.related-card p{
font-size:14px;
color:#666;
}
/* TABLET */

@media (max-width: 1024px){

.related-grid{
grid-template-columns:repeat(2,1fr);
}

}


/* MOBILE */

@media (max-width: 600px){

.related-grid{
grid-template-columns:1fr;
}

.related-card img{
height:200px;
}

.related-title{
margin-bottom:25px;
}

} 

.row {
  display: flex;
  gap: 10px;
}
.half {
  width: 50%;
}
.full {
  width: 100%;
}
input, select, textarea {
  width: 100%;
  padding: 10px;
  margin-top: 5px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
}
button {
  width: 100%;
  padding: 12px;
  background: #007BFF;
  color: white;
  border: none;
  border-radius: 5px;
  cursor: pointer;
}
button:hover {
  background: #0056b3;
}
@media (max-width: 600px) {
  .row {
    flex-direction: column;
  }
  .half {
    width: 100%;
  }
}
#contactForm label{color: #233746;font-weight: bold;text-transform: uppercase;font-size: 13px;}
#contactForm label span{color: #a62020;font-size: 10px;}