/*
Theme Name:   Subgráfica theme
 Theme URI:    https://subgrafica.com/
 Description:  Subgráfica WP theme - If you’re reading this, please say hi!!
 Author:       Subgráfica Estudio
 Author URI:   https://subgrafica.com/
 Template:     Divi
 Version:      5.0 JUN
 License:      Attribution-NonCommercial 4.0 International
 License URI:  https://creativecommons.org/licenses/by-nc/4.0/
 */



/* =========================================================
   1. TOKENS / VARIABLES
========================================================= */
:root {
  /* Colores base */
  --gr: #888888;            /* Gris neutro */
  --ne: #111111;            /* Negro profundo */
  --bl: #ffffff;            /* Blanco puro */
  --transp: transparent;      /* Transparente */

  /* Colores azul */
  --azul: #1F386B;          /* Azul principal */
  --azul_70: #627397;       /* Azul 70% */
  --azul_90: #354C7A;       /* Azul 90% */
  --azul_100: #1F386B;      /* Azul 100% */
  --azul_claro: #D2DFDD;    /* Azul claro */

  /* Colores acento */
  --naranja: #E79E6C;       /* Naranja acento */

  /* Colores beige */
  --beige: #F1DAB2;         /* Beige base */
  --beige_20: #FCF8F0;      /* Beige 20% */
  --beige_30: #FBF4E8;      /* Beige 30% */
  --beige_50: #F8ECD8;      /* Beige 50% */

  /* Tipografías y pesos */
  --ffa: 'BatonTurbo', Sans-Serif;                 /* Fuente A principal  */
  --ffb: 'Sansita', Helvetica, Arial, Sans-Serif;  /* Fuente B secundaria */
  --fwl-reg: 400;           /* Peso regular */
  --fwl-med: 500;           /* Peso medio   */
  --fwl-bol: 700;           /* Peso bold    */

  /* Tamaños para encabezados */
  --fs-1: clamp(2.2rem, 4vw + 1rem, 4.0rem);    /* H1 */
  --fs-2: clamp(2.0rem, 4vw + 1rem, 3.5rem);    /* H2 */
  --fs-3: clamp(1.6rem, 4vw + 1rem, 2.0rem);    /* H3 */
  --fs-4: clamp(1.6rem, 4vw + 1rem, 2.0rem);    /* H4 */
  --fs-5: clamp(1.1rem, 4vw + 1rem, 1.4rem);    /* H5 */
  --fs-6: clamp(1.1rem, 4vw + 1rem, 1.4rem);    /* H6 */

  /* Tamaños para párrafos */
  --fs-p-peq: clamp(0.6rem, 2vw + 1rem, 0.9rem);  /* Párrafo pequeño */
  --fs-p-nor: clamp(0.8rem, 2vw + 1rem, 1.0rem);  /* Párrafo normal  */
  --fs-p-gra: clamp(1rem, 2vw + 1rem, 1.2rem);  /* Párrafo grande  */
  --fls: .1rem;                                   /* Letter spacing  */
  --flh1: 1.4em;
  --flh2: 1.5em;                                      /* Line height H2 */
  /* Tamaños para banners */
  --fs-banner-h1: clamp(.9rem, 3vw + 1rem, 3.6rem); /* Banner H1 */
  --fs-banner-h4: clamp(.9rem, 3vw + 1rem, 2.2rem); /* Banner H4 */
}

/* =========================================================
   2. RESET / BASE
========================================================= */
html {
  box-sizing: border-box;
}
*, *:before, *:after {
  box-sizing: inherit;
}

/* =========================================================
   3. TIPOGRAFÍA Y TEXTO
========================================================= */
body {
  height: 100vh;
}

@supports (-webkit-touch-callout: none) {
  body {
    height: -webkit-fill-available;
  }
}

body {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  line-height: var(--flh1);
   color: var(--azul);
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
  transition-duration: 0.2s;
  -webkit-transition-timing-function: ease-in-out;
  transition-timing-function: ease-in-out;
}

::selection {
  background: var(--beige_50);
  color:var(--azul);
}

::-moz-selection {
  background: var(--beige_50);
  color:var(--azul);
}

a:active, a:active * {
  outline: none !important;
  outline-style: none !important;
}

a:focus, a:focus * {
  outline: none !important;
  outline-style: none !important;
}

h1, h2, h3, h4, h5, h6 {
   color: var(--azul);
  -webkit-hyphens: none;
  -moz-hyphens: none;
  hyphens: none;
  text-justify: inter-character;
}
  

p {
  font-size: var(--fs-p-nor) !important;
  hyphens: none;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  overflow-wrap: normal;
  padding-bottom: 20px;
}
br {
  margin-bottom: 4px;
}

a:link {
   text-decoration: none;
   color: var(--azul);
    opacity: 1;
    transition: opacity 0.3s ease, color 0.3s ease;
}

a:hover {
    text-decoration: underline;
    color: var(--azul_70);
    opacity: 1;
    transition: opacity 0.3s ease, color 0.3s ease;
}
/* Imágenes dentro de enlaces */
a img {
  transition: opacity 0.3s ease; /* transición base */
}

a:hover img {
  opacity: 0.9;
}

/* SVG inline dentro de enlaces */
a svg {
  transition: opacity 0.3s ease; /* transición base */
}

a:hover svg {
  opacity: 0.9;
}

a:visited {
  text-decoration: underline;
  color: var(--azul);
  opacity: 1;
}

h1 {
  font-family: var(--ffb);
  font-size: var(--fs-1) !important;
  font-weight: var(--fwl-bol);
  line-height: var(--flh2);
}
h2 {
  font-family: var(--ffb);
  font-size: var(--fs-2) !important;
  font-weight: var(--fwl-bol);
  line-height: var(--flh2);
}
h3 {
  font-family: var(--ffb);
  font-size: var(--fs-3) !important;
  font-weight: var(--fwl-bol);
  line-height: var(--flh1);
}
h4 {
  font-family: var(--ffa);
  font-size: var(--fs-4) !important;
  font-weight: var(--fwl-reg);
  line-height: var(--flh1);
}
h5 {
  font-family: var(--ffb);
  font-size: var(--fs-5) !important;
  font-weight: var(--fwl-bol);
  line-height: var(--flh1);
}
h6 {
  font-family: var(--ffa);
  font-size: var(--fs-6) !important;
  font-weight: var(--fwl-med);
  line-height: var(--flh1);
  padding-bottom: 20px;
}
blockquote {
 border-color: var(--azul_claro);
}
.par-gra p {
  font-size: var(--fs-p-gra) !important;
  margin-bottom: none;
}
.par-peq p {
  font-size: var(--fs-p-peq) !important;
  line-height: var(--flh1);
  margin-bottom: none;
}
.etiqueta p {
  font-size: var(--fs-p-nor) !important;
  text-transform: uppercase;
  font-weight: var(--fwl-reg);
  letter-spacing: 1px;
}
.etiqueta-peq p {
  font-size: var(--fs-p-peq) !important;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.etiqueta-med p {
  font-size: var(--fs-p-nor) !important;
  text-transform: uppercase;
  font-weight: var(--fwl-med);
  letter-spacing: 1px;
}
.etiqueta-med a:link,
.etiqueta-med a:visited {
  text-decoration: none;
  color: var(--azul);
  opacity: 1;
  transition: opacity 0.3s ease, color 0.3s ease;
}

.etiqueta-med a:hover {
  text-decoration: underline;
  color: var(--azul);
  opacity: 1;
}

.etiqueta-peq p {
  font-size: var(--fs-p-peq) !important;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.foot-text p {
  margin-bottom: 0px !important;
}

.no-text {
  cursor: default;
}
.no-data {
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Safari */
     -moz-user-select: none; /* Old versions of Firefox */
      -ms-user-select: none; /* Internet Explorer/Edge */
          user-select: none; /* Non-prefixed version, currently
                                supported by Chrome, Edge, Opera and Firefox */
}
.sombra-mod {
  box-shadow: 0px 20px 50px -10px rgba(0,0,0,0.1);
}
#main-content {
  background-color: var(--beige_20);
}

#banner_m h1,
#banner_m h4,
#banner_p h1,
#banner_p h4,
#banner_g h1,
#banner_g h4 {
  line-height: var(--flh1);
}

.et-waypoint:not(.et_pb_counters) {
  opacity: 1 !important;

}

.color-azul h1,
.color-azul h2,
.color-azul h3,
.color-azul h4,
.color-azul h5,
.color-azul h6,
.color-azul p {
 color: var(--azul) !important;
}
.color-azul_claro h1,
.color-azul_claro h2,
.color-azul_claro h3,
.color-azul_claro h4,
.color-azul_claro h5,
.color-azul_claro h6,
.color-azul_claro p {
 color: var(--azul_claro);
}
.color-naranja h1,
.color-naranja h2,
.color-naranja h3,
.color-naranja h4,
.color-naranja h5,
.color-naranja h6,
.color-naranja p {
 color: var(--naranja);
}
.color-beige_20 h1,
.color-beige_20 h2,
.color-beige_20 h3,
.color-beige_20 h4,
.color-beige_20 h5,
.color-beige_20 h6,
.color-beige_20 p {
 color: var(--beige_20);
}
.color-blanco h1,
.color-blanco h2,
.color-blanco h3,
.color-blanco h4,
.color-blanco h5,
.color-blanco h6,
.color-blanco p {
 color: var(--bl);
}

/* =========================================================
   4. LISTAS Y TEXTO DECORADO
========================================================= */
.lista-base ul li a,
.lista-base ol li a {
  text-decoration: none !important;
  transition: color 0.3s ease;
  color: var(--azul);
  font-weight: var(--fwl-reg) !important;
  opacity: 1;
}

.lista-base ul li a:hover,
.lista-base ol li a:hover {
  color: var(--azul);
  opacity: 1;
  text-decoration: underline !important;
}
.lista-base ul li a:visited,
.lista-base ol li a:visited {
  text-decoration: none !important;
  color: var(--azul);
  font-weight: var(--fwl-reg) !important;
  opacity: 1;
}

.lista-seccion ul li a,
.lista-seccion ol li a {
  
  text-decoration: none !important;
  transition: color 0.3s ease;
  color: var(--azul);
  font-weight: var(--fwl-reg) !important;
  opacity: 1;
}

.lista-seccion ul li a:hover,
.lista-seccion ol li a:hover {
  color: var(--azul);
  opacity: 1;
  text-decoration: underline !important;
}

.lista-seccion ul li a:visited,
.lista-seccion ol li a:visited {
  text-decoration: none !important;
  color: var(--azul);
  font-weight: var(--fwl-reg) !important;
  opacity: 1;
}

.lista-seccion ul {
  line-height: 28px;
}
.lista-seccion ul li {
  margin-bottom: 12px;
  line-height: var(--flh1);
    font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
}
/* Clase para círculo en párrafos */

.circulo p {
  position: relative;
  text-align: right;
}
.circulo p::before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: var(--naranja);
  margin-right: 5px;
  vertical-align: middle;
}

/* Estilo base para botón beige flecha-izq */


/* =========================================================
   5. BOTONES
========================================================= */
.et_pb_button.b-beige-flecha-izq {
 font-family: var(--ffa);
 font-size: var(--fs-p-nor);
 font-weight: var(--fwl-reg);
 background-color: var(--beige_20);
 color: var(--azul) !important;
 border-radius: 999px;
 border: 1px solid var(--transp);
 padding: 8px 20px 10px 50px !important;
 display: inline-block;
 position: relative;
 text-decoration: none;
 line-height: none;
}
.et_pb_button.b-beige-flecha-izq::before {
 content: "";
 display: inline-block;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
 width: 20px;
 height: 20px;
 background-image: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/DER_G_D.svg');
 background-size: contain;
 background-repeat: no-repeat;
 background-position: center;
 opacity: 0;                                       /* invisible al cargar */
 animation: iconFade 0.8s ease-out 0.2s forwards;     /* dura 0 .25 s, inicia tras 0 .1 s */
 transition: transform 0.3s ease;
}
.et_pb_button.b-beige-flecha-izq:hover {
 font-family: var(--ffa);
 font-size: var(--fs-p-nor);
 font-weight: var(--fwl-reg);
 background-color: var(--beige_50);
 color: var(--azul) !important;
 border-radius: 999px;
 border: 1px solid var(--transp);
 padding: 8px 20px 10px 50px !important;
 display: inline-block;
 position: relative;
 text-decoration: none;
 line-height: none;
 opacity: 1;
}
.et_pb_button.b-beige-flecha-izq:hover::before {
 transform: translate(2px, -50%);
 opacity: 1;
}
.et_pb_button.b-beige-flecha-izq:focus {
 background-color: var(--beige_50);
 color: var(--azul) !important;
 border: 1px solid var(--beige);
}

/* Estilo base para botón beige flecha-derecha */

.et_pb_button.b-beige-flecha-der {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--beige_20);
  color: var(--azul) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;   /* espacio a la derecha */
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
}
.et_pb_button.b-beige-flecha-der::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;                       
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-image: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/DER_G_D.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;                   
  animation: iconFade 0.8s ease-out 0.2s forwards;
  transition: transform 0.3s ease;
}
.et_pb_button.b-beige-flecha-der:hover {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--beige_50);
  color: var(--azul) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;  
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  opacity: 1;
}
.et_pb_button.b-beige-flecha-der:hover::before {
  transform: translate(2px, -50%);
  opacity: 1;
}
.et_pb_button.b-beige-flecha-der:focus {
  background-color: var(--beige_50);
  color: var(--azul) !important;
  border: 1px solid var(--beige);
}

/* Estilo base para botón azul flecha-izq */

.et_pb_button.b-azul-flecha-izq {
 font-family: var(--ffa);
 font-size: var(--fs-p-nor);
 font-weight: var(--fwl-reg);
 background-color: var(--azul);  
 color: var(--beige_30) !important; 
 border-radius: 999px;
 border: 1px solid var(--transp);
 padding: 8px 20px 10px 50px !important;
 display: inline-block;
 position: relative;
 text-decoration: none;
 line-height: none;
}
.et_pb_button.b-azul-flecha-izq::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-image: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/DER_G_L.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;                                      
  animation: iconFade 0.8s ease-out 0.2s forwards;   
  transition: transform 0.3s ease;
}
.et_pb_button.b-azul-flecha-izq:hover {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 20px 10px 50px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  opacity: 1;
 }
.et_pb_button.b-azul-flecha-izq:hover::before {
 transform: translate(2px, -50%);
 opacity: 1;
}
.et_pb_button.b-azul-flecha-izq:focus {
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border: 1px solid var(--azul);
}

/* Estilo base para botón azul flecha-der */

.et_pb_button.b-azul-flecha-der {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--azul); 
  color: var(--beige_30) !important; 
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important; 
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
}
.et_pb_button.b-azul-flecha-der::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;  
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-image: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/DER_G_L.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  animation: iconFade 0.8s ease-out 0.2s forwards;
  transition: transform 0.3s ease;
}
.et_pb_button.b-azul-flecha-der:hover {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  opacity: 1;
}
.et_pb_button.b-azul-flecha-der:hover::before {
  transform: translate(2px, -50%);
  opacity: 1;
 }
.et_pb_button.b-azul-flecha-der:focus {
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border: 1px solid var(--azul);
}

/* Estilo base para botón azul simple */

.et_pb_button.b-azul-simple {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--azul);
  color: var(--beige_30) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 26px 10px 26px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  transition: background-color 0.3s ease;
}
.et_pb_button.b-azul-simple:hover {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 26px 10px 26px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  opacity: 1;
}
.et_pb_button.b-azul-simple:focus {
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border: 1px solid var(--azul);
}

/* Estilo base para botón beige simple */

.et_pb_button.b-beige-simple {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--beige_20);
  color: var(--azul) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 26px 10px 26px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  transition: background-color 0.3s ease;
}
.et_pb_button.b-beige-simple:hover {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--beige_50);
  color: var(--azul) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 26px 10px 26px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  opacity: 1;
}
.et_pb_button.b-beige-simple:focus {
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border: 1px solid var(--azul);
}

/* Estilo base para botón beige icono flecha abajo  */

.et_pb_button.b-beige-abajo {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--beige_20);
  color: var(--azul) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;
  position: relative;
  text-decoration: none;
  line-height: none;
}
.et_pb_button.b-beige-abajo::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 14px;
  height: 12px;
  background-image: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/AB_D.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  animation: iconFade 0.8s ease-out 0.2s forwards;
  transition: transform 0.3s ease;
}
.et_pb_button.b-beige-abajo:hover {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--beige_50);
  color: var(--azul) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  opacity: 1;
}
.et_pb_button.b-beige-abajo:hover::before {
  transform: translate(2px, -50%);        
  opacity: 1;
}
.et_pb_button.b-beige-abajo:focus {
  background-color: var(--beige_50);
  color: var(--azul) !important;
  border: 1px solid var(--beige);
}

/* Estilo base para botón azul icono flecha abajo  */

.et_pb_button.b-azul-abajo {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--azul);
  color: var(--beige_30) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;
  position: relative;
  text-decoration: none;
  line-height: none;
}
.et_pb_button.b-azul-abajo::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 14px;
  height: 12px;
  background-image: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/AB_L.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  animation: iconFade 0.8s ease-out 0.2s forwards;
  transition: transform 0.3s ease;
}
.et_pb_button.b-azul-abajo:hover {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  opacity: 1;
}
.et_pb_button.b-azul-abajo:hover::before {
  transform: translate(2px, -50%);        
  opacity: 1;
}
.et_pb_button.b-azul-abajo:focus {
  background-color: var(--azul_90);
  color: var(--beige_30) !important;
  border: 1px solid var(--azul);
}

/* Botón-icono azul – diámetro fijo 46 px */

.et_pb_button.btn-icono-azul{
  width:46px;
  height:46px;          /* ⬅  siempre 46 px */
  padding:0;
  border-radius:50%;
  background:var(--azul) center/20px no-repeat;
  background-image:url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/DER_G_L.svg');
  border:1px solid var(--transp);
  display:inline-block;          /* sigue siendo inline para Divi */
  vertical-align:middle;         /* ⬅ evita que “descanse” en la línea de base */
  font-size:0;                   /* oculta texto */
  text-decoration:none;
  opacity: 0;                                       /* invisible al cargar */
  animation: iconFade 0.8s ease-out 0.2s forwards;     /* dura 0 .25 s, inicia tras 0 .1 s */
  transition: transform 0.3s ease;
}

.et_pb_button.btn-icono-azul:hover{
  background-color:var(--azul_90);
  background-position:calc(50% + 2px) 50%;
  opacity: 1;
}

.et_pb_button.btn-icono-azul:focus{
  background-color: var(--azul_90);
  border: 1px solid var(--azul);
}

/* Botón-icono beige – diámetro fijo 46 px */

.et_pb_button.btn-icono-beige{
  width:46px;
  height:46px;
  padding:0;
  border-radius:50%;
  border-radius: 999px;
  border: 1px solid var(--transp);
  background:var(--beige_20) center/20px no-repeat;
  background-image:url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/DER_G_D.svg');
  border:1px solid var(--transp);
  display:inline-block;
  vertical-align:middle;
  font-size:0; 
  text-decoration:none;
  opacity: 0; 
  animation: iconFade 0.8s ease-out 0.2s forwards;     
  transition: transform 0.3s ease;
}

/* Hover */
.et_pb_button.btn-icono-beige:hover{
  background-color:var(--beige_50);
  background-position:calc(50% + 2px) 50%;
  opacity: 1;
}

/* Focus */
.et_pb_button.btn-icono-beige:focus{
  background-color: var(--beige_50);
  color: var(--azul) !important;
  border: 1px solid var(--beige);
}

/* Estilo base para botón beige icono flecha abajo pequeños  */
.barra-beige-abajo {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--beige_20);
  color: var(--azul) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;
  position: relative;
  text-decoration: none;
  line-height: none;
}
.barra-beige-abajo::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 14px;
  height: 12px;
  background-image: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/AB_D.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  animation: iconFade 0.8s ease-out 0.2s forwards;
  transition: transform 0.3s ease;
}
.barra-beige-abajo:hover {
  font-family: var(--ffa);
  font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  background-color: var(--beige_50);
  color: var(--azul) !important;
  border-radius: 999px;
  border: 1px solid var(--transp);
  padding: 8px 50px 10px 20px !important;
  display: inline-block;
  position: relative;
  text-decoration: none;
  line-height: none;
  opacity: 1;
}

.barra-beige-abajo:hover::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 14px;
  height: 12px;
  background-image: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/AR_D.svg');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  animation: iconFade 0.8s ease-out 0.2s forwards;
  transition: transform 0.3s ease;
}
.barra-beige-abajo:focus {
  background-color: var(--beige_50);
  color: var(--azul) !important;
  border: 1px solid var(--beige);
}

#barra-principal {
  opacity: 1;
}
.fade-inner {
  opacity: 0;
  transition: opacity 0.6s ease-out;
}

.fade-in-loaded .fade-inner {
  opacity: 1;
}
.et_pb_button_0_tb_header_wrapper, .et_pb_button_1_tb_header_wrapper {
  top: 0% !important;
}
.et_pb_button_0_tb_header_wrapper a, .et_pb_button_1_tb_header_wrapper a {
  transform: translateY(-0%) !important;
}


/* =========================================================
   6. MENÚS Y HEADER
========================================================= */
ul.menu-base-azul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  /* column-gap: 6px; */
  font-family: var(--ffa);
  font-size: var(--fsm-elmt);
  font-weight: var(--fwl-bol);
  color: var(--azul);
}

ul.menu-base-azul > li > a {
  color: var(--azul);
  font-family: var(--ffa);
  font-size: var(--fsm-elmt);
  font-weight: var(--fwl-med);
  position: relative;
  display: inline-block;
  text-decoration: none;
  padding: 0.33rem 15px; /* fijo siempre */
  border-radius: 100px;
  border: 1px solid transparent; /* invisible por default */
  background-color: transparent;
  box-sizing: border-box;
  transition: background-color 0.3s ease, border 0.3s ease, color 0.3s ease;
}

ul.menu-base-azul > li > a:hover {
  color: var(--azul);
  background-color: var(--beige_20);
  border: 1px solid var(--beige);
  opacity: 1;
}

/* Ícono flecha */
ul.menu-base-azul > li > a::after {
  content: "";
  width: 14px;
  height: 12px;
  margin-left: 0.5rem;
  display: inline-block;
  background: var(--azul);
  mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
  -webkit-mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
  opacity: 0;
  transform: translateY(1px) rotate(180deg);
  animation: iconFade 0.8s ease-out 0.2s forwards;
  transition: background 0.3s ease, transform 0.3s ease, opacity 0.3s ease;
}

ul.menu-base-azul > li > a:hover::after {
  background: var(--azul);
  opacity: 1;
}

/* Excepción: último ítem sin ícono */
ul.menu-base-azul > li:last-child > a::after {
  display: none !important;
}

ul.menu-base-azul > li:last-child > a {
  color: var(--azul);
  font-weight: var(--fwl-reg);
}
/* Evitar efecto cápsula en el último elemento */
ul.menu-base-azul > li:last-child > a:hover,
ul.menu-base-azul > li:last-child > a.activo {
  text-decoration: underline !important;
  color: var(--azul) !important;
  background-color: transparent !important;
  border: 1px solid transparent !important;
  cursor: pointer;
}

.scrolled ul.menu-base-azul > li > a {
  color: var(--azul);
}

.scrolled ul.menu-base-azul > li > a::after {
  background: var(--azul);
  mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
  -webkit-mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
}

.scrolled ul.menu-base-azul > li > a:hover {
  color: var(--azul) !important;
}

.scrolled ul.menu-base-azul > li > a:hover::after {
  background: var(--azul);
}

.scrolled ul.menu-base-azul > li:last-child > a {
  color: var(--azul);
}

.et_pb_social_media_follow_0_tb_header li.et_pb_social_icon a.icon::before {
  color: var(--beige_20);
  transition: color 0.3s ease;
}
.scrolled .et_pb_social_media_follow_0_tb_header li.et_pb_social_icon a.icon::before {
  color: var(--azul);
}

/* Estilo base para menú azul overlay */
ul.menu-olverlay {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  column-gap: 2.5rem;
  font-family: var(--ffa);
  font-size: var(--fsm-elmt);
  font-weight: var(--fwl-bol);
  color: var(--azul);
    list-style-type: none !important;
}

ul.menu-olverlay > li > a {
  color: var(--azul);
  font-family: var(--ffa);
  font-size: var(--fsm-elmt);
  font-weight: var(--fwl-med);
  position: relative;
  display: inline-block;
  text-decoration: none;
  padding: 0.33rem 0;
}

ul.menu-olverlay > li > a::after {
  content: "";
  width: 14px;
  height: 12px;
  margin-left: 0.5rem;
  display: inline-block;
   background: var(--azul);
  mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
  -webkit-mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
 opacity: 0;
  animation: iconFade 0.8s ease-out 0.2s forwards;
  transition: background 0.3s ease, transform 0.3s ease;
}

ul.menu-olverlay > li > a:hover {
  color: var(--azul_90) !important;
  opacity: 1;
}

ul.menu-olverlay > li > a:hover::after {
  background: var(--azul_90);
  transform: translateY(1px) rotate(180deg);
}

ul.menu-olverlay > li:last-child > a::after {
  display: none !important;
}

ul.menu-olverlay > li:last-child > a {
  color: var(--azul_100);
  font-weight: var(--fwl-reg);
}

.no_link_menu {
  color: var(--azul_100);
  font-family: var(--ffa);
  font-size: var(--fsm-elmt);
  font-weight: var(--fwl-med);
  position: relative;
  display: inline-block;
  text-decoration: none;
  padding: 0.33rem 15px;
  cursor: default;
  border-radius: 100px;
  border: 1px solid var(--beige);
  box-sizing: border-box;
  background-color: var(--beige_20);
  margin-right: -17px;
  margin-left: -15px;
  margin-top: -1px;
}
.no_link_menu::after {
   content: "";
   width: 14px;
   height: 12px;
   margin-left: 0.5rem;
   display: inline-block;
   background: var(--azul);
    mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
   -webkit-mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
   opacity: 0;
   transform: translateY(1px) rotate(180deg);
    animation: iconFade 0.8s ease-out 0.2s forwards;
   transition: background 0.3s ease, transform 0.3s ease;
}

#social-bar {
  background-color: var(--beige_20);
    border-radius: 100px;
  border: 1px solid var(--beige);
}
#social-bar a:hover {
}
#barra-fondo {
  width: calc(100% - 360px);
  height: 50px;
  background-color: var(--beige_30);
  border-radius: 100px;
  border: 1px solid var(--beige);
}
#social-bar_overlay {
  background-color: var(--beige_20);
    border-radius: 100px;
  border: 1px solid var(--beige_20);
}
#social-bar_overlay a:hover {
}
.texto-menu {
  text-decoration: none;
  display: flex;
  align-items: flex-end;
}

/* Estado inicial: se ve solo el logotipo grande */
.logo-normal,
.logo-scroll {
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity 0.2s ease;
  display: block;
}

/* Mostrar solo el logo grande al inicio */
.logo-normal {
  opacity: 1;
  pointer-events: auto;
  z-index: 2;
}

.logo-scroll {
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}

/* Al hacer scroll */
.scrolled .logo-normal {
  opacity: 0;
  pointer-events: none;
}

.scrolled .logo-scroll {
  opacity: 1;
  pointer-events: auto;
}
#barra-fondo,
#social-bar {
  background-color: transparent;
  border-color: transparent;
  transition: background-color 0.3s ease, border-color 0.3s ease;
  box-shadow: 0px 20px 20px -10px rgba(0,0,0,0);

}
.scrolled #barra-fondo,
.scrolled #social-bar {
  background-color: var(--beige_30);
  border-color: var(--beige);
  box-shadow: 0px 20px 20px -20px rgba(0,0,0,0.1);

}
#boton-fijo,
.boton-cita-movil {
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

#boton-fijo.fade-out,
.boton-cita-movil.fade-out {
  opacity: 0;
  visibility: hidden;
}


/* Oculta todos los rows por defecto */
.menu-row {
  display: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.5s ease;
}
.menu-row.active {
  display: block;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  position: absolute !important;
  z-index: 0 !important;
  padding-top: 140px;
  transition: opacity 0.5s ease;
}


ul.menu-popup > li > a::after {
  content: "";
  width: 14px;
  height: 12px;
  margin-left: 0.5rem;
  display: inline-block;
  background: var(--azul);
  mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
  -webkit-mask: url('https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/azul_100.svg') center/contain no-repeat;
  opacity: 0;
  transform: rotate(0deg);
  transition: opacity 0.3s ease, transform 0.3s ease;
}
ul.menu-popup > li > a.activo::after {
  opacity: 1;
  transform: rotate(180deg);
}
ul.menu-popup > li > a {
  color: var(--azul);
  font-family: var(--ffa);
  font-size: var(--fsm-elmt);
  font-weight: var(--fwl-med);
  position: relative;
  display: inline-block;
  text-decoration: none;
  padding: 0.33rem 15px;
  border-radius: 100px;
  border: 1px solid transparent;
  background-color: transparent;
  transition: all 0.3s ease;
  margin-right: 6px;
}

/* Efecto cápsula al hacer hover */
ul.menu-popup > li > a:hover {
  border: 1px solid var(--beige);
  background-color: var(--beige_20);
}

/* Efecto cápsula cuando está activo */
ul.menu-popup > li > a.activo {
  border: 1px solid var(--beige);
  background-color: var(--beige_20);
}

.blurb-largo .swiper-button-next.swiper-button-disabled,
.blurb-largo .swiper-button-prev.swiper-button-disabled {
  opacity: .95 !important;
  cursor: auto;
  pointer-events: none;
}

.blurb-largo .dipi_carousel_0 .swiper-container {
  padding-top: 30px !important;
  padding-right: 2vw !important;
  padding-bottom: 30px !important;
  padding-left: 6vw !important;
}

.blurb-largo .dipi-carousel-item-title:hover {
  background-color: var(--trans) !important;
  cursor: default;
}
.blurb-largo .dipi_carousel_child .dipi-carousel-item-desc {
  font-size: var(--fs-p-nor);
  line-height: var(--flh1);
  margin-top: 15px;
}
.blurb-largo .dipi_carousel_child .dipi-carousel-item-content {
  width: auto;
  position: absolute;
  top: 40px;
}
.dipi_carousel_child .dipi-carousel-item-title {
  line-height: 100%;
  margin-bottom: 5px;
  padding: 0;
}
.blurb-corto .dipi-carousel-item-title:hover {
  background-color: var(--azul_90) !important;
  animation: iconFade 0.8s;
  transition: all 0.3s ease;
  cursor: pointer;
}
.et_pb_accordion .et_pb_toggle_content {
  max-width: 90% !important;
  margin-top: 15px;
}
.et_pb_accordion .et_pb_toggle_content p {
  font-size: var(--fs-p-nor) !important;
}


#carrusel .dipi-carousel-image img {
  border-radius: 20px !important;
}
.dipi_carousel_child .dipi-carousel-item-content {
  width: auto;
  position: absolute;
  bottom: 0;
}
.dbr_booking_reservation {
  max-width: 70% !important;
}

.menu-movil .et_pb_toggle_title:before {
  content: none !important; /* Oculta el icono original */
  display: none;
}

.menu-movil .et_pb_toggle_title:after {
  content: "\33";
  font-family: ETmodules !important;
  margin-left: 8px;
  top: 0%;
  position: absolute;
  top: 50%;
  margin-top: -.5em;
}
.menu-movil .et_pb_toggle .et_pb_toggle_title::before {
  display: none;
}
.menu-movil .et_pb_toggle {
  left: 10px;
}
.menu-movil h5.et_pb_toggle_title {
  cursor: pointer;
  position: relative;
  padding: 0 70px 0 0;
  }

.menu-movil .et_pb_toggle_content {
  margin-left: -70px;
  padding-top: 20px;
}
.espacio-10 {
  display: block;
   font-size: var(--fs-p-nor);
  font-weight: var(--fwl-reg);
  padding-bottom: 0px;
}
.espacio-10:last-child {
  margin-bottom: 15px;
}

.div-1 {
  padding-bottom: 1vw;
  padding-top: 1vw;
}
.div-3 {
  padding-bottom: 3vw;
  padding-top: 3vw;
}

/* Base para todos los p con ícono */
p.icono {
  position: relative;
  padding-left: 40px;   /* espacio para el ícono */
}

/* Estilo del pseudo-elemento */
p.icono::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  width: 20px;
  height: 20px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

/* Ícono mapa */
p.icono.map::before {
  background-image: url("https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/icon_LO.svg");
}

/* Ícono teléfono */
p.icono.tel::before {
  background-image: url("https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/icon_WH.svg");
}

/* Base: oculto pero ocupando el viewport fijo */
#sec-menu-movil {
  position: fixed;
  inset: 0;
  width: 100vw;
  min-height: 100vh;
  z-index: 99999;
  overflow: auto;
  -webkit-overflow-scrolling: touch;

  /* Estado oculto */
  opacity: 0;
  visibility: hidden;
  pointer-events: none;

  /* Fade fino */
  transition: opacity .28s ease, visibility .28s ease;
}

/* Visible */
#sec-menu-movil.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* Botón de cierre */
#sec-menu-movil .btn-close-menu-movil {
  position: fixed;
  top: calc(17px + env(safe-area-inset-top));
  right: calc(4% + env(safe-area-inset-right));
  width: 50px;
  height: 50px;
  border: none;
  background: transparent;
  cursor: pointer;
  z-index: 100000;
}

/* Ícono X desde content */
#sec-menu-movil .btn-close-menu-movil::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("https://oliverrenecirugiaplastica.com/wp-content/themes/subgrafica-theme/data/img/iconos/hm-oliver-rene_4.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}

/* Interacciones del botón */
#sec-menu-movil .btn-close-menu-movil:hover::after { opacity: .8; }
#sec-menu-movil .btn-close-menu-movil:focus {
}

/* Bloqueo de scroll del documento cuando el menú está abierto */
html.no-scroll,
body.no-scroll {
  overflow: hidden !important;
  height: 100%;
  touch-action: none;
}



/* =========================================================
   7. LAYOUT Y UTILIDADES
========================================================= */
.vertical {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.left {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.bottom {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.et_pb_row {
    max-width: 1920px !important;
}
.et_pb_section {
  background-color: transparent;
}

.et_pb_section.has-background {
  background-color: unset;
}

/* Fade effect overlay-*/

/* =========================================================
   8. EFECTOS Y ANIMACIONES
========================================================= */
.animate {
  animation: fader 8s infinite linear;
}

@keyframes fader {
  0% {
    opacity: 0;
  }

  80% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}
.effect::after {
    animation: grain 6s steps(10) infinite;
    background-image: url('https://subgrafica.com/data/img/grain.png');
    background-repeat: repeat;
    content: '';
    height: 300%;
    left: -100%;
    opacity: .04;
    pointer-events: none;
    position: fixed;
    top: -100%;
    transition: opacity 0.4s ease;
    width: 300%;
    will-change: transform;
    z-index: 3;
  }

@keyframes grain {
  0% { transform: translate(20%, -15%) }
  10% { transform: translate(-20%, -15%) }
  20% { transform: translate(20%, -5%) }
  30% { transform: translate(-20%, -5%) }
  40% { transform: translate(20%, 5%) }
  50% { transform: translate(-20%, 5%) }
  60% { transform: translate(20%, 15%) }
  70% { transform: translate(-20%, 15%) }
  80% { transform: translate(20%, 5%) }
  90% { transform: translate(-20%, 5%) }
  100% { transform: translate(20%, -5%) }
}
@keyframes iconFade {
  from { opacity: 0; }
  to   { opacity: 1; }
}

#banner_g {
  height: 80vh;
}
#banner_m {
  min-height: 460px;
}

#boton-cita-movil {
    display: none;
  }
#boton-menu {
    display: none;
  }
   #overlay_unique_id_3145 {
    display: none;
  } 

.sec_margen {
   margin-bottom: 10px !important;
  }
.col_margen {
   margin: 0px 0px 0px 10px !important;
  }


   /* Fade effect overlay-*/
 .overlay-hugeinc {
   opacity: 0;
   visibility: hidden;
   -webkit-transition: opacity 0.3s, visibility 0.3s;
   transition: opacity 0.3s, visibility 0.3s;
 }

 .overlay-hugeinc.open {
   opacity: 1;
   visibility: visible;
   -webkit-transition: opacity 0.3s;
   transition: opacity 0.3s;
 }

 .overlay-hugeinc .et_pb_section {
   -webkit-perspective: 1200px;
   perspective: 1200px;
 }

 .overlay-hugeinc .et_pb_section {
   opacity: 0.4;
   -webkit-transform: none !important;
   -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
   transition: transform 0.3s, opacity 0.3s;
 }

 .overlay-hugeinc.open .et_pb_section {
   opacity: 1;
   -webkit-transform: none !important;
   transform: none !important;
 }

 .overlay-hugeinc.close .et_pb_section {
   -webkit-transform: none !important;
   transform: none !important;
 }

 .overlay-container .overlay-close {
   background-image: url("https://oliverrenecirugiaplastica.com/wp-content/uploads/2025/08/hm-oliver-rene_3.svg") !important;
   background-repeat: no-repeat;
   background-position: center;
   font-size: 0px !important;
   color: #EDEBDC !important;
   line-height: 1em;
   right: 19px;
   top: 19px;
 }
 .overlay-container .overlay-close::after {
  content: ' ';
  display: block;
  font-size: 70px;
  height: 45px;
  width: 45px;
  z-index: 99;
  position: relative;
  visibility: hidden;
}

 .overlay-container .overlay-close:hover {
   cursor: pointer !important;
   opacity: .85;
   -webkit-transition-duration: 0.2s;
   transition-duration: 0.2s;
   -webkit-transition-timing-function: ease-in-out;
   transition-timing-function: ease-in-out;
 }

 .overlay-container .overlay-close::after {
   height: 45px;
 }

/** Media Queries para Responsividad **/


/* =========================================================
   9. MEDIA QUERIES
========================================================= */
@media (min-width: 1025px) {

  .col-50-1 {
    margin-right: .5% !important;
    margin-bottom: 10px !important
  }
  .col-50-2 {
    margin-right: .5% !important;
    margin-left: .5% !important;
    margin-bottom: 10px !important;
  }
  .col-50-3 {
    margin-right: .5% !important;
    margin-left: .5% !important;
    margin-bottom: 10px !important;
  }
  .col-50-4 {
    margin-right: .5% !important;
    margin-left: .5% !important;
    margin-bottom: 10px !important;
  }
  .col-home-1 {
    margin: 0px 1% 20px 0% !important;
  }
  .col-home-2 {
   margin: 0px 0% 20px 1% !important;
  }

}
@media (max-width: 1024px) {

  .col-50-1 {
    margin-right: 0px !important;
    margin-bottom: 10px !important;
  }
  .col-50-2 {
    margin-left: 0px !important;
    margin-bottom: 10px !important;
  }
  .col-50-3 {
    margin-right: .5% !important;
    margin-left: .5% !important;
    margin-bottom: 10px !important;
    width: 49% !important;
  }
  .col-50-4 {
    margin-right: .5% !important;
    margin-left: .5% !important;
    margin-bottom: 10px !important;
    width: 49% !important;
  }
  .col-50-3 p {
    margin-bottom: 30px;
  }
  .col-50-4 p {
    margin-bottom: 30px;
  }
  .col-home-1 {
  margin: 0px 1% 20px 1% !important
  }
  .col-home-2 {
  margin: 0px 0% 20px 1% !important;
  }

  .dbr_booking_reservation {
  max-width: 90% !important;
  }
  
}
@media (max-width: 767px) {

  .col-50-1 {
    margin-right: 0px !important;
    margin-bottom: 10px !important;
  }
  .col-50-2 {
    margin-left: 0px !important;
    margin-bottom: 10px !important;
  }
  .col-50-3 {
    margin-right: .5% !important;
    margin-left: .5% !important;
    margin-bottom: 10px !important;
    width: 99% !important;
  }
  .col-50-4 {
    margin-right: .5% !important;
    margin-left: .5% !important;
    margin-bottom: 10px !important;
    width: 99% !important;
  }
  .col-50-3 p {
    margin-bottom: 30px;
  }
  .col-50-4 p {
    margin-bottom: 30px;
  }
  .col-home-1 {
   margin: 0px 0% 20px 0% !important;
  }
  .col-home-2 {
   margin: 0px 0% 20px 0% !important;
  }
  .dbr_booking_reservation {
  max-width: 100% !important;
}
}

/*ajustes para el menú y barra de fondo en pantallas pequeñas*/

@media (max-width: 1366px) {
  #social-bar {
    display: none !important;
  }
  /* 2. Ajustar margen izquierdo o posición del menú */
  #lista {
    right: 170px !important; /* cambia según cómo esté aplicado el offset original */
  }
  #barra-fondo {
    width: calc(100vw - 210px);
    right: 170px;
  }
}
@media (max-width: 1080px) {
  #boton-cita {
    display: none !important;
  }
  /* 2. Ajustar margen izquierdo o posición del menú */
  #lista {
    right: 0px !important; /* cambia según cómo esté aplicado el offset original */
  }
  #barra-fondo {
    width: calc(100% + 2px);
    right: 0px;
  }
  #boton-cita-movil {
     display: block !important;
  }


  
}
@media (max-width: 880px) {

  /* 2. Ajustar margen izquierdo o posición del menú */
  #boton-cita {
    display: none !important;
  }
    #boton-cita-movil {
     display: block !important;
  }
  #lista {
    display: none !important;
  }
  #barra-fondo {
   width: 188px;
    left: -1px;
  }
  #boton-menu {
     display: block !important;
  } 
    #overlay_unique_id_3145 {
     display: block !important;
  } 
}