/* CookieYes */
div[data-cky-tag="powered-by"],
div[data-cky-tag="detail-powered-by"] {
    visibility: hidden;
    height: 0;
}
.cky-btn.cky-btn-accept,
.cky-btn.cky-btn-reject,
.cky-btn.cky-btn-preferences {
    color: #FFFFFF !important;
    border-color: #009fe3 !important;
    background-color:#009fe3 !important;
}
.cky-btn.cky-btn-customize {
    color: #009fe3!important;
    border-color: #009fe3 !important;
    background-color: transparent;
}
.cky-btn-revisit-wrapper.cky-revisit-bottom-left,
.cky-switch input[type="checkbox"]:checked {
    background-color: #009fe3 !important;
}
a.cky-banner-element {
    padding: 8px 30px;
    background: #f8f9fa;
    color: #858a8f;
    border: 1px solid #dee2e6;
    box-sizing: border-box;
    border-radius: 2px;
    cursor: pointer
}
.cky-audit-table-element h3 {
  font-size: 20px;
  color: #009fe3;
  margin-top: 0 !important;
  font-weight: 700;
}
.cky-cookie-audit-table {
  margin-bottom: 10px;
}
.cky-cookie-audit-table th {
  background-color: #f9f9f9 !important;
  border: 1px solid #ececec !important;
}
.cky-cookie-audit-table tr:nth-child(2n+1) td {
  background: #fcfcfc !important;
}
.cky-cookie-audit-table td {
	border: 1px solid #ececec !important;
}
.cky-cookie-audit-table th, .cky-cookie-audit-table td {
  color: #282828; !important;
}
.cms-footer-top-item {
    width: ;
}

/* =====================================================================
   PIMCloud360 · Cabecera de Westy (diseño 9)
   En esta instalación Westy no puede regenerar su archivo static.css al
   guardar las Opciones del tema (le falta el compilador SCSS que traía la
   versión nueva de EF3-Framework). Por eso algunas opciones no hacen nada:
   «Magic Line Display», los colores del menú, el color principal, etc.
   Este CSS hace a mano lo que esas opciones deberían hacer.
   ===================================================================== */

/* 1. Sin línea bajo los enlaces del menú («Magic Line» y subrayado del tema) */
body #magic-line { display: none !important; }
#cms-header-wrapper #cms-header .menu-main-menu > li > a .menu-title:before { display: none !important; }

/* 2. Colores del menú: blanco sobre el banner, oscuro en la cabecera fija y azul al pasar el ratón.
   Van con !important porque las opciones «Menu Color» del tema (que solo se ven con
   Header Type = White Header) también lo llevan. Todos los enlaces son anclas de la home
   (/#producto…): WordPress los marca a todos como «actuales» y el tema los pintaría de azul. */
#cms-header-wrapper #cms-header:not(.header-fixed) #cms-header-navigation .menu-main-menu > li > a { color: #fff !important; }
#cms-header-wrapper #cms-header.header-fixed #cms-header-navigation .menu-main-menu > li > a { color: #282828 !important; }
/* Cabecera fija en la landing: la sección que se está viendo, en azul */
#cms-header-wrapper #cms-header.header-fixed #cms-header-navigation .menu-main-menu > li > a.current { color: #009fe3 !important; }
#cms-header-wrapper #cms-header #cms-header-navigation .menu-main-menu > li:hover > a,
#cms-header-wrapper #cms-header #cms-header-navigation .menu-main-menu > li > a:focus-visible { color: #009fe3 !important; }

/* 3. Botones de la derecha como en el diseño
   Opciones del tema → Header → Navigation:
     Button Custom Class      pc-header-cta                         (azul, «Solicita una demo»)
     Button Custom Class 2    pc-header-cta pc-header-cta--dark     (negro, «Acceder a PIMCloud360») */
body #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta {
  display: inline-block;
  padding: 13px 30px;
  background-color: #009fe3;
  border: 1px solid #009fe3;
  border-radius: 0;
  color: #fff;
  font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .5px;
  line-height: 1.2;
  text-transform: uppercase;
  white-space: nowrap;
}
body #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta:hover,
body #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta:focus-visible {
  background-color: #282828;
  border-color: #282828;
  color: #fff;
}
body #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta--dark {
  background-color: #282828;
  border-color: #282828;
}
body #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta--dark:hover,
body #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta--dark:focus-visible {
  background-color: #009fe3;
  border-color: #009fe3;
}
/* Separación entre los dos botones */
#cms-header-wrapper #cms-header .cms-navigation-right .h-nav-button + .h-nav-button-2 { padding-left: 24px; }

/* 4. Distribución de la cabecera en escritorio (desde 1200px), como en el diseño:
   logo a la izquierda y, a la derecha, el menú seguido de los dos botones.
   (La cabecera 9 de Westy centra el menú en toda la página y con dos botones se montaría encima.) */
@media (min-width: 1200px) {
  #cms-header-wrapper.header-9 #cms-header > .container { width: 100%; padding-left: 50px; padding-right: 50px; }
  #cms-header-wrapper.header-9 #cms-header > .container > .row { display: flex; align-items: center; }
  #cms-header-wrapper.header-9 #cms-header-logo { float: none; width: auto; flex: 0 0 auto; }
  #cms-header-wrapper.header-9 #cms-header-navigation { float: none; width: auto; flex: 1 1 auto; min-width: 0; }
  #cms-header-wrapper.header-9 #cms-header-navigation-primary { display: flex; flex-direction: row-reverse; justify-content: flex-start; align-items: center; }
  #cms-header-wrapper.header-9 #cms-header-navigation-primary::before,
  #cms-header-wrapper.header-9 #cms-header-navigation-primary::after { display: none; }
  #cms-header-wrapper.header-9 #cms-header .cms-navigation-left { position: static; left: auto; right: auto; margin: 0; text-align: right; }
  #cms-header-wrapper.header-9 #cms-header .cms-navigation-right { float: none; flex: 0 0 auto; padding-left: 0; margin-left: 85px; }
  #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li { padding-left: 19px; padding-right: 19px; }
  #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li:last-child { padding-right: 0; }
}
/* Pantallas de portátil: todo un poco más compacto para que quepa en una línea */
@media (min-width: 1200px) and (max-width: 1439px) {
  #cms-header-wrapper.header-9 #cms-header > .container { padding-left: 30px; padding-right: 30px; }
  #cms-header-wrapper.header-9 #cms-header .cms-navigation-right { margin-left: 36px; }
  #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li { padding-left: 11px; padding-right: 11px; }
  body #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta { padding-left: 20px; padding-right: 20px; }
  #cms-header-wrapper #cms-header .cms-navigation-right .h-nav-button + .h-nav-button-2 { padding-left: 12px; }
}
@media (min-width: 1200px) and (max-width: 1279px) {
  #cms-header-wrapper.header-9 #cms-header > .container { padding-left: 20px; padding-right: 20px; }
  #cms-header-wrapper.header-9 #cms-header .cms-navigation-right { margin-left: 24px; }
  #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li { padding-left: 8px; padding-right: 8px; }
  body #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta { padding-left: 14px; padding-right: 14px; font-size: 11px; }
}

#cms-header {
    background-color: rgba(255, 255, 255, 0.1);
}
.page-id-2  #cms-header-logo {
  display: none;
}
.logo-pim img {
  width: 258px;
}
.custom_button .btn.btn-default-outline {
  border-width: 1px;
  border-color: #282828;
  color: #282828;
}
.custom_button .btn.btn-default-outline:hover {
  border-color: #009fe3;
  background-color: #009fe3;
  color: #fff;
}
.custom_button_white .btn.btn-default-outline {
  border-width: 1px;
  border-color: #fff;
  color: #fff;
}
.custom_button_white .btn.btn-default-outline:hover {
  border-color: #282828;
  background-color: #282828;
}
.custom_button_blue .btn.btn-default {
  border-width: 1px;
  border-color: #009fe3;
  background-color: #009fe3;
}
.custom_button_blue .btn.btn-default:hover {
  border-color: #282828;
  background-color: #282828;
}
.icon_01 .cms-fancybox-icon img {
  width: 50px;
}
.icon_01 .cms-fancybox-content .cms-fancybox-title {
  margin-bottom: 5px;
}
.icon_02 .cms-fancybox-icon img {
  height: 70px;
}
.icon_03 .cms-fancybox-icon img {
  height: 64px;
}
.icon_04 .cms-fancybox-icon img {
  height: 65px;
}
.icon_05 .cms-fancybox-icon img {
  height: 55px;
}
.icon_06 .cms-fancybox-icon img {
  height: 40px;
}
.custom-gap-02 > .vc_column_container {
  padding: 0 18px;
}
.custom-gap-03 > .vc_column_container {
  padding: 0 23px;
}
.custom-gap-05a > .vc_column_container {
  padding-right: 100px;
}
.custom-gap-05b > .vc_column_container:first-child {
  padding-right: 80px;
}
.custom-gap-05b > .vc_column_container:last-child {
  padding-right: 40px;
}
.custom-gap-06 > .vc_column_container {
  padding-right: 20px;
}

.faqs .vc_tta-panel-heading {
  border-color: #009fe3 !important;
}
.faqs .vc_active .vc_tta-panel-heading {
  border-bottom: none !important;
}
.faqs .vc_tta-panel-body {
  border-color: #009fe3 !important;
}

.faqs .vc_active.faq-title h3 {
  font-weight: 700 !important;
}
.faqs .faq-text {
  font-size: 16px;
  line-height: 30px;
  color: #282828;
}
.faqs .vc_tta-controls-icon {
  height: 18px !important;
  width: 18px !important;
}
.faqs .vc_tta-controls-icon::before {
  border-color: #009fe3 !important;
}


/* =====================================================================
   PIMCloud360 · Carrusel de imágenes de WPBakery (vc_images_carousel)
   Flechas fuera de la imagen, a los lados, y paginación debajo.
   Se aplica a los carruseles con la clase extra «pc-carrusel».
   ===================================================================== */
.pc-carrusel {
  --pc-car-color: #009fe3;        /* flechas y puntos */
  --pc-car-color-hover: #0a7fc0;
  --pc-car-side: 48px;            /* hueco lateral donde van las flechas */
  --pc-car-arrow: 28px;           /* tamaño de la flecha */
  --pc-car-dots-gap: 28px;        /* separación entre la imagen y los puntos */
  --pc-car-dot: 13px;             /* diámetro de cada punto */
}

/* Hueco a los lados para las flechas y debajo para la paginación.
   border-box: el carrusel sigue midiendo el 100 % del ancho de la columna
   y el JS de WPBakery calcula las diapositivas con el ancho interior. */
.pc-carrusel .vc_images_carousel {
  box-sizing: border-box;
  padding: 0 var(--pc-car-side) calc(var(--pc-car-dots-gap) + var(--pc-car-dot));
}

/* ---------- Flechas ---------- */
.pc-carrusel .vc_images_carousel .vc_carousel-control {
  top: calc(50% - (var(--pc-car-dots-gap) + var(--pc-car-dot)) / 2);
  bottom: auto;
  width: var(--pc-car-side);
  height: var(--pc-car-arrow);
  margin-top: calc(var(--pc-car-arrow) / -2);
  opacity: 1;
  text-shadow: none;
  background: none;
  border: 0;
  color: var(--pc-car-color);
  display: block;
}
.pc-carrusel .vc_images_carousel .vc_carousel-control .icon-prev,
.pc-carrusel .vc_images_carousel .vc_carousel-control .icon-next {
  width: var(--pc-car-arrow);
  height: var(--pc-car-arrow);
  margin: calc(var(--pc-car-arrow) / -2) 0 0 calc(var(--pc-car-arrow) / -2);
  font-size: 0;
  background-color: currentColor;
  -webkit-mask: var(--pc-car-icon) center / contain no-repeat;
          mask: var(--pc-car-icon) center / contain no-repeat;
  transition: transform .2s ease;
}
.pc-carrusel .vc_images_carousel .vc_carousel-control .icon-prev::before,
.pc-carrusel .vc_images_carousel .vc_carousel-control .icon-next::before { content: none; }
.pc-carrusel .vc_images_carousel .vc_carousel-control .icon-prev {
  --pc-car-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12H4M10 6l-6 6 6 6'/%3E%3C/svg%3E");
}
.pc-carrusel .vc_images_carousel .vc_carousel-control .icon-next {
  --pc-car-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12h16M14 6l6 6-6 6'/%3E%3C/svg%3E");
}
.pc-carrusel .vc_images_carousel .vc_carousel-control:hover,
.pc-carrusel .vc_images_carousel .vc_carousel-control:focus { color: var(--pc-car-color-hover); opacity: 1; }
.pc-carrusel .vc_images_carousel .vc_left:hover .icon-prev { transform: translateX(-3px); }
.pc-carrusel .vc_images_carousel .vc_right:hover .icon-next { transform: translateX(3px); }
.pc-carrusel .vc_images_carousel .vc_carousel-control:focus-visible { outline: 2px solid var(--pc-car-color); outline-offset: -4px; }

/* Sin «bucle», WPBakery oculta la flecha al llegar a un extremo (display:none en línea).
   En vez de desaparecer, se queda atenuada para que el diseño no salte. */
.pc-carrusel .vc_images_carousel .vc_carousel-control[style*="display: none"] {
  display: block !important;
  opacity: .25;
  pointer-events: none;
}

/* ---------- Paginación ---------- */
.pc-carrusel .vc_images_carousel .vc_carousel-indicators {
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
  width: auto;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: center;
  gap: 7px;
  line-height: 0;
}
.pc-carrusel .vc_images_carousel .vc_carousel-indicators li,
.pc-carrusel .vc_images_carousel .vc_carousel-indicators li.vc_active {
  width: var(--pc-car-dot);
  height: var(--pc-car-dot);
  margin: 0;
  border: 1.5px solid var(--pc-car-color);
  border-radius: 50%;
  background-color: transparent;
  box-sizing: border-box;
  transition: background-color .2s;
}
.pc-carrusel .vc_images_carousel .vc_carousel-indicators li.vc_active,
.pc-carrusel .vc_images_carousel .vc_carousel-indicators li:hover { background-color: var(--pc-car-color); }

/* ---------- Móvil ---------- */
@media (max-width: 767px) {
  .pc-carrusel {
    --pc-car-side: 34px;
    --pc-car-arrow: 22px;
    --pc-car-dots-gap: 18px;
    --pc-car-dot: 10px;
  }
  .pc-carrusel .vc_images_carousel .vc_carousel-indicators { gap: 6px; }
}

/* =====================================================================
   PIMCloud360 · Gravity Forms (tema Orbital) con el estilo del diseño
   Campos con solo línea inferior, texto legal enmarcado y botón oscuro.
   Se aplica al formulario que esté dentro de un elemento de WPBakery
   con la clase extra «pc-gform».

   Cómo funciona: Orbital pinta cada control con variables --gf-ctrl-*.
   Las redefinimos en el , que está por debajo del  en línea
   que Gravity Forms pone en el envoltorio, así que ganan sin !important.
   ===================================================================== */

.pc-gform .gform_wrapper form {
  /* Tipografía y color de los campos */
  --gf-ctrl-font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  --gf-ctrl-font-size: 16px;
  --gf-ctrl-font-weight: 400;
  --gf-ctrl-color: #282828;
  --gf-ctrl-color-hover: #282828;
  --gf-ctrl-color-focus: #282828;
  --gf-ctrl-placeholder-color: #282828;
  --gf-ctrl-placeholder-font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  --gf-ctrl-placeholder-font-size: 16px;
  --gf-ctrl-placeholder-opacity: 1;

  /* Campo: sin caja ni sombra, solo la línea (ver bloque de bordes más abajo) */
  --gf-ctrl-bg-color: transparent;
  --gf-ctrl-bg-color-hover: transparent;
  --gf-ctrl-bg-color-focus: transparent;
  --gf-ctrl-border-color: #cfcfcf;
  --gf-ctrl-border-color-hover: #a8a8a8;
  --gf-ctrl-border-color-focus: #009fe3;
  --gf-ctrl-radius: 0;
  --gf-ctrl-shadow: none;
  --gf-ctrl-padding-x: 0;
  --gf-ctrl-size: 46px;
  --gf-ctrl-outline-width-focus: 0;
  --gf-ctrl-textarea-height: 110px;
  --gf-ctrl-textarea-radius: 0;

  /* Separación entre campos */
  --gf-form-gap-y: 24px;

  /* Casilla de consentimiento */
  --gf-ctrl-choice-size: 14px;
  --gf-ctrl-choice-check-color: #009fe3;

  /* Texto legal del consentimiento */
  --gf-ctrl-desc-border-color-consent: #dedede;
  --gf-ctrl-desc-border-color-consent-focus: #bdbdbd;
  --gf-ctrl-desc-color: #7a7a7a;
  --gf-ctrl-desc-font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  --gf-ctrl-desc-font-size: 10px;
  --gf-ctrl-desc-line-height: 1.55;
  --gf-ctrl-desc-max-height-consent: none;

  /* Botón: oscuro, esquinas rectas, mayúsculas */
  --gf-ctrl-btn-bg-color-primary: #282828;
  --gf-ctrl-btn-bg-color-hover-primary: #009fe3;
  --gf-ctrl-btn-bg-color-focus-primary: #009fe3;
  --gf-ctrl-btn-border-color-primary: #282828;
  --gf-ctrl-btn-border-color-hover-primary: #009fe3;
  --gf-ctrl-btn-border-color-focus-primary: #009fe3;
  --gf-ctrl-btn-color-primary: #fff;
  --gf-ctrl-btn-color-hover-primary: #fff;
  --gf-ctrl-btn-color-focus-primary: #fff;
  --gf-ctrl-btn-radius: 0;
  --gf-ctrl-btn-shadow: none;
  --gf-ctrl-btn-shadow-hover: none;
  --gf-ctrl-btn-shadow-focus: none;
  --gf-ctrl-btn-font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  --gf-ctrl-btn-font-size: 11px;
  --gf-ctrl-btn-font-weight: 700;
  --gf-ctrl-btn-letter-spacing: 1.2px;
  --gf-ctrl-btn-text-transform: uppercase;
  --gf-ctrl-btn-padding-x: 34px;
  --gf-ctrl-btn-size: 42px;
}

/* ---------- Solo línea inferior en campos de texto, área de texto y desplegable ---------- */
.pc-gform .gform_wrapper .gfield input[type]:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="file"]),
.pc-gform .gform_wrapper .gfield textarea,
.pc-gform .gform_wrapper .gfield select {
  --gf-local-border-block-start: 0 none;
  --gf-local-border-inline-start: 0 none;
  --gf-local-border-inline-end: 0 none;
  transition: border-color .2s, box-shadow .2s;
}
/* Al enfocar, la línea se vuelve azul y algo más gruesa (indicador visible para teclado) */
.pc-gform .gform_wrapper .gfield input[type]:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]):not([type="file"]):focus,
.pc-gform .gform_wrapper .gfield textarea:focus,
.pc-gform .gform_wrapper .gfield select:focus {
  box-shadow: 0 1px 0 0 #009fe3;
}
.pc-gform .gform_wrapper .gfield textarea { padding-top: 12px; }

/* Desplegable (por si «¿Qué necesitas?» pasa a ser un campo Desplegable): flecha fina a la derecha */
.pc-gform .gform_wrapper form {
  --gf-ctrl-select-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23b5b5b5' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");
  --gf-ctrl-select-icon-size: 12px;
  --gf-ctrl-select-icon-position: right 4px center;
  --gf-ctrl-select-padding-x: 0 28px;
}

/* ---------- Cabecera del formulario ---------- */
.pc-gform .gform_wrapper .gform_required_legend,
.pc-gform .gform_wrapper .gform_description:empty { display: none; }
.pc-gform .gform_wrapper .gform_heading:not(:has(.gform_title)) { display: none; }

/* ---------- Consentimiento ---------- */
.pc-gform .gform_wrapper .gfield--type-consent { margin-top: 26px; }
.pc-gform .gform_wrapper .gfield--type-consent .ginput_container_consent { display: flex; align-items: flex-start; gap: 9px; }
.pc-gform .gform_wrapper .gfield--type-consent input[type="checkbox"] { margin-top: 1px; flex: none; --gf-local-border-color: #8c8c8c; }
.pc-gform .gform_wrapper .gfield--type-consent input[type="checkbox"]:hover { --gf-local-border-color: #5a5a5a; }
.pc-gform .gform_wrapper .gfield--type-consent input[type="checkbox"]:focus-visible { outline: 2px solid #009fe3; outline-offset: 2px; }
.pc-gform .gform_wrapper .gfield_consent_label {
  font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  font-size: 11.5px;
  line-height: 1.5;
  color: #5a5a5a;
  margin: 0;
  padding: 0;
}
.pc-gform .gform_wrapper .gfield_consent_label a { color: #009fe3; text-decoration: underline; }
.pc-gform .gform_wrapper .gfield_consent_label .gfield_required { color: inherit; margin-inline-start: 1px; }
.pc-gform .gform_wrapper .gfield_consent_description { margin-top: 12px; }
.pc-gform .gform_wrapper .gfield_consent_description_text {
  background: #fff;
  border-radius: 0;
  padding: 10px 12px;
  overflow: visible;
}

/* ---------- reCAPTCHA (campo CAPTCHA de Gravity Forms) ---------- */
.pc-gform .gform_wrapper .gfield--type-captcha { margin-top: 6px; }

/* ---------- Botón ---------- */
.pc-gform .gform_wrapper .gform_footer { margin-top: 26px; padding: 0; justify-content: flex-start; }
.pc-gform .gform_wrapper .gform_footer .gform_button { min-width: 190px; }

/* ---------- Errores de validación ---------- */
.pc-gform .gform_wrapper form { --gf-ctrl-border-color-error: #d93025; --gf-ctrl-bg-color-error: transparent; }
.pc-gform .gform_wrapper .gfield_validation_message,
.pc-gform .gform_wrapper .validation_message {
  background: none;
  border: 0;
  padding: 4px 0 0;
  margin: 0;
  font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  font-size: 11.5px;
  color: #d93025;
}
.pc-gform .gform_wrapper .gform_validation_errors {
  border-radius: 0;
  box-shadow: none;
  border-width: 1px;
  padding: 12px 14px;
  margin-bottom: 20px;
}
.pc-gform .gform_wrapper .gform_validation_errors .gform_submission_error {
  font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
}

/* ---------- Mensaje de confirmación tras enviar ---------- */
.pc-gform .gform_confirmation_message {
  font-family: "Raleway", "Helvetica Neue", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.6;
  color: #282828;
  border-inline-start: 3px solid #009fe3;
  padding: 6px 0 6px 16px;
}


#cms-footer-top .cms-footer-top-item:not(:first-child) {
    padding-left: 200px;
}
.logo-footer img {
  width: 194px;
}
.text-footer-1 p, .text-footer-2 li, .text-footer-3 li {
    font-size: 13px;
}
.text-footer-2 li, .text-footer-3 li  {
    margin-bottom: 10px;
}
.text-footer-2 li {
    text-transform: uppercase;
}
#cms-footer-bottom .cms-copyright, #cms-footer-bottom li, #cms-footer-bottom li a {
    font-size: 12px;
    color: #aaaaaa !important;
}
#cms-footer-bottom li a:hover {
    color: #009fe3 !important;
}

/* =====================================================================
   PIMCloud360 · Versión responsive (tablet y móvil) · v10 (25-09)
   Va al final del style.css del tema hijo: sustituye desde este comentario
   hasta el final del archivo.
   Escritorio (desde 1200px) no cambia, salvo tres cosas: el ancho del logo
   de la cabecera (sección 1b), las viñetas de las listas (sección 5) y el
   bloque «Ahora / Con PIMCloud360» entre 1200 y 1439px (sección 5b).
   ===================================================================== */

/* ---------------------------------------------------------------------
   1. CABECERA EN TABLET Y MÓVIL (hasta 991px)
   Barra de 64px con el logo, el botón de menú y el menú desplegable con
   los dos botones. En la home va fija sobre el banner: es transparente y
   se oscurece al bajar, y el logo aparece al bajar, porque arriba ya está
   el grande del banner. (Los navegadores que no entienden
   «animation-timeline» la muestran siempre oscura y con logo.)
   En las demás páginas es siempre oscura.
   --------------------------------------------------------------------- */
@media (max-width: 991px) {
  #cms-header-wrapper #cms-header {
    height: 64px;
    border-bottom: 0;
    background-color: rgba(34, 34, 34, .96);
    box-shadow: 0 2px 12px rgba(0, 0, 0, .18);
  }
  @supports (animation-timeline: scroll()) {
    @keyframes pc-barra {
      from { background-color: rgba(34, 34, 34, 0); box-shadow: 0 2px 12px rgba(0, 0, 0, 0); }
      to   { background-color: rgba(34, 34, 34, .96); box-shadow: 0 2px 12px rgba(0, 0, 0, .18); }
    }
    @keyframes pc-logo {
      from { opacity: 0; visibility: hidden; }
      to   { opacity: 1; visibility: visible; }
    }
    .home #cms-header-wrapper #cms-header { animation: pc-barra linear both; animation-timeline: scroll(root); animation-range: 0 140px; }
    .home #cms-header-wrapper #cms-header #cms-header-logo { animation: pc-logo linear both; animation-timeline: scroll(root); animation-range: 200px 320px; }
  }
  /* Con el menú abierto, siempre oscura y con logo */
  #cms-header-wrapper #cms-header:has(.navigation-open) { animation: none !important; background-color: rgba(34, 34, 34, .96) !important; }
  #cms-header-wrapper #cms-header:has(.navigation-open) #cms-header-logo { animation: none !important; opacity: 1 !important; visibility: visible !important; }
  #cms-header-wrapper #cms-header > .container,
  #cms-header-wrapper #cms-header > .container > .row { height: 64px; }

  /* Logo (en la home estaba oculto para escritorio) */
  #cms-header-wrapper #cms-header #cms-header-logo { display: block !important; width: auto; float: left; padding: 0 15px; }
  #cms-header-wrapper #cms-header #cms-header-logo a { line-height: 64px; }
  #cms-header-wrapper #cms-header #cms-header-logo a img { width: 118px; height: auto; max-width: none; max-height: none; vertical-align: middle; }

  /* Botón hamburguesa en blanco */
  #cms-header-wrapper #cms-menu-mobile { top: 32px; right: 15px; }
  #cms-header-wrapper #cms-menu-mobile .btn-nav-mobile.open-menu span,
  #cms-header-wrapper #cms-menu-mobile .btn-nav-mobile.open-menu::before,
  #cms-header-wrapper #cms-menu-mobile .btn-nav-mobile.open-menu::after { background-color: #fff; }

  /* Menú desplegable: bajo la barra, a todo el ancho */
  #cms-header-wrapper #cms-header #cms-header-navigation {
    top: 64px !important;
    left: 0;
    right: 0;
    width: auto;
    max-width: none;
    padding: 8px 24px 24px;
    background-color: #fff;
    box-shadow: 0 12px 24px rgba(0, 0, 0, .15);
  }
  body #cms-header-wrapper #cms-header:not(.pc-x) #cms-header-navigation .menu-main-menu > li > a {
    padding: 14px 0;
    font-size: 13px;
    letter-spacing: .5px;
    line-height: 1.4;
    color: #282828 !important;
  }
  body #cms-header-wrapper #cms-header:not(.pc-x) #cms-header-navigation .menu-main-menu > li:hover > a { color: #009fe3 !important; }
  /* Primero el menú y debajo los botones */
  #cms-header-wrapper #cms-header #cms-header-navigation-primary { display: flex; flex-direction: column; }
  #cms-header-wrapper #cms-header #cms-header-navigation-primary > .cms-navigation-left { order: 1; float: none; }
  #cms-header-wrapper #cms-header #cms-header-navigation-primary > .cms-navigation-right { order: 2; }

  /* Los dos botones de la cabecera, dentro del menú desplegable */
  #cms-header-wrapper #cms-header #cms-header-navigation .cms-navigation-right.hidden-sm,
  #cms-header-wrapper #cms-header #cms-header-navigation .cms-navigation-right.hidden-xs {
    display: flex !important;
    flex-direction: column;
    gap: 10px;
    float: none;
    margin: 16px 0 0;
    padding: 0;
    line-height: 1.2;
  }
  #cms-header-wrapper #cms-header .cms-navigation-right .h-nav-button { display: block !important; padding: 0 !important; }
  body #cms-header-wrapper #cms-header #cms-header-navigation .cms-navigation-right .btn-nav.pc-header-cta {
    display: block;
    text-align: center;
    padding: 14px 20px;
  }
}

/* ---------------------------------------------------------------------
   1b. CABECERA EN TABLET HORIZONTAL Y PORTÁTIL PEQUEÑO (992–1199px)
   Aquí la cabecera es la de escritorio pero sin los botones (hidden-md).
   La cabecera 9 centra el menú en posición absoluta sobre toda la página:
   en las legales se montaba encima del logo y en la home, que oculta el
   logo, la barra fija se quedaba sin alto (sin fondo y sin esconderse al
   bajar). Ahora es como en escritorio: logo a la izquierda y menú a la
   derecha, también en la home.
   --------------------------------------------------------------------- */
@media (min-width: 992px) and (max-width: 1199px) {
  #cms-header-wrapper.header-9 #cms-header > .container { width: 100%; padding-left: 20px; padding-right: 20px; }
  #cms-header-wrapper.header-9 #cms-header > .container > .row { display: flex; align-items: center; }
  #cms-header-wrapper.header-9 #cms-header-logo { float: none; width: auto; flex: 0 0 auto; }
  #cms-header-wrapper.header-9 #cms-header-navigation { float: none; width: auto; flex: 1 1 auto; min-width: 0; }
  #cms-header-wrapper.header-9 #cms-header .cms-navigation-left { position: static; left: auto; right: auto; margin: 0; text-align: right; }
  #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li { padding-left: 10px; padding-right: 10px; }
  #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li:last-child { padding-right: 0; }
  /* Home: aquí no hay botones, así que se muestra el logo (en escritorio va
     oculto con «.page-id-2 #cms-header-logo»). Como en móvil, aparece al bajar,
     cuando ya ha pasado el logo grande del banner; con la cabecera fija se ve
     el «Sticky Logo» oscuro de las Opciones del tema. */
  .home #cms-header-wrapper.header-9 #cms-header #cms-header-logo { display: block; }
  @supports (animation-timeline: scroll()) {
    @keyframes pc-logo-md {
      from { opacity: 0; visibility: hidden; }
      to   { opacity: 1; visibility: visible; }
    }
    .home #cms-header-wrapper.header-9 #cms-header #cms-header-logo { animation: pc-logo-md linear both; animation-timeline: scroll(root); animation-range: 200px 320px; }
  }
}

/* Logo de la cabecera (desde 992px): el SVG no trae ancho propio y, con la
   cabecera en flex, se quedaba a 0px (no se veía en las páginas legales) */
@media (min-width: 992px) {
  #cms-header-wrapper.header-9 #cms-header-logo a img { width: 160px; height: auto; max-width: none; }
}
/* Páginas que no son la home (legales), de 1200 a 1699px: con el logo visible
   no cabían en una línea el logo, los seis enlaces del menú y los dos botones.
   Todo un poco más compacto. (En la home no hace falta: allí el logo va oculto.) */
@media (min-width: 1200px) and (max-width: 1699px) {
  body:not(.home) #cms-header-wrapper.header-9 #cms-header > .container { padding-left: 30px; padding-right: 30px; }
  body:not(.home) #cms-header-wrapper.header-9 #cms-header-logo a img { width: 130px; }
  body:not(.home) #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li { padding-left: 8px; padding-right: 8px; }
  body:not(.home) #cms-header-wrapper #cms-header #cms-header-navigation .menu-main-menu > li > a { font-size: 12px; }
  body:not(.home) #cms-header-wrapper.header-9 #cms-header .cms-navigation-right { margin-left: 24px; }
  body:not(.home) #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta { padding-left: 14px; padding-right: 14px; font-size: 11px; }
  body:not(.home) #cms-header-wrapper #cms-header .cms-navigation-right .h-nav-button + .h-nav-button-2 { padding-left: 10px; }
}
@media (min-width: 1200px) and (max-width: 1365px) {
  body:not(.home) #cms-header-wrapper.header-9 #cms-header > .container { padding-left: 20px; padding-right: 20px; }
  body:not(.home) #cms-header-wrapper.header-9 #cms-header-logo a img { width: 120px; }
  body:not(.home) #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li { padding-left: 6px; padding-right: 6px; }
  body:not(.home) #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta { padding-left: 12px; padding-right: 12px; }
}
@media (min-width: 1200px) and (max-width: 1259px) {
  body:not(.home) #cms-header-wrapper.header-9 #cms-header-logo a img { width: 110px; }
  body:not(.home) #cms-header-wrapper.header-9 #cms-header .menu-main-menu > li { padding-left: 4px; padding-right: 4px; }
  body:not(.home) #cms-header-wrapper.header-9 #cms-header .cms-navigation-right { margin-left: 16px; }
  body:not(.home) #cms-header-wrapper #cms-header #cms-header-navigation .btn-nav.pc-header-cta { padding-left: 10px; padding-right: 10px; }
}

/* ---------------------------------------------------------------------
   2. LANDING · ESPACIADOS
   --------------------------------------------------------------------- */
@media (max-width: 767px) {
  /* Columnas: 20px a cada lado; las filas y columnas internas no suman más */
  .home .wpb-content-wrapper > .vc_row > .wpb_column > .vc_column-inner { padding-left: 20px !important; padding-right: 20px !important; }
  .home .wpb-content-wrapper .vc_row.vc_inner { padding-left: 0 !important; padding-right: 0 !important; margin-left: 0; margin-right: 0; }
  .home .wpb-content-wrapper .vc_inner > .wpb_column,
  .home .wpb-content-wrapper .vc_inner > .wpb_column > .vc_column-inner { padding-left: 0 !important; padding-right: 0 !important; }

  /* Cabecera (banner): sitio para la barra fija y menos alto */
  .home .vc_custom_1790154522415 { padding-top: 104px !important; padding-bottom: 56px !important; }
  .home .logo-pim img { width: 170px; }
  /* Menos hueco entre el logo y el texto (la imagen traía 40px de relleno inferior) */
  .home .wpb-content-wrapper .vc_custom_1790154089821 { padding-bottom: 0 !important; }
  .home .logo-pim { margin-bottom: 20px !important; }
}

/* ---------------------------------------------------------------------
   3. LANDING · TÍTULOS
   (los tamaños los pone el elemento CMS Heading en línea, por eso !important)
   --------------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1199px) {
  .home .cms-heading-title[style*="font-size:60px"] { font-size: 46px !important; line-height: 1.2 !important; }
}
@media (max-width: 767px) {
  .home .cms-heading-title { margin-left: 0 !important; margin-right: 0 !important; }
  .home .cms-heading-title[style*="font-size:60px"] { font-size: 32px !important; line-height: 1.22 !important; }
  .home .cms-heading-title:not([style*="font-size:"]),
  .home .cms-heading-title[style*="font-size:;"] { font-size: 24px !important; line-height: 1.3 !important; }
  .home .cms-heading-title[style*="margin:5px 80px 60px 80px"] { margin-bottom: 36px !important; }
  .home .cms-heading-title[style*="font-size:20px"] { font-size: 19px !important; }
  /* Banner: «Toda la información de tus productos…» a 28px */
  .home .vc_custom_1790154522415 .cms-heading-title { font-size: 28px !important; line-height: 1.25 !important; }
  /* «Centraliza, estructura y distribuye…» (fila de Usuarios · Productos · 100% cloud) a 20px */
  .home .wpb-content-wrapper > .vc_row:has(.vc_custom_1790172783432) .cms-heading-title { font-size: 20px !important; line-height: 1.45 !important; }
}

/* ---------------------------------------------------------------------
   4. LANDING · BOTONES
   --------------------------------------------------------------------- */
@media (max-width: 767px) {
  .home .wpb-content-wrapper .cms-button-wrapper { text-align: center !important; }
  .home .wpb-content-wrapper .cms-button-wrapper .btn { min-width: 240px; }
  .home .wpb-content-wrapper .vc_inner .cms-button-wrapper { margin-bottom: 12px; }
}

/* ---------------------------------------------------------------------
   5. LANDING · BLOQUES
   --------------------------------------------------------------------- */
/* Listas con viñeta: la viñeta, a la altura de la primera línea
   (el tema la centra en el elemento y con dos líneas quedaba entre ellas).
   En todos los anchos: en escritorio también pasa (bloque «Ahora / Con PIMCloud360»). */
body .cms-list-content ul.list-style7 > li::before { top: 0; transform: none; }
@media (min-width: 768px) and (max-width: 1199px) {
  /* IA: las tres columnas de ventajas tenían 100px a la derecha */
  .home .custom-gap-05a > .vc_column_container,
  .home .custom-gap-05b > .vc_column_container { padding-right: 24px !important; }
  .home #ia_catalogos .wpb_single_image img { max-width: 100%; height: auto; }
}
@media (max-width: 767px) {
  /* Usuarios · Productos · 100% cloud: los tres en una fila */
  .home .vc_row.vc_inner:has(.icon_01) > .wpb_column { width: 33.333%; float: left; }
  .home .vc_row.vc_inner:has(.icon_01) .cms-fancybox-content { padding: 0 4px; }
  .home .vc_row.vc_inner:has(.icon_01) .cms-fancybox-title { font-size: 15px !important; white-space: nowrap; }

  /* ¿Para quién es?: una columna, como el resto de bloques con iconos */
  .home .custom-gap-02 > .wpb_column > .vc_column-inner { padding-left: 0 !important; padding-right: 0 !important; }

  /* IA: la imagen de las letras, más pequeña */
  .home #ia_catalogos .wpb_single_image img { max-width: 150px; height: auto; }
  .home #ia_catalogos .wpb_single_image { margin-bottom: 20px; }
}

/* ---------------------------------------------------------------------
   5c. MÓVIL · SEPARACIÓN ENTRE ELEMENTOS APILADOS (hasta 767px)
   Al pasar a una columna, las cajas con icono quedaban a 15px unas de
   otras y las columnas de texto + imagen, pegadas. Ahora:
   - cajas con icono (fancybox, pasos 01-04…): 40px entre cada una, también
     al pasar de una fila de cajas a la siguiente;
   - columnas que se apilan (texto + carrusel, texto + imagen…): 32px.
   --------------------------------------------------------------------- */
@media (max-width: 767px) {
  .home .wpb-content-wrapper .vc_row.vc_inner:not(:has(.icon_01)) > .wpb_column:not(:last-child) { margin-bottom: 25px; }
  .home .wpb-content-wrapper .vc_row.vc_inner:not(:has(.icon_01)):has(+ .vc_row.vc_inner) { padding-bottom: 25px !important; }
  .home .wpb-content-wrapper > .vc_row:not(#ia_catalogos):not(#contacto) > .wpb_column:not(:last-child):not(.vc_col-has-fill) { margin-bottom: 32px; }

  /* Contacto: sin la foto del portátil */
  .home #contacto .wpb_single_image { display: none; }
}

/* ---------------------------------------------------------------------
   5d. TABLET VERTICAL (768–991px) · CAJAS CON ICONO A DOS COLUMNAS
   - «¿Para quién es?»: 2 × 2.
   - «Todo lo que necesitas» e IA: las cajas están repartidas en dos filas
     de WPBakery (3 + 3 y 3 + 2). Las filas se «disuelven» (display:contents)
     y todas las cajas fluyen en una rejilla de dos columnas, sin huecos.
   - Bloque del carrusel («Potente por dentro»): texto arriba y carrusel
     debajo, a todo el ancho.
   --------------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 991px) {
  .home .custom-gap-02 > .wpb_column { width: 50%; }
  .home .custom-gap-02 > .wpb_column:nth-child(2n+1) { clear: left; }
  .home .custom-gap-02 > .wpb_column:nth-child(-n+2) { margin-bottom: 40px; }

  .home .wpb_wrapper:has(> .vc_row.custom-gap-03),
  .home .wpb_wrapper:has(> .vc_row.custom-gap-05a) { display: flex; flex-wrap: wrap; align-items: flex-start; }
  .home .wpb_wrapper:has(> .vc_row.custom-gap-03) > *,
  .home .wpb_wrapper:has(> .vc_row.custom-gap-05a) > * { flex: 0 0 100%; max-width: 100%; }
  .home .wpb_wrapper > .vc_row.custom-gap-03,
  .home .wpb_wrapper > .vc_row.custom-gap-05a,
  .home .wpb_wrapper > .vc_row.custom-gap-05b { display: contents; }
  .home .vc_row.custom-gap-03::before, .home .vc_row.custom-gap-03::after,
  .home .vc_row.custom-gap-05a::before, .home .vc_row.custom-gap-05a::after,
  .home .vc_row.custom-gap-05b::before, .home .vc_row.custom-gap-05b::after { display: none; }
  .home .vc_row.custom-gap-03 > .wpb_column,
  .home .vc_row.custom-gap-05a > .wpb_column,
  .home .vc_row.custom-gap-05b > .wpb_column { flex: 0 0 50%; width: 50%; max-width: 50%; float: none; margin-bottom: 40px; }

  .home .wpb-content-wrapper > .vc_row:has(.pc-carrusel) > .wpb_column { width: 100%; }
  .home .wpb-content-wrapper > .vc_row:has(.pc-carrusel) > .wpb_column:first-child { margin-bottom: 32px; }

  /* IA: una columna, como en móvil (imagen «IA» arriba, más pequeña, y
     debajo el texto con las cajas a dos columnas) */
  .home #ia_catalogos > .wpb_column { width: 100%; }
  .home #ia_catalogos .wpb_single_image img { max-width: 180px; height: auto; }
  .home #ia_catalogos .wpb_single_image { margin-bottom: 24px; }
  /* la columna de la imagen no tiene margen izquierdo (en escritorio va a sangre):
     la alineamos con el texto de debajo */
  .home #ia_catalogos .vc_custom_1790233971491 { padding-left: 30px !important; }
}

/* ---------------------------------------------------------------------
   5e. TABLET HORIZONTAL (992–1199px)
   - IA: una columna (imagen «IA» arriba, 200px, y el texto debajo, los dos
     con 60px a cada lado); las cajas siguen a tres columnas.
   - Bloque del carrusel («Potente por dentro»): texto arriba y carrusel
     debajo, a todo el ancho.
   - «Ahora / Con PIMCloud360»: el pulgar, alineado a la derecha.
   --------------------------------------------------------------------- */
@media (min-width: 992px) and (max-width: 1199px) {
  .home #ia_catalogos > .wpb_column { width: 100%; }
  .home #ia_catalogos .vc_custom_1790233971491,
  .home #ia_catalogos .vc_custom_1790233992351 { padding-left: 60px !important; padding-right: 60px !important; }
  .home #ia_catalogos .wpb_single_image img { max-width: 200px; height: auto; }
  .home #ia_catalogos .wpb_single_image { margin-bottom: 28px; }

  .home .wpb-content-wrapper > .vc_row:has(.pc-carrusel) > .wpb_column { width: 100%; }
  .home .wpb-content-wrapper > .vc_row:has(.pc-carrusel) > .wpb_column:first-child { margin-bottom: 32px; }
  .home .wpb-content-wrapper > .vc_row:has(.pc-carrusel) .vc_custom_1790160033008 { padding-left: 60px !important; }

  .home .vc_custom_1790326604316 .wpb_wrapper { text-align: right; }
}

/* ---------------------------------------------------------------------
   5b. LANDING · «AHORA / CON PIMCLOUD360»
   Cuatro columnas: texto gris + flecha, texto azul + pulgar.
   Tienen 230/130px de margen lateral pensados para pantallas grandes: por
   debajo de 1440px el texto se quedaba en una tira estrecha y en tablet
   (768–991) en 26px. En tablet y móvil van una debajo de otra, con la
   flecha apuntando hacia abajo y los iconos centrados.
   Si se rehace esta fila en WPBakery, cambian las clases vc_custom_…
   --------------------------------------------------------------------- */
/* Entre la columna de texto y la del icono se veía una línea de 1px más clara
   (anchos con decimales): la columna del icono tapa esa línea con su color */
.home .vc_row .vc_custom_1790327262002 { box-shadow: -1px 0 0 #f9f9f9; }
.home .vc_row .vc_custom_1790326604316 { box-shadow: -1px 0 0 #009fe3; }
@media (min-width: 1200px) and (max-width: 1439px) {
  .home .vc_row .vc_custom_1790327327676 { padding-left: 110px !important; }
  .home .vc_row .vc_custom_1790324979444 { padding-left: 70px !important; }
  .home .vc_row .vc_custom_1790327262002,
  .home .vc_row .vc_custom_1790326604316 { padding-right: 50px !important; }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .home .vc_row .vc_custom_1790327327676,
  .home .vc_row .vc_custom_1790324979444 { padding-left: 40px !important; }
  .home .vc_row .vc_custom_1790327262002,
  .home .vc_row .vc_custom_1790326604316 { padding-right: 20px !important; }
}
@media (max-width: 991px) {
  .home .vc_row > .wpb_column:has(> .vc_custom_1790327327676),
  .home .vc_row > .wpb_column:has(> .vc_custom_1790327262002),
  .home .vc_row > .wpb_column:has(> .vc_custom_1790324979444),
  .home .vc_row > .wpb_column:has(> .vc_custom_1790326604316) { width: 100%; }
  .home .vc_row .vc_custom_1790327327676,
  .home .vc_row .vc_custom_1790324979444 { padding: 60px 40px 24px !important; }
  .home .vc_row .vc_custom_1790327262002,
  .home .vc_row .vc_custom_1790326604316 { padding: 0 40px 50px !important; }
  .home .vc_row .vc_custom_1790327262002 { box-shadow: 0 -1px 0 #f9f9f9; }
  .home .vc_row .vc_custom_1790326604316 { box-shadow: 0 -1px 0 #009fe3; }
  .home .vc_custom_1790327262002 .wpb_wrapper,
  .home .vc_custom_1790326604316 .wpb_wrapper,
  .home .vc_custom_1790327262002 .cms-icon,
  .home .vc_custom_1790326604316 .cms-icon { text-align: center !important; }
  .home .vc_custom_1790327262002 .cms-icon span,
  .home .vc_custom_1790326604316 .cms-icon span { display: inline-block; font-size: 56px !important; line-height: 1; }
  .home .vc_custom_1790327262002 .cms-icon span { transform: rotate(90deg); }
}
@media (max-width: 767px) {
  .home .vc_row .vc_custom_1790327327676,
  .home .vc_row .vc_custom_1790324979444 { padding: 45px 20px 20px !important; }
  .home .vc_row .vc_custom_1790327262002,
  .home .vc_row .vc_custom_1790326604316 { padding: 0 20px 40px !important; }
  .home .vc_custom_1790327262002 .cms-icon span,
  .home .vc_custom_1790326604316 .cms-icon span { font-size: 48px !important; }
}

/* ---------------------------------------------------------------------
   6. PIE (todas las páginas)
   --------------------------------------------------------------------- */
@media (max-width: 991px) {
  /* Sin el menú del pie en tablet y móvil (los enlaces ya están en el menú de
     arriba). Se oculta la columna entera; los scripts de ese widget siguen funcionando. */
  #cms-footer-top .cms-footer-top-item:has(.text-footer-2) { display: none; }
  #cms-footer-top .cms-footer-top-item { padding-left: 20px !important; padding-right: 20px !important; }
  #cms-footer-top .cms-footer-top-item + .cms-footer-top-item { margin-top: 28px; }
}
@media (max-width: 991px) {
  /* Tablet y móvil: menos hueco entre columnas y arriba/abajo (el tema usa «.site-footer #cms-footer-top») */
  body .site-footer #cms-footer-top { padding-top: 40px; padding-bottom: 28px; }
  #cms-footer-top .cms-footer-top-item { margin-bottom: 0 !important; }
  #cms-footer-top .cms-footer-top-item .widget:last-child,
  #cms-footer-top .cms-footer-top-item .textwidget > :last-child { margin-bottom: 0; }
  body .site-footer #cms-footer-top .cms-footer-top-item + .cms-footer-top-item { margin-top: 28px; }
  /* Copyright y enlaces legales, más juntos */
  body .site-footer #cms-footer-bottom { padding-top: 14px; padding-bottom: 14px; }
  #cms-footer-bottom .cms-copyright,
  #cms-footer-bottom .cms-footer-menu { padding-top: 0; padding-bottom: 0; }
  #cms-footer-bottom .cms-footer-bottom-item + .cms-footer-bottom-item { padding-top: 8px; }
}

@media (min-width: 992px) and (max-width: 1199px) {
  /* Tablet horizontal: columnas 2 y 3 del pie con 50px a la izquierda
     (en escritorio siguen con los 200px de tu CSS) */
  #cms-footer-top .cms-footer-top-item:not(:first-child) { padding-left: 50px; }
}

/* ---------------------------------------------------------------------
   7. PÁGINAS LEGALES Y DEMÁS PÁGINAS DE TEXTO
   --------------------------------------------------------------------- */
@media (max-width: 991px) {
  /* Las direcciones largas (p. ej. en la política de cookies) pasan de línea
     en vez de salirse de la pantalla */
  .entry-content a { overflow-wrap: anywhere; }
}
@media (max-width: 767px) {
  /* Título de página y separación hasta el texto, más compactos
     (mismo selector que el tema, un punto más específico) */
  body#cms-theme:not(.home) #cms-page-title.page-title.pt-style1 { padding-top: 60px; padding-bottom: 60px; }
  body#cms-theme:not(.home) #cms-content.site-content { padding-top: 40px; padding-bottom: 40px; }

  /* Política de cookies: tablas de CookieYes con más sitio para la descripción */
  .entry-content .cky-cookie-audit-table { table-layout: fixed; width: 100%; }
  .entry-content .cky-cookie-audit-table th,
  .entry-content .cky-cookie-audit-table td { padding: 8px; }
  .entry-content .cky-cookie-audit-table tr > :nth-child(1) { width: 28%; overflow-wrap: anywhere; }
  .entry-content .cky-cookie-audit-table tr > :nth-child(2) { width: 22%; }
}

/* ---------------------------------------------------------------------
   8. LANDING · ESPACIADOS DE CADA FILA Y COLUMNA
   Reducen los márgenes que cada fila y columna tienen en WPBakery
   (Opciones de diseño). Si cambias el diseño de una fila, WPBakery le
   pone otra clase y esa fila vuelve a los márgenes de escritorio.
   --------------------------------------------------------------------- */
@media (min-width: 992px) and (max-width: 1199px) {
  .home .vc_custom_1790154477072,
  .home .vc_custom_1790172716271,
  .home .vc_custom_1790160043101,
  .home .vc_custom_1790168802940,
  .home .vc_custom_1790168836362,
  .home .vc_custom_1790168870230 { padding-left: 60px !important; }
  .home .vc_custom_1790154477072,
  .home .vc_custom_1790172716271,
  .home .vc_custom_1790160043101,
  .home .vc_custom_1790160033008,
  .home .vc_custom_1790168802940,
  .home .vc_custom_1790168836362,
  .home .vc_custom_1790168870230,
  .home .vc_custom_1790233992351,
  .home .vc_custom_1790238993667 { padding-right: 60px !important; }
  .home .vc_custom_1790172783432 { padding-left: 80px !important; }
  .home .vc_custom_1790172783432 { padding-right: 80px !important; }
}
@media (min-width: 768px) and (max-width: 991px) {
  .home .vc_custom_1790168539071,
  .home .vc_custom_1790251193041,
  .home .vc_custom_1790324281588,
  .home .vc_custom_1790251869039,
  .home .vc_custom_1790238747662,
  .home .vc_custom_1790238759750,
  .home .vc_custom_1790172716271,
  .home .vc_custom_1790238713837,
  .home .vc_custom_1790150024317,
  .home .vc_custom_1790168802940,
  .home .vc_custom_1790168836362,
  .home .vc_custom_1790168870230,
  .home .vc_custom_1790173758157,
  .home .vc_custom_1790237779348,
  .home .vc_custom_1790177932408 { padding-top: 60px !important; }
  .home .vc_custom_1790168539071,
  .home .vc_custom_1790251193041,
  .home .vc_custom_1790324281588,
  .home .vc_custom_1790251869039,
  .home .vc_custom_1790172716271,
  .home .vc_custom_1790150024317,
  .home .vc_custom_1790168802940,
  .home .vc_custom_1790168836362,
  .home .vc_custom_1790168870230,
  .home .vc_custom_1790173758157,
  .home .vc_custom_1790177932408 { padding-bottom: 60px !important; }
  .home .vc_custom_1790154477072,
  .home .vc_custom_1790172716271,
  .home .vc_custom_1790160043101,
  .home .vc_custom_1790168802940,
  .home .vc_custom_1790168836362,
  .home .vc_custom_1790168870230,
  .home .vc_custom_1790233992351,
  .home .vc_custom_1790176888094,
  .home .vc_custom_1790250851555,
  .home .vc_custom_1790250868622,
  .home .vc_custom_1790250883621,
  .home .vc_custom_1790250898337,
  .home .vc_custom_1790250915254,
  .home .vc_custom_1790250928302,
  .home .vc_custom_1790250942797 { padding-left: 30px !important; }
  .home .vc_custom_1790154477072,
  .home .vc_custom_1790172716271,
  .home .vc_custom_1790160043101,
  .home .vc_custom_1790160033008,
  .home .vc_custom_1790168802940,
  .home .vc_custom_1790168836362,
  .home .vc_custom_1790168870230,
  .home .vc_custom_1790233971491,
  .home .vc_custom_1790233992351,
  .home .vc_custom_1790176888094,
  .home .vc_custom_1790250851555,
  .home .vc_custom_1790250868622,
  .home .vc_custom_1790250883621,
  .home .vc_custom_1790250898337,
  .home .vc_custom_1790250915254,
  .home .vc_custom_1790250928302,
  .home .vc_custom_1790250942797,
  .home .vc_custom_1790238993667 { padding-right: 30px !important; }
  .home .vc_custom_1790172783432 { padding-left: 40px !important; }
  .home .vc_custom_1790172783432 { padding-right: 40px !important; }
}
@media (max-width: 767px) {
  .home .vc_custom_1790168539071,
  .home .vc_custom_1790251193041,
  .home .vc_custom_1790324281588,
  .home .vc_custom_1790251869039,
  .home .vc_custom_1790238747662,
  .home .vc_custom_1790238759750,
  .home .vc_custom_1790172716271,
  .home .vc_custom_1790238713837,
  .home .vc_custom_1790150024317,
  .home .vc_custom_1790168802940,
  .home .vc_custom_1790168836362,
  .home .vc_custom_1790168870230,
  .home .vc_custom_1790173758157,
  .home .vc_custom_1790237779348,
  .home .vc_custom_1790177932408 { padding-top: 50px !important; }
  .home .vc_custom_1790168539071,
  .home .vc_custom_1790251193041,
  .home .vc_custom_1790324281588,
  .home .vc_custom_1790251869039,
  .home .vc_custom_1790172716271,
  .home .vc_custom_1790150024317,
  .home .vc_custom_1790168802940,
  .home .vc_custom_1790168836362,
  .home .vc_custom_1790168870230,
  .home .vc_custom_1790173758157,
  .home .vc_custom_1790177932408 { padding-bottom: 50px !important; }
  .home .vc_custom_1790238747662,
  .home .vc_custom_1790238759750,
  .home .vc_custom_1790238713837,
  .home .vc_custom_1790237779348 { padding-bottom: 40px !important; }
  .home .vc_custom_1790238576709 { padding-bottom: 25px !important; }
  .home .vc_custom_1790234902732 { padding-bottom: 30px !important; }
  .home .vc_custom_1790235975131 { padding-bottom: 35px !important; }
  .home .vc_custom_1790177924271 { padding-top: 35px !important; }
  .home .vc_custom_1790176888094,
  .home .vc_custom_1790250851555,
  .home .vc_custom_1790250868622,
  .home .vc_custom_1790250883621,
  .home .vc_custom_1790250898337,
  .home .vc_custom_1790250915254,
  .home .vc_custom_1790250928302,
  .home .vc_custom_1790250942797 { padding-left: 0 !important; }
  .home .vc_custom_1790176888094,
  .home .vc_custom_1790250851555,
  .home .vc_custom_1790250868622,
  .home .vc_custom_1790250883621,
  .home .vc_custom_1790250898337,
  .home .vc_custom_1790250915254,
  .home .vc_custom_1790250928302,
  .home .vc_custom_1790250942797 { padding-right: 0 !important; }
}
