/*  CSS GENERAL  */
/*  CSS GENERAL  */
/*  CSS GENERAL  */
/*  CSS GENERAL  */
/*  CSS GENERAL  

@font-face {
  font-family: "GT Walsheim Pro";
  src: url("fonts/GTWalsheimPro-Bold.eot");
  src: url("fonts/GTWalsheimPro-Bold.eot?#iefix") format("embedded-opentype"),
    url("fonts/GTWalsheimPro-Bold.woff2") format("woff2"),
    url("fonts/GTWalsheimPro-Bold.woff") format("woff"),
    url("fonts/GTWalsheimPro-Bold.ttf") format("truetype"),
    url("fonts/GTWalsheimPro-Bold.svg#GTWalsheimPro-Bold") format("svg");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GT Walsheim Pro";
  src: url("fonts/GTWalsheimPro-Medium.eot");
  src: url("fonts/GTWalsheimPro-Medium.eot?#iefix") format("embedded-opentype"),
    url("fonts/GTWalsheimPro-Medium.woff2") format("woff2"),
    url("fonts/GTWalsheimPro-Medium.woff") format("woff"),
    url("fonts/GTWalsheimPro-Medium.ttf") format("truetype"),
    url("fonts/GTWalsheimPro-Medium.svg#GTWalsheimPro-Medium") format("svg");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GT Walsheim Pro";
  src: url("fonts/GTWalsheimPro-Regular.eot");
  src: url("fonts/GTWalsheimPro-Regular.eot?#iefix") format("embedded-opentype"),
    url("fonts/GTWalsheimPro-Regular.woff2") format("woff2"),
    url("fonts/GTWalsheimPro-Regular.woff") format("woff"),
    url("fonts/GTWalsheimPro-Regular.ttf") format("truetype"),
    url("fonts/GTWalsheimPro-Regular.svg#GTWalsheimPro-Regular") format("svg");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "GT Walsheim Pro";
  src: url("fonts/GTWalsheimPro-Light.eot");
  src: url("fonts/GTWalsheimPro-Light.eot?#iefix") format("embedded-opentype"),
    url("fonts/GTWalsheimPro-Light.woff2") format("woff2"),
    url("fonts/GTWalsheimPro-Light.woff") format("woff"),
    url("fonts/GTWalsheimPro-Light.ttf") format("truetype"),
    url("fonts/GTWalsheimPro-Light.svg#GTWalsheimPro-Light") format("svg");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Reckless Neue";
  src: url("fonts/RecklessNeue-Bold.eot");
  src: url("fonts/RecklessNeue-Bold.eot?#iefix") format("embedded-opentype"),
    url("fonts/RecklessNeue-Bold.woff2") format("woff2"),
    url("fonts/RecklessNeue-Bold.woff") format("woff"),
    url("fonts/RecklessNeue-Bold.ttf") format("truetype"),
    url("fonts/RecklessNeue-Bold.svg#RecklessNeue-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Reckless Neue";
  src: url("fonts/RecklessNeue-SemiBold.eot");
  src: url("fonts/RecklessNeue-SemiBold.eot?#iefix") format("embedded-opentype"),
    url("fonts/RecklessNeue-SemiBold.woff2") format("woff2"),
    url("fonts/RecklessNeue-SemiBold.woff") format("woff"),
    url("fonts/RecklessNeue-SemiBold.ttf") format("truetype"),
    url("fonts/RecklessNeue-SemiBold.svg#RecklessNeue-SemiBold") format("svg");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Reckless Neue";
  src: url("fonts/RecklessNeue-Medium.eot");
  src: url("fonts/RecklessNeue-Medium.eot?#iefix") format("embedded-opentype"),
    url("fonts/RecklessNeue-Medium.woff2") format("woff2"),
    url("fonts/RecklessNeue-Medium.woff") format("woff"),
    url("fonts/RecklessNeue-Medium.ttf") format("truetype"),
    url("fonts/RecklessNeue-Medium.svg#RecklessNeue-Medium") format("svg");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Reckless Neue";
  src: url("fonts/RecklessNeue-Regular.eot");
  src: url("fonts/RecklessNeue-Regular.eot?#iefix") format("embedded-opentype"),
    url("fonts/RecklessNeue-Regular.woff2") format("woff2"),
    url("fonts/RecklessNeue-Regular.woff") format("woff"),
    url("fonts/RecklessNeue-Regular.ttf") format("truetype"),
    url("fonts/RecklessNeue-Regular.svg#RecklessNeue-Regular") format("svg");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Reckless Neue Book";
  src: url("fonts/RecklessNeue-Book.eot");
  src: url("fonts/RecklessNeue-Book.eot?#iefix") format("embedded-opentype"),
    url("fonts/RecklessNeue-Book.woff2") format("woff2"),
    url("fonts/RecklessNeue-Book.woff") format("woff"),
    url("fonts/RecklessNeue-Book.ttf") format("truetype"),
    url("fonts/RecklessNeue-Book.svg#RecklessNeue-Book") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}*/
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;
}
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-text-size-adjust: none;
  box-sizing: border-box;
  outline: none;
  backface-visibility: hidden;
  font-feature-settings: "liga" 0;
}
::-webkit-input-placeholder {
  color: #5c5a52;
  opacity: 1;
}
:-moz-placeholder {
  color: #5c5a52;
  opacity: 1;
}
::-moz-placeholder {
  color: #5c5a52;
  opacity: 1;
}
:-ms-input-placeholder {
  color: #5c5a52;
  opacity: 1;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  transition: background-color 5000s ease-in-out 0s;
  -webkit-text-fill-color: #e7e2cf !important;
}
::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
::-webkit-scrollbar-button {
  width: 0;
  height: 0;
}
::-webkit-scrollbar-thumb {
  border: none;
  border-radius: 0;
  background: #5c5a52;
}
::-webkit-scrollbar-thumb:active {
  background: #000000;
}
::-webkit-scrollbar-track {
  border: none;
  border-radius: 0;
  background: #e7e2cf;
}
::-webkit-scrollbar-track:active {
  background: #e7e2cf;
}
::-webkit-scrollbar-corner {
  background: transparent;
}
body {
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
  padding: 0;
  font-family: "GT Walsheim Pro", sans-serif;
  font-size: 62.5%;
  color: #5c5a52;
  background: #e7e2cf;
}
img {
  border: 0;
  outline: 0;
  transform-style: preserve-3d;
}
input,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="time"],
input[type="date"],
textarea,
select {
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  font-family: "GT Walsheim Pro", sans-serif;
  -webkit-appearance: none;
}
select[disabled] {
  opacity: 1;
}
form {
  margin: 0;
  padding: 0;
}
a {
  text-decoration: none;
}
ol,
ul {
  margin: 0 0 0 40px;
}
h1,
h2,
h3 {
  display: inherit;
  vertical-align: inherit;
  margin: 0;
  padding: 0;
  border: 0;
  font-family: inherit;
  font-size: 100%;
  font-weight: inherit;
  font-style: inherit;
  color: inherit;
  outline: 0;
}
.limpia {
  clear: both;
}
.uppercase {
  text-transform: uppercase;
}
.lowercase {
  text-transform: lowercase;
}
.centrar {
  text-align: center !important;
}
.oculto {
  display: none !important;
}
.invisible {
  opacity: 0;
  visibility: hidden;
}
.dialog {
  display: none;
}
.textos_js {
  display: none;
}
.contenedor {
  max-width: 1800px;
  margin: 0 auto;
  width: 95%;
}
.contenedorin {
  max-width: 1560px;
  margin: 0 auto;
  width: 95%;
}
@keyframes cargando {
  0%,
  40%,
  100% {
    transform: scaleY(0.5);
  }
  20% {
    transform: scaleY(1);
  }
}
.cargando {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 25;
}
.cargando .interior {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 50px;
  margin: 0 auto;
  text-align: center;
  z-index: 2;
  transform: translate(0, -50%);
}
.cargando .interior div {
  display: inline-block;
  vertical-align: middle;
  width: 5px;
  height: 100%;
  margin-left: 5px;
  background: #e7e2cf;
  animation: cargando 1.2s infinite ease-in-out;
}
.cargando .interior div:nth-of-type(1) {
  margin-left: 0;
}
.cargando .interior div:nth-of-type(2) {
  animation-delay: -1.1s;
}
.cargando .interior div:nth-of-type(3) {
  animation-delay: -1s;
}
.cargando .interior div:nth-of-type(4) {
  animation-delay: -0.9s;
}
.cargando .interior div:nth-of-type(5) {
  animation-delay: -0.8s;
}
.cargando .fondo {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.75);
  z-index: 1;
}
div.format_popup {
  max-width: 960px;
  margin: 0 auto;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  cursor: default !important;
  min-width: 260px;
}
div.format_popup .tit {
  font-family: "Reckless Neue", sans-serif;
  color: #5c5a52;
  margin-top: 0;
  font-weight: bold;
  max-width: 70%;
  text-transform: uppercase;
  font-size: 3.333em;
  line-height: 1.1;
  text-wrap: pretty;
}
div.format_popup h1,
div.format_popup h2,
div.format_popup h3,
div.format_popup h4,
div.format_popup h5 {
  font-weight: 500;
  font-size: 1.85em;
  color: #5c5a52;
  text-transform: uppercase;
  margin: 20px 0;
}
div.format_popup table,
div.format_popup ul,
div.format_popup ol,
div.format_popup p {
  font-size: 1.85em;
  margin-top: 15px;
  margin-left: 0;
  color: #5c5a52;
  font-weight: 500;
  line-height: 1.6;
  list-style: none;
}
div.format_popup p {
  text-align: justify;
}
div.format_popup b,
div.format_popup strong {
  font-weight: 900;
}
div.format_popup a {
  text-decoration: underline;
  color: #5c5a52;
  word-break: break-all;
  font-weight: 600;
}
div.format_popup.minified {
  max-width: 480px;
}
div.format_popup.legal {
  max-width: 1024px;
}
div.format_popup.legal p {
  text-align: justify;
}
div.format_popup ul ol,
div.format_popup ol ul,
div.format_popup ol ol,
div.format_popup ul ul {
  font-size: inherit;
}
div.format_popup li {
  background: url(../img/web/proximo.svg) top left no-repeat;
  background-size: 26px;
  padding-left: 30px;
}
div.format_popup .limit::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
div.format_popup table {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap;
}
div.format_popup tr:nth-of-type(odd) {
  background: #eee;
}
div.format_popup th {
  background: #333;
  color: white;
  font-weight: bold;
}
div.format_popup td,
div.format_popup th {
  padding: 6px;
  border: 1px solid #ccc;
  text-align: left;
}
.scroll_table {
  overflow: auto;
  max-width: 170vw;
  margin-top: 40px;
  margin-bottom: 40px;
}
.scroll_table::-webkit-scrollbar {
  width: 22px;
  height: 22px;
}
.scroll_table table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 40px;
  white-space: nowrap;
}
.scroll_table tr:nth-of-type(odd) {
  background: #ddd5b9;
}
.scroll_table th {
  background: #5c5a52;
  color: white;
  font-weight: bold;
}
.scroll_table td,
.scroll_table th {
  padding: 10px 45px;
  border: 0;
  text-align: left;
  white-space: nowrap;
}
.fancybox-thumbs__list a:before {
  border-color: black;
}
*[role="button"] {
  cursor: pointer;
}
#cookie-bar {
  display: none;
  position: fixed;
  bottom: 20px;
  left: 20px;
  right: 20px;
  max-width: 425px;
  padding: 20px;
  text-align: center;
  background: white;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.1);
  z-index: 50;
  border-radius: 10px;
}
html.loaded .transicion {
  transition: all 250ms linear;
}
html.loaded #cookie-bar {
  display: block;
  -webkit-animation: fade-in-bottom 0.6s cubic-bezier(0.39, 0.575, 0.565, 1)
    both;
  animation: fade-in-bottom 0.6s cubic-bezier(0.39, 0.575, 0.565, 1) both;
}
#cookie-bar p {
  margin: 0;
}
#cookie-bar p span {
  display: block;
  margin-bottom: 20px;
  font-size: 1.5em;
  font-weight: 500;
  line-height: 20px;
  color: #5c5a52;
}
#cookie-bar a {
  display: inline-block;
  vertical-align: middle;
  margin-top: 10px;
  padding: 0 20px;
  font-size: 1.667em;
  letter-spacing: 1px;
  line-height: 60px;
  text-align: center;
  text-transform: uppercase;
  font-weight: 900;
  color: #5c5a52;
  width: calc(50% - 10px);
  margin-right: 20px;
  text-decoration: none;
  border: 2px solid #e7e2cf;
  background: #e7e2cf;
  border-radius: 10px;
}
html.loaded #cookie-bar a {
  transition: all 200ms linear;
}
#cookie-bar a:last-child {
  margin-right: 0;
  color: #e7e2cf;
  background: #5c5a52;
  border: 2px solid #5c5a52;
}
@-webkit-keyframes fade-in-bottom {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fade-in-bottom {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}






















/*  CSS.CSS  */ /*  CSS.CSS  */ /*  CSS.CSS  */ /*  CSS.CSS  */ /*  CSS.CSS  */ /*  CSS.CSS  */

.cabecera {
  position: absolute;
  top: 10px;
  left: 0;
  right: 0;
  z-index: 5;
}
.cabecera .izquierda {
  float: left;
}
.cabecera .izquierda .logo {
  display: block;
  max-width: 250px;
}
.cabecera .izquierda .logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.cabecera .derecha {
  float: right;
}
.cabecera .derecha ul {
  margin: 0;
  padding: 0;
  padding-top: 50px;
}
.cabecera .derecha ul li {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 70px;
}
.cabecera .derecha ul li a:after,
.cabecera .derecha ul li a:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: 0;
  height: 1px;
  background: #e7e2cf;
  transition: all linear 300ms;
}
.cabecera .derecha ul li a:before {
  bottom: 13px;
  transform: rotate(-24.5deg);
}
.cabecera .derecha ul li.sel a:after,
.cabecera .derecha ul li.sel a:before {
  top: 13px;
  left: 10px;
  bottom: unset;
  transform: rotate(24.5deg);
  width: 105px;
}
.cabecera .derecha ul li.sel a:before {
  transform: rotate(-24.5deg);
}
.cabecera .derecha ul li:nth-child(2).sel a:after {
  transform: rotate(24.5deg) translate(-40px, 15px);
}
.cabecera .derecha ul li:nth-child(2).sel a:before {
  transform: rotate(-24.5deg) translate(-40px, -20px);
}
.cabecera .derecha ul li:nth-child(3).sel a:after,
.cabecera .derecha ul li:nth-child(3).sel a:before {
  left: 0;
}
.cabecera .derecha ul li:nth-child(4).sel a:after {
  transform: rotate(24.5deg) translate(-35px, 15px);
}
.cabecera .derecha ul li:nth-child(4).sel a:before {
  transform: rotate(-24.5deg) translate(-35px, -15px);
}
.cabecera .derecha ul li:nth-child(6).sel a:after {
  transform: rotate(24.5deg) translate(-22px, 10px);
}
.cabecera .derecha ul li:nth-child(6).sel a:before {
  transform: rotate(-24.5deg) translate(-22px, -10px);
}
.cabecera .derecha ul li:last-child {
  margin-right: 0;
}
.cabecera .derecha ul li a {
  position: relative;
  display: block;
  font-size: 1.85em;
  font-weight: 300;
  line-height: 1.3;
  color: #e7e2cf;
}
.boton {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-top: 40px;
  padding: 0 50px;
  border-radius: 10px;
  font-size: 1.65em;
  height: 60px;
  line-height: 61px;
  letter-spacing: 0.05em;
  color: #e7e2cf;
  box-shadow: 0 0 0 1.5px #e7e2cf inset;
}
.menu_ham {
  display: none;
}
/*  CABECERA  */


















/*  HERO  *//*  HERO  *//*  HERO  *//*  HERO  *//*  HERO  *//*  HERO  *//*  HERO  */

.banners {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.banners .banner {
  position: relative;
  height: calc(var(--vh, 1vh) * 100);
  min-height: 800px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  animation: cambiarFondo 48s infinite ease-in-out;
  transition: background-image 2s ease-in-out;
  z-index: 1;
}

/* Overlay sutil oscuro */
.banners .banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  z-index: 1;
}

/* Texto */
.banners .banner .texto {
  position: absolute;
  bottom: 175px;
  left: 0;
  right: 0;
  z-index: 2;
}

.banners .banner .texto .subtitulo {
  max-width: 750px;
  font-size: 1.85em;
  font-weight: 300;
  line-height: 1.3;
  color: #e7e2cf;
}

.banners .banner .texto .titulo {
  max-width: 1000px;
  margin-top: 10px;
  font-family: "Reckless Neue", sans-serif;
  font-size: 8.35em;
  line-height: 1.1;
  color: #e7e2cf;
}

/* ANIMACIÓN: 48s (8s por imagen aprox.) */
@keyframes cambiarFondo {
  0%, 16% {
    background-image: url("../img/hero/1.jpg");
  }
  17%, 32% {
    background-image: url("../img/hero/2.jpg");
  }
  33%, 48% {
    background-image: url("../img/hero/2.jpg");
  }
  49%, 64% {
    background-image: url("../img/hero/3.jpg");
  }
  65%, 80% {
    background-image: url("../img/hero/4.jpg");
  }
  81%, 99% {
    background-image: url("../img/hero/5.jpg");
  }
  100% {
    background-image: url("../img/hero/1.jpg");
  }
}


/* FIN HERO  *//* FIN HERO  *//* FIN HERO  */

@media (max-width: 768px) {
  /* Fuerza la altura del banner y del contenedor padre */
  .banners,
  .banners .banner {
    height: 70vh !important;
    min-height: 70vh !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
  }

  /* Centrado vertical, pero texto alineado a la izquierda */
  .banners .banner {
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    display: flex !important;
    align-items: center !important;   /* centra solo verticalmente */
    justify-content: flex-start !important; /* deja el texto a la izquierda */
  }

  /* Contenedor del texto */
  .banners .texto {
    width: 100%;
    max-width: 960px;
    padding: 1rem 1.5rem;  /* margen interno lateral */
    box-sizing: border-box;
    text-align: left;      /* asegura alineación a la izquierda */
  }

  .banners .titulo {
    font-size: clamp(1.4rem, 4.5vw, 2rem);
    margin: 0.25rem 0;
  }
}








/*  INTRO  *//*  INTRO  *//*  INTRO  *//*  INTRO  */
.introduccion {
  position: relative;
  margin-top: -100px;
  padding-bottom: 48px;
  font-size: 2em;
  font-weight: 300;
  line-height: 1.3;
  text-align: right;
  color: #e7e2cf;
  z-index: 2;
}
.introduccion p {
  margin: 0;
}
.introduccion strong {
  font-weight: 500;
}
/*  FIN INTRO  *//*  FIN INTRO  *//*  FIN INTRO  */







/*  MITADES  *//*  MITADES  *//*  MITADES  *//*  MITADES  */
.mitades .mitad {
  position: relative;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  min-height: 850px;
}
.mitades .mitad:nth-of-type(even) {
  background: #ddd5b9;
}
.mitades .mitad .texto {
  position: absolute;
  top: 50%;
  left: 0;
  width: 50%;
  padding: 0 125px;
  text-align: center;
  transform: translate(0, -50%);
}
.mitades .mitad:nth-of-type(even) .texto {
  left: auto;
  right: 0;
}
.mitades .mitad .texto .logo {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 250px;
}
.mitades .mitad .texto .logo img {
  display: block;
  max-width: 100%;
  max-height: 100%;
  height: auto;
  width: auto;
}
.mitades .mitad .texto .titulo {
  position: relative;
  display: block;
  margin-top: 90px;
  font-family: "Reckless Neue", sans-serif;
  font-size: 3.35em;
  font-weight: 500;
  line-height: 40px;
  text-wrap: pretty;
}
.mitades .mitad .texto .titulo a,
.anuncio .texto .titulo a {
  text-decoration: none;
  color: currentColor;
}
.mitades .mitad .texto .titulo:before {
  content: "";
  position: absolute;
  top: 19.5px;
  left: 0;
  width: 200px;
  height: 1px;
  background: #5c5a52;
}
.mitades .mitad .texto .titulo:after {
  content: "";
  position: absolute;
  top: 19.5px;
  right: 0;
  width: 200px;
  height: 1px;
  background: #5c5a52;
}
.mitades .mitad .texto .descripcion {
  margin-top: 40px;
  font-size: 3.35em;
  line-height: 1.6;
}
.mitades .mitad .texto .descripcion p {
  margin: 0;
}
.mitades .mitad .texto .descripcion strong {
  font-weight: 600;
}
.mitades .mitad .texto .botones {
  position: relative;
  margin-top: 60px;
}
.mitades .mitad .texto .botones:before {
  content: "";
  position: absolute;
  top: 29.5px;
  left: 0;
  width: 200px;
  height: 1px;
  background: #5c5a52;
}
.mitades .mitad .texto .botones:after {
  content: "";
  position: absolute;
  top: 29.5px;
  right: 0;
  width: 200px;
  height: 1px;
  background: #5c5a52;
}
.mitades .mitad .texto .botones .boton {
  color: #5c5a52;
  box-shadow: 0 0 0 1.5px #5c5a52 inset;
}
.mitades .mitad .secundarias {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 50%;
}
.mitades .mitad:nth-of-type(even) .secundarias {
  left: 0;
  right: auto;
}
.mitades .mitad .secundarias .imagen {
  position: absolute;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.mitades .mitad .secundarias .imagen:nth-of-type(1) {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
.mitades .mitad .secundarias .imagen:nth-of-type(2) {
  top: 0;
  width: 185px;
  height: 185px;
  left: -92px;
}
.mitades .mitad:nth-of-type(even) .secundarias .imagen:nth-of-type(2) {
  left: unset;
  right: -92px;
}



/*  FIN MITADES  *//*  FIN MITADES  *//*  FIN MITADES  *//*  FIN MITADES  */






.secundarias {
  position: relative;
  overflow: hidden; /* asegura que el gradiente no sobresalga */
}

.secundarias::after {
  content: "";
  position: absolute;
  bottom: -20px; /* baja un poco más para suavizar la transición */
  left: 0;
  width: 100%;
  height: 150px; /* aumentado para extender el fundido hacia arriba */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, #252525 100%);
  z-index: 2;
  pointer-events: none;
}

/* Para el inicio del bloque .anuncio */
.anuncio {
  position: relative;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.anuncio::before {
  content: "";
  position: absolute;
  top: -40px; /* subimos el inicio del gradiente más arriba */
  left: 0;
  width: 100%;
  height: 120px; /* más alto para un fundido más suave */
  background: linear-gradient(to top, rgba(37, 37, 37, 0) 0%, #252525 100%);
  z-index: 2;
  pointer-events: none;
}








/*  ANUNCIO  *//*  ANUNCIO  *//*  ANUNCIO  *//*  ANUNCIO  *//*  ANUNCIO  */
.anuncio {
  position: relative;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  min-height: 800px;
}
.anuncio:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: url("../img/web/luto.svg") no-repeat center;
  background-size: cover;
  z-index: 1;
}
.anuncio .texto {
  position: absolute;
  bottom: 175px;
  left: 0;
  right: 0;
  z-index: 2;
}
.anuncio .texto .titulo {
  display: block;
  max-width: 1000px;
  font-family: "Reckless Neue", sans-serif;
  font-size: 8.35em;
  line-height: 1.1;
  color: #e7e2cf;
  text-wrap: pretty;
}
.anuncio .texto .subtitulo {
  display: block;
  max-width: 750px;
  margin-top: 10px;
  font-size: 1.85em;
  font-weight: 300;
  line-height: 1.3;
  color: #e7e2cf;
}
/*  FIN ANUNCIO  *//*  FIN ANUNCIO  *//*  FIN ANUNCIO  */










/*  FOOTER  *//*  FOOTER  *//*  FOOTER  *//*  FOOTER  */

.pie .superior {
  position: relative;
  padding: 50px 0;
}
.pie .superior .logo {
  display: block;
  max-width: 230px;
}
.pie .superior .logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.pie .superior .social {
  margin-top: 125px;
}
.pie .superior .social a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 50px;
  height: 50px;
  margin-right: 10px;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-position: center;
  background-color: #9e7b4b;
  background-size: 20px;
  border: 1px solid #9e7b4b;
  overflow: hidden;
  text-indent: -9999px;
}
.pie .superior .social a:last-child {
  margin-right: 0;
}
.pie .superior .social a.whatsapp {
  background-image: url("../img/icons/w.svg");
}
.pie .superior .social a.instagram {
  background-image: url("../img/icons/instagram_w.svg");
}
.pie .superior .social a.facebook {
  background-image: url("../img/icons/f.svg");
  color: #ffffff;
}
.pie .superior .social a.twitter {
  background-image: url("../img/web/twitter_w.svg");
}
.pie .superior ul {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: 0;
  padding: 0;
  transform: translate(-50%, -50%);
}
.pie .superior ul li {
  display: block;
}
.pie .superior ul li a {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-size: 5.85em;
  font-weight: 500;
  line-height: 50px;
  color: #5c5a52;
}
.pie .superior ul li.sel a {
  font-weight: 600;
}
.pie .medio {
  padding-bottom: 30px;
}
.pie .medio .izquierda {
  float: left;
}
.pie .medio .izquierda ul {
  margin: 0;
  padding: 0;
}
.pie .medio .izquierda ul li {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 35px;
  color: #5c5a52;
  font-size: 1.25em;
  font-weight: 300;
}
.pie .medio .izquierda ul li:last-child {
  margin-right: 0;
}
.pie .medio .izquierda ul li a,
.pie .medio .derecha ul li a {
  text-decoration: none;
  line-height: 44px;
  color: currentColor;
}
.pie .medio .izquierda ul li a:after {
  content: "";
  position: absolute;
  bottom: 12px;
  left: 0;
  right: 0;
  height: 1px;
  background: #5c5a52;
  transition: all linear 300ms;
  transform: scale(0, 0);
}
.pie .medio .izquierda ul li.sel a:after {
  transform: scale(1);
}
.pie .medio .derecha {
  float: right;
}
.pie .medio .derecha ul {
  margin: 0;
  padding: 0;
}
.pie .medio .derecha ul li {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-right: 35px;
  font-size: 1.25em;
  font-weight: 300;
  color: #5c5a52;
}
.pie .medio .derecha ul li:last-child {
  margin-right: 0;
}
.pie .inferior {
  padding: 22.5px 0;
  background: #5c5a52;
}
.pie .medio .derecha ul li span {
  line-height: 1.6;
}
.pie .inferior .copyright {
  display: block;
  float: left;
  font-size: 1.25em;
  font-weight: 300;
  line-height: 15px;
  color: #e7e2cf;
}
.pie .inferior .sgm {
  display: block;
  float: right;
  font-size: 1.25em;
  font-weight: 300;
  line-height: 15px;
  color: #e7e2cf;
}
.acces {
  font-size: 1.3em;
  font-weight: 600;
  color: black;
  text-transform: uppercase;
  text-align: center;
  padding: 20px;
  padding-bottom: 0;
  background: white;
}
.acces a {
  color: currentcolor;
  display: inline-block;
  line-height: 44px;
}
.acces.sel a {
  text-decoration: underline;
  font-weight: 700;
}
.kit_digital {
  text-align: center;
  margin: 0 auto;
  padding: 20px;
  background: #ffffff;
}
.kit_digital img {
  display: block;
  width: auto;
  height: auto;
  max-width: 1280px;
  margin: 0 auto;
}
/* FIN FOOTER  *//* FIN FOOTER  *//* FIN FOOTER  *//* FIN FOOTER  *//* FIN FOOTER  */




















/*
.banners .banner.conten .luto,
.banners .banner.conten .granulado {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.4);
}
.banners .banner.conten .granulado {
  background: url("../img/web/granulado.svg") no-repeat center;
  background-size: cover;
  opacity: 0.7;
}
.presentacion {
  padding: 120px 0 95px;
}
.presentacion .texto {
  max-width: 65%;
  margin: 0 auto;
  text-align: center;
}
.presentacion .texto .logo {
  display: block;
  max-width: 180px;
  margin: 0 auto 20px;
}
.presentacion .texto .logo img,
.presentacion .imagenes .imagen .foto img,
.fondo .item-fondo .img .logo img,
.imagen.intro img,
.presentacion.contacto .imagen .foto img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
.foto {
  display: block;
  overflow: hidden;
}
.presentacion .texto .descripcion {
  font-family: "Reckless Neue Book", sans-serif;
  font-size: 3.333em;
  line-height: 1.5;
}
.presentacion .texto .subtitulo {
  font-size: 2.083em;
  line-height: 1.3;
  max-width: 45%;
  margin: 20px auto 0;
}
.presentacion .imagenes {
  position: relative;
  margin-top: 60px;
}
.presentacion .imagenes .imagen.principal {
  display: block;
  max-width: 400px;
  margin: 0 auto;
}
.presentacion .imagenes .imagen.sec {
  position: absolute;
  top: 170px;
  left: 30%;
  max-width: 300px;
}
.presentacion .imagenes .imagen:nth-child(3) {
  max-width: 340px;
  position: static;
  margin-top: 20px;
  margin-left: 17%;
}
.presentacion .imagenes .imagen:nth-child(4) {
  max-width: 280px;
  left: unset;
  top: unset;
  right: 370px;
  bottom: 0;
  transform: translateY(23px);
}
.presentacion.generico {
  padding: 120px 0 60px;
  background: #3c3c2f;
}
.presentacion.generico .texto .descripcion {
  color: #e7e2cf;
}
.fondo {
  position: relative;
  background: url("../img/web/bg-bl.png") no-repeat center;
  background-size: cover;
}
.fondo .item-fondo {
  height: 350px;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  border-bottom-right-radius: 60px;
  border-bottom-left-radius: 60px;
}
.fondo .item-fondo:before,
.presentacion.carta .categorias .imagen.intro .img:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
  border-bottom-right-radius: 60px;
  border-bottom-left-radius: 60px;
}
.fondo .item-fondo .img {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}
.fondo .item-fondo .img .logo {
  display: block;
  max-width: 250px;
  margin: 0 auto;
}
.presentacion.carta {
  position: relative;
  padding: 100px 0;
  background-repeat: repeat-y;
  background-position: top;
  background-size: contain;
}
.presentacion.carta .texto {
  max-width: none;
  margin: 0;
}
.presentacion.carta .categorias .imagen.intro .img {
  position: relative;
}
.presentacion.carta .texto .titulo,
.presentacion.contacto .texto .titulo,
.legal .texto .titulo {
  font-family: "Reckless Neue", sans-serif;
  font-size: 10em;
  line-height: 1;
  font-weight: 600;
  color: #e7e2cf;
}
.presentacion.carta .categorias {
  margin-top: 70px;
}
.presentacion.carta .categorias .categoria {
  margin-top: 90px;
}
.presentacion.carta .categorias .categoria:first-child {
  margin-top: 0;
}
.presentacion.carta .categorias .categoria .imagen.intro {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 60px;
}
.presentacion.carta .categorias .categoria .imagen.intro:before {
  background: rgba(0, 0, 0, 0.4);
  border-top-right-radius: 60px;
  border-top-left-radius: 60px;
}
.presentacion.carta .categorias .categoria .imagen.intro .texto {
  position: absolute;
  max-width: none;
  margin: 0;
  text-align: center;
  left: 350px;
  right: 350px;
  bottom: 60px;
  z-index: 2;
}
.presentacion.carta .categorias .categoria .imagen.intro .texto .subtitulo {
  font-family: "Reckless Neue", sans-serif;
  font-size: 7.5em;
  line-height: 1;
  font-weight: bold;
  color: #ffffff;
  max-width: none;
  margin: 0;
}
.presentacion.carta
  .categorias
  .categoria
  .imagen.intro
  .texto
  .subtitulo:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 30px;
  width: 100%;
  background: #5c5952;
  border-radius: 6px;
  bottom: 0;
  z-index: -1;
}
.presentacion.carta .categorias .categoria .platos {
  margin-top: 60px;
}
.presentacion.carta .categorias .categoria .platos .texto .titulo {
  position: relative;
  font-size: 5em;
  font-weight: 500;
  line-height: 1.1;
}
.presentacion.carta .categorias .categoria .platos .texto {
  max-width: 60%;
  margin: 0 auto;
}
.presentacion.carta .categorias .categoria .platos .texto .titulo:before {
  content: "";
  position: absolute;
  left: 135px;
  right: 135px;
  bottom: 0;
  transform: translateY(25px);
  border-bottom: 5px dotted #e7e2cf;
}
.presentacion.carta .categorias .categoria .platos .texto .plato {
  margin-top: 25px;
}
.presentacion.carta .categorias .categoria .platos .texto .plato:nth-child(2) {
  margin-top: 80px;
}
.presentacion.carta .categorias .categoria .platos .texto .plato .nombre,
.presentacion.carta .categorias .categoria .platos .texto .plato .precio {
  font-family: "Reckless Neue", sans-serif;
  font-size: 3.333em;
  line-height: 1.3;
  font-weight: 500;
  color: #e7e2cf;
}
.presentacion.carta .categorias .categoria .platos .texto .plato .precio {
  font-size: 4.167em;
  margin-top: 10px;
}
.presentacion.contacto {
  padding: 100px 0;
}
.presentacion.contacto .texto {
  text-align: left;
  max-width: none;
  margin: 0;
  position: relative;
  display: inline-block;
  vertical-align: top;
  width: calc(55% - 30px);
  margin-right: 120px;
}
.presentacion.contacto .imagen {
  display: inline-block;
  position: relative;
  vertical-align: top;
  width: calc(45% - 90px);
}
.presentacion.contacto .texto .titulo {
  font-size: 5em;
}
.presentacion.contacto .texto .descripcion {
  font-size: 2.083em;
  margin-top: 40px;
}
.presentacion.contacto .texto .iconos {
  margin-top: 60px;
}
.presentacion.contacto .texto .iconos div {
  font-size: 2.083em;
  padding: 2px 0 2px 40px;
  margin-bottom: 25px;
  line-height: 1.6;
  background-size: 26px;
  color: #e7e2cf;
}
.presentacion.contacto .texto .iconos div:last-child {
  margin-bottom: 0;
}
.presentacion.contacto .texto .iconos div a {
  color: currentColor;
  text-decoration: none;
}
.presentacion.contacto .texto .iconos .direccion {
  background-image: url(../img/web/direccion.svg);
  background-repeat: no-repeat;
  background-position: center left;
}
.presentacion.contacto .texto .iconos .telefono {
  background-image: url(../img/web/telefono.svg);
  background-repeat: no-repeat;
  background-position: center left;
}
.presentacion.contacto .texto .iconos .email {
  background-image: url(../img/web/email.svg);
  background-repeat: no-repeat;
  background-position: center left;
}




.contacto .inferior {
  margin-top: 100px;
}
.contacto .inferior .mapa {
  position: relative;
  display: inline-block;
  vertical-align: top;
  width: calc(50% - 50px);
  margin-right: 80px;
}
.contacto .inferior .mapa iframe {
  display: block;
  width: 100%;
  height: calc(100vh);
  height: calc(var(--vh, 1vh) * 100);
  max-height: 770px;
}
.contacto .formulario {
  position: relative;
  display: inline-block;
  vertical-align: top;
  width: calc(50% - 30px);
  padding: 20px 0;
}
.contacto .formulario .titulo {
  font-family: "Reckless Neue", sans-serif;
  font-size: 5em;
  line-height: 1;
  margin-bottom: 40px;
  font-weight: bold;
  color: #e7e2cf;
  display: block;
}
.contacto .formulario form .campos .campo {
  position: relative;
  margin-top: 20px;
}
.contacto .formulario form .campos .campo:first-child {
  margin-top: 0;
}
.contacto .formulario form .campos .campo:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: #e7e2cf;
}
.contacto .formulario form .campos .campo label {
  font-family: "Reckless Neue", sans-serif;
  display: block;
  font-size: 2.5em;
  font-weight: 600;
  color: #e7e2cf;
  text-transform: uppercase;
  pointer-events: none;
}
.campo input {
  display: block;
  width: 100%;
  height: 60px;
  font-size: 2.083em;
  line-height: 30px;
  background: transparent;
  padding: 15px 20px 0 0;
  font-weight: 400;
  color: #e7e2cf;
}
.campo textarea {
  background: transparent;
  font-size: 2.083em;
  height: 160px;
  line-height: 1.3;
  padding-top: 20px;
  padding-right: 20px;
  width: 100%;
  resize: none;
  font-weight: 400;
  color: #e7e2cf;
}
.contacto .formulario form .checks {
  margin-top: 20px;
  display: inline-block;
  vertical-align: top;
  position: relative;
  float: left;
}
.contacto .formulario form .checks .check {
  position: relative;
  display: block;
  font-size: 2.083em;
  line-height: 25px;
  text-align: left;
  color: #e7e2cf;
  font-weight: 400;
}
.contacto .formulario form .checks .check label {
  position: relative;
  display: block;
  padding-left: 35px;
  cursor: pointer;
}
.contacto .formulario form .checks .check label:before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  height: 20px;
  width: 20px;
  box-shadow: 0 0 0 1px #e7e2cf inset;
}
.contacto
  .formulario
  form
  .checks
  .check
  input[type="checkbox"]:checked
  + label:after {
  content: "";
  position: absolute;
  top: 7px;
  left: 4px;
  height: 12px;
  width: 12px;
  background: #e7e2cf;
}
.contacto .formulario form .checks .check label a {
  text-decoration: underline;
}
.contacto .formulario form .botones {
  text-align: right;
  display: inline-block;
  position: relative;
  vertical-align: top;
  margin-top: 30px;
  float: right;
}
.contacto .formulario form .botones .boton {
  margin-top: 0;
  font-size: 1.85em;
}
.presentacion.legal .texto {
  max-width: none;
  margin: 0;
  text-align: left;
}
.presentacion.legal .texto .descripcion {
  font-family: "GT Walsheim Pro", sans-serif;
  font-size: 1.85em;
}
.legal .texto .titulo {
  color: #5c5a52;
  font-size: 5em;
}
.legal .texto .descripcion {
  margin-top: 40px;
}



.presentacion .texto .descripcion p {
  margin: 0;
  margin-bottom: 20px;
}
.presentacion .texto .descripcion h2,
.presentacion .texto .descripcion h3,
.presentacion .texto .descripcion h4 {
  font-size: 1.6em;
  font-weight: bold;
  margin-bottom: 20px;
}
.presentacion .texto .descripcion p strong {
  font-weight: 600;
}
.presentacion .texto .descripcion p:last-child {
  margin-bottom: 0;
}
.presentacion .texto .descripcion a {
  color: currentColor;
  text-decoration: underline;
}
.legal .texto .descripcion a {
  word-break: break-all;
}
.legal .texto .descripcion ul,
.legal .texto .descripcion ol {
  margin: 0;
  margin-bottom: 20px;
  margin-left: 40px;
}
*/





































/*  HOVERS  */ /*  HOVERS  */ /*  HOVERS  */ /*  HOVERS  */ /*  HOVERS  */ /*  HOVERS  */ /*  HOVERS  */

@media (hover: hover) {
  .pie .medio .izquierda ul li a:hover:after {
    transform: scale(1);
  }
  .pie .superior .social a.whatsapp:hover {
    background-image: url(../img/web/whatsapp_br.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-color: #e7e2cf;
  }
  .pie .superior .social a.facebook:hover {
    background-image: url(../img/web/facebook_br.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-color: #e7e2cf;
  }
  .pie .superior .social a.instagram:hover {
    background-image: url(../img/web/instagram_br.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-color: #e7e2cf;
  }
  .pie .superior ul li a:hover {
    opacity: 0.7;
  }
  .boton:hover {
    background: #e7e2cf;
    color: #5c5a52;
  }
  .mitades .mitad .texto .botones .boton:hover {
    background: #5c5a52;
    color: #e7e2cf;
  }
  .mitades .mitad:nth-of-type(even) .texto .botones .boton:hover {
    color: #ddd5b9;
  }
  .foto:hover img {
    transform: scale(1.05);
  }
  .presentacion.contacto .texto .iconos div a:hover,
  .contacto .formulario form .checks .check label a:hover {
    opacity: 0.6;
  }
  .cabecera .derecha ul li:not(.sel) a:hover:after {
    width: 100%;
  }
  .cabecera .derecha ul li.sel a:hover:after {
    transform: rotate(24.5deg) scale(0.9);
  }
  .cabecera .derecha ul li.sel a:hover:before {
    transform: rotate(-24.5deg) scale(0.9);
  }
  .cabecera .derecha ul li.sel:nth-child(2) a:hover:after {
    transform: rotate(24.5deg) translate(-40px, 15px) scale(0.9);
  }
  .cabecera .derecha ul li.sel:nth-child(2) a:hover:before {
    transform: rotate(-24.5deg) translate(-40px, -20px) scale(0.9);
  }
  .cabecera .derecha ul li.sel:nth-child(4) a:hover:after {
    transform: rotate(24.5deg) translate(-35px, 15px) scale(0.9);
  }
  .cabecera .derecha ul li.sel:nth-child(4) a:hover:before {
    transform: rotate(-24.5deg) translate(-35px, -15px) scale(0.9);
  }
  .cabecera .derecha ul li.sel:nth-child(6) a:hover:after {
    transform: rotate(24.5deg) translate(-22px, 10px) scale(0.9);
  }
  .cabecera .derecha ul li.sel:nth-child(6) a:hover:before {
    transform: rotate(-24.5deg) translate(-22px, -10px) scale(0.9);
  }
  #cookie-bar a:hover {
    background: #5c5a52;
    border: 2px solid #5c5a52;
    color: #e7e2cf;
  }
  #cookie-bar a:last-child:hover {
    color: #5c5a52;
    background: transparent;
  }
}


































/*  RESPONSIVE  */ /*  RESPONSIVE  */ /*  RESPONSIVE  */ /*  RESPONSIVE  */ /*  RESPONSIVE  */ /*  RESPONSIVE  */

@media (max-width: 1800px) {
  .mitades .mitad .texto {
    padding: 0 94px;
  }
  .presentacion.nosotros .texto {
    max-width: 70%;
  }
  .presentacion .imagenes .imagen:nth-child(3) {
    margin-left: 13%;
  }
  .presentacion .imagenes .imagen:nth-child(4) {
    right: 250px;
  }
  .kit_digital {
    max-width: none;
  }
}
@media (max-width: 1679px) {
  .banners .banner .texto .titulo,
  .anuncio .texto .titulo {
    font-size: 7.5em;
  }
  .banners .banner {
    min-height: 700px;
  }
  .presentacion.carta .categorias .categoria .platos .texto .titulo,
  .legal .texto .titulo,
  .presentacion.contacto .texto .titulo,
  .contacto .formulario .titulo {
    font-size: 4.5em;
  }
  .mitades .mitad .texto {
    padding: 0 90px;
  }
  .mitades .mitad .texto .logo {
    max-width: 200px;
  }
  .mitades .mitad .texto .titulo {
    margin-top: 70px;
  }
  .mitades .mitad .texto .titulo,
  .mitades .mitad .texto .descripcion,
  .presentacion.nosotros .texto .descripcion,
  .presentacion.carta .categorias .categoria .platos .texto .plato .nombre {
    font-size: 2.75em;
  }
  .presentacion.carta .categorias .categoria .platos .texto .plato .precio {
    font-size: 3.5em;
  }
  .mitades .mitad .texto .titulo:before,
  .mitades .mitad .texto .titulo:after,
  .mitades .mitad .texto .botones:before,
  .mitades .mitad .texto .botones:after {
    width: 150px;
  }
  .presentacion .imagenes .imagen.principal {
    max-width: 350px;
  }
  .presentacion .imagenes .imagen:nth-child(2) {
    left: 23%;
  }
  .presentacion .imagenes .imagen:nth-child(3) {
    margin-left: 10%;
  }
  .presentacion .imagenes .imagen:nth-child(4) {
    right: 180px;
  }
  .presentacion.carta .texto .titulo {
    font-size: 8em;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto .subtitulo {
    font-size: 7em;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto {
    left: 300px;
    right: 300px;
  }
  .cabecera .izquierda .logo,
  .fondo .item-fondo .img .logo {
    max-width: 225px;
  }
  .presentacion.contacto .texto {
    margin-right: 80px;
  }
  .presentacion.contacto .imagen {
    width: calc(45% - 50px);
  }
  .contacto .inferior {
    margin-top: 80px;
  }
  .pie .superior ul li a {
    font-size: 5.35em;
  }
}
@media (max-width: 1439px) {
  .banners .banner .texto .titulo,
  .anuncio .texto .titulo {
    font-size: 7em;
  }
  .presentacion.carta .texto .titulo {
    font-size: 7.5em;
  }
  .banners .banner .texto .titulo {
    max-width: 925px;
  }
  .mitades .mitad .texto {
    padding: 0 74px;
  }
  .mitades .mitad .texto .titulo:before,
  .mitades .mitad .texto .titulo:after,
  .mitades .mitad .texto .botones:before,
  .mitades .mitad .texto .botones:after {
    width: 140px;
  }
  .pie .superior ul {
    top: 55%;
  }
  .pie .superior ul li a {
    font-size: 5em;
    line-height: 45px;
  }
  .presentacion.nosotros,
  .presentacion.legal {
    padding: 100px 0 95px;
  }
  .presentacion.nosotros .texto {
    max-width: 75%;
  }
  .presentacion .imagenes .imagen:nth-child(3) {
    margin-left: 7%;
  }
  .presentacion .imagenes .imagen:nth-child(4) {
    right: 140px;
  }
  .anuncio {
    min-height: 700px;
  }
  .presentacion.carta .categorias .categoria .platos .texto {
    max-width: 65%;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto .subtitulo {
    font-size: 6.5em;
  }
  .presentacion.carta .categorias .categoria .platos .texto .titulo,
  .legal .texto .titulo,
  .presentacion.contacto .texto .titulo,
  .contacto .formulario .titulo {
    font-size: 4em;
  }
  .presentacion.contacto .texto,
  .contacto .inferior .mapa {
    margin-right: 50px;
  }
  .presentacion.contacto .imagen {
    width: calc(45% - 20px);
  }
  .contacto .formulario {
    width: 50%;
  }
  .kit_digital {
    padding: 10px;
  }
}
@media (max-width: 1365px) {
  .cabecera .derecha ul li {
    margin-right: 60px;
  }
  .banners .banner .texto .titulo,
  .anuncio .texto .titulo {
    font-size: 6.5em;
  }
  .banners .banner .texto .titulo,
  .anuncio .texto .titulo {
    max-width: 860px;
  }
  .mitades .mitad .texto .logo {
    max-width: 180px;
  }
  .mitades .mitad .texto .titulo {
    margin-top: 50px;
  }
  .mitades .mitad .texto .titulo,
  .mitades .mitad .texto .descripcion,
  .presentacion.nosotros .texto .descripcion,
  .presentacion.carta .categorias .categoria .platos .texto .plato .nombre {
    font-size: 2.5em;
  }
  .mitades .mitad .texto .botones {
    margin-top: 40px;
  }
  .mitades .mitad {
    min-height: 800px;
  }
  .mitades .mitad .texto .titulo:before,
  .mitades .mitad .texto .titulo:after,
  .mitades .mitad .texto .botones:before,
  .mitades .mitad .texto .botones:after {
    width: 120px;
  }
  .boton {
    height: 55px;
    line-height: 56px;
    padding: 0 45px;
  }
  .anuncio .texto {
    bottom: 125px;
  }
  .presentacion .imagenes .imagen.principal {
    max-width: 300px;
  }
  .presentacion .imagenes .imagen:nth-child(2) {
    max-width: 260px;
    top: 100px;
  }
  .presentacion .imagenes .imagen:nth-child(3) {
    max-width: 300px;
  }
  .presentacion .imagenes .imagen:nth-child(4) {
    max-width: 240px;
    transform: translateY(10px);
  }
  .fondo .item-fondo {
    height: 300px;
  }
  .cabecera .izquierda .logo,
  .fondo .item-fondo .img .logo {
    max-width: 200px;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto {
    left: 250px;
    right: 250px;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto .subtitulo {
    font-size: 6em;
  }
  .presentacion.carta .categorias .categoria .platos .texto .plato .precio {
    margin-top: 5px;
  }
  .contacto .formulario form .campos .campo label {
    font-size: 2.083em;
  }
  .contacto .formulario form .checks .check,
  .campo input,
  .campo textarea {
    font-size: 1.85em;
  }
  .campo input {
    height: 48px;
    line-height: 48px;
  }
  .campo textarea {
    max-height: 100px;
    line-height: 1.3;
    padding-top: 0;
  }
  .pie .superior .logo {
    max-width: 200px;
  }
}
@media (max-width: 1279px) {
  .cabecera .derecha ul li {
    margin-right: 40px;
  }
  .cabecera .derecha ul li.sel:nth-child(2) a:after,
  .cabecera .derecha ul li.sel:nth-child(2) a:before,
  .cabecera .derecha ul li.sel:nth-child(4) a:after,
  .cabecera .derecha ul li.sel:nth-child(4) a:before {
    width: 70px;
    transform: rotate(24.5deg) translate(-30px, 12px);
    left: 13px;
  }
  .cabecera .derecha ul li.sel:nth-child(2) a:before,
  .cabecera .derecha ul li.sel:nth-child(4) a:before {
    transform: rotate(-24.5deg) translate(-29px, -14px);
  }
  .cabecera .derecha ul li.sel:nth-child(2) a:hover:before,
  .cabecera .derecha ul li.sel:nth-child(4) a:hover:before {
    transform: rotate(-24.5deg) translate(-29px, -14px) scale(0.9);
  }
  .cabecera .derecha ul li.sel:nth-child(2) a:hover:after,
  .cabecera .derecha ul li.sel:nth-child(4) a:hover:after {
    transform: rotate(24.5deg) translate(-30px, 12px) scale(0.9);
  }
  .cabecera .derecha ul li.sel:nth-child(4) a:after,
  .cabecera .derecha ul li.sel:nth-child(4) a:before {
    left: 22px;
  }
  .cabecera .derecha ul li.sel:nth-child(6) a:after,
  .cabecera .derecha ul li.sel:nth-child(6) a:before {
    width: 90px;
    left: 18px;
  }
  .cabecera .izquierda .logo,
  .fondo .item-fondo .img .logo {
    max-width: 180px;
  }
  .banners .banner .texto {
    bottom: 150px;
  }
  .banners .banner .texto .titulo,
  .anuncio .texto .titulo {
    font-size: 5.5em;
    line-height: 1;
    max-width: none;
  }
  .mitades .mitad .texto .descripcion,
  .presentacion.nosotros .texto .descripcion {
    font-size: 2.25em;
    line-height: 1.4;
  }
  .introduccion {
    text-align: left;
  }
  .mitades .mitad {
    min-height: 700px;
    max-height: 700px;
  }
  .mitades .mitad .secundarias .imagen:nth-of-type(2) {
    width: 150px;
    height: 150px;
    left: -75px;
  }
  .mitades .mitad .texto .titulo:before,
  .mitades .mitad .texto .titulo:after,
  .mitades .mitad .texto .botones:before,
  .mitades .mitad .texto .botones:after {
    width: 100px;
  }
  .mitades .mitad .texto {
    padding: 0 40px;
  }
  .banners .banner {
    min-height: 600px;
  }
  .anuncio {
    max-height: 600px;
    min-height: 600px;
  }
  .pie .superior .social {
    margin-top: 90px;
  }
  .pie .superior ul {
    top: 53%;
    left: unset;
    right: 0;
    transform: translate(0, -50%);
  }
  .pie .medio .izquierda,
  .pie .medio .derecha {
    float: none;
    text-align: center;
  }
  .pie .superior {
    padding: 50px 0 30px;
  }
  .pie .superior ul li {
    text-align: right;
  }
  .pie .superior ul li a {
    font-size: 4.5em;
  }
  .presentacion.nosotros,
  .presentacion.legal,
  .presentacion.carta,
  .presentacion.contacto {
    padding: 80px 0;
  }
  .presentacion.nosotros .texto {
    max-width: 80%;
  }
  .presentacion .imagenes .imagen:nth-child(2) {
    left: 18%;
  }
  .presentacion .imagenes .imagen:nth-child(3) {
    margin-left: 0;
  }
  .presentacion .imagenes .imagen:nth-child(4) {
    right: 50px;
  }
  .anuncio .texto {
    bottom: 100px;
  }
  .anuncio .texto .subtitulo {
    max-width: none;
    margin-top: 20px;
  }
  .fondo .item-fondo {
    height: 275px;
  }
  .presentacion.carta .texto .titulo {
    font-size: 7em;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto .subtitulo {
    font-size: 5.5em;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto {
    left: 175px;
    right: 175px;
  }
  .presentacion.carta
    .categorias
    .categoria
    .imagen.intro
    .texto
    .subtitulo:before {
    height: 25px;
  }
  .presentacion.contacto .texto .descripcion {
    font-size: 1.85em;
  }
  .presentacion.contacto .texto,
  .contacto .inferior .mapa {
    margin-right: 20px;
  }
  .contacto .inferior .mapa {
    width: calc(50% - 20px);
  }
  .presentacion.contacto .imagen {
    width: calc(45% + 10px);
  }
  .contacto .formulario form .checks,
  .contacto .formulario form .botones {
    float: none;
  }
  .presentacion.carta .categorias .categoria .platos .texto {
    max-width: 70%;
  }
  .presentacion .texto .descripcion h2,
  .presentacion .texto .descripcion h3,
  .presentacion .texto .descripcion h4 {
    font-size: 1.3em;
    line-height: 1.2;
  }
}
@media (max-width: 1023px) {
  .banners .banner {
    max-height: 50vh;
    min-height: 450px;
  }
  .cabecera .izquierda .logo,
  .fondo .item-fondo .img .logo {
    max-width: 150px;
  }
  .cabecera .derecha {
    margin-right: 70px;
  }
  .cabecera .derecha ul {
    padding-top: 12px;
  }
  .cabecera .derecha ul li:first-child,
  .cabecera .derecha ul li:nth-child(2),
  .cabecera .derecha ul li:nth-child(3),
  .cabecera .derecha ul li:nth-child(4) {
    display: none;
  }
  .banners .banner .texto {
    bottom: 100px;
  }
  .banners .banner .texto .titulo,
  .anuncio .texto .titulo {
    font-size: 4.5em;
  }
  .banners .banner .texto .subtitulo {
    max-width: none;
  }
  .introduccion {
    font-size: 1.667em;
    margin-top: -80px;
    padding-bottom: 37px;
  }
  .mitades .mitad {
    height: auto;
    max-height: unset;
    min-height: unset;
  }
  .mitades .mitad .texto {
    position: static;
    transform: none;
    width: auto;
    padding: 60px 20px 80px;
  }
  .mitades .mitad .secundarias,
  .mitades .mitad:nth-of-type(even) .secundarias {
    position: relative;
    top: unset;
    bottom: unset;
    right: unset;
    left: unset;
    width: auto;
  }
  .mitades .mitad .secundarias .imagen:nth-of-type(2),
  .mitades .mitad:nth-of-type(even) .secundarias .imagen:nth-of-type(2) {
    top: 0 !important;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform: translateY(-40px);
  }
  .mitades .mitad .secundarias .imagen:nth-of-type(1) {
    position: static;
    display: block;
    padding-top: 50%;
  }
  .mitades .mitad .texto .titulo:before,
  .mitades .mitad .texto .botones:before {
    left: 100px;
    width: 150px;
  }
  .mitades .mitad .texto .titulo:after,
  .mitades .mitad .texto .botones:after {
    right: 100px;
    width: 150px;
  }
.menu_ham {
    display: block;
    color: #e7e2cf;
    border: none;
    position: absolute; /* ahora sí podemos usar top/right */
    top: 0;             /* esquina superior */
    right: 0;           /* esquina derecha */
    height: 80px;
    width: 80px;
    z-index: 99;
    transition: all 0.5s ease-in-out;
    opacity: 1;
    visibility: visible;
    line-height: 1.8888rem;
    font-size: 1.6667rem;
    outline: none;
    border-width: 0;
    overflow: hidden;
    border-radius: 100%;
    text-indent: -9999px;
}
  .menu_ham .the_bars {
    height: 2px;
    width: 1.866666666666667rem;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: #e7e2cf;
    position: absolute;
    top: 50%;
    margin-top: -2px;
    -webkit-transition: none;
    transition: none;
  }
  .menu_ham .the_bars:before,
  .menu_ham .the_bars:after {
    content: "";
    position: absolute;
    height: 2px;
    left: 0;
    width: 1.866666666666667rem;
    background: #e7e2cf;
    transition-duration: 0.3s, 0.3s;
    -webkit-transition-duration: 0.3s, 0.3s;
    -moz-transition-duration: 0.3s, 0.3s;
    -ms-transition-duration: 0.3s, 0.3s;
    -o-transition-duration: 0.3s, 0.3s;
    transition-delay: 0.3s, 0s;
    -webkit-transition-delay: 0.3s, 0s;
    -ms-transition-delay: 0.3s, 0s;
    -moz-transition-delay: 0.3s, 0s;
    -o-transition-delay: 0.3s, 0s;
  }
  .menu_ham .the_bars:before {
    background: #e7e2cf;
    top: -8px;
    transition-property: top, -webkit-transform;
    transition-property: top, transform;
    transition-property: top, transform, -webkit-transform;
    -webkit-transition-property: top, -webkit-transform;
    -moz-transition-property: top, -moz-transform;
    -ms-transition-property: top, -ms-transform;
    -o-transition-property: top, -o-transform;
  }
  .menu_ham .the_bars:after {
    bottom: -8px;
    transition-property: bottom, -webkit-transform;
    transition-property: bottom, transform;
    transition-property: bottom, transform, -webkit-transform;
    -webkit-transition-property: bottom, -webkit-transform;
    -moz-transition-property: bottom, -moz-transform;
    -ms-transition-property: bottom, -ms-transform;
    -o-transition-property: bottom, -o-transform;
  }
  .menu_ham.on .the_bars {
    background-color: transparent;
  }
  .menu_ham.on .the_bars:before {
    max-width: unset;
    top: 0;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transition-delay: 0s, 0.3s;
    -webkit-transition-delay: 0s, 0.3s;
    -ms-transition-delay: 0s, 0.3s;
    -moz-transition-delay: 0s, 0.3s;
    -o-transition-delay: 0s, 0.3s;
    background-color: #e7e2cf;
  }
  .menu_ham.on .the_bars:after {
    bottom: 0;
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transition-delay: 0s, 0.3s;
    -webkit-transition-delay: 0s, 0.3s;
    -ms-transition-delay: 0s, 0.3s;
    -moz-transition-delay: 0s, 0.3s;
    -o-transition-delay: 0s, 0.3s;
    background-color: #e7e2cf;
  }

  .mm-spn.mm-spn--light {
    background: #ffffff;
  }
  .mm-spn.mm-spn--navbar:after {
    font-family: "Reckless Neue", sans-serif;
    font-size: 2.5em;
    font-weight: bold;
    opacity: 1;
    background: #e7e2cf;
    color: #5c5a52;
    text-transform: uppercase;
    letter-spacing: 1px;
  }
  .mm-spn.mm-spn--navbar:before {
    opacity: 1;
    z-index: 2;
  }
  #mmmenu ul li a {
    color: #5c5a52;
  }
  #mmmenu ul li.sel a,
  #mmmenu ul li ul li.sel a {
    font-weight: 600;
  }
  #mmmenu ul li.sel a {
    pointer-events: none;
  }
  .mm-spn .falso_link,
  .mm-spn a {
    font-size: 2.083em;
    font-weight: 500;
    color: #5c5a52;
  }
  .mm-spn .falso_link.sel {
    font-weight: 600;
  }
  :root {
    --mm-spn-item-height: 60px;
  }
  .anuncio {
    max-height: 500px;
    min-height: 450px;
  }
  .pie .superior {
    padding: 30px 0;
  }
  .pie .superior ul {
    display: none;
  }
  .pie .superior .logo {
    margin: 0 auto;
    max-width: 180px;
  }
  .pie .superior .social {
    text-align: center;
    margin-top: 40px;
  }
  .pie .medio {
    padding-bottom: 20px;
  }
  .boton {
    padding: 0 40px;
    font-size: 1.55em;
  }
  .anuncio .texto {
    bottom: 50px;
  }
  .presentacion .imagenes .imagen:nth-child(2) {
    left: 5%;
  }
  .presentacion .imagenes .imagen:nth-child(4) {
    right: 0;
  }
  .presentacion.nosotros .texto {
    max-width: none;
  }
  .presentacion.nosotros .texto .descripcion {
    text-align: left;
  }
  .fondo .item-fondo {
    height: 225px;
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
  }
  .fondo .item-fondo:before {
    border-bottom-right-radius: 20px;
    border-bottom-left-radius: 20px;
  }
  .presentacion.carta .categorias {
    margin-top: 60px;
  }
  .presentacion.carta .categorias .categoria .imagen.intro,
  .presentacion.carta .categorias .categoria .imagen.intro .img:before {
    border-radius: 20px;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto {
    left: 50px;
    right: 50px;
    bottom: 30px;
  }
  .presentacion.carta .texto .titulo {
    font-size: 6.5em;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto .subtitulo {
    font-size: 5em;
  }
  .presentacion.carta .categorias .categoria .platos .texto .titulo,
  .presentacion.contacto .texto .titulo {
    font-size: 3.5em;
  }
  .presentacion.carta .categorias .categoria .platos .texto {
    max-width: 80%;
  }
  .presentacion.carta .categorias .categoria {
    margin-top: 70px;
  }
  .presentacion.carta .categorias .categoria .platos .texto .titulo:before {
    left: 50px;
    right: 50px;
    transform: translateY(20px);
  }
  .presentacion.carta
    .categorias
    .categoria
    .platos
    .texto
    .plato:nth-child(2) {
    margin-top: 60px;
  }
  .presentacion.carta .categorias .categoria .platos .texto .plato .precio {
    font-size: 3em;
  }
  .presentacion.contacto .texto {
    display: block;
    vertical-align: initial;
    width: auto;
    margin-right: 0;
    margin-bottom: 40px;
  }
  .presentacion.contacto .imagen {
    width: auto;
    display: block;
    vertical-align: initial;
  }
  .contacto .inferior {
    margin-top: 60px;
  }
  .contacto .inferior .mapa,
  .contacto .formulario {
    display: block;
    width: auto;
    margin-right: 0;
    vertical-align: initial;
  }
  .contacto .inferior .mapa iframe {
    height: 300px !important;
  }
  .contacto .formulario {
    margin-top: 40px;
  }
  .contacto .formulario form .botones {
    float: right;
  }
  .legal .texto .descripcion {
    margin-top: 30px;
  }
  .legal .texto .titulo {
    font-size: 3.5em;
  }
}
@media (max-width: 767px) {
  .contenedor {
    width: 92%;
  }
  .cabecera .derecha {
    display: none;
  }
  .banners .banner {
    min-height: 350px;
  }
  .banners .banner .texto .titulo,
  .anuncio .texto .titulo {
    font-size: 3.5em;
  }
  .cabecera .izquierda .logo {
    max-width: 130px;
  }
  .banners .banner .texto {
    bottom: 20px;
  }
  .introduccion {
    margin-top: 30px;
    padding-bottom: 0;
    color: #5c5a52;
  }
  .mitades .mitad .texto {
    padding: 60px 15px;
  }
  .mitades .mitad .texto .logo {
    max-width: 150px;
  }
  .mitades .mitad .texto .titulo {
    margin-top: 30px;
  }
  .mitades .mitad .texto .titulo:before,
  .mitades .mitad .texto .botones:before {
    left: 0;
    width: 50px;
  }
  .mitades .mitad .texto .titulo:after,
  .mitades .mitad .texto .botones:after {
    right: 0;
    width: 50px;
  }
  .mitades .mitad .texto .botones:before,
  .mitades .mitad .texto .botones:after {
    top: 27.5px;
  }
  .mitades .mitad .texto .descripcion,
  .presentacion.nosotros .texto .descripcion {
    font-size: 1.85em;
  }
  .mitades .mitad .texto .descripcion {
    margin-top: 20px;
  }
  .mitades .mitad .texto .botones {
    margin-top: 20px;
  }
  .mitades .mitad .texto .botones .boton {
    margin-top: 0;
  }
  .presentacion.nosotros,
  .presentacion.legal,
  .presentacion.carta,
  .presentacion.contacto {
    padding: 60px 0;
  }
  .legal .texto .titulo,
  .presentacion.contacto .texto .titulo {
    font-size: 3em;
  }
  .pie .inferior {
    padding: 15px 0 0 0;
    text-align: center;
  }
  .pie .inferior .copyright {
    float: none;
    line-height: 20px;
    font-size: 1.4em;
  }
  .pie .inferior .sgm {
    float: none;
    display: inline-block;
    line-height: 48px;
    font-size: 1.4em;
  }
  .kit_digital {
    padding: 2px;
  }
  .acces {
    padding: 15px 15px 0;
  }
  .pie .superior .logo {
    max-width: 150px;
  }
  .pie .medio .izquierda ul li,
  .pie .medio .derecha ul li {
    margin-right: 12px;
    font-size: 1.4em;
  }
  .pie .medio .derecha ul li:first-child {
    display: block;
    vertical-align: initial;
    margin-right: 0;
  }
  .menu_ham {
    width: 60px;
    height: 60px;
  }
  .menu_ham .the_bars,
  .menu_ham .the_bars:before,
  .menu_ham .the_bars:after {
    width: 1.666666666666667rem;
  }
  .mm-spn .falso_link,
  .mm-spn a {
    font-size: 1.85em;
  }
  .mm-spn.mm-spn--navbar:after {
    font-size: 2.083em;
  }
  .anuncio {
    max-height: 500px;
    min-height: 400px;
  }
  .presentacion .imagenes .imagen.principal {
    max-width: 400px;
    margin: 0;
  }
  .presentacion .imagenes .imagen.sec:nth-child(2),
  .presentacion .imagenes .imagen:nth-child(4) {
    position: static;
    max-width: 300px;
    margin-top: 20px;
  }
  .presentacion .imagenes .imagen:nth-child(3) {
    max-width: 340px;
  }
  .presentacion .imagenes .imagen:nth-child(4) {
    max-width: 280px;
  }
  .fondo .item-fondo {
    height: 180px;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
  }
  .fondo .item-fondo:before {
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
  }
  .presentacion.carta .categorias {
    margin-top: 40px;
  }
  .presentacion.carta .texto .titulo {
    font-size: 4.5em;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto .subtitulo {
    font-size: 3.25em;
    position: relative;
    font-weight: 500;
    text-transform: initial;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .texto {
    position: relative;
    left: unset;
    right: unset;
    bottom: unset;
    padding: 15px 0;
    padding-top: 80px;
    margin-top: -70px;
  }
  .presentacion.carta .categorias .imagen.intro .img {
    overflow: hidden;
    border-radius: 10px;
  }
  .presentacion.carta .categorias .categoria .imagen.intro {
    border-radius: unset;
  }
  .presentacion.carta .categorias .categoria .imagen.intro .img:before {
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0) 0%,
      rgba(0, 0, 0, 0.6) 100%
    );
    border-radius: 10px;
  }
  .presentacion.carta .categorias .categoria .platos .texto {
    max-width: none;
  }
  .presentacion.carta
    .categorias
    .categoria
    .imagen.intro
    .texto
    .subtitulo:before {
    height: 15px;
    border-radius: 4px;
  }
  .presentacion.carta .categorias .categoria .platos .texto .titulo {
    font-size: 2.75em;
  }
  .presentacion.carta .categorias .categoria .platos .texto .titulo:before {
    left: 0;
    right: 0;
  }
  .presentacion.carta .categorias .categoria .platos .texto .plato .nombre {
    font-size: 2.083em;
  }
  .presentacion.carta .categorias .categoria .platos .texto .plato .precio {
    font-size: 2.5em;
  }
  .presentacion.carta .categorias .categoria .platos {
    margin-top: 40px;
  }
  .presentacion.carta .categorias .categoria .platos .texto .titulo:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    transform: translateY(-20px);
    border-top: 5px dotted #e7e2cf;
  }
  .presentacion.carta .categorias .imagen.intro .img img {
    width: 470px;
    max-width: none;
  }
  .presentacion.contacto .texto .iconos {
    margin-top: 40px;
  }
  .presentacion.contacto .texto .iconos div {
    font-size: 1.85em;
  }
  .contacto .formulario .titulo {
    font-size: 3.5em;
  }
  .contacto .formulario form .checks .check {
    font-size: 1.54em;
  }
  .contacto .formulario form .checks .check label {
    padding-left: 30px;
  }
  .contacto .formulario form .botones {
    float: none;
    display: block;
    vertical-align: initial;
  }
  .contacto .formulario form .botones .boton {
    display: block;
    vertical-align: initial;
    text-align: center;
  }
  div.format_popup {
    transform: none;
    top: 0;
    position: fixed;
    left: 0;
    right: 0;
    padding: 20px;
  }
  div.format_popup.legal {
    position: absolute;
    bottom: 0;
  }
  div.format_popup .tit {
    font-size: 2.5em;
    line-height: 1.1;
  }
  div.format_popup table,
  div.format_popup ul,
  div.format_popup ol,
  div.format_popup p,
  div.format_popup.legal p {
    font-size: 1.6em;
  }
  div.format_popup.legal .fancybox-close-small {
    position: fixed;
    background-color: white;
    color: #5c5a52;
  }
  #cookie-bar {
    left: 0;
    right: 0;
    text-align: left;
    bottom: 0;
    border: none;
    border-radius: 0;
  }
  #cookie-bar a {
    line-height: 54px;
    border-radius: 5px;
  }
  #cookie-bar p span {
    margin-bottom: 10px;
  }
  .legal .texto .descripcion ul,
  .legal .texto .descripcion ol {
    margin-left: 20px;
  }
  .mitades .mitad {
    padding-bottom: 20px;
  }
  .mitades .mitad .secundarias .imagen:nth-of-type(2),
  .mitades .mitad:nth-of-type(even) .secundarias .imagen:nth-of-type(2) {
    position: static;
    transform: none;
    width: 185px;
    height: 185px;
    margin: 20px auto 0;
  }
  #mmmenu ul li a {
    padding: 15px 20px;
  }
  .presentacion.legal {
    padding: 40px 0 60px;
  }
  .presentacion .texto .logo {
    max-width: 150px;
  }
}
@media (max-width: 359px) {
  body {
    font-size: 56%;
  }
}

@media (max-width: 768px) {
  .introduccion {
    display: none;
  }
}
/* En móvil, más grande */
@media (max-width: 768px) {
  .imagen {
    height: 450px;
  }
}
@media (max-width: 768px) {
  .mitades,
  .mitad,
  .secundarias,
  .imagen {
    margin: 0 !important;
    padding: 0 !important;
  }

  .imagen {
    display: block;
    line-height: 0;
    font-size: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 420px; /* ajusta según lo que necesites */
  }

  .limpia {
    clear: both;
    height: 0;
    margin: 0;
    padding: 0;
  }
}





























.experience-section {
  background-color: #000000;
  color: #f5e8d7;
  overflow-x: hidden;
  text-align: center;
  padding: 100px 0 0;
  position: relative;
}

.icons {
  font-size: 1.2rem;
  letter-spacing: 10px;
  color: #d7c3a4;
  margin-bottom: 15px;
}

.experience-section h1 {

  font-size: 3.2rem;
  line-height: 1.2;
  color: #f1e7d2;
  margin-bottom: 15px;
}

.experience-section p {
  color: #d7c3a4;
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 60px;
}

/* ----- Sliders ----- */
.slider-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 740px;
  background-color: #000000;
}

.slider {
  display: flex;
  width: 100%;
  overflow: hidden;
  position: relative;
}

.slide-track {
  display: flex;
  animation: scroll 40s linear infinite;
}

.slider-bottom .slide-track {
  animation: scroll-reverse 40s linear infinite;
}

.slide-track img {
  width: 550px;
  height: 350px;
  object-fit: cover;
  margin: 0 10px;
  border-radius: 10px;
  transition: transform 0.4s ease;
}

.slide-track img:hover {
  transform: scale(1.05);
}

/* ----- Botón central ----- */
.explore-btn {
  position: absolute;
  top: 47%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #f1d5a1;
  color: #000;
  border: none;
  padding: 24px 40px;
  border-radius: 8px;
  font-weight: 200;
  font-size: 1.1rem;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: all 0.3s ease;
  z-index: 10;
}

.explore-btn:hover {
  background: #eac47a;
  transform: translate(-50%, -50%) scale(1.05);
}

/* ----- Gradientes de difuminado ----- */
/* === FADE TOP (fundido elegante a negro, versión más pequeña) === */
.fade-top {
  position: absolute;
  top: -10;
  left: 0;
  width: 100%;
  height: 200px; /* antes 300px */
  pointer-events: none;
  z-index: 3;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 1) 0%,       /* negro sólido arriba */
    rgba(0, 0, 0, 0.9) 25%,    /* casi negro */
    rgba(0, 0, 0, 0.6) 55%,    /* transición suave */
    rgba(0, 0, 0, 0.3) 80%,    /* más sutil */
    rgba(0, 0, 0, 0) 100%      /* totalmente transparente */
  );
  transition: opacity 1s ease-in-out;
}

/* === FADE BOTTOM (más discreto, resalta el texto sin oscurecer demasiado) === */
.fade-bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 160px; /* antes 160px */
  pointer-events: none;
  z-index: 3;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.9) 0%,
    rgba(0, 0, 0, 0.6) 40%,
    rgba(0, 0, 0, 0.3) 75%,
    rgba(0, 0, 0, 0) 100%
  );
}

/* === FADE LEFT === */
.fade-left {
  position: absolute;
  top: 0;
  left: 0;
  width: 120px; /* antes 160px */
  height: 100%;
  pointer-events: none;
  z-index: 3;
  background: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.75) 0%,
    rgba(0, 0, 0, 0.4) 50%,
    rgba(0, 0, 0, 0.1) 90%,
    rgba(0, 0, 0, 0) 100%
  );
}

/* === FADE RIGHT === */
.fade-right {
  position: absolute;
  top: 0;
  right: 0;
  width: 120px; /* antes 160px */
  height: 100%;
  pointer-events: none;
  z-index: 3;
  background: linear-gradient(
    to left,
    rgba(0, 0, 0, 0.75) 0%,
    rgba(0, 0, 0, 0.4) 50%,
    rgba(0, 0, 0, 0.1) 90%,
    rgba(0, 0, 0, 0) 100%
  );
}

/* ----- Animaciones infinitas ----- */
@keyframes scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

@keyframes scroll-reverse {
  0% { transform: translateX(-50%); }
  100% { transform: translateX(0); }
}

/* ----- Responsive ----- */
@media (max-width: 768px) {
  .experience-content h1 { font-size: 2.2rem; }
  .experience-content p{margin: 10px;}
  .slide-track img { width: 250px; height: 180px; }
  .explore-btn { padding: 20px 35px; font-size: 1rem; top: 47%; font-weight: 400; }
  .fade-left, .fade-right { width: 60px; }
  .slider-container{height: 400px;}
}

@media (min-width: 1024px) {
  .boton {
    transform: translateY(-35px);
    margin-top: 30px;
  }

}
@media (max-width: 1023px) {
  .botonm {
    margin-top: -40px !important;
  }
}



