@charset "UTF-8";
/* CSS Document */

*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

@font-face {
    font-family: 'beach_bound_scriptregular';
    src: url('../fonts/beach_bound_script-webfont.woff2') format('woff2'),
         url('../fonts/beach_bound_script-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

body{margin: 0 0 0 0; padding: 0 0 0 0; background-color: #F8F4E9; color: #343434; font-family: "DM Sans", sans-serif; font-size: 22px; line-height: normal !important; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased;}

h1, h2, h3, h4, h5, h6, ul, li, a, p, figure{
padding: 0 0 0 0; margin: 0 0 0 0; list-style-type: none; font-weight: inherit; font-size: inherit; line-height: inherit;}

.h1{font-size: 58.97px; font-weight: 900; line-height: 61px; color: #987950; letter-spacing: -0.4px;}
.h1 .ff-Beach-Bound-Script{font-size: 101.794px; font-weight: 400; line-height: inherit; letter-spacing: 0;}

.h2{font-size: 58.968px; font-weight: 900; line-height: 61px; color: #987950; letter-spacing: -1.5px;}
.h2 .ff-Beach-Bound-Script{font-size: 101.794px; font-weight: 400; letter-spacing: -4.692px; line-height: inherit;}

.h2-md{font-size: 50px; line-height: 61px; letter-spacing: -0.5px;}
.h2-md .ff-Beach-Bound-Script{font-size: 87.79px; letter-spacing: 0; margin-left: 8px;}

.h3{font-size: 30px; font-weight: 600;}
.h4{font-size: 22px; font-weight: 700; text-transform: uppercase; color: #987950; letter-spacing: 11px;}
.h5{}
.h6{}

a{text-decoration: none;}
a.disabled{pointer-events: none;}

img{display: block; max-width: 100%; height: auto; border: 0; border: none;}

p{font-size: 22px; line-height: 33px; color: #343434;}
small{}

.color-343434{color: #343434 !important;}
.color-987950{color: #987950 !important;}
.color-C695B4{color: #C695B4 !important;}
.color-FFFFFF{color: #FFFFFF !important;}
.color-000000{color: #000000 !important;}

.bg-786B5C{background-color: #786B5C !important;}
.bg-faf7ef{background-color: #faf7ef !important;}

.ff-Beach-Bound-Script{font-family: 'beach_bound_scriptregular';}

.text-center{text-align: center !important;}

.mt-0{margin-top: 0px !important;}
.mt-10{margin-top: 10px !important;}
.mt-20{margin-top: 20px !important;}
.mt-30{margin-top: 30px !important;}
.mt-40{margin-top: 40px !important;}

.mb-0{margin-bottom: 0px !important;}
.mb-8{margin-bottom: 8px !important;}
.mb-16{margin-bottom: 16px !important;}
.mb-32{margin-bottom: 32px !important;}
.mb-38{margin-bottom: 38px !important;}
.mb-62{margin-bottom: 62px !important;}
.mb-68{margin-bottom: 68px !important;}
.mb-84{margin-bottom: 84px !important;}
.mb-116{margin-bottom: 116px !important;}

.pb-116{padding-bottom: 116px !important;}
.pb-0{padding-bottom: 0 !important;}

.pt-38{padding-top: 38px !important;}

.fw-500{font-weight: 500 !important;}
.fw-700{font-weight: 700 !important;}


/*BUTTONS*/
.btn{border-radius: 50px; background-color: #987950; color: #FFFFFF; font-size: 18px;  font-weight: 800; letter-spacing: 3.6px; height: 74px; text-transform: uppercase; padding: 0 46px; max-width: 342px; display: flex; align-content: center; justify-content: center; flex-wrap: wrap; transition: color .15s ease-in-out, background-color .35s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;}
.btn:hover{background-color: #8e6838;}
.btn-BA936F{background-color: #BA936F;}
.btn-BA936F:hover{background-color: #b48458;}

.btn-app{background-color: #F6B1DC !important; color: #FFFFFF !important; border-radius: 50px; height: 65px; display: flex !important; align-items: center !important; font-weight: 700 !important; padding: 0 35px!important; transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;}
.btn-app:hover{background-color: #f9a3d8 !important;}
/*BUTTONS*/

.link-987950{color: #987950 !important;}


/*Display property*/
.d-block{display: block;}
.d-inline-block{display: inline-block;}
.d-none{display: none !important;}
.d-grid{display: grid;}
.d-flex{display: flex;}
.d-inherit{display: inherit !important;}
.align-item-start{align-items: start;}
.align-item-center{align-items: center;}
.align-item-end{align-items: end;}
.justify-content-between{justify-content: space-between;}
.justify-content-start{justify-content: start;}
.justify-content-center{justify-content: center;}
.justify-content-end{justify-content: end;}
.justify-self-center{justify-self: center;}
.flex-direction-column{flex-direction: column !important;}
/*Display property*/

.position-relative{position: relative;}
.z-index-2{z-index: 2 !important;}

.w-100{width: 100% !important;}
.w-90{width: 90% !important;}
.w-30{width: 30% !important;}

.container{/*margin: 0 12px;*/ margin: 0 auto; padding-left: 16px; padding-right: 16px;}
.container.pl-0{padding-left: 0 !important;}
.container.pr-0{padding-right: 0 !important;}
.ml--16{margin-left: -16px;}
.mr--16{margin-right: -16px;}

.section{position: relative; width: 100%;}
.section-title{width: 100%; max-width: 1192px; margin: 0 auto;}

/*HEADER*/
.main-header-container{position: relative; z-index: 1000; width: 100%;}
.main-header{position: absolute; top: 0; left: 0; z-index: 2; width: 100%; padding: 4.881vw 3.69vw; background-color: transparent;}
.main-header-content{display: flex; justify-content: space-between; align-items: center; max-width: 1920px; margin: 0 auto;}
.header-logo{width: 21.726vw; height: auto; /*margin-top: 0.357vw;*/}
.header-nav ul{display: flex;}
.header-nav ul li{display: flex; align-items: center;}
.header-nav ul li a{display: block; padding: 0 1vw; font-size: 16px; font-weight: 500; letter-spacing: 3.2px; text-transform: uppercase; white-space: nowrap; color: #343434;}
.header-nav ul li a:hover{color: #987950;}
.header-nav ul li a.active{color: #987950; font-weight: 700;}

.header-nav ul li a.btn-app{margin-left: 1.19vw;}

.main-header-container-fixed{position: fixed; top: 0; left: 0;}
.main-header-container-fixed .main-header{background-color: rgb(248,244,233, 0.9); width: calc(100% - 36px); margin-left: 16px; margin-top: 16px; border-radius: 84px; -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); padding: 1.881vw 1.8vw 1.881vw 3.8vw; transition: .1s;}
.main-header-container-fixed .main-header .header-logo{width: 16.726vw;}
/*HEADER*/

/* Botón hamburguesa */
.bg-nav{z-index: -1; position: absolute; transform: rotate(180deg); object-fit: cover; width: 100%; height: 100%; max-width: inherit; top: 0; left: 0;}
.menu-toggle {
  position: fixed;
  top: 4vw;
  right: 42px;
  width: 44px;
  height: 44px;
	border-radius: 50%;
  background: #987950;
  border: none;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 1001;
  cursor: pointer;
}
.main-header-container-fixed .menu-toggle{top: 2.6vw; right: 32px;}

.menu-toggle .bar {
  position: fixed;
  width: 18px;
  height: 2px;
  background-color: #FFFFFF;
  border-radius: 2px;
  transition: all 0.3s ease;
}

.menu-toggle .top {
  transform: translateY(-7px);
}

.menu-toggle .middle {
  transform: translateY(0);
}

.menu-toggle .bottom {
  transform: translateY(7px);
}

.menu-toggle.active .top {
  transform: rotate(45deg);
}

.menu-toggle.active .middle {
  opacity: 0;
}

.menu-toggle.active .bottom {
  transform: rotate(-45deg);
}

/* Menú móvil */
body.menu-open { overflow: hidden; }
.mobile-menu {
	overflow: hidden;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
	height: 100dvh;
  background: #F8F4E9;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
  z-index: 1000;
}

.mobile-menu.active {
  opacity: 1;
  pointer-events: auto;
}

.menu-items {
  list-style: none;
  padding: 42px;
  margin: 0;
  text-align: left;
}

.menu-items li {
  overflow: hidden; /* para “recortar” el a */
  margin: 24px 0;
}

.menu-items li.li-redes{display: inline-block; margin: 18px 18px 18px 0;}
.menu-items li.li-redes a svg{width: auto; height: 22px;}
.menu-items li.li-redes a path{fill: #987950;}

/* Enlaces */
.menu-items a {
  display: inline-block;
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  font-size: 18px;
  font-weight: 500;
  color: #343434;
  text-decoration: none; letter-spacing: 3.2px; text-transform: uppercase;
}

.menu-items .btn-app{font-size: 14px !important;}

.menu-items a:hover {
  color: #987950;
}

.menu-items a.fade-in {
  opacity: 1;
  transform: translateY(0);
}
.menu-items a.fade-out {
  opacity: 0;
  transform: translateY(20px);
}

/* Footer con íconos */
.menu-footer {
  position: absolute;
  bottom: 30px;
  display: flex;
  gap: 20px;
}

.menu-footer a {
  font-size: 24px;
  color: #444;
  text-decoration: none;
  transition: color 0.3s;
}

.menu-footer a:hover {
  color: #6C0E8B;
}

/*HERO*/
.main-hero{min-height: 100vh; display: flex ; align-items: center; padding-top: 13.571vw; padding-bottom: 8.81vw;}
.main-hero .bg-hero{position: absolute; width: 100%; height: auto; top: 0; left: 0; z-index: -1;}
.main-hero .img-main-hero{width: 100%;}
.hero-grid, .ubicacion-grid{display: grid; grid-template-columns: repeat(12, 1fr); gap: 0;}
.container-img-main-hero, .map-content,.clases-page-grid-image{grid-column: span 7 / span 7; margin-right: 4.048vw;}
.hero-content, .ubicacion-content, .clases-page-grid-content{grid-column: span 4 / span 4; grid-column-start: 8; display: flex ; flex-direction: column; justify-content: center;}
.hero-content .h1,.clases-page-grid-content .h1{margin-bottom: 32px;}
.hero-content p,.clases-page-grid-content p{color: #000000; font-size: 20px; font-weight: 400; line-height: 30px; margin-bottom: 56px;}
/*HERO*/



.map-container{position: relative; width: 100%; padding-bottom: 56.25%; /* 16:9 aspect ratio */ height: 0; overflow: hidden;}
.map-container iframe{position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0;}

.ubicacion-content{}
.ubicacion-content .contact-nav li{display: flex; align-items: center; font-size: 20px; line-height: 28px; color: #000000; margin-bottom: 28px;}
.ubicacion-content .contact-nav li:last-child{margin-bottom: 0;}
.ubicacion-content .contact-nav li .icon{width: 37px; height: auto; margin-right: 16px;}
.ubicacion-content .contact-nav li a{display: flex; align-items: center; color: #000000;}

.beneficios-grid{display: grid; grid-template-columns: repeat(4, 1fr); margin: 0 auto; max-width: 1192px;}
.beneficios-grid .beneficios-grid-item{display: flex; flex-direction: column; text-align: center;}
.beneficios-grid .beneficios-grid-item figure{margin-bottom: 28px;}
.beneficios-grid .beneficios-grid-item figure img{margin: 0 auto; width: 113px; height: auto;}

.clases-page-grid{display: grid; grid-template-columns: repeat(12, 1fr); gap: 0;}
.clases-page-grid .clases-page-grid-content{}
.clases-page-grid .clases-page-grid-image img{mask-image: url("../images/clases/mask-left.svg"); mask-size: 100%; mask-repeat: no-repeat; mask-position: center; margin-right: 10%;}
.clases-page-grid-end .clases-page-grid-image{ margin-left: 68px; margin-right: inherit; grid-column: span 7 / span 7; grid-column-start: 6;}
.clases-page-grid-end .clases-page-grid-image img{mask-image: url("../images/clases/mask-right.svg"); margin-left: 10%; margin-right: 0;}
.clases-page-grid-end .clases-page-grid-content{grid-column-start: 2; display: flex ;}
.clases-page-grid-end .order-1{order: 1;}
.clases-page-grid-end .order-2{order: 2; display: flex ; justify-content: end;}
.clases-page-item{position: relative;}
.clases-page-item .bg-image{position: absolute; width: 100%; height: auto; top: 30%; z-index: -1; -webkit-mask-image: linear-gradient(to bottom, transparent 0px, #F8F4E9 40px); mask-image: linear-gradient(to bottom, transparent 0px, #F8F4E9 40px); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;}

.grid-gallery{display: grid; grid-template-columns: repeat(3, 1fr); margin: 0 auto; gap: 12px; max-width: 1280px;}
.grid-gallery-item .img-gallery{border-radius: 32px; aspect-ratio: 4/5; object-fit: cover; width: 100%;}

.horarios-grid-container{ margin: 0 auto; max-width: 1280px; background-color: rgb(255,255,255, 0.40); border-radius: 34px; padding: 0 42px 42px 42px;}
.horarios-grid{display: grid; grid-template-columns: repeat(7, 1fr); gap: 0; align-items: center; justify-content: center; height: 100%;}
.horarios-grid .horarios-grid-item{display: flex; flex-direction: column; justify-content: center; align-items: center;}
.horarios-grid .horarios-grid-item span{text-align: center; display: block;}
.horarios-grid-item { 
  min-height: 44px;
}
.horarios-grid-item p {
    font-size: 19px;
    line-height: 33px !important;
    color: #343434;
}



.horarios-row{border-bottom: solid 1px #C695B4;}

.ventajas-grid{display: grid; grid-template-columns: auto auto auto; gap: 0; max-width: 57.857vw; width: 100%; margin: 0 auto;}
.ventajas-grid-item{border-left: solid 1px #C695B4;}
.ventajas-grid-item h5{font-weight: 500; margin-left: 24px; margin-bottom: 12px; margin-top: 18px;}

.clases-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 28px; margin: 0 auto; max-width: 1280px;}
.clases-grid-item{margin-bottom: 62px;}
.clases-grid-item figure{margin-bottom: 26px;}
.clases-grid-item .img-clases-item{border-radius: 32px 32px 32px 0;}

.nav-download-app{display: flex; justify-content: center;}
.nav-download-app li{margin: 0 8px;}
.container-btn-download-app{position: absolute; width: 90%; bottom: 76px; left: 50%; transform: translateX(-50%);}

.instagram-grid{display: grid; grid-template-columns: repeat(4, 1fr); margin: 0 auto; gap: 24px; max-width: 1280px;}
.instagram-grid .instagram-grid-item .instagram-img{aspect-ratio: 151/135; object-fit: cover;}

.main-footer{background-color: #786B5C; color: #D6C8B7; padding: 116px 0 58px 0; font-size: 16px; font-weight: 700; text-transform: uppercase; letter-spacing: 3.2px;}
.main-footer a{color: #D6C8B7; white-space: nowrap; transition: color .15s ease-in-out;}
.main-footer a:hover{opacity: 0.7;}
.footer-nav-container{display: grid; grid-template-columns: repeat(2, 1fr); margin: 0 auto; margin-bottom: 82px; gap: 12px; max-width: 1280px; padding: 0 12px;}
.footer-nav{display: flex;}
.footer-nav ul{display: flex ; flex-direction: column; width: 35%;}
.footer-nav ul li{margin-bottom: 24px;}
.footer-nav ul li:last-child{margin-bottom: 0;}
.footer-redes{display: flex; justify-content: end;}
.footer-redes ul{display: flex; margin-top: 18px;}
.footer-redes ul li{margin-right: 22px;}
.footer-redes ul li:last-child{margin-right: 0;}
.footer-redes ul li a:hover{opacity: 0.7;}
.logo-footer-container{}
.logo-footer{width: 100%; max-width: 1280px;}

.bg-logo{position: absolute; top: 37%; left: 0; width: 100%; z-index: -1;}
.bg-logo img{width: 100%;}

.contact-container{display: flex; max-width: 1192px; margin: 0 auto;}
.contact-image{display: flex; align-items: center; justify-content: center;}
.contact-image img{max-width: 90%;}
.contact-form { width: 100%; display: flex; align-items: center; justify-content: center; max-width: 620px; margin-left: 120px;  padding: 0 16px;}
.contact-form form { width: 100%; ;display: flex; flex-direction: column; gap: 24px; }
.contact-form input[type="text"],
    .contact-form input[type="email"] {
      width: 100%;
      padding: 14px 20px;
      background: transparent;
      border: none;
      border-bottom: 2px solid #987950;
      color: #010101;
      font-size: 16px;
      outline: none;
    }

    .contact-form input::placeholder,
    .contact-form textarea::placeholder {
      color: #0F1A2B; font-size: 22px;
    }
.contact-form textarea { width: 100%; padding: 14px 20px; background: rgba(255, 255, 255, 0.4); border: none; border-radius: 34px; color: #010101; font-size: 16px; font-family: inherit; resize: vertical; min-height: 200px; outline: none; margin-bottom: 28px; } 
.file-upload { position: relative; display: flex; align-items: center; } 
.file-upload input[type="file"] { opacity: 0; position: absolute; left: 0; top: 0; width: 100%; height: 100%; cursor: pointer; z-index: 2;} 
.file-upload label { display: inline-block; padding: 14px 20px; width: 100%; border-bottom: 2px solid #987950; color: #987950; font-size: 22px; cursor: pointer; background: transparent; position: relative; z-index: 1; } 
.contact-form button { border: none; color: #fff; cursor: pointer;} 

.Rectangle-354{position: absolute; z-index: -1; width: 100%; top: 0;}
.Rectangle-354.top-20{top: -20%;}
.Rectangle-354.bottom-0{bottom: 0 !important; top: inherit;}

.logo-mask{width: 100%; position: absolute; left:0; bottom: 0;}

.pre-footer{background-color: #786B5C; padding: 80px 0rem; clip-path: ellipse(100% 100% at 50% 100%); position: absolute; bottom: 0; left: 0; z-index: 1; width: 100%;}

/* Preloader */ 
#preloader{position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #F8F4E9; display: flex; justify-content: center; align-items: center; flex-direction: column; z-index: 9999; transition: all 0.6s ease; background-image: url("../images/Rectangle-354.svg"); background-size: cover; background-position: center; background-repeat: no-repeat;}
/* Barra de carga */ 
.bar-container{width: 200px; height: 2px; background: #FFF; border-radius: 3px; overflow: hidden; margin-top: 20px;} 
.bar{width: 0%; height: 100%; background: #987950; transition: width 0.3s ease; } 
/* Porcentaje */
.percentage{font-size: 20px; color: #987950; font-weight: 400; opacity: 1; transform: translateY(0); transition: all 0.6s ease; }
#preloader.fade-out{opacity: 0; transform: translateY(-20px); pointer-events: none;}
#preloader.fade-out .percentage{opacity: 0; transform: translateY(-10px);} 
/* Contenido oculto inicialmente */ 
#main-content.hidden{opacity: 0; transform: translateY(20px); transition: all 0.6s ease;}
#main-content.show{opacity: 1; transform: translateY(0);}

[data-aos="fade-only"] {
  opacity: 0;
  transition-property: opacity;
}

[data-aos="fade-only"].aos-animate {
  opacity: 1;
  animation: aos-fade-only 1s ease both;
}

@media (min-width: 1920px){
	.main-header-content{max-width: 90%;}
	/*.main-header{padding-top: 94px !important;}*/
	.main-header-container-fixed .main-header{padding: 42px 0 !important;}
	.main-header-container-fixed .main-header .header-logo{width: 316px;}
}

@media (min-width: 1680px){
	/*.main-header{padding: 124px 62px 82px 62px; }*/
	.main-header-content{}
	.header-logo{width: 365px; /*margin-top: 6px;*/}
	.header-nav ul li a{padding: 0 20px;}
	
	.main-hero{padding-top: 228px; padding-bottom: 148px;}
	.container-img-main-hero, .map-content, .clases-page-grid-image{margin-right: 68px;}
	
	.ventajas-grid{max-width: 720px;}
	
	.w-xxl-100{width: 100% !important;}
}

@media (max-width: 1300px){
	
	.d-lg-none{display: none !important;}
	.d-lg-block{display: block !important;}
	.d-lg-flex{display: flex !important;}
	
	.header-nav{display: none;}
	.menu-toggle{display: flex;}
	
	.menu-items{text-align: center;}
	
	.container-img-main-hero, .map-content, .clases-page-grid-image{grid-column: span 6 / span 6; display: flex ; align-items: center;}
	.hero-content, .ubicacion-content, .clases-page-grid-content { grid-column: span 5 / span 5; grid-column-start: 7;}
	
	.clases-page-grid-end .clases-page-grid-image{grid-column: span 6 / span 6; grid-column-start: 7;}
	
	.clases-page-grid-end .order-2{order: 1;}
	.clases-page-grid-end .order-1{order: inherit;}
	
	
	.contact-container{flex-direction: column;}
	.contact-form{margin-left: 0; margin: 0 auto;}
}

@media (max-width: 992px){
	
	body{font-size: 16px;}
	
	
	
	p{font-size: 14px; line-height: 22px;}
	
	.hero-content p, .clases-page-grid-content p{font-size: 14px; line-height: 22px;}
	
	.h1{font-size: 28px; line-height: 30px;}
	.h1 .ff-Beach-Bound-Script{font-size: 56px;}
	
	.h2,.h2-md { font-size: 24px; line-height: 28px; letter-spacing: -0.3px; }
	.h2 .ff-Beach-Bound-Script,.h2-md .ff-Beach-Bound-Script{font-size: 47px; letter-spacing: 0; margin-left: 4px; display: block;}
	
	.h3{font-size: 22px;}
	.h4{font-size: 12px; letter-spacing: 4px;}
	
	.btn{font-size: 14px; letter-spacing: 2.6px; padding: 0 28px; height: 48px; max-width: 320px;}
}

@media (max-width: 768px){
	/*.h1 {font-size: 43px; font-weight: 900; line-height: 45px; letter-spacing: -0.2px;}
	.h1 .ff-Beach-Bound-Script{font-size: 75px;}*/
	
	.beneficios-grid{grid-template-columns: repeat(2, 1fr); gap: 32px;}
	.beneficios-grid .beneficios-grid-item figure{margin-bottom: 14px;}
	
	.clases-grid{grid-template-columns: repeat(2, 1fr);}
	
	.clases-page-grid-end .order-1{order: 2;}
	.clases-page-grid-content{padding-left: 84px !important; padding-right: 84px !important;}

	
	.horarios-scroll-wrapper {
        overflow-x: auto;
      }
	.horarios-scroll-content {
        display: inline-block;
        min-width: max-content;
      }
}

@media (max-width: 768px){
	
	
	
	
	.mb-16{margin-bottom: 8px !important;}
	.mb-32{margin-bottom: 16px !important;}
	.mb-38{margin-bottom: 24px !important;}
	.mb-62{margin-bottom: 28px !important;}
	.mb-68{margin-bottom: 34px !important;}
	.mb-84{margin-bottom: 42px !important;}
	.mb-116{margin-bottom: 62px !important;}
	
	.mb-sm-8{margin-bottom: 8px !important;}
	.mb-sm-16{margin-bottom: 16px !important;}
	.mb-sm-58{margin-bottom: 58px !important;}
	
	.d-sm-none{display: none !important;}
	.d-sm-block{display: block !important;}
	.d-sm-inline{display: inline !important;}
	
	.w-md-100{width: 100% !important;}
	
	.flex-direction-sm-column{flex-direction: column !important;}
	.text-md-center{text-align: center !important;}
	
	
	
	.main-header{padding: 34px 18px 28px 18px;}
	.header-logo{width: 142px; margin-top: 0;}
	.main-hero{padding-top: 82px; padding-bottom: 82px; /*align-items: start;*/ min-height: 100dvh;}
	.main-hero.mh-auto{min-height: auto !important;}
	.contact-hero{padding-top: 124px;}
	.main-hero .bg-hero{top: 20%; aspect-ratio: 4 / 6; object-fit: contain;}
	.main-hero.clases-hero .bg-hero{top: 0; aspect-ratio: 4 / 6; object-fit: cover;}
	.hero-content, .ubicacion-content, .clases-page-grid-content{padding-left: 24px; padding-right: 24px; margin-top: 28px;}
	.hero-content p, .clases-page-grid-content p{margin-bottom: 32px;}
	
	.main-header-container-fixed .main-header{padding: 18px 24px; width: calc(100% - 28px); margin-left: 14px; margin-top: 14px;}
	.main-header-container-fixed .main-header .header-logo{width: 142px;}
	
	.menu-toggle{top: 27px; right: 18px;}
	.main-header-container-fixed .menu-toggle { top: 21px; right: 22px; }
	
	.container-img-main-hero, .map-content, .clases-page-grid-image{grid-column: span 12 / span 12;}
	.hero-content, .ubicacion-content, .clases-page-grid-content{grid-column: span 12 / span 12;}
	.clases-page-grid-end .clases-page-grid-image{grid-column: span 12 / span 12; margin-left: 4.048vw;}
	.clases-page-grid-end .clases-page-grid-content {grid-column-start: 1;}
	
	.ubicacion-content{align-items: start !important;}
		
	.clases-grid{gap: 0 16px;}
	.clases-grid-item{margin-bottom: 36px;}
	.clases-grid-item figure{margin-bottom: 14px;}
	.clases-grid-item .img-clases-item{border-radius: 24px 24px 24px 0;}
	
	.clases-page-grid-content .h1{margin-bottom: 12px !important;}
	
	.ventajas-grid{max-width: 90%;}
	.ventajas-grid-item{margin-bottom: 12px;}
	.ventajas-grid-item h5{margin-left: 14px; margin-bottom: 12px; margin-top: 12px; font-size: 14px;}
	
	.nav-download-app{max-width: 320px; margin: 0 auto;}
	.nav-download-app li{margin: 0 4px;}
	.img-app{max-width: 70%;}
	.container-btn-download-app{bottom: 10px;}
	
	.ubicacion-content .contact-nav li{font-size: 16px; line-height: 18px; margin-bottom: 22px;}
	.ubicacion-content .contact-nav li .icon{width: 32px; margin-right: 12px;}
	
	.container-image{overflow: hidden;}
	.container-image img{width: 150% !important; max-width: inherit !important;}
	
	.instagram-grid{grid-template-columns: repeat(2, 1fr); gap: 12px;}
	
	.footer-nav-container{grid-template-columns: repeat(1, 1fr);}
	.footer-nav{display: block;}
	.footer-nav ul{width: 100%;}
	.footer-nav ul li:last-child{margin-bottom: 24px;}
	.footer-redes{justify-content: start;}
	
	.contact-form{max-width: inherit; padding: 0 24px;}
	.contact-form form{gap: 12px;}
	.contact-form .btn{width: 100%; max-width: inherit;}
	.contact-form input::placeholder,
	.contact-form textarea::placeholder {font-size: 16px;}
	.contact-form textarea{border-radius: 16px;}
	.file-upload label {font-size: 16px; padding: 12px 12px;}
	.contact-form input[type="text"], .contact-form input[type="email"]{padding: 12px 12px; border-radius: 0;}
	
	.grid-gallery-item .img-gallery{border-radius: 16px;}

}

@media (max-width: 576px){
	.w-sm-100{width: 100% !important;}
	
	.mobile-menu{align-items: start;}
	.menu-items{text-align: left; width: 100%; margin-top: 62px;}
	.menu-items li{margin: 18px 0;}
	.menu-items .btn-app{max-width: inherit;}
	
	.clases-page-grid .clases-page-grid-image{margin-right: 24px !important;}
	.clases-page-grid-end .clases-page-grid-image { margin-left: 24px !important; margin-right: 0 !important; }
	.clases-page-grid-content{padding-left: 24px !important; padding-right: 24px !important;}
	
	.pre-footer{padding: 48px 0rem;}
	.main-footer{padding-bottom: 18px;}
}


.alert_only_good { 

  width: calc(100% - 2em);
  bottom: 1em;
  left: 1em;
  min-height: 30px;
  border-radius: 10px;
  background-color: #0ca678;
  padding: 10px;
  padding-left: 1em;
  padding-right: 1em;
  color: white;
  text-align: left;
  position: fixed;
  z-index: 9999;
  
  
  font-weight: 600;
  display: none;
  line-height: 1.4em !important;
  font-size: 1.2em;
  box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.2);

}

.alert_only_bad { 

  width: calc(100% - 2em);
  bottom: 1em;
  left: 1em;
  min-height: 30px;
  border-radius: 10px;

  min-height: 30px;
  background-color: #E04239;
  padding: 10px;
  padding-left: 1em;
  padding-right: 1em;
  color: white;
  text-align: left;
  position: fixed;
  z-index: 9999;
  display: none;
  
  font-weight: 600;
  
  line-height: 1.4sem !important;
  font-size: 1.2em;
  box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.2);

}
.reten { position: relative; }

.fs-12 { font-size: 12px }
.fs-14 { font-size: 14px }
.fs-16 { font-size: 16px }
.fs-18 { font-size: 18px }
.fs-20 { font-size: 20px }
.fs-22 { font-size: 22px }

