/*
Theme Name: LatinHotel
Theme URI: https://ongoingestudio.com/
Author: ONGOING ESTUDIO
Author URI: https://ongoingestudio.com/
*/

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}html{scroll-behavior:smooth}body{line-height:1}a{text-decoration-skip-ink:auto}a[href^="tel"]{color:inherit;text-decoration:none}button{outline:0}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}q{display:inline;font-style:italic}q:before{content:'"';font-style:normal}q:after{content:'"';font-style:normal}textarea,input[type="text"],input[type="button"],input[type="submit"],input[type="reset"],input[type="search"],input[type="password"]{-webkit-appearance:none;appearance:none;border-radius:0}input[type="search"]{-webkit-appearance:textfield}table{border-collapse:collapse;border-spacing:0}th,td{padding:2px}big{font-size:120%}small,sup,sub{font-size:80%}sup{vertical-align:super}sub{vertical-align:sub}dd{margin-left:20px}kbd,tt{font-family:courier;font-size:12px}ins{text-decoration:underline}del,strike,s{text-decoration:line-through}dt{font-weight:bold}address,cite,var{font-style:italic}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
.sticky{}.bypostauthor{}.wp-caption{}.wp-caption-text{}.gallery-caption{}.alignright{}.alignleft{}.aligncenter{}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important;word-break:normal}
.screen-reader-text:focus{background-color:#f7f7f7;border-radius:3px;box-shadow:0 0 2px 2px rgba(0,0,0,.6);clip:auto!important;-webkit-clip-path:none;clip-path:none;color:#007acc;display:block;font-size:14px;font-size:.875rem;font-weight:700;height:auto;right:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
.skip-link{left:-9999rem;top:2.5rem;z-index:999999999;text-decoration:underline}
.skip-link:focus{display:block;left:6px;top:7px;font-size:14px;font-weight:600;text-decoration:none;line-height:normal;padding:15px 23px 14px;z-index:100000;right:auto}
.visually-hidden:not(:focus):not(:active), .form-allowed-tags:not(:focus):not(:active){position:absolute !important;height:1px;width:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);white-space:nowrap}

body{
	color:#000;
    background-color: #FFF;
	font-weight: normal;
    font-size: 1rem;
    font-family: "Montserrat", sans-serif;
	line-height: 1.4;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-optical-sizing: auto;
    font-weight: 300;
    transition: all .2s linear;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
}

#preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #f2f3f6;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}

#preloader.hidden {
  opacity: 0;
  visibility: hidden;
}

#preloader img {
    width: 80px;
}

html {
  scroll-behavior: smooth;
  font-size: calc(0.19403rem + 0.746269vw);
}

:active {
   outline:none !important;
}

img{max-width: 100%; height: auto;}

figure.wp-block-image.size-full img {
    max-width: 100%;
    width: 100%;
}

p {
    margin-bottom: 14px;
    line-height: 1.4;
    font-size: 1.1rem;
    font-weight: 300;
    text-align: justify !important;
}

li {
    list-style: none;
    font-size: 1rem;
    margin-bottom: 4px;
    line-height: 1;
    font-weight: 300;
}

.entry-content li {
    list-style: disc;
    margin-left: 20px;
    line-height: 1.4;
    margin-bottom: 10px;
}

.tabtitlelabel{
    font-family: "Karla", sans-serif;
    font-weight: 300;
    font-size: 1.2rem;
}

h1 {
    font-family: "Karla", sans-serif;
    font-size: 3rem;
    font-weight: 300;
    margin-bottom: 0px;
    line-height: 1;
}

h2 {
   font-family: "Karla", sans-serif;
    font-size: 2.2rem;
    font-weight: 300;
    margin-bottom: 0px;
    line-height: 1;
}

h3 {
    font-family: "Karla", sans-serif;
    font-size: 1.8rem;
    font-weight: 300;
    margin-bottom: 0px;
    line-height: 1;
}

h4 {
    font-family: "Karla", sans-serif;
    font-size: 1.4rrem;
    font-weight: 300;
    margin-bottom: 0px;
    line-height: 1;
}

a {
    text-decoration: none;
    color: #000;
    opacity: 1;
    transition: all .2s linear;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
    word-break: break-word;
}

a:not(.kt-button):hover {
    opacity: .5;
}

strong {
	font-weight: 500;
}

em{font-style: italic;}

header#header {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 101;
    padding: 5px 4%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: rgb(0 0 0 / 21%);
    transition: all .2s linear;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
    color: #fff;
}
.columnheader{
    width: 30%;
}

.columnheader.rigth {
    display: flex;
    align-items: flex-start;
    justify-content: end;
}

#header.active, body.blog #header, body.search #header, body.page-id-59 #header{
    background-color: #000000b5;
}

body.search div#container {
    padding: 10%;
}

div#container {
    padding-bottom: 50px;
    z-index: 1;
    position: relative;
}

div#site-title {
    width: 8%;
    max-width: 112px;
    padding: 5px 0;
}

ul#menu-menu-1, ul#menu-contact {
    display: flex;
}

ul#menu-menu-1 li a, ul#menu-contact li a {
    font-family: "Karla", sans-serif;
    text-transform: uppercase;
	font-size: .8rem;
    font-weight: 500;
    text-align: center;
    text-decoration: none;
    padding: 7px 1em 7px 1em;
    opacity: 1;
    display: block;
    position: relative;
    color:#fff
}

ul#menu-contact li a:hover, ul#menu-menu-pricipal li a:hover {
   opacity: .6;
}


ul#menu-menu-1 li ul.sub-menu li a:hover, ul#menu-menu-1 li ul.sub-menu li.current_page_item a{
   border-bottom: none;
   color: #e2c9ac;
}

ul#menu-menu-1 > li {
    display: flex;
    align-items: center;
    margin-bottom: 0;
    position: relative;
    padding-right: 0.2em;
}

ul.sub-menu {
    position: absolute;
    flex-direction: column;
    backdrop-filter: blur(5px);
    background: rgb(75 74 74 / 90%);
    top: 0;
    width: max-content;
    left: 99%;
    height: 100vh;
    justify-content: flex-start;
    padding: 0 0 0 16%;
    padding-top: 100px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none; 
    transform: translateX(-10px);
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
}

ul.menu li:hover > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(0);
    z-index: 2;
}

li#menu-item-552 > ul.sub-menu {
    width: max-content;
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 100px;
    text-transform: uppercase;
    font-size: .9em;
}

nav#menu ul.menu li {
    position: relative;
}

ul.sub-menu li a {
    font-weight: 400 !important;
    font-size: .9rem !important;
}

ul.sub-menu li ul.sub-menu li a {
    font-size: .8rem !important;
}

nav.menu-menu-footer-container li {
    opacity: 1 !important;
    transform: none !important;
}

footer#footer {
    display: flex;
    padding: 60px 2% 30px 2%;
    width: 100%;
    font-size: .8rem;
    background-color: #000;
    color: #fff;
}

footer#footer a {
    color: #fff;
}

aside#sidebar {
    width: 100%;
}

textarea, input[type="text"], input[type="button"], input[type="submit"], input[type="reset"], input[type="search"], input[type="password"],.wpcf7 input[type="url"], .wpcf7 input[type="email"], .wpcf7 input[type="tel"]{
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    width: 100%;
    border: none;
    border-bottom: 1px solid;
    padding: 5px;
    margin-bottom: 10px;
    font-family: "Montserrat", sans-serif;
    font-size: 14px;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner {
    border: none;
    padding: 13px;
    font-size: .8rem;
    text-transform: uppercase;
    font-weight: 500;
    font-family: "Montserrat", sans-serif;
    font-size: 14px;
}

.wpcf7 form.sent .wpcf7-response-output {
    border:1px solid #000000 !important;
    font-family: "Montserrat", sans-serif;
}

div#wpcf7-f296-o1 p {
    align-items: baseline;
    margin-bottom: 0;
}

div#gspb_container-id-gsbp-566008c {
    display: flex;
    align-items: center;
}

div#wpcf7-f296-o1 p input.wpcf7-form-control.wpcf7-submit.has-spinner {
    height: 37px;
    font-size: 14px;
    background-color: #e2c9ac;
    color: #fff;
}

div#wpcf7-f296-o1 p input.wpcf7-form-control.wpcf7-text.wpcf7-validates-as-required {
    margin-bottom: 10px !important;
    margin-right: 0px;
    display: block;
    width: 100%;
}

li#block-13 {
    font-size: .9rem;
}

.kb-gallery-ul .kadence-blocks-gallery-item .kadence-blocks-gallery-item-inner figure .kb-gallery-image-ratio-land21 {
    padding-bottom: 0% !important;
    height: 80vh !important;
}

#myBtn {
    display: none;
    position: fixed;
    bottom: 20px;
    left: 30px;
    z-index: 99;
    border: none;
    outline: none;
    color: white;
    cursor: pointer;
    padding: 0;
    font-size: 18px;
    backdrop-filter: blur(1px);
    background: rgba(255, 255, 255, 0.3);
}

#myBtn::before{
    left: 0;
    content: url(img/svgviewer-output.svg);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
}

#myBtn:hover {
    backdrop-filter: blur(1px);
    background: rgba(255, 255, 255, 0.7);
}

#myBtn img {
    width: 40px;
    display: block;
    transform: rotate(270deg);
}

.search-click {
  border: 1px solid #ccc;
  outline: none;
  background-size: 22px;
  background-position: 13px;
  border-radius: 100px;
  width: 100px;
  padding: 21px;
  transition: all 0.5s;
  text-overflow: ellipsis;
  overflow: hidden;
  text-align: left;
  position: absolute;
  right: 0;
  top: 0;
  margin: 1em;
}

.search-click:focus {
  width: 400px;
  padding-left: 20px;
}

nav#menu {
    display: flex;
    position: fixed;
    top: 0;
    height: 100vh;
    z-index: 101;
    opacity: 0;
    color: #fff;
    padding-top: 100px;
    pointer-events: none;
    transform: translateX(-100%);
    transition: transform 0.2s ease-out, opacity 0.2s ease-out;
}

.menuprimernivel{
    position: absolute;
    top: 0;
    left: 0;
    width: 12rem;
    height: 100vh;
    padding: 80px 0px 30px 34px;
    backdrop-filter: blur(5px);
    background: rgba(0, 0, 0, 0.8);
}

.categoriasmenu,.marcassubmenu{
    position: absolute;
    top: 0;
    left: 12rem;
    width: 14rem;
    height: 100vh;
    padding: 80px 0px 30px 40px;
    backdrop-filter: blur(5px);
    background: rgb(42 42 42 / 80%);
    opacity: 0;
    pointer-events: none;
}

.marcassubmenu {
    width: auto;
}

.menu-marcas-container {
    height: 100%;
}

ul#menu-marcas {
    width: 22rem;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    height: 100%;
}

.subcategoriasmenu{
    position: absolute;
    top: 0;
    left: 26rem;
    width: 18rem;
    height: 100vh;
    padding: 80px 0px 30px 40px;
    backdrop-filter: blur(5px);
    background: rgb(68 66 66 / 80%);
    opacity: 0;
    pointer-events: none;
}

.menuactive nav#menu {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
}

.abrircategorias .categoriasmenu,.abrirmarcas .marcassubmenu{
    opacity: 1;
    pointer-events:all;
}

.menu-restaurante-container, .menu-hospitalidad-container, .menu-habitacion-container, .menu-areaspublicas-container{
    opacity: 0;
    position: absolute;
    pointer-events: none;
}

.abrirrestaurante .subcategoriasmenu .menu-restaurante-container, .abrirhospitalidad .subcategoriasmenu .menu-hospitalidad-container, .abrirhabitacion .subcategoriasmenu .menu-habitacion-container, .abrirareas .subcategoriasmenu .menu-areaspublicas-container{
    opacity: 1;
     pointer-events:all;
}

.abrirrestaurante .subcategoriasmenu, .abrirhospitalidad .subcategoriasmenu, .abrirhabitacion .subcategoriasmenu, .abrirareas .subcategoriasmenu{
    opacity: 1;
    pointer-events:all;
}

nav#menu ul.menu li a {
    font-size: 1em;
    display: block;
    padding: 8px 40px 8px 5px;
    opacity: 1;
    transition: all .1s linear;
    -webkit-transition: all .1s linear;
    -moz-transition: all .1s linear;
    -o-transition: all .1s linear;
    color: #fff;
}

nav#menu ul.menu li a:hover {
    opacity: .5 !important;
}

nav#menu ul.menu li.submenu a::after {
    content: '+';
    position: absolute;
    right: 8%;
    top: 5px;
    font-size: 1.6em;
}

nav#menu ul.menu li.submenu.active a::after {
    content: '-';
    font-size: 2.2em;
    top: -4px;
}

.menuactive .menu-menu-pricipal-container ul.menu li, .abrircategorias .categoriasmenu ul.menu li, .abrirmarcas .marcassubmenu ul.menu li, .abrirrestaurante .menu-restaurante-container ul.menu li, .abrirhospitalidad .menu-hospitalidad-container ul.menu li, .abrirhabitacion .menu-habitacion-container ul.menu li, .abrirareas .menu-areaspublicas-container ul.menu li{
  transform: translateX(-40px);
  animation: slideInLeft 0.5s ease forwards;
  animation-delay: var(--delay, 0s);
}

ul.menu li {
  animation: none;
  transform: translateX(-40px);
  opacity: 0;
}

@keyframes slideInLeft {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}


form.search-form input.search-submit {
    display: none;
}

input.search-field {
    width: 30px;
        transition: all .1s linear;
    -webkit-transition: all .1s linear;
    -moz-transition: all .1s linear;
    -o-transition: all .1s linear;
    position: relative;
}

form.search-form {
    position: relative;
}

form.search-form::before {
font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f002";
    color: #fff;
    position: absolute;
    right: -23px;
}

input.search-field:focus {
    width: 120px;
}

.wrapper-ham {
    overflow: hidden;
    width: 60px;
    height: 60px;
    padding: 5px;
    z-index: 10000;
    top: 2%;
    left: 3%;
    border-radius: 100%;
    justify-content: center;
    position: fixed;
}

nav#menu .wrapper-ham {
    position: absolute;
    z-index: 10;
}

.btn {
    margin-left: 9px;
    position: absolute;
    margin-top: 16px;
    width: 40px;
    height: 40px;
}

.bar1, .bar2, .bar3{
    position: absolute;
    top: 0;
    left: 0px;
    display: block;
    font-size: 10px;
    padding: 0;
    -webkit-appearance: none;
    border: 0px solid;
    color: #fff;
    width: 30px;
    height: 1px;
    border-radius: 0px;
    background-color: #fff;
    -webkit-transition: all 0.2s ease-in;
    -webkit-transform: rotate(0deg);
}
.bar2{
    top:8px;
}
.bar3{
    top:16px;
}

.bar1.active{
    top: 9px;  
  -webkit-transform: rotate(-135deg);
  -webkit-transition: all 0.2s ease-in;
}
.bar2.active{
    left:0px;
  background-color: transparent;
  -webkit-transition: all 0.2s ease-in;
  
}
.bar3.active{
    top:9px;
  -webkit-transform: rotate(135deg);
  -webkit-transition: all 0.2s ease-in;
}

.animated-text {
  opacity: 0;
  transform: translateY(50px);
}

.proyectosimg {
    display: none !important;
}

.proyectosimg.show {
    display: flex !important;
}
.proyectotext{opacity: .2;transition: opacity 0.2s ease-in-out;}

.proyectotext.show {
    opacity:1;
}

#menu-menu-pricipal li a{
    opacity: 0; 
}

div#showroomslist {
    position: relative;
}

.wp-block-group.mainwrappershow {
    position: absolute;
    width: max-content;
    right: 0;
    visibility: hidden;
    pointer-events: none;
    margin-right: -10px;
    transition: all .1s linear;
    -webkit-transition: all .1s linear;
    -moz-transition: all .1s linear;
    -o-transition: all .1s linear;
}

.sidebar-location:hover .wp-block-group.mainwrappershow {
        visibility: visible;
    pointer-events: auto;
}

div#sidebar-location a {
   color: #fff;
    font-size: .8em;
}

div#sidebar-location {
    position: relative;
    padding-left: 50px;
}

div#sidebar-location p {
    margin: 0;
    text-align: right;
}

.sidebar-location .mapblockheader {
    position: absolute;
    background-color: #000;
    color: #fff;
    padding: 5px !important;
    border-radius: 5px;
    width:130px;
    z-index: 1000;
    right: 0;
    transform: scale(0.01);
    transform-origin: top right;
    transition: transform 0.3s ease-out, visibility 0s linear 0.3s;
    visibility: hidden;
}

.gruposhowcdmx, .gruposhowcabos, .gruposhowcancun{
    position: relative;
}

.gruposhowcdmx:hover .mapagooglecdmx, .gruposhowcabos:hover .mapagoogleloscabos, .gruposhowcancun:hover .mapagooglecancun {
    transform: scale(1);
    visibility: visible;
    transition: transform 0.3s ease-out, visibility 0s;
}

.mainwrappershow .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {
    display: flex;
    z-index: 1;
    position: relative;
}

.mainwrappershow .wp-block-group {
    padding: 0px 10px 0 10px;
    opacity: 0;
    -webkit-transition: all 0.2s ease-in;
}

#sidebar-location:hover .mainwrappershow .wp-block-group {
    opacity: 1;
}

.catalogosbloque {
    position: sticky !important;
    bottom: 3%;
    z-index: 1000;
    background-color: #fff;
    padding: 10px;
    border: 1px solid;
    width: fit-content;
    margin: 0 auto;
}

.catalogorollover {
    margin-bottom: 30px;
}

.activecatalogo.catalogorollover{width: 34% !important;}
.imgactive{display: block; margin: 0 !important;}
.imageopen{display: none; margin: 0 !important;}
.activecatalogo .imgactive{display: none;}
.activecatalogo .imageopen{display: block;}

.texto-scroll{opacity: 0; transform: translateX(-50px);font-weight: 600; transition: all 0.3s ease;}

.sidebar-location .mapblockheader .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained {
    flex-direction: column;
    color: #000;
    text-align: left !important;
}

.sidebar-location .mapblockheader .wp-block-group__inner-container.is-layout-constrained.wp-block-group-is-layout-constrained p {
    text-align: left !important;
    font-size: 0.7em;
    line-height: 1;
    padding: 10px 0px;
    color: #fff;
}

.catalogobox{display: none;}

.catalogobox.open{display:block;}

.botonescatalogo .wp-block-button.active .wp-block-button__link, .botonescatalogo .wp-block-button:hover .wp-block-button__link{
    background-color: #000 !important;
    color: #fff !important;
}

.wp-block-kadence-googlemaps{
    padding: 0;
    margin: 0;
}

.wp-block-button__link img {
    position: absolute;
    bottom: 100%;
    left: 50%;
    width: 100% !important;
    height: auto;
    object-fit: cover;
    max-width: initial;
    transform: translate(-50%, 0%) scale(0.1);
    background-color: #fff;
    padding: 10px;
    border: 1px solid #000 !important;
    visibility: hidden;
    opacity: 0;
    transition: all .12s linear;
    -webkit-transition: all .12s linear;
    -moz-transition: all .12s linear;
    -o-transition: all .12s linear;
}

a.wp-block-button__link:hover img {
    visibility: visible;
    transform: translate(-50%, -10%) scale(1);
    opacity: 1;
}

a.wp-block-button__link:hover{
    opacity: 1 !important;
    background-color: #000 !important;
    color: #fff !important;
}

a.wp-block-button__link{
    position: relative;
}

.catalogosbloque a.wp-block-button__link, .catalogobuttonmobile a.wp-block-button__link{
    width: 200px;
}

.botonescatalogo a.wp-block-button__link {
    position: relative;
    text-transform: uppercase;
    font-size: 16px !important;
}

.botonescatalogo .wp-block-buttons>.wp-block-button {
    flex-grow: 1;
}

.mainwrappershow .wp-block-group:before {
    content: '';
    width: 100%;
    height: 150%;
    display: block;
    position: absolute;
    z-index: 0;
    top: -6px;
}

.proyectosimg a {
  position: relative;
  display: inline-block;
  padding-bottom: 4px; /* espacio para la línea */
}

.proyectosimg a::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  height: 2px;
  width: 0;
  background-color: #000; /* color de la línea */
  transition: width 0.3s ease;
}

.proyectosimg a:hover::after {
  width: 100%;
}

.swiper-button-prev:after{
    content: url(img/arrow-prevb.svg);
    width: 100%;
    height: 100%;
    left: 0;
    position: absolute;
            transition: all .2s linear;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
}

.swiper-button-prev:after, .wp-block-kadence-advancedgallery .kt-blocks-carousel .splide__arrow--prev:after, .carousel-prev:after {
    content: url(img/arrow-prevb.svg);
    width: 100%;
    height: 100%;
    left: 0;
    position: absolute;
            transition: all .2s linear;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
}

.swiper-button-prev:hover:after, .wp-block-kadence-advancedgallery .kt-blocks-carousel .splide__arrow--prev:hover:after{
    left: -116%;
}

.swiper-button-prev:before, .wp-block-kadence-advancedgallery .kt-blocks-carousel .splide__arrow--prev:before, .carousel-prev:before {
    content: url(img/svgviewer-outputb.svg);
    width: 100%;
    height: 100%;
    position: absolute;
}

.swiper-button-next:after, .wp-block-kadence-advancedgallery .kt-blocks-carousel .splide__arrow--next:after, .carousel-next:after{
    content: url(img/arrow-nextb.svg);
    width: 100%;
    height: 100%;
    left: -116%;
    position: absolute;
            transition: all .2s linear;
    -webkit-transition: all .2s linear;
    -moz-transition: all .2s linear;
    -o-transition: all .2s linear;
}

.swiper-button-next:hover:after, .wp-block-kadence-advancedgallery .kt-blocks-carousel .splide__arrow--next:hover:after {
    left:0;
}

.swiper-button-next:before, .wp-block-kadence-advancedgallery .kt-blocks-carousel .splide__arrow--next:before, .carousel-next:before{
    content: url(img/svgviewer-outputb.svg);
    width: 100%;
    height: 100%;
    position: absolute;
}

.carousel-prev:before, .carousel-next:before {
    top: 0;
    left: 0;
}

.carousel-prev:after, .carousel-next:after {
    top: 3px;
    left: 0;
}

.gspb_slider-id-gsbp-052782b .swiper-button-next, .gspb_slider-id-gsbp-052782b .swiper-button-prev {
    width: 36px !important;
    height: 36px !important;
    line-height: 36px !important;
}

.gspb_slider-id-gsbp-052782b .swiper-button-prev {
    overflow: hidden;
    top: 50%;
    left: 1%;
    backdrop-filter: blur(1px);
    background: rgba(0, 0, 0, 0.1);
}

.gspb_slider-id-gsbp-052782b .swiper-button-next {
    overflow: hidden;
    top: 50%;
    right: 35%;
    backdrop-filter: blur(1px);
    background: rgba(0, 0, 0, 0.1);
}

.kb-splide .splide__arrow {
    border: 0 !important;
    height: 36px !important;
    width: 36px !important;
    opacity: 1 !important;
    backdrop-filter: blur(1px);
    background: rgba(0, 0, 0, 0.1);
}

.kb-splide .splide__arrow:focus, .kb-splide .splide__arrow:hover {
    opacity: 1;
    background: rgba(0, 0, 0, 0.1);
}

.wp-block-kadence-advancedgallery .kt-blocks-carousel .splide__arrow--prev {
    left: 1%;
    top: 50%;
    overflow: hidden;
}

.wp-block-kadence-advancedgallery .kt-blocks-carousel .splide__arrow--next {
    right: 1%;
    top: 50%;
    overflow: hidden;
}

.kb-splide .splide__arrow svg {
    display: none !important;
}

#botonesgrid{
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(226px, 1fr));
    gap: 10px;
}

.catalogobox a:hover {
    opacity: 1;
}

.scroll-reveal-text span {
  display: inline-block;
  opacity: 0;
  transform: translateY(30px);
  filter: blur(8px);
}

.grid {
  position: relative;
}

.grid-sizer {
  width: 20%;
}

.grid-item {
  width: 20%;
  margin-bottom: 10px;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

.grid-item img {
  display: block;
  width: 100%;
  height: auto;
  cursor: pointer;
  transition: all 0.3s ease;
}

/* Expansión 2 columnas */
.grid-item.expanded-2 {
  width: 40%;
  z-index: 1;
}

/* Expansión 3 columnas */
.grid-item.expanded-3 {
  width: 60%;
  z-index: 1;
}

.grid-item.expanded-2 img,
.grid-item.expanded-3 img {
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.3);
}

div#content-news {
    display: block;
    padding: 100px 5%;
}

div#block-posts {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 2%;
    justify-content: flex-start;
}

.news-post {
    width: 24%;
    margin-bottom: 30px;
}

.news-post:first-child {
    width: 48%;
}

.image-show {
    display: block;
    margin-bottom: 16px;
    position: relative;
}

.image-show a {
    display: block;
    width: 100%;
    position: relative;
}

.image-show a:before {
    content: "";
    padding-bottom: 100%;
    display: block;
}

.image-show a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

div#content-news h1 {
    padding: 30px 0;
}

.image-post {
    width: 100%;
    height: 45vh;
    position: relative;
}

.image-post img {
    width: 100%;
    position: absolute;
    height: 100%;
    object-fit: cover;
}

.column-title-post {
    padding: 50px 16% 10px 16%;
}

a.wp-block-social-link-anchor {
    font-size: 2.3em !important;
}

ul#menu-menu-footer a {
    font-size: 1.1em;
}

iframe#instagram-embed-0 {
    min-width: initial !important;
}

.kadence-blocks-gallery-item {
  /*opacity: 0;*/
  transition: all 0.6s ease;
}

.kadence-blocks-gallery-item.from-left {
  transform: translateX(-50px);
}

.kadence-blocks-gallery-item.from-right {
  transform: translateX(50px);
}

.kadence-blocks-gallery-item.visible {
  opacity: 1;
  transform: translateX(0);
}

.page-id-643 .wp-block-greenshift-blocks-image img{
    width: 100%;
}

.slider-content-zone {
    width: 100%;
}

.slider-content-zone img {
    width: 100%;
}

.catalogobuttonmobile{display: none;}

nav.navigation.post-navigation {
    width: 100%;
    padding: 0 5%;
    box-sizing: border-box;
}

.nav-links {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.scroll-down-indicator {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  animation: bounce 2s infinite;
}

@keyframes bounce {
  0%, 100% {
    transform: translateX(-50%) translateY(0);
    opacity: 0.6;
  }
  50% {
    transform: translateX(-50%) translateY(10px);
    opacity: 1;
  }
}

.entry-content li {
    list-style: none;
}

.entry-content li .wp-block-group {
    padding: 0 !important;
}

.wp-block-post-featured-image :where(img) {
    aspect-ratio: 9 / 13;
}

.wp-block-post-featured-image a {
    margin-bottom: 22px;
}


@media only screen and (max-width : 850px) {
footer#footer {
    display: flex;
    padding: 60px 20px 30px 20px;
    width: 100%;
}
h1 {
    font-size: 2em !important;
}

h2 {
    font-size: 1.6em !important;
}

ul#menu-menu-1 li a, ul#menu-contact li a {
    font-size: .5em;
}

.gspb_counter-id-gsbp-8def36a .gs-counter {
    font-size: 16rem;
}

.gspb_slider-id-gsbp-052782b .swiper-button-next {
    top: 35%;
    right: 1%;
}

.gspb_slider-id-gsbp-052782b .swiper-button-prev {
    top: 35%;
}

div#site-title {
    width: 50%;
}

.wrapper-ham {
    top: 0%;
    padding: 0;
}

nav#menu.abrircategorias, nav#menu.abrirmarcas {
    transform: translateX(-8rem);
}

nav#menu.abrircategorias.abrirrestaurante, nav#menu.abrircategorias.abrirhospitalidad, nav#menu.abrircategorias.abrirhabitacion, nav#menu.abrircategorias.abrirareas{
    transform: translateX(-20rem);
}

.news-post {
    width: 100%;
    margin-bottom: 30px;
}

div#content-news {
    padding: 0 5%;
}

.wp-block-button__link img {
    opacity: 1 !important;
    visibility: visible;
    transform: translate(-50%, -10%) scale(1);
}

.catalogosbloque {
    display: none;
}
.catalogobuttonmobile{display: block;}

.column-title-post {
    padding: 50px 5% 10px 5%;
}

.gspb_row #gspb_col-id-gsbp-a7ea3ba.gspb_row__col--12 {
    padding-top: 80px;
}

.menuproyectos {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.menuproyectos .proyectotext {
    margin-right: 10px;
}

.news-post:first-child {
    width: 100%;
}

}

@media only screen and (max-width: 1728px) {
    html {
        font-size: calc(0.19402985074626872rem + 0.7462686567164178vw);
    }
}
@media only screen and (max-width: 991px) {
    html {
        font-size: calc(-0.538783482142856984rem + 2.2321428571428568vw);
    }
}
@media only screen and (max-width: 767px) {
    html {
        font-size: calc(-0.002774151436031331rem + 3.43864229765013vw);
    }
}


@media (max-width: 768px) {
  .page-id-643 .wp-block-buttons {
    display: flex;
    overflow:inherit;
    position: relative;
  }

  .page-id-643 .wp-block-button {
    flex: 0 0 100%;
    display: none !important;
  }

  .page-id-643 .wp-block-button.active {
    display: block !important;
  }

    .carousel-prev, .carousel-next {
        background: transparent;
        border: none;
        padding: 10px 15px;
        font-size: 20px;
        cursor: pointer;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 2;
        overflow: hidden;
        height: 44px !important;
        width: 44px !important;
        backdrop-filter: blur(1px);
        background: rgba(0, 0, 0, 1);
    }

  .carousel-prev {
    left: -40px;
  }

  .carousel-next {
    right: -40px;
  }

  .page-id-643 .carousel-prev {
    left: -20px;
  }

  .page-id-643 .carousel-next {
    right: -20px;
  }
}

@media (min-width: 769px) {
  .page-id-643 .wp-block-button {
    display: block !important;
  }
}

@supports (-webkit-overflow-scrolling: touch) {
  #gspb_container-id-gsbp-d04b1f6.gspb_container, #gspb_container-id-gsbp-13feecb.gspb_container, #gspb_container-id-gsbp-45b59d5.gspb_container, #gspb_container-id-gsbp-872d371.gspb_container{
    background-attachment: scroll;
  }
}

/* Detecta Safari en iOS */
@supports (-webkit-touch-callout: none) {
  #gspb_container-id-gsbp-d04b1f6.gspb_container,
  #gspb_container-id-gsbp-13feecb.gspb_container,
  #gspb_container-id-gsbp-45b59d5.gspb_container,
  #gspb_container-id-gsbp-872d371.gspb_container {
    background-attachment: scroll !important;
  }
}


