.elementor-3313 .elementor-element.elementor-element-90f7dc2{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3313 .elementor-element.elementor-element-455315c9{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3313 .elementor-element.elementor-element-7e05b35b{--display:flex;--position:absolute;--min-height:68px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:-68px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;top:0px;--z-index:200;}body:not(.rtl) .elementor-3313 .elementor-element.elementor-element-7e05b35b{left:0px;}body.rtl .elementor-3313 .elementor-element.elementor-element-7e05b35b{right:0px;}.elementor-3313 .elementor-element.elementor-element-f4b10be{--display:flex;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:14px;--padding-bottom:14px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3313 .elementor-element.elementor-element-bbd81c0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 20px;text-align:left;}.elementor-3313 .elementor-element.elementor-element-bbd81c0 img{width:215px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-3313 .elementor-element.elementor-element-7e05b35b{--width:100%;--justify-content:space-between;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--z-index:9999;}.elementor-3313 .elementor-element.elementor-element-f4b10be{--width:156px;}.elementor-3313 .elementor-element.elementor-element-bbd81c0{padding:0px 0px 0px 12px;}}/* Start custom CSS for html, class: .elementor-element-7cfeec3 *//* Estilos generales */
:root {
  /* Cambiando color primario de azul a rojo */
  --primary: #bc2649;
  --primary-glow: rgba(188, 38, 73, 0.4);
  --dark: #121520;
  --dark-secondary: #1a1e2e;
  --gray: #555;
  --light-gray: #aaa;
  --text: #ffffff;
}

/* Estilos del banner de cookies */
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-container {
  position: fixed;
  bottom: -150px;
  left: 20px;
  right: 20px;
  max-width: 640px;
  margin: auto;
  z-index: 9999;
  transition: all 0.8s cubic-bezier(0.22, 1, 0.36, 1);
  opacity: 0;
  font-family: "Inter", Sans-Serif !important;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-container.show {
  bottom: 20px;
  opacity: 1;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-banner,
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-preferences {
  background: linear-gradient(145deg, rgba(25, 25, 25, 1), rgba(0, 0, 0, 1)) !important;
  color: var(--text);
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5), /* Cambiando borde de azul a rojo */ 0 0 0 1px rgba(188, 38, 73, 0.2);
  border: 1px solid rgba(188, 38, 73, 0.3);
  position: relative;
  overflow: hidden;
  backdrop-filter: blur(10px);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-banner::before,
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-preferences::before {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.1), var(--primary-glow), rgba(255, 255, 255, 0.05)) !important;
  z-index: -1;
  filter: blur(8px);
  opacity: 0.7;
  animation: borderGlow 6s infinite alternate;
}

@keyframes borderGlow {
  0% {
    opacity: 0.4;
    filter: blur(8px);
  }
  50% {
    opacity: 0.7;
    filter: blur(12px);
  }
  100% {
    opacity: 0.5;
    filter: blur(10px);
  }
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-banner p,
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-preferences p {
  margin: 0 0 16px;
  line-height: 1.5;
  color: var(--text);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
}

/* Estilos de botones */
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn {
  border: none;
  padding: 10px 18px;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 600;
  transition: all 0.3s cubic-bezier(0.22, 1, 0.36, 1);
  position: relative;
  overflow: hidden;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0)) !important;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn:hover::before {
  opacity: 1;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 5px;
  height: 5px;
  background: rgba(255, 255, 255, 0.8) !important;
  opacity: 0;
  border-radius: 100%;
  transform: scale(1, 1) translate(-50%, -50%);
  transform-origin: 50% 50%;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn:focus:not(:active)::after {
  animation: ripple 1.2s ease-out;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-primary {
  /* Cambiando gradiente de azul a rojo */
  background: linear-gradient(145deg, #d42c5a, var(--primary)) !important;
  color: white;
  /* Cambiando sombras de azul a rojo */
  box-shadow: 0 4px 15px rgba(188, 38, 73, 0.4), 0 0 0 1px rgba(188, 38, 73, 0.5) inset;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-primary:hover {
  /* Cambiando sombras hover de azul a rojo */
  box-shadow: 0 8px 25px rgba(188, 38, 73, 0.5), 0 0 0 1px rgba(188, 38, 73, 0.6) inset;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-secondary {
  background: linear-gradient(145deg, #666, var(--gray)) !important;
  color: white;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-secondary:hover {
  background: linear-gradient(145deg, #777, #666) !important;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.4);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-dark {
  background: linear-gradient(145deg, #444, #333) !important;
  color: white;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-dark:hover {
  background: linear-gradient(145deg, #555, #444) !important;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.4);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-link {
  color: var(--light-gray);
  font-size: 13px;
  text-decoration: underline;
  margin-left: auto;
  position: relative;
  transition: all 0.3s ease;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-link:hover {
  color: white;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-link:hover::after {
  width: 100%;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .back-link {
  color: var(--light-gray);
  font-size: 13px;
  text-decoration: none;
  display: inline-block;
  margin-top: 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .back-link:hover {
  color: var(--primary);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-primary:hover,
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-secondary:hover,
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn-dark:hover {
  color: white;
}

/* Estilos para las preferencias */
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-preferences {
  display: none;
  transform: scale(0.95) translateY(10px);
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-preferences.show {
  display: block;
  transform: scale(1) translateY(0);
  opacity: 1;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkbox-wrapper {
  display: block;
  margin-bottom: 12px;
  position: relative;
  padding-left: 30px;
  cursor: pointer;
  user-select: none;
  color: var(--text);
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkbox-wrapper input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #333 !important;
  border-radius: 4px;
  transition: all 0.2s ease;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(255, 255, 255, 0.1) inset;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkbox-wrapper:hover input ~ .checkmark {
  background-color: #444 !important;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkbox-wrapper input:checked ~ .checkmark {
  /* Cambiando checkbox checked de azul a rojo */
  background: linear-gradient(145deg, #d42c5a, var(--primary)) !important;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkbox-wrapper input:checked ~ .checkmark:after {
  display: block;
  animation: checkmark 0.2s forwards;
}

@keyframes checkmark {
  0% {
    opacity: 0;
    transform: scale(0) rotate(45deg);
  }
  100% {
    opacity: 1;
    transform: scale(1) rotate(45deg);
  }
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkbox-wrapper .checkmark:after {
  left: 7px;
  top: 3px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

/* Animaciones */
@keyframes ripple {
  0% {
    transform: scale(0, 0);
    opacity: 1;
  }
  20% {
    transform: scale(25, 25);
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: scale(40, 40);
  }
}

@keyframes pulse {
  0% {
    /* Cambiando animación pulse de azul a rojo */
    box-shadow: 0 0 0 0 rgba(188, 38, 73, 0.7);
  }
  70% {
    box-shadow: 0 0 0 15px rgba(188, 38, 73, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(188, 38, 73, 0);
  }
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .pulse {
  animation: pulse 2.5s infinite;
}

/* Efecto de entrada flotante */
@keyframes floatIn {
  0% {
    transform: translateY(50px) scale(0.9);
    opacity: 0;
  }
  100% {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
}

/* Efecto de salida flotante */
@keyframes floatOut {
  0% {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateY(50px) scale(0.9);
    opacity: 0;
  }
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 body {
  font-size: 13px;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-banner p,
.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-preferences p {
  font-size: 13px;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .btn {
  font-size: 13px;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .cookie-link {
  font-size: 13px;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .back-link {
  font-size: 13px;
}

.elementor-3313 .elementor-element.elementor-element-7cfeec3 .checkbox-wrapper {
  font-size: 13px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-90f7dc2 */.elementor-3313 .elementor-element.elementor-element-90f7dc2 *, .elementor-3313 .elementor-element.elementor-element-90f7dc2 {
     background-image: unset !important;
}

.elementor-3313 .elementor-element.elementor-element-90f7dc2 .e-con.e-parent * {
  background-image: inherit !important
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-455315c9 */.elementor-3313 .elementor-element.elementor-element-455315c9 *, .elementor-3313 .elementor-element.elementor-element-455315c9 {
     background-image: unset !important;
}

.elementor-3313 .elementor-element.elementor-element-455315c9 .e-con.e-parent * {
  background-image: inherit !important
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7e05b35b */.elementor-3313 .elementor-element.elementor-element-7e05b35b {
  transition: background-color 1s ease, min-height 1s ease !important;
}

.elementor-3313 .elementor-element.elementor-element-7e05b35b > .elementor-container {
  min-height: 100px;
  transition: min-height 1s ease !important;
}

.elementor-3313 .elementor-element.elementor-element-7e05b35b.elementor-sticky--effects {
  background-color: rgba(0,0,0,0.4) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.elementor-3313 .elementor-element.elementor-element-7e05b35b.elementor-sticky--effects > .elementor-container {
  min-height: 70px;
}/* End custom CSS */