/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

body {
  font-family: 'Lato', sans-serif ;
}

.font-alt {
  font-family: 'Roboto', sans-serif;
}

.font-lex {
  font-family: 'Lexend', sans-serif;
}

.modal {
  top: 25%;
}

.modal-footer .btn {
  border: 1px solid #db5e0a ;
  color: #db5e0a;
  font-weight: 600;
}

.sol-modales .modal-header .btn-close {
  padding: 14px;
  font-size: 12px;
  border-radius: 20px;
}

.sol-modales .modal-header .btn-close:hover {
  background-color: #db5e0a;
}

.sol-modales .modal-footer .btn:hover {
  background: #f3f3f3;
}

.sol-modales .btn-soluciones:hover,
.sol-modales .btn-soluciones:focus {
  background-color: #fff;
  border: 2px solid #db5e0a;
}

.sol-modales .modal-title {
  color: #1A3F81;
  font-family: "Roboto", Sans-serif;
  font-size: 16px;
  font-weight: 600;
}

.btn-soluciones {
  border: none;
  background: #FFFFFF6E;
  box-shadow: 0px 10px 10px -5px rgb(0 0 0 / 20%);
  border-radius: 20px;
  width: 170px;
  height: auto;
  transition: all ease-in-out .5s;
  border: 2px solid #FFFFFF6E;
}

.btn-soluciones i {
  font-size: 35px;
  color: #db5e0a;
}

.btn-soluciones span {
  color: #1A3F81;
  font-family: "Roboto", Sans-serif;
  font-size: 14px;
  font-weight: 600;
}

.sidenav {
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  background-color: #fffffff5 ;
  overflow-x: hidden;
  transition: 0.5s;
}

.blue {
  color: #0B3889;
}

.orange {
  color: #ee853f;
}

.dorange {
  color: #db5e0a;
}

.white {
  color: white;
}

.white80 {
  color: #ffffffcc;
}

.bg-blue {
  background-color: #1a3f81;
}

.bg-orange {
  background-color: #ee853f;
}

.bg-gray {
  background-color: #333;
}

.fs-14 {
  font-size: 14px;
}

.top-bar {
  border-bottom: 2px solid #ee853f;
}

.top-bar i {
  transition: all .25s ease-in-out;
  font-size: 20px;
}



.top-bar i:hover {
  transform: scale(1.2);
  cursor: pointer;
}


#menu-principal li {
  padding: 5px 20px;
}

#menu-principal li a {
  font-weight: 700;
  color: #181818;
  padding: 5px 0px;
}

#menu-principal li a:hover {
  border-bottom: 2px solid #ee853f;
}

#menu-principal .menu-item-has-children:hover {
  border-bottom: none;
}

#menu-principal .current-menu-item a {
  border-bottom: 2px solid #0b3889;
}

#menu-principal .current-menu-item a {
  color: #ed6409;
}


#menu-principal .current-menu-item a:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105  ";
  color: #ee853f;

}

#menu-principal li#menu-item-644 {
  padding: 10px 8px !important;
}

#menu-principal li#menu-item-644:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f105  ";
  color: #ee853f;
}

.menu-container {
  border-bottom: 1px solid #efefef;
}

.acerca-side .elementor-icon-box-icon {
  margin-top: 8px;
}


.dynamicslogo {
  max-width: 300px;
}

.dynor {
  background: #ed853e;
  border-radius: 50px;
  color: white;
  padding: 15px 0px;
  font-weight: 500 !important;
  transform-origin: center;
  transition: all .3s ease-in-out;
}

.dynblu {
  background: #214786;
  border-radius: 50px;
  color: white;
  padding: 15px 0px;
  font-weight: 500 !important;
  transition: all .35s ease-in-out; 
}

.pad5 {
  padding: 5px 0px !important;
}

.dynor:hover, .dynblu:hover {
  transform: scale(1.1);
  z-index: 99;
  cursor: pointer;
}

.listacer .elementor-icon-box-title {
  display: none;

}

.listaexp ul li {
  list-style-type: none;
  font-weight: 500;
  padding: 3px 0px;
  margin: 0px 5px;
}

.listaexp ul li:nth-child(odd) {
  color: #214786;
}
.listaexp ul li:nth-child(even) {
  color: #db5e0a;
}

.listaexp ul li:before {
  font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f105";
  margin-right: 5px;
}

.lista365 ul li {
  list-style-type: none;
}



.lista365 ul li:before {
  font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f00c";
  margin-right: 5px;
}

.lista365bc ul li {
  list-style-type: none;
  font-weight: 500;
  font-size: 18px;
  padding: 3px 20px;
  display: inline-block;
  float: left;
}

.lista365bc ul li:nth-child(odd) {
  color: #214786;
}
.lista365bc ul li:nth-child(even) {
  color: #db5e0a;
}

.lista365bc ul li:before {
  font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f105";
  margin-right: 5px;
}

.imgdyn365 {
  max-width: 350px;
  filter: drop-shadow(5px 5px 2px #00000040);
}
.imgdyn365dash {
  max-width: 500px;
  filter: drop-shadow(5px 5px 2px #00000040);
}

.crm_img .imgdyn365,
.crm_img .imgdyn365dash {
  transition: all .5s ease-in-out;
}

.crm_img .imgdyn365:hover {
  transform: scale(1.1);
}

.crm_img .imgdyn365dash:hover {
  transform: scale(1.1);
}


/* Mapa */

.map {
    background-color:transparent;
}

.map svg {
  padding: 0px;
}

.container {
    max-width: 800px;
    margin:auto;
}

.map path {
  transform-origin: 50% 50%;
  transition: all .5s;
  fill: #dfdfdf;
  stroke: white;
}



.active > path[data-id="nuevo leon"],
.active > path[data-id="baja california"], 
.active > path[data-id="chihuahua"],
.active > path[data-id="jalisco"],
.active > path[data-id="queretaro"],
.active > path[data-id="guanajuato"], 
.active > path[data-id="ciudad de mexico"],
.active > path[data-id="estado de mexico"],
.active > path[data-id="morelia"],
.active > path[data-id="puebla"],
.active > path[data-id="tlaxcala"] {
  fill: #3fa0f1;
    animation: 
      entrada 3s, 
      pulses 10s ease-in-out infinite;
    opacity: 0;
    animation-fill-mode: forwards;
  }

  @keyframes entrada {
    0% { opacity: 0; }
    100% {opacity: 1; }
  }

  @keyframes pulses {
    0% {transform: scale(1.0); fill: #3fa0f1; }
    50% { transform: scale(1.04); fill: #0062bb; }
    100% { transform: scale(1.0); fill: #3fa0f1 ; }

  }



.active > path[data-id="baja california"] { animation-delay: 1s; }
.active > path[data-id="chihuahua"] { animation-delay: 1.5s; }
.active > path[data-id="nuevo leon"] { animation-delay: 2s; }
.active > path[data-id="guanajuato"] { animation-delay: 2.5s; }
.active > path[data-id="jalisco"] { animation-delay: 3s; }
.active > path[data-id="queretaro"] { animation-delay: 3.5s; }
.active > path[data-id="estado de mexico"] { animation-delay: 4s; }
.active > path[data-id="ciudad de mexico"] { animation-delay: 4.5s; }
.active > path[data-id="morelia"] { animation-delay: 5s; }
.active > path[data-id="puebla"] { animation-delay: 5.5s; }
.active > path[data-id="tlaxcala"] { animation-delay: 6s; }

.active > path.animated {
   fill: orange !important;
   animation-duration: 3s;
   opacity: 1;
   transform: scale(1.04);
   animation-fill-mode: forwards;
}

.estados li {
  list-style-type: none;
  padding: 5px 0px;
}

.estados li:before {
   font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f105  ";
   color: #3fa0f1;
}

.envios li {
  display: inline-block;
  padding: 5px 25px;
  font-weight: 500;
}

.envios li:before {
   font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f105  ";
   color: #3fa0f1;
}

.estados li:hover {
  cursor: pointer;
  color: #db5e0a;
  font-weight: 500;
}

.lista_estados p {
  margin: 0px;
}

.contacto-container{
  top: -225px;
}

.contacto-container .elementor-container {
  box-shadow: 5px 5px 10px 0px #00000091;
}

.social-contacto .elementor-container {
  box-shadow: none;
}

.form-contacto input[type=text],
.form-contacto input[type="tel"],
.form-contacto input[type="email"],
.form-contacto select[name="opciones"],
.form-contacto textarea[name="comentario"] {
  border: none;
  border-bottom: 2px solid #d9d9d9;
  border-radius: 0px;
  background: white;
}

.form-contacto input[type=text]:hover,
.form-contacto input[type="tel"]:hover,
.form-contacto input[type="email"]:hover,
.form-contacto select[name="opciones"]:hover,
.form-contacto textarea[name="comentario"]:hover {
  border: none;
  border-bottom: 2px solid #1674d1;
  border-radius: 0px;
}

.form-contacto input:focus,
.form-contacto input:focus,
.form-contacto input:focus,
.form-contacto select:focus,
.form-contacto textarea:focus {
  outline: none;
}

.form-contacto span {
  color: #d36217;
  font-weight: 600;
}

.form-contacto div {
  margin: 10px 0px;
}

.form-contacto .wpcf7-spinner {
  display: none ;
}

.form-contacto input[type="submit"] {
  background: white;
  border: 2px solid #1674d1;
  color: #1674d1;
  border-radius: 50px;
  font-weight: 500;
  padding: 8px 25px;
  transition: ease-in-out 1s;
  transition: all 0.5s ease-in-out;
  width: 35%;


}

.br25 {
  border-radius: 25px;
}

.form-contacto input[type="submit"]:hover {
  transform: scale(1.15);
  color: white;
  border-radius: 50px;
  font-weight: 500;
  padding: 8px 25px;
  background: #d36217;
  border: none;
}

.mis-vis .elementor-icon-box-description {
  text-align: justify;
}





.md_bc p {
  margin: 0px;
}

.navbar-toggler {
  background: #1a3f81;
  border: none;
  color: white;
}

.navbar-toggler:hover {
  background: #ee853f;
}

.navbar-toggler-icon {
  width: auto;
  height: auto;
  
}

.navbar-toggler-icon i {
  color: white;
}


.menu-principal-container {
  padding-left: 20px;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

#menu-principal-1 li {
  list-style-type: none;
  padding: 2px 0px;
}

ul#menu-principal-1 a {
  color: #0B3889;
  font-weight: 600;
}

ul#menu-principal-1 a:before {
  font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f105  ";
}

ul#menu-principal-1 .sub-menu li a {
  color: #db5e0a;
  font-weight: 600;
}

ul#menu-principal-1 .sub-menu li a:before {
  font-family: "Font Awesome 5 Free"; font-weight: 600; content: "\f0da  ";
}

ul#menu-principal-1 .sub-menu li .sub-menu li a {
  color: #454545;
  font-weight: 600;
}

ul#menu-principal-1 .sub-menu li .sub-menu li a:before {
  font-family: "Font Awesome 5 Free"; font-weight: 600; content: "- ";
}

.mobile-bot {
  border-top: 2px solid #e9e9e9;
}

.closebtn {
  color: white;
  padding: 10px 0px;
  background: #ee853f;
}

.mobile-top {
  background: #244786;
}


.certificaciones .elementor-icon-box-icon {
  display: none;
}


.certificaciones .elementor-icon-box-description {
  padding: 8px 0px;
  border-bottom: 1px solid #ff660030;
}

.footer {
  background-color: #1a3f81;
  font-size: 11px;
  padding: 5px 0px;
}


.ms_svg img {
  width: 100px;
  filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.4));

}


p {
  margin: 0px;
}

.wpcf7 form.sent .wpcf7-response-output {
    border: none;
    text-align: center;
    background: #ff7a21;
    color: white;
    border-radius: 50px;
    font-size: 20px;
}






/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) { ... }

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) { ... }

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) { ... }

/* X-Large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) { 


  .btn-soluciones span {
    font-size: 16px;
  }

  .btn-soluciones {
    width: 250px;
    height: 170px;
  }

  .menu-principal-container {
    padding-left: 0px;
  }
  
  .logo {
    max-width: 135px;
  }

  li.solmic .sub-menu {
    display: none;
    list-style-type: none;
    position: absolute;
    z-index: 999;
    background: white;
    transition: all 1.5s ease-in-out;
  }

  li.solmic:hover .sub-menu {
    display: block;
    animation: ndlvl .5s;
    padding: 0px;
    box-shadow: -5px 5px 10px #0000004a;
    margin-top: 5px;
  }

  li.solmic:hover .sub-menu li {
    padding: 10px 20px !important;
  } 

  @keyframes ndlvl {
    0% { opacity: 0;}
    100% { opacity: 1; transform: translateY(0%); }
  }



  li.solmic:hover .sub-menu .menu-item-has-children .sub-menu {
    display: none;
    list-style-type: none;
    position: absolute;
    z-index: 999;
    background: white;
    transition: all 1s ease-in-out;
  }

  li.solmic:hover .sub-menu .menu-item-has-children:hover .sub-menu {
    display: block;
    animation: rdlvl 1s;
    padding: 5px;
    right: -175px;
    top: 0;
    margin-top: 0px;
  }

  @keyframes rdlvl {
    0% { opacity: 0; transform: translatex(-15%); }
    100% { opacity: 1; transform: translateY(0%); }
  }

  .certificaciones .elementor-icon-box-icon {
    display: block;
  }

  .certificaciones .elementor-icon-box-description {
    padding: 0px;
    border-bottom: none;
  }

  .mis-vis .elementor-icon-box-description {
    text-align: left;
  }

  .map svg {
    padding: 20px;
  }

  .dynor {
    background: #ed853e;
    border-radius: 50px;
    color: white;
    padding: 15px 0px;
    margin: 20px 0px;
    font-weight: 500 !important;
    transform-origin: center;
    transition: all .3s ease-in-out;
  }

  .dynblu {
    background: #214786;
    border-radius: 50px;
    color: white;
    padding: 15px 0px;
    margin: 20px 0px;
    font-weight: 500 !important;
    transition: all .35s ease-in-out; 
  }

  .crm_img .imgdyn365,
  .crm_img .imgdyn365dash {
    transition: all .5s ease-in-out;
  }

  .crm_img .imgdyn365:hover {
    transform: scale(1.3);
  }

  .crm_img .imgdyn365dash:hover {
    transform: scale(1.5);
  }

  .listaexp ul li {
      display: inline-block;
  }

  .footer {
    background-color: #1a3f81;
    font-size: 14px;
  }





}

/* XX-Large devices (larger desktops, 1400px and up) */
@media (min-width: 1400px) { ... }