/*
Theme Name: Base
Theme URI: https://www.invbit.com
Author: Base
Author URI: https://www.invbit.com
Description: Base para Betheme
Template: betheme
Version: 1.6.2
*/

@import "./css/variables.css";

/*********************************\
              GENERAL
\*********************************/

html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

/* Loader */

#Wrapper {
  opacity: 0;
  transition: none;
}

body a:not(.button):not(.sub-menu a)::after {
  bottom: 2px;
}

#back_to_top i {
  color: var(--blanco);
}

/* Estilos para la animación de títulos */
.mask {
  overflow: hidden;
  display: block;
  line-height: 1.14;
}

.line-inner {
  display: inline-block;
  position: relative;
}

/* Asegurar que el texto con gradiente mantiene su estilo */
.line-inner .gradient-text {
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  text-fill-color: transparent !important;
}

.validate_email_against_bot,
.otgs-development-site-front-end,
.wpml-ls-statics-footer {
  display: none;
}

#Wrapper aside.invbit-credits-column.invbit-credits-right {
  max-height: fit-content;
}

#menu-main-menu>li>a:not(.button)::after,
a:not(.button):not(.sub-menu a)::after {
  content: "";
  position: absolute;
  width: 0%;
  height: 1px;
  bottom: 11px;
  left: 50%;
  background-color: #fff;
  transition: width 0.3s ease, left 0.3s ease;
}

#menu-main-menu>li>a:not(.button):hover::after,
a:not(.button):not(.sub-menu a):hover::after {
  width: 100%;
  left: 0;
}

a:focus,
button:focus,
[role="link"]:focus,
[role="button"]:focus,
body.keyboard-support a:focus,
body.keyboard-support button:focus,
body.keyboard-support [role="link"]:focus,
body.keyboard-support [role="button"]:focus {
  outline: none !important;
  box-shadow: none !important;
}

a,
button,
[role="link"],
[role="button"] {
  -webkit-tap-highlight-color: transparent;
}

:root {
  scrollbar-color: var(--principal) var(--blanco);
  scrollbar-width: thin;
}

.style-simple,
.style-simple .mfn-header-tmpl {
  --mfn-column-gap-bottom: 0;
  --mfn-column-gap-top: 0;
  --mfn-column-gap-right: 0;
  --mfn-column-gap-left: 0;
}

p:empty {
  margin: 0;
  display: none;
  visibility: hidden;
  opacity: 0;
}

.admin-bar .full-screen .section_wrapper {
  min-height: calc(100vh - 32px);
}

.section.has-video .section_video {
  display: flex;
  align-items: center;
  justify-content: center;
}

.section.has-video .section_video video {
  top: unset;
  left: unset;
  height: 100%;
}

.section.has-video .section_video .mask {
  display: none;
}

.style-simple .responsiveWidth {
  max-width: calc(2 * var(--halfSection));
}

.mobile-side-slide {
  overflow-x: clip !important;
}

.section_wrapper,
.container {
  box-sizing: border-box;
  padding-left: 33px;
  padding-right: 33px;
}

#Content {
  min-height: 52vh;
}

.slick-list {
  width: 100%;
}

.slick-track {
  display: flex !important;
  gap: 1rem;
}

h1 {
  font-size: var(--size-h1);
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -1.12px;
}

.small h1 {
  font-size: var(--size-h1-small);
}

h2 {
  font-size: var(--size-h2);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -2.12px;
}

h3 {
  font-size: var(--size-h3);
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -1.4px;
}

h4 {
  font-size: var(--size-h4);
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.96px;
}

h5 {
  font-size: var(--size-h5);
  line-height: 1.2;
  font-weight: 600;
}

h6 {
  font-size: var(--size-h6);
  line-height: 1.2;
  font-weight: 600;
}

body,
p {
  font-size: var(--size-p);
  line-height: 1.6;
  font-weight: 400;
}

p {
  letter-spacing: -0.72px;
  text-wrap: balance;
}

.fw600 {
  font-weight: 600;
}

.lead,
.big {
  font-size: var(--size-plead);
  line-height: 1.6;
  font-weight: 500;
}

.small {
  font-size: var(--size-psmall);
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: -0.532px;
}

a:hover {
  text-decoration: none;
}

.decorative {
  font-family: var(--font-decorative);
}

.principal {
  color: var(--principal);
}

.secundario {
  color: var(--secundario);
}

.blanco {
  color: var(--blanco);
}

.negro {
  color: var(--negro);
}

#Wrapper .column_heading {
  text-wrap: balance;
}

.flexColumn>.mcb-wrap-inner {
  flex-direction: column;
}

.place-items-center>.mcb-wrap-inner {
  place-items: center;
}

.nowrap>.mcb-wrap-inner {
  flex-wrap: nowrap;
}

.fr-auto>.mcb-wrap-inner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 2rem;
}

.gap-64>.mcb-wrap-inner {
  gap: 64px;
}

.gap-1-rem>.mcb-wrap-inner {
  gap: 1rem;
}

.gap-2-rem>.mcb-wrap-inner {
  gap: 2rem;
}

.button {
  font-size: var(--size-p);
}

.overflow-hidden {
  overflow: hidden;
}

.search-content span.date {
  font-size: 1rem;
  font-weight: 500;
  color: #005587;
  text-transform: uppercase;
}

@media only screen and (max-width: 959px) {
  .fr-auto>.mcb-wrap-inner {
    grid-template-columns: repeat(2, 1fr);
  }

  .gap-64>.mcb-wrap-inner {
    gap: 32px;
  }
}

@media only screen and (max-width: 768px) {
  .fr-auto>.mcb-wrap-inner {
    grid-template-columns: 1fr;
  }

  .nowrap>.mcb-wrap-inner {
    flex-wrap: wrap;
  }
}

.br-24 img,
.br-24 .image_wrapper {
  border-radius: 24px;
}

/* .br-full {
  border-radius: 100vmax;
} */

/*********************************\
            COMPLIANZ
\*********************************/
/* Cookies button */
body #cmplz-manage-consent .cmplz-manage-consent {
  background: var(--blanco);
  right: unset !important;
  left: 10px;
  font-size: 0px;
  color: var(--negro) !important;
  bottom: 10px !important;
  padding: 0 !important;
  min-width: 1px;
  width: 40px;
  height: 40px;
  border-radius: 100px;
  -webkit-border-radius: 100px;
  -moz-border-radius: 100px;
  -ms-border-radius: 100px;
  -o-border-radius: 100px;
}

body #cmplz-manage-consent .cmplz-manage-consent:before {
  content: "";
  background: transparent url(imagenes/icono-ajustes.svg) center center / contain no-repeat;
  width: 60%;
  height: 60%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.8s ease;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  -webkit-transition: all 0.8s ease;
  -moz-transition: all 0.8s ease;
  -ms-transition: all 0.8s ease;
  -o-transition: all 0.8s ease;
}

body #cmplz-manage-consent .cmplz-manage-consent:hover:before {
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
}

/* Cookies banner */
#cmplz-cookiebanner-container .cmplz-body {
  scrollbar-width: none;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner {
  grid-row-gap: 5px;
  padding: 20px;
}

#cmplz-cookiebanner-container .cmplz-header {
  display: none;
}

#cmplz-cookiebanner-container p {
  margin: 0;
}

#cmplz-cookiebanner-container .cmplz-buttons .cmplz-btn {
  letter-spacing: 0;
  font-size: var(--size-psmall) !important;
  line-height: 1.2 !important;
  text-transform: none;
  justify-content: center;
  height: auto;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category:not(:last-child) {
  margin-bottom: 5px;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-category-header .cmplz-category-title,
#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-description>span {
  font-size: var(--size-psmall);
  line-height: 1;
}

#cmplz-cookiebanner-container .cmplz-categories .cmplz-category .cmplz-category-header .cmplz-always-active {
  font-size: 10px;
  line-height: 1;
}

/* Complianz documents */
.page-id-209 #cmplz-document,
.page-id-807 #cmplz-document,
.page-id-808 #cmplz-document,
.page-id-557 #cmplz-document {
  padding: 8rem 0;
}

#cmplz-document {
  max-width: 100%;
  padding: 40px 0;
}

div#cmplz-document p {
  text-wrap: unset;
}

#cmplz-document p,
#cmplz-document ul,
#cmplz-document ul li {
  font-size: var(--size-p);
  color: #3c3c3f;
}

#cmplz-document ul li {
  font-size: 1rem;
  margin-left: 1rem;
}

#cmplz-document h2,
#cmplz-document h3,
#cmplz-document h4 {
  letter-spacing: 0px;
  font-weight: 600;
  border: 0;
  padding: 0;
  margin-bottom: 15px;
  line-height: 1.2;
}

#cmplz-document h2 {
  font-size: var(--size-h2);
  margin-top: 60px;
}

#cmplz-document h2:first-child {
  margin-top: 0;
}

#cmplz-document h3 {
  font-size: var(--size-h3);
}

#cmplz-document h4 {
  font-size: var(--size-h4);
}

div#cmplz-message-1-optin {
  text-align: center;
}

div#cmplz-message-1-optin img {
  max-width: 200px;
  margin-bottom: 1rem;
  text-align: center;
}

div#cmplz-message-1-optin p:last-child {
  font-size: 0.9rem;
  line-height: 1.4;
  margin: 0.9rem 0;
}

details.cmplz-category {
  background-color: transparent !important;
  border: 1px solid #ffffff63;
  border-radius: 4px;
}

button.cmplz-btn {
  border-radius: 100vmax !important;
}

.cmplz-buttons {
  margin: 0 0 1rem;
}

.cmplz-links.cmplz-documents a {
  color: #bbbcbe !important;
}

.cmplz-links.cmplz-documents a:after {
  display: none;
}

/*********************************\
              HEADER
\*********************************/
a.logo-wrapper::after,
a.logo-wrapper:hover::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
}

header#mfn-header-template {
  background-color: #fcfcfc;
}

.header-top>.section_wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 60px;
  justify-content: center;
  justify-items: center;
}

header ul#menu-main-menu,
header ul#menu-main-menu-1 {
  flex-wrap: nowrap;
}


#menu-main-menu-1>.menu-item>a.mfn-menu-link {
  padding-block: 1rem;
}

#Wrapper #menu-main-menu-1 ul.sub-menu.mfn-submenu {
  left: -18px;
  top: 40px;
  box-shadow: 4px 4px 4px #00000021;
  border: 1px solid #f0f1f4;
  min-width: max-content;
  border-radius: 8px;
}

.header-top>.section_wrapper>.wrap {
  width: 100%;
}

header form.form-searchform input[type="text"] {
  border: 0;
  background-color: unset;
  box-shadow: unset;
  max-width: 30px;
}

header .form-searchform i.icon-search-fine {
  transition: all 0.3s ease;
}

header .form-searchform i.icon-search-fine:hover::before {
  font-weight: bold;
}

#menu-main-menu a:hover span,
#menu-main-menu-1 a:hover span {
  background: linear-gradient(90deg, #83abd7 0%, #005587 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

#menu-main-menu>li>a::after,
#menu-main-menu-1>li>a::after {
  content: "";
  position: absolute;
  width: 0%;
  height: 1px;
  bottom: -5px;
  left: 50%;
  background: linear-gradient(90deg, #83abd7 0%, #005587 100%);
  transition: width 0.3s ease, left 0.3s ease;
}


#menu-main-menu>li>a:hover::after,
#menu-main-menu-1>li>a:hover::after {
  width: 100%;
  left: 0;
}

@media only screen and (min-width: 1025px) and (max-width: 1440px) {

  #Wrapper header .logo,
  #Wrapper header .search {
    max-width: 200px;
  }
}

#menu-main-menu>.menu-item>a.mfn-menu-link {
  padding-block: 1rem;
}

/* submenu */
#menu-main-menu ul.sub-menu.mfn-submenu {
  left: -20px;
  top: 40px;
  box-shadow: 4px 4px 4px #00000021;
  border: 1px solid #f0f1f4;
  min-width: max-content;
  border-radius: 8px;
}

#menu-main-menu ul.sub-menu.mfn-submenu ul.sub-menu.mfn-submenu {
  left: 6px;
  top: 40px;
}

#menu-main-menu .mfn-header-menu .mfn-menu-li .mfn-submenu .mfn-menu-link {
  align-items: center;
  padding: 1rem;
}

#menu-fullwidth-menu .current_page_item span.menu-label {
  -webkit-text-fill-color: unset;
}


.current_page_item span.menu-label {
  background: linear-gradient(90deg, #83abd7 0%, #005587 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
  font-weight: 600;
}

/* sidebar menu */

a.mfn-sidemenu-closebutton {
  content: url(/wp-content/uploads/2025/05/cerrar.svg);
}

div#mfn-sidemenu-tmpl-715 {
  min-height: 100dvh;
  max-height: 100dvh;
  padding: 0;
  overflow-y: hidden;
}

.mfn-sidemenu-tmpl .column_header_logo .logo-wrapper::after,
.mfn-sidemenu-tmpl .column_header_logo .logo-wrapper:hover::after {
  display: none !important;
  content: none !important;
  width: 0 !important;
}

.mfn-sidemenu-tmpl .column_header_logo img {
  position: absolute;
  bottom: -120px;
  max-width: 200px;
}

.mfn-sidemenu-tmpl .search_wrapper input[type="text"] {
  border-radius: 100vmax;
  min-height: 60px;
  color: #fff;
  font-size: 1.1rem;
  max-width: 240px;
  border: rgba(253, 253, 252, 0.1);
  background: rgba(253, 253, 252, 0.1);
  backdrop-filter: blur(36px);
  background: linear-gradient(90deg, #83abd761 0%, #005587a1 100%);
}

.column_header_search .search_wrapper .icon_search {
  position: absolute;
  left: 22px;
  top: 50%;
  z-index: 1;
  transform: translate(-50%, -50%);
}

.menu-item,
.menu-item * {
  line-height: 1;
}

.mfn-sidemenu-tmpl .menu-item {
  overflow: hidden;
}

.mfn-sidemenu-menu {
  flex-direction: column;
  row-gap: 0.75rem;
  max-width: fit-content;
}

.mfn-sidemenu-closebutton {
  content: url(/wp-content/uploads/2025/05/cerrar.svg);
}

.column_sidemenu_menu a::after {
  display: none;
}

.column_sidemenu_menu a.outer-menu-sub {
  color: #fff;
}

.rrss a:after {
  display: none;
}

.rrss .mcb-wrap-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}

.rrss .mfn-icon-2 {
  font-size: 1.35rem;
  line-height: 1;
  transition: opacity 0.2s ease;
}

.rrss .mfn-icon-2:hover {
  opacity: 0.75;
}

#mfn-footer-template .footer-meta .mcb-wrap-inner {
  display: grid;
  grid-template-columns: repeat(3, auto);
  justify-content: end;
  gap: 0.5rem 0.75rem;
}

#mfn-footer-template .footer-meta .column_icon_2 {
  width: auto;
}

#mfn-footer-template .footer-meta .column_heading {
  grid-column: 1 / -1;
  text-align: right;
}

#mfn-footer-template .footer-meta .title {
  margin: 0;
}

@media only screen and (max-width: 768px) {
  #mfn-footer-template .footer-meta .mcb-wrap-inner {
    justify-content: center;
  }

  #mfn-footer-template .footer-meta .column_heading {
    text-align: center;
  }
}

@media only screen and (min-width: 1024.9px) {
  /* header .sidebar-menu {
        display: none;
    } */
}

@media only screen and (max-width: 1024px) {
  .header-top>.section_wrapper {
    grid-template-columns: repeat(2, 1fr);
    justify-items: stretch;
  }

  header .sidebar-menu {
    display: block;
  }

  header .menu,
  .mfn-header-tmpl .column_header_search {
    display: none;
  }

  #Wrapper .logo>.mcb-wrap-inner {
    justify-content: start;
  }

  #Wrapper .search>.mcb-wrap-inner {
    justify-content: end;
  }
}

@media only screen and (max-width: 768px) {
  .mfn-sidemenu-tmpl .column_header_logo img {
    bottom: -90px;
    max-width: 180px;
  }

  .mfn-sidemenu-tmpl-builder {
    min-height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-y: hidden !important;
  }

  .mfn-sidemenu-tmpl .search_wrapper input[type="text"] {
    min-height: 50px;
    font-size: 1rem;
    max-width: 220px;
  }
}

/*********************************\
              FOOTER
\*********************************/
footer a:not(.button):not(.sub-menu a)::after {
  bottom: -6px;
}

#Wrapper #mfn-footer-menu a,
footer .mfn-footer-menu a {
  padding: 0;
}

footer .mfn-footer-menu {
  gap: 1rem;
}

#Wrapper #mfn-footer-menu {
  display: flex;
  gap: 1.5rem;
}

#mfn-footer-template .section_wrapper {
  display: grid;
  grid-template-columns: auto 1fr auto;
  padding: 0;
}

body .mfn-footer-tmpl .mcb-section:not(.full-width) {
  max-width: 100%;
}

body #back_to_top.sticky {
  bottom: 10px;
  right: 10px !important;
  width: 40px;
  height: 40px;
  border-radius: 100px;
  -webkit-border-radius: 100px;
  -moz-border-radius: 100px;
  -ms-border-radius: 100px;
  -o-border-radius: 100px;
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}

body #back_to_top.sticky:before {
  content: none;
}

/*Kit digital*/
body #mfn-footer-template .financiacion {
  display: grid;
  grid-template-columns: 1fr 1fr 5fr;
  gap: 20px;
  text-align: left;
  align-items: center;
}

body #mfn-footer-template .financiacion>div {
  line-height: 0;
}

body #mfn-footer-template .financiacion>div img {
  max-height: 50px;
  width: auto;
}

body #mfn-footer-template .financiacion>div p {
  font-size: 13px;
  line-height: 15px;
  margin-bottom: 0;
}

@media only screen and (max-width: 959px) {
  body #mfn-footer-template .financiacion {
    grid-template-columns: 1fr 1fr;
    text-align: center;
    gap: 5px;
  }

  body #mfn-footer-template .financiacion>div:last-child {
    grid-column: 1 / span 2;
  }
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay p.pojo-a11y-toolbar-title {
  line-height: 1.2;
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-toggle a {
  font-size: 26px;
  padding: 8px;
}

@media only screen and (max-width: 768px) {
  #mfn-footer-template .section_wrapper {
    grid-template-columns: 1fr;
    row-gap: 1.5rem;
  }

  #mfn-footer-template .column_footer_logo .logo-wrapper {
    justify-content: center;
  }

  #Wrapper .mfn-footer-menu {
    display: flex;
    gap: 1rem;
  }

  #Wrapper .mfn-footer-menu a {
    padding: 0;
  }
}

/*********************************\
              INICIO
\*********************************/

/* hero section */
.video-hover video {
  max-height: 760px;
  width: 100vw;
  object-fit: cover;
  object-position: center;
}

.video-hover .column_button {
  position: absolute;
  right: 64px;
  bottom: 64px;
  max-width: 154px;
}

@media only screen and (max-width: 768px) {
  .video-hover .column_button {
    right: 16px;
    bottom: 16px;
  }
}

.gradient-text {
  background: linear-gradient(90deg, #83abd7 0%, #005587 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

.gradient-text.orange {
  background: linear-gradient(92deg,
      rgba(251, 189, 117, 0) 32.4%,
      #fbbd75 67.53%),
    #83abd7;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.gradient-text.orange.only {
  background: linear-gradient(92deg, #83abd7 7.4%, #fbbd75 25.53%), #fbbd75;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media only screen and (max-width: 500px) {
  #Wrapper .hero .column_image {
    width: 100%;
    max-width: 200px;
  }
}

/* cards slide */
.cards-swiper {
  width: 100%;
  overflow: hidden;
}

.cards-swiper .swiper-wrapper {
  width: 100%;
}

.cards-swiper .swiper-slide {
  width: 100% !important;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.cards-content {
  min-height: 230px;
}

.card-image {
  margin-bottom: 2.2rem;
}

.cards-slider-container .card-btn {
  background-color: #005587;
}

.cards-slider-container .card-btn:hover {
  background-color: #003f5a;
}

@media only screen and (max-width: 500px) {
  .card-image {
    margin-bottom: 0;
  }
}

.card-image .image_wrapper {
  /* width: 100%; */
  /* aspect-ratio: 16/9; */
  overflow: hidden;
  border-radius: 32px;
  max-height: 61dvh;
  min-width: 100%;
  object-fit: cover;
}

.card-image .image_wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 32px;
}

.cards-titles {
  margin-bottom: 1.6rem;
  position: relative;
}

.cards-titles .column_attr {
  display: flex;
  column-gap: 1rem;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 15px;
  border-bottom: 1px solid #bbbcbe;
  position: relative;
}

.border-indicator {
  min-height: 2px;
  bottom: 0px;
  position: absolute;
  background: linear-gradient(90deg, #83abd7 0%, #005587 100%);
  transform-origin: left;
  will-change: width, transform;
}

.cards-titles .title {
  cursor: pointer;
  transition: color 0.3s ease;
  position: relative;
  margin: 0;
  font-size: clamp(1.3rem, 3vw, 2.15rem);
}

.card-text {
  display: none;
  max-width: 700px;
  margin: 0 auto;
  color: #54555a;
  font-size: 1.1rem;
  line-height: 1.5;
  text-align: center;
}

.card-text>p {
  margin-bottom: 24px;
}

.card-text.activo {
  display: block;
}

.cards-swiper .swiper-button-next,
.cards-swiper .swiper-button-prev {
  cursor: none !important;
}

.cards-swiper .card-text {
  display: none;
}

.cards-swiper .swiper-slide-active .card-text {
  display: block;
}

.cards-swiper,
.swiper-wrapper,
.swiper-slide {
  min-height: 300px;
}

.custom-cursor {
  position: fixed;
  width: 3.5rem;
  height: 3.5rem;
  background: linear-gradient(90deg, #83abd7 0%, #005587 100%);
  border-radius: 100vmax;
  pointer-events: none;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  z-index: 99999;
  opacity: 0;
  transition: opacity 0.3s ease;
  /* mix-blend-mode: difference; */
}

.cards-swiper:hover .custom-cursor {
  opacity: 1;
}

/* cards slide. END */

/* slider presentaciones */
.slider-presentaciones {
  position: relative;
  padding: 24px 0 48px;
  /* overflow: hidden; */
}

.slider-presentaciones .swiper-wrapper {
  align-items: center;
}

.slider-presentaciones .swiper-slide {
  width: 100%;
  max-width: 1200px;
  min-width: 320px;
  transition: all 0.3s;
}

.slider-presentaciones .presentacion-item {
  cursor: pointer;
}

.slider-presentaciones .slick-slide>.mcb-wrap-inner {
  border-radius: 24px;
}

.slider-presentaciones .swiper-slide-active {
  opacity: 1;
  transform: scale(1);
  z-index: 2;
}

.swiper {
  min-width: 100%;
}

.slider-presentaciones .swiper-button-next,
.slider-presentaciones .swiper-button-prev {
  color: var(--color-text);
  background: rgba(255, 255, 255, 0.1);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  transition: all 0.3s ease;
}

.slider-presentaciones .swiper-button-next:after,
.slider-presentaciones .swiper-button-prev:after {
  font-size: 18px;
}

.slider-presentaciones .slick-arrow {
  position: absolute;
  top: 50%;
  z-index: 10;
  background-color: unset;
  will-change: transform;
  transition: all 0.3s ease;
}

.slider-presentaciones .slick-arrow:hover {
  background-color: #01517312;
  transform: scale(1.1);
  box-shadow: 0px 0px 24px 5px rgba(0, 0, 0, 0.1);
  border: 1px solid #b9b9b98f;
}

.slider-presentaciones .slick-arrow.slick-prev {
  left: -100px;
}

.slider-presentaciones .slick-arrow.slick-next {
  right: -100px;
}

/* slider presentaciones. END */

.experiencias {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  column-gap: 1rem;
  row-gap: 2rem;
  text-align: center;
}

.experiencia-item .gradient-text {
  font-size: 26px;
  font-weight: 600;
  letter-spacing: -1.04px;
}

.experiencia-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 0.25rem;
}

.experiencia-item p {
  margin: 0;
}

.experiencia-item p:nth-child(2) {
  max-width: 280px;
}

@media only screen and (max-width: 768px) {
  .experiencias {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
  }
}

@media only screen and (max-width: 550px) {
  .experiencias {
    gap: 1rem 1rem;
  }

  .experiencia-item .gradient-text {
    font-size: 1.25rem;
  }

  .experiencia-item p:nth-child(2) {
    font-size: 1.1rem;
  }
}

/* horizontal product slider */
.slider-product-cards .product-slider-viewport {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.slider-product-cards .product-slider-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 12;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 50%;
  background: rgba(240, 241, 244, 0.95);
  color: #54555a;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  transition: background-color 0.3s ease, opacity 0.3s ease, transform 0.3s ease;
}

.slider-product-cards .product-slider-arrow:hover:not(:disabled) {
  background: #fff;
  transform: translateY(-50%) scale(1.05);
}

.slider-product-cards .product-slider-arrow:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.slider-product-cards .product-slider-prev {
  left: 20px;
}

.slider-product-cards .product-slider-next {
  right: 20px;
}

.slider-product-cards.black .product-slider-arrow {
  background: rgba(84, 85, 90, 0.95);
  color: #f0f1f4;
}

.slider-product-cards.black .product-slider-arrow:hover:not(:disabled) {
  background: #54555a;
}

@media only screen and (max-width: 768px) {
  .slider-product-cards .product-slider-arrow {
    width: 38px;
    height: 38px;
    font-size: 16px;
  }

  .slider-product-cards .product-slider-prev {
    left: 8px;
  }

  .slider-product-cards .product-slider-next {
    right: 8px;
  }
}

.slider-product-cards a:after {
  display: none;
}

@media only screen and (max-width: 1920px) {
  #Wrapper .slider-product-cards>.mcb-wrap-inner {
    margin-left: calc((100vw - 810px) / 2);
  }

  #Wrapper .productos .slider-product-cards>.mcb-wrap-inner {
    margin-left: calc((100vw - 1370px) / 2);
  }
}

.product-card a.title_link:after {
  display: none;
}

.slider-product-cards {
  overflow: visible;
  width: 100vw;
  position: relative;
}

.slider-product-cards>.mcb-wrap-inner {
  padding-top: 10rem;
  display: flex;
  flex-wrap: nowrap;
  gap: 2rem;
}

.slider-track {
  display: flex;
  will-change: transform;
}

.slider-product-cards .product-card {
  flex: 0 0 25vw;
  min-width: 300px;
  cursor: pointer;
  will-change: transform;
}

#Wrapper .product-card .mfn-img-box img {
  border-radius: 34px;
}

.slider-product-cards .swiper-wrapper {
  display: flex;
  width: 100%;
  height: 100%;
}

.slider-product-cards .swiper-slide {
  height: auto;
  flex-shrink: 0;
  width: 100%;
  position: relative;
  transition-property: transform;
}

.slider-product-cards .swiper-pagination {
  bottom: -30px;
  position: absolute;
  width: 100%;
  text-align: center;
}

.slider-product-cards .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: var(--principal);
  opacity: 0.3;
  margin: 0 4px;
  display: inline-block;
  border-radius: 50%;
}

.slider-product-cards .swiper-pagination-bullet-active {
  opacity: 1;
}

.slider-product-cards .swiper-button-next,
.slider-product-cards .swiper-button-prev {
  width: 40px;
  height: 40px;
  background: var(--principal);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  cursor: pointer;
}

.slider-product-cards .swiper-button-next:after,
.slider-product-cards .swiper-button-prev:after {
  font-size: 20px;
  color: var(--blanco);
}

.slider-product-cards .swiper-button-next {
  right: 10px;
}

.slider-product-cards .swiper-button-prev {
  left: 10px;
}

.slider-product-cards .swiper-button-next:hover,
.slider-product-cards .swiper-button-prev:hover {
  background: var(--secundario);
}

#Wrapper .product-video-hover,
#Wrapper .product-video-hover .content_video,
#Wrapper .product-video-hover .section_video,
#Wrapper .product-video-hover video {
  /* min-height: 73vh; */
  object-fit: cover;
  border-radius: 34px;
  height: 100%;
}

#Wrapper .product-card>.mcb-wrap-inner,
#Wrapper .product-card .product-video-hover {
  max-height: 540px;
  min-height: 540px;
}

.product-video-hover {
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: 34px;
}

.product-card .column_image.mfn-column-absolute img {
  min-width: 100%;
  max-height: 700px;
  object-fit: cover;
  border-radius: 24px;
}

@media only screen and (min-width: 1920.9px) {
  #Wrapper .section.full-width:not(.sticky-animation, .video-hover)>.section_wrapper {
    max-width: 1920px !important;
    margin: auto;
  }

  .slider-product-cards .product-card {
    flex: 0 0 25vw;
  }

  .product-card .column_image.mfn-column-absolute img {
    min-height: 50dvh;
  }

  #Wrapper .product-card>.mcb-wrap-inner,
  #Wrapper .product-card .product-video-hover {
    max-height: 50dvh;
    min-height: 50dvh;
  }

  .slider-product-cards .pinned-slider-dots {
    position: absolute;
    left: 50%;
    bottom: -110px;
    transform: translateX(-50%);
  }

  .productos .pinned-slider-dots {
    bottom: -90px;
  }
}

@media only screen and (min-width: 1200.9px) and (max-width: 1920px) {
  .slider-product-cards .product-card {
    flex: 0 0 33vw;
  }
}

@media only screen and (max-width: 1550px) {

  /* #Wrapper .slider-product-cards .product-card > .mcb-wrap-inner,
  #Wrapper .product-card .column_image.mfn-column-absolute img,
  #Wrapper .product-video-hover,
  #Wrapper .product-video-hover .content_video,
  #Wrapper .product-video-hover .section_video,
  #Wrapper .product-video-hover video {
    min-height: 760px;
    max-height: 760px;
  } */
  #Wrapper .product-card>.mcb-wrap-inner,
  #Wrapper .product-video-hover,
  #Wrapper .product-video-hover .mcb-item-video-inner {
    border-radius: 34px;
  }

  #Wrapper .product-card .column_image:last-child {
    height: fit-content;
    min-height: unset;
    max-height: none;
  }

  /* #Wrapper .product-card .column_image.mfn-column-absolute img {
    max-height: 760px;
  } */
}

@media only screen and (min-width: 1200.9px) {
  .pinned-slider-dots {
    position: absolute;
    left: 50%;
    bottom: 120px;
    transform: translateX(-50%);
  }

  .productos .pinned-slider-dots {
    bottom: -90px;
  }
}

@media only screen and (max-width: 1200px) {
  button.play-pause-button {
    max-width: 56px;
    max-height: 56px;
  }

  .slider-controls svg.play-pause-icon {
    min-width: 38px;
    min-height: 38px;
  }

  #Wrapper .product-card>.mcb-wrap-inner,
  #Wrapper .product-card .product-video-hover,
  .product-card .column_image.mfn-column-absolute img {
    max-height: 500px;
    min-height: 500px;
  }

  .slider-product-cards {
    margin: 4rem 0;
  }

  /* .slider-product-cards > .mcb-wrap-inner {
    flex-wrap: wrap;
  } */
  /* .slider-product-cards > .mcb-wrap-inner {
    overflow-x: scroll;
    padding-right: 2rem;
  }
  .scroll-track {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 390px;
    height: 6px;
    background: var(--light-gray);
    border-radius: 3px;
    overflow: hidden;
    transform: translateZ(0);
    background: rgba(253, 253, 252, 0.2);
    backdrop-filter: blur(36px);
  }

  .scroll-thumb {
    position: absolute;
    height: 100%;
    background: var(--primary);
    border-radius: 3px;
    width: 0;
    left: 0;
    transition: background-color 0.3s ease;
    will-change: transform;
    transform: translateZ(0);
    background: rgba(253, 253, 252, 0.2);
  } */
}

@media only screen and (min-width: 768.9px) and (max-width: 1200px) {
  .slider-product-cards .product-card {
    flex: 0 0 50vw;
  }
}

/* @media only screen and (max-width: 1024px) {
  .slider-product-cards {
    min-width: 100vw;
    overflow: scroll;
  }
} */

@media (max-width: 768px) {
  .slider-product-cards .product-card {
    flex: 0 0 33vw;
  }

  .slider-product-cards .product-card {
    min-width: 389px;
  }

  .product-card>.mcb-wrap-inner>.mfn-column-absolute,
  .slider-product-cards .product-card .image_wrapper a img {
    min-height: 400px;
    max-height: 400px;
  }

  #Wrapper .product-card img,
  .product-card .column_image.mfn-column-absolute img {
    max-height: 400px;
  }

  #Wrapper .product-card .svg.mfn-img-box img {
    min-height: 38px;
    max-height: 38px;
  }

  #Wrapper .black .slider-controls {
    bottom: -24px;
  }
}

@media (max-width: 500px) {
  .slider-product-cards .product-card {
    flex: 0 0 100vw;
  }

  .product-card .column_image.mfn-column-absolute img {
    max-height: 52vh;
  }

  .product-card>.mcb-wrap-inner,
  .product-video-hover,
  .product-video-hover .content_video,
  .product-video-hover .section_video,
  .product-video-hover video {
    min-height: 52vh;
  }

  #Wrapper .black .slider-controls {
    bottom: -30px;
  }

  .slider-product-cards .product-card {
    min-width: 393px;
    max-width: 393px;
  }

  /* .slider-product-cards,
  .slider-product-cards > .mcb-wrap-inner {
    overflow: visible !important;
  } */
}

/* row antes y después */
.antes-y-despues img {
  border-radius: 30px;
}

.antes-y-despues {
  max-width: 1420px;
}

/* .antes-y-despues > .mcb-wrap-inner {
  z-index: -1;
} */

/* slider fases */
.slider-fases {
  max-width: 1920px;
  margin: 0 auto;
}

.slider-fases .fase-item .image_frame .image_wrapper {
  border-radius: 24px;
}

.slider-fases .title {
  transition: all 0.3s ease;
}

.slider-fases .slick-active h3.title {
  filter: drop-shadow(0px 0px 0px #fff) drop-shadow(0px 0px 0px #ff4016) drop-shadow(0px 0px 0px #ffd9ba) drop-shadow(0px 0px 3px #ffd9ba) drop-shadow(0px 0px 0px #ffce65);
  max-width: fit-content;
}

.slider-fases .slick-arrow {
  position: absolute;
  bottom: -70px;
  padding: 0;
  background-color: #3c3c3f;
  min-height: 38px;
  min-width: 38px;
}

.slider-fases .slick-prev {
  right: 59px;
}

.slider-fases .slick-next {
  right: 0;
}

/* slider equipo */

/* .slider-equipo {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding: 0 50px;
}

.slider-equipo .swiper-wrapper {
    display: flex;
    width: 100%;
}

.slider-equipo .equipo-item {
    flex: 0 0 auto;
    width: 276px;
    margin-right: 24px;
}

.slider-equipo .image_wrapper {
    border-radius: 24px;
    overflow: hidden;
}

.slider-equipo .swiper-button-next,
.slider-equipo .swiper-button-prev {
    width: 40px;
    height: 40px;
    background: var(--principal);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease;
}

.slider-equipo .swiper-button-next:after,
.slider-equipo .swiper-button-prev:after {
    font-size: 20px;
    color: var(--blanco);
    font-weight: bold;
}

.slider-equipo .swiper-button-next {
    right: 0;
}

.slider-equipo .swiper-button-prev {
    left: 0;
}

.slider-equipo .swiper-button-next:hover,
.slider-equipo .swiper-button-prev:hover {
    background: var(--secundario);
}

.slider-equipo .swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}

@media (max-width: 767px) {
    .slider-equipo {
        padding: 0 40px;
    }

    .slider-equipo .equipo-item {
        width: 210px;
    }
} */

/* slider servicios */
.slider-equipo {
  position: relative;
  width: 100%;
}

.slider-equipo .slick-slide {
  display: flex;
  justify-content: center;
  align-items: center;
}

.slider-equipo .equipo-item .image_frame,
.slider-equipo .equipo-item .image_wrapper,
.slider-equipo .equipo-item img {
  min-width: 99%;
  border-radius: 36px;
  object-fit: cover;
}

/*********************************\
             CONTACTO
\*********************************/
body .wpcf7-form [type="submit"] {
  width: 100%;
  margin: 0 !important;
}

body .wpcf7-form .wpcf7-spinner {
  margin: 5px 0 0 -12px;
  left: 50%;
}

body .wpcf7-form .form-legal p {
  font-size: 0.7em;
  line-height: 1.5em;
  opacity: 0.7;
  padding: 0;
  text-align: justify;
}

body .wpcf7-form input[name="politica"]+span {
  font-weight: 500;
}

body .column_cf7 input[type="checkbox"] {
  min-height: 0px;
  max-width: fit-content;
}

body .wpcf7-list-item {
  margin: 0;
}

body input[type="checkbox"],
body input[type="radio"] {
  accent-color: var(--principal);
}

#Wrapper .column_icon_box_2 a:not(.button) {
  color: #0d0d0d;
}

#Wrapper .column_icon_box_2 a::after {
  display: none;
}

#Wrapper .info-box>.mcb-column-inner {
  border: 1px solid #0d0d0d59;
}

.info-box>.mcb-column-inner {
  min-height: 100%;
  place-items: center;
  place-content: center;
}

.formulario-contacto {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
  padding: 24px;
}

.formulario-contacto label {
  position: relative;
  display: block;
  margin-bottom: 1rem;
}

.formulario-contacto input:not([type="submit"]),
.formulario-contacto textarea {
  width: 100%;
  padding: 1rem 0;
  border: none;
  border-bottom: 2px solid #0d0d0dd4;
  background: transparent;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -2.12px;
  color: #0d0d0d;
  transition: all 0.3s ease;
  box-shadow: none;
  position: relative;
}

.formulario-contacto input:not([type="submit"]):focus,
.formulario-contacto textarea:focus {
  outline: none;
  border-bottom-color: transparent;
  background-color: transparent;
  border-radius: 4px;
  padding: 1rem 0;
}

.formulario-contacto input:not([type="submit"])::after,
.formulario-contacto textarea::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 2px;
  background-color: #005587;
  transition: width 0.3s ease;
}

.formulario-contacto .floating-label {
  position: absolute;
  left: 0;
  top: 1rem;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: -2.12px;
  color: #0d0d0d;
  pointer-events: none;
  transition: all 0.3s ease;
}

.formulario-contacto input:focus+.floating-label,
.formulario-contacto textarea:focus+.floating-label,
.formulario-contacto input:not(:placeholder-shown)+.floating-label,
.formulario-contacto textarea:not(:placeholder-shown)+.floating-label {
  top: -0.5rem;
  font-size: 1rem;
  color: #005587;
}

.formulario-contacto input::placeholder,
.formulario-contacto textarea::placeholder {
  opacity: 0;
}

/* Formulario de contacto */
.formulario-contacto label.validate_email_against_bot {
  display: none !important;
  visibility: hidden;
  opacity: 0;
  height: 0;
  width: 0;
  overflow: hidden;
  position: absolute;
  pointer-events: none;
}

.formulario-contacto label.validate_email_against_bot input {
  display: none !important;
}

@media only screen and (max-width: 500px) {
  .formulario-contacto {
    gap: 0;
  }
}

/* social icons */
.social svg {
  width: 100%;
  stroke: url(#LIN);
}

.social svg path:not(#facebook) {
  display: none;
}

/*********************************\
         PÁGINAS INTERNAS
\*********************************/
/* Nosotros */
.big h1.title,
.row-valores h2.title {
  font-size: clamp(4rem, 7.6vw, 7.6rem);
  line-height: 1;
  font-weight: 500;
  letter-spacing: -4.8px;
}

.scroll-down>.mcb-wrap-inner {
  max-width: 38px;
  margin: auto;
}

.scroll-down-btn {
  overflow: visible;
}

/* video */
.video-about video {
  min-height: 100dvh;
  object-fit: cover;
}

@media only screen and (max-width: 768px) {
  .video-about video {
    min-height: 50dvh;
  }
}

/* row valores */
.row-valores .valor-box {
  max-width: 450px;
}

/* .valor-heading {
  max-width: fit-content;
} */

.valor-container {
  min-height: 480px;
}

@media only screen and (max-width: 768px) {
  .valor-container {
    min-height: 400px;
  }
}

.valor-container>.mcb-wrap-inner {
  flex-direction: column;
  justify-content: space-around;
}

.valor-container:nth-child(odd)>.mcb-wrap-inner {
  align-items: flex-start;
}

.valor-container:nth-child(even)>.mcb-wrap-inner {
  align-items: flex-end;
}

.valor-heading h2 {
  text-align: center;
}

/* slider nosotros */
.slider-nosotros .slick-arrow {
  position: absolute;
  bottom: 24px;
  right: 24px;
  padding: 0;
  min-width: 38px;
  min-height: 38px;
}

.slider-nosotros .slick-arrow {
  top: -90px;
  bottom: unset;
  min-width: 38px;
  min-height: 38px;
  max-height: 38px;
  max-width: 38px;
}

@media only screen and (max-width: 838px) {
  .slider-nosotros .slick-arrow {
    top: 30px;
  }
}

@media only screen and (max-width: 425px) {
  #Wrapper .slider-nosotros .slick-arrow {
    top: 16px;
  }

  #Wrapper .modal-slider .slick-arrow,
  #Wrapper .slider-nosotros .slick-arrow,
  #Wrapper .slider-nosotros .slick-arrow img {
    max-width: 28px;
    max-height: 28px;
    min-width: 28px;
    min-height: 28px;
  }

  #WRapper .slider-nosotros .slick-next.slick-arrow {
    right: 16px;
  }

  #Wrapper .slider-nosotros .slick-prev.slick-arrow {
    right: 62px;
  }
}

/* faqs */
#Wrapper .faqs .mfn-acc.accordion_wrapper {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}

#Wrapper .faqs .title {
  color: #000;
  box-shadow: unset;
  padding-left: 80px;
  padding-block: 2rem;
  line-height: 1.2;
}

#Wrapper .faqs .accordion .question>.title>.acc-icon-plus,
#Wrapper .faqs .accordion .question>.title>.acc-icon-minus {
  position: static;
}

#Wrapper .faqs .question {
  border: 1px solid #f0f1f4;
  border-width: 0 0 1px 0;
  padding-block: 2rem;
}

#Wrapper .faqs .accordion .question .title>.acc-icon-minus:before,
#Wrapper .faqs .accordion .question>.title>.acc-icon-plus:before {
  margin: 0 !important;
  min-width: 38px;
  background-color: #f0f1f4;
  border-radius: 100vmax;
  min-height: 38px;
  place-content: center;
}

#Wrapper .faqs .style-simple .accordion .question.active:after {
  display: none !important;
}

#Wrapper .faqs .title {
  padding-left: 0;
  padding-block: 0;
  position: relative;
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 2rem;
  font-size: clamp(1.4rem, 2.7vw, 2.2rem);
}

#Wrapper .faqs .question.active .title {
  padding-bottom: 0.5rem;
}

@media only screen and (min-width: 1100px) {
  #Wrapper .faqs.no-imagen .answer {
    left: calc((100vw - 400px) / 2);
    max-width: 50vw;
    position: absolute;
    top: 20px;
    padding: 0;
  }

  #Wrapper .faqs.no-imagen .question.active {
    min-height: 180px;
  }
}

@media only screen and (max-width: 959px) {
  #Wrapper .faqs .question {
    padding-block: 1rem;
  }
}

@media only screen and (max-width: 450px) {
  #Wrapper .faqs .answer {
    font-size: 1rem;
  }
}

/* Áreas */
.cover video {
  object-fit: cover;
}

@media only screen and (min-width: 1100.9px) {
  .hero.area>.section_wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
  }
}

@media only screen and (max-width: 1100px) {
  .hero.area>.section_wrapper {
    grid-template-columns: 1fr;
  }

  .hero.area video {
    max-height: 500px;
    width: 100%;
  }

  .hero.area .column_video {
    margin-top: 4rem;
  }
}

@media only screen and (max-width: 768px) {
  .hero.area video {
    max-height: 350px;
  }

  .hero.area .column_video {
    margin-top: 1rem;
  }
}

/* slider audiovisuales */

.slider-audiovisuales.audiovisual-slider-initialized {
  position: relative;
  padding-bottom: 5rem;
}

.slider-audiovisuales .audiovisual-slider-viewport {
  overflow: hidden;
  width: 100%;
}

.slider-audiovisuales .audiovisual-slider-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 50%;
  background: #f0f1f4;
  color: #0d0d0d;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
}

.slider-audiovisuales .audiovisual-slider-arrow:hover:not(:disabled) {
  background: var(--secundario, #005587);
  color: #fff;
}

.slider-audiovisuales .audiovisual-slider-arrow:disabled {
  opacity: 0.35;
  cursor: default;
}

.slider-audiovisuales .audiovisual-slider-prev {
  left: 0.5rem;
}

.slider-audiovisuales .audiovisual-slider-next {
  right: 0.5rem;
}

.section-slider-audiovisuales .slider-controls {
  position: relative;
  bottom: auto;
  left: auto;
  transform: none;
  justify-content: center;
  margin-top: 1.5rem;
}

@media only screen and (min-width: 769px) {
  #Wrapper .mcb-section.mfn-default-section:not(.video-hover):not(.video-about):not(.hero):not(.overflow-hidden) {
    padding-top: 5rem !important;
    padding-bottom: 5rem !important;
  }
}

@media only screen and (min-width: 1428px) {

  /* #Wrapper
    .section-slider-audiovisuales
    > .section_wrapper
    .pin-spacer
    > .wrap
    > .mcb-wrap-inner {
    margin-left: calc((100vw - 2890px) / 2) !important;
  } */
  .slider-audiovisuales.areas>.mcb-wrap-inner,
  .slider-audiovisuales.productos>.mcb-wrap-inner {
    margin-left: calc((100vw - 3300px / 2));
  }
}

@media only screen and (min-width: 768.9px) and (max-width: 1427.9px) {
  #Wrapper .section-slider-audiovisuales>.section_wrapper .pin-spacer>.wrap>.mcb-wrap-inner {
    padding-left: 2rem;
  }
}

@media only screen and (max-width: 768px) {
  #Wrapper .section-slider-audiovisuales>.section_wrapper .pin-spacer>.wrap>.mcb-wrap-inner {
    padding-left: 1rem;
  }

  #Wrapper .slider-audiovisuales .audiovisual-item>.mcb-wrap-inner {
    min-height: 430px;
  }

  #Wrapper .slider-audiovisuales .audiovisual-item {
    min-width: 80vw;
  }

  #Wrapper .product-card>.mcb-wrap-inner,
  #Wrapper .product-card .product-video-hover {
    min-height: 360px;
    max-height: 360px;
  }
}

.audiovisual-item a.title_link:after {
  display: none;
}

.audiovisual-item {
  min-width: 644px;
}

.slider-product-cards .product-card .mcb-item-video-inner {
  height: 100%;
}

/* Botón icono (+) en cards de producto */
#Wrapper .product-card .column_image:last-child {
  position: relative;
  z-index: 3;
}

.product-card .svg.mfn-img-box .image_links {
  display: none !important;
}

.product-card .svg.mfn-img-box .image_wrapper .mask,
.product-card .svg.mfn-img-box .image_wrapper .mask:after {
  display: none !important;
  opacity: 0 !important;
}

.product-card .svg.mfn-img-box .image_wrapper img,
.product-card .svg.mfn-img-box:hover .image_wrapper img,
.product-card .svg.mfn-img-box:focus .image_wrapper img,
.product-card .svg.mfn-img-box.hover .image_wrapper img {
  margin-bottom: 0 !important;
  top: 0 !important;
  transform: none !important;
}

.product-card .svg.mfn-img-box .image_wrapper {
  overflow: visible;
  transition: transform 0.3s ease;
}

.product-card .svg.mfn-img-box:hover .image_wrapper,
.product-card .svg.mfn-img-box:focus-within .image_wrapper {
  transform: scale(1.08);
}

.pinned-slider-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #54555a;
  backdrop-filter: blur(72px);
  cursor: pointer;
  padding: 0;
  border-radius: 100vmax;
}

.slider-controls {
  position: absolute;
  bottom: -100px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 0.5rem;
}

.pinned-slider-dots {
  display: flex;
  gap: 1rem;
  z-index: 10;
  background-color: #f0f1f4;
  padding: 1rem 2rem;
  border-radius: 100vmax;
  min-height: 56px;
  align-items: center;
}

.play-pause-button {
  border: none;
  padding: 1rem;
  cursor: pointer;
  color: #54555a;
  border-radius: 100vmax;
  transition: all 0.3s ease;
  z-index: 11;
}

.play-pause-button .play-icon {
  width: 24px;
  height: 20px;
}

.black .play-pause-button,
.black .play-pause-button path {
  background-color: #54555a;
  color: #f0f1f4;
  fill: #f0f1f4;
}

/* .play-pause-button .pause-icon {
  display: none;
}

.play-pause-button.playing .play-icon {
  display: none;
}

.play-pause-button.playing .pause-icon {
  display: block;
} */

#Wrapper :not(.black) button.play-pause-button {
  background-color: #f0f1f4;
  color: #54555a;
}

#Wrapper :not(.black) button.play-pause-button svg path {
  fill: #54555a;
}

.section-slider-audiovisuales .pinned-slider-dots {
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
}

/* slider audiovisuales. end */
/* tags */
.tags-container {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  text-align: center;
  max-width: 390px;
  justify-content: flex-end;
}

.tags>.mcb-column-inner {
  place-items: end;
}

.tags-container .tag {
  background-color: transparent;
  border: 1px solid #3c3c3f;
  color: #f0f1f4;
  align-items: center;
  padding: 8px 24px;
  border-radius: 100vmax;
}

.tags-container .tag p {
  margin: 0;
  font-size: 13.3px;
  letter-spacing: -0.532px;
}

@media only screen and (max-width: 768px) {
  .tags {
    order: -1;
  }

  .row-tags .img-full .image_frame,
  .row-tags .img-full .image_wrapper,
  .row-tags .img-full img {
    min-width: 100%;
    max-height: 400px;
    object-fit: cover;
    border-radius: 24px;
  }

  .row-tags .fr-auto>.mcb-wrap-inner {
    gap: 4rem;
  }
}

@media only screen and (max-width: 550px) {

  .row-tags .img-full .image_frame,
  .row-tags .img-full .image_wrapper,
  .row-tags .img-full img {
    max-height: 300px;
  }
}

/* eventos */
#Wrapper .eventos {
  background-position: -190px 700px;
}

.eventos-container>.mcb-wrap-inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 4rem;
}

.eventos .mfn-icon-box {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  gap: 1.5rem;
}

.eventos .mfn-icon-box .title {
  text-align: left;
}

.eventos-container>.mcb-wrap-inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4rem 2rem;
}

.evento-item a::after {
  display: none;
}

@media only screen and (min-width: 768.9px) {
  .eventos-container .evento-item:last-child {
    grid-column: span 2;
  }
}

@media only screen and (max-width: 768px) {
  .eventos-container>.mcb-wrap-inner {
    grid-template-columns: 1fr;
    gap: 4rem 0;
  }

  .eventos-container .evento-item {
    min-width: 100%;
  }

  .eventos-container .evento-item img {
    max-height: 390px;
    object-fit: cover;
  }

  #Wrapper .evento-item .column_image,
  #Wrapper .evento-item .image_frame,
  #Wrapper .evento-item .image_wrapper,
  #Wrapper .evento-item .image_frame img {
    min-width: 100%;
    object-fit: cover;
    border-radius: 24px;
  }
}

/* modal eventos */
div#mfn-popup-template-741>div,
div#mfn-popup-template-746>div,
div#mfn-popup-template-747>div {
  border-radius: 24px;
}

#mfn-popup-template-741 .mfn-popup-tmpl-content-wrapper,
#mfn-popup-template-741 .section_wrapper,
#mfn-popup-template-746 .mfn-popup-tmpl-content-wrapper,
#mfn-popup-template-746 .section_wrapper,
#mfn-popup-template-747 .mfn-popup-tmpl-content-wrapper,
#mfn-popup-template-747 .section_wrapper {
  padding: 0;
}

.mfn-popup-tmpl-content-wrapper {
  padding: 0 !important;
}

.mfn-popup-tmpl-content {
  max-width: 837px !important;
  width: 100% !important;
  border-radius: 24px;
}

.modal-slider .slick-arrow,
.slider-nosotros .slick-arrow {
  background-color: #fff;
}

.modal-slider .slick-list.draggable,
.slider-nosotros .slick-list.draggable {
  border-radius: 24px;
}

.modal-slider .slick-arrow,
.slider-nosotros .slick-arrow {
  position: absolute;
  bottom: 24px;
  right: 24px;
  padding: 0;
  min-width: 38px;
  min-height: 38px;
}

.modal-slider .slick-prev.slick-arrow,
.slider-nosotros .slick-prev.slick-arrow {
  right: 72px;
  z-index: 10;
}

/* hotspots */
.hotspot-item .mfn-icon-box {
  flex-direction: row;
  align-items: center;
  gap: 1rem;
  max-width: 300px;
}

.hotspot-item p.title.label,
#Wrapper .hotspot-item .icon-wrapper {
  margin: 0;
}

.hotspot-item {
  max-width: fit-content;
  position: absolute;
}

.hotspot-img .image_wrapper {
  border-radius: 100vmax;
  cursor: pointer;
}

.hotspot-item:nth-of-type(2) {
  top: 184px;
  left: 184px;
}

.hotspot-item:nth-of-type(3) {
  top: 134px;
  left: 597px;
}

.hotspot-item:nth-of-type(4) {
  top: 469px;
  right: 89px;
}

@media only screen and (max-width: 959px) {
  .hotspot-item:nth-of-type(2) {
    top: 91px;
    left: 91px;
  }

  .hotspot-item:nth-of-type(3) {
    top: 42px;
    left: unset;
    right: 20px;
  }

  .hotspot-item:nth-of-type(4) {
    top: unset;
    right: 149px;
    bottom: 40px;
  }

  .hotspot-item .mfn-icon-box {
    max-width: 243px;
  }

  .hotspot-item .mfn-icon-box img {
    max-width: 90px;
  }
}

@media only screen and (max-width: 768px) {
  .hotspot-item:nth-of-type(2) {
    top: 154px;
    left: 16px;
  }

  .hotspot-item:nth-of-type(4) {
    top: unset;
    right: 16px;
    bottom: 16px;
  }
}

@media only screen and (max-width: 550px) {
  #Wrapper .hotspots>.mcb-wrap-inner {
    min-height: 400px;
  }
}

/* marquee / carrusel de proyección */
.logos-marquee {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.logos-marquee .marquee-viewport {
  width: 100%;
  overflow: hidden;
  position: relative;
}

.logos-marquee .marquee-wrapper {
  display: flex;
  align-items: center;
  gap: 1rem;
  width: max-content;
}

.logos-marquee .column {
  flex-shrink: 0;
}

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

.logos-marquee img {
  max-width: 100%;
  height: auto;
}

.logos-marquee .marquee-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 12;
  width: 44px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  border-radius: 50%;
  background: rgba(240, 241, 244, 0.95);
  color: #54555a;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  transition: background-color 0.3s ease, opacity 0.3s ease,
    transform 0.3s ease;
}

.logos-marquee .marquee-arrow:hover:not(:disabled) {
  background: #fff;
  transform: translateY(-50%) scale(1.05);
}

.logos-marquee .marquee-arrow:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.logos-marquee .marquee-prev {
  left: 20px;
}

.logos-marquee .marquee-next {
  right: 20px;
}

@media only screen and (min-width: 1422px) {
  .logos-marquee.proyeccion {
    margin-left: calc((100vw - 1360px) / 2);
  }
}

@media only screen and (max-width: 1421.9px) {
  .logos-marquee.proyeccion {
    margin-left: 2rem;
  }
}

@media only screen and (max-width: 768px) {
  .logos-marquee.proyeccion {
    padding-left: 1rem;
  }

  .logos-marquee .marquee-arrow {
    width: 38px;
    height: 38px;
    font-size: 16px;
  }

  .logos-marquee .marquee-prev {
    left: 8px;
  }

  .logos-marquee .marquee-next {
    right: 8px;
  }
}

/* Proyecciones */
.slider-proyecciones>.mcb-wrap-inner {
  display: flex;
  flex-wrap: nowrap;
  column-gap: 2rem;
}

.slider-proyecciones>.mcb-wrap-inner>.column {
  /* width: 100%; */
  max-width: fit-content;
}

#Wrapper .column_icon_box_2.arrow-link {
  cursor: default;
}

#Wrapper .column_icon_box_2.arrow-link .mfn-icon-box {
  flex-direction: row;
  gap: 0.5rem;
  align-items: center;
  max-width: fit-content;
}

#Wrapper .column_icon_box_2.arrow-link .icon-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: url("/wp-content/uploads/2025/06/check-beneficio.svg") no-repeat center !important;
  background-size: 1rem 1rem !important;
  background-color: transparent !important;
  width: 1rem !important;
  height: 1rem !important;
  min-width: 1rem !important;
  min-height: 1rem !important;
  flex-shrink: 0;
  overflow: visible !important;
}

#Wrapper .column_icon_box_2.arrow-link .icon-wrapper img {
  display: none !important;
}

#Wrapper .column_icon_box_2.arrow-link p.title.label {
  max-width: fit-content;
  margin: 0;
}

/* tabs */
.tabs-row .tabs-container>.mcb-wrap-inner {
  flex-wrap: nowrap;
}

@media only screen and (min-width: 1200px) {
  .tabs-container .column_accordion {
    min-width: 700px;
  }
}

@media only screen and (max-width: 1199.9px) {
  .tabs-container .column_accordion {
    min-width: 56vw;
  }
}

#Wrapper .tabs-container .question.active:after {
  width: 0;
}

#Wrapper .tabs-container .answer {
  box-shadow: unset;
  padding-left: 80px;
}

@media only screen and (max-width: 768px) {
  .tabs-row .tabs-container>.mcb-wrap-inner {
    flex-wrap: wrap;
  }

  #Wrapper .tabs-container .image_frame img {
    max-height: 300px;
    max-width: 300px !important;
    object-fit: cover;
  }

  #Wrapper .tabs-container .image_frame {
    min-width: 100%;
    text-align: center;
  }
}

@media only screen and (max-width: 450px) {
  #Wrapper .faqs .title {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
  }

  #Wrapper .tabs-container .answer {
    padding-left: 0;
  }
}

/* flip */
.flip-hover {
  perspective: 1000px;
}

.flip-container {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 540px;
  transform-style: preserve-3d;
  transition: transform 0.6s;
}

.flip-front,
.flip-back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.flip-back {
  transform: rotateY(180deg);
}

/* Asegurar que el contenido dentro del flip mantenga su estilo */
.flip-front .mcb-wrap-inner,
.flip-back .mcb-wrap-inner {
  height: 100%;
  width: 100%;
}

.flip-row.sonido>.mcb-wrap-inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

@media only screen and (max-width: 1200px) {
  .flip-container {
    min-height: 400px;
  }
}

@media only screen and (max-width: 959px) {
  .flip-row>.mcb-wrap-inner {
    flex-wrap: wrap;
  }

  .flip-row .flip-container {
    min-height: 400px;
  }
}

@media only screen and (max-width: 768px) {
  .flip-row.sonido>.mcb-wrap-inner {
    grid-template-columns: 1fr;
  }

  .flip-row .flip-container {
    min-height: 400px;
    max-width: 500px;
    margin: auto;
  }
}

@media only screen and (max-width: 450px) {

  .flip-row .flip-container,
  #Wrapper .flip-row .flip-container .mcb-wrap-inner {
    max-height: 300px;
    min-height: 300px;
  }
}

/* pinned slider */
.black .pinned-slider-dots {
  background-color: #54555a;
}

.black .pinned-slider-dot {
  background-color: #f0f1f4;
}

/*********************************\
          BLOG / NOTICIAS
\*********************************/
/* Archive */
body.blog .column_blog,
body.archive.category .column_blog,
body.archive.tag .column_blog {
  padding-bottom: 120px;
}

body.archive.category .mcb-sidebar,
body.archive.tag .mcb-sidebar {
  display: none;
}

/* Fixed nav arrows */
body .fixed-nav {
  box-shadow: 0 0 10px rgb(0 0 0 / 10%);
}

body .fixed-nav .desc h6 {
  line-height: 1.3;
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

body .fixed-nav .desc .date {
  font-size: 13px;
  color: var(--gris);
  border: 0;
}

body .fixed-nav .desc .date .icon-clock {
  display: none;
}

body .fixed-nav .photo img,
body .Recent_posts ul li .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Barra lateral */
body .Recent_posts ul li a .desc {
  padding: 8px 10px 3px;
  min-height: 80px;
}

body .Recent_posts ul li a .desc h6 {
  display: -webkit-box;
  line-clamp: 2;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 14px;
  line-height: 20px;
}

body .Recent_posts ul li a .desc .date {
  font-size: 12px;
  line-height: 14px;
}

body .widget:not(.widget_block)>h3 {
  font-size: 21px;
  line-height: 29px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: -1px;
}

body .mcb-sidebar select {
  width: 100%;
}

body .widget_categories ul {
  list-style: none;
  padding: 0;
  background: none;
}

body .widget_categories ul li:after {
  content: none;
}

body .widget_categories ul li a {
  padding: 5px 10px;
  background: var(--principal);
  display: block;
  border-radius: 3px;
  margin-bottom: 6px;
}

body .widget_categories ul li a:hover {
  background: var(--secundario);
}

/*********************************\
           WOOCOMMERCE
\*********************************/
body .woocommerce ul.products li.product .woocommerce-placeholder {
  border: 0;
}

body .woocommerce .quantity .qty {
  padding: 10px 30px !important;
}

body .woocommerce table.shop_table tr.order-total .includes_tax {
  display: block;
}

body .woocommerce table.shop_table tr.order-total .includes_tax .woocommerce-Price-amount {
  font-size: 1em;
  font-weight: 400;
  color: #767676;
}

.woocommerce div.product form.cart .reset_variations,
.woocommerce .sku_wrapper {
  display: none;
}

.woocommerce ul.products {
  display: grid;
  gap: 40px;
}

.woocommerce.columns-2 ul.products {
  grid-template-columns: repeat(2, 1fr);
}

.woocommerce.columns-3 ul.products,
.woocommerce ul.products.columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.woocommerce.columns-4 ul.products,
.woocommerce ul.products.columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.woocommerce ul.products:before,
.woocommerce ul.products:after {
  display: none;
}

.woocommerce ul.products li.product {
  height: inherit;
  margin: 0;
  width: auto !important;
}

/*********************************\
            RESPONSIVE
\*********************************/
@media only screen and (max-width: 1239px) {

  #Wrapper .container,
  #Wrapper .section_wrapper,
  #Wrapper .with_aside .content_wrapper {
    max-width: 100%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1239px) {
  body .Recent_posts ul li .photo {
    display: none;
  }

  body .Recent_posts ul li a .desc {
    margin: 0;
  }
}

@media only screen and (max-width: 959px) {
  body .animate {
    animation-delay: 0ms !important;
  }

  html.mfn-header-tmpl-burger-sidebar-opened #pojo-a11y-toolbar {
    display: none;
  }
}

@media only screen and (max-width: 767px) {

  #Wrapper .container,
  #Wrapper .section_wrapper,
  #Wrapper .with_aside .content_wrapper {
    padding: 0;
    padding-inline: 1rem;
  }

  .joinchat {
    --bottom: 20px;
  }

  .joinchat--left .joinchat__button {
    bottom: 0;
  }

  body .hideMobile {
    display: none !important;
  }

  body.style-simple .responsiveWidth {
    max-width: 670px;
    padding: 0 33px;
  }

  body .section_wrapper,
  body .container {
    padding-left: 0;
    padding-right: 0;
  }

  body .content_wrapper .mcb-column-inner {
    margin: 0;
  }
}

@media only screen and (max-width: 480px) {
  body .woocommerce-variation-add-to-cart {
    flex-direction: column;
  }

  body .woocommerce .quantity {
    width: 100%;
    margin: 0 0 5px !important;
  }

  body .woocommerce .product div.entry-summary .cart .button {
    width: 100%;
  }

  body .woocommerce .product div.entry-summary .accordion table.shop_attributes tr {
    display: flex;
    flex-direction: column;
    padding: 0 0 10px;
  }

  body .woocommerce .product div.entry-summary .accordion table.shop_attributes tr:last-child {
    padding: 0;
  }

  body .woocommerce .product div.entry-summary .accordion table.shop_attributes th,
  body .woocommerce .product div.entry-summary .accordion table.shop_attributes td {
    width: 100%;
    padding: 0;
    text-align: left;
  }
}

/* background animation */
.luces {
  overflow: visible;
  min-height: 100%;
  min-width: 100%;
}

.luces-container svg {
  position: absolute;
  width: fit-content;
  overflow: visible;
}

/* luces izquierda */
.luces-container .ellipse-1 {
  left: 150px;
  top: -260px;
  height: 106vh;
}

.luces-container .ellipse-4 {
  left: 240px;
  top: 160px;
  height: 76vh;
  transform: rotate(-8deg);
}

/* luces derecha */
.luces-container .ellipse-2 {
  right: 150px;
  top: -260px;
  height: 106vh;
}

.luces-container .ellipse-3 {
  top: 0;
  right: 0;
  right: 240px;
  top: 160px;
  height: 76vh;
  transform: rotate(8deg);
}

/* Placeholder styles */
::placeholder {
  color: #0d0d0d;
  opacity: 1;
}

::-webkit-input-placeholder {
  color: #0d0d0d;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #0d0d0d;
  opacity: 1;
}

::-ms-input-placeholder {
  color: #0d0d0d;
  opacity: 1;
}

/* Firefox */
input::placeholder {
  color: #0d0d0d;
  opacity: 1;
}

/* IE */
input:-ms-input-placeholder {
  color: #0d0d0d;
  opacity: 1;
}

/* Edge */
input::-ms-input-placeholder {
  color: #0d0d0d;
  opacity: 1;
}

/* Chrome, Safari, Opera */
input::-webkit-input-placeholder {
  color: #0d0d0d;
  opacity: 1;
}

.slider-equipo .slider-controls {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  display: flex;
  gap: 1rem;
  align-items: center;
}

.slider-equipo .play-pause-button {
  width: 3.5rem;
  height: 3.5rem;
  border-radius: 50%;
  border: none;
  background: linear-gradient(90deg, #83abd7 0%, #005587 100%);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  padding: 0;
}

.slider-equipo .play-pause-button:hover {
  transform: scale(1.1);
}

.slider-equipo .play-pause-button svg {
  width: 1.2rem;
  height: 1.2rem;
  fill: white;
}

.slider-equipo .play-pause-button .play-icon {
  display: block;
}

.slider-equipo .play-pause-button .pause-icon {
  display: none;
}

.slider-equipo .play-pause-button.paused .play-icon {
  display: none;
}

.slider-equipo .play-pause-button.paused .pause-icon {
  display: block;
}

@media only screen and (max-width: 768px) {
  .slider-equipo .slider-controls {
    bottom: 1rem;
  }

  .slider-equipo .play-pause-button {
    width: 3rem;
    height: 3rem;
  }

  .slider-equipo .play-pause-button svg {
    width: 1rem;
    height: 1rem;
  }
}

/*********************************\
   GALERÍAS — dificultar descarga
\*********************************/

.cards-swiper img,
.slider-presentaciones img,
.lightSlider img,
.slider-equipo img,
.mfp-img,
.mfp-figure img,
.gallery img,
.gallery-item img,
.woocommerce-product-gallery img {
  -webkit-user-drag: none;
  user-select: none;
  -webkit-user-select: none;
}

.contacto-email .title a,
.contacto-email a {
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

/* ==========================================================================
   AJUSTE VISUAL tarea 664342 — 10-sep-2026
   Copia previa: servidor2.respaldo.invbit.info:/tareas/20260910_t664342_tesec_previo-arreglos-css_claude/
   Para revertir: borrar desde esta marca hasta "FIN AJUSTE VISUAL 664342".
   ========================================================================== */

/* --- B. Vídeos que no llenaban el ancho del bloque ---
   Pantallas LED e Iluminación dejaban 74 px de banda a la derecha: el <video>
   se quedaba en su ancho intrínseco (1280) dentro de una columna de 1354,
   porque BeTheme lo pinta con max-width:100% y sin width.
   Cubre además el riesgo de 01_Produccion.mp4 en Nosotros, que heredaba
   object-fit: contain del navegador. */

#Wrapper .content_video video,
#Wrapper .section_video video,
#Wrapper video.mcb-video {
  width: 100%;
  object-fit: cover;
}

/* --- F. Pestañas del hero en móvil, desalineadas ---
   El contenedor es flex con align-items:center y los tres rótulos tienen
   alturas distintas, así que se centraban a alturas diferentes: 12 px de
   desfase entre "Congresos" y sus dos vecinos.
   (El corte del texto de "Congresos" no se arregla aquí: es cuestión de
   acortar el rótulo o darle más ancho, y eso es decisión de diseño.) */

@media (max-width: 768px) {
  .cards-titles .column_attr {
    align-items: flex-start;
  }
}


/* --- C. Hero de la portada: la imagen dejaba 42 px de franja lateral ---
   Las tres diapositivas se servían a 1312 px de ancho dentro de una
   diapositiva de 1354. Con esto llenan el ancho; a cambio la foto se recorta
   unos 19 px más por abajo, que es el intercambio que pidió el cliente.
   Aplicado con el criterio "que llenen el bloque aunque se pierda". */

.swiper-slide .card-image,
.swiper-slide .card-image .image_wrapper,
.swiper-slide .card-image .image_wrapper img {
  width: 100%;
}


/* --- A. Tarjetas de categoría: la imagen era más alta que su tarjeta ---
   Asomaban 160 px de foto por debajo en escritorio (250 a 2560, 40 en móvil),
   y era también lo que se veía por debajo del vídeo al pasar el ratón.

   La clave: no basta con dar `height:100%` a la imagen, porque eso resuelve
   contra el .image_wrapper y ese no tiene altura. Hay que dársela a TODA la
   cadena: columna-inner, image_frame, image_wrapper y el enlace.

   En móvil la caja sube de 360 a 400, que es el mínimo que ya pedía la imagen
   y el que evita que la tarjeta se aplaste. La sección crece 40 px de alto.
   Lo contrario, bajar la imagen a 360, no es posible: un min-height gana
   siempre a un height. */

.product-card .column_image.mfn-column-absolute .mcb-column-inner,
.product-card .column_image.mfn-column-absolute .image_frame,
.product-card .column_image.mfn-column-absolute .image_wrapper,
.product-card .column_image.mfn-column-absolute .image_wrapper a {
  height: 100%;
  display: block;
}

.product-card .column_image.mfn-column-absolute img {
  height: 100%;
  max-height: none;
  width: 100%;
  object-fit: cover;
}

@media (max-width: 768px) {
  #Wrapper .product-card > .mcb-wrap-inner,
  #Wrapper .product-card .product-video-hover {
    min-height: 400px;
    max-height: 400px;
  }

  .product-card .column_image.mfn-column-absolute img,
  .slider-product-cards .product-card .image_wrapper a img {
    min-height: 0;
    max-height: none;
    height: 100%;
  }
}

@media (max-width: 500px) {
  .product-card .column_image.mfn-column-absolute img {
    max-height: none;
    height: 100%;
  }
}

/* --- FIN AJUSTE VISUAL 664342 --- */

/* Preparación publicación Tesec, 664342: formato uniforme de las imágenes. */
.logos-marquee.proyeccion .image_wrapper img { width:100%; aspect-ratio:16/9; object-fit:cover; }
.evento-item .image_wrapper img { width:100%; aspect-ratio:16/9; object-fit:cover; }
.tesec-text-card .icon-wrapper { display:none; }
.tesec-text-card .mcb-wrap-inner { justify-content:center; min-height:250px; background:#f0f1f4; border-radius:8px; padding:24px; }

.tesec-text-card .icon-wrapper, .tesec-text-card .icon-hover { display:none !important; }
.logos-marquee.proyeccion .column_image { width:min(76vw,480px) !important; flex:0 0 min(76vw,480px) !important; }
.logos-marquee.proyeccion .column_image .mcb-column-inner,
.logos-marquee.proyeccion .image_frame,
.logos-marquee.proyeccion .image_wrapper { width:100% !important; }
.logos-marquee.proyeccion .image_wrapper img { width:100% !important; height:auto !important; aspect-ratio:16/9; object-fit:cover; }

/* Revisión de coherencia visual, Tesec 664342. */
#Wrapper .tesec-editorial-wrap > .mcb-wrap-inner {
  justify-content: center;
}
#Wrapper .tesec-editorial-video .mcb-item-video-inner,
#Wrapper .tesec-editorial-video .content_video,
#Wrapper .tesec-editorial-video .section_video {
  border-radius: 24px;
  overflow: hidden;
}
#Wrapper .tesec-editorial-video video {
  display: block;
  aspect-ratio: 16 / 9;
  height: auto;
  border-radius: 24px;
  transition: transform .6s cubic-bezier(.22,1,.36,1);
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  #Wrapper .tesec-editorial-video:hover video { transform: scale(1.035); }
}
#Wrapper .logos-marquee.proyeccion .image_frame,
#Wrapper .logos-marquee.proyeccion .image_wrapper,
#Wrapper .tabs-row .column_image .image_frame,
#Wrapper .tabs-row .column_image .image_wrapper {
  border-radius: 24px;
  overflow: hidden;
}
#Wrapper .logos-marquee.proyeccion img,
#Wrapper .tabs-row .column_image img { border-radius: 24px; }
#Wrapper .tesec-text-card > .mcb-wrap-inner { border-radius: 24px; }
#Wrapper .mfn-item-custom-width { max-width: 100%; }

/* The controls occupy their own row, inside the carousel section. */
#Wrapper .slider-product-cards > .slider-controls,
#Wrapper .slider-audiovisuales > .slider-controls {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 24px 0 0;
}
#Wrapper .slider-product-cards > .slider-controls .pinned-slider-dots,
#Wrapper .slider-audiovisuales > .slider-controls .pinned-slider-dots {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  flex-wrap: wrap;
  justify-content: center;
  max-width: calc(100% - 32px);
  box-sizing: border-box;
}
#Wrapper .slider-audiovisuales.audiovisual-slider-initialized { padding-bottom: 0; }
#Wrapper .slider-audiovisuales .audiovisual-item {
  flex: 0 0 min(84vw,960px) !important;
  width: min(84vw,960px) !important;
  min-width: 0 !important;
  max-width: min(84vw,960px) !important;
}
#Wrapper .slider-audiovisuales .audiovisual-item > .mcb-wrap-inner {
  box-sizing: border-box;
  overflow: hidden;
  border-radius: 24px;
}
#Wrapper .slider-audiovisuales .audiovisual-item .column_heading { min-width: 0; max-width: 100%; }
#Wrapper .slider-audiovisuales .audiovisual-item .title { overflow-wrap: anywhere; }
#Wrapper .tesec-spec-card .mcb-wrap-inner {
  background-image: linear-gradient(145deg,#005587,#0d0d0d) !important;
  color: #fff;
}
#Wrapper .tesec-spec-card .title,
#Wrapper .tesec-photo-feature .title { color: #fff; }
#Wrapper .tesec-photo-feature .mcb-wrap-inner > .mcb-wrap-background-overlay {
  background: linear-gradient(180deg,rgba(13,13,13,.92),rgba(13,13,13,.45) 70%,rgba(13,13,13,.15));
  opacity: 1;
}
@media (max-width: 768px) {
  #Wrapper .row-valores h2.title {
    font-size: clamp(2rem,9vw,3rem);
    letter-spacing: -.04em;
    line-height: 1.1;
  }
  #Wrapper .slider-audiovisuales .audiovisual-item > .mcb-wrap-inner {
    padding: 24px !important;
    min-height: 400px;
  }
  #Wrapper .slider-audiovisuales .audiovisual-item h3.title {
    font-size: 26px;
    line-height: 1.15;
    letter-spacing: -.04em;
  }
  #Wrapper .slider-product-cards > .slider-controls .pinned-slider-dots,
  #Wrapper .slider-audiovisuales > .slider-controls .pinned-slider-dots {
    gap: 12px;
    padding: 12px 20px;
  }
}
#Wrapper .slider-product-cards.product-slider-initialized,
#Wrapper .slider-audiovisuales.audiovisual-slider-initialized {
  display: block;
}
#Wrapper .slider-product-cards > .product-slider-arrow,
#Wrapper .slider-audiovisuales > .audiovisual-slider-arrow {
  top: calc(50% - 40px);
}
/* Long-form legal pages keep the same typeface with a readable hierarchy. */
:is(.page-id-209,.page-id-807,.page-id-808,.page-id-925) #Content .the_content_wrapper,
.page-id-557 #Content .column_visual .mcb-column-inner {
  max-width: 80ch;
  margin-inline: auto;
  overflow-wrap: anywhere;
}
:is(.page-id-209,.page-id-807,.page-id-808,.page-id-925,.page-id-557) #Content h1 {
  font-size: clamp(2rem,3vw,2.75rem);
  line-height: 1.15;
  margin-bottom: 32px;
}
:is(.page-id-209,.page-id-807,.page-id-808,.page-id-925,.page-id-557) #Content h2 {
  font-size: clamp(1.375rem,2vw,1.75rem);
  line-height: 1.25;
  margin-top: 32px;
  margin-bottom: 16px;
}
:is(.page-id-209,.page-id-807,.page-id-808,.page-id-925,.page-id-557) #Content p,
:is(.page-id-209,.page-id-807,.page-id-808,.page-id-925,.page-id-557) #Content li {
  line-height: 1.65;
}

/* Alineamientos de columnas y márgenes interiores, tarea 664342. */
@media (min-width: 1024px) {
  #Wrapper .tesec-editorial-pair > .mcb-wrap-inner { align-items: stretch; }
  #Wrapper .tesec-editorial-wrap { align-self: stretch; align-items: stretch; }
  #Wrapper .tesec-editorial-wrap > .mcb-wrap-inner { display: grid; grid-template: minmax(0, 1fr) / minmax(0, 1fr); align-content: stretch; align-items: stretch; }
  #Wrapper .tesec-editorial-video { min-height: 360px; }
  #Wrapper .tesec-editorial-video > .mcb-column-inner { position: absolute; inset: 0; }
  #Wrapper .tesec-editorial-video .content_video,
  #Wrapper .tesec-editorial-video .section_video,
  #Wrapper .tesec-editorial-video video { width: 100%; height: 100%; }
  #Wrapper .tesec-editorial-video video { aspect-ratio: auto; object-fit: cover; }
}

/* El relleno pertenece a la tarjeta completa, también alrededor de la foto. */
#Wrapper .tabs-container:has(.column_image) > .mcb-wrap-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  align-items: center;
  gap: 34px;
  padding: 34px;
  box-sizing: border-box;
}
#Wrapper .tabs-container:has(.column_image) > .mcb-wrap-inner > .mcb-wrap,
#Wrapper .tabs-container:has(.column_image) .column_accordion {
  width: 100%; min-width: 0; max-width: 100%;
}
#Wrapper .tabs-container:has(.column_image) .column_accordion > .mcb-column-inner {
  padding: 0;
}
#Wrapper .tabs-container:has(.column_image) .column_image > .mcb-column-inner {
  margin: 0; text-align: center;
}
#Wrapper .tabs-container:has(.column_image) .image_frame,
#Wrapper .tabs-container:has(.column_image) .image_wrapper { width: 100%; }
#Wrapper .tabs-container:has(.column_image) img {
  display: block; width: 100%; max-width: 100% !important;
  height: auto; max-height: none; aspect-ratio: 16 / 10; object-fit: cover;
}

/* Cada servicio reúne título, explicación, etiquetas y contacto en una columna. */
#Wrapper .tesec-service-pair > .mcb-wrap-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  align-items: stretch;
  gap: clamp(32px, 5vw, 72px);
}
#Wrapper .tesec-service-pair > .mcb-wrap-inner > .mcb-wrap {
  width: 100%; min-width: 0; align-items: stretch;
}
#Wrapper .tesec-service-copy > .mcb-wrap-inner {
  display: flex; flex-direction: column; flex-wrap: nowrap;
  align-items: flex-start; gap: 24px;
}
#Wrapper .tesec-service-copy .column,
#Wrapper .tesec-service-copy .column_heading { width: 100%; min-width: 0; max-width: 100%; }
#Wrapper .tesec-service-copy .mcb-column-inner { margin: 0; }
#Wrapper .tesec-service-copy h2 { font-size: clamp(32px, 3.45vw, 52px); line-height: 1.12; margin: 0; }
#Wrapper .tesec-service-copy p:last-child { margin-bottom: 0; }
#Wrapper .tesec-service-copy .tags { order: initial; }
#Wrapper .tesec-service-copy .tags > .mcb-column-inner { place-items: start; }
#Wrapper .tesec-service-copy .tags-container { max-width: 100%; justify-content: flex-start; gap: 10px; }
#Wrapper .tesec-service-copy .tag { padding: 8px 16px; }
#Wrapper .tesec-service-media > .mcb-wrap-inner { display: grid; grid-template: minmax(0, 1fr) / minmax(0, 1fr); align-content: stretch; align-items: stretch; }
#Wrapper .tesec-service-media .column_image { min-height: 360px; }
#Wrapper .tesec-service-media .column_image > .mcb-column-inner {
  position: absolute; inset: 0; margin: 0;
}
#Wrapper .tesec-service-media .image_frame {
  display: flex; flex-direction: column; width: 100%; height: 100%;
}
#Wrapper .tesec-service-media .image_wrapper {
  flex: 1; min-height: 0; width: 100%; border-radius: 24px; overflow: hidden;
}
#Wrapper .tesec-service-media img {
  display: block; width: 100%; height: 100%; max-height: none;
  object-fit: cover; border-radius: 24px;
}
#Wrapper .tesec-service-media .wp-caption-text { flex-shrink: 0; text-align: left; margin: 10px 0 0; }
#Wrapper .tabs-container:has(> .mcb-wrap-inner > .mcb-wrap + .mcb-wrap .column_accordion) > .mcb-wrap-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); }
@media (max-width: 1023px) {
  #Wrapper .tesec-editorial-pair > .mcb-wrap-inner { flex-wrap: wrap; }
  #Wrapper .tesec-editorial-pair > .mcb-wrap-inner > .mcb-wrap { width: 100%; flex-basis: 100%; }
  #Wrapper .tabs-container:has(.column_image) > .mcb-wrap-inner > .mcb-wrap:has(.column_accordion) { order: -1; }
  #Wrapper .tabs-container:has(.column_image) > .mcb-wrap-inner,
  #Wrapper .tabs-container:has(> .mcb-wrap-inner > .mcb-wrap + .mcb-wrap .column_accordion) > .mcb-wrap-inner { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 768px) {
  #Wrapper .tabs-container:has(.column_image) > .mcb-wrap-inner { padding: 24px; gap: 24px; }
  #Wrapper .tesec-service-pair > .mcb-wrap-inner { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  #Wrapper .tesec-service-media .column_image { min-height: 0; }
  #Wrapper .tesec-service-media .column_image > .mcb-column-inner { position: relative; inset: auto; }
  #Wrapper .tesec-service-media .image_frame { height: auto; }
  #Wrapper .tesec-service-media .image_wrapper { flex: auto; }
  #Wrapper .tesec-service-media img { height: auto; aspect-ratio: 16 / 10; max-height: none; }
}

/* Pie común: marca, información legal y redes con espacio propio. */
#Wrapper #mfn-footer-template .mcb-section { padding: 64px 0; }
#Wrapper #mfn-footer-template .section_wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1.2fr) minmax(0, .7fr);
  align-items: start;
  gap: 48px;
  width: calc(100% - 64px);
  max-width: 1354px;
  margin-inline: auto;
  padding: 0;
}
#Wrapper #mfn-footer-template .section_wrapper > .mcb-wrap {
  width: 100%; min-width: 0;
}
#Wrapper #mfn-footer-template .mcb-column-inner { margin: 0; }
#Wrapper #mfn-footer-template .column_footer_logo .logo-wrapper {
  display: block; width: 250px; max-width: 100%;
}
#Wrapper #mfn-footer-template .column_footer_logo img {
  display: block; width: 100%; height: auto; max-width: 100%;
}
#Wrapper #mfn-footer-template .mfn-footer-menu {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 32px;
  margin: 0; padding: 0;
  width: 100%; text-align: left; justify-content: start;
}
#Wrapper #mfn-footer-template .mfn-footer-menu li { margin: 0; padding: 0; }
#Wrapper #mfn-footer-template .mfn-footer-menu a {
  display: inline-block; padding: 2px 0; font-size: 15px; line-height: 1.5;
}
#Wrapper #mfn-footer-template .footer-meta > .mcb-wrap-inner {
  grid-template-columns: repeat(3, 44px);
  justify-content: end;
  align-content: start;
  gap: 20px 12px;
}
#Wrapper #mfn-footer-template .footer-meta .mfn-icon-2 {
  display: flex; align-items: center; justify-content: center;
  box-sizing: border-box; width: 44px; height: 44px;
  border: 1px solid #666970; border-radius: 50%;
}
#Wrapper #mfn-footer-template .footer-meta .mfn-icon-2::after { display: none; }
#Wrapper #mfn-footer-template .footer-meta .title { font-size: 14px; line-height: 1.5; }
@media (max-width: 1023px) {
  #Wrapper #mfn-footer-template .section_wrapper {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 32px;
  }
  #Wrapper #mfn-footer-template .footer-meta { grid-column: 1 / -1; }
  #Wrapper #mfn-footer-template .footer-meta > .mcb-wrap-inner { justify-content: start; }
  #Wrapper #mfn-footer-template .footer-meta .column_heading { text-align: left; }
}
@media (max-width: 600px) {
  #Wrapper #mfn-footer-template .mcb-section { padding: 48px 0; }
  #Wrapper #mfn-footer-template .section_wrapper {
    grid-template-columns: minmax(0, 1fr); width: calc(100% - 32px); gap: 32px;
  }
  #Wrapper #mfn-footer-template .column_footer_logo .logo-wrapper { width: 220px; }
  #Wrapper #mfn-footer-template .mfn-footer-menu { gap: 12px 24px; }
  #Wrapper #mfn-footer-template .footer-meta {
    border-top: 1px solid #555960; padding-top: 24px;
  }
}


/* La introducción de cada producto se acompaña de una imagen o vídeo propio. */
#Wrapper #Content .mcb-section.tesec-product-hero { padding: 64px 0 !important; }
#Wrapper .tesec-product-hero > .section_wrapper {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  align-items: stretch; gap: 48px;
  width: calc(100% - 64px); max-width: 1354px;
  margin-inline: auto; padding: 0;
}
#Wrapper .tesec-product-hero > .section_wrapper > .mcb-wrap {
  width: 100%; max-width: 100%; min-width: 0; align-items: stretch;
}
#Wrapper .tesec-product-intro > .mcb-wrap-inner {
  display: flex; flex-direction: column; flex-wrap: nowrap;
  align-items: flex-start; justify-content: center; gap: 24px; margin: 0;
}
#Wrapper .tesec-product-intro .column,
#Wrapper .tesec-product-intro .column_heading { width: 100%; min-width: 0; max-width: 100%; }
#Wrapper .tesec-product-intro .mcb-column-inner { margin: 0; }
#Wrapper .tesec-product-intro h1 { font-size: clamp(36px,4vw,60px); line-height: 1.08; margin: 0; }
#Wrapper .tesec-product-intro .column_column p:last-child { margin-bottom: 0; }
#Wrapper .tesec-product-media > .mcb-wrap-inner {
  display: grid; grid-template: minmax(0,1fr) / minmax(0,1fr);
  align-content: stretch; align-items: stretch; margin: 0;
}
#Wrapper .tesec-product-media .column { min-height: 420px; width: 100%; }
#Wrapper .tesec-product-media .column > .mcb-column-inner {
  position: absolute; inset: 0; margin: 0; border-radius: 24px; overflow: hidden;
}
#Wrapper .tesec-product-media :is(.image_frame,.image_wrapper,.content_video,.section_video) {
  width: 100%; height: 100%; border-radius: 24px; overflow: hidden;
}
#Wrapper .tesec-product-media :is(img,video) {
  display: block; width: 100%; height: 100%; object-fit: cover;
  max-height: none; border-radius: 24px;
}
@media (max-width: 1023px) {
  #Wrapper .tesec-product-hero > .section_wrapper { grid-template-columns: minmax(0,1fr); gap: 32px; }
  #Wrapper .tesec-product-media .column { min-height: 0; }
  #Wrapper .tesec-product-media .column > .mcb-column-inner { position: relative; inset: auto; }
  #Wrapper .tesec-product-media :is(.image_frame,.image_wrapper,.content_video,.section_video) { height: auto; }
  #Wrapper .tesec-product-media :is(img,video) { height: auto; aspect-ratio: 16 / 9; }
}
@media (max-width: 600px) {
  #Wrapper #Content .mcb-section.tesec-product-hero { padding: 40px 0 !important; }
  #Wrapper .tesec-product-hero > .section_wrapper { width: calc(100% - 32px); }
}
#Wrapper #mfn-footer-template .mcb-section { padding: 64px 0 !important; }
@media (max-width: 600px) {
  #Wrapper #mfn-footer-template .mcb-section { padding: 48px 0 !important; }
}

#Wrapper #mfn-footer-template .mcb-section { border-top: 1px solid rgba(255,255,255,.14); }
#Wrapper #mfn-footer-template .footer-meta .title { text-align: right; }
@media (max-width: 1023px) {
  #Wrapper #mfn-footer-template .footer-meta .title { text-align: left; }
}


/* Áreas: título completo y contenido agrupado junto al vídeo. */
#Wrapper #Content .tesec-area-lead-hero { padding: 56px 0 64px !important; }
#Wrapper .tesec-area-lead-hero > .section_wrapper { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.15fr); gap: 36px 56px; width: calc(100% - 64px); max-width: 1354px; margin-inline: auto; align-items: center; }
#Wrapper .tesec-area-lead-hero > .section_wrapper > .mcb-wrap { width: 100%; min-width: 0; margin: 0; }
#Wrapper .tesec-area-lead-hero .mcb-wrap-inner { margin: 0; padding: 0; }
#Wrapper .tesec-area-lead-hero .column { width: 100%; min-width: 0; margin: 0; }
#Wrapper .tesec-area-lead-hero .mcb-column-inner { margin: 0; padding: 0; }
#Wrapper .tesec-area-lead-heading { grid-column: 1 / -1; }
#Wrapper .tesec-area-lead-heading > .mcb-wrap-inner { display: flex; flex-direction: column; gap: 20px; }
#Wrapper .tesec-area-lead-hero h1 { max-width: 1120px; font-size: clamp(36px,4vw,60px); line-height: 1.08; margin: 0; }
#Wrapper .tesec-area-lead-copy > .mcb-wrap-inner { display: flex; flex-direction: column; gap: 24px; }
#Wrapper .tesec-area-lead-copy p { margin: 0; }
#Wrapper .tesec-area-lead-copy .button { margin: 0; }
#Wrapper .tesec-area-lead-video :is(.content_video,.section_video) { width: 100%; height: auto; border-radius: 24px; overflow: hidden; }
#Wrapper .tesec-area-lead-video video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
@media (max-width: 1023px) {
 #Wrapper .tesec-area-lead-hero > .section_wrapper { grid-template-columns: minmax(0,1fr); gap: 32px; }
 #Wrapper .tesec-area-lead-heading { grid-column: 1; }
}
@media (max-width: 600px) {
 #Wrapper #Content .tesec-area-lead-hero { padding: 40px 0 !important; }
 #Wrapper .tesec-area-lead-hero > .section_wrapper { width: calc(100% - 32px); }
}
#Wrapper .tesec-area-lead-hero > .section_wrapper { padding: 0; }
#Wrapper .tesec-area-lead-hero > .section_wrapper::after { display: none; }

#Wrapper .tesec-directions-button .mcb-column-inner { margin: 24px 0 0; }
#Wrapper .tesec-directions-button .button { background-color: #005587; color: #fff; margin: 0; }
@media (max-width: 600px) {
 #Wrapper .tesec-area-lead-hero h1 { font-size: 32px; line-height: 1.12; }
 #Wrapper .tesec-area-lead-hero .breadcrumbs { font-size: 14px; line-height: 1.5; gap: 6px; }
}
#Wrapper .tesec-directions-button .mcb-column-inner { text-align: center; }

/* Fichas de productos: ancho común, carruseles centrados y bloques agrupados. */
#Wrapper .logos-marquee.proyeccion { width: calc(100% - 64px) !important; max-width: 1354px; margin: 0 auto !important; padding: 0 !important; container-type: inline-size; }
#Wrapper .logos-marquee.proyeccion > .mcb-wrap-inner { display: block; width: 100%; margin: 0; padding: 0; }
#Wrapper .logos-marquee.proyeccion .marquee-wrapper { margin-inline: auto; }
#Wrapper .logos-marquee.proyeccion .column_image { margin: 0; }
#Wrapper .logos-marquee.proyeccion .marquee-arrow[hidden] { display: none !important; }
#Wrapper .logos-marquee.proyeccion .marquee-prev { left: 16px; right: auto; }
#Wrapper .logos-marquee.proyeccion .marquee-next { right: 16px; left: auto; }
@media (min-width: 1024px) {
 #Wrapper .logos-marquee.proyeccion .column_image { width: calc((100cqw - 32px) / 3) !important; flex-basis: calc((100cqw - 32px) / 3) !important; }
}
#Wrapper #Content .tesec-product-gallery { padding: 64px 0 !important; margin-bottom: 0 !important; }
#Wrapper #Content :is(.tesec-product-summary,.tesec-product-detail) { padding: 64px 0 !important; margin: 0 !important; }
#Wrapper #Content .tesec-related-intro { padding: 64px 0 32px !important; margin: 0 !important; }
#Wrapper :is(.tesec-product-summary,.tesec-product-detail,.tesec-related-intro) > .section_wrapper { width: calc(100% - 64px); max-width: 1354px; padding: 0; margin-inline: auto; }
#Wrapper :is(.tesec-product-summary,.tesec-product-detail,.tesec-related-intro) > .section_wrapper::after { display: none; }
#Wrapper .tesec-product-summary > .section_wrapper { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(0,1fr); gap: 64px; align-items: center; }
#Wrapper .tesec-summary-only > .section_wrapper { grid-template-columns: minmax(0,1fr); }
#Wrapper :is(.tesec-summary-copy,.tesec-summary-features,.tesec-detail-intro) { width: 100%; min-width: 0; }
#Wrapper :is(.tesec-summary-copy,.tesec-summary-features,.tesec-detail-intro) > .mcb-wrap-inner { margin: 0; padding: 0; }
#Wrapper :is(.tesec-summary-copy,.tesec-summary-features,.tesec-detail-intro) .column { width: 100% !important; min-width: 0; margin: 0; }
#Wrapper :is(.tesec-summary-copy,.tesec-summary-features,.tesec-detail-intro) .mcb-column-inner { margin: 0; padding: 0; }
#Wrapper .tesec-summary-features > .mcb-wrap-inner { display: flex; flex-direction: column; gap: 20px; }
#Wrapper .tesec-summary-only .tesec-summary-features > .mcb-wrap-inner { flex-direction: row; gap: 32px; }
#Wrapper .tesec-product-detail > .section_wrapper { display: flex; flex-direction: column; gap: 40px; }
#Wrapper .tesec-detail-intro > .mcb-wrap-inner { display: grid; grid-template-columns: minmax(0,1fr); gap: 24px 56px; align-items: start; }
#Wrapper .tesec-detail-intro > .mcb-wrap-inner:has(> .column_column) { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
#Wrapper .tesec-detail-intro .mcb-wrap-background-overlay { display: none; }
#Wrapper .tesec-detail-intro h2 { font-size: clamp(32px,3.2vw,48px); line-height: 1.12; max-width: 100%; margin: 0; }
#Wrapper :is(.tesec-summary-copy,.tesec-detail-intro) p { margin: 0 0 16px; }
#Wrapper :is(.tesec-summary-copy,.tesec-detail-intro) p:last-child { margin-bottom: 0; }
@media (max-width: 1023px) {
 #Wrapper .tesec-product-summary > .section_wrapper { grid-template-columns: minmax(0,1fr); gap: 32px; }
 #Wrapper .tesec-detail-intro > .mcb-wrap-inner:has(> .column_column) { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 600px) {
 #Wrapper .logos-marquee.proyeccion { width: calc(100% - 32px) !important; }
 #Wrapper .logos-marquee.proyeccion .marquee-prev { left: 8px; }
 #Wrapper .logos-marquee.proyeccion .marquee-next { right: 8px; }
 #Wrapper #Content :is(.tesec-product-gallery,.tesec-product-summary,.tesec-product-detail) { padding: 40px 0 !important; }
 #Wrapper #Content .tesec-related-intro { padding: 40px 0 24px !important; }
 #Wrapper :is(.tesec-product-summary,.tesec-product-detail,.tesec-related-intro) > .section_wrapper { width: calc(100% - 32px); }
 #Wrapper .tesec-summary-only .tesec-summary-features > .mcb-wrap-inner { flex-direction: column; gap: 20px; }
 #Wrapper .tesec-product-detail > .section_wrapper { gap: 32px; }
}
#Wrapper .tesec-product-hero > .section_wrapper::after { display: none; }
#Wrapper #Content .tesec-product-gallery { padding: 48px 0 32px !important; }
#Wrapper #Content .tesec-product-summary { padding: 48px 0 !important; }
@media (max-width: 600px) {
 #Wrapper #Content .tesec-product-gallery { padding: 32px 0 24px !important; }
 #Wrapper #Content .tesec-product-summary { padding: 32px 0 !important; }
}
#Wrapper .logos-marquee.proyeccion .marquee-arrow { box-sizing: border-box; min-width: 0; padding: 0; margin: 0; }
