@charset "UTF-8";
/**
 * alertifyjs 1.11.3 http://alertifyjs.com
 * AlertifyJS is a javascript framework for developing pretty browser dialogs and notifications.
 * Copyright 2019 Mohammad Younes <Mohammad@alertifyjs.com> (http://alertifyjs.com) 
 * Licensed under GPL 3 <https://opensource.org/licenses/gpl-3.0>*/
.alertify .ajs-dimmer {
  position: fixed;
  z-index: 1981;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0;
  margin: 0;
  background-color: #252525;
  opacity: 0.5;
}

.alertify .ajs-modal {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  padding: 0;
  overflow-y: auto;
  z-index: 1981;
}

.alertify .ajs-dialog {
  position: relative;
  margin: 5% auto;
  min-height: 110px;
  max-width: 500px;
  padding: 24px 24px 0 24px;
  outline: 0;
  background-color: #fff;
}

.alertify .ajs-dialog.ajs-capture:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  z-index: 1;
}

.alertify .ajs-reset {
  position: absolute !important;
  display: inline !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
}

.alertify .ajs-commands {
  position: absolute;
  right: 4px;
  margin: -14px 24px 0 0;
  z-index: 2;
}

.alertify .ajs-commands button {
  display: none;
  width: 10px;
  height: 10px;
  margin-left: 10px;
  padding: 10px;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
}

.alertify .ajs-commands button.ajs-close {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAh0lEQVQYlY2QsQ0EIQwEB9cBAR1CJUaI/gigDnwR6NBL/7/xWLNrZ2b8EwGotVpr7eOitWa1VjugiNB7R1UPrKrWe0dEAHBbXUqxMQbeewDmnHjvyTm7C3zDwAUd9c63YQdUVdu6EAJzzquz7HXvTiklt+H9DQFYaxFjvDqllFyMkbXWvfpXHjJrWFgdBq/hAAAAAElFTkSuQmCC);
}

.alertify .ajs-commands button.ajs-maximize {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAOUlEQVQYlWP8//8/AzGAhYGBgaG4uBiv6t7eXkYmooxjYGAgWiELsvHYFMCcRX2rSXcjoSBiJDbAAeD+EGu+8BZcAAAAAElFTkSuQmCC);
}

.alertify .ajs-header {
  margin: -24px;
  margin-bottom: 0;
  padding: 16px 24px;
  background-color: #fff;
}

.alertify .ajs-body {
  min-height: 56px;
}

.alertify .ajs-body .ajs-content {
  padding: 16px 24px 16px 16px;
}

.alertify .ajs-footer {
  padding: 4px;
  margin-left: -24px;
  margin-right: -24px;
  min-height: 43px;
  background-color: #fff;
}

.alertify .ajs-footer .ajs-buttons.ajs-primary {
  text-align: right;
}

.alertify .ajs-footer .ajs-buttons.ajs-primary .ajs-button {
  margin: 4px;
}

.alertify .ajs-footer .ajs-buttons.ajs-auxiliary {
  float: left;
  clear: none;
  text-align: left;
}

.alertify .ajs-footer .ajs-buttons.ajs-auxiliary .ajs-button {
  margin: 4px;
}

.alertify .ajs-footer .ajs-buttons .ajs-button {
  min-width: 88px;
  min-height: 35px;
}

.alertify .ajs-handle {
  position: absolute;
  display: none;
  width: 10px;
  height: 10px;
  right: 0;
  bottom: 0;
  z-index: 1;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMS8xNEDQYmMAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAQ0lEQVQYlaXNMQoAIAxD0dT7H657l0KX3iJuUlBUNOsPPCGJm7VDp6ryeMxMuDsAQH7owW3pyn3RS26iKxERMLN3ugOaAkaL3sWVigAAAABJRU5ErkJggg==);
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  cursor: se-resize;
}

.alertify.ajs-no-overflow .ajs-body .ajs-content {
  overflow: hidden !important;
}

.alertify.ajs-no-padding.ajs-maximized .ajs-body .ajs-content {
  left: 0;
  right: 0;
  padding: 0;
}

.alertify.ajs-no-padding:not(.ajs-maximized) .ajs-body {
  margin-left: -24px;
  margin-right: -24px;
}

.alertify.ajs-no-padding:not(.ajs-maximized) .ajs-body .ajs-content {
  padding: 0;
}

.alertify.ajs-no-padding.ajs-resizable .ajs-body .ajs-content {
  left: 0;
  right: 0;
}

.alertify.ajs-maximizable .ajs-commands button.ajs-maximize,
.alertify.ajs-maximizable .ajs-commands button.ajs-restore {
  display: inline-block;
}

.alertify.ajs-closable .ajs-commands button.ajs-close {
  display: inline-block;
}

.alertify.ajs-maximized .ajs-dialog {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  top: 0 !important;
  left: 0 !important;
}

.alertify.ajs-maximized.ajs-modeless .ajs-modal {
  position: fixed !important;
  min-height: 100% !important;
  max-height: none !important;
  margin: 0 !important;
}

.alertify.ajs-maximized .ajs-commands button.ajs-maximize {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAASklEQVQYlZWQ0QkAMQhDtXRincOZX78KVtrDCwgqJNEoIB3MPLj7lRUROlpyVXGzby6zWuY+kz6tj5sBMTMAyVV3/595RbOh3cAXsww1raeiOcoAAAAASUVORK5CYII=);
}

.alertify.ajs-resizable .ajs-dialog,
.alertify.ajs-maximized .ajs-dialog {
  padding: 0;
}

.alertify.ajs-resizable .ajs-commands,
.alertify.ajs-maximized .ajs-commands {
  margin: 14px 24px 0 0;
}

.alertify.ajs-resizable .ajs-header,
.alertify.ajs-maximized .ajs-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0;
  padding: 16px 24px;
}

.alertify.ajs-resizable .ajs-body,
.alertify.ajs-maximized .ajs-body {
  min-height: 224px;
  display: inline-block;
}

.alertify.ajs-resizable .ajs-body .ajs-content,
.alertify.ajs-maximized .ajs-body .ajs-content {
  position: absolute;
  top: 50px;
  right: 24px;
  bottom: 50px;
  left: 24px;
  overflow: auto;
}

.alertify.ajs-resizable .ajs-footer,
.alertify.ajs-maximized .ajs-footer {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
}

.alertify.ajs-resizable:not(.ajs-maximized) .ajs-dialog {
  min-width: 548px;
}

.alertify.ajs-resizable:not(.ajs-maximized) .ajs-handle {
  display: block;
}

.alertify.ajs-movable:not(.ajs-maximized) .ajs-header {
  cursor: move;
}

.alertify.ajs-modeless .ajs-dimmer,
.alertify.ajs-modeless .ajs-reset {
  display: none;
}

.alertify.ajs-modeless .ajs-modal {
  overflow: visible;
  max-width: none;
  max-height: 0;
}

.alertify.ajs-modeless.ajs-pinnable .ajs-commands button.ajs-pin {
  display: inline-block;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAQklEQVQYlcWPMQ4AIAwCqU9u38GbcbHRWN1MvKQDhQFMEpKImGJA0gCgnYw0V0rwxseg5erT4oSkQVI5d9f+e9+xA0NbLpWfitPXAAAAAElFTkSuQmCC);
}

.alertify.ajs-modeless.ajs-unpinned .ajs-modal {
  position: absolute;
}

.alertify.ajs-modeless.ajs-unpinned .ajs-commands button.ajs-pin {
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNy8xMy8xNOrZqugAAAAcdEVYdFNvZnR3YXJlAEFkb2JlIEZpcmV3b3JrcyBDUzbovLKMAAAAO0lEQVQYlWP8//8/AzGAiShV6AqLi4txGs+CLoBLMYbC3t5eRmyaWfBZhwwYkX2NTxPRvibKjRhW4wMAhxkYGbLu3pEAAAAASUVORK5CYII=);
}

.alertify.ajs-modeless:not(.ajs-unpinned) .ajs-body {
  max-height: 500px;
  overflow: auto;
}

.alertify.ajs-basic .ajs-header {
  opacity: 0;
}

.alertify.ajs-basic .ajs-footer {
  visibility: hidden;
}

.alertify.ajs-frameless .ajs-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  min-height: 60px;
  margin: 0;
  padding: 0;
  opacity: 0;
  z-index: 1;
}

.alertify.ajs-frameless .ajs-footer {
  display: none;
}

.alertify.ajs-frameless .ajs-body .ajs-content {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.alertify.ajs-frameless:not(.ajs-resizable) .ajs-dialog {
  padding-top: 0;
}

.alertify.ajs-frameless:not(.ajs-resizable) .ajs-dialog .ajs-commands {
  margin-top: 0;
}

.ajs-no-overflow {
  overflow: hidden !important;
  outline: none;
}

.ajs-no-overflow.ajs-fixed {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow-y: scroll !important;
}

.ajs-no-selection,
.ajs-no-selection * {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

@media screen and (max-width: 568px) {
  .alertify .ajs-dialog {
    min-width: 150px;
  }
  .alertify:not(.ajs-maximized) .ajs-modal {
    padding: 0 5%;
  }
  .alertify:not(.ajs-maximized).ajs-resizable .ajs-dialog {
    min-width: initial;
    min-width: auto;
  }
}
@-moz-document url-prefix() {
  .alertify button:focus {
    outline: 1px dotted #3593D2;
  }
}
.alertify .ajs-dimmer,
.alertify .ajs-modal {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition-property: opacity, visibility;
  transition-property: opacity, visibility;
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
  -webkit-transition-duration: 250ms;
  transition-duration: 250ms;
}

.alertify.ajs-hidden .ajs-dimmer,
.alertify.ajs-hidden .ajs-modal {
  visibility: hidden;
  opacity: 0;
}

.alertify.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms;
}

.alertify.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-duration: 250ms;
  animation-duration: 250ms;
}

.alertify .ajs-dialog.ajs-shake {
  -webkit-animation-name: ajs-shake;
  animation-name: ajs-shake;
  -webkit-animation-duration: 0.1s;
  animation-duration: 0.1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes ajs-shake {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
@keyframes ajs-shake {
  0%, 100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
.alertify.ajs-slide.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-slideIn;
  animation-name: ajs-slideIn;
  -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.alertify.ajs-slide.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-slideOut;
  animation-name: ajs-slideOut;
  -webkit-animation-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
  animation-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}

.alertify.ajs-zoom.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-zoomIn;
  animation-name: ajs-zoomIn;
}

.alertify.ajs-zoom.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-zoomOut;
  animation-name: ajs-zoomOut;
}

.alertify.ajs-fade.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-fadeIn;
  animation-name: ajs-fadeIn;
}

.alertify.ajs-fade.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-fadeOut;
  animation-name: ajs-fadeOut;
}

.alertify.ajs-pulse.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-pulseIn;
  animation-name: ajs-pulseIn;
}

.alertify.ajs-pulse.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-pulseOut;
  animation-name: ajs-pulseOut;
}

.alertify.ajs-flipx.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-flipInX;
  animation-name: ajs-flipInX;
}

.alertify.ajs-flipx.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-flipOutX;
  animation-name: ajs-flipOutX;
}

.alertify.ajs-flipy.ajs-in:not(.ajs-hidden) .ajs-dialog {
  -webkit-animation-name: ajs-flipInY;
  animation-name: ajs-flipInY;
}

.alertify.ajs-flipy.ajs-out.ajs-hidden .ajs-dialog {
  -webkit-animation-name: ajs-flipOutY;
  animation-name: ajs-flipOutY;
}

@-webkit-keyframes ajs-pulseIn {
  0%, 20%, 40%, 60%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes ajs-pulseIn {
  0%, 20%, 40%, 60%, 80%, 100% {
    -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@-webkit-keyframes ajs-pulseOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
@keyframes ajs-pulseOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
@-webkit-keyframes ajs-zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.25, 0.25, 0.25);
    transform: scale3d(0.25, 0.25, 0.25);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes ajs-zoomIn {
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.25, 0.25, 0.25);
    transform: scale3d(0.25, 0.25, 0.25);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@-webkit-keyframes ajs-zoomOut {
  0% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.25, 0.25, 0.25);
    transform: scale3d(0.25, 0.25, 0.25);
  }
}
@keyframes ajs-zoomOut {
  0% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.25, 0.25, 0.25);
    transform: scale3d(0.25, 0.25, 0.25);
  }
}
@-webkit-keyframes ajs-fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes ajs-fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes ajs-fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes ajs-fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes ajs-flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes ajs-flipInX {
  0% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@-webkit-keyframes ajs-flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@keyframes ajs-flipOutX {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@-webkit-keyframes ajs-flipInY {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes ajs-flipInY {
  0% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-transition-timing-function: ease-in;
    transition-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  100% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@-webkit-keyframes ajs-flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@keyframes ajs-flipOutY {
  0% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@-webkit-keyframes ajs-slideIn {
  0% {
    margin-top: -100%;
  }
  100% {
    margin-top: 5%;
  }
}
@keyframes ajs-slideIn {
  0% {
    margin-top: -100%;
  }
  100% {
    margin-top: 5%;
  }
}
@-webkit-keyframes ajs-slideOut {
  0% {
    margin-top: 5%;
  }
  100% {
    margin-top: -100%;
  }
}
@keyframes ajs-slideOut {
  0% {
    margin-top: 5%;
  }
  100% {
    margin-top: -100%;
  }
}
.alertify-notifier {
  position: fixed;
  width: 0;
  overflow: visible;
  z-index: 1982;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.alertify-notifier .ajs-message {
  position: relative;
  width: 260px;
  max-height: 0;
  padding: 0;
  opacity: 0;
  margin: 0;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -webkit-transition-duration: 250ms;
  transition-duration: 250ms;
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
}

.alertify-notifier .ajs-message.ajs-visible {
  -webkit-transition-duration: 500ms;
  transition-duration: 500ms;
  -webkit-transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  opacity: 1;
  max-height: 100%;
  padding: 15px;
  margin-top: 10px;
}

.alertify-notifier .ajs-message.ajs-success {
  background: rgba(91, 189, 114, 0.95);
}

.alertify-notifier .ajs-message.ajs-error {
  background: #dc3545;
}

.alertify-notifier .ajs-message.ajs-warning {
  background: rgba(252, 248, 215, 0.95);
}

.alertify-notifier .ajs-message .ajs-close {
  position: absolute;
  top: 0;
  right: 0;
  width: 16px;
  height: 16px;
  cursor: pointer;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAABGdBTUEAALGPC/xhBQAAAFBJREFUGBl1j0EKADEIA+ve/P9f9bh1hEihNBfjVCO1v7RKVqJK4h8gM5cAPR42AkQEpSXPwMTyoi13n5N9YqJehm3Fnr7nL1D0ZEbD5OubGyC7a9gx+9eNAAAAAElFTkSuQmCC);
  background-repeat: no-repeat;
  background-position: center center;
  background-color: rgba(0, 0, 0, 0.5);
  border-top-right-radius: 2px;
}

.alertify-notifier.ajs-top {
  top: 10px;
}

.alertify-notifier.ajs-bottom {
  bottom: 10px;
}

.alertify-notifier.ajs-right {
  right: 10px;
}

.alertify-notifier.ajs-right .ajs-message {
  right: -320px;
}

.alertify-notifier.ajs-right .ajs-message.ajs-visible {
  right: 290px;
}

.alertify-notifier.ajs-left {
  left: 10px;
}

.alertify-notifier.ajs-left .ajs-message {
  left: -300px;
}

.alertify-notifier.ajs-left .ajs-message.ajs-visible {
  left: 0;
}

.alertify-notifier.ajs-center {
  left: 50%;
}

.alertify-notifier.ajs-center .ajs-message {
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.alertify-notifier.ajs-center .ajs-message.ajs-visible {
  left: 50%;
  -webkit-transition-timing-function: cubic-bezier(0.57, 0.43, 0.1, 0.65);
  transition-timing-function: cubic-bezier(0.57, 0.43, 0.1, 0.65);
}

.alertify-notifier.ajs-center.ajs-top .ajs-message {
  top: -300px;
}

.alertify-notifier.ajs-center.ajs-top .ajs-message.ajs-visible {
  top: 0;
}

.alertify-notifier.ajs-center.ajs-bottom .ajs-message {
  bottom: -300px;
}

.alertify-notifier.ajs-center.ajs-bottom .ajs-message.ajs-visible {
  bottom: 0;
}

/**
 * alertifyjs 1.11.3 http://alertifyjs.com
 * AlertifyJS is a javascript framework for developing pretty browser dialogs and notifications.
 * Copyright 2019 Mohammad Younes <Mohammad@alertifyjs.com> (http://alertifyjs.com) 
 * Licensed under GPL 3 <https://opensource.org/licenses/gpl-3.0>*/
.alertify .ajs-dimmer {
  background-color: #000;
  opacity: 0.5;
}

.alertify .ajs-dialog {
  max-width: 600px;
  min-height: 122px;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  border-radius: 6px;
}

.alertify .ajs-header {
  color: #333;
  border-bottom: 1px solid #e5e5e5;
  border-radius: 6px 6px 0 0;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 18px;
}

.alertify .ajs-body {
  font-family: "Roboto", sans-serif;
  color: black;
}

.alertify.ajs-resizable .ajs-content,
.alertify.ajs-maximized:not(.ajs-resizable) .ajs-content {
  top: 58px;
  bottom: 68px;
}

.alertify .ajs-footer {
  background-color: #fff;
  padding: 15px;
  border-top: 1px solid #e5e5e5;
  border-radius: 0 0 6px 6px;
}

.alertify-notifier .ajs-message {
  background: rgba(255, 255, 255, 0.95);
  color: #000;
  text-align: center;
  border: solid 1px #ddd;
  border-radius: 2px;
}

.alertify-notifier .ajs-message.ajs-success {
  color: #fff;
  background: rgba(91, 189, 114, 0.95);
  text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.5);
}

.alertify-notifier .ajs-message.ajs-error {
  color: #fff;
  /* El color que había no es tan rojo como el que hay en https://getbootstrap.com/docs/4.0/utilities/colors/ */
  background: #dc3545;
  text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.5);
}

.alertify-notifier .ajs-message.ajs-warning {
  background: rgba(252, 248, 215, 0.95);
  border-color: #999;
}

/* Ocultamos siempre el header https://cloud.githubusercontent.com/assets/4712046/4170670/0d50b04c-3535-11e4-87a7-1ce62dd0d77e.png */
.alertify .ajs-header {
  display: none;
}

.alertify .ajs-dialog {
  border-radius: 0;
}

.alertify .ajs-body {
  font-family: inherit !important;
  color: #1d2326;
  font-size: 16px;
}

.alertify .ajs-footer .ajs-buttons .ajs-button {
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid;
  font-size: 14px;
  border-radius: 0;
  box-shadow: none;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.back .alertify .ajs-footer .ajs-buttons .ajs-button.btn-default {
  background-color: #445cad;
  border-color: #445cad;
  color: #fff;
}

.preview .alertify .ajs-footer .ajs-buttons .ajs-button.btn-default {
  background-color: #445cad;
  border-color: #445cad;
  color: #fff;
}

.tw-bs .alertify .ajs-footer .ajs-buttons .ajs-button.btn-default {
  background-color: #445cad;
  border-color: #445cad;
  color: #fff;
}

.ctback2 .alertify .ajs-footer .ajs-buttons .ajs-button.btn-default {
  background-color: #2EC4B6;
  border-color: #2EC4B6;
  color: #fff;
}

.alertify .ajs-footer {
  border-top: none;
}

.ajs-message.ajs-success.ajs-visible {
  font-size: 16px;
  text-shadow: none;
  bottom: 13px;
  background-color: #28a745;
}
@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=IBM+Plex+Mono:wght@400;500;600;700&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;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

body {
  -webkit-text-size-adjust: none;
}

mark {
  background-color: transparent;
  color: inherit;
}

input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input, select, textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  -ms-appearance: none;
  appearance: none;
}

/* Mixins */
.aspect-ratio-16-9 {
  position: relative;
}
.aspect-ratio-16-9:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 56.25%;
}
.aspect-ratio-16-9 > * {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
}

.aspect-ratio-4-3 {
  position: relative;
}
.aspect-ratio-4-3:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 75%;
}
.aspect-ratio-4-3 > * {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
}

/* Margins */
/* Fonts */
@font-face {
  font-family: "IBM Plex Mono Regular";
  font-style: normal;
  font-weight: 400;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Regular-c08dac4a8aa2d7afd04edf159e3078451b96c976ed6ee7fb1be7d31076ba1c6e.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Regular-3ac3f3c92b49a7099c54d887c11f5a3199be0ce25df11e3bc116210a65ca42ac.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Regular-4d7ef38d945ed9ecc0437ea3c29f7dbd8487a359383fecb0db1b813ddfadc6e2.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono Italic";
  font-style: italic;
  font-weight: 400;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Italic-925a1f300d31bbbab5a8bd2290bc5b87e0e60f065b593338e06ea308443c117c.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Italic-9bb76308d52e71f07e6d0cfd30677e1b02da522ebde71fe779fdb411e73a2d45.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Italic-d46749d88fb8af3b02955fb3884883914ce90d92976b891485877c4556932d6c.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono Medium";
  font-style: normal;
  font-weight: 500;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Medium-be076e370fea7565e04fd1ff2b9bd6f88bd43d9fd0b2714c6a647d4e3de57aea.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Medium-f89e4d5facb7f1a2259676f9c2d9bc66fc170b5ad772e2cbbb37eb78ceae5294.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Medium-3d56438cfdd9b0f20a79f065d3ca1cfd23a24da9ef6dd71f9777f0d9d5f7bb02.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono Medium Italic";
  font-style: normal;
  font-weight: 500;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-MediumItalic-0a8e09c37d2bcfa333560acaa07fbedcb0bba0b3b51b21374ad67b332ff65200.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-MediumItalic-8ca357bf1175ab95266f36e5a8957986057f56ec97f9cf14ba08318ebafadc6b.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-MediumItalic-83ff81551ef1214b3e3ff7603b678a02a002f2aa1ad5f3a7ff825bd3049daa8d.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono Bold";
  font-style: normal;
  font-weight: 700;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Bold-9c8ee2d651bd0ef2211c0370ce7f36e2ce57485b09bbe7c6c35c8921a0076fc2.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Bold-b2c128c1a107331fa2e30373e553efb4c881bd488bb4dbdf2e47b5dd6642a7a2.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-Bold-b45976a859bd29fc1e467ab61e220eb0a8f1f1d71e5cbaa7e721a65aa1280b5b.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono Bold Italic";
  font-style: italic;
  font-weight: 700;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-BoldItalic-cd610b335d884011e74b7a652a99e7d25d4c80d7c5381f87cc6b0e03e0acb8eb.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-BoldItalic-5e1d6f7a2a91619041087c4763bc835a8a6914d8942eae2901849a39a1f07320.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexMono-BoldItalic-fddb6680b97f796f25cc7f563676e9f8711ca2e0f58c97b4571d68ab04d7d50f.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Sans Regular";
  font-style: normal;
  font-weight: 400;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Regular-0461666d3104d19ccc6c8d63ddbed6cdbd325c9acef38b09d15b122cea861c42.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Regular-97344e798a38bfef8e29ee3a0894a627b48d000b5c6b885a9d1abb07893c9b56.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Regular-7cdc26e84f84d266aaf5b9e1deb99256813449283b0c3a3a213f25476bef5005.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Sans Italic";
  font-style: italic;
  font-weight: 400;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Italic-d6aad10b178b68eef479e7108e2d5574b7acd3f217416c48cdc4b9cf0c5d616f.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Italic-8e13ef8119d32203b89d689e6f9f627260ec0a2ba442521cb7c1deb988b6819e.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Italic-5e9506e6cda36ba42b903bb39181f369bb9e37736cc686a172eab0a1b180e393.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Sans Medium";
  font-style: normal;
  font-weight: 500;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Medium-5bb72152614b3fb738c0ee8153585a89b5ad09d96ae72dc934554660393a78e6.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Medium-e44b36efddc4325e972b28d48e1015834888dcb71853417912f9deccf952c80d.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Medium-8d2fcdf5d56f8db413d627886c15b1a76503a1c91d1724c6409504065820ec5c.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Sans Medium Italic";
  font-style: italic;
  font-weight: 500;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-MediumItalic-9616d48700c31c62d0e6264477e9ac195c75ab253ef1fc9786dac0ba8017f6ad.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-MediumItalic-be1d08f75474af1b16479b291937d1132962b53c9374213857a6fc30cfeb32ea.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-MediumItalic-61df37747f18587a7c646e2fb69b0b24ef250a8ef5900677201eeb7671cebea3.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Sans Bold";
  font-style: normal;
  font-weight: 700;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Bold-80588030eb545652036d765c60159a5b3bef75e7652619dd7bb19cf34c273e76.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Bold-a0d6d02c36683377a4294400319442b3fd53e112d21e24ead43321b81cd7b42c.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-Bold-b5a6ad43cc6fda304803645bc6101b7e8925142f1e98f7548acc6977cee174e3.ttf) format("truetype");
}
@font-face {
  font-family: "IBM Plex Sans Bold Italic";
  font-style: italic;
  font-weight: 700;
  src: url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-BoldItalic-c8bca31b81b36bb7e6d3398e41d148051f971a0c81c382afc3371b1e0eb8dad0.woff2) format("woff2"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-BoldItalic-1080078982ab3ef1c18a647dd937b7dac7b068496ffc2174050ba8e0e3f48b92.woff) format("woff"), url(https://cdn8.ct-assets.com/assets/ctfront2/IBMPlexSans-BoldItalic-ade9bf26999d2a708dd1529b222444431a5496395c27a2c603bb008aeb825803.ttf) format("truetype");
}
:root {
  /* Legacy colors — kept for theme compatibility */
  --black: #1d2326;
  --golden: #807e7c;
  --white: #ffffff;
  --cherry: #DB073C;
  --crimson: #5B1E2E;
  --blue: #445cad;
  --violet: #a4b0f5;
  --grey: #807e7c;
  --light-grey: #bfbcba;
  --ultra-light-grey: #e6eaec;
  --steel-grey: #6b818c;
  --grey-text: #617580;
  --blue-grey: #91b0bf;
  --emerald: #2ec4b6;
  --emerald-alternative: #254442;
  --green: #a8dadc;
  --yellow-saffron: #e6a429;
  --yellow-alternative: #664912;
  --button-disabled: #edeae6;
  --facebook: #395185;
  --twitter: #46b4f1;
  --instagram: #c407a7;
  --information: #1a98d7;
  --footer-hover: rgba(0,0,0,0.7);
  --link-hover: rgba(68, 100, 173,0.7);
  --danger: #d44950;
  /* Redesign 2026 — Design tokens */
  /* Corporate colors */
  --ct-red: #DB073C;
  --ct-red-dark: #b8062f;
  --ct-red-light: #fef1f4;
  --ct-red-glow: rgba(219, 7, 60, 0.15);
  --ct-blue: #445CAD;
  --ct-blue-dark: #364a8a;
  --ct-blue-light: #eef1f9;
  --ct-blue-glow: rgba(68, 92, 173, 0.12);
  /* Neutrals */
  --ct-white: #ffffff;
  --ct-off-white: #f8f9fc;
  --ct-gray-50: #f4f5f9;
  --ct-gray-100: #ebedf3;
  --ct-gray-200: #e0e3eb;
  --ct-gray-300: #d1d5e0;
  --ct-gray-400: #ced4da;
  --ct-gray-500: #adb5bd;
  --ct-gray-600: #6c757d;
  --ct-gray-700: #495057;
  --ct-gray-800: #2b3040;
  --ct-gray-900: #1a1f2e;
  /* Text */
  --ct-text: #4a5568;
  --ct-text-dark: #1a202c;
  --ct-text-light: #718096;
  --ct-text-muted: #a0aec0;
  /* Shadows */
  --ct-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.04);
  --ct-shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
  --ct-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  --ct-shadow-md: 0 8px 30px rgba(0, 0, 0, 0.10);
  --ct-shadow-lg: 0 20px 60px rgba(0, 0, 0, 0.15);
  --ct-shadow-colored: 0 8px 30px var(--ct-red-glow);
  /* Border radius */
  --ct-radius-sm: 8px;
  --ct-radius: 12px;
  --ct-radius-lg: 20px;
  --ct-radius-xl: 28px;
  --ct-radius-pill: 999px;
  /* Typography — Inter as main font for modern SaaS look */
  --ct-font-display: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --ct-font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --ct-font-mono: 'IBM Plex Mono', monospace;
  /* Transitions */
  --ct-duration: 0.3s;
  --ct-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Price plans */
.stone-clr {
  color: var(--violet);
  color: #a4b0f5;
}

.stone-bg {
  background-color: var(--violet);
  background-color: #a4b0f5;
}

.gold-clr {
  color: var(--yellow-saffron);
  color: #e6a429;
}

.gold-bg {
  background-color: var(--yellow-saffron);
  background-color: #e6a429;
}

.diamond-clr {
  color: var(--blue-grey);
  color: #91b0bf;
}

.diamond-bg {
  background-color: var(--blue-grey);
  background-color: #91b0bf;
}

.enterprise-clr {
  color: var(--steel-grey);
  color: #6b818c;
}

.enterprise-bg {
  background-color: var(--steel-grey);
  background-color: #6b818c;
}

.black-bg {
  background-color: var(--steel-grey);
  background-color: #6b818c;
}

.cherry-clr {
  color: var(--cherry);
  color: #DB073C;
}

/* General colors */
.cherry-theme header {
  background-color: var(--cherry);
  background-color: #DB073C;
}
.lakegreen-theme header {
  background-color: var(--emerald);
  background-color: #2ec4b6;
}
.yellow-theme header {
  background-color: var(--yellow-saffron);
  background-color: #e6a429;
}
.white-theme header {
  background-color: transparent;
}
@media screen and (max-width: 992px) {
  header {
    transition: background-color 0.2s ease-in;
  }
  .cherry-theme header.transparent {
    background-color: rgba(var(--cherry), 0.82);
    background-color: rgba(219, 7, 60, 0.82);
  }
  .lakegreen-theme header.transparent {
    background-color: rgba(var(--emerald), 0.82);
    background-color: rgba(46, 196, 182, 0.82);
  }
  .yellow-theme header.transparent {
    background-color: rgba(var(--yellow-saffron), 0.82);
    background-color: rgba(230, 164, 41, 0.82);
  }
  .white-theme header.transparent {
    background-color: transparent;
  }
}

h1 {
  color: var(--black);
  color: #1d2326;
}

h2 {
  color: var(--black);
  color: #1d2326;
}
.cherry-theme h2.text-center {
  color: var(--cherry);
  color: #DB073C;
}
.lakegreen-theme h2.text-center {
  color: var(--emerald);
  color: #2ec4b6;
}
.yellow-theme h2.text-center {
  color: var(--yellow-saffron);
  color: #e6a429;
}

.cherry-theme h3 {
  color: var(--cherry);
  color: #DB073C;
}
.lakegreen-theme h3 {
  color: var(--emerald);
  color: #2ec4b6;
}
.yellow-theme h3 {
  color: var(--yellow-saffron);
  color: #e6a429;
}

h4 {
  color: var(--black);
  color: #1d2326;
}

h5 {
  color: var(--black);
  color: #1d2326;
}

h6 {
  color: var(--blue);
  color: #445cad;
}
.cherry-theme h6.sub-title-section {
  color: var(--cherry);
  color: #DB073C;
}
.lakegreen-theme h6.sub-title-section {
  color: var(--emerald);
  color: #2ec4b6;
}
.yellow-theme h6.sub-title-section {
  color: var(--yellow-saffron);
  color: #e6a429;
}

p {
  color: var(--black);
  color: #1d2326;
}

a, button.btn-link {
  color: var(--blue);
  color: #445cad;
}
a:hover, a:focus, button.btn-link:hover, button.btn-link:focus {
  color: var(--link-hover);
  color: rgba(68, 100, 173, 0.7);
}

.text-strong {
  font-size: 1.166666rem;
  font-weight: 700;
}

.border-bottom {
  border-color: var(--blue) !important;
  border-color: #445cad !important;
}

/* Reset bootstrap */
.nav-pills .nav-link.active {
  background-color: transparent;
  color: var(--blue);
  color: #445cad;
}

.card:not(.twitter-tweet):not(.qr-card) {
  background-color: var(--ultra-light-grey);
  background-color: #e6eaec;
}

.card:not(.qr-card):not(.card-price) .card-header,
.subaccounts .card {
  background-color: transparent;
}

.card-body.footer {
  background-color: var(--white);
  background-color: #ffffff;
}

.card.jobs {
  background-color: transparent;
  border-color: var(--blue);
  border-color: #445cad;
}

.card ul li {
  color: var(--grey-text);
  color: #617580;
}

.prices-switch-contender .prices-recurrence-contender small {
  color: #445cad;
}
.prices-switch-contender .swiper {
  background-color: #e6eaec;
}
.prices-switch-contender .swiper .swiper-slide-prev::after {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.48), rgba(0, 0, 0, 0));
}
.prices-switch-contender .swiper .swiper-slide-next::before {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.48), rgba(0, 0, 0, 0));
}
@media screen and (max-width: 991.9999px) {
  .prices-switch-contender .swiper-pagination {
    background-color: rgba(255, 255, 255, 0.8);
  }
}

@media screen and (max-width: 991.9999px) {
  .analytics-disclaimer .swiper-pagination {
    border-top-color: #e6eaec;
  }
}

.prices-switch-contender .swiper-pagination-bullet:first-child.swiper-pagination-bullet-active,
.analytics-disclaimer .swiper-pagination-bullet:first-child.swiper-pagination-bullet-active {
  background-color: #a4b0f5;
}
.prices-switch-contender .swiper-pagination-bullet:nth-child(2).swiper-pagination-bullet-active,
.analytics-disclaimer .swiper-pagination-bullet:nth-child(2).swiper-pagination-bullet-active {
  background-color: #e6a429;
}
.prices-switch-contender .swiper-pagination-bullet:nth-child(3).swiper-pagination-bullet-active,
.analytics-disclaimer .swiper-pagination-bullet:nth-child(3).swiper-pagination-bullet-active {
  background-color: #91b0bf;
}
.prices-switch-contender .swiper-pagination-bullet:last-child.swiper-pagination-bullet-active,
.analytics-disclaimer .swiper-pagination-bullet:last-child.swiper-pagination-bullet-active {
  background-color: #6b818c;
}

.swiper.case-studies {
  background-color: rgba(230, 234, 236, 0.32);
}
.swiper.case-studies .post-title {
  color: var(--blue);
  color: #445cad;
}
.swiper.case-studies .swiper-button-next,
.swiper.case-studies .swiper-button-prev {
  color: var(--white);
  color: #ffffff;
}

.pagination-case-studies .swiper-pagination-bullet-active {
  background-color: var(--blue);
  background-color: #445cad;
}
@media screen and (max-width: 991.9999px) {
  .pagination-case-studies .swiper-pagination {
    background-color: rgba(255, 255, 255, 0.8);
  }
}

.prices-cards .card-footer {
  background-color: transparent;
  border: 0;
}

.prices-checklists a {
  color: #1d2326;
}

.prices-checklists.stone,
.plans-grid .footer .cell.stone {
  border-top: 4px solid #a4b0f5;
}
.prices-checklists.gold,
.plans-grid .footer .cell.gold {
  border-top: 4px solid #e6a429;
}
.prices-checklists.diamond,
.plans-grid .footer .cell.diamond {
  border-top: 4px solid #91b0bf;
}
.prices-checklists.enterprise,
.plans-grid .footer .cell.enterprise {
  border-top: 4px solid #6b818c;
}

.modal-analytics-info .prices-check-lists li p,
.modal-analytics-info .analytics-disclaimer small {
  color: #617580;
}
.modal-analytics-info .prices-analytics::after {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.48), rgba(0, 0, 0, 0));
}
.modal-analytics-info .prices-analytics::before {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.48), rgba(0, 0, 0, 0));
}

.plans-grid .mobile-menu .header .cell {
  color: #ffffff;
}
.plans-grid .mobile-menu .header .cell.stone {
  background-color: #a4b0f5;
}
.plans-grid .mobile-menu .header .cell.gold {
  background-color: #e6a429;
}
.plans-grid .mobile-menu .header .cell.diamond {
  background-color: #91b0bf;
}
.plans-grid .mobile-menu .header .cell.enterprise {
  background-color: #6b818c;
}
.plans-grid .mobile-menu .header,
.plans-grid .mobile-menu .collapse-options {
  border: 1px solid #e6eaec;
  background-color: #ffffff;
}
.plans-grid .mobile-menu .header > a,
.plans-grid .mobile-menu .collapse-options > * {
  background-color: rgba(230, 234, 236, 0.32);
}
.plans-grid .mobile-menu .collapse-options .option.stone {
  color: #a4b0f5;
}
.plans-grid .mobile-menu .collapse-options .option.gold {
  color: #e6a429;
}
.plans-grid .mobile-menu .collapse-options .option.diamond {
  color: #91b0bf;
}
.plans-grid .mobile-menu .collapse-options .option.enterprise {
  color: #6b818c;
}
.plans-grid .mobile-menu .collapse-options input[type=radio].ct-radio ~ .ct-radio-label::before {
  background-color: #ffffff;
  border-color: #e6eaec;
}
.plans-grid .mobile-menu .collapse-options input[type=radio].ct-radio:checked[value=stone] ~ .ct-radio-label::before {
  background-color: #a4b0f5;
}
.plans-grid .mobile-menu .collapse-options input[type=radio].ct-radio:checked[value=gold] ~ .ct-radio-label::before {
  background-color: #e6a429;
}
.plans-grid .mobile-menu .collapse-options input[type=radio].ct-radio:checked[value=diamond] ~ .ct-radio-label::before {
  background-color: #91b0bf;
}
.plans-grid .mobile-menu .collapse-options input[type=radio].ct-radio:checked[value=enterprise] ~ .ct-radio-label::before {
  background-color: #6b818c;
}
.plans-grid .mobile-menu .collapse-options .option, .plans-grid .mobile-menu .collapse-options .cell {
  border-color: #e6eaec;
}
.plans-grid .grid-contender .grid-row .cell {
  color: #1d2326;
}
.plans-grid .grid-contender .grid-row .cell a {
  color: #1d2326;
}
.plans-grid .grid-contender .grid-row:not(.footer) {
  border-bottom: 1px solid #bfbcba;
}
.plans-grid .grid-contender .grid-row:not(.footer):last-child {
  border-top: 1px solid #bfbcba;
}
.plans-grid .grid-contender .grid-row:not(.footer):not(.header) .cell:not(.disabled) {
  border-right: 1px solid #bfbcba;
}
.plans-grid .grid-contender .grid-row:not(.footer):not(.header) .cell:not(.disabled):first-of-type {
  border-left: 1px solid #bfbcba;
}
.plans-grid .grid-contender .grid-row.footer .cell, .plans-grid .grid-contender .grid-row.footer .cell:empty {
  border: 1px solid #ffffff;
}
.plans-grid .grid-contender .grid-row.footer .cell.aside, .plans-grid .grid-contender .grid-row.footer .cell:empty.aside {
  background-color: #ffffff;
}
.plans-grid .grid-contender .grid-row.footer .cell .button, .plans-grid .grid-contender .grid-row.footer .cell a, .plans-grid .grid-contender .grid-row.footer .cell:empty .button, .plans-grid .grid-contender .grid-row.footer .cell:empty a {
  color: #ffffff;
}
.plans-grid .grid-row.header .cell {
  color: #ffffff;
  border: 1px solid #ffffff;
}
.plans-grid .grid-row.header .aside {
  background-color: #ffffff;
  color: #1d2326;
}
.plans-grid .cell:empty {
  background-color: rgba(230, 234, 236, 0.32);
}
.plans-grid svg path {
  fill: #807e7c;
}

.cherry-theme .dropdown-menu {
  background-color: rgba(91, 30, 46, 0.7);
}
.lakegreen-theme .dropdown-menu {
  background-color: rgba(37, 68, 66, 0.7);
}
.yellow-theme .dropdown-menu {
  background-color: rgba(102, 73, 18, 0.7);
}
@media screen and (min-width: 992px) {
  .cherry-theme .dropdown-menu {
    background-color: var(--white);
    background-color: #ffffff;
  }
  .lakegreen-theme .dropdown-menu {
    background-color: var(--white);
    background-color: #ffffff;
  }
  .yellow-theme .dropdown-menu {
    background-color: var(--white);
    background-color: #ffffff;
  }
}

/* Modals */
.modal {
  background-color: rgba(0, 0, 0, 0.7);
}

.cherry-theme .modal-content .modal-body h2:not(.plan-title) {
  color: var(--cherry);
  color: #DB073C;
}
.lakegreen-theme .modal-content .modal-body h2:not(.plan-title) {
  color: var(--emerald);
  color: #2ec4b6;
}
.yellow-theme .modal-content .modal-body h2:not(.plan-title) {
  color: var(--yellow-saffron);
  color: #e6a429;
}

.modal-header .close span:before {
  background-color: var(--black);
  background-color: #1d2326;
}
.modal-header .close span:after {
  background-color: var(--black);
  background-color: #1d2326;
}

#videoModal .modal-content {
  background-color: rgba(0, 0, 0, 0.9);
  border: none;
}
#videoModal .modal-content .modal-header .close span:before {
  background-color: var(--white);
  background-color: #ffffff;
}
#videoModal .modal-content .modal-header .close span:after {
  background-color: var(--white);
  background-color: #ffffff;
}

#analytics-info-modal .modal-header {
  border-bottom-color: #e6eaec;
}

/* Buttons */
.btn-primary,
.custom-select {
  background-color: var(--blue);
  background-color: #445cad;
  border-color: var(--blue);
  border-color: #445cad;
}

.btn-primary.link-arrow-medium--svg svg path {
  fill: var(--white);
  fill: #ffffff;
}
.btn-primary:hover.link-arrow-medium--svg svg path, .btn-primary:active.link-arrow-medium--svg svg path, .btn-primary:focus.link-arrow-medium--svg svg path {
  fill: var(--white);
  fill: #ffffff;
}

.icons-center-list .btn-primary {
  background-color: var(--cherry);
  background-color: #DB073C;
  border-color: var(--cherry);
  border-color: #DB073C;
}

.custom-ratio-header .btn-primary {
  background-color: var(--blue) !important;
  background-color: #445cad !important;
  border-color: var(--blue) !important;
  border-color: #445cad !important;
}

footer form .btn-primary {
  background-color: var(--blue) !important;
  background-color: #445cad !important;
  border-color: var(--blue) !important;
  border-color: #445cad !important;
}

.catalogue-section .mobile-menu .navbar-toggler {
  background-color: rgba(230, 234, 236, 0.9);
}
.catalogue-section .mobile-menu .navbar-collapse {
  background-color: var(--white);
  background-color: #ffffff;
}
.catalogue-section .mobile-menu .current-category svg, .catalogue-section .mobile-menu .current-category path {
  fill: #445cad;
}
.catalogue-section .mobile-menu .current-category {
  color: #445cad;
}

.catalogue-section .nav-item a,
.catalogue-options .nav-item a {
  border-color: rgba(var(--blue), 0.2);
  border-color: rgba(68, 92, 173, 0.2);
}

@media screen and (max-width: 768px) {
  .catalogue-options .navbar-nav .nav-item a {
    background-color: var(--white);
    background-color: #ffffff;
    color: var(--blue);
    color: #445cad;
  }
  .catalogue-options .navbar-nav .nav-item a:hover {
    background-color: var(--blue);
    background-color: #445cad;
    color: var(--white);
    color: #ffffff;
  }
  .catalogue-options .navbar-nav .nav-item a:hover svg path,
  .catalogue-options .navbar-nav .nav-item a:hover svg polygon,
  .catalogue-options .navbar-nav .nav-item a:hover svg rect {
    fill: var(--white);
    fill: #ffffff;
  }
}

.catalogue-item {
  border-color: rgba(var(--blue), 0.2);
  border-color: rgba(68, 92, 173, 0.2);
}
.catalogue-item p {
  color: var(--grey-text);
  color: #617580;
}

.custom-select {
  color: var(--white);
  color: #ffffff;
}

.custom-caret::after {
  border-color: transparent;
  border-right-color: white;
  border-bottom-color: white;
}

.sign-up-section .btn:not(.btn-primary), .tt_login .btn:not(.btn-primary) {
  color: var(--blue);
  color: #445cad;
}

.btn-gold {
  color: #ffffff;
  background-color: #e6a429;
  border-color: #e6a429;
}

.btn-stone {
  color: #ffffff;
  background-color: #a4b0f5;
  border-color: #a4b0f5;
}

.btn-diamond {
  color: #ffffff;
  background-color: #91b0bf;
  border-color: #91b0bf;
}

.btn-enterprise {
  color: #ffffff;
  background-color: #6b818c;
  border-color: #6b818c;
}

.cta-plans .btn:hover, .cta-plans .btn:active, .cta-plans .btn:focus {
  color: #ffffff;
}

/* Icons */
.navbar-light.header .nav-link svg path {
  fill: var(--white);
  fill: #ffffff;
}
.cherry-theme .navbar-light.header .nav-link:hover svg path, .cherry-theme .navbar-light.header .nav-link:focus svg path {
  fill: var(--crimson);
  fill: #5B1E2E;
}
.lakegreen-theme .navbar-light.header .nav-link:hover svg path, .lakegreen-theme .navbar-light.header .nav-link:focus svg path {
  fill: var(--emerald-alternative);
  fill: #254442;
}
.yellow-theme .navbar-light.header .nav-link:hover svg path, .yellow-theme .navbar-light.header .nav-link:focus svg path {
  fill: var(--yellow-alternative);
  fill: #664912;
}
.navbar-light.header [data-toggle=dropdown] .dropdown-caret--svg svg path {
  fill: var(--white);
  fill: #ffffff;
}
.cherry-theme .navbar-light.header [data-toggle=dropdown]:hover .dropdown-caret--svg svg path, .cherry-theme .navbar-light.header [data-toggle=dropdown]:focus .dropdown-caret--svg svg path {
  fill: var(--crimson);
  fill: #5B1E2E;
}
.lakegreen-theme .navbar-light.header [data-toggle=dropdown]:hover .dropdown-caret--svg svg path, .lakegreen-theme .navbar-light.header [data-toggle=dropdown]:focus .dropdown-caret--svg svg path {
  fill: var(--emerald-alternative);
  fill: #254442;
}
.yellow-theme .navbar-light.header [data-toggle=dropdown]:hover .dropdown-caret--svg svg path, .yellow-theme .navbar-light.header [data-toggle=dropdown]:focus .dropdown-caret--svg svg path {
  fill: var(--yellow-alternative);
  fill: #664912;
}
.cherry-theme .navbar-light.header [aria-expanded=true] .dropdown-caret--svg svg path {
  fill: var(--crimson);
  fill: #5B1E2E;
}
.lakegreen-theme .navbar-light.header [aria-expanded=true] .dropdown-caret--svg svg path {
  fill: var(--emerald-alternative);
  fill: #254442;
}
.yellow-theme .navbar-light.header [aria-expanded=true] .dropdown-caret--svg svg path {
  fill: var(--yellow-alternative);
  fill: #664912;
}
.navbar-light.header .dropdown-item:active {
  background-color: rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 992px) {
  .navbar-light.header .dropdown-item:hover, .navbar-light.header .dropdown-item:active, .navbar-light.header .dropdown-item:focus {
    background-color: rgba(255, 255, 255, 0.1);
  }
}
.navbar-light.header a.dropdown-item p {
  color: var(--steel-grey);
  color: #6b818c;
}
.navbar-light.header a.dropdown-item p.text-title-description-menu {
  color: var(--white);
  color: #ffffff;
}
@media screen and (min-width: 992px) {
  .navbar-light.header a.dropdown-item p.text-title-description-menu {
    color: var(--blue);
    color: #445cad;
  }
}
.navbar-light.header .bg-hexagon.campaigns-link > svg polygon {
  fill: var(--cherry);
  fill: #DB073C;
}
.navbar-light.header .bg-hexagon.analytics-link > svg polygon {
  fill: var(--emerald);
  fill: #2ec4b6;
}
.navbar-light.header .bg-hexagon.socialwalls-link > svg polygon {
  fill: var(--yellow-saffron);
  fill: #e6a429;
}
.navbar-light.header .bg-hexagon .inner-hexagon--svg > svg path {
  fill: var(--white);
  fill: #ffffff;
}

.icons-center-list svg path {
  fill: var(--black);
  fill: #1d2326;
}
.icons-center-list svg g path {
  fill: var(--black);
  fill: #1d2326;
}

.link-play-video--svg svg path {
  fill: var(--white);
  fill: #ffffff;
}

a .link-arrow--svg svg path {
  fill: var(--blue);
  fill: #445cad;
}

.header svg path,
.header svg polygon {
  fill: var(--cherry);
  fill: #DB073C;
}
.header .link-icon-header svg path {
  fill: var(--blue);
  fill: #445cad;
}
.header .icon-user--svg svg path {
  fill: var(--white);
  fill: #ffffff;
}

.jumbotron svg path,
.jumbotron svg polygon {
  fill: var(--grey-text);
  fill: #617580;
}

.icons-left-list svg path,
.icons-left-list svg polygon,
.icons-left-list svg rect, .sub-menu-icons-left-list svg path,
.sub-menu-icons-left-list svg polygon,
.sub-menu-icons-left-list svg rect, .catalogue-item svg path,
.catalogue-item svg polygon,
.catalogue-item svg rect {
  fill: var(--blue);
  fill: #445cad;
}

.checklist-ordered .order {
  background-color: var(--cherry);
  background-color: #DB073C;
  color: var(--white);
  color: #ffffff;
}

.checklist-ok svg path {
  fill: var(--grey-text);
  fill: #617580;
}

.checklist-bullets svg circle {
  fill: var(--cherry);
  fill: #DB073C;
}

svg#facebook--icon path, svg#facebook-sign-in--icon path {
  fill: var(--facebook);
  fill: #395185;
}

svg#twitter--icon path, svg#twitter-sign-in--icon path {
  fill: var(--twitter);
  fill: #46b4f1;
}

svg#instagram--icon path {
  fill: var(--instagram);
  fill: #c407a7;
}

svg#preview-control-panel path.preview-st0 {
  filter: drop-shadow(2px 0px 3px rgba(107, 129, 140, 0.48));
}

svg#screw--icon path {
  fill: var(--black);
  fill: #1d2326;
}

svg#briefcase--icon path {
  fill: var(--black);
  fill: #1d2326;
}

.iphone {
  filter: drop-shadow(24px 0px 48px rgba(35, 71, 84, 0.5));
}

.link-arrow-medium--svg svg path {
  fill: var(--blue);
  fill: #445cad;
}
.link-arrow-medium--svg:hover svg path, .link-arrow-medium--svg:focus svg path {
  fill: var(--link-hover);
  fill: rgba(68, 100, 173, 0.7);
}

.link-arrow-down-medium--svg svg polygon {
  fill: var(--blue);
  fill: #445cad;
}
.link-arrow-down-medium--svg:hover svg polygon, .link-arrow-down-medium--svg:focus svg polygon {
  fill: var(--link-hover);
  fill: rgba(68, 100, 173, 0.7);
}

h1 .icon-header svg path {
  fill: var(--black) !important;
  fill: #1d2326 !important;
}

.image-center-list img {
  border-color: var(--cherry) !important;
  border-color: #DB073C !important;
}

.prices-switch-contender {
  color: #445cad;
}
.prices-switch-contender .custom-control-input ~ .custom-control-label::after {
  background-color: #445cad;
}
.prices-switch-contender .custom-control-input ~ .custom-control-label::before {
  border-color: #445cad;
  background-color: #e6eaec;
}

.custom-control-input:checked ~ .custom-control-label::before {
  background-color: #445cad;
}

sup {
  background-color: var(--information);
  background-color: #1a98d7;
  color: var(--white);
  color: #ffffff;
}

.badge-primary {
  background-color: var(--ultra-light-grey);
  background-color: #e6eaec;
  color: var(--blue);
  color: #445cad;
}

/* Header */
.cherry-theme .navbar.header.dropdown-menu-mobile {
  background: var(--cherry, #DB073C);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, var(--cherry, #DB073C)), color-stop(140%, #DB073C));
  background: -webkit-linear-gradient(top, var(--cherry, #DB073C) 20%, #DB073C 140%);
  background: -o-linear-gradient(top, var(--cherry, #DB073C) 20%, #DB073C 140%);
  background: linear-gradient(180deg, var(--cherry, #DB073C) 20%, #DB073C 140%);
}
.lakegreen-theme .navbar.header.dropdown-menu-mobile {
  background: var(--emerald, #2ec4b6);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, var(--emerald, #2ec4b6)), color-stop(140%, #A2E9E3));
  background: -webkit-linear-gradient(top, var(--emerald, #2ec4b6) 20%, #A2E9E3 140%);
  background: -o-linear-gradient(top, var(--emerald, #2ec4b6) 20%, #A2E9E3 140%);
  background: linear-gradient(180deg, var(--emerald, #2ec4b6) 20%, #A2E9E3 140%);
}
.yellow-theme .navbar.header.dropdown-menu-mobile {
  background: var(--yellow-saffron, #e6a429);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(20%, var(--yellow-saffron, #e6a429)), color-stop(140%, #f3d59c));
  background: -webkit-linear-gradient(top, var(--yellow-saffron, #e6a429) 20%, #f3d59c 140%);
  background: -o-linear-gradient(top, var(--yellow-saffron, #e6a429) 20%, #f3d59c 140%);
  background: linear-gradient(180deg, var(--yellow-saffron, #e6a429) 20%, #f3d59c 140%);
}
.cherry-theme .navbar.header.dropdown-menu-mobile .language-contender {
  background-color: rgba(var(--crimson), 0.2) !important;
  background-color: rgba(91, 30, 46, 0.2) !important;
}
.lakegreen-theme .navbar.header.dropdown-menu-mobile .language-contender {
  background-color: rgba(var(--emerald-alternative), 0.2) !important;
  background-color: rgba(37, 68, 66, 0.2) !important;
}
.yellow-theme .navbar.header.dropdown-menu-mobile .language-contender {
  background-color: rgba(var(--yellow-alternative), 0.2) !important;
  background-color: rgba(102, 73, 18, 0.2) !important;
}
.navbar.header.dropdown-menu-mobile .language {
  border-color: rgba(var(--white), 0.3) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
  color: var(--white) !important;
  color: #ffffff !important;
}
.navbar.header.dropdown-menu-mobile .language svg path {
  fill: var(--white) !important;
  fill: #ffffff !important;
}
.cherry-theme .navbar.header.dropdown-menu-mobile .language {
  background-color: rgba(var(--crimson), 0.3) !important;
  background-color: rgba(91, 30, 46, 0.3) !important;
}
.lakegreen-theme .navbar.header.dropdown-menu-mobile .language {
  background-color: rgba(var(--emerald-alternative), 0.3) !important;
  background-color: rgba(37, 68, 66, 0.3) !important;
}
.yellow-theme .navbar.header.dropdown-menu-mobile .language {
  background-color: rgba(var(--yellow-alternative), 0.3) !important;
  background-color: rgba(102, 73, 18, 0.3) !important;
}
.navbar.header.dropdown-menu-mobile .language li span, .navbar.header.dropdown-menu-mobile .language li a {
  color: #ffffff;
}
.navbar.header.dropdown-menu-mobile .language li span.selected, .navbar.header.dropdown-menu-mobile .language li a.selected {
  background-color: #ffffff;
  color: #807e7c;
}
.cherry-theme .navbar.header .background-header-mobile.show, .yellow-theme .navbar.header .background-header-mobile.show, .lakegreen-theme .navbar.header .background-header-mobile.show {
  background: var(--black);
  background: #1d2326;
}

.cherry-theme .navbar-light .navbar-nav .nav-link:focus,
.cherry-theme .navbar-light .navbar-nav .nav-link:hover,
.cherry-theme .navbar-light .logo:hover #logo-imago .inside-path,
.cherry-theme .navbar-light .logo:focus #logo-imago .inside-path,
.cherry-theme .navbar-light .logo:hover,
.cherry-theme .navbar-light .logo:focus {
  color: var(--crimson);
  color: #5B1E2E;
  fill: var(--crimson);
  fill: #5B1E2E;
}
.lakegreen-theme .navbar-light .navbar-nav .nav-link:focus,
.lakegreen-theme .navbar-light .navbar-nav .nav-link:hover,
.lakegreen-theme .navbar-light .logo:hover #logo-imago .inside-path,
.lakegreen-theme .navbar-light .logo:focus #logo-imago .inside-path,
.lakegreen-theme .navbar-light .logo:hover,
.lakegreen-theme .navbar-light .logo:focus {
  color: var(--emerald-alternative);
  color: #254442;
  fill: var(--emerald-alternative);
  fill: #254442;
}
.yellow-theme .navbar-light .navbar-nav .nav-link:focus,
.yellow-theme .navbar-light .navbar-nav .nav-link:hover,
.yellow-theme .navbar-light .logo:hover #logo-imago .inside-path,
.yellow-theme .navbar-light .logo:focus #logo-imago .inside-path,
.yellow-theme .navbar-light .logo:hover,
.yellow-theme .navbar-light .logo:focus {
  color: var(--yellow-alternative);
  color: #664912;
  fill: var(--yellow-alternative);
  fill: #664912;
}

.sidebar-brand-icon .inside-path {
  fill: var(--white);
  fill: #ffffff;
}

.logo {
  color: var(--white);
  color: #ffffff;
}
.logo svg path.inside-path,
.logo svg polygon.inside-path {
  fill: var(--white);
  fill: #ffffff;
}
.logo:hover {
  color: var(--white);
  color: #ffffff;
}

header.landing .logo:hover, header.landing .logo:focus {
  color: var(--crimson);
  color: #5B1E2E;
}
header.landing .logo:hover #logo-imago .inside-path, header.landing .logo:focus #logo-imago .inside-path {
  fill: var(--crimson);
  fill: #5B1E2E;
}

#logo-imago-red .inside-path {
  fill: var(--cherry);
  fill: #DB073C;
}

.logo-red {
  color: var(--cherry);
  color: #DB073C;
}
.logo-red:hover, .logo-red:focus {
  color: var(--crimson);
  color: #5B1E2E;
}
.logo-red:hover #logo-imago-red .inside-path, .logo-red:focus #logo-imago-red .inside-path {
  fill: var(--crimson);
  fill: #5B1E2E;
}

.navbar-light {
  color: var(--white);
  color: #ffffff;
}
.navbar-light .navbar-toggler {
  color: var(--white);
  color: #ffffff;
}
.navbar-light .navbar-nav .nav-link {
  color: var(--white);
  color: #ffffff;
}

header.landing h1 {
  color: var(--white);
  color: #ffffff;
  opacity: 0.6;
}

.navbar .navbar-icon .hamburger {
  background: var(--white);
  background: #ffffff;
}
.navbar .navbar-icon .hamburger:before {
  background: var(--white);
  background: #ffffff;
}
.navbar .navbar-icon .hamburger:after {
  background: var(--white);
  background: #ffffff;
}

#template-list .item {
  border-color: var(--blue);
  border-color: #445cad;
}
#template-list .item .header {
  background-color: var(--white);
  background-color: #ffffff;
}
#template-list .item .header .icon svg path,
#template-list .item .header .icon svg polygon {
  fill: var(--blue);
  fill: #445cad;
}
#template-list .item .header .title {
  color: var(--blue);
  color: #445cad;
}
#template-list .item .header small {
  color: var(--grey-text);
  color: #617580;
}
#template-list .item .content {
  background-color: var(--white);
  background-color: #ffffff;
}
#template-list .item .description {
  color: var(--black);
  color: #1d2326;
  background-color: rgba(var(--white), 0.92);
  background-color: rgba(255, 255, 255, 0.92);
  line-height: 1.1;
}

/* Footer */
.footer #logo-imago-footer .inside-path {
  fill: var(--steel-grey);
  fill: #6b818c;
}
.footer .logo {
  color: var(--steel-grey);
  color: #6b818c;
}
.footer .logo:hover, .footer .logo:focus {
  color: var(--footer-hover);
  color: rgba(0, 0, 0, 0.7);
}
.footer .logo:hover #logo-imago-footer .inside-path, .footer .logo:focus #logo-imago-footer .inside-path {
  fill: var(--footer-hover);
  fill: rgba(0, 0, 0, 0.7);
}
.footer .bg-footer {
  border-bottom-color: #e6eaec !important;
}
.footer .bg-footer .footer-st0 {
  fill: var(--ultra-light-grey);
  fill: #e6eaec;
}
.footer .content-footer {
  background-color: var(--ultra-light-grey);
  background-color: #e6eaec;
}
.footer .content-footer .copyright {
  color: var(--blue-grey);
  color: #91b0bf;
}
.footer .footer-footer {
  background-color: var(--ultra-light-grey);
  background-color: #e6eaec;
}
.footer .footer-footer .language li {
  border-right-color: var(--grey);
  border-right-color: #807e7c;
  color: var(--grey);
  color: #807e7c;
}
.footer .footer-footer hr {
  border-color: var(--grey-text);
  border-color: #617580;
}
.footer a {
  color: var(--grey-text);
  color: #617580;
}
.footer a:hover, .footer a:focus {
  color: var(--footer-hover);
  color: rgba(0, 0, 0, 0.7);
}
.footer .footer-logos svg path, .footer .footer-logos svg rect {
  fill: var(--grey-text);
  fill: #617580;
}
.footer .footer-logos a:hover svg path, .footer .footer-logos a:hover svg rect, .footer .footer-logos a:focus svg path, .footer .footer-logos a:focus svg rect {
  fill: var(--footer-hover);
  fill: rgba(0, 0, 0, 0.7);
}
.footer h4 {
  color: var(--grey-text);
  color: #617580;
}
.footer p.extra-small {
  color: var(--grey-text);
  color: #617580;
}
.footer .footer-logos a:hover #footer-facebook path, .footer .footer-logos a:hover #footer-instagram circle, .footer .footer-logos a:hover #footer-twitter path, .footer .footer-logos a:hover #footer-linkedin path, .footer .footer-logos a:hover #footer-youtube path, .footer .footer-logos a:focus #footer-facebook path, .footer .footer-logos a:focus #footer-instagram circle, .footer .footer-logos a:focus #footer-twitter path, .footer .footer-logos a:focus #footer-linkedin path, .footer .footer-logos a:focus #footer-youtube path {
  fill: var(--footer-hover);
  fill: rgba(0, 0, 0, 0.7);
}

.form-group span.danger {
  color: var(--danger);
  color: #d44950;
}

/* Login & Sign-up */
.form-group-social-media, .form-group-all, .form-group {
  color: var(--steel-grey);
  color: #6b818c;
}
.form-group-social-media p:not(.alert), .form-group-all p:not(.alert), .form-group p:not(.alert) {
  color: var(--steel-grey);
  color: #6b818c;
}
.form-group-social-media input.form-control, .form-group-social-media textarea.form-control, .form-group-social-media select.form-control, .form-group-all input.form-control, .form-group-all textarea.form-control, .form-group-all select.form-control, .form-group input.form-control, .form-group textarea.form-control, .form-group select.form-control {
  border-color: var(--blue-grey);
  border-color: #91b0bf;
}
.form-group-social-media input.form-control:hover, .form-group-social-media textarea.form-control:hover, .form-group-social-media select.form-control:hover, .form-group-all input.form-control:hover, .form-group-all textarea.form-control:hover, .form-group-all select.form-control:hover, .form-group input.form-control:hover, .form-group textarea.form-control:hover, .form-group select.form-control:hover {
  border-color: var(--blue);
  border-color: #445cad;
}

.check-box[type=checkbox] {
  border-color: var(--blue-grey) !important;
  border-color: #91b0bf !important;
}

.check-box[type=checkbox]:checked {
  background-color: var(--white);
  background-color: #ffffff;
  border-color: var(--blue) !important;
  border-color: #445cad !important;
}

.sign-in-logos-center .border-primary, .login-logos-center .border-primary {
  border-color: var(--blue) !important;
  border-color: #445cad !important;
}

.alertify .ajs-footer .ajs-buttons .ajs-button.btn-default {
  background-color: var(--blue);
  background-color: #445cad;
  border-color: var(--blue);
  border-color: #445cad;
  color: var(--white);
  color: #ffffff;
}

/* Error form messages */
body.white-theme form label.error {
  color: var(--danger);
  color: #d44950;
}

/* Dropdowm menu */
@media screen and (max-width: 992px) {
  .navbar .navbar-nav#login-menu .nav-item .nav-link {
    border-color: rgba(var(--white), 0.3) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    color: var(--white) !important;
    color: #ffffff !important;
  }
  .navbar .navbar-nav#login-menu .nav-item .nav-link svg path {
    fill: var(--white) !important;
    fill: #ffffff !important;
  }
  .cherry-theme .navbar .navbar-nav#login-menu .nav-item .nav-link {
    background-color: rgba(var(--crimson), 0.3) !important;
    background-color: rgba(91, 30, 46, 0.3) !important;
  }
  .lakegreen-theme .navbar .navbar-nav#login-menu .nav-item .nav-link {
    background-color: rgba(var(--emerald-alternative), 0.3) !important;
    background-color: rgba(37, 68, 66, 0.3) !important;
  }
  .yellow-theme .navbar .navbar-nav#login-menu .nav-item .nav-link {
    background-color: rgba(var(--yellow-alternative), 0.3) !important;
    background-color: rgba(102, 73, 18, 0.3) !important;
  }
}
@media screen and (max-width: 992px) {
  .navbar .navbar-nav#logged_profile_box .options-nav-item .nav-item .nav-link {
    border-color: rgba(var(--white), 0.3) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    color: var(--white) !important;
    color: #ffffff !important;
  }
  .navbar .navbar-nav#logged_profile_box .options-nav-item .nav-item .nav-link svg path {
    fill: var(--white) !important;
    fill: #ffffff !important;
  }
  .cherry-theme .navbar .navbar-nav#logged_profile_box .options-nav-item .nav-item .nav-link {
    background-color: rgba(var(--crimson), 0.3) !important;
    background-color: rgba(91, 30, 46, 0.3) !important;
  }
  .lakegreen-theme .navbar .navbar-nav#logged_profile_box .options-nav-item .nav-item .nav-link {
    background-color: rgba(var(--emerald-alternative), 0.3) !important;
    background-color: rgba(37, 68, 66, 0.3) !important;
  }
  .yellow-theme .navbar .navbar-nav#logged_profile_box .options-nav-item .nav-item .nav-link {
    background-color: rgba(var(--yellow-alternative), 0.3) !important;
    background-color: rgba(102, 73, 18, 0.3) !important;
  }
}

/* Articles structure */
.inside-aspect-ratio h1 {
  color: var(--white);
  color: #ffffff;
}
.inside-aspect-ratio h2 {
  color: var(--white);
  color: #ffffff;
  opacity: 0.6;
}
.inside-aspect-ratio p {
  color: var(--white);
  color: #ffffff;
}
.inside-aspect-ratio a {
  color: var(--white);
  color: #ffffff;
}

.center-list p, .left-list p {
  color: var(--grey-text);
  color: #617580;
}
.center-list.uppercase h3, .left-list.uppercase h3 {
  color: var(--black);
  color: #1d2326;
}
.center-list.uppercase p, .left-list.uppercase p {
  color: var(--black);
  color: #1d2326;
}

.icons-left-list h4 {
  color: var(--blue);
  color: #445cad;
}

.header-left-list h3 {
  color: var(--grey-text);
  color: #617580;
}

section .header h2 {
  color: var(--cherry);
  color: #DB073C;
}
section .header p {
  color: var(--grey-text);
  color: #617580;
}

section .header-btn h2 {
  color: var(--blue);
  color: #445cad;
}
section .header-btn .date {
  color: var(--grey-text);
  color: #617580;
}

section .header-offset-btn h2 {
  color: var(--blue);
  color: #445cad;
}
section .header-offset-btn p {
  color: var(--grey-text);
  color: #617580;
}

.jumbotron {
  background-color: rgba(230, 234, 236, 0.32);
}
.jumbotron h2 {
  color: var(--black);
  color: #1d2326;
}
.jumbotron p {
  color: var(--grey-text);
  color: #617580;
}

.lakegreen-theme h2 {
  color: var(--emerald);
  color: #2ec4b6;
}

.highlights-left-list p {
  color: var(--grey-text);
  color: #617580;
}
.lakegreen-theme .highlights-left-list p {
  color: var(--black);
  color: #1d2326;
}

.sub-menu-icons-left-list h4 {
  color: var(--blue);
  color: #445cad;
}

.bg-text p {
  color: var(--grey-text);
  color: #617580;
}

.image-center-list h5, .image-center-list h6 {
  color: var(--grey-text);
  color: #617580;
}

.custom-left-list ul {
  color: var(--blue-grey);
  color: #91b0bf;
}

.card-deck h2 {
  color: var(--cherry);
  color: #DB073C;
}

.yellow-theme .center-list p {
  color: var(--golden);
  color: #807e7c;
}

.yellow-theme .highlights-left-list p, .green-theme .highlights-left-list p {
  color: var(--black);
  color: #1d2326;
}

.landing-text-center h1 {
  color: var(--cherry);
  color: #DB073C;
}
.landing-text-center p.logos {
  color: var(--blue);
  color: #445cad;
}

.landing-left-list h3 {
  color: var(--blue);
  color: #445cad;
}
.landing-left-list p {
  color: var(--grey-text);
  color: #617580;
}

.job-art {
  background-color: var(--ultra-light-grey);
  background-color: #e6eaec;
}

/* Resources */
.navbar-filters .filter.active {
  background-color: #445cad;
  color: #ffffff;
}

.guides-section article h5 {
  color: #445cad;
}

/* Cookies */
.cookies-advice {
  background-color: var(--footer-hover);
  background-color: rgba(0, 0, 0, 0.7);
}
.cookies-advice p {
  color: var(--white);
  color: #ffffff;
}
.cookies-advice p a {
  color: var(--white);
  color: #ffffff;
}
.cookies-advice p a:hover {
  color: var(--cherry);
  color: #DB073C;
}

.cta-aside-section {
  background-color: rgba(230, 234, 236, 0.52);
}
@media screen and (min-width: 768px) {
  .cta-aside-section {
    background-color: rgba(230, 234, 236, 0.32);
  }
}

.custom-banner {
  background: rgba(230, 234, 236, 0.52);
}
@media screen and (min-width: 768px) {
  .custom-banner {
    background: linear-gradient(90deg, rgb(235, 235, 235) 0%, rgb(255, 255, 255) 50%);
  }
}
.custom-banner.vertical {
  background: linear-gradient(360deg, rgb(245, 245, 245) 0%, rgba(245, 245, 245, 0) 50%);
}
@media screen and (max-width: 767.99999px) {
  .custom-banner .main-features.checks-left-list {
    background-color: #ffffff;
  }
}

/* CTA */
.cta-trial h2.text-center, .cta-trial p {
  color: #445cad;
}

/* Template landings */
.template-landing .description h2 {
  color: var(--cherry);
  color: #DB073C;
}

/* Tags lists */
.tag-list li small {
  background-color: #91b0bf;
  color: #ffffff;
}

/* Fix icono de sort letters, se ve transparente */
svg#sort_letter--icon path, svg#sort_letter--icon rect {
  fill: none;
  stroke: black;
}
svg#sort_letter--icon text {
  fill: black;
}

/* Redesign 2026 — Google Fonts */
:root {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Redesign 2026 — Animations */
@keyframes float {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-12px);
  }
}
@keyframes pulse-glow {
  0%, 100% {
    box-shadow: 0 0 0 0 rgba(219, 7, 60, 0.4);
  }
  50% {
    box-shadow: 0 0 0 12px rgba(219, 7, 60, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes shimmer {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}
html {
  scroll-behavior: smooth;
}

html,
body {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  html,
  body {
    font-size: 18px;
  }
}

body {
  overflow: initial;
}
body.dropdown-menu-mobile-open {
  overflow: hidden;
}

.container {
  max-width: 1200px;
}

h1 {
  font-family: "IBM Plex Mono Regular", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
  font-size: 2.3333333333rem;
  line-height: 1.14;
}
h1 b,
h1 strong {
  font-family: "IBM Plex Mono Medium", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h1 i {
  font-family: "IBM Plex Mono Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h1 b i,
h1 strong i {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h1 i b,
h1 i strong {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}

h2 {
  font-size: 1.7777777778rem;
  font-family: "IBM Plex Mono Regular", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h2 b,
h2 strong {
  font-family: "IBM Plex Mono Medium", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h2 i {
  font-family: "IBM Plex Mono Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h2 b i,
h2 strong i {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h2 i b,
h2 i strong {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}

.main-features-title h2,
.general-features-title h2 {
  font-size: 1.5rem;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  .main-features-title h2,
  .general-features-title h2 {
    font-size: 1.7777777778rem;
  }
}
.main-features-title h2,
.general-features-title h2 {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
}

.cta-aside-section h2 {
  font-size: 1.5rem;
  line-height: 1.4;
}

h3 {
  font-family: "IBM Plex Mono Regular", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
}
h3 b,
h3 strong {
  font-family: "IBM Plex Mono Medium", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h3 i {
  font-family: "IBM Plex Mono Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h3 b i,
h3 strong i {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h3 i b,
h3 i strong {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}

.step-by-step-title h3 {
  font-size: 1.5rem;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  .step-by-step-title h3 {
    font-size: 1.33333333rem;
  }
}
.step-by-step-title h3 {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
}

h4 {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
}
h4 b,
h4 strong {
  font-family: "IBM Plex Sans Bold", "Helvetica Neue", Arial, sans-serif;
}
h4 i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
h4 b i,
h4 strong i {
  font-family: "IBM Plex Sans Bold Italic", "Helvetica Neue", Arial, sans-serif;
}
h4 i b,
h4 i strong {
  font-family: "IBM Plex Sans Bold Italic", "Helvetica Neue", Arial, sans-serif;
}
h4.post-title {
  font-size: 1.5rem;
  line-height: 1;
}
@media screen and (min-width: 1200px) {
  h4.post-title {
    font-size: 1.33333333rem;
  }
}

h5 {
  font-size: 1.3333333333rem;
  font-family: "IBM Plex Mono Regular", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
}
h5 b,
h5 strong {
  font-family: "IBM Plex Mono Medium", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h5 i {
  font-family: "IBM Plex Mono Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h5 b i,
h5 strong i {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
h5 i b,
h5 i strong {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}

h6 {
  font-size: 1.7777777778rem;
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
}
h6 b,
h6 strong {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
h6 i {
  font-family: "IBM Plex Sans Italic", "Helvetica Neue", Arial, sans-serif;
}
h6 b i,
h6 strong i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
h6 i b,
h6 i strong {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}

p {
  line-height: 1.3333;
}
p.extra-small {
  font-size: 0.5555555556rem;
  line-height: 1.2;
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif !important;
}
p b,
p strong {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
p i {
  font-family: "IBM Plex Sans Italic", "Helvetica Neue", Arial, sans-serif;
}
p b i,
p strong i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
p i b,
p i strong {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}

a, button.btn-link {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  font-stretch: normal;
  letter-spacing: normal;
}
a:hover, a:focus, button.btn-link:hover, button.btn-link:focus {
  text-decoration: none;
  outline: none;
}
a b,
a strong, button.btn-link b,
button.btn-link strong {
  font-family: "IBM Plex Sans Bold", "Helvetica Neue", Arial, sans-serif;
}
a i, button.btn-link i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
a b i,
a strong i, button.btn-link b i,
button.btn-link strong i {
  font-family: "IBM Plex Sans Bold Italic", "Helvetica Neue", Arial, sans-serif;
}
a i b,
a i strong, button.btn-link i b,
button.btn-link i strong {
  font-family: "IBM Plex Sans Bold Italic", "Helvetica Neue", Arial, sans-serif;
}

i {
  font-style: italic;
}

ol.ordered-list {
  list-style-type: none;
  counter-reset: section;
  padding-left: 0;
}
ol.ordered-list > li h5 {
  font-size: 1rem;
  font-weight: bold;
}
ol.ordered-list > li::before {
  counter-increment: section;
  content: counters(section, ".") ".";
  display: inline-block;
  font-size: 1rem;
  float: left;
  font-weight: bold;
  margin-right: 0.6rem;
}
ol li b,
ol li strong {
  font-family: "IBM Plex Sans Bold", "Helvetica Neue", Arial, sans-serif;
}
ol li i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
ol li b i,
ol li strong i {
  font-family: "IBM Plex Sans Bold Italic", "Helvetica Neue", Arial, sans-serif;
}
ol li i b,
ol li i strong {
  font-family: "IBM Plex Sans Bold Italic", "Helvetica Neue", Arial, sans-serif;
}

small {
  font-size: 0.7777777em;
}

a.link-default {
  text-decoration: underline;
}

a.link-tooltip:hover, a.link-tooltip:focus {
  text-decoration: underline;
}

sup {
  font-family: "IBM Plex Mono Bold Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
  font-size: 0.7rem;
  border-radius: 50%;
  padding: 2px 3.5px;
  cursor: default;
}

ul.point-list {
  list-style: square;
}
ul.point-list li {
  margin-left: 1.6rem;
}
ul li b,
ul li strong {
  font-family: "IBM Plex Sans Bold", "Helvetica Neue", Arial, sans-serif;
}
ul li i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
ul li b i,
ul li strong i {
  font-family: "IBM Plex Sans Bold Italic", "Helvetica Neue", Arial, sans-serif;
}
ul li i b,
ul li i strong {
  font-family: "IBM Plex Sans Bold Italic", "Helvetica Neue", Arial, sans-serif;
}

/* Reset bootstrap */
.alert {
  border-radius: 0;
}

.form-control {
  border-radius: 0;
}

.container-fluid {
  padding-right: 0;
  padding-left: 0;
}

.nav-pills .nav-link {
  padding: 0.5rem 0;
  border-radius: 0;
  margin-bottom: 1rem;
}
@media screen and (min-width: 576px) {
  .nav-pills .nav-link {
    margin-bottom: 0;
  }
}
.nav-pills .nav-link.active {
  border-bottom: 4px solid;
}
@media screen and (min-width: 992px) {
  .nav-pills #pills-brands-tab, .nav-pills #pills-agencies-tab {
    width: 45%;
    margin: 0 auto;
  }
  .nav-pills #pills-media-tab {
    width: 75%;
    margin: 0 auto;
  }
}

pre {
  display: inline-block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.428571429;
  color: #333;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px;
  white-space: pre-wrap;
  font-family: "Courier New", Courier, monospace;
}

.inside-aspect-ratio a:not(.btn) {
  text-decoration: underline;
}
.inside-aspect-ratio a.video-play {
  text-decoration: none;
}

input[type=checkbox]:focus {
  outline: none;
}

/* header */
header {
  min-height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}
@media screen and (min-width: 992px) {
  header {
    position: relative;
  }
}

body.en_login header, body.es_login header, body.en_signup header, body.es_signup header, body.ct_my_user_infos_after_sign_up header {
  position: relative;
}

.logo, .logo-red {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  font-family: "IBM Plex Mono Medium", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
  font-size: 1.444444rem;
  line-height: 28px;
  text-decoration: none;
  word-spacing: -10px;
}
.logo:hover, .logo:focus, .logo-red:hover, .logo-red:focus {
  text-decoration: none;
}
.logo [id^=logo-imago], .logo-red [id^=logo-imago] {
  width: 32px;
  height: 32px;
  display: inline-block;
  margin-right: 12px;
}

header.landing .logo {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  font-family: "IBM Plex Mono Medium", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
  font-size: 2.3rem;
  line-height: 56px;
  text-decoration: none;
  word-spacing: -10px;
}
header.landing .logo:hover, header.landing .logo:focus {
  text-decoration: none;
}
header.landing .logo [id^=logo-imago] {
  width: 52px;
  height: 60px;
  display: inline-block;
  margin-right: 12px;
}
@media screen and (max-width: 410px) {
  header.landing .logo {
    font-size: 1.3rem;
  }
  header.landing .logo [id^=logo-imago] {
    width: 42px;
  }
}

@media screen and (max-width: 992px) {
  main {
    padding-top: 60px;
  }
}

body.en_login main, body.es_login main, body.en_signup main, body.es_signup main, body.ct_my_user_infos_after_sign_up main {
  padding-top: 0;
}

/* Custom margins */
.mt-40 {
  margin-top: 2.2222222222rem;
}

.mt-sm-40 {
  margin-top: 1.3333333333rem;
}
@media screen and (min-width: 768px) {
  .mt-sm-40 {
    margin-top: 2.2222222222rem;
  }
}

.mb-40 {
  margin-bottom: 0.4444444444rem;
}
@media screen and (min-width: 768px) {
  .mb-40 {
    margin-bottom: 2.2222222222rem;
  }
}

.mt-42 {
  margin-top: 0.5555555556rem;
}
@media screen and (min-width: 768px) {
  .mt-42 {
    margin-top: 2.3333333333rem;
  }
}

.mb-42 {
  margin-bottom: 0.5555555556rem;
}
@media screen and (min-width: 768px) {
  .mb-42 {
    margin-bottom: 2.3333333333rem;
  }
}

.mr-42 {
  margin-right: 2.3333333333rem;
}

.ml-42 {
  margin-left: 2.3333333333rem;
}

.mt-60 {
  margin-top: 0.8888888889rem;
}
@media screen and (min-width: 768px) {
  .mt-60 {
    margin-top: 3.3333333333rem;
  }
}

.mt-64 {
  margin-top: 1.1111111111rem;
}
@media screen and (min-width: 768px) {
  .mt-64 {
    margin-top: 3.5555555556rem;
  }
}

.mb-64 {
  margin-bottom: 1.1111111111rem;
}
@media screen and (min-width: 768px) {
  .mb-64 {
    margin-bottom: 3.5555555556rem;
  }
}

.mt-96 {
  margin-top: 3.8888888889rem;
}
@media screen and (min-width: 768px) {
  .mt-96 {
    margin-top: 5.3333333333rem;
  }
}

.mb-96 {
  margin-bottom: 2.5rem;
}
@media screen and (min-width: 768px) {
  .mb-96 {
    margin-bottom: 5.3333333333rem;
  }
}

.mt-154 {
  margin-top: 3.3333333333rem;
}
@media screen and (min-width: 768px) {
  .mt-154 {
    margin-bottom: 8.5555555556rem;
  }
}

.mb-194 {
  margin-bottom: 5.3333333333rem;
}
@media screen and (min-width: 768px) {
  .mb-194 {
    margin-bottom: 10.7777777778rem;
  }
}

.mt-194 {
  margin-top: 5.3333333333rem;
}
@media screen and (min-width: 768px) {
  .mt-194 {
    margin-top: 10.7777777778rem;
  }
}

.mt-mix {
  margin-top: 2.5rem;
}

.hr-border {
  width: 100%;
  height: 0.625rem;
}

.hr-border-lite {
  height: 4px;
}

/* footer */
.footer {
  position: relative;
}
.footer .logo:hover, .footer .logo:focus {
  text-decoration: none;
}
.footer .bg-footer-container {
  position: relative;
  margin-bottom: -1px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer .bg-footer-container .bg-footer {
  width: 100%;
  margin-bottom: -1px;
  border-bottom: 1px inset;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
}
.footer .content-footer {
  position: relative;
  padding-top: 2em;
  padding-bottom: 0;
  z-index: 1;
  padding-left: 1em;
  padding-right: 1em;
}
.footer .content-footer ul li {
  margin-bottom: 1.333333rem;
}
.footer .content-footer ul li a {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  line-height: 1.333333;
}
.footer .content-footer .copyright {
  font-size: 0.7777777778rem;
}
.footer .content-footer .copyright + ul li {
  line-height: 1.2;
  margin-bottom: 0.7222222222rem;
}
.footer .content-footer .copyright + ul li a {
  font-size: 0.7777777778rem;
}
.footer .footer-footer {
  position: relative;
  display: block;
  padding: 0 1em 3em 1em;
}
@media screen and (max-width: 767px) {
  .footer .footer-footer .newsletter-signup {
    margin-top: 2em;
  }
}
.footer .footer-logos a {
  font-size: 0.7777777778rem;
}

/* Login & Sign-up*/
h1.sign-up-title, h1.login-title {
  font-size: 2.2rem;
}

.check-box[type=checkbox] {
  width: 24px;
  min-width: 24px;
  height: 24px;
  border: 1px solid;
}
.check-box[type=checkbox]:checked {
  border: 8px solid;
}

.form-group-social-media, .form-group-all {
  display: none;
}
.form-group-social-media input.form-control:hover, .form-group-all input.form-control:hover {
  border-width: 1px;
}
.form-group-social-media.show, .form-group-all.show {
  display: block;
}
.form-group-social-media .checkbox a, .form-group-all .checkbox a {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
}
.form-group-social-media .checkbox .shake, .form-group-all .checkbox .shake {
  -webkit-animation: kf_shake 0.4s 1 linear;
  -moz-animation: kf_shake 0.4s 1 linear;
  -o-animation: kf_shake 0.4s 1 linear;
}
@-webkit-keyframes kf_shake {
  0% {
    -webkit-transform: translate(30px);
  }
  20% {
    -webkit-transform: translate(-30px);
  }
  40% {
    -webkit-transform: translate(15px);
  }
  60% {
    -webkit-transform: translate(-15px);
  }
  80% {
    -webkit-transform: translate(8px);
  }
  100% {
    -webkit-transform: translate(0px);
  }
}
@-moz-keyframes kf_shake {
  0% {
    -moz-transform: translate(30px);
  }
  20% {
    -moz-transform: translate(-30px);
  }
  40% {
    -moz-transform: translate(15px);
  }
  60% {
    -moz-transform: translate(-15px);
  }
  80% {
    -moz-transform: translate(8px);
  }
  100% {
    -moz-transform: translate(0px);
  }
}
@-o-keyframes kf_shake {
  0% {
    -o-transform: translate(30px);
  }
  20% {
    -o-transform: translate(-30px);
  }
  40% {
    -o-transform: translate(15px);
  }
  60% {
    -o-transform: translate(-15px);
  }
  80% {
    -o-transform: translate(8px);
  }
  100% {
    -o-origin-transform: translate(0px);
  }
}
.form-group-social-media span, .form-group-all span {
  font-size: 0.8888889rem;
}

#sign-in-section.hidden {
  display: none;
}

#login-section {
  display: none;
}
#login-section.show {
  display: block;
}

.box-container {
  padding: 1.2em 0;
}

.form-group span.danger {
  font-size: 0.7888889rem;
}

body.white-theme form label.error {
  padding-top: 0.5rem;
  margin-bottom: 0.5rem;
}

/* Second step sign up */
.form-group.signup span.danger {
  display: none;
}
.form-group.signup span.danger.confirm-email {
  display: block;
}

.after_signup .signout {
  font-size: 0.82em;
  text-decoration: underline;
  opacity: 0.7;
}

/* Prices */
.prices-checklists {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.analytics-info-container svg {
  max-width: 60px;
}
.analytics-info-container svg path {
  fill: #445cad;
}

.analytics-info strong {
  font-size: 1.1666666667rem;
}
@media screen and (min-width: 992px) {
  .analytics-info {
    font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
    font-size: 1.333333rem;
  }
  .analytics-info strong {
    font-size: 1.333333rem;
  }
}

/* Contact */
.form-group.contact input.form-control:hover, .form-group.contact textarea.form-control:hover {
  border-width: 1px;
}
.form-group.contact.show {
  display: block;
}
.form-group.contact .checkbox a {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
}
.form-group.contact span {
  font-size: 0.7888889rem;
}

.aspect-ratio {
  position: relative;
  width: 100%;
}
.aspect-ratio:before {
  display: block;
  content: "";
  width: 100%;
  padding-top: 56.25%;
}
.aspect-ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
}

/* Cookies */
.cookies-advice {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 999;
}
.cookies-advice p a {
  text-decoration: underline;
}

.prices-recurrence-contender label:hover {
  cursor: pointer;
}

.opacity-50 {
  opacity: 0.5;
}

.opacity-32 {
  opacity: 0.32;
}

.css_recaptcha {
  text-align: center;
}

.css_recaptcha div.g-recaptcha div {
  width: 100% !important;
}

.custom-banner {
  overflow: hidden;
}
.custom-banner .bg-pattern {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: max(15vw, 30%);
  position: absolute;
  background-image: url(https://cdn8.ct-assets.com/assets/ctfront2/custom-banner-pattern-vert-5f85aaa59387a51f4521b553ac2f67e306c99f405684770696393193fcfb2841.svg);
}
.custom-banner .bg-pattern.pattern-left {
  background-position: center left;
}
.custom-banner .bg-pattern.pattern-center {
  background-size: auto 40%;
  background-image: url(https://cdn8.ct-assets.com/assets/ctfront2/custom-banner-pattern-cf624d69994c62124e8894b25675e8196f7abda120660a8d9ad50bee8638bf71.svg);
}
@media screen and (min-width: 768px) {
  .custom-banner .bg-pattern.pattern-center {
    background-size: max(15vh, 20%);
    background-image: url(https://cdn8.ct-assets.com/assets/ctfront2/custom-banner-pattern-vert-5f85aaa59387a51f4521b553ac2f67e306c99f405684770696393193fcfb2841.svg);
  }
}
.custom-banner.vertical > * {
  z-index: 1;
}
.custom-banner.vertical::after {
  content: "";
  background-repeat: no-repeat;
  background-size: 120%;
  background-position: center top;
  background-image: url(https://cdn8.ct-assets.com/assets/ctfront2/custom-banner-pattern-cf624d69994c62124e8894b25675e8196f7abda120660a8d9ad50bee8638bf71.svg);
  bottom: 0;
  display: block;
  width: 100%;
  height: 30vw;
  position: absolute;
  top: auto;
  left: 0;
  opacity: 0.8;
  z-index: 0;
  pointer-events: none;
}
@media (min-width: 768px) {
  .custom-banner.vertical::after {
    height: 8rem;
    opacity: 0.2;
  }
}

/* Cards — Redesign 2026 */
/* Sistema de cards moderno */
div.card,
div[class*=card]:not(.card-price):not(body),
article.card {
  background: var(--ct-white);
  border-radius: var(--ct-radius-lg);
  box-shadow: var(--ct-shadow-xs);
  border: 1px solid var(--ct-gray-100);
  transition: all var(--ct-duration) var(--ct-ease);
  overflow: hidden;
}
div.card:hover,
div[class*=card]:not(.card-price):not(body):hover,
article.card:hover {
  box-shadow: var(--ct-shadow-md);
  transform: translateY(-4px);
  border-color: transparent;
}

.card-body {
  padding: 28px;
}

.card-title {
  font-family: var(--ct-font-display);
  font-weight: 700;
  color: var(--ct-text-dark);
  font-size: 1.15rem;
}

/* Job cards */
.card.jobs h4 {
  font-size: 1rem;
}

.card-deck .card.cookies {
  min-width: 250px;
}
.card-deck .card.cookies .card-title {
  margin-bottom: 0;
}

/* Price Cards */
.prices-card-contender .card-price {
  border-radius: 0;
  border: none;
  max-width: 100%;
  margin-left: 0;
}
@media screen and (min-width: 1024) {
  .prices-card-contender .card-price {
    max-width: 25%;
  }
}
.prices-card-contender .card-price .card-header {
  border-bottom: none;
  border-radius: 0;
  margin: 0;
  padding: 0.75rem 0;
}
.prices-card-contender .card-price .card-header h2 {
  margin: 0;
}
.prices-card-contender .card-price .card-description {
  flex: 0 0 5rem;
}
.prices-card-contender .card-price .card-description h4 {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.1666666667rem;
  margin-bottom: 0.25rem;
}
.prices-card-contender .card-price .card-description p {
  font-size: 0.8888888889rem;
}
.prices-card-contender .card-price .card-description strong {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
.prices-card-contender .card-price .card-title {
  margin-bottom: 0.25rem;
  display: flex;
  flex-direction: column;
}
.prices-card-contender .card-price .card-title small {
  font-size: 1.33333rem;
}
.prices-card-contender .card-price .card-body {
  padding: 0;
  min-height: auto;
}
.prices-card-contender .card-price .card-body h1 {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
  font-size: 2.333333rem;
}
.prices-card-contender .card-price .card-body small {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
}
.prices-card-contender .card-price .card-body .prices-checklists a {
  text-decoration: underline;
}
.prices-card-contender .card-price .card-body.footer {
  height: 100%;
}
.prices-card-contender .card-price .card-footer a {
  text-decoration: underline;
}

/* transitions */
.navbar.header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 1em;
  padding-left: 15px;
  padding-right: 15px;
}
.navbar.header.dropdown-menu-mobile {
  /*position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;*/
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.navbar.header.navbar-light .nav-item .nav-link {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
@media screen and (max-width: 992px) {
  .navbar.header.navbar-light .nav-item .nav-link {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 992px) and (max-width: 1199px) {
  .navbar.header.navbar-light .nav-item .nav-link {
    font-size: 0.8888888889rem;
  }
}
.navbar.header.navbar-light .navbar-toggler {
  border-radius: 0;
  border-color: transparent;
  height: 32px;
  padding: 0;
}
.navbar.header.navbar-light .navbar-toggler span {
  font-family: "IBM Plex Mono Medium", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
@media screen and (max-width: 992px) {
  .navbar.header.navbar-expand-lg {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .navbar.header.navbar-expand-lg.navbar-toggler {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.navbar.header.navbar-expand-lg .navbar-collapse {
  padding-top: 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 992px) {
  .navbar.header.navbar-expand-lg .navbar-collapse {
    -webkit-transition: all 0.22s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    -o-transition: all 0.22s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    transition: all 0.22s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    padding-top: calc(60px - 1em);
  }
  .navbar.header.navbar-expand-lg .navbar-collapse ul.navbar-nav {
    opacity: 0;
    -webkit-transition: opacity 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    -o-transition: opacity 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    transition: opacity 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
  }
  .navbar.header.navbar-expand-lg .navbar-collapse ul.navbar-nav.show {
    opacity: 1;
  }
}
.navbar.header.navbar-expand-lg .navbar-collapse.out {
  height: 0;
}
.navbar.header.navbar-expand-lg .navbar-collapse.show {
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media screen and (max-width: 992px) {
  .navbar.header .navbar-nav#main-menu {
    opacity: 0;
    -webkit-transition: opacity 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    -o-transition: opacity 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    transition: opacity 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
  }
  .navbar.header .navbar-nav#main-menu.show {
    opacity: 1;
  }
}
.navbar.header .navbar-nav.login_bar {
  width: auto;
}
@media screen and (max-width: 992px) {
  .navbar.header .navbar-nav.login_bar {
    width: 100%;
  }
}
.navbar.header .navbar-nav.login_bar {
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .navbar.header .navbar-nav.login_bar {
    font-size: 0.7777778rem;
  }
}
.navbar.header .navbar-nav.login_bar .nav-link {
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  .navbar.header .navbar-nav.login_bar .nav-link {
    font-size: 0.7777778rem;
  }
}
.navbar.header .navbar-nav.login_bar .separation-bar {
  display: none;
}
@media screen and (min-width: 992px) {
  .navbar.header .navbar-nav.login_bar .separation-bar {
    display: inline-block;
  }
}
@media screen and (max-width: 992px) {
  .navbar.header .navbar-nav .nav-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
}
.navbar.header .background-header-mobile {
  display: block;
  height: 60px;
  position: fixed;
  top: -60px;
  left: -15px;
  right: -15px;
  z-index: 1;
  -webkit-transition: top 0.2s cubic-bezier(0.03, 0.31, 0.59, 0.71);
  -o-transition: top 0.2s cubic-bezier(0.03, 0.31, 0.59, 0.71);
  transition: top 0.2s cubic-bezier(0.03, 0.31, 0.59, 0.71);
}
.navbar.header .background-header-mobile.show {
  -webkit-transition: top 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
  -o-transition: top 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
  transition: top 0.2s cubic-bezier(0.59, 0.71, 0.03, 0.31);
  top: 0px;
}
.navbar.header .background-header-mobile.show.hide {
  top: -60px;
}
.navbar.header .logo.dropdown-menu-mobile {
  position: fixed;
  top: 1rem;
  left: 15px;
  z-index: 1;
}
.navbar.header .navbar-toggler.dropdown-menu-mobile {
  z-index: 1;
  position: fixed;
  right: 15px;
  top: 1rem;
}
.navbar.header .navbar-icon {
  right: 0;
  top: 0;
  position: relative;
  z-index: 9999;
}
.navbar.header .navbar-icon .hamburger {
  background-clip: padding-box;
  top: 0;
  height: 2px;
  position: relative;
  width: 30px;
  display: block;
  content: "";
}
.navbar.header .navbar-icon .hamburger.hide {
  background: 0 0;
}
.navbar.header .navbar-icon .hamburger:before {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  width: 30px;
  background-clip: padding-box;
  top: -8px;
  -webkit-transition: all 0.1s linear;
  -o-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.navbar.header .navbar-icon .hamburger:after {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  width: 30px;
  background-clip: padding-box;
  bottom: -8px;
  -webkit-transition: all 0.1s linear;
  -o-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.navbar.header .navbar-icon .hamburger.rotate:before {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 0;
  height: 1px;
}
.navbar.header .navbar-icon .hamburger.rotate:after {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 0;
  height: 1px;
}
.navbar.header #login-menu .nav-item .nav-link {
  font-size: 1rem;
}
.navbar.header {
  /* Dropdowns */
}
.navbar.header .navbar-nav .nav-item.dropdown .btn-group {
  display: block;
}
.navbar.header .navbar-nav .dropdown [data-toggle=dropdown] {
  background-color: transparent;
  border: 0;
  margin: 0;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.navbar.header .navbar-nav .dropdown [data-toggle=dropdown]:hover, .navbar.header .navbar-nav .dropdown [data-toggle=dropdown]:focus {
  outline: none;
  cursor: pointer;
}
.navbar.header .navbar-nav .dropdown [data-toggle=dropdown][aria-expanded=true] svg {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.navbar.header .navbar-nav .dropdown [data-toggle=dropdown] .dropdown-caret--svg {
  display: inline-block;
  vertical-align: middle;
}
.navbar.header .navbar-nav .dropdown [data-toggle=dropdown].header {
  position: absolute;
  z-index: 9999;
  height: 100%;
}
.navbar.header .navbar-nav#login-menu {
  width: auto;
}
@media screen and (max-width: 992px) {
  .navbar.header .navbar-nav#login-menu {
    width: 100%;
    margin-top: 1em;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    border-top: none;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .navbar.header .navbar-nav#login-menu .nav-item {
    max-width: 45%;
    width: 100%;
    text-align: center;
    margin: 0;
  }
  .navbar.header .navbar-nav#login-menu .nav-item .nav-link {
    border: 1px solid;
    height: 100%;
    padding: 0.5rem 1rem;
  }
}
.navbar.header .navbar-nav#logged_profile_box .options-nav-item .nav-item .nav-link {
  text-align: right;
  display: inline-block;
  padding: 0;
  line-height: 1;
}
@media screen and (max-width: 992px) {
  .navbar.header .navbar-nav#logged_profile_box .options-nav-item {
    margin-top: 1em;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    border-top: none;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .navbar.header .navbar-nav#logged_profile_box .options-nav-item .nav-item {
    max-width: 140px;
    margin: 0;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .navbar.header .navbar-nav#logged_profile_box .options-nav-item .nav-item .nav-link {
    border: 1px solid;
    height: 100%;
    padding: 0.5rem 1rem;
    display: block;
    width: 100%;
    text-align: center;
    line-height: 1.2;
  }
}
@media screen and (max-width: 992px) {
  .navbar.header .dropdown-menu {
    -webkit-transition: all 0.32s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    -o-transition: all 0.32s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    transition: all 0.32s cubic-bezier(0.59, 0.71, 0.03, 0.31);
    max-height: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    overflow: hidden;
    opacity: 0;
    border: none;
    margin: 0 -2.25em;
    padding: 0;
    border-radius: 0;
  }
  .navbar.header .dropdown-menu.show {
    opacity: 1;
    max-height: 220px;
  }
  .navbar.header .dropdown-menu.show a {
    -webkit-transition: all 0.5s cubic-bezier(0.17, 0.67, 0.83, 0.67);
    -o-transition: all 0.5s cubic-bezier(0.17, 0.67, 0.83, 0.67);
    transition: all 0.5s cubic-bezier(0.17, 0.67, 0.83, 0.67);
  }
}
.navbar.header .dropdown-item {
  white-space: normal;
  width: 100%;
  padding: 1em 2em;
  font-size: 0.8888888889rem;
}
@media screen and (min-width: 992px) {
  .navbar.header .dropdown-item {
    width: 444px;
  }
}
.navbar.header .dropdown-item:first-child {
  padding-top: 1em;
}
.navbar.header .dropdown-item:last-child {
  padding-top: 1em;
}
.navbar.header .dropdown-item p {
  line-height: 1.5;
}
.navbar.header .dropdown-item p i {
  font-style: italic;
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}

.nav.language li:first-child {
  border-right-width: 1px;
  border-right-style: solid;
  padding-right: 0.4em;
  padding-left: 0;
}
.nav.language li {
  padding-left: 0.4em;
  padding-right: 0;
}

.dropdown-menu-mobile {
  overflow-x: hidden;
  overflow-y: auto;
}
.dropdown-menu-mobile .language-contender {
  width: calc(100% + 30px);
  margin: 0 -15px;
  padding: 0.32rem 0;
  opacity: 0;
  display: block;
}
.dropdown-menu-mobile .language-contender.show {
  opacity: 1;
  -webkit-transition: opacity 0.32s linear;
  -o-transition: opacity 0.32s linear;
  transition: opacity 0.32s linear;
}
.dropdown-menu-mobile .language-contender.hide {
  display: none;
}
.dropdown-menu-mobile .nav.language {
  border: 0;
  border-radius: 20px;
  margin-right: 15px;
}
.dropdown-menu-mobile .nav.language li {
  padding: 0.2rem 0.2rem;
  border: 0;
  display: flex;
  align-items: center;
}
.dropdown-menu-mobile .nav.language li span, .dropdown-menu-mobile .nav.language li a {
  font-size: 0.8rem;
  line-height: 1.13;
  padding: 0.5rem;
  font-family: "IBM Plex Mono Regular", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
.dropdown-menu-mobile .nav.language li span.selected {
  border-radius: 50%;
}

.link-arrow-down-medium--svg[aria-expanded=true] svg {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.text-description-menu {
  display: block;
}
@media screen and (max-width: 992px) {
  .text-description-menu.remove-mobile {
    display: none;
  }
}

button:focus {
  outline: none;
}

/* Navbar sub-menu catalogue page */
.catalogue-section .nav-item a,
.catalogue-options .nav-item a {
  font-size: 1rem;
  border-width: 1px;
  border-style: inset;
}
.catalogue-section .nav-item:not(:first-child) a,
.catalogue-options .nav-item:not(:first-child) a {
  border-top-width: 0;
}

@media screen and (max-width: 767.99999999px) {
  .catalogue-section .mobile-menu {
    margin: 0 -15px;
    position: sticky;
    top: 60px;
    z-index: 2;
  }
}
.catalogue-section .mobile-menu .collapse,
.catalogue-section .mobile-menu .collapsing {
  top: 0;
  position: absolute;
  z-index: 1;
}
.catalogue-section .mobile-menu .navbar-toggler {
  font-size: 1rem;
  line-height: 1;
  border-radius: 0;
}
.catalogue-section .mobile-menu .navbar-toggler[aria-expanded=true] .select-arrow svg {
  transform: rotate(180deg);
}
.catalogue-section .mobile-menu .nav-item a span {
  pointer-events: none;
}

.navbar-filters {
  overflow-x: scroll;
  scroll-behavior: smooth;
  width: 100%;
  gap: 0.5rem;
}
.navbar-filters .filter {
  min-width: fit-content;
}

/* ==========================================================================
   Redesign 2026 — Header overrides
   ========================================================================== */
header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1050 !important;
}

header > nav.navbar {
  background: var(--ct-white) !important;
  padding: 0 32px !important;
  min-height: 72px !important;
  border: none !important;
  border-bottom: 1px solid var(--ct-gray-100) !important;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06) !important;
  transition: all 0.4s ease !important;
}

header .navbar-brand.logo,
header .logo {
  color: var(--ct-red) !important;
  font-weight: 800 !important;
  font-size: 1.4rem !important;
  letter-spacing: -0.02em !important;
  word-spacing: normal !important;
}

header .logo svg path,
header .logo svg polygon,
header .logo svg .inside-path {
  fill: var(--ct-red) !important;
}

header .navbar-nav .nav-link {
  color: var(--ct-text-dark) !important;
  font-family: var(--ct-font-body) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: 0.02em !important;
  padding: 8px 20px !important;
  border-radius: var(--ct-radius-pill) !important;
  transition: all 0.25s ease !important;
  text-transform: none !important;
}

header .navbar-nav .nav-link:hover {
  color: var(--ct-red) !important;
  background: var(--ct-red-light) !important;
}

/* "Crea tu cuenta" — outline red */
header #login-menu .nav-item:first-child .nav-link {
  background: transparent !important;
  color: var(--ct-red) !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 8px 24px !important;
  border: 2px solid var(--ct-red) !important;
  font-weight: 700 !important;
}

header #login-menu .nav-item:first-child .nav-link:hover {
  background: var(--ct-red-light) !important;
}

/* "Log in" — solid red */
header #login-menu .nav-item:last-child .nav-link {
  background: var(--ct-red) !important;
  color: var(--ct-white) !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 8px 28px !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 15px rgba(219, 7, 60, 0.35) !important;
}

header #login-menu .nav-item:last-child .nav-link:hover {
  background: var(--ct-red-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(219, 7, 60, 0.45) !important;
}

@media (max-width: 1100px) {
  header .navbar-nav .nav-link {
    font-size: 12.5px !important;
    padding: 6px 12px !important;
    white-space: nowrap !important;
  }
  header #login-menu .nav-item:first-child .nav-link {
    padding: 6px 16px !important;
    font-size: 12.5px !important;
    white-space: nowrap !important;
  }
  header #login-menu .nav-item:last-child .nav-link {
    padding: 6px 18px !important;
    font-size: 12.5px !important;
    white-space: nowrap !important;
  }
  header > nav.navbar {
    padding: 0 20px !important;
  }
}
/* Login arrow SVG colors */
header #login-menu .nav-item:last-child svg path,
header #login-menu .nav-item:last-child svg line {
  stroke: var(--ct-white) !important;
}

header #login-menu .nav-item:first-child svg path,
header #login-menu .nav-item:first-child svg line {
  stroke: var(--ct-red) !important;
}

/* Dropdown menus redesign */
header .dropdown-menu {
  background: var(--ct-white) !important;
  border: none !important;
  border-radius: var(--ct-radius-lg) !important;
  box-shadow: var(--ct-shadow-lg) !important;
  padding: 16px !important;
  margin-top: 12px !important;
}

header .dropdown-menu::before {
  content: "" !important;
  position: absolute !important;
  top: -6px !important;
  left: 30px !important;
  width: 12px !important;
  height: 12px !important;
  background: var(--ct-white) !important;
  transform: rotate(45deg) !important;
  box-shadow: -2px -2px 4px rgba(0, 0, 0, 0.04) !important;
}

header .dropdown-item {
  color: var(--ct-text-dark) !important;
  border-radius: var(--ct-radius) !important;
  padding: 12px 16px !important;
  font-weight: 500 !important;
  transition: all 0.2s ease !important;
}

header .dropdown-item:hover {
  background: var(--ct-blue-light) !important;
  color: var(--ct-blue) !important;
}

header .bg-hexagon {
  background: var(--ct-blue-light) !important;
  border-radius: var(--ct-radius) !important;
}

header .text-title-description-menu {
  font-weight: 700 !important;
  color: var(--ct-text-dark) !important;
}

header .text-description-menu {
  color: var(--ct-text-light) !important;
  font-size: 13px !important;
}

header .navbar-toggler {
  border: none !important;
}

header .navbar-toggler-icon {
  filter: none !important;
}

/* Logged-in user — match production layout */
@media screen and (min-width: 992px) {
  #logged_profile_box .options-nav-item .nav-item .nav-link {
    text-align: right;
    display: inline-block;
    padding: 0;
    line-height: 1;
  }
}
/* Logged-in user — visible name in header */
#logged_profile_box,
#logged_profile_box li,
#logged_profile_box span,
#logged_profile_box .nav-item,
.login_bar,
.login_bar li,
.login_bar span {
  color: var(--ct-text-dark) !important;
  font-size: 14px;
  line-height: 14px;
}

#logged_profile_box .icon-user--svg svg path,
#logged_profile_box .icon-user--svg svg,
.login_bar .icon-user--svg svg path,
.login_bar .icon-user--svg svg {
  fill: var(--ct-text-dark) !important;
  color: var(--ct-text-dark) !important;
}

#logged_profile_box .nav-link,
.login_bar .nav-link {
  color: var(--ct-text-dark) !important;
  font-weight: 600 !important;
  padding: 0 !important;
  font-size: 14px !important;
  line-height: 14px !important;
}

#logged_profile_box .nav-link:hover,
.login_bar .nav-link:hover {
  color: var(--ct-red) !important;
}

#logged_profile_box .separation-bar,
.login_bar .separation-bar {
  color: var(--ct-gray-400) !important;
}

/* Icons */
[class$="--svg"] svg {
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
}

.dropdown-caret--svg {
  width: 14px;
  height: 14px;
  display: block;
}

.bg-hexagon {
  width: 40px;
  height: 40px;
  display: block;
  position: relative;
}
.bg-hexagon .inner-hexagon--svg {
  position: absolute !important;
  height: 24px;
  top: 8px;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}

.link-arrow--svg svg {
  width: 14px;
  height: 14px;
}

.icon-user--svg svg {
  width: 18px;
  height: 18px;
}

.link-arrow-medium--svg svg {
  width: 24px;
  height: 24px;
  margin-left: 0.5em;
  display: inline-block;
  vertical-align: middle;
}

.link-arrow-down-medium--svg svg {
  width: 20px;
  height: 20px;
  margin-left: 0.5em;
  display: inline-block;
  vertical-align: middle;
}

.link-play-video--svg svg {
  width: 24px;
  height: 24px;
  margin-right: 0.3em;
  display: inline-block;
  vertical-align: middle;
}

.icon-header svg {
  width: 53px;
  height: 48px;
}

h1 .icon-header {
  display: inherit;
}
h1 .icon-header svg {
  width: 1.3em;
  height: 1.3em;
}

@media screen and (min-width: 992px) {
  .header .icon-header svg {
    width: 77px;
    height: auto;
    padding: 0.3rem;
  }
}
.icons-center-list svg {
  width: 53px;
  height: 48px;
}

.icons-left-list svg {
  width: 32px;
  height: 32px;
}

.jumbotron svg {
  max-width: 140px;
}

.custom-left-list svg,
.checks-left-list svg,
.sub-menu-icons-left-list svg,
.plans-grid svg {
  width: 24px;
  height: 24px;
}

#steps--svg {
  height: 308px;
  width: 8px;
}

.header-offset-btn svg {
  height: 121px;
  width: 183px;
}

.image-center-list img {
  height: 96px;
  width: 96px;
  border: 3px solid;
  border-radius: 50px;
}

.logos-companies svg {
  height: 40px;
  width: auto;
}
@media screen and (min-width: 576px) {
  .logos-companies svg {
    height: 60px;
    width: 200px;
  }
}

@media screen and (min-width: 576px) {
  .custom-banner .logos-companies svg {
    width: 160px;
  }
}

.logos-companies-list svg {
  height: 40px;
  width: auto;
}
@media screen and (min-width: 576px) {
  .logos-companies-list svg {
    height: 50px;
    width: auto;
  }
}

#screw--icon {
  width: 56px;
  height: 56px;
}

#briefcase--icon {
  width: 56px;
  height: 47px;
}

.landing-text-center svg, .sign-in-logos-center svg, .login-logos-center svg {
  height: 32px;
  width: 32px;
}

#preview-control-panel {
  width: 100%;
  height: auto;
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}

.iphone {
  width: 178px;
  height: auto;
}

.footer-logos svg {
  height: 40px;
  width: 40px;
  display: block;
  margin: 0 auto;
}
.footer-logos #footer-youtube {
  width: 55px;
}

#error--icon {
  max-width: 150px;
}
@media screen and (min-width: 768px) {
  #error--icon {
    max-width: 200px;
  }
}

/* Catalogue list */
.catalogue-section .header svg {
  padding: 0;
}
.catalogue-section .mobile-menu .current-category svg {
  width: 2rem;
  height: auto;
  margin-right: 0.5rem;
}

.catalogue-section-list .catalogue-item svg {
  width: 1.333333rem;
  height: auto;
}

.campaigns-section-list .link-icon svg {
  width: 1.333333rem;
  height: auto;
}

/* Prices toggle */
.toggle-diamond:hover, .toggle-diamond-path:hover {
  cursor: pointer;
}
.toggle-diamond label, .toggle-diamond-path label {
  line-height: 1.4;
}
.toggle-diamond label:hover, .toggle-diamond-path label:hover {
  cursor: pointer;
}

/* Custom ratio header — Redesign 2026 */
/* Hero — Fondo azul corporativo con gradiente */
.custom-ratio-header {
  display: block;
  width: 100%;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 60%, #2a3d7a 100%);
  padding: 100px 0 80px;
  /* Ocultar patron original del hero */
}
.custom-ratio-header .pattern-header,
.custom-ratio-header .pattern-header-mobile,
.custom-ratio-header .polygon {
  display: none;
}
.custom-ratio-header [class^=pattern-header] svg {
  width: 100%;
  height: 100%;
}
.custom-ratio-header {
  /* Contenido del hero */
}
.custom-ratio-header .inside-aspect-ratio {
  width: 100%;
  height: 100%;
  padding-right: 1em;
  padding-left: 1em;
  position: relative;
  z-index: 2;
}
.custom-ratio-header .inside-aspect-ratio h1 {
  color: var(--ct-white);
  font-size: clamp(2.8rem, 5.5vw, 4.2rem);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.04em;
  margin-bottom: 24px;
}
.custom-ratio-header .inside-aspect-ratio h2 {
  color: rgba(255, 255, 255, 0.5);
  font-size: 1.1rem;
  font-weight: 500;
  font-family: var(--ct-font-mono);
  letter-spacing: 0.05em;
  margin-bottom: 20px;
}
.custom-ratio-header .inside-aspect-ratio p {
  color: rgba(255, 255, 255, 0.75);
  font-size: 18px;
  line-height: 1.7;
  max-width: 540px;
}
.custom-ratio-header .inside-aspect-ratio {
  /* Boton CTA del hero — blanco sobre azul */
}
.custom-ratio-header .inside-aspect-ratio .btn.btn-primary {
  background: var(--ct-white) !important;
  background-color: var(--ct-white) !important;
  color: var(--ct-blue) !important;
  border: none !important;
  border-color: transparent !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 16px 40px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2) !important;
  transition: all 0.3s ease;
  animation: pulse-glow 3s ease-in-out infinite;
}
.custom-ratio-header .inside-aspect-ratio .btn.btn-primary:hover {
  color: var(--ct-blue-dark) !important;
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25) !important;
}
.custom-ratio-header .inside-aspect-ratio {
  /* Link de video en hero */
}
.custom-ratio-header .inside-aspect-ratio .link-play-video--svg,
.custom-ratio-header .inside-aspect-ratio .video-play {
  color: var(--ct-white);
}
.custom-ratio-header .inside-aspect-ratio .link-play-video--svg span,
.custom-ratio-header .inside-aspect-ratio .video-play span {
  color: var(--ct-white);
}
.custom-ratio-header .inside-aspect-ratio .link-play-video--svg svg path,
.custom-ratio-header .inside-aspect-ratio .link-play-video--svg svg circle,
.custom-ratio-header .inside-aspect-ratio .video-play svg path,
.custom-ratio-header .inside-aspect-ratio .video-play svg circle {
  stroke: var(--ct-white);
  fill: none;
}

/* Elementos decorativos con pseudo-elementos */
.container-fluid.custom-ratio-header::before {
  content: "";
  position: absolute;
  top: -150px;
  right: -100px;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: rgba(219, 7, 60, 0.08);
  pointer-events: none;
}

.container-fluid.custom-ratio-header::after {
  content: "";
  position: absolute;
  bottom: -200px;
  left: -150px;
  width: 600px;
  height: 600px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.04);
  pointer-events: none;
}

/* Responsive hero */
@media (max-width: 991px) {
  .container-fluid.custom-ratio-header {
    padding: 56px 0 44px;
  }
  .inside-aspect-ratio h1 {
    font-size: 2.2rem;
  }
}
@media (max-width: 767px) {
  .container-fluid.custom-ratio-header {
    padding: 44px 0 36px;
  }
  .inside-aspect-ratio h1 {
    font-size: 1.8rem;
  }
}
/* Buttons */
.btn, .btn-lg {
  border-radius: 0;
  white-space: normal;
}

.btn#acepto_cookies {
  white-space: nowrap;
}

/* Redesign 2026 — Solo frontend (cherry-theme) */
body.cherry-theme {
  /* Sistema de botones base */
}
body.cherry-theme .btn, body.cherry-theme .btn-lg {
  font-family: var(--ct-font-body);
  font-weight: 600;
  border-radius: var(--ct-radius-pill);
  padding: 12px 32px;
  font-size: 15px;
  transition: all 0.3s var(--ct-ease);
  border: none;
  cursor: pointer;
  letter-spacing: 0.01em;
  text-transform: none;
  white-space: normal;
}
body.cherry-theme {
  /* Primary button — Rojo corporativo */
}
body.cherry-theme .btn-primary {
  background: var(--ct-red);
  color: var(--ct-white);
  box-shadow: 0 4px 15px rgba(219, 7, 60, 0.35);
}
body.cherry-theme .btn-primary:hover {
  background: var(--ct-red-dark);
  color: var(--ct-white);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(219, 7, 60, 0.45);
}
body.cherry-theme {
  /* Outline button */
}
body.cherry-theme .btn-outline,
body.cherry-theme .btn-outline-primary {
  background: transparent;
  color: var(--ct-blue);
  border: 2px solid var(--ct-blue);
}
body.cherry-theme .btn-outline:hover,
body.cherry-theme .btn-outline-primary:hover {
  background: var(--ct-blue);
  color: var(--ct-white);
}
body.cherry-theme {
  /* Links con flecha — estilo moderno */
}
body.cherry-theme a.link-arrow-medium--svg,
body.cherry-theme a.link-arrow--svg {
  font-weight: 600;
  font-size: 15px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all 0.25s ease;
}
body.cherry-theme a.link-arrow-medium--svg:hover,
body.cherry-theme a.link-arrow--svg:hover {
  gap: 12px;
}

/* Legacy button contexts */
.newsletter-signup .btn {
  width: 100%;
}

.icons-center-list .btn {
  width: 90%;
}
@media screen and (min-width: 640px) {
  .icons-center-list .btn {
    width: 75%;
  }
}
@media screen and (min-width: 810px) {
  .icons-center-list .btn {
    width: 70%;
  }
}

.sign-in-logos-center, .login-logos-center {
  justify-content: center;
}
@media screen and (min-width: 300px) and (max-width: 1199px) {
  .sign-in-logos-center, .login-logos-center {
    justify-content: space-around;
  }
}
@media screen and (min-width: 1200px) {
  .sign-in-logos-center, .login-logos-center {
    justify-content: space-between;
  }
}
.sign-in-logos-center .btn, .login-logos-center .btn {
  background-color: transparent;
  border: 1px solid;
  width: 273px;
  padding: 5px 0;
  line-height: 0.5;
}

.btn small {
  font-size: 0.888888889em;
}

.card-deck button:hover {
  cursor: pointer;
}

.modal-header .close span {
  width: 4px;
  height: 4px;
  display: block;
}
.modal-header .close span::before, .modal-header .close span::after {
  content: "";
  display: block;
  position: absolute;
  height: 2px;
  width: 40px;
  background-clip: padding-box;
  top: 18px;
  right: 0px;
}
.modal-header .close span::before {
  transform: rotate(-45deg);
}
.modal-header .close span::after {
  transform: rotate(45deg);
}

body.es_prices button, body.es_prices a.btn, body.en_prices button, body.en_prices a.btn {
  padding-top: 0.6rem;
  padding-bottom: 0.6rem;
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
}
@media screen and (min-width: 992px) {
  body.es_prices button, body.es_prices a.btn, body.en_prices button, body.en_prices a.btn {
    font-size: 0.888888889rem;
  }
}
body.es_prices .grid-row.footer button, body.es_prices .grid-row.footer a.btn, body.en_prices .grid-row.footer button, body.en_prices .grid-row.footer a.btn {
  font-size: 0.888888889rem;
}

button.btn-link {
  border: none;
  padding: 0;
}
button.btn-link:focus {
  box-shadow: none;
}

/* Buttons */
.custom-select {
  border-radius: 0;
  white-space: normal;
  background-image: none;
}

.custom-caret::after {
  content: "";
  display: block;
  position: absolute;
  right: 1rem;
  top: 0.5rem;
  width: 15px;
  height: 15px;
  background-color: transparent;
  border-style: solid;
  border-right-width: 2px;
  border-bottom-width: 2px;
  transform: rotate(45deg);
  z-index: 4;
}

/* Sections styles */
.center-list h3 {
  font-size: 1.7777777778rem;
}
.center-list.uppercase h3 {
  font-size: 2.3333333333rem;
}

h2.left-title {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
}

.icons-center-list h4 {
  font-family: "IBM Plex Mono Regular", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
  font-size: 1.3333333333rem;
  line-height: 1.3333;
}
.icons-center-list h4 b,
.icons-center-list h4 strong {
  font-family: "IBM Plex Mono Medium", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
.icons-center-list h4 i {
  font-family: "IBM Plex Mono Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
.icons-center-list h4 b i,
.icons-center-list h4 strong i {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}
.icons-center-list h4 i b,
.icons-center-list h4 i strong {
  font-family: "IBM Plex Mono Medium Italic", "Menlo", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", Courier, monospace;
}

.image-center-list p {
  font-size: 1.3333333333rem;
  font-style: italic;
}
.image-center-list h5 {
  font-size: 1rem;
  font-family: "IBM Plex Sans Bold", "Helvetica Neue", Arial, sans-serif;
}
.image-center-list h6 {
  font-size: 1rem;
}

.icons-left-list p {
  font-size: 0.8888888889rem;
}

.left-list h4 {
  font-size: 1.3333333333rem;
  line-height: 1.3333;
}

.checklist-ok li,
.checklist-ok li span,
.checklist-bullets li,
.checklist-bullets li span,
.checklist-ordered li,
.checklist-ordered li span {
  line-height: 1.4;
}

.checklist-ordered span.order {
  border-radius: 50%;
  padding: 0.1rem 0 0 0;
  min-width: 1.5rem;
  min-height: 1.5rem;
}
.checklist-ordered span.order ~ span {
  padding: 0.1rem 0 0 0;
}

.header-left-list h3 {
  font-size: 1.3333333333rem;
  line-height: 1.333;
}
.header-left-list p.text {
  font-size: 1.7777777779rem;
  line-height: 1.25;
}

.highlights-left-list h5 {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.7777777778rem;
}
.highlights-left-list h5 b,
.highlights-left-list h5 strong {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
.highlights-left-list h5 i {
  font-family: "IBM Plex Sans Italic", "Helvetica Neue", Arial, sans-serif;
}
.highlights-left-list h5 b i,
.highlights-left-list h5 strong i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
.highlights-left-list h5 i b,
.highlights-left-list h5 i strong {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}

.index-highlights-left-list h5 {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-size: 1.7777777778rem;
}
.index-highlights-left-list h5 b,
.index-highlights-left-list h5 strong {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
.index-highlights-left-list h5 i {
  font-family: "IBM Plex Sans Italic", "Helvetica Neue", Arial, sans-serif;
}
.index-highlights-left-list h5 b i,
.index-highlights-left-list h5 strong i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
.index-highlights-left-list h5 i b,
.index-highlights-left-list h5 i strong {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}

.sub-menu-icons-left-list h3 {
  font-size: 1.3333333333rem;
}
.sub-menu-icons-left-list p {
  font-size: 0.8888888889rem;
}

.custom-left-list h4 {
  font-size: 1.7777777778rem;
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
}
.custom-left-list h4 b,
.custom-left-list h4 strong {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
.custom-left-list h4 i {
  font-family: "IBM Plex Sans Italic", "Helvetica Neue", Arial, sans-serif;
}
.custom-left-list h4 b i,
.custom-left-list h4 strong i {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
.custom-left-list h4 i b,
.custom-left-list h4 i strong {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
.custom-left-list p {
  font-size: 1rem;
}
.custom-left-list a {
  font-size: 1rem;
}
.custom-left-list ul {
  list-style: disc;
  -webkit-padding-start: 0.75em;
  padding-inline-start: 0.75em;
  font-size: 1.5rem;
  border-left: 2px solid;
}
@-moz-document url-prefix() {
  .custom-left-list ul {
    -webkit-padding-start: 0.65em;
    padding-inline-start: 0.65em;
  }
}

.checks-left-list {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}
.checks-left-list h4 {
  font-size: 1.7777777778rem;
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
}
.checks-left-list h4 b,
.checks-left-list h4 strong {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
.checks-left-list h4 b i,
.checks-left-list h4 strong i {
  font-family: "IBM Plex Sans Italic", "Helvetica Neue", Arial, sans-serif;
}
.checks-left-list h4 i b,
.checks-left-list h4 i strong {
  font-family: "IBM Plex Sans Medium Italic", "Helvetica Neue", Arial, sans-serif;
}
.checks-left-list li {
  width: 100%;
}
.checks-left-list p {
  font-size: 1rem;
}
.checks-left-list p.text-title {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
.modal-dialog .checks-left-list li p {
  font-size: 1rem;
}
@media screen and (min-width: 992px) {
  .modal-dialog .checks-left-list li p {
    font-size: 0.88888889rem;
  }
}

.header-offset-btn h2 {
  font-size: 1.3333333333rem;
  line-height: 1.33333;
}

.bg-text p {
  font-size: 1.7777777778rem;
}

.title-bottom {
  height: 2rem;
}

@media screen and (min-width: 768px) {
  .paragraph-center-list {
    height: 8rem;
  }
}

.claim-ct h1 {
  font-size: 1rem;
}
@media screen and (min-width: 410px) {
  .claim-ct h1 {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 768px) {
  .claim-ct h1 {
    font-size: 1.7rem;
  }
}
@media screen and (min-width: 1120px) {
  .claim-ct h1 {
    font-size: 2.3333333333rem;
  }
}

header.landing h1 {
  font-size: 1rem;
}
@media screen and (min-width: 768px) {
  header.landing h1 {
    font-size: 1.33333333rem;
  }
}

.card-deck h1 small {
  font-size: 1.3333333333rem;
}
.card-deck .footer .checks-left-list .text-title {
  font-size: 1.3333333333rem;
}

.card ul li {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  line-height: 1.2;
}

.guides-section-container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
@media screen and (min-width: 992px) {
  .guides-section-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}
.guides-section-container {
  gap: 2rem;
}

.guides-section {
  gap: 1rem;
  flex: 1 1 70%;
}
.guides-section article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 100%;
}
@media screen and (min-width: 664px) {
  .guides-section article {
    max-width: calc(50% - 0.5rem);
  }
}
.guides-section article p {
  flex: 1 1 auto;
}

aside#sub-menu {
  flex: 1 1 30%;
  min-width: 18rem;
}

.landing-text-center {
  text-align: center;
}
.landing-text-center p.logos {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}

.landing-left-list h3 {
  font-size: 1.333333rem;
}

.phone-number {
  font-size: 1.77777778rem;
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
}
@media screen and (max-width: 1200px) {
  .phone-number {
    font-size: 1rem;
  }
}

h6.sub-title-section {
  font-size: 1.3333333333rem;
}

.campaign_demo_personalized_campaign a {
  display: none;
}

.cta-aside-section {
  padding: 1rem;
}

/* Campaigns list */
.catalogue-section {
  display: -ms-grid;
  display: grid;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .catalogue-section {
    -ms-grid-columns: 1fr 30px 1fr;
    grid-template-columns: 1fr 1fr;
    column-gap: 30px;
    row-gap: 1rem;
  }
  .catalogue-section .catalogue-article {
    grid-column: 1/-1;
  }
}
.catalogue-section article .header {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 0.5rem auto;
  grid-template-rows: auto auto;
  -ms-grid-columns: auto 1rem 1fr;
  grid-template-columns: auto 1fr;
  column-gap: 1rem;
  row-gap: 0.5rem;
}
.catalogue-section article .header h2 {
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self: center;
}
.catalogue-section article .header p {
  grid-column: 1/-1;
}
@media screen and (min-width: 992px) {
  .catalogue-section article .header .icon-header {
    grid-row: 1/-1;
  }
  .catalogue-section article .header h2, .catalogue-section article .header p {
    grid-column: 2/-2;
  }
}
.catalogue-section article .header > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.catalogue-section article .header > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
.catalogue-section article .header > *:nth-child(3) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
}
.catalogue-section article .header > *:nth-child(4) {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
}

.catalogue-section-list .catalogue-item {
  border-width: 1px;
  border-style: solid;
  width: 100%;
}
.catalogue-section-list .catalogue-item p {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-size: 0.7777777778rem;
}

.polygon {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
}
.polygon .right-form-container {
  display: block;
  max-width: 482px;
  margin-right: -280px;
  top: -120px;
  opacity: 0.5;
  right: 0;
  position: absolute;
  width: 482px;
  height: 439px;
}
@media screen and (min-width: 768px) {
  .polygon .right-form-container {
    max-width: 582px;
    width: 582px;
    margin-right: -220px;
  }
}
.polygon .left-form-container {
  max-width: 482px;
  margin-left: -360px;
  opacity: 0.5;
  top: 90px;
  display: block;
  position: absolute;
  width: 482px;
  height: 439px;
}
@media screen and (min-width: 768px) {
  .polygon .left-form-container {
    width: 582px;
    max-width: 582px;
  }
}
section .polygon .right-form-container {
  margin-right: -340px;
  margin-top: 0;
  top: 0;
}
.polygon .left-chart-container {
  max-width: 100%;
  margin-left: 0px;
  display: block;
  opacity: 0.4;
}
@media screen and (min-width: 768px) {
  .polygon .left-chart-container {
    max-width: 40%;
    opacity: 1;
  }
}

.polygon-login {
  position: absolute;
  width: 100%;
  overflow: hidden;
  z-index: -999;
}
.polygon-login .left-form-container-login {
  max-width: 550px;
  margin-left: -420px;
  opacity: 0.6;
  display: block;
  margin-top: -140px;
  height: 543px;
}
@media screen and (min-width: 768px) {
  .polygon-login .left-form-container-login {
    max-width: 620px;
    margin-top: -100px;
  }
}
@media screen and (min-width: 1092px) {
  .polygon-login .left-form-container-login {
    opacity: 0.9;
  }
}

#template-list .item {
  transition: all 0.25s ease-in;
  text-align: left;
  border-width: 1px;
  border-style: solid;
  padding: 0;
}
#template-list .item .header {
  font-size: 0.82rem;
  padding: 0.5rem;
}
#template-list .item .header .title {
  line-height: 1.1;
}
#template-list .item .header .icon {
  min-height: 2.2rem;
}
#template-list .item .header .icon svg {
  width: 42px;
}
#template-list .item .badge {
  font-size: 0.82em;
}
#template-list .item .description {
  transition: opacity 0.25s ease-in;
  opacity: 0;
  line-height: 1;
}
#template-list .item .description small {
  font-size: 80% !important;
  font-weight: 400 !important;
}
#template-list .item .info-icon {
  max-width: 23px;
  padding: 0 8px;
}
#template-list .item:hover .description {
  opacity: 1;
}

@media screen and (max-width: 991.9999px) {
  .plans-grid .container {
    padding: 0 1px;
  }
}
.plans-grid .grid-contender .grid-row {
  width: 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1.4fr 1fr [2];
  grid-template-columns: 1.4fr repeat(2, 1fr);
}
.plans-grid .grid-contender .grid-row.footer {
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 992px) {
  .plans-grid .grid-contender .grid-row {
    -ms-grid-columns: 1.6fr 1fr [4];
    grid-template-columns: 1.6fr repeat(4, 1fr);
  }
}
.plans-grid .grid-contender .grid-row:not(.header:first-child):not(.footer) {
  border-top: 0;
}
.plans-grid .grid-contender .grid-row:not(.header:first-child):not(.footer) .cell:not(.disabled):not(.aside) {
  border-left: 0;
}
.plans-grid .grid-contender .grid-row .cell {
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem;
  text-align: center;
  padding: calc(0.5rem - 1px) 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.plans-grid .grid-contender .grid-row .cell.aside {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  text-align: left;
}
.plans-grid .grid-contender .grid-row .cell.aside a {
  text-decoration: underline;
}
.plans-grid .grid-contender .grid-row .cell.disabled {
  display: none;
}
.plans-grid .grid-contender .grid-row.header {
  position: sticky;
  top: 5.75rem;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 992px) {
  .plans-grid .grid-contender .grid-row.header {
    -ms-grid-columns: 1.6fr 1fr [4];
    grid-template-columns: 1.6fr repeat(4, 1fr);
    top: 0;
  }
}
.plans-grid .grid-contender .grid-row.header .cell {
  padding: calc(0.8rem - 1px) 0.5rem;
  text-transform: uppercase;
  font-family: "IBM Plex Sans Regular", "Helvetica Neue", Arial, sans-serif;
  line-height: 0.9;
}
.plans-grid .grid-contender .grid-row.header .cell:not(.aside) {
  display: none;
}
@media screen and (min-width: 992px) {
  .plans-grid .grid-contender .grid-row.header .cell:not(.aside) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.plans-grid .grid-contender .grid-row.header .cell.aside {
  text-transform: initial;
  border: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .plans-grid .grid-contender .grid-row.header .cell.aside {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    text-align: left;
  }
}
@media screen and (min-width: 992px) {
  .plans-grid .grid-contender .grid-row.footer {
    grid-template-columns: 1.6fr repeat(4, 1fr);
  }
}
.plans-grid .grid-contender .grid-row.footer .cell, .plans-grid .grid-contender .grid-row.footer .cell:empty {
  padding: 0 0 1px 0;
}
.plans-grid .grid-contender .grid-row.footer .cell form, .plans-grid .grid-contender .grid-row.footer .cell:empty form {
  width: 100%;
}
.plans-grid .mobile-menu {
  position: sticky;
  top: 60px;
  z-index: 2;
}
@media screen and (min-width: 992px) {
  .plans-grid .mobile-menu {
    display: none;
  }
}
.plans-grid .mobile-menu .header {
  width: 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1.4fr 1fr [2];
  grid-template-columns: 1.4fr repeat(2, 1fr);
}
.plans-grid .mobile-menu .header > * {
  padding: 0.5rem 0 0.4rem 0;
  text-align: center;
}
.plans-grid .mobile-menu .header .cell {
  text-transform: uppercase;
}
.plans-grid .mobile-menu .collapse-options {
  position: absolute;
  z-index: 3;
}
.plans-grid .mobile-menu .collapse-options.show, .plans-grid .mobile-menu .collapse-options.collapsing {
  width: 100%;
}
.plans-grid .mobile-menu .collapse-options.show form, .plans-grid .mobile-menu .collapse-options.collapsing form {
  display: grid;
  -ms-grid-columns: 1.4fr 1fr [2];
  grid-template-columns: 1.4fr repeat(2, 1fr);
}
@media screen and (min-width: 992px) {
  .plans-grid .mobile-menu .collapse-options.show form, .plans-grid .mobile-menu .collapse-options.collapsing form {
    display: none;
  }
}
.plans-grid .mobile-menu .option {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
  text-transform: uppercase;
  text-align: center;
  line-height: 1.7;
  padding: 0.5rem 0 0.4rem 0;
}
.plans-grid .mobile-menu .column {
  display: flex;
  flex-direction: column;
}
.plans-grid .mobile-menu .cell {
  position: relative;
  padding: 0.4rem 0 0.5rem;
  text-align: center;
}
.plans-grid .mobile-menu .collapse-options .option, .plans-grid .mobile-menu .collapse-options .cell {
  border-style: solid;
}
.plans-grid .mobile-menu .collapse-options .option:not(:last-child), .plans-grid .mobile-menu .collapse-options .cell:not(:last-child) {
  border-bottom-width: 1px;
}
.plans-grid .mobile-menu .collapse-options .option:not([data-column=second]), .plans-grid .mobile-menu .collapse-options .cell:not([data-column=second]) {
  border-right-width: 1px;
}
.plans-grid .mobile-menu input[type=radio].ct-radio {
  position: absolute !important;
  top: 0;
  left: 0;
  opacity: 0;
}
.plans-grid .mobile-menu input[type=radio].ct-radio ~ .ct-radio-label::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  border-width: 5px;
  border-style: solid;
  border-radius: 12px;
}
.plans-grid .mobile-menu input[type=radio].ct-radio ~ .ct-radio-label:hover {
  cursor: pointer;
}
.plans-grid .disabled {
  display: none;
}

.general-features-grid {
  display: grid;
  grid-template-rows: repeat(3, auto);
  grid-template-columns: 1fr;
  gap: 0px;
  height: 100%;
}
.general-features-grid .general-features,
.general-features-grid .cta-plans,
.general-features-grid .cta-trial {
  grid-column: 1;
}
.general-features-grid .cta-plans {
  grid-row: 1;
}
@media screen and (min-width: 768px) {
  .general-features-grid {
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
  .general-features-grid .general-features {
    grid-row-start: 1;
    grid-column-start: 1;
    grid-row-end: 3;
    grid-column-end: 2;
  }
  .general-features-grid .cta-plans {
    grid-row-start: 1;
    grid-column-start: 2;
    grid-row-end: 2;
    grid-column-end: 3;
  }
  .general-features-grid .cta-trial {
    grid-row-start: 2;
    grid-column-start: 2;
    grid-row-end: 3;
    grid-column-end: 3;
  }
}
@media screen and (min-width: 1024px) {
  .general-features-grid {
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1.2fr 0.8fr;
  }
}

/* Modals — Redesign 2026 */
.modal {
  z-index: 9999;
}
@media (min-width: 1200px) {
  .modal .modal-lg {
    max-width: 1200px;
  }
}

.modal-content {
  border-radius: var(--ct-radius-xl);
  border: none;
  overflow: hidden;
  box-shadow: var(--ct-shadow-lg);
  position: relative !important;
}
.modal-content .modal-header {
  border-bottom: none;
  padding: 16px 20px;
  position: relative !important;
  padding-right: 56px !important;
}
.modal-content .modal-header .close,
.modal-content .modal-header .btn-close {
  position: absolute !important;
  top: 16px !important;
  right: 20px !important;
  z-index: 10 !important;
  padding: 8px !important;
  margin: 0 !important;
  opacity: 0.6 !important;
  font-size: 1.4rem !important;
  line-height: 1 !important;
  background: rgba(255, 255, 255, 0.9) !important;
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid var(--ct-gray-200, #e2e8f0) !important;
  transition: all 0.2s ease !important;
  text-shadow: none;
}
.modal-content .modal-header .close:hover,
.modal-content .modal-header .btn-close:hover {
  opacity: 1 !important;
  background: var(--ct-white, #fff) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}
.modal-content .modal-body {
  padding: 0 20px 20px;
}

#analytics-info-modal h2 {
  text-transform: uppercase;
  text-align: left;
}
#analytics-info-modal .modal-body {
  margin-bottom: 0;
}

.modal-analytics-info strong {
  font-family: "IBM Plex Sans Medium", "Helvetica Neue", Arial, sans-serif;
}
.modal-analytics-info .modal-header {
  border-bottom: 0;
}
@media screen and (max-width: 991.9999px) {
  .modal-analytics-info .modal-header {
    border-bottom: 1px solid;
  }
}
.modal-analytics-info .modal-body {
  padding-top: 0;
  padding-bottom: 0;
}

.prices-switch-contender a:not(.btn) {
  text-decoration: underline;
}
@media screen and (max-width: 991.99999px) {
  .prices-switch-contender {
    padding: 0;
  }
}
.prices-switch-contender .swiper-pagination {
  position: sticky;
  top: 0;
  bottom: 0;
  margin: 0 auto;
  padding: 1rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.swiper .preloader-icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.swiper .preloader-icon svg {
  position: absolute;
  max-width: 3rem;
  opacity: 1;
  animation: 2s bip ease-out infinite;
}
.swiper .preloader-icon svg polygon {
  fill: #ffffff;
}
.swiper.prices-cards {
  width: 100%;
}
.swiper.prices-cards .swiper-wrapper {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: calc(100% - 30px) 1.5px calc(100% - 30px) 1.5px calc(100% - 30px) 1.5px calc(100% - 30px);
  grid-template-columns: repeat(4, calc(100% - 30px));
  opacity: 0;
  -webkit-transition: opacity ease-in 0.2s;
  -o-transition: opacity ease-in 0.2s;
  transition: opacity ease-in 0.2s;
  gap: 1px;
}
@media screen and (min-width: 992px) {
  .swiper.prices-cards .swiper-wrapper {
    gap: 1.5px;
  }
}
.swiper.prices-cards.disabled .swiper-wrapper {
  grid-template-columns: repeat(4, 1fr);
}
.swiper.prices-cards .swiper-slide {
  width: 100%;
}
@media screen and (max-width: 991.99999px) {
  .swiper.prices-cards .swiper-slide-prev::after,
  .swiper.prices-cards .swiper-slide-next::before {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    width: 1.5rem;
    opacity: 0.5;
    top: 0;
  }
}
.swiper.prices-cards .swiper-slide-prev::after {
  right: 0;
}
.swiper.prices-cards .swiper-slide-next::before {
  left: 0;
}
.swiper.show {
  background: none;
}
.swiper.show .preloader-icon svg {
  opacity: 0;
}
.swiper.show .swiper-wrapper {
  opacity: 1;
}

.prices-analytics {
  position: relative;
}
@media screen and (max-width: 991.99999px) {
  .prices-analytics {
    padding-bottom: 1rem;
    padding-top: 1rem;
  }
  .prices-analytics::after, .prices-analytics::before {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    width: 1rem;
    opacity: 0.32;
    top: 0;
  }
  .prices-analytics::after {
    right: -1.5rem;
  }
  .prices-analytics::before {
    left: -1.5rem;
  }
}
.prices-analytics .swiper .swiper-wrapper .swiper-slide {
  flex: 1 0 auto;
}

.analytics-disclaimer {
  padding: 0;
}
.analytics-disclaimer .analytics-disclaimer-info {
  padding: 0.5rem 1.5rem;
}
.analytics-disclaimer .swiper-pagination {
  position: relative;
  bottom: 0;
  padding: 0.5rem 0;
  border-top-width: 1px;
  border-top-style: solid;
}

.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  border-radius: 6px;
}

.swiper-pagination-bullet-active {
  width: 16px;
  height: 16px;
  border-radius: 8px;
}

.swiper.case-studies {
  box-shadow: 0 1px 5px 0px rgba(0, 0, 0, 0.12);
}
@media screen and (min-width: 560px) {
  .swiper.case-studies .post-thumb img {
    max-width: 41vw;
  }
}

.swiper-button-next::after,
.swiper-button-prev::after {
  text-shadow: 0 1px 5px rgba(0, 0, 0, 0.12);
}

.swiper-button-lock {
  display: none !important;
}

.pagination-case-studies {
  position: relative;
  padding-top: 1rem;
  top: 0;
  bottom: 0;
}

@-webkit-keyframes bip {
  0% {
    opacity: 0.5;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.5;
  }
}
@keyframes bip {
  0% {
    opacity: 0.5;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.5;
  }
}
/* --------------------------------------------------------------------------
   19. FOOTER — Diseño oscuro profesional
   -------------------------------------------------------------------------- */
footer,
footer.footer {
  background: var(--ct-gray-900) !important;
  color: rgba(255, 255, 255, 0.7) !important;
  padding: 64px 0 32px !important;
  position: relative !important;
}

/* Ocultar SVG decorativo del footer original */
.bg-footer-container,
.bg-footer {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}

/* Forzar fondo oscuro en TODOS los contenedores del footer */
.content-footer,
.footer-footer,
footer > * {
  background: var(--ct-gray-900) !important;
  position: relative !important;
}

/* Nuclear override — todo el texto del footer en claro */
footer *,
.content-footer *,
footer.footer *,
.footer-footer * {
  color: rgba(255, 255, 255, 0.65) !important;
}

/* Titulos del footer mas brillantes */
footer h4,
.content-footer h4 {
  color: var(--ct-white) !important;
  font-family: var(--ct-font-display) !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  margin-bottom: 20px !important;
}

/* Links del footer */
footer a,
.content-footer a {
  color: rgba(255, 255, 255, 0.6) !important;
  transition: all 0.2s ease !important;
  font-size: 14px !important;
}

footer a:hover,
.content-footer a:hover {
  color: var(--ct-white) !important;
}

/* Logo del footer */
footer .logo,
footer .navbar-brand {
  color: var(--ct-white) !important;
  font-weight: 800 !important;
}

footer .logo svg path,
footer .logo svg polygon,
footer .logo svg .inside-path,
footer #logo-imago-footer path,
footer #logo-imago-footer polygon {
  fill: var(--ct-white) !important;
}

/* Sellos footer (PYME + CDTI) — tarjeta clara para legibilidad sobre fondo oscuro */
footer img[alt*=Pyme],
footer img[alt*=CDTI],
.content-footer img[alt*=Pyme],
.content-footer img[alt*=CDTI] {
  filter: none !important;
  background: var(--ct-white) !important;
  padding: 16px !important;
  border-radius: var(--ct-radius-lg, 12px) !important;
  opacity: 1 !important;
}

/* Copyright */
footer .copyright {
  color: rgba(255, 255, 255, 0.4) !important;
  font-size: 13px !important;
}

/* Social icons */
footer svg,
.footer-logos svg {
  opacity: 0.6 !important;
  transition: all 0.25s ease !important;
}

footer svg path,
footer svg polygon,
footer svg circle,
footer svg rect,
.footer-logos svg path,
.footer-logos svg polygon {
  fill: rgba(255, 255, 255, 0.7) !important;
}

footer svg:hover,
.footer-logos svg:hover {
  opacity: 1 !important;
  transform: scale(1.15) !important;
}

footer svg:hover path,
footer svg:hover polygon,
.footer-logos svg:hover path {
  fill: var(--ct-white) !important;
}

/* Language selector en footer */
footer .nav.language a,
.footer-footer .language a {
  color: rgba(255, 255, 255, 0.5) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

footer .nav.language a:hover,
.footer-footer .language a:hover {
  color: var(--ct-white) !important;
}

/* Separador del footer */
footer hr,
.content-footer hr,
.footer-footer hr {
  border-color: rgba(255, 255, 255, 0.08) !important;
  margin: 32px 0 !important;
}

/* Footer bottom section */
.footer-footer {
  padding-top: 24px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}

/* Texto legal */
footer small,
footer .small,
footer .legal {
  color: rgba(255, 255, 255, 0.35) !important;
  font-size: 12px !important;
}

/* Newsletter en footer */
footer input[type=email],
footer .form-control {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: var(--ct-radius-pill) !important;
  color: var(--ct-white) !important;
  padding: 12px 20px !important;
  font-size: 14px !important;
}

footer input[type=email]::placeholder {
  color: rgba(255, 255, 255, 0.4) !important;
}

footer input[type=email]:focus {
  border-color: var(--ct-red) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(219, 7, 60, 0.2) !important;
}

footer .btn {
  background: var(--ct-red) !important;
  color: var(--ct-white) !important;
  border-radius: var(--ct-radius-pill) !important;
  font-weight: 600 !important;
}

/* --------------------------------------------------------------------------
   7. SECCION MARCAS/CLIENTES — Fondo blanco, logos con color
   -------------------------------------------------------------------------- */
.es_index main > section:first-of-type,
article#clients,
.en_index main > section:first-of-type {
  background: var(--ct-white) !important;
  padding: 40px 0 30px !important;
}

article#clients h2 {
  color: var(--ct-text-dark) !important;
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  margin-bottom: 28px !important;
  position: relative !important;
}

/* Decorador bajo el titulo */
article#clients h2::after {
  content: "" !important;
  display: block !important;
  width: 60px !important;
  height: 3px !important;
  background: var(--ct-red) !important;
  margin: 16px auto 0 !important;
  border-radius: 2px !important;
}

/* Logos de empresas — eliminar filtro gris, mostrar con opacidad */
.logos-companies svg {
  opacity: 0.5 !important;
  transition: all 0.4s ease !important;
  filter: grayscale(0) !important;
}

.logos-companies svg:hover {
  opacity: 1 !important;
  transform: scale(1.1) !important;
}

/* Logos: solo opacidad, NO forzar fill para no romper logos complejos (El Corte Inglés etc.) */
/* Se eliminó fill: var(--ct-gray-700) que rompía logos SVG con múltiples colores/formas */
/* Link de ver casos de exito */
article#clients a.link-arrow--svg,
article#clients a.link-arrow-medium--svg {
  color: var(--ct-blue) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
}

/* --------------------------------------------------------------------------
   8. SECCION "COMO TE PUEDE AYUDAR" — Cards con fondo y estilo
   -------------------------------------------------------------------------- */
.es_index main > section:nth-of-type(2),
.en_index main > section:nth-of-type(2) {
  background: transparent !important;
  padding: 0 !important;
}

.left-list {
  background: var(--ct-off-white) !important;
  padding: 48px 0 !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-bottom: 0 !important;
  margin-top: 0 !important;
  padding-left: calc(50vw - 50% + 15px) !important;
  padding-right: calc(50vw - 50% + 15px) !important;
}

/* Titulo de seccion */
.left-list > h2,
article#index-header h2 {
  text-align: center !important;
  margin-bottom: 32px !important;
  position: relative !important;
}

/* Feature cards como bloques */
.header-left-list > [class*=col-] {
  padding: 0 12px !important;
  margin-bottom: 20px !important;
}

/* Convertir cada feature en una card con fondo */
article#index-header .header-left-list > .col-12 {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl) !important;
  padding: 48px 40px !important;
  box-shadow: var(--ct-shadow-sm) !important;
  border: 1px solid var(--ct-gray-100) !important;
  transition: all 0.4s var(--ct-ease) !important;
  position: relative !important;
  overflow: hidden !important;
}

article#index-header .header-left-list > .col-12::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--ct-red), var(--ct-blue)) !important;
  border-radius: 4px 4px 0 0 !important;
}

article#index-header .header-left-list > .col-12:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--ct-shadow-md) !important;
  border-color: transparent !important;
}

article#index-header .header-left-list h3 {
  color: var(--ct-text-dark) !important;
  font-size: 1.5rem !important;
  margin-bottom: 16px !important;
}

article#index-header .header-left-list p {
  color: var(--ct-text) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* Links flecha en las cards */
article#index-header .link-arrow-medium--svg {
  color: var(--ct-red) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 0 !important;
  border-bottom: 2px solid transparent !important;
  transition: all 0.25s ease !important;
}

article#index-header .link-arrow-medium--svg:hover {
  border-bottom-color: var(--ct-red) !important;
}

article#index-header .link-arrow-medium--svg svg path,
article#index-header .link-arrow-medium--svg svg line {
  stroke: var(--ct-red) !important;
}

/* --------------------------------------------------------------------------
   9. SECCION "TODA TU ESTRATEGIA" — Grid moderno con iconos
   -------------------------------------------------------------------------- */
article#company-characteristics {
  padding: 48px 0 !important;
  background: var(--ct-white) !important;
}

article#company-characteristics h2 {
  text-align: center !important;
  margin-bottom: 32px !important;
  position: relative !important;
}

article#company-characteristics h2::after {
  content: "" !important;
  display: block !important;
  width: 80px !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--ct-red), var(--ct-blue)) !important;
  margin: 20px auto 0 !important;
  border-radius: 2px !important;
}

/* Feature items como mini-cards */
article#company-characteristics .left-list > .col-md-6 {
  padding: 24px !important;
}

article#company-characteristics .left-list .col-md-6 h4 {
  color: var(--ct-text-dark) !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  margin-bottom: 10px !important;
  padding-left: 20px !important;
  border-left: 3px solid var(--ct-red) !important;
}

article#company-characteristics .left-list .col-md-6:nth-child(even) h4 {
  border-left-color: var(--ct-blue) !important;
}

article#company-characteristics .left-list .col-md-6 p {
  color: var(--ct-text) !important;
  font-size: 15px !important;
  padding-left: 23px !important;
}

/* --------------------------------------------------------------------------
   10. SECCION CTA "QUIERES PROBAR GRATIS" — Full-width dark premium
       NOTA: .left-list y #more-options están en la MISMA section.
       El gradiente oscuro se aplica SOLO al article, no a toda la section.
   -------------------------------------------------------------------------- */
/* La section padre: fondo neutro, sin dark gradient */
section:has(#more-options) {
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
  overflow: visible !important;
}

/* El article CTA — full-width dark gradient usando margin trick */
article#more-options {
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 55%, #2a3d7a 100%) !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 80px calc(50vw - 50% + 15px) !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 0 !important;
}

/* Orbe decorativo rojo */
article#more-options::before {
  content: "" !important;
  position: absolute !important;
  top: -60px !important;
  right: 5% !important;
  width: 350px !important;
  height: 350px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(219, 7, 60, 0.15) 0%, transparent 70%) !important;
  pointer-events: none !important;
  animation: float 8s ease-in-out infinite !important;
  z-index: 0 !important;
}

/* Orbe decorativo azul */
article#more-options::after {
  content: "" !important;
  position: absolute !important;
  bottom: -80px !important;
  left: 5% !important;
  width: 280px !important;
  height: 280px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(68, 92, 173, 0.2) 0%, transparent 70%) !important;
  pointer-events: none !important;
  animation: float 6s ease-in-out infinite reverse !important;
  z-index: 0 !important;
}

/* Heading — grande, con gradient text */
article#more-options h6,
article#more-options h5,
article#more-options h4,
article#more-options h3,
article#more-options h2 {
  color: var(--ct-white) !important;
  font-size: clamp(1.8rem, 3.2vw, 2.5rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.25 !important;
  margin-bottom: 20px !important;
  text-align: left !important;
  background: linear-gradient(135deg, #ffffff 0%, rgba(255, 255, 255, 0.88) 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

/* Párrafo descriptivo */
article#more-options p {
  color: rgba(255, 255, 255, 0.7) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  text-align: left !important;
  max-width: 440px !important;
  margin-bottom: 12px !important;
}

/* Espaciado entre elementos del faldón azul */
article#more-options .mx-3 .w-100.mt-3,
article#more-options .mx-md-4 .w-100.mt-3 {
  margin-top: 16px !important;
}

article#more-options .btn.btn-primary {
  margin-top: 8px !important;
  margin-bottom: 4px !important;
}

article#more-options a.link-arrow-medium--svg {
  margin-top: 4px !important;
}

/* CTA Button — gradiente rojo brillante con glow */
article#more-options .btn.btn-primary {
  background: linear-gradient(135deg, var(--ct-red) 0%, #ff2d5e 100%) !important;
  color: var(--ct-white) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 18px 44px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  box-shadow: 0 8px 30px rgba(219, 7, 60, 0.4), 0 0 0 1px rgba(219, 7, 60, 0.1) !important;
  transition: all 0.4s var(--ct-ease) !important;
  position: relative !important;
  text-align: center !important;
}

article#more-options .btn.btn-primary:hover {
  color: var(--ct-white) !important;
  transform: translateY(-3px) scale(1.03) !important;
  box-shadow: 0 16px 50px rgba(219, 7, 60, 0.5), 0 0 0 1px rgba(219, 7, 60, 0.2) !important;
}

/* Links — estilo moderno con flecha */
article#more-options a.link-arrow-medium--svg {
  color: rgba(255, 255, 255, 0.6) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  transition: color 0.2s ease !important;
}

article#more-options a.link-arrow-medium--svg:hover {
  color: var(--ct-white) !important;
}

article#more-options .link-arrow-medium--svg svg path,
article#more-options .link-arrow-medium--svg svg line {
  stroke: rgba(255, 255, 255, 0.6) !important;
  transition: stroke 0.2s ease !important;
}

article#more-options a.link-arrow-medium--svg:hover svg path,
article#more-options a.link-arrow-medium--svg:hover svg line {
  stroke: var(--ct-white) !important;
}

/* Imagen del lado derecho — con glassmorphism frame */
article#more-options .col-md-6:last-child {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

article#more-options .img-fluid {
  border-radius: var(--ct-radius-xl) !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.35) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  max-width: 95% !important;
}

/* Responsive — CTA section */
@media (max-width: 991px) {
  article#more-options {
    padding: 56px calc(50vw - 50% + 15px) !important;
  }
  article#more-options h6,
  article#more-options h5,
  article#more-options h4,
  article#more-options h3,
  article#more-options h2 {
    text-align: center !important;
  }
  article#more-options p {
    text-align: center !important;
    max-width: 100% !important;
    margin: 0 auto 16px !important;
  }
}
@media (max-width: 767px) {
  article#more-options {
    padding: 40px calc(50vw - 50% + 15px) !important;
  }
  article#more-options .col-md-6:last-child {
    display: none !important;
  }
  article#more-options h2,
  article#more-options h3,
  article#more-options h4,
  article#more-options h5,
  article#more-options h6 {
    text-align: center !important;
    font-size: 1.6rem !important;
  }
  article#more-options p {
    text-align: center !important;
    max-width: 100% !important;
  }
  article#more-options .btn.btn-primary {
    display: block !important;
    width: 100% !important;
    max-width: 320px !important;
    margin: 0 auto 16px !important;
  }
}
@media (max-width: 480px) {
  .left-list {
    padding: 32px 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  .left-list > h2,
  article#index-header h2 {
    font-size: 1.4rem !important;
  }
  article#more-options {
    padding: 32px 16px !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }
  article#more-options .btn.btn-primary {
    padding: 14px 32px !important;
    font-size: 14px !important;
  }
}
/* --------------------------------------------------------------------------
   15. PAGINA CAMPANAS — Estilos especificos
   -------------------------------------------------------------------------- */
/* Hero de campanas */
.es_campaigns .container-fluid.custom-ratio-header,
.en_campaigns .container-fluid.custom-ratio-header {
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 60%, #2a3d7a 100%) !important;
}

/* Fix: All text elements inside hero section to be white for visibility */
.es_campaigns .inside-aspect-ratio strong,
.es_social_listening .inside-aspect-ratio strong,
.es_social_walls .inside-aspect-ratio strong,
.en_campaigns .inside-aspect-ratio strong,
.en_social_listening .inside-aspect-ratio strong,
.en_social_walls .inside-aspect-ratio strong {
  color: var(--ct-white) !important;
}

.es_campaigns .inside-aspect-ratio a:not(.btn),
.es_social_listening .inside-aspect-ratio a:not(.btn),
.es_social_walls .inside-aspect-ratio a:not(.btn),
.en_campaigns .inside-aspect-ratio a:not(.btn),
.en_social_listening .inside-aspect-ratio a:not(.btn),
.en_social_walls .inside-aspect-ratio a:not(.btn) {
  color: var(--ct-white) !important;
}

.es_campaigns .inside-aspect-ratio a:not(.btn):hover,
.en_campaigns .inside-aspect-ratio a:not(.btn):hover {
  color: rgba(255, 255, 255, 0.85) !important;
}

.es_campaigns .inside-aspect-ratio span,
.en_campaigns .inside-aspect-ratio span {
  color: var(--ct-white) !important;
}

/* Bloques diferenciados en campanas */
.es_campaigns main > .container,
.en_campaigns main > .container {
  background: var(--ct-off-white) !important;
  padding: 48px 0 !important;
}

.es_campaigns main > .container-fluid:not(.custom-ratio-header),
.en_campaigns main > .container-fluid:not(.custom-ratio-header) {
  background: var(--ct-blue-light) !important;
  padding: 64px 0 !important;
}

/* Section de puntos de campana */
.campaign-points-section {
  background: transparent !important;
  padding: 48px 0 !important;
}

/* Section highlights */
.campaign-hightlights-section {
  background: transparent !important;
}

/* Puntos de campana como cards */
.campaign-points-section .col-md-6,
.campaign-points-section .col-lg-6 {
  margin-bottom: 24px !important;
}

.campaign-points-section h3,
.campaign-points-section h4 {
  color: var(--ct-text-dark) !important;
  font-weight: 700 !important;
  position: relative !important;
  padding-left: 16px !important;
}

.campaign-points-section h3::before,
.campaign-points-section h4::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 4px !important;
  bottom: 4px !important;
  width: 4px !important;
  background: var(--ct-red) !important;
  border-radius: 2px !important;
}

/* --------------------------------------------------------------------------
   27. CAMPAÑAS — Rediseño "A tu manera" y highlights
   -------------------------------------------------------------------------- */
/* Section highlights — transformar en diseño impactante */
.campaign-hightlights-section {
  padding: 0 !important;
}

.campaign-hightlights-section .row {
  margin: 0 !important;
}

/* Los dos bloques de highlights como cards con diseño propio */
.campaign-hightlights-section .col-lg-4 {
  padding: 0 !important;
}

.es_campaigns main > .container-fluid:not(.custom-ratio-header),
.en_campaigns main > .container-fluid:not(.custom-ratio-header) {
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 60%, #2a3d7a 100%) !important;
  padding: 56px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Circulo decorativo en la seccion highlights */
.es_campaigns main > .container-fluid:not(.custom-ratio-header)::before,
.en_campaigns main > .container-fluid:not(.custom-ratio-header)::before {
  content: "" !important;
  position: absolute !important;
  top: -80px !important;
  right: -60px !important;
  width: 300px !important;
  height: 300px !important;
  border-radius: 50% !important;
  background: rgba(219, 7, 60, 0.1) !important;
  pointer-events: none !important;
}

.es_campaigns main > .container-fluid:not(.custom-ratio-header)::after,
.en_campaigns main > .container-fluid:not(.custom-ratio-header)::after {
  content: "" !important;
  position: absolute !important;
  bottom: -100px !important;
  left: -40px !important;
  width: 250px !important;
  height: 250px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.05) !important;
  pointer-events: none !important;
}

/* Texto blanco en la seccion de highlights */
.campaign-hightlights-section h3,
.campaign-hightlights-section h4,
.campaign-hightlights-section h5,
.highlights-left-list h3,
.highlights-left-list h4,
.highlights-left-list h5 {
  color: var(--ct-white) !important;
  font-size: 1.5rem !important;
  font-weight: 800 !important;
  margin-bottom: 16px !important;
  position: relative !important;
}

/* Fix: Strong tags inside blue sections should be white */
.campaign-hightlights-section strong,
.highlights-left-list strong {
  color: var(--ct-white) !important;
}

/* Decorator line bajo el titulo */
.highlights-left-list h3::after,
.highlights-left-list h4::after,
.highlights-left-list h5::after {
  content: "" !important;
  display: block !important;
  width: 40px !important;
  height: 3px !important;
  background: var(--ct-red) !important;
  margin-top: 12px !important;
  border-radius: 2px !important;
}

.campaign-hightlights-section p,
.highlights-left-list p {
  color: rgba(255, 255, 255, 0.8) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

/* Links en highlights */
.campaign-hightlights-section a,
.highlights-left-list a {
  color: var(--ct-white) !important;
  font-weight: 600 !important;
  border-bottom: 2px solid rgba(255, 255, 255, 0.3) !important;
  padding-bottom: 2px !important;
}

.campaign-hightlights-section a:hover,
.highlights-left-list a:hover {
  color: var(--ct-white) !important;
  border-bottom-color: var(--ct-white) !important;
}

/* Fix: Link arrow medium SVG styling for white text on blue background */
.campaign-hightlights-section .link-arrow-medium--svg,
.highlights-left-list .link-arrow-medium--svg {
  color: var(--ct-white) !important;
}

.campaign-hightlights-section .link-arrow-medium--svg span,
.highlights-left-list .link-arrow-medium--svg span {
  color: var(--ct-white) !important;
}

.campaign-hightlights-section .link-arrow-medium--svg:hover,
.highlights-left-list .link-arrow-medium--svg:hover {
  opacity: 0.85 !important;
}

/* Iconos SVG en highlights */
.campaign-hightlights-section svg path,
.campaign-hightlights-section svg line,
.highlights-left-list .link-arrow-medium--svg svg path,
.highlights-left-list .link-arrow-medium--svg svg line {
  stroke: var(--ct-white) !important;
  fill: var(--ct-white) !important;
}

.campaign-hightlights-section svg,
.highlights-left-list svg {
  color: var(--ct-white) !important;
}

/* Los dos bloques lado a lado como glass-cards */
.highlights-left-list > .col-lg-4 {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: var(--ct-radius-xl) !important;
  padding: 40px 32px !important;
  margin: 16px !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  transition: all 0.3s ease !important;
}

.highlights-left-list > .col-lg-4:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.15) !important;
}

/* Reset offset que los separaba demasiado */
.highlights-left-list > .col-lg-4.offset-lg-2 {
  margin-left: 16px !important;
}

.highlights-left-list > .col-lg-4.offset-lg-6 {
  margin-left: 16px !important;
  margin-top: 0 !important;
}

/* Hacer la fila flex horizontal en desktop */
.highlights-left-list {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 0 !important;
}

/* Campañas container compacto */
.es_campaigns main > .container,
.en_campaigns main > .container {
  padding: 32px 0 !important;
}

/* Campaign points section — diseño mas interesante */
.campaign-points-section {
  padding: 32px 0 !important;
}

.campaign-points-section .col-md-6,
.campaign-points-section .col-lg-6 {
  margin-bottom: 16px !important;
}

/* Tipos de campañas como grid colorido */
.es_campaigns .campaign-points-section ~ section,
.en_campaigns .campaign-points-section ~ section {
  padding: 32px 0 !important;
}

.es_campaigns .campaign-points-section ~ section h3,
.en_campaigns .campaign-points-section ~ section h3 {
  color: var(--ct-text-dark) !important;
  font-weight: 800 !important;
  text-align: center !important;
  margin-bottom: 24px !important;
}

/* Cards de tipos de campañas */
.es_campaigns .campaign-points-section ~ section .col-md-4,
.es_campaigns .campaign-points-section ~ section .col-lg-4,
.en_campaigns .campaign-points-section ~ section .col-md-4,
.en_campaigns .campaign-points-section ~ section .col-lg-4 {
  margin-bottom: 16px !important;
}

/* --------------------------------------------------------------------------
   16. PAGINA CATALOGO — Sidebar y grid modernos
   -------------------------------------------------------------------------- */
.es_catalogue main > .container,
.en_catalogue main > .container {
  background: var(--ct-off-white) !important;
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.catalogue-section {
  background: transparent !important;
}

/* ======================================================================
   CATALOGO NAV — Barra oscura full-width con mini-cards glassmorphism
   El aside está en .es_catalogue main > .container > .row.header
   ====================================================================== */
/* 1) ROW padre → columna vertical */
.es_catalogue .row.header,
.en_catalogue .row.header {
  flex-direction: column !important;
  flex-wrap: nowrap !important;
}

/* 2) Jumbotron → full width */
.es_catalogue .row.header > .col-lg-9,
.en_catalogue .row.header > .col-lg-9 {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  order: 1 !important;
}

/* 3) ASIDE → full-viewport dark strip */
.es_catalogue aside.col-lg-3,
.en_catalogue aside.col-lg-3 {
  width: 100vw !important;
  max-width: 100vw !important;
  flex: 0 0 auto !important;
  order: 2 !important;
  padding: 0 !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 55%, #2a3d7a 100%) !important;
  border-radius: 0 !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Línea gradiente en la parte superior */
.es_catalogue aside.col-lg-3::before,
.en_catalogue aside.col-lg-3::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--ct-red), #ff4d6d, var(--ct-blue), #6b7fd4) !important;
  z-index: 1 !important;
}

/* Override d-none */
.es_catalogue aside.col-lg-3.d-none.d-lg-flex,
.es_catalogue aside.col-lg-3.d-none,
.en_catalogue aside.col-lg-3.d-none.d-lg-flex,
.en_catalogue aside.col-lg-3.d-none {
  display: flex !important;
}

/* Ocultar label "Categorías:" */
.es_catalogue aside > p,
.en_catalogue aside > p {
  display: none !important;
}

/* Ocultar menú móvil */
.es_catalogue .mobile-menu,
.en_catalogue .mobile-menu {
  display: none !important;
}

/* 4) Navbar → centrado con max-width */
.es_catalogue aside .navbar,
.en_catalogue aside .navbar {
  display: flex !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 20px 24px !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
  justify-content: center !important;
}

.es_catalogue aside .navbar-nav,
.en_catalogue aside .navbar-nav {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  justify-content: center !important;
  align-items: stretch !important;
}

.es_catalogue aside .nav-item,
.en_catalogue aside .nav-item {
  display: flex !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  list-style: none !important;
}

/* 5) Mini-cards glassmorphism sobre fondo oscuro */
.es_catalogue aside .nav-item a,
.en_catalogue aside .nav-item a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: rgba(255, 255, 255, 0.85) !important;
  padding: 10px 20px !important;
  border-radius: var(--ct-radius) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-left: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  transition: all 0.25s var(--ct-ease) !important;
  text-transform: none !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  margin: 0 !important;
  position: relative !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

/* Brillo sutil superior */
.es_catalogue aside .nav-item a::before,
.en_catalogue aside .nav-item a::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent) !important;
  pointer-events: none !important;
}

/* Iconos */
.es_catalogue aside .nav-item a .icons-left-list,
.es_catalogue aside .nav-item a svg,
.en_catalogue aside .nav-item a .icons-left-list,
.en_catalogue aside .nav-item a svg {
  width: 20px !important;
  height: 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  opacity: 0.7 !important;
  transition: opacity 0.25s ease !important;
}

.es_catalogue aside .nav-item a svg path,
.es_catalogue aside .nav-item a svg polygon,
.en_catalogue aside .nav-item a svg path,
.en_catalogue aside .nav-item a svg polygon {
  fill: rgba(255, 255, 255, 0.8) !important;
}

/* HOVER — iluminar */
.es_catalogue aside .nav-item a:hover,
.en_catalogue aside .nav-item a:hover {
  background: rgba(255, 255, 255, 0.14) !important;
  border-color: rgba(255, 255, 255, 0.3) !important;
  color: var(--ct-white) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
}

.es_catalogue aside .nav-item a:hover .icons-left-list,
.es_catalogue aside .nav-item a:hover svg,
.en_catalogue aside .nav-item a:hover .icons-left-list,
.en_catalogue aside .nav-item a:hover svg {
  opacity: 1 !important;
}

/* ACTIVE — acento rojo */
.es_catalogue aside .nav-item a.active,
.en_catalogue aside .nav-item a.active {
  background: linear-gradient(135deg, var(--ct-red), #ff2d5e) !important;
  border-color: transparent !important;
  color: var(--ct-white) !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 20px rgba(219, 7, 60, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.1) inset !important;
}

.es_catalogue aside .nav-item a.active svg path,
.es_catalogue aside .nav-item a.active svg polygon,
.en_catalogue aside .nav-item a.active svg path,
.en_catalogue aside .nav-item a.active svg polygon {
  fill: var(--ct-white) !important;
}

.es_catalogue aside .nav-item a.active .icons-left-list,
.es_catalogue aside .nav-item a.active svg,
.en_catalogue aside .nav-item a.active .icons-left-list,
.en_catalogue aside .nav-item a.active svg {
  opacity: 1 !important;
}

/* Acentos de color por categoría en hover */
.es_catalogue aside .nav-item:nth-child(1) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(1) .nav-link:hover {
  border-bottom: 2px solid #ff4d6d !important;
}

.es_catalogue aside .nav-item:nth-child(2) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(2) .nav-link:hover {
  border-bottom: 2px solid #a78bfa !important;
}

.es_catalogue aside .nav-item:nth-child(3) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(3) .nav-link:hover {
  border-bottom: 2px solid #fbbf24 !important;
}

.es_catalogue aside .nav-item:nth-child(4) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(4) .nav-link:hover {
  border-bottom: 2px solid #34d399 !important;
}

.es_catalogue aside .nav-item:nth-child(5) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(5) .nav-link:hover {
  border-bottom: 2px solid #60a5fa !important;
}

.es_catalogue aside .nav-item:nth-child(6) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(6) .nav-link:hover {
  border-bottom: 2px solid #f97316 !important;
}

.es_catalogue aside .nav-item:nth-child(7) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(7) .nav-link:hover {
  border-bottom: 2px solid #14b8a6 !important;
}

.es_catalogue aside .nav-item:nth-child(8) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(8) .nav-link:hover {
  border-bottom: 2px solid #ec4899 !important;
}

.es_catalogue aside .nav-item:nth-child(9) .nav-link:hover,
.en_catalogue aside .nav-item:nth-child(9) .nav-link:hover {
  border-bottom: 2px solid #8b5cf6 !important;
}

/* 6) Responsive ≤768px */
@media (max-width: 768px) {
  .es_catalogue aside.col-lg-3 {
    padding: 16px 0 !important;
  }
  .es_catalogue aside .navbar {
    padding: 0 16px !important;
  }
  .es_catalogue aside .navbar-nav {
    justify-content: flex-start !important;
    gap: 8px !important;
  }
  .es_catalogue aside .nav-item a {
    padding: 8px 14px !important;
    font-size: 12px !important;
  }
  .es_catalogue aside .nav-item a .icons-left-list,
  .es_catalogue aside .nav-item a svg {
    width: 16px !important;
    height: 16px !important;
  }
}
/* Catalogue items como cards */
.catalogue-section .col-md-6,
.catalogue-section .col-lg-4 {
  margin-bottom: 24px !important;
}

.catalogue-item {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-lg) !important;
  box-shadow: var(--ct-shadow-xs) !important;
  border: 1px solid var(--ct-gray-100) !important;
  transition: all 0.3s ease !important;
  overflow: hidden !important;
}

.catalogue-item:hover {
  box-shadow: var(--ct-shadow-md) !important;
  transform: translateY(-4px) !important;
}

/* --------------------------------------------------------------------------
   26. CATALOGO REDISEÑADO — Cards coloridas y secciones diferenciadas
   -------------------------------------------------------------------------- */
/* Fondo general del catalogo mas interesante */
.es_catalogue main > .container,
.en_catalogue main > .container {
  background: var(--ct-gray-50) !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

/* Cada bloque de tipo de campana con fondo diferenciado */
.catalogue-section-list {
  padding: 20px 0 !important;
  margin-bottom: 16px !important;
}

/* Header de cada categoria con estilo badge */
.catalogue-section .header {
  margin-bottom: 16px !important;
  padding: 12px 20px !important;
  border-radius: var(--ct-radius) !important;
  position: relative !important;
}

.catalogue-section .header-title {
  font-size: 1.6rem !important;
  font-weight: 800 !important;
  position: relative !important;
  display: inline-block !important;
  padding-bottom: 8px !important;
}

.catalogue-section .header-title::after {
  content: "" !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 50px !important;
  height: 3px !important;
  border-radius: 2px !important;
}

/* Colores alternos por seccion — nth-of-type en los .header */
.catalogue-section .header:nth-of-type(1) .header-title {
  color: var(--ct-red) !important;
}

.catalogue-section .header:nth-of-type(1) .header-title::after {
  background: var(--ct-red) !important;
}

/* Alternating section backgrounds via catalogue-section-list */
.catalogue-section-list:nth-of-type(2) {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-lg) !important;
  padding: 20px !important;
}

.catalogue-section-list:nth-of-type(4) {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-lg) !important;
  padding: 20px !important;
}

.catalogue-section-list:nth-of-type(6) {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-lg) !important;
  padding: 20px !important;
}

.catalogue-section-list:nth-of-type(8) {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-lg) !important;
  padding: 20px !important;
}

/* Rediseño radical de las cards del catalogo */
.catalogue-item {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-lg) !important;
  border: none !important;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;
  transition: all 0.35s var(--ct-ease) !important;
  overflow: hidden !important;
  position: relative !important;
  padding: 0 !important;
}

/* Barra superior de color en cada card */
.catalogue-item::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--ct-red), var(--ct-blue)) !important;
  border-radius: 12px 12px 0 0 !important;
  z-index: 3 !important;
}

.catalogue-item:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 40px rgba(68, 92, 173, 0.18) !important;
}

/* Icono del catalogo con fondo de color */
.catalogue-item .icon-header {
  background: linear-gradient(135deg, var(--ct-blue-light) 0%, var(--ct-red-light) 100%) !important;
  border-radius: var(--ct-radius) !important;
  padding: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.catalogue-item .icon-header svg path,
.catalogue-item .icon-header svg polygon {
  fill: var(--ct-blue) !important;
}

/* Titulo de cada card del catalogo */
.catalogue-item a {
  font-weight: 700 !important;
  color: var(--ct-text-dark) !important;
  font-size: 14px !important;
  padding: 16px 16px 12px !important;
  display: block !important;
}

.catalogue-item:hover a {
  color: var(--ct-blue) !important;
}

/* ===== EXPAND HOVER — Tarjetas compactas que crecen al hover ===== */
/* Desktop: texto truncado a 2 líneas, expand en hover */
@media (min-width: 992px) {
  .catalogue-item a > p {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    font-size: 13px !important;
    color: var(--ct-text-muted) !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    padding: 0 16px 16px !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    max-height: 58px !important;
  }
  .catalogue-item a > p strong {
    color: var(--ct-text-dark) !important;
    font-weight: 600 !important;
  }
  /* Hover → texto se expande */
  .catalogue-item:hover a > p {
    -webkit-line-clamp: unset !important;
    display: block !important;
    max-height: 400px !important;
    color: var(--ct-text-dark) !important;
  }
}
/* Mobile: texto truncado a 2 líneas + tap expand con focus-within */
@media (max-width: 991px) {
  .catalogue-item a > p {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    font-size: 12.5px !important;
    color: var(--ct-text-muted) !important;
    line-height: 1.45 !important;
    margin: 0 !important;
    padding: 0 16px 14px !important;
    transition: all 0.3s ease !important;
    max-height: 52px !important;
  }
  /* Indicador visual "..." para sugerir que hay más texto */
  .catalogue-item a > p::after {
    content: " Leer más..." !important;
    color: var(--ct-blue) !important;
    font-weight: 600 !important;
    font-size: 11px !important;
  }
  /* Al hacer tap (focus-within en el link), se expande */
  .catalogue-item:focus-within a > p,
  .catalogue-item a:focus > p {
    -webkit-line-clamp: unset !important;
    display: block !important;
    max-height: 500px !important;
    color: var(--ct-text-dark) !important;
  }
  .catalogue-item:focus-within a > p::after,
  .catalogue-item a:focus > p::after {
    content: "" !important;
  }
}
/* Badge "new" o similares */
.catalogue-item .badge {
  background: var(--ct-red) !important;
  color: var(--ct-white) !important;
  font-size: 10px !important;
  padding: 3px 8px !important;
}

/* Colorear la barra superior por seccion alternando colores */
.catalogue-section-list:nth-of-type(2) .catalogue-item::before {
  background: linear-gradient(90deg, #DB073C, #ff4d6d) !important;
}

.catalogue-section-list:nth-of-type(4) .catalogue-item::before {
  background: linear-gradient(90deg, #445CAD, #6b7fd4) !important;
}

.catalogue-section-list:nth-of-type(6) .catalogue-item::before {
  background: linear-gradient(90deg, #e67e22, #f39c12) !important;
}

.catalogue-section-list:nth-of-type(8) .catalogue-item::before {
  background: linear-gradient(90deg, #27ae60, #2ecc71) !important;
}

.catalogue-section-list:nth-of-type(10) .catalogue-item::before {
  background: linear-gradient(90deg, #8e44ad, #a569bd) !important;
}

.catalogue-section-list:nth-of-type(12) .catalogue-item::before {
  background: linear-gradient(90deg, #e74c3c, #ec7063) !important;
}

.catalogue-section-list:nth-of-type(14) .catalogue-item::before {
  background: linear-gradient(90deg, #16a085, #1abc9c) !important;
}

/* Color de icono acorde a la seccion */
.catalogue-section-list:nth-of-type(2) .catalogue-item .icon-header {
  background: linear-gradient(135deg, #fef1f4, #fce4ec) !important;
}

.catalogue-section-list:nth-of-type(2) .catalogue-item .icon-header svg path {
  fill: #DB073C !important;
}

.catalogue-section-list:nth-of-type(4) .catalogue-item .icon-header {
  background: linear-gradient(135deg, #eef1f9, #e3e8f8) !important;
}

.catalogue-section-list:nth-of-type(4) .catalogue-item .icon-header svg path {
  fill: #445CAD !important;
}

.catalogue-section-list:nth-of-type(6) .catalogue-item .icon-header {
  background: linear-gradient(135deg, #fef9f0, #fdf2e2) !important;
}

.catalogue-section-list:nth-of-type(6) .catalogue-item .icon-header svg path {
  fill: #e67e22 !important;
}

.catalogue-section-list:nth-of-type(8) .catalogue-item .icon-header {
  background: linear-gradient(135deg, #eafaf1, #d5f5e3) !important;
}

.catalogue-section-list:nth-of-type(8) .catalogue-item .icon-header svg path {
  fill: #27ae60 !important;
}

/* --------------------------------------------------------------------------
   17. PAGINA LANDING JUEGO — Features y checkmarks
   -------------------------------------------------------------------------- */
.es_matching_cards_game main > .container:first-child,
.en_matching_cards_game main > .container:first-child {
  background: var(--ct-off-white) !important;
  padding: 40px 0 !important;
}

/* Container-fluid: fondo TRANSPARENTE — cada article controla su propio background */
.es_matching_cards_game main > .container-fluid:not(:first-child),
.en_matching_cards_game main > .container-fluid:not(:first-child) {
  background: transparent !important;
  padding: 0 !important;
}

/* Texto blanco solo en secciones azules (articles 2 y 4) */
.es_matching_cards_game .container-fluid > article:nth-child(2) h2,
.es_matching_cards_game .container-fluid > article:nth-child(2) h3,
.es_matching_cards_game .container-fluid > article:nth-child(2) h4,
.es_matching_cards_game .container-fluid > article:nth-child(2) p,
.es_matching_cards_game .container-fluid > article:nth-child(2) li,
.es_matching_cards_game .container-fluid > article:nth-child(2) span,
.es_matching_cards_game .container-fluid > article:nth-child(2) strong,
.es_matching_cards_game .container-fluid > article:nth-child(4) h2,
.es_matching_cards_game .container-fluid > article:nth-child(4) h3,
.es_matching_cards_game .container-fluid > article:nth-child(4) h4,
.es_matching_cards_game .container-fluid > article:nth-child(4) p,
.es_matching_cards_game .container-fluid > article:nth-child(4) li,
.es_matching_cards_game .container-fluid > article:nth-child(4) span,
.es_matching_cards_game .container-fluid > article:nth-child(4) strong,
.en_matching_cards_game .container-fluid > article:nth-child(2) h2,
.en_matching_cards_game .container-fluid > article:nth-child(2) h3,
.en_matching_cards_game .container-fluid > article:nth-child(2) h4,
.en_matching_cards_game .container-fluid > article:nth-child(2) p,
.en_matching_cards_game .container-fluid > article:nth-child(2) li,
.en_matching_cards_game .container-fluid > article:nth-child(2) span,
.en_matching_cards_game .container-fluid > article:nth-child(2) strong,
.en_matching_cards_game .container-fluid > article:nth-child(4) h2,
.en_matching_cards_game .container-fluid > article:nth-child(4) h3,
.en_matching_cards_game .container-fluid > article:nth-child(4) h4,
.en_matching_cards_game .container-fluid > article:nth-child(4) p,
.en_matching_cards_game .container-fluid > article:nth-child(4) li,
.en_matching_cards_game .container-fluid > article:nth-child(4) span,
.en_matching_cards_game .container-fluid > article:nth-child(4) strong {
  color: var(--ct-white) !important;
}

/* Checklist styling */
.checklist-ok li,
.checklist-bullets li,
.checks-left-list li {
  padding: 10px 0 !important;
  padding-left: 36px !important;
  position: relative !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.checklist-ok li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 12px !important;
  width: 24px !important;
  height: 24px !important;
  background: rgba(255, 255, 255, 0.15) !important;
  color: var(--ct-white) !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

/* General features grid */
.general-features-grid {
  gap: 20px !important;
}

.general-features-title {
  font-family: var(--ct-font-display) !important;
  color: var(--ct-white) !important;
  font-weight: 700 !important;
}

/* Custom banner — glassmorphism sobre azul, no oscuro */
.custom-banner {
  background: rgba(255, 255, 255, 0.06) !important;
  border-radius: var(--ct-radius-xl) !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
}

.custom-banner .bg-pattern,
.bg-pattern.pattern-left,
.bg-pattern.pattern-right {
  background: transparent !important;
  opacity: 0 !important;
}

/* CTA Aside sections — compactas y con estilo */
.cta-aside-section {
  background: rgba(255, 255, 255, 0.1) !important;
  border-radius: var(--ct-radius-lg) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  padding: 20px 24px !important;
  box-shadow: none !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
}

.cta-aside-section .btn {
  background: var(--ct-red) !important;
  color: var(--ct-white) !important;
  padding: 10px 24px !important;
  font-size: 14px !important;
}

/* Plan buttons inside CTA aside */
.cta-plans .btn,
.cta-aside-section .btn-gold,
.cta-aside-section .btn-diamond,
.cta-aside-section [class*=btn-plan] {
  border-radius: var(--ct-radius-pill) !important;
  font-weight: 700 !important;
  padding: 10px 28px !important;
  font-size: 14px !important;
}

/* --------------------------------------------------------------------------
   28. LANDING JUEGO — Spacing fix + diseño compacto
   -------------------------------------------------------------------------- */
.es_matching_cards_game main > .container:first-child,
.en_matching_cards_game main > .container:first-child {
  padding: 32px 0 !important;
}

/* (Container-fluid padding ya definido arriba en sección 28) */
/* Ocultar el SVG check original en checklists — evitar doble check */
/* EXCLUIR la grid comparativa (.plans-grid) donde los SVGs son el contenido principal */
.checks-left-list li > svg,
.checklist-ok li > svg,
.sub-menu-icons-left-list svg {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
}

/* SVGs check en la grid comparativa — FORZAR VISIBILIDAD */
.plans-grid svg[id=check-ok--icon],
.plans-grid .grid-row .cell svg,
.plans-grid .grid-row .cell span svg {
  display: inline-block !important;
  visibility: visible !important;
  width: 18px !important;
  height: 18px !important;
  overflow: visible !important;
}

.plans-grid .grid-row .cell svg path {
  display: inline !important;
  visibility: visible !important;
  fill: #16a34a !important;
}

/* Casos de exito — card con estilo glass en vez de gris feo */
.es_matching_cards_game .custom-banner:last-of-type,
.es_matching_cards_game article:last-of-type .row,
.en_matching_cards_game .custom-banner:last-of-type,
.en_matching_cards_game article:last-of-type .row {
  background: transparent !important;
  border-radius: var(--ct-radius-xl) !important;
}

/* Quitar fondo gris del swiper de casos de exito */
.case-studies,
.js_swiper-contender.swiper.case-studies {
  background: transparent !important;
}

.case-studies .row {
  background: rgba(255, 255, 255, 0.08) !important;
  border-radius: var(--ct-radius-lg) !important;
  overflow: hidden !important;
}

/* La card interna de caso de exito */
.es_matching_cards_game article:last-child,
.en_matching_cards_game article:last-child {
  padding: 24px 0 !important;
}

/* Case studies on white background — dark text (excluir botones) */
.es_matching_cards_game .container-fluid > article:nth-child(5) h2,
.es_matching_cards_game .container-fluid > article:nth-child(5) h3,
.es_matching_cards_game .container-fluid > article:nth-child(5) h4,
.es_matching_cards_game .container-fluid > article:nth-child(5) p,
.es_matching_cards_game .container-fluid > article:nth-child(5) span,
.es_matching_cards_game .container-fluid > article:nth-child(5) strong,
.es_matching_cards_game .container-fluid > article:nth-child(5) a:not(.btn),
.en_matching_cards_game .container-fluid > article:nth-child(5) h2,
.en_matching_cards_game .container-fluid > article:nth-child(5) h3,
.en_matching_cards_game .container-fluid > article:nth-child(5) h4,
.en_matching_cards_game .container-fluid > article:nth-child(5) p,
.en_matching_cards_game .container-fluid > article:nth-child(5) span,
.en_matching_cards_game .container-fluid > article:nth-child(5) strong,
.en_matching_cards_game .container-fluid > article:nth-child(5) a:not(.btn) {
  color: var(--ct-text-dark) !important;
}

/* Botones en caso de éxito: siempre blanco sobre rojo */
.es_matching_cards_game .container-fluid > article:nth-child(5) a.btn,
.en_matching_cards_game .container-fluid > article:nth-child(5) a.btn {
  color: var(--ct-white) !important;
}

.es_matching_cards_game .container-fluid > article:nth-child(5) .case-studies .row,
.en_matching_cards_game .container-fluid > article:nth-child(5) .case-studies .row {
  background: var(--ct-off-white, #f8f9fa) !important;
  border: 1px solid var(--ct-gray-200) !important;
}

/* Fondo de la card de éxito — quitar gris raro */
.es_matching_cards_game .container-fluid article:last-child .row > div,
.en_matching_cards_game .container-fluid article:last-child .row > div {
  background: transparent !important;
}

/* ---------- LANDING JUEGO: Alternar fondos azul/blanco para contraste ---------- */
/* Article 1 (main-features): fondo BLANCO — contrasta con hero azul */
.es_matching_cards_game .container-fluid > article:first-child,
.es_matching_cards_game .container-fluid > article#main-features,
.en_matching_cards_game .container-fluid > article:first-child,
.en_matching_cards_game .container-fluid > article#main-features {
  background: var(--ct-white) !important;
  padding: 48px 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

.es_matching_cards_game .container-fluid > article:first-child h2,
.es_matching_cards_game .container-fluid > article:first-child h3,
.es_matching_cards_game .container-fluid > article:first-child h4,
.es_matching_cards_game .container-fluid > article:first-child p,
.es_matching_cards_game .container-fluid > article:first-child li,
.es_matching_cards_game .container-fluid > article:first-child span,
.es_matching_cards_game .container-fluid > article:first-child strong,
.en_matching_cards_game .container-fluid > article:first-child h2,
.en_matching_cards_game .container-fluid > article:first-child h3,
.en_matching_cards_game .container-fluid > article:first-child h4,
.en_matching_cards_game .container-fluid > article:first-child p,
.en_matching_cards_game .container-fluid > article:first-child li,
.en_matching_cards_game .container-fluid > article:first-child span,
.en_matching_cards_game .container-fluid > article:first-child strong {
  color: var(--ct-text-dark) !important;
}

/* Custom banner on white background: remove glassmorphism, use subtle style */
.es_matching_cards_game .container-fluid > article:first-child .custom-banner,
.en_matching_cards_game .container-fluid > article:first-child .custom-banner {
  background: transparent !important;
  border: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.es_matching_cards_game .container-fluid > article:first-child .bg-pattern,
.en_matching_cards_game .container-fluid > article:first-child .bg-pattern {
  opacity: 0.06 !important;
}

/* Article 1 checklist bullets: texto oscuro sobre fondo blanco */
.es_matching_cards_game .container-fluid > article:first-child .checklist-bullets li,
.en_matching_cards_game .container-fluid > article:first-child .checklist-bullets li {
  color: var(--ct-text-dark) !important;
  border-bottom-color: var(--ct-gray-200) !important;
}

.es_matching_cards_game .container-fluid > article:first-child .checklist-bullets li::before,
.en_matching_cards_game .container-fluid > article:first-child .checklist-bullets li::before {
  background: var(--ct-blue) !important;
  color: var(--ct-white) !important;
}

/* Article 2 (general-features): AZUL — mantener fondo degradado */
.es_matching_cards_game .container-fluid > article:nth-child(2),
.es_matching_cards_game .container-fluid > article#general-features,
.en_matching_cards_game .container-fluid > article:nth-child(2),
.en_matching_cards_game .container-fluid > article#general-features {
  background: linear-gradient(165deg, var(--ct-blue) 0%, var(--ct-blue-dark) 50%, #2a3d7a 100%) !important;
  padding: 48px 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

/* Article 3 (step-by-step): fondo BLANCO */
.es_matching_cards_game .container-fluid > article:nth-child(3),
.es_matching_cards_game .container-fluid > article#step-by-step,
.en_matching_cards_game .container-fluid > article:nth-child(3),
.en_matching_cards_game .container-fluid > article#step-by-step {
  background: var(--ct-off-white, #f8f9fa) !important;
  padding: 48px 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
}

.es_matching_cards_game .container-fluid > article:nth-child(3) h2,
.es_matching_cards_game .container-fluid > article:nth-child(3) h3,
.es_matching_cards_game .container-fluid > article:nth-child(3) h4,
.es_matching_cards_game .container-fluid > article:nth-child(3) p,
.es_matching_cards_game .container-fluid > article:nth-child(3) li,
.es_matching_cards_game .container-fluid > article:nth-child(3) span,
.es_matching_cards_game .container-fluid > article:nth-child(3) strong,
.en_matching_cards_game .container-fluid > article:nth-child(3) h2,
.en_matching_cards_game .container-fluid > article:nth-child(3) h3,
.en_matching_cards_game .container-fluid > article:nth-child(3) h4,
.en_matching_cards_game .container-fluid > article:nth-child(3) p,
.en_matching_cards_game .container-fluid > article:nth-child(3) li,
.en_matching_cards_game .container-fluid > article:nth-child(3) span,
.en_matching_cards_game .container-fluid > article:nth-child(3) strong {
  color: var(--ct-text-dark) !important;
}

/* Step-by-step checklist: dark text on light bg */
.es_matching_cards_game .container-fluid > article:nth-child(3) .checklist-ordered li,
.en_matching_cards_game .container-fluid > article:nth-child(3) .checklist-ordered li {
  border-bottom-color: var(--ct-gray-200) !important;
}

.es_matching_cards_game .container-fluid > article:nth-child(3) .checklist-ordered li::before,
.en_matching_cards_game .container-fluid > article:nth-child(3) .checklist-ordered li::before {
  background: var(--ct-blue) !important;
  color: var(--ct-white) !important;
}

/* Step-by-step SVG: NO forzar fill — dejar colores originales de la ilustración */
/* Step-by-step: números (.order) en blanco sobre fondo rojo */
.es_matching_cards_game .container-fluid > article:nth-child(3) .order,
.es_matching_cards_game .checklist-ordered .order,
.en_matching_cards_game .container-fluid > article:nth-child(3) .order,
.en_matching_cards_game .checklist-ordered .order {
  color: var(--ct-white) !important;
}

/* Article 4 (general-description): AZUL oscuro */
.es_matching_cards_game .container-fluid > article:nth-child(4),
.es_matching_cards_game .container-fluid > article#general-description,
.en_matching_cards_game .container-fluid > article:nth-child(4),
.en_matching_cards_game .container-fluid > article#general-description {
  background: linear-gradient(165deg, #2a3d7a 0%, var(--ct-blue-dark) 50%, var(--ct-blue) 100%) !important;
  padding: 48px 0 !important;
  margin: 0 !important;
}

.es_matching_cards_game .container-fluid > article:nth-child(4) .custom-banner,
.en_matching_cards_game .container-fluid > article:nth-child(4) .custom-banner {
  background: transparent !important;
}

.es_matching_cards_game .container-fluid > article:nth-child(4) .bg-pattern,
.en_matching_cards_game .container-fluid > article:nth-child(4) .bg-pattern {
  opacity: 0.06 !important;
}

/* Article 5 (case-studies): fondo BLANCO/CLARO */
.es_matching_cards_game .container-fluid > article:nth-child(5),
.es_matching_cards_game .container-fluid > article#case-studies,
.en_matching_cards_game .container-fluid > article:nth-child(5),
.en_matching_cards_game .container-fluid > article#case-studies {
  background: var(--ct-white) !important;
  padding: 48px 0 !important;
  margin: 0 !important;
}

/* Spacer at bottom of container-fluid — reduce on landing juego */
.es_matching_cards_game .container-fluid > .mb-194,
.en_matching_cards_game .container-fluid > .mb-194 {
  margin-bottom: 0 !important;
  height: 0 !important;
}

/* --------------------------------------------------------------------------
   29. RESPONSIVE UPDATES — Compact mobile
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  .highlights-left-list {
    flex-direction: column !important;
  }
  .highlights-left-list > .col-lg-4.offset-lg-2,
  .highlights-left-list > .col-lg-4.offset-lg-6 {
    margin-left: 16px !important;
    margin-right: 16px !important;
    margin-bottom: 16px !important;
  }
  .container-fluid.custom-ratio-header {
    padding: 56px 0 44px !important;
  }
}
@media (max-width: 767px) {
  .container-fluid.custom-ratio-header {
    padding: 44px 0 36px !important;
  }
}
/* ==========================================================================
   30. PAGINA PRECIOS — REDISEÑO LIMPIO Y MODERNO
   ==========================================================================
   Body class: .es_prices .es_prices_index
   Estructura: hero top → cards swiper → plans-grid → FAQ → logos
   ========================================================================== */
/* --- 30.1 HERO / TOP SECTION — Mismo fondo que la home, todo centrado --- */
.es_prices main > .container:first-child,
.en_prices main > .container:first-child {
  background: linear-gradient(135deg, var(--ct-blue) 0%, #364a8a 60%, #2a3d7a 100%) !important;
  padding: 72px 0 56px !important;
  position: relative !important;
  overflow: hidden !important;
  max-width: 100% !important;
}

.es_prices main > .container:first-child::before,
.es_prices main > .container:first-child::after,
.en_prices main > .container:first-child::before,
.en_prices main > .container:first-child::after {
  display: none !important;
}

/* Hero — forzar layout de una sola columna centrada */
.es_prices main > .container:first-child > .row,
.en_prices main > .container:first-child > .row {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

/* Spacers internos del hero — reducir */
.es_prices main > .container:first-child > .row > .w-100,
.en_prices main > .container:first-child > .row > .w-100 {
  display: none !important;
}

/* Columna izquierda (col-md-7): forzar ancho completo y centrado */
.es_prices main > .container:first-child .col-md-7,
.en_prices main > .container:first-child .col-md-7 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  margin-bottom: 24px !important;
}

/* Columna derecha (col-md-5): forzar ancho y centrar debajo */
.es_prices main > .container:first-child .col-md-5,
.en_prices main > .container:first-child .col-md-5 {
  flex: 0 0 auto !important;
  max-width: 600px !important;
  text-align: center !important;
}

/* Hero text styling — texto blanco sobre fondo azul */
.es_prices main > .container:first-child h1,
.en_prices main > .container:first-child h1 {
  color: var(--ct-white) !important;
  text-align: center !important;
  position: relative !important;
  z-index: 2 !important;
  /* font-size heredado de _page-subpages.scss (regla unificada para subpáginas) */
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  margin-bottom: 12px !important;
}

.es_prices main > .container:first-child h2,
.en_prices main > .container:first-child h2 {
  font-size: clamp(1.2rem, 2vw, 1.5rem) !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  margin-bottom: 16px !important;
  color: var(--ct-white) !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  -webkit-text-fill-color: initial !important;
  background-clip: initial !important;
  text-align: center !important;
}

.es_prices main > .container:first-child p,
.en_prices main > .container:first-child p {
  color: rgba(255, 255, 255, 0.75) !important;
  text-align: center !important;
  font-size: 16px !important;
  position: relative !important;
  z-index: 2 !important;
  max-width: 580px !important;
  margin: 0 auto 24px !important;
}

/* Bloque "¿Quieres probarlo?" — integrado como texto centrado debajo */
.es_prices main > .container:first-child .col-md-5,
.es_prices main > .container:first-child .cta-trial,
.en_prices main > .container:first-child .col-md-5,
.en_prices main > .container:first-child .cta-trial {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.es_prices main > .container:first-child .col-md-5 h2,
.en_prices main > .container:first-child .col-md-5 h2 {
  font-size: clamp(1.1rem, 1.8vw, 1.3rem) !important;
  color: rgba(255, 255, 255, 0.9) !important;
  margin-bottom: 16px !important;
}

.es_prices main > .container:first-child .col-md-5 p,
.en_prices main > .container:first-child .col-md-5 p {
  color: rgba(255, 255, 255, 0.6) !important;
}

/* Fix: el <p> que envuelve al botón hereda opacity:0.85 del sitio original → botón grisáceo */
.es_prices main > .container:first-child p:has(.btn-primary),
.es_prices main > .container:first-child .btn-primary,
.en_prices main > .container:first-child p:has(.btn-primary),
.en_prices main > .container:first-child .btn-primary {
  opacity: 1 !important;
}

/* Botón CTA "Te damos 7 días gratis" — MISMO estilo que el botón de la home */
.es_prices main > .container:first-child .btn-primary,
.en_prices main > .container:first-child .btn-primary {
  background: var(--ct-white) !important;
  color: var(--ct-blue) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 16px 40px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2) !important;
  transition: all 0.3s var(--ct-ease) !important;
}

.es_prices main > .container:first-child .btn-primary:hover,
.en_prices main > .container:first-child .btn-primary:hover {
  background: var(--ct-white) !important;
  color: var(--ct-blue-dark) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25) !important;
}

/* --- 30.2 PRICE TOGGLE SWITCH — Alineado a la derecha, pegado a las tarjetas --- */
.prices-switch-contender {
  position: relative !important;
  z-index: 2 !important;
  max-width: 100% !important;
}

/* Fila wrapper: alinear todo a la derecha, en columna */
.es_prices .prices-switch-contender > .d-flex.flex-wrap,
.en_prices .prices-switch-contender > .d-flex.flex-wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
  margin-bottom: 16px !important;
  gap: 6px !important;
  padding-right: 15px !important;
}

/* Ambas columnas: quitar anchos de col-md-6, auto width */
.es_prices .prices-switch-contender > .d-flex.flex-wrap > .col-12.col-md-6,
.en_prices .prices-switch-contender > .d-flex.flex-wrap > .col-12.col-md-6 {
  flex: 0 0 auto !important;
  max-width: none !important;
  width: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
}

/* Col con el toggle: orden 1 (primero), y quitar margen top mobile */
.es_prices .prices-switch-contender > .d-flex.flex-wrap > .col-12.col-md-6:not(.order-md-1),
.en_prices .prices-switch-contender > .d-flex.flex-wrap > .col-12.col-md-6:not(.order-md-1) {
  order: 1 !important;
}

/* Col con USD link: orden 2 (debajo del toggle) */
.es_prices .prices-switch-contender > .d-flex.flex-wrap > .col-12.col-md-6.order-md-1,
.en_prices .prices-switch-contender > .d-flex.flex-wrap > .col-12.col-md-6.order-md-1 {
  order: 2 !important;
  margin-top: 0 !important;
}

/* Toggle container: sin bordes, sin fondo, limpio y compacto */
.es_prices .prices-recurrence-contender,
.en_prices .prices-recurrence-contender {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* Labels del toggle */
.es_prices .custom-switch-labels,
.en_prices .custom-switch-labels {
  color: var(--ct-text-dark) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  cursor: pointer !important;
  transition: color 0.3s ease !important;
}

.es_prices .custom-switch-labels:hover,
.en_prices .custom-switch-labels:hover {
  color: var(--ct-blue) !important;
}

/* Switch toggle track — acento corporativo */
.es_prices .custom-control-input:checked ~ .custom-control-label::before,
.en_prices .custom-control-input:checked ~ .custom-control-label::before {
  background-color: var(--ct-blue) !important;
  border-color: var(--ct-blue) !important;
}

/* Texto "Con el plan Anual te ahorras..." — debajo del toggle, sutil */
.es_prices .prices-switch-contender small,
.es_prices .prices-switch-contender .text-left,
.en_prices .prices-switch-contender small,
.en_prices .prices-switch-contender .text-left {
  display: block !important;
  text-align: right !important;
  color: var(--ct-blue) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  margin-top: 2px !important;
}

/* Link "Ver precios en USD" — sutil, debajo */
.es_prices .prices-switch-contender a[href*=currency],
.es_prices .text-right.order-md-1 a,
.en_prices .prices-switch-contender a[href*=currency],
.en_prices .text-right.order-md-1 a {
  color: var(--ct-text-light) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.es_prices .prices-switch-contender a[href*=currency]:hover,
.es_prices .text-right.order-md-1 a:hover,
.en_prices .prices-switch-contender a[href*=currency]:hover,
.en_prices .text-right.order-md-1 a:hover {
  color: var(--ct-blue) !important;
  text-decoration: underline !important;
}

/* --- 30.3 PRICING CARDS — Fondo limpio, sin degradado azul oscuro --- */
.es_prices main > section:first-of-type,
.en_prices main > section:first-of-type {
  background: var(--ct-gray-50) !important;
  padding: 0 0 64px !important;
  overflow: visible !important;
}

/* Contenedor .prices-switch-contender: agrupa toggle + tarjetas, SIN borde propio */
.es_prices .container.prices-switch-contender,
.en_prices .container.prices-switch-contender {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 24px 0 32px !important;
  box-shadow: none !important;
  margin-top: 24px !important;
}

/* NUCLEAR: eliminar bordes en TODO dentro de la sección de precios EXCEPTO .card-price */
.es_prices main > section:first-of-type .container.prices-switch-contender > *:not(.card-price),
.es_prices main > section:first-of-type .row-fluid,
.es_prices main > section:first-of-type .col-12.js_swiper-contender,
.es_prices main > section:first-of-type .prices-card-contender,
.es_prices main > section:first-of-type .preloader-icon,
.es_prices main > section:first-of-type .swiper-pagination,
.en_prices main > section:first-of-type .container.prices-switch-contender > *:not(.card-price),
.en_prices main > section:first-of-type .row-fluid,
.en_prices main > section:first-of-type .col-12.js_swiper-contender,
.en_prices main > section:first-of-type .prices-card-contender,
.en_prices main > section:first-of-type .preloader-icon,
.en_prices main > section:first-of-type .swiper-pagination {
  border: 0 none transparent !important;
  border-top: 0 none transparent !important;
  border-bottom: 0 none transparent !important;
  border-left: 0 none transparent !important;
  border-right: 0 none transparent !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Swiper container — SIN borde, SIN sombra, solo layout */
.es_prices .col-12.js_swiper-contender.swiper.prices-cards,
.en_prices .col-12.js_swiper-contender.swiper.prices-cards {
  overflow: visible !important;
  padding: 16px 0 20px !important;
  border: 0 none transparent !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Row-fluid y wrapper — sin bordes */
.es_prices .prices-cards .swiper-wrapper,
.es_prices .prices-card-contender.swiper-wrapper,
.es_prices .row-fluid,
.en_prices .prices-cards .swiper-wrapper,
.en_prices .prices-card-contender.swiper-wrapper,
.en_prices .row-fluid {
  border: 0 none transparent !important;
  box-shadow: none !important;
  background: transparent !important;
}

.es_prices .prices-card-contender,
.es_prices .prices-cards .swiper-wrapper,
.en_prices .prices-card-contender,
.en_prices .prices-cards .swiper-wrapper {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  gap: 16px !important;
  transform: none !important;
}

.es_prices .card-price.swiper-slide,
.es_prices .swiper-slide,
.en_prices .card-price.swiper-slide,
.en_prices .swiper-slide {
  width: 25% !important;
  min-width: 250px !important;
  max-width: 290px !important;
  flex-shrink: 0 !important;
}

/* Individual price card — Consistent styling */
.es_prices .card-price,
.en_prices .card-price {
  background: var(--ct-white) !important;
  border: 1px solid var(--ct-gray-200) !important;
  border-radius: var(--ct-radius-xl) !important;
  overflow: hidden !important;
  box-shadow: var(--ct-shadow-sm) !important;
  transition: all 0.3s var(--ct-ease) !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
}

.es_prices .card-price:hover,
.en_prices .card-price:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--ct-shadow-lg) !important;
  border-color: transparent !important;
}

/* ---- GOLD card = SAME TREATMENT AS OTHER CARDS ---- */
.es_prices .tt_gold.card-price,
.en_prices .tt_gold.card-price {
  background: var(--ct-white) !important;
  border: 1px solid var(--ct-gray-200) !important;
  transform: none !important;
  z-index: auto !important;
  box-shadow: var(--ct-shadow-sm) !important;
}

.es_prices .tt_gold.card-price:hover,
.en_prices .tt_gold.card-price:hover {
  transform: translateY(-8px) !important;
  box-shadow: var(--ct-shadow-lg) !important;
}

/* "Most popular" badge for Gold — HIDDEN */
.es_prices .tt_gold.card-price::before,
.en_prices .tt_gold.card-price::before {
  display: none !important;
}

/* LIMPIAR todos los bordes internos de secciones — solo el card-price exterior tiene borde */
.es_prices .card-price .card-header,
.es_prices .card-price .card-description,
.es_prices .card-price .card-body,
.es_prices .card-price .card-footer,
.es_prices .card-price .prices-checklists,
.en_prices .card-price .card-header,
.en_prices .card-price .card-description,
.en_prices .card-price .card-body,
.en_prices .card-price .card-footer,
.en_prices .card-price .prices-checklists {
  border: none !important;
  border-left: none !important;
  border-right: none !important;
  border-top: none !important;
  border-bottom: none !important;
}

/* Card headers — fondo blanco con nombre de plan en color accent */
.es_prices .card-price .card-header,
.en_prices .card-price .card-header {
  background: var(--ct-white) !important;
  border-bottom: none !important;
  padding: 24px 24px 8px !important;
  text-align: center !important;
  border-radius: 0 !important;
}

.es_prices .card-price .card-header h2,
.en_prices .card-price .card-header h2 {
  font-size: 0.85rem !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15em !important;
  margin-bottom: 4px !important;
  -webkit-text-fill-color: unset !important;
  background: none !important;
}

/* ---- PLAN ACCENT COLORS — Consistentes en toda la página ---- */
/* Stone = gris slate */
.es_prices .tt_stone .card-header h2,
.en_prices .tt_stone .card-header h2 {
  color: #64748b !important;
}

.es_prices .tt_stone.card-price .card-header,
.en_prices .tt_stone.card-price .card-header {
  border-top: 4px solid #64748b !important;
}

/* Gold = ámbar */
.es_prices .tt_gold .card-header h2,
.en_prices .tt_gold .card-header h2 {
  color: #d97706 !important;
}

.es_prices .tt_gold.card-price .card-header,
.en_prices .tt_gold.card-price .card-header {
  border-top: 4px solid #d97706 !important;
}

/* Diamond = azul corporativo */
.es_prices .tt_diamond .card-header h2,
.en_prices .tt_diamond .card-header h2 {
  color: var(--ct-blue) !important;
}

.es_prices .tt_diamond.card-price .card-header,
.en_prices .tt_diamond.card-price .card-header {
  border-top: 4px solid var(--ct-blue) !important;
}

/* Enterprise = púrpura */
.es_prices .tt_enterprise .card-header h2,
.en_prices .tt_enterprise .card-header h2 {
  color: #7c3aed !important;
}

.es_prices .tt_enterprise.card-price .card-header,
.en_prices .tt_enterprise.card-price .card-header {
  border-top: 4px solid #7c3aed !important;
}

/* Stone/Gold/Diamond/Enterprise background overrides — NO background colors en headers */
.es_prices .card-header.stone-bg,
.es_prices .card-header.gold-bg,
.es_prices .card-header.diamond-bg,
.es_prices .card-header.enterprise-bg,
.en_prices .card-header.stone-bg,
.en_prices .card-header.gold-bg,
.en_prices .card-header.diamond-bg,
.en_prices .card-header.enterprise-bg {
  background: var(--ct-white) !important;
}

/* Quitar backgrounds en celdas de grid también */
.es_prices .stone-bg,
.es_prices .gold-bg,
.es_prices .diamond-bg,
.es_prices .enterprise-bg,
.en_prices .stone-bg,
.en_prices .gold-bg,
.en_prices .diamond-bg,
.en_prices .enterprise-bg {
  background: transparent !important;
}

/* Card description — altura fija para alinear botones */
.es_prices .card-price .card-description,
.en_prices .card-price .card-description {
  padding: 8px 24px !important;
  margin-bottom: 0 !important;
  min-height: 100px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.es_prices .card-price .card-description h4,
.en_prices .card-price .card-description h4 {
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: var(--ct-text) !important;
  margin-bottom: 4px !important;
}

.es_prices .card-price .card-description p,
.en_prices .card-price .card-description p {
  font-size: 13px !important;
  color: var(--ct-text-light) !important;
  line-height: 1.5 !important;
}

/* Gold card — force transparent backgrounds on ALL internal elements */
.es_prices .tt_gold.card-price .card-description,
.es_prices .tt_gold.card-price .card-body,
.es_prices .tt_gold.card-price .card-footer,
.es_prices .tt_gold.card-price .prices-checklists,
.es_prices .tt_gold.card-price form,
.es_prices .tt_gold.card-price .card-title,
.en_prices .tt_gold.card-price .card-description,
.en_prices .tt_gold.card-price .card-body,
.en_prices .tt_gold.card-price .card-footer,
.en_prices .tt_gold.card-price .prices-checklists,
.en_prices .tt_gold.card-price form,
.en_prices .tt_gold.card-price .card-title {
  background: transparent !important;
  background-color: transparent !important;
}

/* Gold card description — dark text */
.es_prices .tt_gold .card-description h4,
.es_prices .tt_gold .card-description strong,
.en_prices .tt_gold .card-description h4,
.en_prices .tt_gold .card-description strong {
  color: var(--ct-text-dark) !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
  -webkit-background-clip: initial !important;
}

.es_prices .tt_gold .card-description p,
.en_prices .tt_gold .card-description p {
  color: var(--ct-text) !important;
}

/* Gold card pricing text — dark text */
.es_prices .tt_gold .card-title.pricing-card-title,
.en_prices .tt_gold .card-title.pricing-card-title {
  color: var(--ct-text-dark) !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
  -webkit-background-clip: initial !important;
}

.es_prices .tt_gold .card-body .btn + small,
.en_prices .tt_gold .card-body .btn + small {
  color: var(--ct-text-dark) !important;
  -webkit-text-fill-color: initial !important;
}

/* Gold card button text */
.es_prices .tt_gold .card-body .btn.btn-primary,
.en_prices .tt_gold .card-body .btn.btn-primary {
  color: var(--ct-white) !important;
}

/* --- PRICE AMOUNT — Big bold number --- */
.es_prices .card-price .card-title.pricing-card-title,
.en_prices .card-price .card-title.pricing-card-title {
  padding: 8px 24px !important;
  margin: 0 !important;
  color: var(--ct-text-dark) !important;
  min-height: 95px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
}

.es_prices .card-price .js_prices.tt_prices,
.en_prices .card-price .js_prices.tt_prices {
  font-size: 3.2rem !important;
  font-weight: 900 !important;
  letter-spacing: -0.04em !important;
  line-height: 1 !important;
  color: var(--ct-text-dark) !important;
  display: inline-block !important;
}

.es_prices .tt_gold .js_prices.tt_prices,
.en_prices .tt_gold .js_prices.tt_prices {
  color: var(--ct-text-dark) !important;
}

.es_prices .card-price .js_prices-recurrence,
.en_prices .card-price .js_prices-recurrence {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: var(--ct-text-light) !important;
  display: block !important;
  margin-top: 4px !important;
}

.es_prices .tt_gold .js_prices-recurrence,
.en_prices .tt_gold .js_prices-recurrence {
  color: var(--ct-text-light) !important;
}

/* Enterprise "A medida" — reducir tamaño para que quepa en 1 línea */
.es_prices .tt_enterprise .card-title.pricing-card-title,
.en_prices .tt_enterprise .card-title.pricing-card-title {
  font-size: 1.6rem !important;
  white-space: nowrap !important;
}

.es_prices .tt_enterprise.card-price .js_prices.tt_prices,
.en_prices .tt_enterprise.card-price .js_prices.tt_prices {
  font-size: 1.6rem !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  white-space: nowrap !important;
}

/* --- CTA BUTTON — Consistent red gradient across all plans --- */
.es_prices .card-price .card-body .btn.btn-primary,
.en_prices .card-price .card-body .btn.btn-primary {
  background: linear-gradient(135deg, var(--ct-red) 0%, #ff2d5e 100%) !important;
  color: var(--ct-white) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 12px 24px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  transition: all 0.3s var(--ct-ease) !important;
  animation: none !important;
  box-shadow: 0 4px 15px rgba(219, 7, 60, 0.35) !important;
}

.es_prices .card-price .card-body .btn.btn-primary:hover,
.en_prices .card-price .card-body .btn.btn-primary:hover {
  color: var(--ct-white) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(219, 7, 60, 0.45) !important;
}

/* All plan CTAs use the same red style */
.es_prices .tt_stone .card-body .btn.btn-primary,
.es_prices .tt_gold .card-body .btn.btn-primary,
.es_prices .tt_diamond .card-body .btn.btn-primary,
.es_prices .tt_enterprise .card-body .btn.btn-primary,
.en_prices .tt_stone .card-body .btn.btn-primary,
.en_prices .tt_gold .card-body .btn.btn-primary,
.en_prices .tt_diamond .card-body .btn.btn-primary,
.en_prices .tt_enterprise .card-body .btn.btn-primary {
  background: linear-gradient(135deg, var(--ct-red) 0%, #ff2d5e 100%) !important;
  color: var(--ct-white) !important;
  border: none !important;
  box-shadow: 0 4px 15px rgba(219, 7, 60, 0.35) !important;
}

.es_prices .tt_stone .card-body .btn.btn-primary:hover,
.es_prices .tt_gold .card-body .btn.btn-primary:hover,
.es_prices .tt_diamond .card-body .btn.btn-primary:hover,
.es_prices .tt_enterprise .card-body .btn.btn-primary:hover,
.en_prices .tt_stone .card-body .btn.btn-primary:hover,
.en_prices .tt_gold .card-body .btn.btn-primary:hover,
.en_prices .tt_diamond .card-body .btn.btn-primary:hover,
.en_prices .tt_enterprise .card-body .btn.btn-primary:hover {
  color: var(--ct-white) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(219, 7, 60, 0.45) !important;
}

/* --- COLORED ACCENT LINE BELOW CTA — per plan (SOLO 1 borde) --- */
.es_prices .card-price .card-body .w-100.my-3,
.en_prices .card-price .card-body .w-100.my-3 {
  border: none !important;
  padding-bottom: 12px !important;
  margin-bottom: 0 !important;
}

.es_prices .tt_stone .card-body .w-100.my-3,
.en_prices .tt_stone .card-body .w-100.my-3 {
  border-bottom: 3px solid #64748b !important;
}

.es_prices .tt_gold .card-body .w-100.my-3,
.en_prices .tt_gold .card-body .w-100.my-3 {
  border-bottom: 3px solid #d97706 !important;
}

.es_prices .tt_diamond .card-body .w-100.my-3,
.en_prices .tt_diamond .card-body .w-100.my-3 {
  border-bottom: 3px solid var(--ct-blue) !important;
}

.es_prices .tt_enterprise .card-body .w-100.my-3,
.en_prices .tt_enterprise .card-body .w-100.my-3 {
  border-bottom: 3px solid #7c3aed !important;
}

/* --- FEATURES CHECKLIST — Texto siempre visible --- */
.es_prices .card-price .prices-checklists,
.en_prices .card-price .prices-checklists {
  background: transparent !important;
  padding: 0 !important;
  border-top: none !important;
}

.es_prices .card-price .checks-left-list,
.en_prices .card-price .checks-left-list {
  list-style: none !important;
  padding: 12px 24px !important;
  margin: 0 !important;
}

.es_prices .card-price .checks-left-list li,
.en_prices .card-price .checks-left-list li {
  padding: 8px 0 8px 28px !important;
  border-bottom: 1px solid var(--ct-gray-100) !important;
  font-size: 13.5px !important;
  color: var(--ct-text) !important;
  position: relative !important;
}

/* FORZAR texto visible en TODOS los elementos dentro de features */
.es_prices .card-price .checks-left-list li,
.es_prices .card-price .checks-left-list li *,
.es_prices .card-price .checks-left-list li strong,
.es_prices .card-price .checks-left-list li b,
.es_prices .card-price .checks-left-list li em,
.es_prices .card-price .checks-left-list li span,
.en_prices .card-price .checks-left-list li,
.en_prices .card-price .checks-left-list li *,
.en_prices .card-price .checks-left-list li strong,
.en_prices .card-price .checks-left-list li b,
.en_prices .card-price .checks-left-list li em,
.en_prices .card-price .checks-left-list li span {
  color: var(--ct-text) !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
}

.es_prices .card-price .checks-left-list li strong,
.es_prices .card-price .checks-left-list li b,
.en_prices .card-price .checks-left-list li strong,
.en_prices .card-price .checks-left-list li b {
  color: var(--ct-text-dark) !important;
  font-weight: 700 !important;
}

/* <small> dentro de features — texto auxiliar, más pequeño y alineado */
.es_prices .card-price .checks-left-list li small,
.en_prices .card-price .checks-left-list li small {
  display: block !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  color: var(--ct-text-light) !important;
  margin-top: 2px !important;
  padding: 0 !important;
  font-weight: 400 !important;
}

/* FIX doble check: ocultar el <span> con SVG y el <div class="mr-2"> (width:0) que causan escalera */
/* El check ::before es suficiente — los hijos span(svg) y div.mr-2 sobran */
.es_prices .card-price .checks-left-list li > span:first-child,
.en_prices .card-price .checks-left-list li > span:first-child {
  display: none !important;
}

.es_prices .card-price .checks-left-list li > div.mr-2,
.en_prices .card-price .checks-left-list li > div.mr-2 {
  display: none !important;
}

/* El tercer span (texto real) debe fluir normal como inline */
.es_prices .card-price .checks-left-list li > span:last-child,
.en_prices .card-price .checks-left-list li > span:last-child {
  display: inline !important;
  width: auto !important;
}

.es_prices .card-price .checks-left-list li:last-child,
.en_prices .card-price .checks-left-list li:last-child {
  border-bottom: none !important;
}

.es_prices .card-price .checks-left-list li::before,
.en_prices .card-price .checks-left-list li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 9px !important;
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: var(--ct-gray-50) !important;
  color: var(--ct-blue) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

/* Card footer */
.es_prices .card-price .card-footer,
.en_prices .card-price .card-footer {
  background: transparent !important;
  border-top: none !important;
  padding: 0 24px 24px !important;
}

.es_prices .card-price .card-footer a,
.en_prices .card-price .card-footer a {
  color: var(--ct-blue) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-decoration-color: transparent !important;
  transition: all 0.2s ease !important;
}

.es_prices .card-price .card-footer a:hover,
.en_prices .card-price .card-footer a:hover {
  text-decoration-color: var(--ct-blue) !important;
}

/* --- 30.3b TEXTO "Precios sin IVA..." — compacto, derecha, debajo de tarjetas --- */
.es_prices main > section:first-of-type > .container:not(.prices-switch-contender),
.en_prices main > section:first-of-type > .container:not(.prices-switch-contender) {
  max-width: 100% !important;
  padding: 0 24px !important;
}

.es_prices main > section:first-of-type > .container:not(.prices-switch-contender) .row,
.en_prices main > section:first-of-type > .container:not(.prices-switch-contender) .row {
  justify-content: flex-end !important;
}

.es_prices main > section:first-of-type > .container:not(.prices-switch-contender) .col-12.mb-3,
.en_prices main > section:first-of-type > .container:not(.prices-switch-contender) .col-12.mb-3 {
  flex: 0 0 auto !important;
  max-width: none !important;
  width: auto !important;
  text-align: right !important;
  margin-bottom: 0 !important;
}

.es_prices main > section:first-of-type > .container:not(.prices-switch-contender) p,
.en_prices main > section:first-of-type > .container:not(.prices-switch-contender) p {
  font-size: 11px !important;
  color: var(--ct-text-light) !important;
  line-height: 1.5 !important;
  margin-bottom: 2px !important;
  text-align: right !important;
}

/* --- 30.3c BANNER "Todos nuestros planes incluyen..." — separador con fondo --- */
.es_prices .analytics-info-container,
.en_prices .analytics-info-container {
  background: linear-gradient(135deg, var(--ct-blue) 0%, #364a8a 60%, #2a3d7a 100%) !important;
  padding: 40px 0 !important;
  margin: 48px 0 0 !important;
  text-align: center !important;
}

.es_prices .analytics-info-container .container,
.en_prices .analytics-info-container .container {
  max-width: 900px !important;
}

.es_prices .analytics-info-container .row,
.en_prices .analytics-info-container .row {
  justify-content: center !important;
  align-items: center !important;
}

.es_prices .analytics-info-container .col-12.col-xl-9,
.en_prices .analytics-info-container .col-12.col-xl-9 {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.es_prices .analytics-info-container .col-9,
.es_prices .analytics-info-container .col-lg-7,
.en_prices .analytics-info-container .col-9,
.en_prices .analytics-info-container .col-lg-7 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  text-align: center !important;
}

.es_prices .analytics-info-container p.analytics-info,
.en_prices .analytics-info-container p.analytics-info {
  font-size: 1.15rem !important;
  font-weight: 500 !important;
  color: rgba(255, 255, 255, 0.9) !important;
  margin-bottom: 16px !important;
  line-height: 1.6 !important;
}

.es_prices .analytics-info-container p.analytics-info strong,
.en_prices .analytics-info-container p.analytics-info strong {
  color: var(--ct-white) !important;
  font-weight: 700 !important;
  -webkit-text-fill-color: initial !important;
  background: none !important;
}

.es_prices .analytics-info-container .btn.btn-primary,
.en_prices .analytics-info-container .btn.btn-primary {
  background: var(--ct-white) !important;
  color: var(--ct-blue) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 12px 32px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.3s var(--ct-ease) !important;
  width: auto !important;
  max-width: 200px !important;
  display: inline-block !important;
}

/* Col que contiene el botón — centrar */
.es_prices .analytics-info-container .col-12.col-sm-8,
.es_prices .analytics-info-container [class*=col-lg-3],
.en_prices .analytics-info-container .col-12.col-sm-8,
.en_prices .analytics-info-container [class*=col-lg-3] {
  flex: 0 0 auto !important;
  max-width: 100% !important;
  text-align: center !important;
  margin: 0 auto !important;
}

.es_prices .analytics-info-container .btn.btn-primary:hover,
.en_prices .analytics-info-container .btn.btn-primary:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2) !important;
}

/* Icono SVG del banner — blanco en vez de azul */
.es_prices .analytics-info-container #prices-analytics--icon,
.es_prices .analytics-info-container #prices-analytics--icon path,
.es_prices .analytics-info-container #prices-analytics--icon .st0,
.es_prices #prices-analytics--icon .st0,
.en_prices .analytics-info-container #prices-analytics--icon,
.en_prices .analytics-info-container #prices-analytics--icon path,
.en_prices .analytics-info-container #prices-analytics--icon .st0,
.en_prices #prices-analytics--icon .st0 {
  fill: #ffffff !important;
}

/* Ocultar spacers vacíos innecesarios entre secciones */
.es_prices main > section:first-of-type > .w-100.mt-3,
.en_prices main > section:first-of-type > .w-100.mt-3 {
  display: none !important;
}

.es_prices main > section:first-of-type > .w-100.mt-42,
.en_prices main > section:first-of-type > .w-100.mt-42 {
  margin-top: 0 !important;
  height: 0 !important;
}

/* --- 30.4 PLANS COMPARISON GRID — Tabla moderna, limpia, minimal --- */
.es_prices .plans-grid,
.en_prices .plans-grid {
  background: var(--ct-white) !important;
  padding: 64px 0 !important;
}

.es_prices .grid-contender,
.en_prices .grid-contender {
  border: none !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
  display: block !important;
  background: var(--ct-white) !important;
}

/* Grid rows as CSS Grid 5-column layout */
.es_prices .grid-row,
.en_prices .grid-row {
  display: grid !important;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr !important;
  align-items: center !important;
  transition: background 0.15s ease !important;
}

/* ===== HEADER ROWS — cada columna con su color de plan ===== */
.es_prices .grid-row.header,
.en_prices .grid-row.header {
  background: transparent !important;
}

.es_prices .grid-row.header .cell,
.en_prices .grid-row.header .cell {
  font-weight: 700 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  padding: 18px 12px !important;
  border: none !important;
  border-bottom: none !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
}

/* Header aside — "Tipos de Campañas" / "Otros servicios" — sutil, no protagonista */
.es_prices .grid-row.header .cell.aside,
.en_prices .grid-row.header .cell.aside {
  background: var(--ct-gray-50) !important;
  color: var(--ct-text-light) !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

/* Header plan columns — cada una con su color de acento */
.es_prices .grid-row.header .cell.stone-bg,
.es_prices .grid-row.header .cell.stone,
.en_prices .grid-row.header .cell.stone-bg,
.en_prices .grid-row.header .cell.stone {
  background: #64748b !important;
  color: var(--ct-white) !important;
}

.es_prices .grid-row.header .cell.gold-bg,
.es_prices .grid-row.header .cell.gold,
.en_prices .grid-row.header .cell.gold-bg,
.en_prices .grid-row.header .cell.gold {
  background: #d97706 !important;
  color: var(--ct-white) !important;
}

.es_prices .grid-row.header .cell.diamond-bg,
.es_prices .grid-row.header .cell.diamond,
.en_prices .grid-row.header .cell.diamond-bg,
.en_prices .grid-row.header .cell.diamond {
  background: var(--ct-blue) !important;
  color: var(--ct-white) !important;
}

.es_prices .grid-row.header .cell.enterprise-bg,
.es_prices .grid-row.header .cell.enterprise,
.en_prices .grid-row.header .cell.enterprise-bg,
.en_prices .grid-row.header .cell.enterprise {
  background: #7c3aed !important;
  color: var(--ct-white) !important;
}

/* ===== DATA ROWS — minimal, sin bordes verticales ===== */
.es_prices .grid-row:not(.header),
.en_prices .grid-row:not(.header) {
  background: var(--ct-white) !important;
}

.es_prices .grid-row:not(.header):nth-child(even),
.en_prices .grid-row:not(.header):nth-child(even) {
  background: #fafbfc !important;
}

.es_prices .grid-row:not(.header):hover,
.en_prices .grid-row:not(.header):hover {
  background: #f0f4ff !important;
}

/* ===== CELLS — sin bordes verticales, solo separador horizontal sutil ===== */
.es_prices .grid-row .cell,
.en_prices .grid-row .cell {
  padding: 11px 12px !important;
  font-size: 13.5px !important;
  color: var(--ct-text) !important;
  border: none !important;
  border-bottom: 1px solid #f0f1f4 !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  vertical-align: middle !important;
  text-align: center !important;
  background: transparent !important;
}

/* Aside cell — feature name — peso visual reducido para equilibrar con checks */
.es_prices .grid-row:not(.header) .cell.aside,
.en_prices .grid-row:not(.header) .cell.aside {
  font-weight: 500 !important;
  color: var(--ct-text) !important;
  font-size: 13px !important;
  text-align: left !important;
  padding-left: 20px !important;
  background: transparent !important;
}

/* NUCLEAR: forzar background transparent en TODAS las celdas de datos con clase de plan */
.es_prices .grid-row:not(.header) .cell.stone,
.es_prices .grid-row:not(.header) .cell.gold,
.es_prices .grid-row:not(.header) .cell.diamond,
.es_prices .grid-row:not(.header) .cell.enterprise,
.es_prices .grid-row:not(.header) .cell.stone-bg,
.es_prices .grid-row:not(.header) .cell.gold-bg,
.es_prices .grid-row:not(.header) .cell.diamond-bg,
.es_prices .grid-row:not(.header) .cell.enterprise-bg,
.en_prices .grid-row:not(.header) .cell.stone,
.en_prices .grid-row:not(.header) .cell.gold,
.en_prices .grid-row:not(.header) .cell.diamond,
.en_prices .grid-row:not(.header) .cell.enterprise,
.en_prices .grid-row:not(.header) .cell.stone-bg,
.en_prices .grid-row:not(.header) .cell.gold-bg,
.en_prices .grid-row:not(.header) .cell.diamond-bg,
.en_prices .grid-row:not(.header) .cell.enterprise-bg {
  background: transparent !important;
  border-left: none !important;
  border-right: none !important;
  border-top: none !important;
}

/* Last row — sin borde inferior */
.es_prices .grid-row:last-child .cell,
.en_prices .grid-row:last-child .cell {
  border-bottom: none !important;
}

/* ===== SVG CHECK/X ICONS EN GRID — FORZAR VISIBILIDAD ===== */
.es_prices .grid-row .cell span,
.en_prices .grid-row .cell span {
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  min-width: 18px !important;
  min-height: 18px !important;
  visibility: visible !important;
}

.es_prices .grid-row .cell svg,
.en_prices .grid-row .cell svg {
  display: inline-block !important;
  visibility: visible !important;
  width: 18px !important;
  height: 18px !important;
  overflow: visible !important;
  color: #16a34a !important;
}

.es_prices .grid-row .cell svg path,
.es_prices .grid-row .cell svg polyline,
.es_prices .grid-row .cell svg line,
.es_prices .grid-row .cell svg circle,
.en_prices .grid-row .cell svg path,
.en_prices .grid-row .cell svg polyline,
.en_prices .grid-row .cell svg line,
.en_prices .grid-row .cell svg circle {
  display: inline !important;
  visibility: visible !important;
  fill: #16a34a !important;
}

/* Texto dentro de celdas de grid — siempre visible */
.es_prices .grid-row .cell,
.es_prices .grid-row .cell *,
.en_prices .grid-row .cell,
.en_prices .grid-row .cell * {
  color: var(--ct-text) !important;
}

.es_prices .grid-row.header .cell,
.es_prices .grid-row.header .cell *,
.en_prices .grid-row.header .cell,
.en_prices .grid-row.header .cell * {
  color: var(--ct-white) !important;
}

/* Header aside override — texto oscuro, no blanco */
.es_prices .grid-row.header .cell.aside,
.es_prices .grid-row.header .cell.aside *,
.en_prices .grid-row.header .cell.aside,
.en_prices .grid-row.header .cell.aside * {
  color: var(--ct-text-dark) !important;
}

/* Mobile menu in plans-grid */
.es_prices .mobile-menu,
.en_prices .mobile-menu {
  background: var(--ct-gray-50) !important;
  border-radius: var(--ct-radius) !important;
  padding: 12px !important;
  margin-bottom: 16px !important;
}

.es_prices .mobile-menu a,
.en_prices .mobile-menu a {
  color: var(--ct-blue) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}

/* Collapse inside plans-grid */
.es_prices .plans-grid .collapse-options,
.en_prices .plans-grid .collapse-options {
  border-radius: var(--ct-radius) !important;
}

/* Botones CTA al final de la tabla comparativa — mismo estilo que el resto del sitio */
.es_prices .plans-grid .btn,
.es_prices .plans-grid .btn.btn-primary,
.es_prices .plans-grid .grid-contender .btn,
.es_prices .plans-grid .grid-row .cell .btn,
.en_prices .plans-grid .btn,
.en_prices .plans-grid .btn.btn-primary,
.en_prices .plans-grid .grid-contender .btn,
.en_prices .plans-grid .grid-row .cell .btn {
  background: var(--ct-red) !important;
  color: var(--ct-white) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 12px 28px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: none !important;
  box-shadow: 0 4px 15px rgba(219, 7, 60, 0.3) !important;
  transition: all 0.2s ease !important;
  letter-spacing: 0 !important;
}

/* Forzar blanco en TODOS los hijos de los botones (span, small, etc.) */
.es_prices .plans-grid .btn *,
.es_prices .plans-grid .btn span,
.es_prices .plans-grid .btn small,
.en_prices .plans-grid .btn *,
.en_prices .plans-grid .btn span,
.en_prices .plans-grid .btn small {
  color: var(--ct-white) !important;
}

.es_prices .plans-grid .btn:hover,
.es_prices .plans-grid .btn.btn-primary:hover,
.en_prices .plans-grid .btn:hover,
.en_prices .plans-grid .btn.btn-primary:hover {
  background: #c40636 !important;
  color: var(--ct-white) !important;
  box-shadow: 0 6px 20px rgba(219, 7, 60, 0.4) !important;
  transform: translateY(-1px) !important;
}

/* --- 30.5 FAQ SECTION — Accordion-style cards (como la landing) --- */
.es_prices main > section:nth-of-type(3),
.en_prices main > section:nth-of-type(3) {
  background: var(--ct-gray-50) !important;
  padding: 80px 0 !important;
}

/* FAQ title container */
.es_prices main > section:nth-of-type(3) .left-list > .col-12:first-child,
.en_prices main > section:nth-of-type(3) .left-list > .col-12:first-child {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  margin-bottom: 16px !important;
}

/* "PREGUNTAS FRECUENTES" small label above title */
.es_prices main > section:nth-of-type(3) .left-list > .col-12:first-child h2::before,
.en_prices main > section:nth-of-type(3) .left-list > .col-12:first-child h2::before {
  content: "PREGUNTAS FRECUENTES" !important;
  display: block !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  color: var(--ct-red) !important;
  margin-bottom: 12px !important;
  text-transform: uppercase !important;
}

.es_prices main > section:nth-of-type(3) .left-list > .col-12:first-child h2,
.en_prices main > section:nth-of-type(3) .left-list > .col-12:first-child h2 {
  text-align: center !important;
  font-size: clamp(1.6rem, 3vw, 2.2rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark) !important;
  margin-bottom: 48px !important;
  position: relative !important;
}

/* Remove the old gradient underline */
.es_prices main > section:nth-of-type(3) .left-list > .col-12:first-child h2::after,
.en_prices main > section:nth-of-type(3) .left-list > .col-12:first-child h2::after {
  display: none !important;
}

/* Force the left-list row to single-column centered layout — display:block para evitar conflictos con Bootstrap flex */
.es_prices main > section:nth-of-type(3) .left-list,
.en_prices main > section:nth-of-type(3) .left-list {
  display: block !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  padding: 0 15px !important;
}

/* Individual FAQ items — accordion card style, full width */
.es_prices main > section:nth-of-type(3) .col-12.col-md-6.mb-4,
.es_prices main > section:nth-of-type(3) .row.left-list > .col-12.col-md-6,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6.mb-4,
.en_prices main > section:nth-of-type(3) .row.left-list > .col-12.col-md-6 {
  display: block !important;
  float: none !important;
  flex: none !important;
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin-bottom: 12px !important;
  background: var(--ct-white) !important;
  border: 1px solid #e8eaef !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  transition: box-shadow 0.2s ease !important;
}

.es_prices main > section:nth-of-type(3) .col-12.col-md-6.mb-4:hover,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6.mb-4:hover {
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;
}

/* Question heading — card style (sin toggle, solo CSS) */
.es_prices main > section:nth-of-type(3) .col-12.col-md-6 > h4,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6 > h4 {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--ct-text-dark) !important;
  margin-bottom: 0 !important;
  padding: 20px 24px 12px !important;
  border-left: none !important;
  line-height: 1.5 !important;
}

/* Sin chevron — no hay toggle sin JS */
.es_prices main > section:nth-of-type(3) .col-12.col-md-6 > h4::after,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6 > h4::after {
  display: none !important;
}

/* Answer container — siempre visible */
.es_prices main > section:nth-of-type(3) .col-12.col-md-6 > .bg-gray-light,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6 > .bg-gray-light {
  background: transparent !important;
  padding: 0 24px 20px !important;
  border-top: none !important;
  margin-top: 0 !important;
}

/* Respuestas directas (p sin .bg-gray-light wrapper) */
.es_prices main > section:nth-of-type(3) .col-12.col-md-6 > p,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6 > p {
  padding: 4px 24px !important;
  margin-bottom: 8px !important;
}

/* Answer text */
.es_prices main > section:nth-of-type(3) .col-12.col-md-6 p,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6 p {
  font-size: 14px !important;
  color: var(--ct-text) !important;
  line-height: 1.7 !important;
  padding-left: 0 !important;
  margin-bottom: 8px !important;
}

.es_prices main > section:nth-of-type(3) .col-12.col-md-6 p:last-child,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6 p:last-child {
  margin-bottom: 0 !important;
}

/* Strong text inside answers */
.es_prices main > section:nth-of-type(3) .col-12.col-md-6 p strong,
.en_prices main > section:nth-of-type(3) .col-12.col-md-6 p strong {
  color: var(--ct-text-dark) !important;
  font-weight: 600 !important;
}

/* Hide the old separator line under the title */
.es_prices main > section:nth-of-type(3) .left-list > .col-12:first-child .w-100,
.en_prices main > section:nth-of-type(3) .left-list > .col-12:first-child .w-100 {
  display: none !important;
}

/* --- 30.6 "ESTARÁS CON LOS MEJORES" --- */
.es_prices main > section:last-of-type,
.en_prices main > section:last-of-type {
  background: var(--ct-white) !important;
  padding: 48px 0 !important;
}

.es_prices main > section:last-of-type h2,
.en_prices main > section:last-of-type h2 {
  font-size: 1.1rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: var(--ct-text-light) !important;
  text-align: center !important;
  font-weight: 600 !important;
}

/* --- 30.7 SPACERS — Kill excess whitespace on pricing --- */
.es_prices .w-100.mt-42,
.en_prices .w-100.mt-42 {
  margin-top: 0 !important;
  height: 0 !important;
}

.es_prices .mb-194,
.en_prices .mb-194 {
  margin-bottom: 0 !important;
  height: 0 !important;
}

/* --- 30.8 PRICING RESPONSIVE --- */
/* ===== TABLET — max 991px ===== */
@media (max-width: 991px) {
  .es_prices .tt_gold.card-price {
    transform: scale(1) !important;
  }
  .es_prices .tt_gold.card-price:hover {
    transform: translateY(-8px) !important;
  }
  .es_prices main > .container:first-child {
    padding: 48px 16px 32px !important;
  }
  .es_prices main > section:first-of-type {
    padding: 0 0 40px !important;
  }
  .es_prices .plans-grid {
    padding: 40px 0 !important;
  }
  /* Cards: 2x2 grid en tablet — DESACTIVAR SWIPER */
  .es_prices .prices-card-contender,
  .es_prices .prices-cards .swiper-wrapper {
    flex-wrap: wrap !important;
    gap: 16px !important;
    transform: none !important;
    transition: none !important;
    height: auto !important;
  }
  .es_prices .card-price.swiper-slide,
  .es_prices .swiper-slide {
    width: calc(50% - 12px) !important;
    min-width: 0 !important;
    max-width: none !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  /* Ocultar paginación swiper en tablet */
  .es_prices .swiper-pagination,
  .es_prices .swiper-button-next,
  .es_prices .swiper-button-prev {
    display: none !important;
  }
  /* Ocultar mobile-menu en tablet también */
  .es_prices .mobile-menu {
    display: none !important;
  }
  /* Comparison grid */
  .es_prices .grid-contender {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }
  /* Banner analytics: stack vertical */
  .es_prices .analytics-info-container .row {
    flex-direction: column !important;
    text-align: center !important;
  }
  .es_prices .analytics-info-container .col-md-8,
  .es_prices .analytics-info-container .col-md-4 {
    max-width: 100% !important;
    flex: 0 0 100% !important;
    text-align: center !important;
  }
}
/* ===== MOBILE — max 767px ===== */
@media (max-width: 767px) {
  /* Hero */
  .es_prices main > .container:first-child {
    padding: 36px 16px 24px !important;
  }
  .es_prices main > .container:first-child > .row {
    flex-direction: column !important;
  }
  .es_prices main > .container:first-child .col-md-7,
  .es_prices main > .container:first-child .col-md-5 {
    max-width: 100% !important;
    flex: 0 0 100% !important;
    text-align: center !important;
  }
  .es_prices main > .container:first-child h1 {
    font-size: clamp(1.5rem, 5vw, 2rem) !important;
  }
  .es_prices main > .container:first-child h2 {
    font-size: clamp(1rem, 3.5vw, 1.3rem) !important;
  }
  /* Toggle switch centrado */
  .es_prices .prices-switch-contender > .d-flex.flex-wrap {
    justify-content: center !important;
    text-align: center !important;
  }
  /* Cards: 1 columna en móvil — DESACTIVAR SWIPER */
  .es_prices .prices-card-contender,
  .es_prices .prices-cards .swiper-wrapper {
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 16px !important;
    transform: none !important;
    transition: none !important;
    height: auto !important;
  }
  .es_prices .card-price.swiper-slide,
  .es_prices .swiper-slide {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 400px !important;
    position: static !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  /* Ocultar paginación swiper y flechas en móvil */
  .es_prices .swiper-pagination,
  .es_prices .swiper-button-next,
  .es_prices .swiper-button-prev {
    display: none !important;
  }
  /* Card description: reducir min-height en móvil */
  .es_prices .card-price .card-description {
    min-height: auto !important;
  }
  /* Price title: reducir min-height en móvil */
  .es_prices .card-price .card-title.pricing-card-title {
    min-height: auto !important;
  }
  /* Precio más pequeño */
  .es_prices .card-price .js_prices.tt_prices {
    font-size: 2.5rem !important;
  }
  /* ===== COMPARISON GRID — MOBILE: columna única vertical ===== */
  /* Ocultar el menú "Cambiar" móvil del sitio original */
  .es_prices .mobile-menu,
  .es_prices .collapse-options {
    display: none !important;
  }
  /* Grid container: sin scroll horizontal */
  .es_prices .grid-contender {
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 12px !important;
  }
  /* Cada fila: aside ocupa ancho completo, 4 plan-cells debajo en fila */
  .es_prices .grid-row {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    min-width: 0 !important;
    border-bottom: 1px solid #eee !important;
  }
  /* Nombre de la feature — ocupa las 4 columnas */
  .es_prices .grid-row .cell.aside {
    grid-column: 1/-1 !important;
    text-align: left !important;
    font-weight: 600 !important;
    font-size: 13px !important;
    padding: 10px 12px 2px !important;
    background: transparent !important;
    border-bottom: none !important;
  }
  /* FORZAR VISIBILIDAD — Override del CSS original que oculta columnas en móvil */
  .es_prices .grid-row .cell,
  .es_prices .grid-row .cell.stone,
  .es_prices .grid-row .cell.gold,
  .es_prices .grid-row .cell.diamond,
  .es_prices .grid-row .cell.enterprise,
  .es_prices .grid-row .cell.disabled,
  .es_prices .grid-row .cell.diamond.disabled,
  .es_prices .grid-row .cell.enterprise.disabled,
  .es_prices .grid-row.header .cell.stone-bg,
  .es_prices .grid-row.header .cell.gold-bg,
  .es_prices .grid-row.header .cell.diamond-bg,
  .es_prices .grid-row.header .cell.enterprise-bg,
  .es_prices .grid-row.header .cell.stone,
  .es_prices .grid-row.header .cell.gold,
  .es_prices .grid-row.header .cell.diamond,
  .es_prices .grid-row.header .cell.enterprise {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  /* Plan cells — 4 en fila debajo del feature name */
  .es_prices .grid-row .cell:not(.aside) {
    text-align: center !important;
    padding: 4px 4px 10px !important;
    font-size: 11px !important;
    border: none !important;
  }
  /* Header fila de planes — sticky y con colores */
  .es_prices .grid-row.header {
    position: sticky !important;
    top: 0 !important;
    z-index: 10 !important;
    background: var(--ct-white) !important;
    border-bottom: 2px solid #e8eaef !important;
  }
  /* Ocultar "Tipos de Campañas" / "Otros Servicios" label en header móvil */
  .es_prices .grid-row.header .cell.aside {
    display: none !important;
  }
  /* Plan header cells: 4 columnas iguales, visibles */
  .es_prices .grid-row.header .cell:not(.aside) {
    display: block !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    padding: 10px 4px !important;
    letter-spacing: 0.05em !important;
  }
  /* Forzar orden correcto — override del order:1 del CSS original en Gold */
  .es_prices .grid-row .cell.stone,
  .es_prices .grid-row .cell.stone-bg {
    order: 0 !important;
  }
  .es_prices .grid-row .cell.gold,
  .es_prices .grid-row .cell.gold-bg {
    order: 1 !important;
  }
  .es_prices .grid-row .cell.diamond,
  .es_prices .grid-row .cell.diamond-bg {
    order: 2 !important;
  }
  .es_prices .grid-row .cell.enterprise,
  .es_prices .grid-row .cell.enterprise-bg {
    order: 3 !important;
  }
  /* Grid CTA buttons compactos en móvil */
  .es_prices .grid-row .cell .btn,
  .es_prices .grid-row .cell a.btn {
    font-size: 8px !important;
    padding: 8px 2px !important;
    white-space: normal !important;
    line-height: 1.2 !important;
    display: block !important;
    text-align: center !important;
    border-radius: 8px !important;
    word-break: break-word !important;
  }
  /* Check icons más pequeños en móvil */
  .es_prices .grid-row .cell svg {
    width: 14px !important;
    height: 14px !important;
  }
  /* Plans grid section */
  .es_prices .plans-grid {
    padding: 32px 8px !important;
  }
  .es_prices .grid-contender {
    padding: 0 4px !important;
  }
  /* FAQ section */
  .es_prices main > section:nth-of-type(3) {
    padding: 40px 0 !important;
  }
  .es_prices main > section:nth-of-type(3) .left-list {
    padding: 0 8px !important;
  }
  /* Banner analytics */
  .es_prices .analytics-info-container {
    padding: 40px 16px !important;
  }
  .es_prices .analytics-info-container p.analytics-info {
    font-size: 1rem !important;
  }
  /* Plans grid section padding */
  .es_prices .plans-grid {
    padding: 32px 0 !important;
  }
  /* Disclaimer text */
  .es_prices main > section:first-of-type .container .text-right {
    text-align: center !important;
  }
}
/* ===== SMALL MOBILE — max 480px ===== */
@media (max-width: 480px) {
  .es_prices .card-price.swiper-slide,
  .es_prices .swiper-slide {
    max-width: 100% !important;
  }
  .es_prices .card-price .card-header {
    padding: 16px 16px 6px !important;
  }
  .es_prices .card-price .card-description {
    padding: 6px 16px !important;
  }
  .es_prices .card-price .js_prices.tt_prices {
    font-size: 2.2rem !important;
  }
  .es_prices .card-price .checks-left-list {
    padding: 8px 12px !important;
  }
  .es_prices .card-price .checks-left-list li {
    font-size: 12.5px !important;
    padding: 8px 0 !important;
  }
  /* Grid: aún más compacto en 480px */
  .es_prices .grid-row .cell.aside {
    font-size: 12px !important;
    padding: 8px 10px 2px !important;
  }
  .es_prices .grid-row .cell:not(.aside) {
    padding: 2px 2px 8px !important;
    font-size: 10px !important;
  }
  .es_prices .grid-row.header .cell:not(.aside) {
    font-size: 8px !important;
    padding: 8px 2px !important;
  }
  /* FAQ cards más compactas */
  .es_prices main > section:nth-of-type(3) .col-12.col-md-6 > h4 {
    font-size: 14px !important;
    padding: 16px 16px 8px !important;
  }
  .es_prices main > section:nth-of-type(3) .col-12.col-md-6 > .bg-gray-light {
    padding: 0 16px 16px !important;
  }
}
/* ==========================================================================
   31. PAGINAS SECUNDARIAS — Rediseño completo de todas las subpáginas
   ==========================================================================
   Selectores basados en clases reales del body:
   - es_case_studies  (casos de éxito)
   - es_about_us      (quiénes somos)
   - es_resources     (recursos)
   - es_social_listening (lakegreen-theme)
   - es_social_walls  (yellow-theme)
   - es_jobs          (empleo)
   - es_affiliates_partners (afiliados)
   - es_privacy       (política de privacidad)
   ========================================================================== */
/* ==========================================================================
   30.5 SISTEMA TIPOGRÁFICO UNIFICADO — Heroes de subpáginas
   ========================================================================== */
/* ---------- H1 Hero unificado para TODAS las subpáginas ---------- */
.es_campaigns main h1,
.es_catalogue .row.header h1,
.es_case_studies main h1,
.es_prices main h1,
.es_resources main h1,
.es_affiliates_partners main h1,
.es_about_us main h1,
.es_jobs main h1,
.es_social_listening main h1,
.es_social_walls main h1,
.es_privacy main h1,
.es_campaigns .container-fluid.custom-ratio-header h1,
.es_campaigns .inside-aspect-ratio h1,
.en_campaigns main h1,
.en_catalogue .row.header h1,
.en_case_studies main h1,
.en_prices main h1,
.en_resources main h1,
.en_affiliates_partners main h1,
.en_about_us main h1,
.en_jobs main h1,
.en_social_listening main h1,
.en_social_walls main h1,
.en_privacy main h1,
.en_campaigns .container-fluid.custom-ratio-header h1,
.en_campaigns .inside-aspect-ratio h1 {
  font-size: clamp(2.5rem, 5vw, 3.8rem) !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.03em !important;
}

/* ---------- Párrafo hero unificado ---------- */
.es_campaigns .inside-aspect-ratio p,
.es_campaigns .container-fluid.custom-ratio-header p,
.es_case_studies .row.header p,
.es_prices .row.header p,
.es_resources .row.header p,
.es_affiliates_partners .row.header p,
.es_about_us .row.header p,
.es_jobs .row.header p,
.en_campaigns .inside-aspect-ratio p,
.en_campaigns .container-fluid.custom-ratio-header p,
.en_case_studies .row.header p,
.en_prices .row.header p,
.en_resources .row.header p,
.en_affiliates_partners .row.header p,
.en_about_us .row.header p,
.en_jobs .row.header p {
  font-size: 16px !important;
  line-height: 1.65 !important;
  max-width: 600px !important;
  opacity: 0.85 !important;
}

/* ---------- Colores hero — páginas con degradado azul ---------- */
.es_campaigns main h1,
.es_campaigns .inside-aspect-ratio p,
.es_case_studies .row.header h1,
.es_case_studies .row.header p,
.es_prices .row.header h1,
.es_prices main > .container:first-child h1,
.es_resources .row.header h1,
.es_resources .row.header p,
.en_campaigns main h1,
.en_campaigns .inside-aspect-ratio p,
.en_case_studies .row.header h1,
.en_case_studies .row.header p,
.en_prices .row.header h1,
.en_prices main > .container:first-child h1,
.en_resources .row.header h1,
.en_resources .row.header p {
  color: var(--ct-white) !important;
}

/* ---------- Colores hero — páginas con degradado rojo ---------- */
.es_affiliates_partners main > div:nth-child(2) .row.header h1,
.es_affiliates_partners main > div:nth-child(2) .row.header p,
.en_affiliates_partners main > div:nth-child(2) .row.header h1,
.en_affiliates_partners main > div:nth-child(2) .row.header p {
  color: var(--ct-white) !important;
}

/* ---------- Colores hero — páginas sin degradado (catálogo) ---------- */
.es_catalogue .row.header h1,
.en_catalogue .row.header h1 {
  color: var(--ct-text-dark) !important;
}

/* ---------- Espaciado hero unificado — .row.header ---------- */
.es_case_studies .row.header,
.es_resources .row.header,
.es_affiliates_partners .row.header,
.es_about_us .row.header,
.en_case_studies .row.header,
.en_resources .row.header,
.en_affiliates_partners .row.header,
.en_about_us .row.header {
  padding-top: 40px !important;
  padding-bottom: 20px !important;
}

/* ---------- H2 de secciones internas — unificado ---------- */
.es_campaigns main h2,
.es_catalogue main h2,
.es_case_studies main h2,
.es_prices main h2,
.es_resources main h2,
.es_affiliates_partners main h2,
.en_campaigns main h2,
.en_catalogue main h2,
.en_case_studies main h2,
.en_prices main h2,
.en_resources main h2,
.en_affiliates_partners main h2 {
  font-size: clamp(1.5rem, 2.8vw, 2rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  color: var(--ct-text-dark) !important;
}

/* --------------------------------------------------------------------------
   31.0 VARIABLES DE TEMA — Social Listening (lakegreen) & Social Wall (yellow)
   -------------------------------------------------------------------------- */
.lakegreen-theme {
  --ct-theme: #2EC4B6;
  --ct-theme-dark: #229e93;
  --ct-theme-light: #e8faf8;
  --ct-theme-glow: rgba(46, 196, 182, 0.15);
  --ct-theme-gradient-start: #A2E9E3;
  --ct-theme-gradient-end: #2EC4B6;
}

.yellow-theme {
  --ct-theme: #e6a429;
  --ct-theme-dark: #c88b1a;
  --ct-theme-light: #fdf6e8;
  --ct-theme-glow: rgba(230, 164, 41, 0.15);
  --ct-theme-gradient-start: #f3d59c;
  --ct-theme-gradient-end: #e6a429;
}

/* --------------------------------------------------------------------------
   31.1 HERO COMPARTIDO — Todas las subpáginas con .custom-ratio-header
   -------------------------------------------------------------------------- */
.container-fluid.custom-ratio-header {
  position: relative !important;
  overflow: hidden !important;
  padding: 72px 0 56px !important;
}

.container-fluid.custom-ratio-header h1,
.container-fluid.custom-ratio-header h2 {
  color: var(--ct-white) !important;
  font-weight: 800 !important;
  font-size: clamp(1.8rem, 3.5vw, 2.6rem) !important;
  letter-spacing: -0.03em !important;
  position: relative !important;
  z-index: 2 !important;
}

.container-fluid.custom-ratio-header p {
  color: rgba(255, 255, 255, 0.75) !important;
  font-size: 16px !important;
  max-width: 560px !important;
  line-height: 1.7 !important;
  position: relative !important;
  z-index: 2 !important;
}

.container-fluid.custom-ratio-header .pattern-header {
  opacity: 0.12 !important;
}

/* --------------------------------------------------------------------------
   31.2 POLYGON SECTIONS — Secciones decorativas compartidas
   -------------------------------------------------------------------------- */
.polygon {
  position: relative !important;
  overflow: hidden !important;
}

.polygon svg {
  opacity: 0.06 !important;
}

.left-form-container,
.right-form-container,
.left-chart-container {
  position: relative !important;
  z-index: 1 !important;
}

/* --------------------------------------------------------------------------
   31.3 CONTENT SECTIONS — Estilos compartidos para secciones de contenido
   -------------------------------------------------------------------------- */
.es_case_studies main > section,
.es_case_studies main > .container,
.es_about_us main > section,
.es_about_us main > .container,
.es_resources main > section,
.es_resources main > .container,
.es_social_listening main > section,
.es_social_listening main > .container,
.es_social_walls main > section,
.es_social_walls main > .container,
.es_jobs main > section,
.es_jobs main > .container,
.es_affiliates_partners main > section,
.es_affiliates_partners main > .container,
.es_privacy main > section,
.es_privacy main > .container,
.en_case_studies main > section,
.en_case_studies main > .container,
.en_about_us main > section,
.en_about_us main > .container,
.en_resources main > section,
.en_resources main > .container,
.en_social_listening main > section,
.en_social_listening main > .container,
.en_social_walls main > section,
.en_social_walls main > .container,
.en_jobs main > section,
.en_jobs main > .container,
.en_affiliates_partners main > section,
.en_affiliates_partners main > .container,
.en_privacy main > section,
.en_privacy main > .container {
  padding: 56px 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Títulos de sección en subpáginas */
.es_case_studies main h2,
.es_about_us main h2,
.es_resources main h2,
.es_jobs main h2,
.es_affiliates_partners main h2,
.es_privacy main h2,
.en_case_studies main h2,
.en_about_us main h2,
.en_resources main h2,
.en_jobs main h2,
.en_affiliates_partners main h2,
.en_privacy main h2 {
  font-size: clamp(1.5rem, 2.8vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark) !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 16px !important;
}

/* Subtítulos h3 */
.es_case_studies main h3,
.es_about_us main h3,
.es_resources main h3,
.es_jobs main h3,
.es_affiliates_partners main h3,
.es_privacy main h3,
.en_case_studies main h3,
.en_about_us main h3,
.en_resources main h3,
.en_jobs main h3,
.en_affiliates_partners main h3,
.en_privacy main h3 {
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  color: var(--ct-text-dark) !important;
  margin-bottom: 12px !important;
}

/* Párrafos en subpáginas */
.es_case_studies main p,
.es_about_us main p,
.es_resources main p,
.es_jobs main p,
.es_affiliates_partners main p,
.es_privacy main p,
.en_case_studies main p,
.en_about_us main p,
.en_resources main p,
.en_jobs main p,
.en_affiliates_partners main p,
.en_privacy main p {
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: var(--ct-text) !important;
}

/* Fondo blanco para secciones de contenido (debajo del hero gradient) */
.es_case_studies main > section,
.es_resources main > section,
.es_affiliates_partners main > section,
.en_case_studies main > section,
.en_resources main > section,
.en_affiliates_partners main > section {
  background: var(--ct-white) !important;
}

/* Secciones alternadas con fondo */
.es_case_studies main > section:nth-child(even),
.es_about_us main > section:nth-child(even),
.es_about_us main > .container-fluid:nth-of-type(even),
.es_affiliates_partners main > section:nth-child(even),
.en_case_studies main > section:nth-child(even),
.en_about_us main > section:nth-child(even),
.en_about_us main > .container-fluid:nth-of-type(even),
.en_affiliates_partners main > section:nth-child(even) {
  background: var(--ct-gray-50) !important;
}

/* --------------------------------------------------------------------------
   31.4 CASOS DE ÉXITO (.es_case_studies)
   -------------------------------------------------------------------------- */
/* Hero — gradient background via main pseudo-element */
.es_case_studies main,
.en_case_studies main {
  position: relative !important;
}

.es_case_studies main::before,
.en_case_studies main::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 520px !important;
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 55%, #2a3d7a 100%) !important;
  z-index: 0 !important;
}

.es_case_studies .container-fluid,
.en_case_studies .container-fluid {
  position: relative !important;
  z-index: 1 !important;
}

.es_case_studies main > .container,
.en_case_studies main > .container {
  position: relative !important;
  z-index: 1 !important;
}

/* Hero text white */
.es_case_studies .row.header h1,
.es_case_studies .row.header h2,
.es_case_studies .row.header h3,
.es_case_studies .row.header p,
.es_case_studies .row.header .col-md-7,
.en_case_studies .row.header h1,
.en_case_studies .row.header h2,
.en_case_studies .row.header h3,
.en_case_studies .row.header p,
.en_case_studies .row.header .col-md-7 {
  color: var(--ct-white) !important;
}

.es_case_studies .row.header p strong,
.en_case_studies .row.header p strong {
  color: var(--ct-white) !important;
}

/* Resetear .left-list cuando está DENTRO de un article-columna (testimoniales).
   La regla genérica .left-list (línea ~497) usa calc(50%-50vw) para full-bleed
   pero eso rompe cuando el .left-list está dentro de un flex col-lg-5. */
.es_case_studies article[class*=col-] .left-list,
.en_case_studies article[class*=col-] .left-list {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: none !important;
  width: 100% !important;
}

/* Logos de empresas en casos */
.es_case_studies .logos-companies,
.en_case_studies .logos-companies {
  padding: 40px 0 !important;
}

.es_case_studies .logos-companies img,
.en_case_studies .logos-companies img {
  filter: grayscale(100%) !important;
  opacity: 0.5 !important;
  transition: all 0.3s ease !important;
}

.es_case_studies .logos-companies img:hover,
.en_case_studies .logos-companies img:hover {
  filter: grayscale(0%) !important;
  opacity: 1 !important;
}

/* --------------------------------------------------------------------------
   31.5 QUIÉNES SOMOS (.es_about_us)
   -------------------------------------------------------------------------- */
/* Hero */
.es_about_us .container-fluid.custom-ratio-header,
.en_about_us .container-fluid.custom-ratio-header {
  background: linear-gradient(135deg, var(--ct-gray-900) 0%, #2a3050 50%, var(--ct-blue) 100%) !important;
}

/* Claim principal */
.es_about_us .claim-ct h2,
.es_about_us .claim-ct h1,
.en_about_us .claim-ct h2,
.en_about_us .claim-ct h1 {
  font-size: clamp(2rem, 4vw, 3rem) !important;
  font-weight: 900 !important;
  color: var(--ct-text-dark) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.03em !important;
}

/* Secciones con fondo alternado */
.es_about_us main > .container-fluid.polygon,
.en_about_us main > .container-fluid.polygon {
  padding: 64px 0 !important;
}

/* Imágenes con bordes redondeados */
.es_about_us main img,
.en_about_us main img {
  border-radius: var(--ct-radius-lg) !important;
  box-shadow: var(--ct-shadow-sm) !important;
}

/* Team / valores cards */
.es_about_us .center-list > div,
.en_about_us .center-list > div {
  padding: 24px !important;
}

.es_about_us .center-list h3,
.en_about_us .center-list h3 {
  color: var(--ct-blue) !important;
  font-weight: 700 !important;
}

/* --------------------------------------------------------------------------
   31.6 RECURSOS (.es_resources)
   -------------------------------------------------------------------------- */
/* Hero — gradient background via main pseudo-element */
.es_resources main,
.en_resources main {
  position: relative !important;
}

.es_resources main::before,
.en_resources main::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 480px !important;
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 55%, #2a3d7a 100%) !important;
  z-index: 0 !important;
}

.es_resources .container-fluid,
.en_resources .container-fluid {
  position: relative !important;
  z-index: 1 !important;
}

.es_resources main > .container,
.en_resources main > .container {
  position: relative !important;
  z-index: 1 !important;
}

/* Hero text white */
.es_resources .row.header h1,
.es_resources .row.header h2,
.es_resources .row.header h3,
.es_resources .row.header p,
.es_resources .row.header .col-md-7,
.es_resources .row.header .col-lg-7,
.en_resources .row.header h1,
.en_resources .row.header h2,
.en_resources .row.header h3,
.en_resources .row.header p,
.en_resources .row.header .col-md-7,
.en_resources .row.header .col-lg-7 {
  color: var(--ct-white) !important;
}

.es_resources .row.header p strong,
.en_resources .row.header p strong {
  color: var(--ct-white) !important;
}

/* Filter navbar — solo pastillas, sin borde contenedor */
.es_resources .navbar-filters,
.en_resources .navbar-filters {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 8px 0 !important;
  margin-bottom: 32px !important;
  box-shadow: none !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  justify-content: center !important;
  overflow: visible !important;
}

/* Guides container — layout 2/3 cards + 1/3 sidebar */
.es_resources .guides-section-container,
.en_resources .guides-section-container {
  display: grid !important;
  grid-template-columns: 2fr 1fr !important;
  gap: 32px !important;
  align-items: start !important;
}

.es_resources .guides-section-container > aside,
.en_resources .guides-section-container > aside {
  position: sticky !important;
  top: 80px !important;
}

.es_resources .navbar-filters .nav-link,
.es_resources .navbar-filters a,
.en_resources .navbar-filters .nav-link,
.en_resources .navbar-filters a {
  border-radius: var(--ct-radius-pill) !important;
  border: 1px solid var(--ct-gray-200) !important;
  padding: 10px 22px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--ct-text) !important;
  margin: 0 !important;
  transition: all 0.2s ease !important;
  background: var(--ct-white) !important;
}

.es_resources .navbar-filters .nav-link:hover,
.es_resources .navbar-filters a:hover,
.en_resources .navbar-filters .nav-link:hover,
.en_resources .navbar-filters a:hover {
  background: var(--ct-gray-50) !important;
  color: var(--ct-text-dark) !important;
  border-color: var(--ct-gray-300) !important;
}

.es_resources .navbar-filters .nav-link.active,
.es_resources .navbar-filters a.active,
.en_resources .navbar-filters .nav-link.active,
.en_resources .navbar-filters a.active {
  background: var(--ct-blue) !important;
  color: var(--ct-white) !important;
  border-color: var(--ct-blue) !important;
  box-shadow: 0 4px 15px rgba(68, 92, 173, 0.3) !important;
}

/* Resource cards grid — 2 columnas en desktop */
.es_resources .guides-section,
.en_resources .guides-section {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 24px !important;
}

.es_resources .guides-section > div,
.es_resources .guides-section article,
.en_resources .guides-section > div,
.en_resources .guides-section article {
  background: var(--ct-white) !important;
  border: 1px solid var(--ct-gray-200) !important;
  border-radius: var(--ct-radius-lg) !important;
  overflow: hidden !important;
  transition: all 0.3s var(--ct-ease) !important;
  box-shadow: var(--ct-shadow-xs) !important;
  max-width: 100% !important;
  width: 100% !important;
}

.es_resources .guides-section > div:hover,
.es_resources .guides-section article:hover,
.en_resources .guides-section > div:hover,
.en_resources .guides-section article:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--ct-shadow-md) !important;
  border-color: transparent !important;
}

.es_resources .guides-section img,
.en_resources .guides-section img {
  border-radius: var(--ct-radius-lg) var(--ct-radius-lg) 0 0 !important;
  width: 100% !important;
  object-fit: cover !important;
}

/* --------------------------------------------------------------------------
   31.7 SOCIAL LISTENING (.es_social_listening) — Tema Lakegreen
   -------------------------------------------------------------------------- */
/* Hero con gradiente lakegreen */
.es_social_listening .container-fluid.custom-ratio-header,
.en_social_listening .container-fluid.custom-ratio-header {
  background: linear-gradient(160deg, #0a2e2b 0%, #134e48 30%, var(--ct-theme-dark, #229e93) 60%, var(--ct-theme, #2EC4B6) 100%) !important;
}

.es_social_listening .container-fluid.custom-ratio-header::before,
.en_social_listening .container-fluid.custom-ratio-header::before {
  content: "" !important;
  position: absolute !important;
  top: -100px !important;
  right: -60px !important;
  width: 350px !important;
  height: 350px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(162, 233, 227, 0.25) 0%, transparent 70%) !important;
  pointer-events: none !important;
  animation: float 8s ease-in-out infinite !important;
}

/* Accent color en headings dentro de content */
.es_social_listening main h2,
.en_social_listening main h2 {
  font-size: clamp(1.5rem, 2.8vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark) !important;
}

.es_social_listening main h2::after,
.en_social_listening main h2::after {
  content: "" !important;
  display: block !important;
  width: 50px !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--ct-theme, #2EC4B6), var(--ct-theme-gradient-start, #A2E9E3)) !important;
  margin-top: 12px !important;
  border-radius: 2px !important;
}

/* Points section — fondo limpio con acento temático sutil */
.es_social_listening article[id*=points],
.en_social_listening article[id*=points] {
  padding: 64px 0 !important;
  background: linear-gradient(180deg, #f0faf9 0%, #e4f5f3 100%) !important;
  margin-top: -2px !important;
  position: relative !important;
}

.es_social_listening article[id*=points] h3,
.en_social_listening article[id*=points] h3 {
  color: var(--ct-text-dark, #1a1a2e) !important;
  font-weight: 700 !important;
  font-size: 1.15rem !important;
}

.es_social_listening article[id*=points] p,
.es_social_listening article[id*=points] span,
.es_social_listening article[id*=points] strong,
.en_social_listening article[id*=points] p,
.en_social_listening article[id*=points] span,
.en_social_listening article[id*=points] strong {
  color: var(--ct-text-muted, #555) !important;
}

/* Cards/items dentro de social listening */
.es_social_listening .center-list > div,
.es_social_listening article .col-md-4,
.en_social_listening .center-list > div,
.en_social_listening article .col-md-4 {
  padding: 24px !important;
}

.es_social_listening .center-list h3,
.es_social_listening article h3,
.en_social_listening .center-list h3,
.en_social_listening article h3 {
  color: var(--ct-theme, #2EC4B6) !important;
  font-weight: 700 !important;
  font-size: 1.15rem !important;
}

/* Links y CTAs en lakegreen */
.es_social_listening main a:not(.navbar a):not(.footer a),
.en_social_listening main a:not(.navbar a):not(.footer a) {
  color: var(--ct-theme, #2EC4B6) !important;
  font-weight: 600 !important;
}

.es_social_listening main a:not(.navbar a):not(.footer a):hover,
.en_social_listening main a:not(.navbar a):not(.footer a):hover {
  color: var(--ct-theme-dark, #229e93) !important;
}

/* Botones en lakegreen — incluir hero */
.es_social_listening .btn-primary,
.es_social_listening main .btn,
.es_social_listening .container-fluid.custom-ratio-header .btn,
.es_social_listening .inside-aspect-ratio .btn,
.en_social_listening .btn-primary,
.en_social_listening main .btn,
.en_social_listening .container-fluid.custom-ratio-header .btn,
.en_social_listening .inside-aspect-ratio .btn {
  background: var(--ct-theme, #2EC4B6) !important;
  color: var(--ct-white) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 14px 32px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  box-shadow: 0 4px 15px var(--ct-theme-glow, rgba(46, 196, 182, 0.35)) !important;
  transition: all 0.3s var(--ct-ease) !important;
}

.es_social_listening .btn-primary:hover,
.es_social_listening main .btn:hover,
.es_social_listening .container-fluid.custom-ratio-header .btn:hover,
.es_social_listening .inside-aspect-ratio .btn:hover,
.en_social_listening .btn-primary:hover,
.en_social_listening main .btn:hover,
.en_social_listening .container-fluid.custom-ratio-header .btn:hover,
.en_social_listening .inside-aspect-ratio .btn:hover {
  background: var(--ct-theme-dark, #229e93) !important;
  color: var(--ct-white) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px var(--ct-theme-glow, rgba(46, 196, 182, 0.45)) !important;
}

/* Polygon sections con accent lakegreen */
.es_social_listening .polygon .left-form-container,
.es_social_listening .polygon .right-form-container,
.en_social_listening .polygon .left-form-container,
.en_social_listening .polygon .right-form-container {
  background: linear-gradient(135deg, var(--ct-theme-light, #e8faf8) 0%, rgba(46, 196, 182, 0.05) 100%) !important;
  border-radius: var(--ct-radius-xl) !important;
  padding: 48px 32px !important;
}

/* Highlights — layout y estilo visual avanzado */
.es_social_listening article[id*=highlights] h2,
.en_social_listening article[id*=highlights] h2 {
  text-align: center !important;
}

.es_social_listening .highlights-left-list > div,
.en_social_listening .highlights-left-list > div {
  padding: 32px !important;
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl) !important;
  border: 1px solid var(--ct-gray-200) !important;
  margin-bottom: 24px !important;
  box-shadow: var(--ct-shadow-sm) !important;
  transition: all 0.3s ease !important;
}

.es_social_listening .highlights-left-list > div:hover,
.en_social_listening .highlights-left-list > div:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 30px rgba(46, 196, 182, 0.15) !important;
  border-color: var(--ct-theme, #2EC4B6) !important;
}

.es_social_listening .highlights-left-list h5,
.en_social_listening .highlights-left-list h5 {
  color: var(--ct-text-dark) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  margin-bottom: 12px !important;
}

.es_social_listening .highlights-left-list p,
.en_social_listening .highlights-left-list p {
  color: var(--ct-text, #4a5568) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

/* Override base white text: strong, links y spans deben ser oscuros sobre fondo blanco */
.es_social_listening .highlights-left-list strong,
.en_social_listening .highlights-left-list strong {
  color: var(--ct-text-dark) !important;
}

.es_social_listening .highlights-left-list a,
.es_social_listening .highlights-left-list .link-arrow-medium--svg,
.es_social_listening .highlights-left-list .link-arrow-medium--svg span,
.en_social_listening .highlights-left-list a,
.en_social_listening .highlights-left-list .link-arrow-medium--svg,
.en_social_listening .highlights-left-list .link-arrow-medium--svg span {
  color: var(--ct-theme, #2EC4B6) !important;
  border-bottom-color: rgba(46, 196, 182, 0.3) !important;
}

.es_social_listening .highlights-left-list a:hover,
.es_social_listening .highlights-left-list .link-arrow-medium--svg:hover,
.en_social_listening .highlights-left-list a:hover,
.en_social_listening .highlights-left-list .link-arrow-medium--svg:hover {
  color: var(--ct-theme-dark, #229e93) !important;
  border-bottom-color: var(--ct-theme, #2EC4B6) !important;
}

.es_social_listening .highlights-left-list svg,
.es_social_listening .highlights-left-list .link-arrow-medium--svg svg path,
.es_social_listening .highlights-left-list .link-arrow-medium--svg svg line,
.en_social_listening .highlights-left-list svg,
.en_social_listening .highlights-left-list .link-arrow-medium--svg svg path,
.en_social_listening .highlights-left-list .link-arrow-medium--svg svg line {
  stroke: var(--ct-theme, #2EC4B6) !important;
  fill: var(--ct-theme, #2EC4B6) !important;
  color: var(--ct-theme, #2EC4B6) !important;
}

/* Section alternating backgrounds — social listening */
.es_social_listening main > section:nth-of-type(odd),
.en_social_listening main > section:nth-of-type(odd) {
  background: var(--ct-white) !important;
}

.es_social_listening main > section:nth-of-type(even),
.en_social_listening main > section:nth-of-type(even) {
  background: var(--ct-theme-light, #e8faf8) !important;
}

/* Feature cards: points = tarjetas blancas con acento temático */
.es_social_listening .center-list > div,
.en_social_listening .center-list > div {
  background: var(--ct-white, #fff) !important;
  border-radius: var(--ct-radius-xl) !important;
  border: 1px solid rgba(46, 196, 182, 0.15) !important;
  box-shadow: 0 4px 20px rgba(46, 196, 182, 0.08) !important;
  transition: all 0.3s ease !important;
  margin-bottom: 16px !important;
  position: relative !important;
}

.es_social_listening .center-list > div:hover,
.en_social_listening .center-list > div:hover {
  background: var(--ct-white, #fff) !important;
  transform: translateY(-4px) !important;
  border-color: rgba(46, 196, 182, 0.3) !important;
  box-shadow: 0 8px 30px rgba(46, 196, 182, 0.14) !important;
}

.es_social_listening article[id*=types] .col-md-4,
.en_social_listening article[id*=types] .col-md-4 {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl) !important;
  border: 1px solid var(--ct-gray-200) !important;
  box-shadow: var(--ct-shadow-sm) !important;
  transition: all 0.3s ease !important;
  margin-bottom: 16px !important;
}

.es_social_listening article[id*=types] .col-md-4:hover,
.en_social_listening article[id*=types] .col-md-4:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 30px rgba(46, 196, 182, 0.12) !important;
  border-color: var(--ct-theme, #2EC4B6) !important;
}

/* Feature h4 styling */
.es_social_listening article h4,
.en_social_listening article h4 {
  color: var(--ct-text-dark) !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
  margin-bottom: 8px !important;
}

/* Polygon/decorative section: oculto para diseño limpio */
.es_social_listening .container-fluid:not(.custom-ratio-header),
.en_social_listening .container-fluid:not(.custom-ratio-header) {
  display: none !important;
}

/* Hide original polygon SVGs */
.es_social_listening .polygon svg,
.es_social_listening .container-fluid:not(.custom-ratio-header) > svg,
.en_social_listening .polygon svg,
.en_social_listening .container-fluid:not(.custom-ratio-header) > svg {
  display: none !important;
}

/* Spacers between sections */
.es_social_listening .w-100.mb-96,
.es_social_listening .w-100.mb-194,
.en_social_listening .w-100.mb-96,
.en_social_listening .w-100.mb-194 {
  display: none !important;
}

/* --------------------------------------------------------------------------
   31.8 SOCIAL WALLS (.es_social_walls) — Tema Yellow
   -------------------------------------------------------------------------- */
/* Hero con gradiente yellow/gold */
.es_social_walls .container-fluid.custom-ratio-header,
.en_social_walls .container-fluid.custom-ratio-header {
  background: linear-gradient(160deg, #3d2a00 0%, #7a5500 30%, var(--ct-theme-dark, #c88b1a) 60%, var(--ct-theme, #e6a429) 100%) !important;
}

.es_social_walls .container-fluid.custom-ratio-header::before,
.en_social_walls .container-fluid.custom-ratio-header::before {
  content: "" !important;
  position: absolute !important;
  top: -100px !important;
  right: -60px !important;
  width: 350px !important;
  height: 350px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(243, 213, 156, 0.3) 0%, transparent 70%) !important;
  pointer-events: none !important;
  animation: float 8s ease-in-out infinite !important;
}

/* Accent color en headings */
.es_social_walls main h2,
.en_social_walls main h2 {
  font-size: clamp(1.5rem, 2.8vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark) !important;
}

.es_social_walls main h2::after,
.en_social_walls main h2::after {
  content: "" !important;
  display: block !important;
  width: 50px !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--ct-theme, #e6a429), var(--ct-theme-gradient-start, #f3d59c)) !important;
  margin-top: 12px !important;
  border-radius: 2px !important;
}

/* Points section — fondo limpio con acento temático sutil */
.es_social_walls article[id*=points],
.en_social_walls article[id*=points] {
  padding: 64px 0 !important;
  background: linear-gradient(180deg, #fdf8ef 0%, #faf1de 100%) !important;
  margin-top: -2px !important;
  position: relative !important;
}

.es_social_walls article[id*=points] h3,
.en_social_walls article[id*=points] h3 {
  color: var(--ct-text-dark, #1a1a2e) !important;
  font-weight: 700 !important;
  font-size: 1.15rem !important;
}

.es_social_walls article[id*=points] p,
.es_social_walls article[id*=points] span,
.es_social_walls article[id*=points] strong,
.en_social_walls article[id*=points] p,
.en_social_walls article[id*=points] span,
.en_social_walls article[id*=points] strong {
  color: var(--ct-text-muted, #555) !important;
}

/* Cards/items */
.es_social_walls .center-list > div,
.es_social_walls article .col-md-4,
.es_social_walls article .col-sm-6,
.en_social_walls .center-list > div,
.en_social_walls article .col-md-4,
.en_social_walls article .col-sm-6 {
  padding: 24px !important;
}

.es_social_walls .center-list h3,
.es_social_walls article h3,
.en_social_walls .center-list h3,
.en_social_walls article h3 {
  color: var(--ct-theme, #e6a429) !important;
  font-weight: 700 !important;
  font-size: 1.15rem !important;
}

/* Links y CTAs en yellow */
.es_social_walls main a:not(.navbar a):not(.footer a),
.en_social_walls main a:not(.navbar a):not(.footer a) {
  color: var(--ct-theme, #e6a429) !important;
  font-weight: 600 !important;
}

.es_social_walls main a:not(.navbar a):not(.footer a):hover,
.en_social_walls main a:not(.navbar a):not(.footer a):hover {
  color: var(--ct-theme-dark, #c88b1a) !important;
}

/* Botones en yellow — incluir hero */
.es_social_walls .btn-primary,
.es_social_walls main .btn,
.es_social_walls .container-fluid.custom-ratio-header .btn,
.es_social_walls .inside-aspect-ratio .btn,
.en_social_walls .btn-primary,
.en_social_walls main .btn,
.en_social_walls .container-fluid.custom-ratio-header .btn,
.en_social_walls .inside-aspect-ratio .btn {
  background: var(--ct-theme, #e6a429) !important;
  color: var(--ct-white) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 14px 32px !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  box-shadow: 0 4px 15px var(--ct-theme-glow, rgba(230, 164, 41, 0.35)) !important;
  transition: all 0.3s var(--ct-ease) !important;
}

.es_social_walls .btn-primary:hover,
.es_social_walls main .btn:hover,
.es_social_walls .container-fluid.custom-ratio-header .btn:hover,
.es_social_walls .inside-aspect-ratio .btn:hover,
.en_social_walls .btn-primary:hover,
.en_social_walls main .btn:hover,
.en_social_walls .container-fluid.custom-ratio-header .btn:hover,
.en_social_walls .inside-aspect-ratio .btn:hover {
  background: var(--ct-theme-dark, #c88b1a) !important;
  color: var(--ct-white) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px var(--ct-theme-glow, rgba(230, 164, 41, 0.45)) !important;
}

/* Polygon sections con accent yellow */
.es_social_walls .polygon .left-form-container,
.es_social_walls .polygon .right-form-container,
.en_social_walls .polygon .left-form-container,
.en_social_walls .polygon .right-form-container {
  background: linear-gradient(135deg, var(--ct-theme-light, #fdf6e8) 0%, rgba(230, 164, 41, 0.05) 100%) !important;
  border-radius: var(--ct-radius-xl) !important;
  padding: 48px 32px !important;
}

/* Highlights — layout y estilo visual avanzado */
.es_social_walls article[id*=highlights] h2,
.en_social_walls article[id*=highlights] h2 {
  text-align: center !important;
}

.es_social_walls .highlights-left-list > div,
.en_social_walls .highlights-left-list > div {
  padding: 32px !important;
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl) !important;
  border: 1px solid var(--ct-gray-200) !important;
  margin-bottom: 24px !important;
  box-shadow: var(--ct-shadow-sm) !important;
  transition: all 0.3s ease !important;
}

.es_social_walls .highlights-left-list > div:hover,
.en_social_walls .highlights-left-list > div:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 30px rgba(230, 164, 41, 0.15) !important;
  border-color: var(--ct-theme, #e6a429) !important;
}

.es_social_walls .highlights-left-list h5,
.en_social_walls .highlights-left-list h5 {
  color: var(--ct-text-dark) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  margin-bottom: 12px !important;
}

.es_social_walls .highlights-left-list p,
.en_social_walls .highlights-left-list p {
  color: var(--ct-text, #4a5568) !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

/* Override base white text: strong, links y spans deben ser oscuros sobre fondo blanco */
.es_social_walls .highlights-left-list strong,
.en_social_walls .highlights-left-list strong {
  color: var(--ct-text-dark) !important;
}

.es_social_walls .highlights-left-list a,
.es_social_walls .highlights-left-list .link-arrow-medium--svg,
.es_social_walls .highlights-left-list .link-arrow-medium--svg span,
.en_social_walls .highlights-left-list a,
.en_social_walls .highlights-left-list .link-arrow-medium--svg,
.en_social_walls .highlights-left-list .link-arrow-medium--svg span {
  color: var(--ct-theme, #e6a429) !important;
  border-bottom-color: rgba(230, 164, 41, 0.3) !important;
}

.es_social_walls .highlights-left-list a:hover,
.es_social_walls .highlights-left-list .link-arrow-medium--svg:hover,
.en_social_walls .highlights-left-list a:hover,
.en_social_walls .highlights-left-list .link-arrow-medium--svg:hover {
  color: var(--ct-theme-dark, #c88b1a) !important;
  border-bottom-color: var(--ct-theme, #e6a429) !important;
}

.es_social_walls .highlights-left-list svg,
.es_social_walls .highlights-left-list .link-arrow-medium--svg svg path,
.es_social_walls .highlights-left-list .link-arrow-medium--svg svg line,
.en_social_walls .highlights-left-list svg,
.en_social_walls .highlights-left-list .link-arrow-medium--svg svg path,
.en_social_walls .highlights-left-list .link-arrow-medium--svg svg line {
  stroke: var(--ct-theme, #e6a429) !important;
  fill: var(--ct-theme, #e6a429) !important;
  color: var(--ct-theme, #e6a429) !important;
}

/* Section alternating backgrounds — social walls */
.es_social_walls main > section:nth-of-type(odd),
.en_social_walls main > section:nth-of-type(odd) {
  background: var(--ct-white) !important;
}

.es_social_walls main > section:nth-of-type(even),
.en_social_walls main > section:nth-of-type(even) {
  background: var(--ct-theme-light, #fdf6e8) !important;
}

/* Feature cards: points = tarjetas blancas con acento temático */
.es_social_walls .center-list > div,
.es_social_walls article[id*=points] .col-md-4,
.es_social_walls article[id*=points] .col-sm-6,
.en_social_walls .center-list > div,
.en_social_walls article[id*=points] .col-md-4,
.en_social_walls article[id*=points] .col-sm-6 {
  background: var(--ct-white, #fff) !important;
  border-radius: var(--ct-radius-xl) !important;
  border: 1px solid rgba(230, 164, 41, 0.15) !important;
  box-shadow: 0 4px 20px rgba(230, 164, 41, 0.08) !important;
  transition: all 0.3s ease !important;
  margin-bottom: 16px !important;
  position: relative !important;
}

.es_social_walls .center-list > div:hover,
.es_social_walls article[id*=points] .col-md-4:hover,
.es_social_walls article[id*=points] .col-sm-6:hover,
.en_social_walls .center-list > div:hover,
.en_social_walls article[id*=points] .col-md-4:hover,
.en_social_walls article[id*=points] .col-sm-6:hover {
  background: var(--ct-white, #fff) !important;
  transform: translateY(-4px) !important;
  border-color: rgba(230, 164, 41, 0.3) !important;
  box-shadow: 0 8px 30px rgba(230, 164, 41, 0.14) !important;
}

/* Step cards: top accent border + counter numbers */
.es_social_walls article[id*=points] .center-list,
.en_social_walls article[id*=points] .center-list,
.es_social_listening article[id*=points] .center-list,
.en_social_listening article[id*=points] .center-list {
  counter-reset: step-counter !important;
}

.es_social_walls article[id*=points] .center-list > .col-md-4,
.en_social_walls article[id*=points] .center-list > .col-md-4 {
  border-top: 3px solid var(--ct-theme, #e6a429) !important;
  counter-increment: step-counter !important;
}

.es_social_walls article[id*=points] .center-list > .col-md-4::before,
.en_social_walls article[id*=points] .center-list > .col-md-4::before {
  content: counter(step-counter) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: var(--ct-theme, #e6a429) !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  margin: 0 auto 12px !important;
}

.es_social_listening article[id*=points] .center-list > .col-md-4,
.en_social_listening article[id*=points] .center-list > .col-md-4 {
  border-top: 3px solid var(--ct-theme, #2EC4B6) !important;
  counter-increment: step-counter !important;
}

.es_social_listening article[id*=points] .center-list > .col-md-4::before,
.en_social_listening article[id*=points] .center-list > .col-md-4::before {
  content: counter(step-counter) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: var(--ct-theme, #2EC4B6) !important;
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  margin: 0 auto 12px !important;
}

/* Feature h4 styling */
.es_social_walls article h4,
.en_social_walls article h4 {
  color: var(--ct-text-dark) !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
  margin-bottom: 8px !important;
}

/* Polygon/decorative section: oculto para diseño limpio */
.es_social_walls .container-fluid:not(.custom-ratio-header),
.en_social_walls .container-fluid:not(.custom-ratio-header) {
  display: none !important;
}

/* Hide original polygon SVGs */
.es_social_walls .polygon svg,
.es_social_walls .container-fluid:not(.custom-ratio-header) > svg,
.en_social_walls .polygon svg,
.en_social_walls .container-fluid:not(.custom-ratio-header) > svg {
  display: none !important;
}

/* Spacers between sections */
.es_social_walls .w-100.mb-96,
.es_social_walls .w-100.mb-194,
.en_social_walls .w-100.mb-96,
.en_social_walls .w-100.mb-194 {
  display: none !important;
}

/* --------------------------------------------------------------------------
   31.9 EMPLEO (.es_jobs)
   -------------------------------------------------------------------------- */
/* Hero */
.es_jobs .container-fluid.custom-ratio-header,
.en_jobs .container-fluid.custom-ratio-header {
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 55%, #2a3d7a 100%) !important;
}

/* Main container */
.es_jobs main > .container,
.en_jobs main > .container {
  padding: 56px 0 !important;
}

/* Título principal */
.es_jobs main h1,
.en_jobs main h1 {
  font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
  font-weight: 900 !important;
  color: var(--ct-text-dark) !important;
  margin-bottom: 32px !important;
  position: relative !important;
}

.es_jobs main h1::after,
.en_jobs main h1::after {
  content: "" !important;
  display: block !important;
  width: 60px !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--ct-red), var(--ct-blue)) !important;
  margin-top: 16px !important;
  border-radius: 2px !important;
}

/* Job art (imagen lateral) */
.es_jobs .job-art,
.en_jobs .job-art {
  border-radius: var(--ct-radius-xl) !important;
  overflow: hidden !important;
}

.es_jobs .job-art img,
.en_jobs .job-art img {
  border-radius: var(--ct-radius-xl) !important;
  box-shadow: var(--ct-shadow) !important;
}

/* Job cards */
.es_jobs .card.jobs,
.es_jobs .card-body.jobs,
.en_jobs .card.jobs,
.en_jobs .card-body.jobs {
  background: var(--ct-white) !important;
  border: 1px solid var(--ct-gray-200) !important;
  border-radius: var(--ct-radius-lg) !important;
  padding: 24px !important;
  margin-bottom: 16px !important;
  transition: all 0.3s var(--ct-ease) !important;
  box-shadow: var(--ct-shadow-xs) !important;
}

.es_jobs .card.jobs:hover,
.es_jobs .card-body.jobs:hover,
.en_jobs .card.jobs:hover,
.en_jobs .card-body.jobs:hover {
  border-color: var(--ct-blue) !important;
  box-shadow: var(--ct-shadow-sm) !important;
}

/* Collapse triggers */
.es_jobs [data-toggle=collapse],
.es_jobs [data-bs-toggle=collapse],
.en_jobs [data-toggle=collapse],
.en_jobs [data-bs-toggle=collapse] {
  cursor: pointer !important;
  color: var(--ct-blue) !important;
  font-weight: 600 !important;
  font-size: 1.1rem !important;
  transition: color 0.2s ease !important;
}

.es_jobs [data-toggle=collapse]:hover,
.es_jobs [data-bs-toggle=collapse]:hover,
.en_jobs [data-toggle=collapse]:hover,
.en_jobs [data-bs-toggle=collapse]:hover {
  color: var(--ct-blue-dark) !important;
}

/* Collapsed content */
.es_jobs .collapse .card-body,
.en_jobs .collapse .card-body {
  border-top: 1px solid var(--ct-gray-100) !important;
  padding-top: 20px !important;
  margin-top: 16px !important;
}

/* CTA de empleo */
.es_jobs .btn-primary,
.en_jobs .btn-primary {
  background: var(--ct-blue) !important;
  color: var(--ct-white) !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 14px 36px !important;
  font-weight: 700 !important;
  border: none !important;
  box-shadow: 0 4px 15px rgba(68, 92, 173, 0.35) !important;
  transition: all 0.3s var(--ct-ease) !important;
}

.es_jobs .btn-primary:hover,
.en_jobs .btn-primary:hover {
  background: var(--ct-blue-dark) !important;
  color: var(--ct-white) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(68, 92, 173, 0.45) !important;
}

/* --------------------------------------------------------------------------
   31.10 AFILIADOS (.es_affiliates_partners)
   -------------------------------------------------------------------------- */
/* Hero — gradient background via main pseudo-element */
.es_affiliates_partners main,
.en_affiliates_partners main {
  position: relative !important;
}

.es_affiliates_partners main::before,
.en_affiliates_partners main::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 520px !important;
  background: linear-gradient(135deg, var(--ct-red) 0%, var(--ct-red-dark, #a3052e) 55%, #5a1020 100%) !important;
  z-index: 0 !important;
}

.es_affiliates_partners .container-fluid,
.en_affiliates_partners .container-fluid {
  position: relative !important;
  z-index: 1 !important;
}

.es_affiliates_partners main > .container:first-of-type,
.en_affiliates_partners main > .container:first-of-type {
  position: relative !important;
  z-index: 1 !important;
}

/* Hero text white — SOLO el hero (2º hijo de main, sobre fondo degradado rojo) */
.es_affiliates_partners main > div:nth-child(2) .row.header h1,
.es_affiliates_partners main > div:nth-child(2) .row.header h2,
.es_affiliates_partners main > div:nth-child(2) .row.header h3,
.es_affiliates_partners main > div:nth-child(2) .row.header p,
.es_affiliates_partners main > div:nth-child(2) .row.header .col-md-7,
.en_affiliates_partners main > div:nth-child(2) .row.header h1,
.en_affiliates_partners main > div:nth-child(2) .row.header h2,
.en_affiliates_partners main > div:nth-child(2) .row.header h3,
.en_affiliates_partners main > div:nth-child(2) .row.header p,
.en_affiliates_partners main > div:nth-child(2) .row.header .col-md-7 {
  color: var(--ct-white) !important;
}

.es_affiliates_partners main > div:nth-child(2) .row.header p strong,
.en_affiliates_partners main > div:nth-child(2) .row.header p strong {
  color: var(--ct-white) !important;
}

/* Hero — reducir espacio superior (mb-96 spacer) */
.es_affiliates_partners main > div:nth-child(2) .w-100.mb-96,
.en_affiliates_partners main > div:nth-child(2) .w-100.mb-96 {
  margin-bottom: 0 !important;
}

.es_affiliates_partners main > div:nth-child(2),
.en_affiliates_partners main > div:nth-child(2) {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

.es_affiliates_partners main > div:nth-child(2) .row.header,
.en_affiliates_partners main > div:nth-child(2) .row.header {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

/* Botones CTA independientes (los de .m-auto debajo de bloques de tarjetas) — centrado */
.es_affiliates_partners .row > .m-auto:has(.btn-primary),
.en_affiliates_partners .row > .m-auto:has(.btn-primary) {
  display: flex !important;
  justify-content: center !important;
  flex: 0 0 100% !important;
  max-width: 100% !important;
  margin-top: 24px !important;
  margin-bottom: 8px !important;
}

/* Botones dentro de .row.align-items-center (junto a textos en el header) — NO expandir */
.es_affiliates_partners .row.align-items-center .col-lg-3:has(.btn-primary),
.en_affiliates_partners .row.align-items-center .col-lg-3:has(.btn-primary) {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.es_affiliates_partners main .btn-primary,
.en_affiliates_partners main .btn-primary {
  display: inline-block !important;
  text-align: center !important;
  max-width: none !important;
  width: auto !important;
  padding: 16px 48px !important;
  white-space: nowrap !important;
}

/* Benefits cards */
.es_affiliates_partners .left-list > div,
.es_affiliates_partners .center-list > div,
.en_affiliates_partners .left-list > div,
.en_affiliates_partners .center-list > div {
  padding: 24px 16px !important;
}

.es_affiliates_partners .left-list h3,
.es_affiliates_partners .center-list h3,
.en_affiliates_partners .left-list h3,
.en_affiliates_partners .center-list h3 {
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  color: var(--ct-text-dark) !important;
  margin-bottom: 8px !important;
}

/* Partner cards grid — cada columna es flex-column para que tarjeta + texto quepan */
.es_affiliates_partners .col-lg-4.col-md-6,
.en_affiliates_partners .col-lg-4.col-md-6 {
  margin-bottom: 24px !important;
  display: flex !important;
  flex-direction: column !important;
}

.es_affiliates_partners .col-lg-4.col-md-6 > div:first-child,
.en_affiliates_partners .col-lg-4.col-md-6 > div:first-child {
  background: var(--ct-white) !important;
  border: 1px solid var(--ct-gray-200) !important;
  border-radius: var(--ct-radius-lg) !important;
  padding: 28px 24px !important;
  flex: 1 1 auto !important;
  transition: all 0.3s var(--ct-ease) !important;
  box-shadow: var(--ct-shadow-xs) !important;
}

.es_affiliates_partners .col-lg-4.col-md-6 > p,
.en_affiliates_partners .col-lg-4.col-md-6 > p {
  margin-top: 16px !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  color: var(--ct-text) !important;
}

.es_affiliates_partners .col-lg-4.col-md-6 > div:first-child:hover,
.en_affiliates_partners .col-lg-4.col-md-6 > div:first-child:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--ct-shadow-md) !important;
  border-color: transparent !important;
}

/* Título con accent */
.es_affiliates_partners .title-bottom h2,
.es_affiliates_partners .title-bottom h3,
.en_affiliates_partners .title-bottom h2,
.en_affiliates_partners .title-bottom h3 {
  position: relative !important;
}

/* CTA principal */
.es_affiliates_partners .btn-primary,
.en_affiliates_partners .btn-primary {
  background: var(--ct-red) !important;
  color: var(--ct-white) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill) !important;
  padding: 16px 40px !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  box-shadow: 0 4px 15px rgba(219, 7, 60, 0.35) !important;
  transition: all 0.3s var(--ct-ease) !important;
}

.es_affiliates_partners .btn-primary:hover,
.en_affiliates_partners .btn-primary:hover {
  background: var(--ct-red-dark) !important;
  color: var(--ct-white) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(219, 7, 60, 0.45) !important;
}

/* Imágenes */
.es_affiliates_partners main img,
.en_affiliates_partners main img {
  border-radius: var(--ct-radius-lg) !important;
}

/* --------------------------------------------------------------------------
   31.11 POLÍTICA DE PRIVACIDAD (.es_privacy)
   -------------------------------------------------------------------------- */
/* Hero */
.es_privacy .container-fluid.custom-ratio-header,
.en_privacy .container-fluid.custom-ratio-header {
  background: linear-gradient(135deg, var(--ct-gray-900) 0%, var(--ct-gray-800) 50%, var(--ct-gray-700) 100%) !important;
}

/* Content container */
.es_privacy main > .container,
.en_privacy main > .container {
  max-width: 860px !important;
  padding: 56px 24px !important;
}

/* Prose styling for legal text */
.es_privacy main h2,
.en_privacy main h2 {
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  color: var(--ct-text-dark) !important;
  margin: 40px 0 16px !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid var(--ct-gray-100) !important;
}

.es_privacy main h3,
.en_privacy main h3 {
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  color: var(--ct-text-dark) !important;
  margin: 24px 0 10px !important;
}

.es_privacy main p,
.en_privacy main p {
  font-size: 15px !important;
  line-height: 1.8 !important;
  color: var(--ct-text) !important;
  margin-bottom: 16px !important;
}

.es_privacy main ul,
.es_privacy main ol,
.en_privacy main ul,
.en_privacy main ol {
  padding-left: 24px !important;
  margin-bottom: 16px !important;
}

.es_privacy main li,
.en_privacy main li {
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: var(--ct-text) !important;
  margin-bottom: 8px !important;
}

.es_privacy main a,
.en_privacy main a {
  color: var(--ct-blue) !important;
  text-decoration: underline !important;
  text-decoration-color: transparent !important;
  transition: text-decoration-color 0.2s ease !important;
}

.es_privacy main a:hover,
.en_privacy main a:hover {
  text-decoration-color: var(--ct-blue) !important;
}

/* --------------------------------------------------------------------------
   31.12 RESPONSIVE SUBPÁGINAS
   -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  .container-fluid.custom-ratio-header {
    padding: 56px 0 44px !important;
  }
  .es_case_studies main > section,
  .es_case_studies main > .container,
  .en_case_studies main > section,
  .en_case_studies main > .container,
  .es_about_us main > section,
  .es_about_us main > .container,
  .en_about_us main > section,
  .en_about_us main > .container,
  .es_resources main > section,
  .es_resources main > .container,
  .en_resources main > section,
  .en_resources main > .container,
  .es_social_listening main > section,
  .es_social_listening main > .container,
  .en_social_listening main > section,
  .en_social_listening main > .container,
  .es_social_walls main > section,
  .es_social_walls main > .container,
  .en_social_walls main > section,
  .en_social_walls main > .container,
  .es_jobs main > section,
  .es_jobs main > .container,
  .en_jobs main > section,
  .en_jobs main > .container,
  .es_affiliates_partners main > section,
  .es_affiliates_partners main > .container,
  .en_affiliates_partners main > section,
  .en_affiliates_partners main > .container,
  .es_privacy main > section,
  .es_privacy main > .container,
  .en_privacy main > section,
  .en_privacy main > .container {
    padding: 40px 0 !important;
  }
  /* Recursos: layout apilado en tablet */
  .es_resources .guides-section-container,
  .en_resources .guides-section-container {
    display: flex !important;
    flex-direction: column !important;
  }
  .es_resources .guides-section-container > aside,
  .en_resources .guides-section-container > aside {
    order: 2 !important;
    width: 100% !important;
    position: static !important;
    margin-top: 32px !important;
  }
  .es_resources .guides-section,
  .en_resources .guides-section {
    grid-template-columns: repeat(2, 1fr) !important;
    order: 1 !important;
    width: 100% !important;
  }
}
@media (max-width: 767px) {
  .container-fluid.custom-ratio-header {
    padding: 44px 16px 36px !important;
  }
  .container-fluid.custom-ratio-header h1,
  .container-fluid.custom-ratio-header h2 {
    font-size: 1.6rem !important;
  }
  .es_case_studies main > section,
  .es_case_studies main > .container,
  .en_case_studies main > section,
  .en_case_studies main > .container,
  .es_about_us main > section,
  .es_about_us main > .container,
  .en_about_us main > section,
  .en_about_us main > .container,
  .es_resources main > section,
  .es_resources main > .container,
  .en_resources main > section,
  .en_resources main > .container,
  .es_social_listening main > section,
  .es_social_listening main > .container,
  .en_social_listening main > section,
  .en_social_listening main > .container,
  .es_social_walls main > section,
  .es_social_walls main > .container,
  .en_social_walls main > section,
  .en_social_walls main > .container,
  .es_jobs main > section,
  .es_jobs main > .container,
  .en_jobs main > section,
  .en_jobs main > .container,
  .es_affiliates_partners main > section,
  .es_affiliates_partners main > .container,
  .en_affiliates_partners main > section,
  .en_affiliates_partners main > .container,
  .es_privacy main > section,
  .es_privacy main > .container,
  .en_privacy main > section,
  .en_privacy main > .container {
    padding: 32px 0 !important;
  }
  /* Recursos: layout apilado en mobile */
  .es_resources .guides-section-container,
  .en_resources .guides-section-container {
    display: flex !important;
    flex-direction: column !important;
  }
  .es_resources .guides-section-container > aside,
  .en_resources .guides-section-container > aside {
    order: 2 !important;
    width: 100% !important;
    position: static !important;
    margin-top: 32px !important;
  }
  .es_resources .guides-section,
  .en_resources .guides-section {
    grid-template-columns: 1fr !important;
    order: 1 !important;
    width: 100% !important;
  }
  .es_privacy main > .container,
  .en_privacy main > .container {
    padding: 32px 16px !important;
  }
}
/* ==========================================================================
   INTERNAL PAGES REDESIGN — Subpáginas de Social Listening & Social Walls
   Pages: monitorizacion-marca, social-analytics, social-listening,
          social-walls-corporativos, social-walls-eventos
   Todas comparten estructura idéntica: Hero + Features grid + Checklist +
   Case studies con SVG decorativos
   ========================================================================== */
/* --- Selector base combinado para las 5 páginas --- */
.es_brand_monitoring,
.es_social_analytics,
.es_more_social_listening,
.es_social_walls_corporate,
.es_social_walls_events,
.en_brand_monitoring,
.en_social_analytics,
.en_more_social_listening,
.en_social_walls_corporate,
.en_social_walls_events {
  background: var(--ct-off-white, #f8f9fa) !important;
}

/* ===== HERO SECTION ===== */
/* El hero se compone de: main > .container-fluid (SVG bg) + main > .container (contenido) */
/* Hero: gradiente de fondo temático con overlay */
/* Gradiente consistente con las landing pages principales */
.es_brand_monitoring main > .container-fluid:first-child,
.es_social_analytics main > .container-fluid:first-child,
.es_more_social_listening main > .container-fluid:first-child,
.en_brand_monitoring main > .container-fluid:first-child,
.en_social_analytics main > .container-fluid:first-child,
.en_more_social_listening main > .container-fluid:first-child {
  background: linear-gradient(160deg, #0a2e2b 0%, #134e48 30%, #229e93 60%, var(--ct-theme, #2EC4B6) 100%) !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 640px !important;
  z-index: 0 !important;
  overflow: hidden !important;
}

.es_social_walls_corporate main > .container-fluid:first-child,
.es_social_walls_events main > .container-fluid:first-child,
.en_social_walls_corporate main > .container-fluid:first-child,
.en_social_walls_events main > .container-fluid:first-child {
  background: linear-gradient(160deg, #3d2800 0%, #7a5500 30%, #c88b1a 60%, var(--ct-theme, #e6a429) 100%) !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 640px !important;
  z-index: 0 !important;
  overflow: hidden !important;
}

/* Ocultar SVG decorativos originales del hero */
.es_brand_monitoring main > .container-fluid:first-child .right-form-container,
.es_social_analytics main > .container-fluid:first-child .right-form-container,
.es_more_social_listening main > .container-fluid:first-child .right-form-container,
.es_social_walls_corporate main > .container-fluid:first-child .right-form-container,
.es_social_walls_events main > .container-fluid:first-child .right-form-container,
.en_brand_monitoring main > .container-fluid:first-child .right-form-container,
.en_social_analytics main > .container-fluid:first-child .right-form-container,
.en_more_social_listening main > .container-fluid:first-child .right-form-container,
.en_social_walls_corporate main > .container-fluid:first-child .right-form-container,
.en_social_walls_events main > .container-fluid:first-child .right-form-container {
  opacity: 0.15 !important;
}

/* Hero content container */
.es_brand_monitoring main > .container:nth-child(2),
.es_social_analytics main > .container:nth-child(2),
.es_more_social_listening main > .container:nth-child(2),
.es_social_walls_corporate main > .container:nth-child(2),
.es_social_walls_events main > .container:nth-child(2),
.en_brand_monitoring main > .container:nth-child(2),
.en_social_analytics main > .container:nth-child(2),
.en_more_social_listening main > .container:nth-child(2),
.en_social_walls_corporate main > .container:nth-child(2),
.en_social_walls_events main > .container:nth-child(2) {
  position: relative !important;
  z-index: 1 !important;
  padding-top: 72px !important;
  padding-bottom: 56px !important;
  min-height: 540px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

/* Hero spacer */
.es_brand_monitoring main > .container:nth-child(2) .mb-96,
.es_social_analytics main > .container:nth-child(2) .mb-96,
.es_more_social_listening main > .container:nth-child(2) .mb-96,
.es_social_walls_corporate main > .container:nth-child(2) .mb-96,
.es_social_walls_events main > .container:nth-child(2) .mb-96,
.en_brand_monitoring main > .container:nth-child(2) .mb-96,
.en_social_analytics main > .container:nth-child(2) .mb-96,
.en_more_social_listening main > .container:nth-child(2) .mb-96,
.en_social_walls_corporate main > .container:nth-child(2) .mb-96,
.en_social_walls_events main > .container:nth-child(2) .mb-96 {
  display: none !important;
}

/* Hero H1 — blanco, grande, elegante */
.es_brand_monitoring main > .container:nth-child(2) h1,
.es_social_analytics main > .container:nth-child(2) h1,
.es_more_social_listening main > .container:nth-child(2) h1,
.es_social_walls_corporate main > .container:nth-child(2) h1,
.es_social_walls_events main > .container:nth-child(2) h1,
.en_brand_monitoring main > .container:nth-child(2) h1,
.en_social_analytics main > .container:nth-child(2) h1,
.en_more_social_listening main > .container:nth-child(2) h1,
.en_social_walls_corporate main > .container:nth-child(2) h1,
.en_social_walls_events main > .container:nth-child(2) h1 {
  color: var(--ct-white) !important;
  font-size: clamp(1.8rem, 3.5vw, 2.6rem) !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  margin-bottom: 20px !important;
  letter-spacing: -0.03em !important;
}

/* Hero párrafo */
.es_brand_monitoring main > .container:nth-child(2) p,
.es_social_analytics main > .container:nth-child(2) p,
.es_more_social_listening main > .container:nth-child(2) p,
.es_social_walls_corporate main > .container:nth-child(2) p,
.es_social_walls_events main > .container:nth-child(2) p,
.en_brand_monitoring main > .container:nth-child(2) p,
.en_social_analytics main > .container:nth-child(2) p,
.en_more_social_listening main > .container:nth-child(2) p,
.en_social_walls_corporate main > .container:nth-child(2) p,
.en_social_walls_events main > .container:nth-child(2) p {
  color: rgba(255, 255, 255, 0.75) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  max-width: 600px !important;
}

/* Hero strong */
.es_brand_monitoring main > .container:nth-child(2) strong,
.es_social_analytics main > .container:nth-child(2) strong,
.es_more_social_listening main > .container:nth-child(2) strong,
.es_social_walls_corporate main > .container:nth-child(2) strong,
.es_social_walls_events main > .container:nth-child(2) strong,
.en_brand_monitoring main > .container:nth-child(2) strong,
.en_social_analytics main > .container:nth-child(2) strong,
.en_more_social_listening main > .container:nth-child(2) strong,
.en_social_walls_corporate main > .container:nth-child(2) strong,
.en_social_walls_events main > .container:nth-child(2) strong {
  color: var(--ct-white) !important;
}

/* Hero secondary links (no .btn) — blanco sobre fondo temático */
.es_brand_monitoring main > .container:nth-child(2) a:not(.btn),
.es_social_analytics main > .container:nth-child(2) a:not(.btn),
.es_more_social_listening main > .container:nth-child(2) a:not(.btn),
.es_social_walls_corporate main > .container:nth-child(2) a:not(.btn),
.es_social_walls_events main > .container:nth-child(2) a:not(.btn),
.en_brand_monitoring main > .container:nth-child(2) a:not(.btn),
.en_social_analytics main > .container:nth-child(2) a:not(.btn),
.en_more_social_listening main > .container:nth-child(2) a:not(.btn),
.en_social_walls_corporate main > .container:nth-child(2) a:not(.btn),
.en_social_walls_events main > .container:nth-child(2) a:not(.btn) {
  color: var(--ct-white) !important;
  opacity: 0.85 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

.es_brand_monitoring main > .container:nth-child(2) a:not(.btn):hover,
.es_social_analytics main > .container:nth-child(2) a:not(.btn):hover,
.es_more_social_listening main > .container:nth-child(2) a:not(.btn):hover,
.es_social_walls_corporate main > .container:nth-child(2) a:not(.btn):hover,
.es_social_walls_events main > .container:nth-child(2) a:not(.btn):hover,
.en_brand_monitoring main > .container:nth-child(2) a:not(.btn):hover,
.en_social_analytics main > .container:nth-child(2) a:not(.btn):hover,
.en_more_social_listening main > .container:nth-child(2) a:not(.btn):hover,
.en_social_walls_corporate main > .container:nth-child(2) a:not(.btn):hover,
.en_social_walls_events main > .container:nth-child(2) a:not(.btn):hover {
  opacity: 1 !important;
}

/* Hero CTA button — consistente con las landing pages */
.es_brand_monitoring main > .container:nth-child(2) .btn,
.es_social_analytics main > .container:nth-child(2) .btn,
.es_more_social_listening main > .container:nth-child(2) .btn,
.en_brand_monitoring main > .container:nth-child(2) .btn,
.en_social_analytics main > .container:nth-child(2) .btn,
.en_more_social_listening main > .container:nth-child(2) .btn {
  background: var(--ct-theme, #2EC4B6) !important;
  color: var(--ct-white) !important;
  border: 2px solid var(--ct-theme, #2EC4B6) !important;
  padding: 14px 32px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.3s ease !important;
  text-transform: none !important;
}

.es_brand_monitoring main > .container:nth-child(2) .btn:hover,
.es_social_analytics main > .container:nth-child(2) .btn:hover,
.es_more_social_listening main > .container:nth-child(2) .btn:hover,
.en_brand_monitoring main > .container:nth-child(2) .btn:hover,
.en_social_analytics main > .container:nth-child(2) .btn:hover,
.en_more_social_listening main > .container:nth-child(2) .btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2) !important;
  background: var(--ct-theme-dark, #229e93) !important;
  border-color: var(--ct-theme-dark, #229e93) !important;
}

.es_social_walls_corporate main > .container:nth-child(2) .btn,
.es_social_walls_events main > .container:nth-child(2) .btn,
.en_social_walls_corporate main > .container:nth-child(2) .btn,
.en_social_walls_events main > .container:nth-child(2) .btn {
  background: var(--ct-theme, #e6a429) !important;
  color: var(--ct-white) !important;
  border: 2px solid var(--ct-theme, #e6a429) !important;
  padding: 14px 32px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  border-radius: 999px !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.3s ease !important;
}

.es_social_walls_corporate main > .container:nth-child(2) .btn:hover,
.es_social_walls_events main > .container:nth-child(2) .btn:hover,
.en_social_walls_corporate main > .container:nth-child(2) .btn:hover,
.en_social_walls_events main > .container:nth-child(2) .btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2) !important;
  background: var(--ct-theme-dark, #c88b1a) !important;
  border-color: var(--ct-theme-dark, #c88b1a) !important;
}

/* ===== MAIN SECTION — contenedor principal ===== */
.es_brand_monitoring main > section,
.es_social_analytics main > section,
.es_more_social_listening main > section,
.es_social_walls_corporate main > section,
.es_social_walls_events main > section,
.en_brand_monitoring main > section,
.en_social_analytics main > section,
.en_more_social_listening main > section,
.en_social_walls_corporate main > section,
.en_social_walls_events main > section {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 0 !important;
  padding-top: 120px !important;
}

/* ===== FEATURES GRID (primer article) ===== */
/* H2 centrado */
.es_brand_monitoring section > .container:first-child h2,
.es_social_analytics section > .container:first-child h2,
.es_more_social_listening section > .container:first-child h2,
.es_social_walls_corporate section > .container:first-child h2,
.es_social_walls_events section > .container:first-child h2,
.en_brand_monitoring section > .container:first-child h2,
.en_social_analytics section > .container:first-child h2,
.en_more_social_listening section > .container:first-child h2,
.en_social_walls_corporate section > .container:first-child h2,
.en_social_walls_events section > .container:first-child h2 {
  font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark) !important;
  margin-bottom: 48px !important;
  position: relative !important;
}

/* Feature cards — cada col-lg-4 dentro del primer article */
.es_brand_monitoring section > .container:first-child article:first-child .col-lg-4,
.es_social_analytics section > .container:first-child article:first-child .col-lg-4,
.es_more_social_listening section > .container:first-child article:first-child .col-lg-4,
.es_social_walls_corporate section > .container:first-child article:first-child .col-lg-4,
.es_social_walls_events section > .container:first-child article:first-child .col-lg-4,
.en_brand_monitoring section > .container:first-child article:first-child .col-lg-4,
.en_social_analytics section > .container:first-child article:first-child .col-lg-4,
.en_more_social_listening section > .container:first-child article:first-child .col-lg-4,
.en_social_walls_corporate section > .container:first-child article:first-child .col-lg-4,
.en_social_walls_events section > .container:first-child article:first-child .col-lg-4 {
  padding: 0 12px !important;
  margin-bottom: 48px !important;
}

.es_brand_monitoring section > .container:first-child article:first-child .col-lg-4 > div,
.es_social_analytics section > .container:first-child article:first-child .col-lg-4 > div,
.es_more_social_listening section > .container:first-child article:first-child .col-lg-4 > div,
.es_social_walls_corporate section > .container:first-child article:first-child .col-lg-4 > div,
.es_social_walls_events section > .container:first-child article:first-child .col-lg-4 > div,
.en_brand_monitoring section > .container:first-child article:first-child .col-lg-4 > div,
.en_social_analytics section > .container:first-child article:first-child .col-lg-4 > div,
.en_more_social_listening section > .container:first-child article:first-child .col-lg-4 > div,
.en_social_walls_corporate section > .container:first-child article:first-child .col-lg-4 > div,
.en_social_walls_events section > .container:first-child article:first-child .col-lg-4 > div {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl, 16px) !important;
  padding: 32px 28px !important;
  border: 1px solid var(--ct-gray-200, #e2e8f0) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
  position: relative !important;
  overflow: hidden !important;
  margin-bottom: 20px !important;
}

.es_brand_monitoring section > .container:first-child article:first-child .col-lg-4 > div::before,
.es_social_analytics section > .container:first-child article:first-child .col-lg-4 > div::before,
.es_more_social_listening section > .container:first-child article:first-child .col-lg-4 > div::before,
.en_brand_monitoring section > .container:first-child article:first-child .col-lg-4 > div::before,
.en_social_analytics section > .container:first-child article:first-child .col-lg-4 > div::before,
.en_more_social_listening section > .container:first-child article:first-child .col-lg-4 > div::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--ct-theme, #2EC4B6), var(--ct-theme-dark, #229e93)) !important;
  border-radius: 16px 16px 0 0 !important;
}

.es_social_walls_corporate section > .container:first-child article:first-child .col-lg-4 > div::before,
.es_social_walls_events section > .container:first-child article:first-child .col-lg-4 > div::before,
.en_social_walls_corporate section > .container:first-child article:first-child .col-lg-4 > div::before,
.en_social_walls_events section > .container:first-child article:first-child .col-lg-4 > div::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--ct-theme, #e6a429), #d4920e) !important;
  border-radius: 16px 16px 0 0 !important;
}

.es_brand_monitoring section > .container:first-child article:first-child .col-lg-4 > div:hover,
.es_social_analytics section > .container:first-child article:first-child .col-lg-4 > div:hover,
.es_more_social_listening section > .container:first-child article:first-child .col-lg-4 > div:hover,
.en_brand_monitoring section > .container:first-child article:first-child .col-lg-4 > div:hover,
.en_social_analytics section > .container:first-child article:first-child .col-lg-4 > div:hover,
.en_more_social_listening section > .container:first-child article:first-child .col-lg-4 > div:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 40px rgba(46, 196, 182, 0.12) !important;
  border-color: rgba(46, 196, 182, 0.3) !important;
}

.es_social_walls_corporate section > .container:first-child article:first-child .col-lg-4 > div:hover,
.es_social_walls_events section > .container:first-child article:first-child .col-lg-4 > div:hover,
.en_social_walls_corporate section > .container:first-child article:first-child .col-lg-4 > div:hover,
.en_social_walls_events section > .container:first-child article:first-child .col-lg-4 > div:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 40px rgba(230, 164, 41, 0.12) !important;
  border-color: rgba(230, 164, 41, 0.3) !important;
}

/* Feature card headings */
.es_brand_monitoring section > .container:first-child article:first-child h3,
.es_social_analytics section > .container:first-child article:first-child h3,
.es_more_social_listening section > .container:first-child article:first-child h3,
.es_social_walls_corporate section > .container:first-child article:first-child h3,
.es_social_walls_events section > .container:first-child article:first-child h3,
.en_brand_monitoring section > .container:first-child article:first-child h3,
.en_social_analytics section > .container:first-child article:first-child h3,
.en_more_social_listening section > .container:first-child article:first-child h3,
.en_social_walls_corporate section > .container:first-child article:first-child h3,
.en_social_walls_events section > .container:first-child article:first-child h3 {
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: var(--ct-text-dark) !important;
  margin-bottom: 12px !important;
}

/* Feature card text */
.es_brand_monitoring section > .container:first-child article:first-child p,
.es_social_analytics section > .container:first-child article:first-child p,
.es_more_social_listening section > .container:first-child article:first-child p,
.es_social_walls_corporate section > .container:first-child article:first-child p,
.es_social_walls_events section > .container:first-child article:first-child p,
.en_brand_monitoring section > .container:first-child article:first-child p,
.en_social_analytics section > .container:first-child article:first-child p,
.en_more_social_listening section > .container:first-child article:first-child p,
.en_social_walls_corporate section > .container:first-child article:first-child p,
.en_social_walls_events section > .container:first-child article:first-child p {
  color: var(--ct-text, #4a5568) !important;
  font-size: 0.95rem !important;
  line-height: 1.65 !important;
  padding: 0 4px !important;
}

/* Primer article (features grid) — más padding inferior */
.es_brand_monitoring section > .container:first-child article:first-child,
.es_social_analytics section > .container:first-child article:first-child,
.es_more_social_listening section > .container:first-child article:first-child,
.es_social_walls_corporate section > .container:first-child article:first-child,
.es_social_walls_events section > .container:first-child article:first-child,
.en_brand_monitoring section > .container:first-child article:first-child,
.en_social_analytics section > .container:first-child article:first-child,
.en_more_social_listening section > .container:first-child article:first-child,
.en_social_walls_corporate section > .container:first-child article:first-child,
.en_social_walls_events section > .container:first-child article:first-child {
  padding-bottom: 24px !important;
}

/* Segundo article (checklist) — más padding superior para separar del grid */
.es_brand_monitoring section > .container:first-child article:nth-child(2),
.es_social_analytics section > .container:first-child article:nth-child(2),
.es_more_social_listening section > .container:first-child article:nth-child(2),
.es_social_walls_corporate section > .container:first-child article:nth-child(2),
.es_social_walls_events section > .container:first-child article:nth-child(2),
.en_brand_monitoring section > .container:first-child article:nth-child(2),
.en_social_analytics section > .container:first-child article:nth-child(2),
.en_more_social_listening section > .container:first-child article:nth-child(2),
.en_social_walls_corporate section > .container:first-child article:nth-child(2),
.en_social_walls_events section > .container:first-child article:nth-child(2) {
  padding-top: 32px !important;
  padding-bottom: 64px !important;
  margin-top: 16px !important;
  border-top: 1px solid var(--ct-gray-200, #e2e8f0) !important;
}

/* ===== CHECKLIST SECTION (segundo article dentro de section > .container) ===== */
.es_brand_monitoring section > .container:first-child .checks-left-list,
.es_social_analytics section > .container:first-child .checks-left-list,
.es_more_social_listening section > .container:first-child .checks-left-list,
.es_social_walls_corporate section > .container:first-child .checks-left-list,
.es_social_walls_events section > .container:first-child .checks-left-list,
.en_brand_monitoring section > .container:first-child .checks-left-list,
.en_social_analytics section > .container:first-child .checks-left-list,
.en_more_social_listening section > .container:first-child .checks-left-list,
.en_social_walls_corporate section > .container:first-child .checks-left-list,
.en_social_walls_events section > .container:first-child .checks-left-list {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl, 16px) !important;
  padding: 36px 32px !important;
  border: 1px solid var(--ct-gray-200, #e2e8f0) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

/* Checklist icon color — teal para green-theme */
.es_brand_monitoring section .checks-left-list svg,
.es_social_analytics section .checks-left-list svg,
.es_more_social_listening section .checks-left-list svg,
.en_brand_monitoring section .checks-left-list svg,
.en_social_analytics section .checks-left-list svg,
.en_more_social_listening section .checks-left-list svg {
  color: var(--ct-theme, #2EC4B6) !important;
}

.es_brand_monitoring section .checks-left-list svg path,
.es_social_analytics section .checks-left-list svg path,
.es_more_social_listening section .checks-left-list svg path,
.en_brand_monitoring section .checks-left-list svg path,
.en_social_analytics section .checks-left-list svg path,
.en_more_social_listening section .checks-left-list svg path {
  fill: var(--ct-theme, #2EC4B6) !important;
}

/* Checklist icon — gold para yellow-theme */
.es_social_walls_corporate section .checks-left-list svg path,
.es_social_walls_events section .checks-left-list svg path,
.en_social_walls_corporate section .checks-left-list svg path,
.en_social_walls_events section .checks-left-list svg path {
  fill: var(--ct-theme, #e6a429) !important;
}

/* Checklist heading */
.es_brand_monitoring section .checks-left-list h4,
.es_social_analytics section .checks-left-list h4,
.es_more_social_listening section .checks-left-list h4,
.es_social_walls_corporate section .checks-left-list h4,
.es_social_walls_events section .checks-left-list h4,
.en_brand_monitoring section .checks-left-list h4,
.en_social_analytics section .checks-left-list h4,
.en_more_social_listening section .checks-left-list h4,
.en_social_walls_corporate section .checks-left-list h4,
.en_social_walls_events section .checks-left-list h4 {
  color: var(--ct-text-dark) !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
}

/* Checklist paragraph */
.es_brand_monitoring section .checks-left-list p,
.es_social_analytics section .checks-left-list p,
.es_more_social_listening section .checks-left-list p,
.es_social_walls_corporate section .checks-left-list p,
.es_social_walls_events section .checks-left-list p,
.en_brand_monitoring section .checks-left-list p,
.en_social_analytics section .checks-left-list p,
.en_more_social_listening section .checks-left-list p,
.en_social_walls_corporate section .checks-left-list p,
.en_social_walls_events section .checks-left-list p {
  color: var(--ct-text, #4a5568) !important;
  font-size: 0.92rem !important;
  line-height: 1.6 !important;
}

/* ===== SVG POLYGON DECORATIVE SECTIONS ===== */
/* Convertir container-fluid con SVGs en secciones decorativas con gradiente */
.es_brand_monitoring section > .container-fluid,
.es_social_analytics section > .container-fluid,
.es_more_social_listening section > .container-fluid,
.en_brand_monitoring section > .container-fluid,
.en_social_analytics section > .container-fluid,
.en_more_social_listening section > .container-fluid {
  background: linear-gradient(160deg, #0a2e2b 0%, #134e48 50%, var(--ct-theme, #2EC4B6) 100%) !important;
  padding: 80px 0 !important;
  margin: 48px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}

.es_social_walls_corporate section > .container-fluid,
.es_social_walls_events section > .container-fluid,
.en_social_walls_corporate section > .container-fluid,
.en_social_walls_events section > .container-fluid {
  background: linear-gradient(160deg, #3d2800 0%, #6b4a0a 50%, var(--ct-theme, #e6a429) 100%) !important;
  padding: 80px 0 !important;
  margin: 48px 0 !important;
  position: relative !important;
  overflow: hidden !important;
}

/* Hacer los SVGs decorativos sutiles */
.es_brand_monitoring section > .container-fluid .left-form-container,
.es_brand_monitoring section > .container-fluid .right-form-container,
.es_social_analytics section > .container-fluid .left-form-container,
.es_social_analytics section > .container-fluid .right-form-container,
.es_more_social_listening section > .container-fluid .left-form-container,
.es_more_social_listening section > .container-fluid .right-form-container,
.es_social_walls_corporate section > .container-fluid .left-form-container,
.es_social_walls_corporate section > .container-fluid .right-form-container,
.es_social_walls_events section > .container-fluid .left-form-container,
.es_social_walls_events section > .container-fluid .right-form-container,
.en_brand_monitoring section > .container-fluid .left-form-container,
.en_brand_monitoring section > .container-fluid .right-form-container,
.en_social_analytics section > .container-fluid .left-form-container,
.en_social_analytics section > .container-fluid .right-form-container,
.en_more_social_listening section > .container-fluid .left-form-container,
.en_more_social_listening section > .container-fluid .right-form-container,
.en_social_walls_corporate section > .container-fluid .left-form-container,
.en_social_walls_corporate section > .container-fluid .right-form-container,
.en_social_walls_events section > .container-fluid .left-form-container,
.en_social_walls_events section > .container-fluid .right-form-container {
  opacity: 0.12 !important;
}

/* ===== CASE STUDY SECTIONS ===== */
/* Containers de casos de uso (los .container que están después de los .container-fluid) */
.es_brand_monitoring section > .container:not(:first-child),
.es_social_analytics section > .container:not(:first-child),
.es_more_social_listening section > .container:not(:first-child),
.es_social_walls_corporate section > .container:not(:first-child),
.es_social_walls_events section > .container:not(:first-child),
.en_brand_monitoring section > .container:not(:first-child),
.en_social_analytics section > .container:not(:first-child),
.en_more_social_listening section > .container:not(:first-child),
.en_social_walls_corporate section > .container:not(:first-child),
.en_social_walls_events section > .container:not(:first-child) {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

/* Case study articles — card style */
.es_brand_monitoring section > .container:not(:first-child) article,
.es_social_analytics section > .container:not(:first-child) article,
.es_more_social_listening section > .container:not(:first-child) article,
.es_social_walls_corporate section > .container:not(:first-child) article,
.es_social_walls_events section > .container:not(:first-child) article,
.en_brand_monitoring section > .container:not(:first-child) article,
.en_social_analytics section > .container:not(:first-child) article,
.en_more_social_listening section > .container:not(:first-child) article,
.en_social_walls_corporate section > .container:not(:first-child) article,
.en_social_walls_events section > .container:not(:first-child) article {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl, 16px) !important;
  padding: 40px !important;
  border: 1px solid var(--ct-gray-200, #e2e8f0) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
  transition: all 0.35s ease !important;
  overflow: hidden !important;
}

.es_brand_monitoring section > .container:not(:first-child) article:hover,
.es_social_analytics section > .container:not(:first-child) article:hover,
.es_more_social_listening section > .container:not(:first-child) article:hover,
.es_social_walls_corporate section > .container:not(:first-child) article:hover,
.es_social_walls_events section > .container:not(:first-child) article:hover,
.en_brand_monitoring section > .container:not(:first-child) article:hover,
.en_social_analytics section > .container:not(:first-child) article:hover,
.en_more_social_listening section > .container:not(:first-child) article:hover,
.en_social_walls_corporate section > .container:not(:first-child) article:hover,
.en_social_walls_events section > .container:not(:first-child) article:hover {
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1) !important;
  transform: translateY(-4px) !important;
}

/* Case study H2 centered */
.es_brand_monitoring section > .container:not(:first-child) h2,
.es_social_analytics section > .container:not(:first-child) h2,
.es_more_social_listening section > .container:not(:first-child) h2,
.es_social_walls_corporate section > .container:not(:first-child) h2,
.es_social_walls_events section > .container:not(:first-child) h2,
.en_brand_monitoring section > .container:not(:first-child) h2,
.en_social_analytics section > .container:not(:first-child) h2,
.en_more_social_listening section > .container:not(:first-child) h2,
.en_social_walls_corporate section > .container:not(:first-child) h2,
.en_social_walls_events section > .container:not(:first-child) h2 {
  font-size: clamp(1.5rem, 2.5vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark) !important;
  margin-bottom: 32px !important;
}

/* Case study subtitle */
.es_brand_monitoring section .sub-title-section,
.es_social_analytics section .sub-title-section,
.es_more_social_listening section .sub-title-section,
.en_brand_monitoring section .sub-title-section,
.en_social_analytics section .sub-title-section,
.en_more_social_listening section .sub-title-section {
  color: var(--ct-theme, #2EC4B6) !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

.es_social_walls_corporate section .sub-title-section,
.es_social_walls_events section .sub-title-section,
.en_social_walls_corporate section .sub-title-section,
.en_social_walls_events section .sub-title-section {
  color: var(--ct-theme, #e6a429) !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

/* Case study heading (h3, h5, h6) */
.es_brand_monitoring section > .container:not(:first-child) h3,
.es_brand_monitoring section > .container:not(:first-child) h5,
.es_brand_monitoring section > .container:not(:first-child) h6:not(.sub-title-section),
.es_social_analytics section > .container:not(:first-child) h3,
.es_social_analytics section > .container:not(:first-child) h5,
.es_social_analytics section > .container:not(:first-child) h6:not(.sub-title-section),
.es_more_social_listening section > .container:not(:first-child) h3,
.es_more_social_listening section > .container:not(:first-child) h5,
.es_more_social_listening section > .container:not(:first-child) h6:not(.sub-title-section),
.es_social_walls_corporate section > .container:not(:first-child) h3,
.es_social_walls_corporate section > .container:not(:first-child) h5,
.es_social_walls_corporate section > .container:not(:first-child) h6:not(.sub-title-section),
.es_social_walls_events section > .container:not(:first-child) h3,
.es_social_walls_events section > .container:not(:first-child) h5,
.es_social_walls_events section > .container:not(:first-child) h6:not(.sub-title-section),
.en_brand_monitoring section > .container:not(:first-child) h3,
.en_brand_monitoring section > .container:not(:first-child) h5,
.en_brand_monitoring section > .container:not(:first-child) h6:not(.sub-title-section),
.en_social_analytics section > .container:not(:first-child) h3,
.en_social_analytics section > .container:not(:first-child) h5,
.en_social_analytics section > .container:not(:first-child) h6:not(.sub-title-section),
.en_more_social_listening section > .container:not(:first-child) h3,
.en_more_social_listening section > .container:not(:first-child) h5,
.en_more_social_listening section > .container:not(:first-child) h6:not(.sub-title-section),
.en_social_walls_corporate section > .container:not(:first-child) h3,
.en_social_walls_corporate section > .container:not(:first-child) h5,
.en_social_walls_corporate section > .container:not(:first-child) h6:not(.sub-title-section),
.en_social_walls_events section > .container:not(:first-child) h3,
.en_social_walls_events section > .container:not(:first-child) h5,
.en_social_walls_events section > .container:not(:first-child) h6:not(.sub-title-section) {
  color: var(--ct-text-dark) !important;
  font-weight: 700 !important;
}

/* Case study images — rounded with subtle shadow */
.es_brand_monitoring section > .container:not(:first-child) img,
.es_social_analytics section > .container:not(:first-child) img,
.es_more_social_listening section > .container:not(:first-child) img,
.es_social_walls_corporate section > .container:not(:first-child) img,
.es_social_walls_events section > .container:not(:first-child) img,
.en_brand_monitoring section > .container:not(:first-child) img,
.en_social_analytics section > .container:not(:first-child) img,
.en_more_social_listening section > .container:not(:first-child) img,
.en_social_walls_corporate section > .container:not(:first-child) img,
.en_social_walls_events section > .container:not(:first-child) img {
  border-radius: var(--ct-radius-lg, 12px) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
  transition: transform 0.4s ease !important;
}

.es_brand_monitoring section > .container:not(:first-child) img:hover,
.es_social_analytics section > .container:not(:first-child) img:hover,
.es_more_social_listening section > .container:not(:first-child) img:hover,
.es_social_walls_corporate section > .container:not(:first-child) img:hover,
.es_social_walls_events section > .container:not(:first-child) img:hover,
.en_brand_monitoring section > .container:not(:first-child) img:hover,
.en_social_analytics section > .container:not(:first-child) img:hover,
.en_more_social_listening section > .container:not(:first-child) img:hover,
.en_social_walls_corporate section > .container:not(:first-child) img:hover,
.en_social_walls_events section > .container:not(:first-child) img:hover {
  transform: scale(1.02) !important;
}

/* Case study text */
.es_brand_monitoring section > .container:not(:first-child) p,
.es_social_analytics section > .container:not(:first-child) p,
.es_more_social_listening section > .container:not(:first-child) p,
.es_social_walls_corporate section > .container:not(:first-child) p,
.es_social_walls_events section > .container:not(:first-child) p,
.en_brand_monitoring section > .container:not(:first-child) p,
.en_social_analytics section > .container:not(:first-child) p,
.en_more_social_listening section > .container:not(:first-child) p,
.en_social_walls_corporate section > .container:not(:first-child) p,
.en_social_walls_events section > .container:not(:first-child) p {
  color: var(--ct-text, #4a5568) !important;
  line-height: 1.7 !important;
}

/* Case study links — themed arrow links */
.es_brand_monitoring section > .container:not(:first-child) a:not(.btn),
.es_social_analytics section > .container:not(:first-child) a:not(.btn),
.es_more_social_listening section > .container:not(:first-child) a:not(.btn),
.en_brand_monitoring section > .container:not(:first-child) a:not(.btn),
.en_social_analytics section > .container:not(:first-child) a:not(.btn),
.en_more_social_listening section > .container:not(:first-child) a:not(.btn) {
  color: var(--ct-theme, #2EC4B6) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.es_brand_monitoring section > .container:not(:first-child) a:not(.btn):hover,
.es_social_analytics section > .container:not(:first-child) a:not(.btn):hover,
.es_more_social_listening section > .container:not(:first-child) a:not(.btn):hover,
.en_brand_monitoring section > .container:not(:first-child) a:not(.btn):hover,
.en_social_analytics section > .container:not(:first-child) a:not(.btn):hover,
.en_more_social_listening section > .container:not(:first-child) a:not(.btn):hover {
  color: var(--ct-theme-dark, #229e93) !important;
}

.es_social_walls_corporate section > .container:not(:first-child) a:not(.btn),
.es_social_walls_events section > .container:not(:first-child) a:not(.btn),
.en_social_walls_corporate section > .container:not(:first-child) a:not(.btn),
.en_social_walls_events section > .container:not(:first-child) a:not(.btn) {
  color: var(--ct-theme, #e6a429) !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

.es_social_walls_corporate section > .container:not(:first-child) a:not(.btn):hover,
.es_social_walls_events section > .container:not(:first-child) a:not(.btn):hover,
.en_social_walls_corporate section > .container:not(:first-child) a:not(.btn):hover,
.en_social_walls_events section > .container:not(:first-child) a:not(.btn):hover {
  color: var(--ct-theme-dark, #c88b1a) !important;
}

/* ===== SPACER REDUCTIONS ===== */
.es_brand_monitoring .mb-96,
.es_social_analytics .mb-96,
.es_more_social_listening .mb-96,
.es_social_walls_corporate .mb-96,
.es_social_walls_events .mb-96,
.en_brand_monitoring .mb-96,
.en_social_analytics .mb-96,
.en_more_social_listening .mb-96,
.en_social_walls_corporate .mb-96,
.en_social_walls_events .mb-96 {
  margin-bottom: 32px !important;
}

.es_brand_monitoring .mb-194,
.es_social_analytics .mb-194,
.es_more_social_listening .mb-194,
.es_social_walls_corporate .mb-194,
.es_social_walls_events .mb-194,
.en_brand_monitoring .mb-194,
.en_social_analytics .mb-194,
.en_more_social_listening .mb-194,
.en_social_walls_corporate .mb-194,
.en_social_walls_events .mb-194 {
  margin-bottom: 64px !important;
}

/* ===== RESPONSIVE — Mobile ===== */
@media (max-width: 767px) {
  .es_brand_monitoring main > .container-fluid:first-child,
  .es_social_analytics main > .container-fluid:first-child,
  .es_more_social_listening main > .container-fluid:first-child,
  .es_social_walls_corporate main > .container-fluid:first-child,
  .es_social_walls_events main > .container-fluid:first-child {
    height: 480px !important;
  }
  .es_brand_monitoring main > .container:nth-child(2),
  .es_social_analytics main > .container:nth-child(2),
  .es_more_social_listening main > .container:nth-child(2),
  .es_social_walls_corporate main > .container:nth-child(2),
  .es_social_walls_events main > .container:nth-child(2) {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
    min-height: 380px !important;
  }
  .es_brand_monitoring main > .container:nth-child(2) h1,
  .es_social_analytics main > .container:nth-child(2) h1,
  .es_more_social_listening main > .container:nth-child(2) h1,
  .es_social_walls_corporate main > .container:nth-child(2) h1,
  .es_social_walls_events main > .container:nth-child(2) h1 {
    font-size: 2rem !important;
  }
  .es_brand_monitoring section > .container:not(:first-child) article,
  .es_social_analytics section > .container:not(:first-child) article,
  .es_more_social_listening section > .container:not(:first-child) article,
  .es_social_walls_corporate section > .container:not(:first-child) article,
  .es_social_walls_events section > .container:not(:first-child) article {
    padding: 24px !important;
  }
  .es_brand_monitoring section > .container-fluid,
  .es_social_analytics section > .container-fluid,
  .es_more_social_listening section > .container-fluid,
  .es_social_walls_corporate section > .container-fluid,
  .es_social_walls_events section > .container-fluid {
    padding: 40px 0 !important;
    margin: 24px 0 !important;
  }
  .es_brand_monitoring section > .container:first-child .checks-left-list,
  .es_social_analytics section > .container:first-child .checks-left-list,
  .es_more_social_listening section > .container:first-child .checks-left-list,
  .es_social_walls_corporate section > .container:first-child .checks-left-list,
  .es_social_walls_events section > .container:first-child .checks-left-list {
    padding: 24px 20px !important;
    margin-bottom: 16px !important;
  }
}
/* ======================================================================
   REGISTRO & LOGIN — Páginas de autenticación (es_signup, es_login)
   NO tocar max-width del .container — la página usa col-md-6 en grid.
   Solo mejorar visual: fondo, tipografía, botones, inputs.
   ====================================================================== */
/* Fondo sutil para romper el blanco total */
.es_signup,
.es_login,
.en_signup,
.en_login {
  background: linear-gradient(180deg, var(--ct-off-white, #f8f9fc) 0%, var(--ct-white, #fff) 50%) !important;
}

/* Header "clean" — centrar logo y dar aire */
.es_signup header.clean,
.es_login header.clean,
.en_signup header.clean,
.en_login header.clean {
  padding: 28px 0 16px !important;
  text-align: center !important;
  border-bottom: 1px solid var(--ct-gray-200, #e2e8f0) !important;
  margin-bottom: 16px !important;
  background: var(--ct-white) !important;
}

/* Contenedor principal — NO restringir ancho, solo mejorar visual */
.es_signup section .container,
.es_login section .container,
.en_signup section .container,
.en_login section .container {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl, 28px) !important;
  padding: 40px 48px !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06) !important;
  border: 1px solid var(--ct-gray-200, #e2e8f0) !important;
  max-width: 800px !important;
  margin: 0 auto !important;
}

/* H1 — reducir tamaño */
.es_signup h1,
.es_login h1,
.en_signup h1,
.en_login h1 {
  font-size: clamp(1.5rem, 3vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark, #1a202c) !important;
  text-align: center !important;
  margin-bottom: 8px !important;
  letter-spacing: -0.02em !important;
}

/* Subtítulo */
.es_signup .sign-up-section > h3,
.es_login .sign-up-section > h3,
.es_signup section h3,
.es_login section h3,
.en_signup .sign-up-section > h3,
.en_login .sign-up-section > h3,
.en_signup section h3,
.en_login section h3 {
  font-size: 0.95rem !important;
  color: var(--ct-text, #4a5568) !important;
  font-weight: 600 !important;
  text-align: center !important;
}

/* Separadores HR */
.es_signup hr,
.es_login hr,
.en_signup hr,
.en_login hr {
  border-color: var(--ct-gray-200, #e2e8f0) !important;
  margin: 16px 0 !important;
  opacity: 0.5 !important;
}

/* Párrafo descriptivo */
.es_signup .sign-up-section > p,
.es_login .sign-up-section > p,
.en_signup .sign-up-section > p,
.en_login .sign-up-section > p {
  color: var(--ct-text, #4a5568) !important;
  font-size: 0.92rem !important;
  line-height: 1.65 !important;
  text-align: center !important;
  margin-bottom: 20px !important;
}

/* Botones sociales — dar estilo de card/botón */
.es_signup [class*=signup_link],
.es_login [class*=signup_link],
.es_signup a[class*=d-flex][class*=justify-content],
.es_login a[class*=d-flex][class*=justify-content],
.en_signup [class*=signup_link],
.en_login [class*=signup_link],
.en_signup a[class*=d-flex][class*=justify-content],
.en_login a[class*=d-flex][class*=justify-content] {
  background: var(--ct-white) !important;
  border: 1.5px solid var(--ct-gray-300, #d1d5e0) !important;
  border-radius: var(--ct-radius, 12px) !important;
  padding: 14px 20px !important;
  color: var(--ct-text-dark, #1a202c) !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

.es_signup [class*=signup_link]:hover,
.es_login [class*=signup_link]:hover,
.es_signup a[class*=d-flex][class*=justify-content]:hover,
.es_login a[class*=d-flex][class*=justify-content]:hover,
.en_signup [class*=signup_link]:hover,
.en_login [class*=signup_link]:hover,
.en_signup a[class*=d-flex][class*=justify-content]:hover,
.en_login a[class*=d-flex][class*=justify-content]:hover {
  border-color: var(--ct-red, #DB073C) !important;
  box-shadow: 0 2px 8px rgba(219, 7, 60, 0.1) !important;
}

/* SVG iconos sociales */
.es_signup [class*=signup_link] svg,
.es_login [class*=signup_link] svg,
.es_signup a[class*=d-flex] svg,
.es_login a[class*=d-flex] svg,
.en_signup [class*=signup_link] svg,
.en_login [class*=signup_link] svg,
.en_signup a[class*=d-flex] svg,
.en_login a[class*=d-flex] svg {
  width: 22px !important;
  height: 22px !important;
  flex-shrink: 0 !important;
}

/* Form inputs */
.es_login .form-control,
.es_signup .form-control,
.en_login .form-control,
.en_signup .form-control {
  border: 1.5px solid var(--ct-gray-300, #d1d5e0) !important;
  border-radius: var(--ct-radius, 12px) !important;
  padding: 12px 16px !important;
  font-size: 0.95rem !important;
  transition: border-color 0.2s ease !important;
}

.es_login .form-control:focus,
.es_signup .form-control:focus,
.en_login .form-control:focus,
.en_signup .form-control:focus {
  border-color: var(--ct-red, #DB073C) !important;
  box-shadow: 0 0 0 3px rgba(219, 7, 60, 0.1) !important;
  outline: none !important;
}

/* Botón primario */
.es_login .btn-primary,
.es_signup .btn-primary,
.en_login .btn-primary,
.en_signup .btn-primary {
  background: var(--ct-red, #DB073C) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill, 999px) !important;
  padding: 12px 32px !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  transition: all 0.3s ease !important;
}

.es_login .btn-primary:hover,
.es_signup .btn-primary:hover,
.en_login .btn-primary:hover,
.en_signup .btn-primary:hover {
  background: var(--ct-red-dark, #b8062f) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 15px rgba(219, 7, 60, 0.3) !important;
}

/* Labels */
.es_login label,
.es_signup label,
.en_login label,
.en_signup label {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: var(--ct-text, #4a5568) !important;
}

/* Checkboxes */
.es_signup .form-check,
.es_login .form-check,
.en_signup .form-check,
.en_login .form-check {
  margin-bottom: 6px !important;
}

/* ======================================================================
   CASOS DE ÉXITO — Fix hero vertical centering + spacing
   ====================================================================== */
/* El fondo azul viene de main::before. Ampliar para cubrir el hero completo */
.es_case_studies main::before,
.en_case_studies main::before {
  height: 620px !important;
}

/* Container del hero — usar nth-child(2) porque first-of-type falla con divs */
.es_case_studies main > .container:nth-child(2),
.en_case_studies main > .container:nth-child(2) {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

/* El .row.header — flex center para centrar contenido verticalmente */
.es_case_studies .row.header,
.en_case_studies .row.header {
  align-items: center !important;
  padding: 40px 0 !important;
}

/* Quitar los spacers .mb-96 y .mt-154 que generan el espacio vacío */
.es_case_studies .row.header .mb-96,
.es_case_studies .row.header .w-100.mb-96,
.en_case_studies .row.header .mb-96,
.en_case_studies .row.header .w-100.mb-96 {
  margin-bottom: 0 !important;
  height: 0 !important;
}

.es_case_studies .row.header .mt-154,
.es_case_studies .row.header .w-100.mt-154,
.en_case_studies .row.header .mt-154,
.en_case_studies .row.header .w-100.mt-154 {
  margin-top: 0 !important;
  height: 0 !important;
}

.es_case_studies .row.header .w-100.mt-3,
.es_case_studies .row.header .w-100.mt-md-4,
.en_case_studies .row.header .w-100.mt-3,
.en_case_studies .row.header .w-100.mt-md-4 {
  margin-top: 8px !important;
  height: 0 !important;
}

/* H1 del hero */
.es_case_studies .row.header h1,
.en_case_studies .row.header h1 {
  font-size: clamp(1.8rem, 3.5vw, 2.6rem) !important;
  line-height: 1.15 !important;
  margin-bottom: 16px !important;
}

/* Párrafo del hero */
.es_case_studies .row.header p,
.en_case_studies .row.header p {
  font-size: 0.95rem !important;
  line-height: 1.7 !important;
  max-width: 580px !important;
}

/* Sección siguiente — reducir espacio superior */
.es_case_studies main > section,
.en_case_studies main > section {
  padding-top: 40px !important;
}

/* Tabs MARCAS/AGENCIAS/MEDIOS */
.es_case_studies .nav-tabs,
.en_case_studies .nav-tabs {
  border-bottom: 2px solid var(--ct-gray-200, #e2e8f0) !important;
}

.es_case_studies .nav-tabs .nav-link,
.en_case_studies .nav-tabs .nav-link {
  font-weight: 600 !important;
  color: var(--ct-text, #4a5568) !important;
  padding: 12px 24px !important;
  border: none !important;
  border-bottom: 3px solid transparent !important;
}

.es_case_studies .nav-tabs .nav-link.active,
.en_case_studies .nav-tabs .nav-link.active {
  color: var(--ct-blue, #445CAD) !important;
  border-bottom-color: var(--ct-blue, #445CAD) !important;
  background: transparent !important;
}

/* Responsive */
@media (max-width: 767px) {
  .es_signup section .container,
  .es_login section .container,
  .en_signup section .container,
  .en_login section .container {
    padding: 28px 20px !important;
    margin: 0 12px !important;
    border-radius: var(--ct-radius-lg, 20px) !important;
    max-width: 100% !important;
  }
  .es_case_studies .row.header,
  .en_case_studies .row.header {
    padding: 32px 0 !important;
  }
}
/* ==========================================================================
   CONTACTO (.es_contact_form) — Rediseño completo
   ========================================================================== */
/* Hero background */
.es_contact_form main,
.en_contact_form main {
  position: relative !important;
}

.es_contact_form main::before,
.en_contact_form main::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 380px !important;
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 55%, #2a3d7a 100%) !important;
  z-index: 0 !important;
}

.es_contact_form main > .container,
.en_contact_form main > .container {
  position: relative !important;
  z-index: 1 !important;
}

/* Hero text blanco */
.es_contact_form .row.header h1,
.en_contact_form .row.header h1 {
  color: var(--ct-white) !important;
}

.es_contact_form .row.header p,
.en_contact_form .row.header p {
  color: rgba(255, 255, 255, 0.85) !important;
}

.es_contact_form .row.header,
.en_contact_form .row.header {
  padding-top: 48px !important;
  padding-bottom: 40px !important;
}

/* Tarjetas de contacto */
.es_contact_form main section .container > .row,
.en_contact_form main section .container > .row {
  display: flex !important;
  gap: 32px !important;
  flex-wrap: wrap !important;
}

.es_contact_form main section .container > .row > .col-md-6,
.es_contact_form main section .container > .row > [class*=col-],
.en_contact_form main section .container > .row > .col-md-6,
.en_contact_form main section .container > .row > [class*=col-] {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl) !important;
  border: 1px solid var(--ct-gray-200) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
  padding: 40px 32px !important;
  transition: all 0.3s ease !important;
  flex: 1 !important;
  min-width: 280px !important;
}

.es_contact_form main section .container > .row > [class*=col-]:hover,
.en_contact_form main section .container > .row > [class*=col-]:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1) !important;
}

/* Teléfono grande */
.es_contact_form main h2,
.en_contact_form main h2 {
  font-size: clamp(1.5rem, 2.5vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark) !important;
}

/* Links de contacto */
.es_contact_form main a,
.en_contact_form main a {
  color: var(--ct-blue) !important;
  font-weight: 600 !important;
}

.es_contact_form main a:hover,
.en_contact_form main a:hover {
  color: var(--ct-blue-dark) !important;
}

/* ==========================================================================
   EMPLEO (.es_jobs) — Fix broken image + mejoras
   ========================================================================== */
/* Ocultar imagen rota del RSS feed */
.es_jobs main img[alt="rss feed"],
.en_jobs main img[alt="rss feed"],
.es_jobs img[alt="rss feed"],
.en_jobs img[alt="rss feed"] {
  display: none !important;
}

/* Hero background para empleo — mismo gradiente azul que contacto */
.es_jobs main,
.en_jobs main {
  position: relative !important;
}

.es_jobs main::before,
.en_jobs main::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 380px !important;
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 55%, #2a3d7a 100%) !important;
  z-index: 0 !important;
}

.es_jobs main > .container,
.en_jobs main > .container {
  position: relative !important;
  z-index: 1 !important;
}

/* Ocultar spacer .mb-96 y descripción larga — solo dejamos el título */
.es_jobs .row.header > .w-100.mb-96,
.en_jobs .row.header > .w-100.mb-96 {
  display: none !important;
}

.es_jobs .row.header .col-md-6,
.en_jobs .row.header .col-md-6 {
  display: none !important;
}

/* Ocultar también los spacers intermedios */
.es_jobs .row.header > .w-100.mt-3,
.en_jobs .row.header > .w-100.mt-3 {
  display: none !important;
}

/* Centrar título en el gradiente */
.es_jobs .row.header,
.en_jobs .row.header {
  padding-top: 80px !important;
  padding-bottom: 60px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Título blanco sobre hero, centrado */
.es_jobs .row.header h1,
.en_jobs .row.header h1 {
  color: var(--ct-white) !important;
  text-align: center !important;
  width: 100% !important;
}

.es_jobs .row.header h1::after,
.en_jobs .row.header h1::after {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.3)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Sección ofertas empleo — card estilo */
.es_jobs main .bg-light,
.en_jobs main .bg-light {
  background: var(--ct-gray-50, #f8fafc) !important;
  border-radius: var(--ct-radius-xl) !important;
  padding: 48px 32px !important;
}

/* ==========================================================================
   RECURSOS (.es_resources) — Fix header vertical centering
   ========================================================================== */
/* Ocultar spacer .mb-96 y centrar texto verticalmente en el gradiente */
.es_resources .row.header > .w-100.mb-96,
.en_resources .row.header > .w-100.mb-96 {
  display: none !important;
}

.es_resources .row.header,
.en_resources .row.header {
  padding-top: 48px !important;
  padding-bottom: 40px !important;
}

/* ==========================================================================
   VIDEO MODAL (#videoModal) — Fix close button + stacking context
   ========================================================================== */
/* Fix: el modal está anidado en .inside-aspect-ratio (z-index:2) que crea un
   stacking context, atrapando al modal por debajo del backdrop (z-index:1040).
   Quitamos el z-index cuando contiene el modal para romper el stacking context. */
.inside-aspect-ratio:has(#videoModal) {
  z-index: auto !important;
}

/* Modal dialog — tamaño y posición */
#videoModal .modal-dialog {
  max-width: 800px !important;
  margin-top: 80px !important;
}

/* Modal header — botón de cierre visible y bien posicionado */
#videoModal .modal-header {
  border: none !important;
  padding: 8px 12px !important;
  background: transparent !important;
  display: flex !important;
  justify-content: flex-end !important;
}

#videoModal .modal-header .close,
#videoModal .modal-header .btn-close {
  background: rgba(255, 255, 255, 0.15) !important;
  border: 2px solid rgba(255, 255, 255, 0.5) !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  opacity: 1 !important;
  cursor: pointer !important;
  padding: 0 !important;
  margin: 0 !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Ocultar el span original y usar un × limpio */
#videoModal .modal-header .close span {
  display: none !important;
}

#videoModal .modal-header .close::after {
  content: "×" !important;
  color: #fff !important;
  font-size: 1.4rem !important;
  line-height: 1 !important;
  font-weight: 300 !important;
  display: block !important;
}

#videoModal .modal-header .close:hover,
#videoModal .modal-header .btn-close:hover {
  background: rgba(255, 255, 255, 0.3) !important;
  border-color: rgba(255, 255, 255, 0.8) !important;
}

/* NO tocar position del iframe — el mixin aspect-ratio necesita position:absolute */
/* ==========================================================================
   CATÁLOGO CAMPAÑAS — Diseño con contrastes y ritmo visual
   ========================================================================== */
/* --- Selector compuesto para todas las páginas de campaña --- */
/* Hero: borde izquierdo de acento + sombra sutil para separar del content */
.es_instagram_contest main > .container:first-child,
.es_photo_contest main > .container:first-child,
.es_facebook_contest main > .container:first-child,
.es_twitter_contest main > .container:first-child,
.es_quiz main > .container:first-child,
.es_surveys main > .container:first-child,
.es_landing main > .container:first-child,
.es_advent_calendar main > .container:first-child,
.es_custom_campaign main > .container:first-child,
.en_instagram_contest main > .container:first-child,
.en_photo_contest main > .container:first-child,
.en_facebook_contest main > .container:first-child,
.en_twitter_contest main > .container:first-child,
.en_quiz main > .container:first-child,
.en_surveys main > .container:first-child,
.en_landing main > .container:first-child,
.en_advent_calendar main > .container:first-child,
.en_custom_campaign main > .container:first-child {
  padding-top: 48px !important;
  padding-bottom: 56px !important;
  margin-bottom: 0 !important;
  border-bottom: 1px solid var(--ct-gray-200, #e5e7eb) !important;
}

/* Sección "Características Principales" (article 1) — fondo oscuro para contraste */
.es_instagram_contest .container-fluid > article:nth-child(1),
.es_photo_contest .container-fluid > article:nth-child(1),
.es_facebook_contest .container-fluid > article:nth-child(1),
.es_twitter_contest .container-fluid > article:nth-child(1),
.es_quiz .container-fluid > article:nth-child(1),
.es_surveys .container-fluid > article:nth-child(1),
.es_landing .container-fluid > article:nth-child(1),
.es_advent_calendar .container-fluid > article:nth-child(1),
.es_custom_campaign .container-fluid > article:nth-child(1),
.en_instagram_contest .container-fluid > article:nth-child(1),
.en_photo_contest .container-fluid > article:nth-child(1),
.en_facebook_contest .container-fluid > article:nth-child(1),
.en_twitter_contest .container-fluid > article:nth-child(1),
.en_quiz .container-fluid > article:nth-child(1),
.en_surveys .container-fluid > article:nth-child(1),
.en_landing .container-fluid > article:nth-child(1),
.en_advent_calendar .container-fluid > article:nth-child(1),
.en_custom_campaign .container-fluid > article:nth-child(1) {
  background: linear-gradient(135deg, var(--ct-blue) 0%, var(--ct-blue-dark) 55%, #2a3d7a 100%) !important;
  padding: 64px 0 !important;
  margin-bottom: 0 !important;
}

/* Fix: columnas internas en article 1 tienen fondo blanco que tapa el gradiente azul */
.es_instagram_contest .container-fluid > article:nth-child(1) .col-12,
.es_instagram_contest .container-fluid > article:nth-child(1) .col-md-6,
.es_instagram_contest .container-fluid > article:nth-child(1) .checks-left-list,
.es_photo_contest .container-fluid > article:nth-child(1) .col-12,
.es_photo_contest .container-fluid > article:nth-child(1) .col-md-6,
.es_photo_contest .container-fluid > article:nth-child(1) .checks-left-list,
.es_facebook_contest .container-fluid > article:nth-child(1) .col-12,
.es_facebook_contest .container-fluid > article:nth-child(1) .col-md-6,
.es_facebook_contest .container-fluid > article:nth-child(1) .checks-left-list,
.es_twitter_contest .container-fluid > article:nth-child(1) .col-12,
.es_twitter_contest .container-fluid > article:nth-child(1) .col-md-6,
.es_twitter_contest .container-fluid > article:nth-child(1) .checks-left-list,
.es_quiz .container-fluid > article:nth-child(1) .col-12,
.es_quiz .container-fluid > article:nth-child(1) .col-md-6,
.es_quiz .container-fluid > article:nth-child(1) .checks-left-list,
.es_surveys .container-fluid > article:nth-child(1) .col-12,
.es_surveys .container-fluid > article:nth-child(1) .col-md-6,
.es_surveys .container-fluid > article:nth-child(1) .checks-left-list,
.es_landing .container-fluid > article:nth-child(1) .col-12,
.es_landing .container-fluid > article:nth-child(1) .col-md-6,
.es_landing .container-fluid > article:nth-child(1) .checks-left-list,
.es_advent_calendar .container-fluid > article:nth-child(1) .col-12,
.es_advent_calendar .container-fluid > article:nth-child(1) .col-md-6,
.es_advent_calendar .container-fluid > article:nth-child(1) .checks-left-list,
.es_custom_campaign .container-fluid > article:nth-child(1) .col-12,
.es_custom_campaign .container-fluid > article:nth-child(1) .col-md-6,
.es_custom_campaign .container-fluid > article:nth-child(1) .checks-left-list,
.en_instagram_contest .container-fluid > article:nth-child(1) .col-12,
.en_instagram_contest .container-fluid > article:nth-child(1) .col-md-6,
.en_instagram_contest .container-fluid > article:nth-child(1) .checks-left-list,
.en_photo_contest .container-fluid > article:nth-child(1) .col-12,
.en_photo_contest .container-fluid > article:nth-child(1) .col-md-6,
.en_photo_contest .container-fluid > article:nth-child(1) .checks-left-list,
.en_facebook_contest .container-fluid > article:nth-child(1) .col-12,
.en_facebook_contest .container-fluid > article:nth-child(1) .col-md-6,
.en_facebook_contest .container-fluid > article:nth-child(1) .checks-left-list,
.en_twitter_contest .container-fluid > article:nth-child(1) .col-12,
.en_twitter_contest .container-fluid > article:nth-child(1) .col-md-6,
.en_twitter_contest .container-fluid > article:nth-child(1) .checks-left-list,
.en_quiz .container-fluid > article:nth-child(1) .col-12,
.en_quiz .container-fluid > article:nth-child(1) .col-md-6,
.en_quiz .container-fluid > article:nth-child(1) .checks-left-list,
.en_surveys .container-fluid > article:nth-child(1) .col-12,
.en_surveys .container-fluid > article:nth-child(1) .col-md-6,
.en_surveys .container-fluid > article:nth-child(1) .checks-left-list,
.en_landing .container-fluid > article:nth-child(1) .col-12,
.en_landing .container-fluid > article:nth-child(1) .col-md-6,
.en_landing .container-fluid > article:nth-child(1) .checks-left-list,
.en_advent_calendar .container-fluid > article:nth-child(1) .col-12,
.en_advent_calendar .container-fluid > article:nth-child(1) .col-md-6,
.en_advent_calendar .container-fluid > article:nth-child(1) .checks-left-list,
.en_custom_campaign .container-fluid > article:nth-child(1) .col-12,
.en_custom_campaign .container-fluid > article:nth-child(1) .col-md-6,
.en_custom_campaign .container-fluid > article:nth-child(1) .checks-left-list {
  background-color: transparent !important;
  background: transparent !important;
}

/* Texto blanco en sección oscura — incluye h2, h3 y h4 */
.es_instagram_contest .container-fluid > article:nth-child(1) h2,
.es_instagram_contest .container-fluid > article:nth-child(1) h3,
.es_instagram_contest .container-fluid > article:nth-child(1) h4,
.es_photo_contest .container-fluid > article:nth-child(1) h2,
.es_photo_contest .container-fluid > article:nth-child(1) h3,
.es_photo_contest .container-fluid > article:nth-child(1) h4,
.es_facebook_contest .container-fluid > article:nth-child(1) h2,
.es_facebook_contest .container-fluid > article:nth-child(1) h3,
.es_facebook_contest .container-fluid > article:nth-child(1) h4,
.es_twitter_contest .container-fluid > article:nth-child(1) h2,
.es_twitter_contest .container-fluid > article:nth-child(1) h3,
.es_twitter_contest .container-fluid > article:nth-child(1) h4,
.es_quiz .container-fluid > article:nth-child(1) h2,
.es_quiz .container-fluid > article:nth-child(1) h3,
.es_quiz .container-fluid > article:nth-child(1) h4,
.es_surveys .container-fluid > article:nth-child(1) h2,
.es_surveys .container-fluid > article:nth-child(1) h3,
.es_surveys .container-fluid > article:nth-child(1) h4,
.es_landing .container-fluid > article:nth-child(1) h2,
.es_landing .container-fluid > article:nth-child(1) h3,
.es_landing .container-fluid > article:nth-child(1) h4,
.es_advent_calendar .container-fluid > article:nth-child(1) h2,
.es_advent_calendar .container-fluid > article:nth-child(1) h3,
.es_advent_calendar .container-fluid > article:nth-child(1) h4,
.es_custom_campaign .container-fluid > article:nth-child(1) h2,
.es_custom_campaign .container-fluid > article:nth-child(1) h3,
.es_custom_campaign .container-fluid > article:nth-child(1) h4,
.en_instagram_contest .container-fluid > article:nth-child(1) h2,
.en_instagram_contest .container-fluid > article:nth-child(1) h3,
.en_instagram_contest .container-fluid > article:nth-child(1) h4,
.en_photo_contest .container-fluid > article:nth-child(1) h2,
.en_photo_contest .container-fluid > article:nth-child(1) h3,
.en_photo_contest .container-fluid > article:nth-child(1) h4,
.en_facebook_contest .container-fluid > article:nth-child(1) h2,
.en_facebook_contest .container-fluid > article:nth-child(1) h3,
.en_facebook_contest .container-fluid > article:nth-child(1) h4,
.en_twitter_contest .container-fluid > article:nth-child(1) h2,
.en_twitter_contest .container-fluid > article:nth-child(1) h3,
.en_twitter_contest .container-fluid > article:nth-child(1) h4,
.en_quiz .container-fluid > article:nth-child(1) h2,
.en_quiz .container-fluid > article:nth-child(1) h3,
.en_quiz .container-fluid > article:nth-child(1) h4,
.en_surveys .container-fluid > article:nth-child(1) h2,
.en_surveys .container-fluid > article:nth-child(1) h3,
.en_surveys .container-fluid > article:nth-child(1) h4,
.en_landing .container-fluid > article:nth-child(1) h2,
.en_landing .container-fluid > article:nth-child(1) h3,
.en_landing .container-fluid > article:nth-child(1) h4,
.en_advent_calendar .container-fluid > article:nth-child(1) h2,
.en_advent_calendar .container-fluid > article:nth-child(1) h3,
.en_advent_calendar .container-fluid > article:nth-child(1) h4,
.en_custom_campaign .container-fluid > article:nth-child(1) h2,
.en_custom_campaign .container-fluid > article:nth-child(1) h3,
.en_custom_campaign .container-fluid > article:nth-child(1) h4 {
  color: var(--ct-white) !important;
}

.es_instagram_contest .container-fluid > article:nth-child(1) p,
.es_instagram_contest .container-fluid > article:nth-child(1) li,
.es_instagram_contest .container-fluid > article:nth-child(1) span,
.es_photo_contest .container-fluid > article:nth-child(1) p,
.es_photo_contest .container-fluid > article:nth-child(1) li,
.es_photo_contest .container-fluid > article:nth-child(1) span,
.es_facebook_contest .container-fluid > article:nth-child(1) p,
.es_facebook_contest .container-fluid > article:nth-child(1) li,
.es_facebook_contest .container-fluid > article:nth-child(1) span,
.es_twitter_contest .container-fluid > article:nth-child(1) p,
.es_twitter_contest .container-fluid > article:nth-child(1) li,
.es_twitter_contest .container-fluid > article:nth-child(1) span,
.es_quiz .container-fluid > article:nth-child(1) p,
.es_quiz .container-fluid > article:nth-child(1) li,
.es_quiz .container-fluid > article:nth-child(1) span,
.es_surveys .container-fluid > article:nth-child(1) p,
.es_surveys .container-fluid > article:nth-child(1) li,
.es_surveys .container-fluid > article:nth-child(1) span,
.es_landing .container-fluid > article:nth-child(1) p,
.es_landing .container-fluid > article:nth-child(1) li,
.es_landing .container-fluid > article:nth-child(1) span,
.es_advent_calendar .container-fluid > article:nth-child(1) p,
.es_advent_calendar .container-fluid > article:nth-child(1) li,
.es_advent_calendar .container-fluid > article:nth-child(1) span,
.es_custom_campaign .container-fluid > article:nth-child(1) p,
.es_custom_campaign .container-fluid > article:nth-child(1) li,
.es_custom_campaign .container-fluid > article:nth-child(1) span,
.en_instagram_contest .container-fluid > article:nth-child(1) p,
.en_instagram_contest .container-fluid > article:nth-child(1) li,
.en_instagram_contest .container-fluid > article:nth-child(1) span,
.en_photo_contest .container-fluid > article:nth-child(1) p,
.en_photo_contest .container-fluid > article:nth-child(1) li,
.en_photo_contest .container-fluid > article:nth-child(1) span,
.en_facebook_contest .container-fluid > article:nth-child(1) p,
.en_facebook_contest .container-fluid > article:nth-child(1) li,
.en_facebook_contest .container-fluid > article:nth-child(1) span,
.en_twitter_contest .container-fluid > article:nth-child(1) p,
.en_twitter_contest .container-fluid > article:nth-child(1) li,
.en_twitter_contest .container-fluid > article:nth-child(1) span,
.en_quiz .container-fluid > article:nth-child(1) p,
.en_quiz .container-fluid > article:nth-child(1) li,
.en_quiz .container-fluid > article:nth-child(1) span,
.en_surveys .container-fluid > article:nth-child(1) p,
.en_surveys .container-fluid > article:nth-child(1) li,
.en_surveys .container-fluid > article:nth-child(1) span,
.en_landing .container-fluid > article:nth-child(1) p,
.en_landing .container-fluid > article:nth-child(1) li,
.en_landing .container-fluid > article:nth-child(1) span,
.en_advent_calendar .container-fluid > article:nth-child(1) p,
.en_advent_calendar .container-fluid > article:nth-child(1) li,
.en_advent_calendar .container-fluid > article:nth-child(1) span,
.en_custom_campaign .container-fluid > article:nth-child(1) p,
.en_custom_campaign .container-fluid > article:nth-child(1) li,
.en_custom_campaign .container-fluid > article:nth-child(1) span {
  color: rgba(255, 255, 255, 0.85) !important;
}

/* Sección "Características Generales" (article 2) — fondo claro con borde */
.es_instagram_contest .container-fluid > article:nth-child(2),
.es_photo_contest .container-fluid > article:nth-child(2),
.es_facebook_contest .container-fluid > article:nth-child(2),
.es_twitter_contest .container-fluid > article:nth-child(2),
.es_quiz .container-fluid > article:nth-child(2),
.es_surveys .container-fluid > article:nth-child(2),
.es_landing .container-fluid > article:nth-child(2),
.es_advent_calendar .container-fluid > article:nth-child(2),
.es_custom_campaign .container-fluid > article:nth-child(2),
.en_instagram_contest .container-fluid > article:nth-child(2),
.en_photo_contest .container-fluid > article:nth-child(2),
.en_facebook_contest .container-fluid > article:nth-child(2),
.en_twitter_contest .container-fluid > article:nth-child(2),
.en_quiz .container-fluid > article:nth-child(2),
.en_surveys .container-fluid > article:nth-child(2),
.en_landing .container-fluid > article:nth-child(2),
.en_advent_calendar .container-fluid > article:nth-child(2),
.en_custom_campaign .container-fluid > article:nth-child(2) {
  background: #fff !important;
  padding: 56px 0 !important;
}

/* Fix: .general-features-title hereda blanco de _page-game-landing, forzar oscuro en fondo claro */
.es_instagram_contest .container-fluid > article:nth-child(2) .general-features-title,
.es_photo_contest .container-fluid > article:nth-child(2) .general-features-title,
.es_facebook_contest .container-fluid > article:nth-child(2) .general-features-title,
.es_twitter_contest .container-fluid > article:nth-child(2) .general-features-title,
.es_quiz .container-fluid > article:nth-child(2) .general-features-title,
.es_surveys .container-fluid > article:nth-child(2) .general-features-title,
.es_landing .container-fluid > article:nth-child(2) .general-features-title,
.es_advent_calendar .container-fluid > article:nth-child(2) .general-features-title,
.es_custom_campaign .container-fluid > article:nth-child(2) .general-features-title,
.en_instagram_contest .container-fluid > article:nth-child(2) .general-features-title,
.en_photo_contest .container-fluid > article:nth-child(2) .general-features-title,
.en_facebook_contest .container-fluid > article:nth-child(2) .general-features-title,
.en_twitter_contest .container-fluid > article:nth-child(2) .general-features-title,
.en_quiz .container-fluid > article:nth-child(2) .general-features-title,
.en_surveys .container-fluid > article:nth-child(2) .general-features-title,
.en_landing .container-fluid > article:nth-child(2) .general-features-title,
.en_advent_calendar .container-fluid > article:nth-child(2) .general-features-title,
.en_custom_campaign .container-fluid > article:nth-child(2) .general-features-title {
  color: var(--ct-gray-900, #1a202c) !important;
}

/* Sección "Paso a Paso" (article 3) — fondo gris muy claro */
.es_instagram_contest .container-fluid > article:nth-child(3),
.es_photo_contest .container-fluid > article:nth-child(3),
.es_facebook_contest .container-fluid > article:nth-child(3),
.es_twitter_contest .container-fluid > article:nth-child(3),
.es_quiz .container-fluid > article:nth-child(3),
.es_surveys .container-fluid > article:nth-child(3),
.es_landing .container-fluid > article:nth-child(3),
.es_advent_calendar .container-fluid > article:nth-child(3),
.es_custom_campaign .container-fluid > article:nth-child(3),
.en_instagram_contest .container-fluid > article:nth-child(3),
.en_photo_contest .container-fluid > article:nth-child(3),
.en_facebook_contest .container-fluid > article:nth-child(3),
.en_twitter_contest .container-fluid > article:nth-child(3),
.en_quiz .container-fluid > article:nth-child(3),
.en_surveys .container-fluid > article:nth-child(3),
.en_landing .container-fluid > article:nth-child(3),
.en_advent_calendar .container-fluid > article:nth-child(3),
.en_custom_campaign .container-fluid > article:nth-child(3) {
  background: var(--ct-off-white, #f8f9fa) !important;
  padding: 56px 0 !important;
}

/* ==========================================================================
   Redesign 2026 — Solo frontend (cherry-theme)
   ========================================================================== */
body.cherry-theme {
  font-family: var(--ct-font-body) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
  color: var(--ct-text) !important;
  background: var(--ct-white) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
body.cherry-theme h1, body.cherry-theme h2, body.cherry-theme h3, body.cherry-theme h4, body.cherry-theme h5, body.cherry-theme h6 {
  line-height: 1.15;
}
body.cherry-theme h1 {
  font-family: var(--ct-font-display);
  font-weight: 800;
  letter-spacing: -0.03em;
  font-size: clamp(2.5rem, 5vw, 3.8rem);
  color: var(--ct-text-dark);
}
body.cherry-theme h2 {
  font-size: clamp(2rem, 4vw, 3rem);
  font-family: var(--ct-font-display);
  font-weight: 800;
  letter-spacing: -0.03em;
  color: var(--ct-text-dark);
}
body.cherry-theme h3 {
  font-family: var(--ct-font-display);
  font-size: clamp(1.3rem, 2.5vw, 1.6rem);
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--ct-text-dark);
}
body.cherry-theme h4 {
  font-size: clamp(1.1rem, 2vw, 1.3rem);
  font-weight: 700;
}
body.cherry-theme p {
  font-family: var(--ct-font-body);
  font-size: 16px;
  line-height: 1.7;
  color: var(--ct-text);
}
body.cherry-theme strong, body.cherry-theme b {
  font-weight: 700;
  color: var(--ct-text-dark);
}
body.cherry-theme a, body.cherry-theme button.btn-link {
  font-family: var(--ct-font-body);
  font-weight: 500;
  color: var(--ct-blue);
  text-decoration: none;
  transition: all var(--ct-duration) var(--ct-ease);
}
body.cherry-theme a:hover, body.cherry-theme a:focus, body.cherry-theme button.btn-link:hover, body.cherry-theme button.btn-link:focus {
  color: var(--ct-red);
}
body.cherry-theme {
  /* Secciones — Espaciado y fondos globales */
}
body.cherry-theme section,
body.cherry-theme article {
  padding: 40px 0;
  position: relative;
}
body.cherry-theme section + section {
  border-top: none;
}
body.cherry-theme {
  /* Imagenes — Bordes redondeados */
}
body.cherry-theme img.img-fluid {
  border-radius: var(--ct-radius-lg) !important;
}
body.cherry-theme {
  /* Hero h2 — font monospace */
}
body.cherry-theme .inside-aspect-ratio h2 {
  font-family: var(--ct-font-mono);
}
body.cherry-theme {
  /* Hero compact padding */
}
body.cherry-theme .container-fluid.custom-ratio-header {
  padding: 72px 0 56px !important;
}
body.cherry-theme {
  /* Badge / Label — Tags y etiquetas */
}
body.cherry-theme .badge,
body.cherry-theme .label {
  font-family: var(--ct-font-body);
  font-weight: 600;
  border-radius: var(--ct-radius-pill);
  padding: 4px 12px;
  font-size: 12px;
  letter-spacing: 0.03em;
}
body.cherry-theme {
  /* Ocultar spacers excesivos */
}
body.cherry-theme .mb-194 {
  margin-bottom: 0 !important;
  height: 0 !important;
}
body.cherry-theme .w-100.mt-mix {
  margin-top: 0 !important;
  height: 0 !important;
}
body.cherry-theme section .w-100[class*=mt-] {
  margin-top: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
}
body.cherry-theme main > .w-100 {
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
}
body.cherry-theme {
  /* Patron de fondo decorativo — ocultar originales */
}
body.cherry-theme [class*=pattern-st],
body.cherry-theme [id^=head-pattern],
body.cherry-theme [id^=back-left],
body.cherry-theme [id^=back-right],
body.cherry-theme .polygon,
body.cherry-theme .pattern-header,
body.cherry-theme .pattern-header-mobile {
  display: none !important;
  visibility: hidden;
  opacity: 0;
}
body.cherry-theme {
  /* Compact spacing — reducir Bootstrap margins */
}
body.cherry-theme .row.mb-5 {
  margin-bottom: 1.5rem !important;
}
body.cherry-theme .row.mb-4 {
  margin-bottom: 1rem !important;
}
body.cherry-theme .mt-5 {
  margin-top: 1.5rem !important;
}
body.cherry-theme .mb-5 {
  margin-bottom: 1.5rem !important;
}
body.cherry-theme .pt-5 {
  padding-top: 1.5rem !important;
}
body.cherry-theme .pb-5 {
  padding-bottom: 1.5rem !important;
}
body.cherry-theme {
  /* Responsive — Secciones y footer */
}
@media (max-width: 991px) {
  body.cherry-theme header > nav.navbar {
    padding: 0 16px;
  }
  body.cherry-theme section, body.cherry-theme article:not(#more-options) {
    padding: 32px 0;
  }
}
@media (max-width: 767px) {
  body.cherry-theme h2 {
    font-size: 1.6rem;
  }
  body.cherry-theme section, body.cherry-theme article:not(#more-options) {
    padding: 24px 0;
  }
  body.cherry-theme footer {
    padding: 32px 0 20px;
  }
}

/* ==========================================================================
   Signup & Login — Redesign 2026
   ========================================================================== */
.es_signup,
.es_login,
.en_signup,
.en_login {
  background: linear-gradient(180deg, var(--ct-off-white, #f8f9fc) 0%, var(--ct-white, #fff) 50%) !important;
}

.es_signup header.clean,
.es_login header.clean,
.en_signup header.clean,
.en_login header.clean {
  padding: 28px 0 16px !important;
  text-align: center !important;
  border-bottom: 1px solid var(--ct-gray-200, #e2e8f0) !important;
  margin-bottom: 16px !important;
  background: var(--ct-white) !important;
}

.es_signup section .container,
.es_login section .container,
.en_signup section .container,
.en_login section .container {
  background: var(--ct-white) !important;
  border-radius: var(--ct-radius-xl, 28px) !important;
  padding: 40px 48px !important;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06) !important;
  border: 1px solid var(--ct-gray-200, #e2e8f0) !important;
  max-width: 800px !important;
  margin: 0 auto !important;
}

.es_signup h1,
.es_login h1,
.en_signup h1,
.en_login h1 {
  font-size: clamp(1.5rem, 3vw, 2rem) !important;
  font-weight: 800 !important;
  color: var(--ct-text-dark, #1a202c) !important;
  text-align: center !important;
  margin-bottom: 8px !important;
  letter-spacing: -0.02em !important;
}

.es_signup .sign-up-section > h3,
.es_login .sign-up-section > h3,
.es_signup section h3,
.es_login section h3,
.en_signup .sign-up-section > h3,
.en_login .sign-up-section > h3,
.en_signup section h3,
.en_login section h3 {
  font-size: 0.95rem !important;
  color: var(--ct-text, #4a5568) !important;
  font-weight: 600 !important;
  text-align: center !important;
}

.es_signup hr,
.es_login hr,
.en_signup hr,
.en_login hr {
  border-color: var(--ct-gray-200, #e2e8f0) !important;
  margin: 16px 0 !important;
  opacity: 0.5 !important;
}

.es_signup .sign-up-section > p,
.es_login .sign-up-section > p,
.en_signup .sign-up-section > p,
.en_login .sign-up-section > p {
  color: var(--ct-text, #4a5568) !important;
  font-size: 0.92rem !important;
  line-height: 1.65 !important;
  text-align: center !important;
  margin-bottom: 20px !important;
}

.es_signup [class*=signup_link],
.es_login [class*=signup_link],
.es_signup a[class*=d-flex][class*=justify-content],
.es_login a[class*=d-flex][class*=justify-content],
.en_signup [class*=signup_link],
.en_login [class*=signup_link],
.en_signup a[class*=d-flex][class*=justify-content],
.en_login a[class*=d-flex][class*=justify-content] {
  background: var(--ct-white) !important;
  border: 1.5px solid var(--ct-gray-300, #d1d5e0) !important;
  border-radius: var(--ct-radius, 12px) !important;
  padding: 14px 20px !important;
  color: var(--ct-text-dark, #1a202c) !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

.es_signup [class*=signup_link]:hover,
.es_login [class*=signup_link]:hover,
.en_signup [class*=signup_link]:hover,
.en_login [class*=signup_link]:hover {
  border-color: var(--ct-red, #DB073C) !important;
  box-shadow: 0 2px 8px rgba(219, 7, 60, 0.1) !important;
}

.es_signup [class*=signup_link] svg,
.es_login [class*=signup_link] svg,
.en_signup [class*=signup_link] svg,
.en_login [class*=signup_link] svg {
  width: 22px !important;
  height: 22px !important;
  flex-shrink: 0 !important;
}

.es_login .form-control,
.es_signup .form-control,
.en_login .form-control,
.en_signup .form-control {
  border: 1.5px solid var(--ct-gray-300, #d1d5e0) !important;
  border-radius: var(--ct-radius, 12px) !important;
  padding: 12px 16px !important;
  font-size: 0.95rem !important;
  transition: border-color 0.2s ease !important;
}

.es_login .form-control:focus,
.es_signup .form-control:focus,
.en_login .form-control:focus,
.en_signup .form-control:focus {
  border-color: var(--ct-red, #DB073C) !important;
  box-shadow: 0 0 0 3px rgba(219, 7, 60, 0.1) !important;
  outline: none !important;
}

.es_login .btn-primary,
.es_signup .btn-primary,
.en_login .btn-primary,
.en_signup .btn-primary {
  background: var(--ct-red, #DB073C) !important;
  border: none !important;
  border-radius: var(--ct-radius-pill, 999px) !important;
  padding: 12px 32px !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  transition: all 0.3s ease !important;
}

.es_login .btn-primary:hover,
.es_signup .btn-primary:hover,
.en_login .btn-primary:hover,
.en_signup .btn-primary:hover {
  background: var(--ct-red-dark, #b8062f) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 15px rgba(219, 7, 60, 0.3) !important;
}

.es_login label,
.es_signup label,
.en_login label,
.en_signup label {
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  color: var(--ct-text, #4a5568) !important;
}

.es_signup .form-check,
.es_login .form-check,
.en_signup .form-check,
.en_login .form-check {
  margin-bottom: 6px !important;
}

@media (max-width: 767px) {
  .es_signup section .container,
  .es_login section .container,
  .en_signup section .container,
  .en_login section .container {
    padding: 28px 20px !important;
    margin: 0 12px !important;
    border-radius: var(--ct-radius-lg, 20px) !important;
    max-width: 100% !important;
  }
}
/*



*/
