@import url("plantilla.css");
/* Ocultar reCAPTCHA v3 (badge y iframes relacionados) */
.grecaptcha-badge,
div[g-recaptcha],
iframe[src*="recaptcha"],
iframe[src*="google.com/recaptcha"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
}
/* legales */
section.cuerpo-politicas li {
  font-size: 18px;
  line-height: 23px;
  font-weight: 300;
  margin-bottom: 10px;
}
section.cuerpo-politicas a {
  color: #a2418e;
  font-weight: 500;
  text-decoration: underline;
}
/* fin legales */
/* gtranslate */
font {
  all: unset;
}
.gt-current-wrapper {
  display: none !important;
}
#primary-menu > li.menu-item-gtranslate ul.sub-menu {
  margin: 0;
}
#primary-menu > li.menu-item-gtranslate ul.sub-menu > li {
  display: inline-block;
  margin-left: 5px;
}
#primary-menu
> li.menu-item-gtranslate
  ul.sub-menu
  > li:not(:last-child)::after {
    content: "|";
  margin-left: 5px;
}
/* gtranslate */
/* Quita flechitas o estilos de dropdown */
#primary-menu > li.menu-item-gtranslate::after {
  content: none;
}
.menu-item-gtranslate {
  display: inline-table !important;
}
/* megamenu */
.megamenu {
  padding: 68px 0;
  position: absolute;
  top: 96px;
  width: 100%;
  left: 0;
  z-index: 999;
  background-color: #fcf4ef;
  display: none;
  text-transform: none;
  border-bottom: 1px solid #d1d1d1;
}
#menu-item-879 {
  padding-bottom: 34px;
}
#menu-item-879:hover .megamenu {
  display: block;
}
.megamenu .cajas {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 70px;
}
.megamenu .cajas .box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.megamenu .cajas a {
  color: #a2418e;
  padding-left: 10px;
  min-height: 54px;
  margin-bottom: 20px;
  font-size: 25px;
  line-height: 30px;
}
.megamenu .cajas p {
  padding-left: 10px;
  font-weight: 400;
}
.current-menu-parent > a,
.current-menu-ancestor > a {
  font-weight: 700;
}
.parte-der .menu-item-879 .sub-menu {
  display: none !important;
}
/* fin megamenu */
/* sidenav */
.sidenav .sub-menu {
  margin: 0;
}
div#mySidenav .menu-item-has-children > a {
  font-weight: 500;
  text-decoration: underline;
}
div#mySidenav .sub-menu li {
  font-size: 20px !important;
  line-height: 25px !important;
  font-weight: 500;
}
/* fin sidenav */
/* Slider home */
section.slider-home {
  background-image: url("../imgs/slider-home.jpg");
  background-size: cover;
  background-position: calc(65% - 0px) center;
  height: calc(100dvh - 96px);
  position: relative;
}
section.slider-home::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  pointer-events: none;
  z-index: 1;
}
section.slider-home .cuerpo {
  height: inherit;
}
section.slider-home .titulo {
  position: relative;
  z-index: 2;
  height: inherit;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 760px;
}
section.slider-home .titulo h1 {
  font-size: 50px;
  line-height: 55px;
  color: #fff;
}
section.slider-home .titulo p {
  font-size: 30px;
  line-height: 35px;
  color: #fff;
}
/* fin slider home */
/* Marketing para cirujanos */
section.marketing-para-cirujanos {
  padding-top: 60px;
  padding-bottom: 80px;
}
section.marketing-para-cirujanos .izq {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section.marketing-para-cirujanos .izq h2 {
  margin-bottom: 50px;
  font-weight: 400;
}
section.marketing-para-cirujanos .izq h2 span {
  display: block;
  font-size: 25px;
  line-height: 30px;
  font-weight: 300;
}
section.marketing-para-cirujanos .der {
  text-align: center;
}
/* fin Marketing para cirujanos */
/* Servicios adaptados */
section.servicios-adaptados {
  padding-top: 80px;
  padding-bottom: 90px;
}
section.servicios-adaptados .titulo {
  text-align: center;
  margin-bottom: 60px;
  max-width: 730px;
  margin-left: auto;
  margin-right: auto;
}
section.servicios-adaptados .titulo span {
  display: block;
  font-size: 25px;
  line-height: 30px;
  font-weight: 300;
  margin-bottom: 20px;
}
section.servicios-adaptados .cajas {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
section.servicios-adaptados .cajas .box {
  background: linear-gradient(180deg, #292c69 0%, #573173 100%);
  height: 333px;
  padding: 0 20px;
  margin: 0 20px;
}
section.servicios-adaptados .cajas .box a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  height: 100%;
  justify-content: flex-end;
  padding-bottom: 40px;
}
section.servicios-adaptados .cajas .box h3 {
  color: #fff;
  font-size: 25px;
  line-height: 30px;
  font-weight: 500;
  max-width: 240px;
}
/* Fin servicios adaptados */
/* tu presencia online */
section.tu-presencia-online {
  padding-top: 90px;
  padding-bottom: 120px;
}
section.tu-presencia-online .cuerpo {
  max-width: 1700px;
  margin-left: 0;
  padding-left: 0;
}
section.tu-presencia-online .izq {
  flex-basis: 80%;
}
section.tu-presencia-online .der {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
section.tu-presencia-online .der h2 span {
  display: block;
  font-size: 25px;
  line-height: 30px;
  font-weight: 300;
}
section.tu-presencia-online .der ul {
  padding-left: 30px;
  list-style-type: square;
}
section.tu-presencia-online .der ul li {
  font-size: 18px;
  line-height: 23px;
  font-weight: 300;
  margin-bottom: 10px;
}
section.tu-presencia-online .der ul li::marker {
  color: #4b4b4b;
}
/* Fin tu presencia online */
/* Formulario prefooter */
div.pre-footer {
  background: var(--degradado);
  padding-bottom: 60px;
}
div.pre-footer .formulario {
  padding-top: 60px;
}
div.pre-footer span {
  font-size: 18px;
  line-height: 23px;
  font-weight: 300;
  color: #fff;
  margin-bottom: 50px;
  display: block;
}
div.pre-footer span.titulo {
  display: block;
  font-size: 40px;
  line-height: 45px;
  font-weight: 300;
  color: #fff;
  margin-bottom: 25px;
}
div.pre-footer .formulario p span {
  display: none;
}
div.pre-footer .formulario .img-izq {
  float: left;
  width: 20%;
  text-align: center;
  display: none;
}
div.pre-footer .formulario b {
  color: #fff;
}
div.pre-footer .formulario h3 {
  font-size: 40px;
  line-height: 45px;
  font-weight: 300;
  color: #fff;
  margin-bottom: 25px;
  max-width: 100%;
}
div.pre-footer .formulario .top-text {
  font-size: 18px;
  line-height: 23px;
  font-weight: 300;
  color: #fff;
  margin-bottom: 50px;
}
div.pre-footer .formulario .after:after {
  height: 4px;
  background-color: #fff;
}
div.pre-footer .formulario .col {
  float: left;
  width: 26%;
  margin-right: 4%;
}
div.pre-footer .formulario .col.ultima {
  width: 40%;
  margin-right: 0;
}
div.pre-footer .formulario .col p {
  font-size: 18px;
  line-height: 23px;
  font-weight: 500;
  color: #fff;
}
div.pre-footer .formulario .col p span {
  font-size: 18px;
  line-height: 23px;
  font-weight: 500;
  color: #fff;
  display: block;
  margin-bottom: 8px;
  display: none;
}
div.pre-footer .formulario .col input[type="text"] {
  font-size: 18px;
  line-height: 23px;
  font-weight: 100;
  color: #fff;
  background: transparent;
  border: none;
  border-bottom: 1px solid #fff;
  width: 100%;
  border-radius: 0;
  padding: 4px 8px;
  margin-bottom: 35px;
}
div.pre-footer .formulario .col textarea {
  font-size: 18px;
  line-height: 23px;
  font-weight: 100;
  color: #fff;
  background: transparent;
  border: 1px solid #fff;
  width: 100%;
  border-radius: 0;
  padding: 4px 8px;
  min-height: 117px;
  resize: none;
}
div.pre-footer .formulario .col input[type="text"]::placeholder,
div.pre-footer .formulario .col textarea::placeholder {
  font-size: 18px;
  line-height: 23px;
  font-weight: 100;
  color: #fff;
}
div.pre-footer .formulario p.polpriv {
  font-size: 15px;
  line-height: 20px;
  font-weight: 500;
  color: #fff;
  text-align: left;
  display: inline-block;
  width: 92%;
  top: -34px;
  position: relative;
  margin-bottom: 5px;
  display: flex;
  align-items: baseline;
}
div.pre-footer .formulario label {
  font-size: 18px;
  line-height: 23px;
  font-weight: 300;
  color: #fff;
}
div.pre-footer .formulario .col p.polpriv label {
  font-size: 18px;
  line-height: 23px;
  font-weight: 500;
  color: #fff;
}
div.pre-footer .formulario p.polpriv a {
  font-size: 18px;
  line-height: 23px;
  font-weight: 500;
  color: #fff;
  text-decoration: underline;
}
div.pre-footer .formulario .col .boton {
  text-align: right;
}
div.pre-footer .formulario .col .boton input.btnform {
  font-size: 16px;
  line-height: 21px;
  font-weight: 100;
  color: #fff;
  background: transparent;
  border: 1px solid #fff;
  border-radius: 0;
  padding: 6px 35px;
  cursor: pointer;
  min-height: 45px;
  text-transform: capitalize;
}
/* Fin formulario prefooter */
/* footer */
section.footer {
  background: var(--degradado);
}
section.footer .proyecto-financiado {
  padding-top: 30px;
  text-align: center;
  border-top: 1px solid #d8d8d8;
}
section.footer .proyecto-financiado p {
  color: #fff;
}
section.footer .politicas {
  text-align: center;
  margin-top: 30px;
  padding: 30px 0;
  font-size: 20px;
}
section.footer .politicas span,
section.footer .politicas a {
  font-size: 18px;
  color: #fff;
}
/* fin footer */
/* cabecera interior */
section.cabecera-interior {
  background-image: url("../imgs/bg-cabecera-interior.jpg");
  background-position: calc(58% - 0px) center;
  height: 397px;
}
section.cabecera-interior .cuerpo {
  height: inherit;
}
section.cabecera-interior .titulo {
  height: inherit;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  max-width: 730px;
  padding-bottom: 40px;
}
section.cabecera-interior .titulo h1,
section.cabecera-interior .titulo p {
  color: #fff;
}
/* fin cabecera interior */
/* contarse con precision */
section.tu-presencia-online.realizacion-videos p.negrita {
  margin-bottom: 0;
  font-weight: 500;
}
section.tu-presencia-online.realizacion-videos p.negrita + p {
  margin-bottom: 20px;
}
/* fin contarse con precision */
/* nosotros tambien */
section.nosotros-tambien {
  padding-bottom: 80px;
}
section.nosotros-tambien .contenido {
  text-align: center;
}
section.nosotros-tambien .contenido img {
  margin-bottom: 90px;
}
section.nosotros-tambien .contenido span {
  display: block;
  font-size: 25px;
  line-height: 30px;
  font-weight: 300;
}
/* fin nosotros tambien */
/* pagina redes sociales */
section.nosotros-tambien.redes-sociales p {
  max-width: 660px;
  margin-left: auto;
  margin-right: auto;
}
/* fin pagina redes sociales */
/* nosotros */
section.cabecera-interior.nosotros {
  background-image: url("../imgs/bg-cabecera-nosotros.jpg");
  background-position: calc(45% - 0px) center;
}
section.tu-presencia-online.foto-texto .cuerpo {
  max-width: 1500px;
  margin-left: auto;
  padding-left: 15px;
}
section.tu-presencia-online.foto-texto .der,
section.tu-presencia-online.foto-texto .izq {
  flex-basis: 50%;
}
section.tu-presencia-online.foto-texto .izq {
  text-align: center;
}
/* fin nosotros */
/* contacto */
section.cabecera-interior.contacto {
  background-image: url("../imgs/bg-cabecera-contacto.jpg");
  background-position: center;
}
section.texto-contacto {
  padding-top: 115px;
  padding-bottom: 80px;
  text-align: center;
}
section.texto-contacto .contenido {
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
}
section.texto-contacto span {
  display: block;
  font-size: 25px;
  line-height: 30px;
  font-weight: 300;
}
section.texto-contacto .contenido h2 {
  margin-bottom: 70px;
}
section.texto-contacto .contenido .tel-mail {
  display: flex;
  justify-content: center;
  margin-top: 45px;
  gap: 75px;
}
section.texto-contacto .contenido .tel-mail .tel a,
section.texto-contacto .contenido .tel-mail .mail a {
  display: flex;
  align-items: center;
  gap: 10px;
}
section.texto-contacto .contenido .tel-mail span {
  font-size: 18px;
  line-height: 23px;
  font-weight: 600;
}

/* fin contacto */
/* ------ RESPONSIVE ------ */
@media screen and (max-width: 1630px) {
  section.tu-presencia-online .cuerpo {
    max-width: 1500px;
    margin-left: auto;
    padding-left: 15px;
  }
  section.tu-presencia-online .flexcontainer {
    gap: 40px;
  }
  section.tu-presencia-online .flexcontainer .der,
  section.tu-presencia-online .flexcontainer .izq {
    flex-basis: 50%;
  }
}
@media screen and (max-width: 1280px) {
  section.marketing-para-cirujanos.nosotros span {
    display: inline !important;
  }
}
@media screen and (max-width: 1270px) {
  section.marketing-para-cirujanos.seo span {
    display: inline !important;
  }
}
@media screen and (max-width: 1250px) {
  section.marketing-para-cirujanos .flexcontainer {
    gap: 40px;
  }
  section.servicios-adaptados .cajas .box {
    margin: 0 10px;
  }
}
@media screen and (max-width: 1220px) {
  .megamenu .cajas {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
  .megamenu .cajas a {
    min-height: 0;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 1205px) {
  section.servicios-adaptados .cajas .box h3 {
    min-height: 90px;
  }
  section.marketing-para-cirujanos.realizacion-videos span {
    display: inline !important;
  }
}
@media screen and (max-width: 1015px) {
  section.tu-presencia-online .flexcontainer {
    flex-direction: column;
  }
  section.tu-presencia-online .flexcontainer .der {
    text-align: center;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  section.tu-presencia-online .flexcontainer .der ul {
    padding-left: 0;
    list-style-type: none;
  }
}
@media screen and (max-width: 1000px) {
  div.pre-footer .formulario .col {
    width: 48%;
  }
  div.pre-footer .formulario .col.sinmargen {
    margin-right: 0px;
  }
  div.pre-footer .formulario .col.ultima {
    width: 100%;
  }
}
@media screen and (max-width: 990px) {
  .megamenu .cajas a {
    min-height: 54px;
  }
}
@media screen and (max-width: 900px) {
  section.servicios-adaptados .cajas {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
  }
  section.servicios-adaptados .cajas .box {
    margin: 0;
  }
  section.servicios-adaptados .cajas .box h3 {
    min-height: auto;
  }
}
@media screen and (max-width: 880px) {
  section.slider-home .titulo h1 {
    font-size: 35px;
    line-height: 40px;
  }
  section.slider-home .titulo p {
    font-size: 25px;
    line-height: 30px;
  }
  section.marketing-para-cirujanos .flexcontainer {
    flex-direction: column;
  }
  section.marketing-para-cirujanos.nosotros .flexcontainer,
  section.marketing-para-cirujanos.redes-sociales .flexcontainer,
  section.marketing-para-cirujanos.realizacion-videos .flexcontainer,
  section.marketing-para-cirujanos.seo .flexcontainer {
    flex-direction: column-reverse;
  }
  section.marketing-para-cirujanos .flexcontainer {
    gap: 40px;
  }
  section.marketing-para-cirujanos .izq {
    text-align: center;
    align-items: center;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
  }
  :root {
    --tam-h1: 28px;
    --lh-h1: 33px;
    --tam-h2: 25px;
    --lh-h2: 30px;
  }
  div.pre-footer span.titulo {
    font-size: 30px;
    line-height: 35px;
  }
}
@media screen and (max-height: 700px) {
  section.slider-home {
    height: 700px;
  }
}
@media screen and (max-width: 700px) {
  div.pre-footer .formulario .col,
  div.pre-footer .formulario .col.ultima {
    float: none;
    width: inherit;
    margin-right: 0;
  }
}
@media screen and (max-width: 680px) {
  section.tu-presencia-online .flexcontainer .der,
  section.marketing-para-cirujanos .izq {
    width: 90%;
  }
  :root {
    --tam-h1: 25px;
    --lh-h1: 30px;
    --tam-h2: 22px;
    --lh-h2: 27px;
  }
  section.texto-contacto span,
  section.nosotros-tambien .contenido span,
  section.tu-presencia-online .der h2 span,
  section.marketing-para-cirujanos .izq h2 span {
    font-size: 20px;
    line-height: 25px;
  }
  section.footer .politicas {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  section.footer .politicas .separador {
    display: none;
  }
}
@media screen and (max-width: 650px) {
  section.texto-contacto .contenido .tel-mail {
    flex-direction: column;
    gap: 20px;
    align-items: center;
  }
}
@media screen and (max-width: 630px) {
  section.servicios-adaptados .cajas {
    grid-template-columns: 1fr;
    gap: 30px;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 570px) {
  div.pre-footer .formulario .col.ultima {
    position: relative;
  }
  div.pre-footer .formulario p.polpriv {
    top: 0;
  }
  div.pre-footer .formulario .col .boton {
    text-align: right;
    position: absolute;
    padding-top: 50px;
  }
  div.pre-footer {
    padding-bottom: 120px;
  }
}
@media screen and (max-width: 450px) {
  section.tu-presencia-online .flexcontainer .der,
  section.marketing-para-cirujanos .izq {
    width: 100%;
  }
  section.marketing-para-cirujanos .izq h2 span {
    display: inline !important;
  }
}
@media screen and (max-width: 400px) {
  section.nosotros-tambien .contenido span,
  section.tu-presencia-online .der h2 span {
    display: inline;
  }
}
@media screen and (max-width: 380px) {
  section.texto-contacto .contenido .tel-mail .tel a,
  section.texto-contacto .contenido .tel-mail .mail a {
    flex-direction: column;
    gap: 5px;
  }
}
@media screen and (max-width: 320px) {
  #logotop {
    max-width: 200px;
  }
}
