@charset "UTF-8";
/* ------------------------------------------------------------- 
* FUENTES
* AvenirLTStd con soporte moderno completo (.woff2 como prioridad)
* -------------------------------------------------------------- */
@font-face {
  font-family: "Avenir";
  font-display: swap;
  src: url("../fonts/AvenirLTStd-Roman.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirLTStd-Roman.woff2") format("woff2"), url("../fonts/AvenirLTStd-Roman.woff") format("woff"), url("../fonts/AvenirLTStd-Roman.otf") format("opentype"), url("../fonts/AvenirLTStd-Roman.ttf") format("truetype"), url("../fonts/AvenirLTStd-Roman.svg#AvenirLTStd-Roman") format("svg");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Avenir";
  font-display: swap;
  src: url("../fonts/AvenirLTStd-Oblique.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirLTStd-Oblique.woff2") format("woff2"), url("../fonts/AvenirLTStd-Oblique.woff") format("woff"), url("../fonts/AvenirLTStd-Oblique.otf") format("opentype"), url("../fonts/AvenirLTStd-Oblique.ttf") format("truetype"), url("../fonts/AvenirLTStd-Oblique.svg#AvenirLTStd-Oblique") format("svg");
  font-weight: 500;
  font-style: italic;
}
@font-face {
  font-family: "Avenir";
  font-display: swap;
  src: url("../fonts/AvenirLTStd-BookOblique.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirLTStd-BookOblique.woff2") format("woff2"), url("../fonts/AvenirLTStd-BookOblique.woff") format("woff"), url("../fonts/AvenirLTStd-BookOblique.otf") format("opentype"), url("../fonts/AvenirLTStd-BookOblique.ttf") format("truetype"), url("../fonts/AvenirLTStd-BookOblique.svg#AvenirLTStd-BookOblique") format("svg");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "Avenir";
  font-display: swap;
  src: url("../fonts/AvenirLTStd-Book.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirLTStd-Book.woff2") format("woff2"), url("../fonts/AvenirLTStd-Book.woff") format("woff"), url("../fonts/AvenirLTStd-Book.otf") format("opentype"), url("../fonts/AvenirLTStd-Book.ttf") format("truetype"), url("../fonts/AvenirLTStd-Book.svg#AvenirLTStd-Book") format("svg");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Avenir";
  font-display: swap;
  src: url("../fonts/AvenirLTStd-Black.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirLTStd-Black.woff2") format("woff2"), url("../fonts/AvenirLTStd-Black.woff") format("woff"), url("../fonts/AvenirLTStd-Black.otf") format("opentype"), url("../fonts/AvenirLTStd-Black.ttf") format("truetype"), url("../fonts/AvenirLTStd-Black.svg#AvenirLTStd-Black") format("svg");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Avenir";
  font-display: swap;
  src: url("../fonts/AvenirLT-BlackOblique.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirLT-BlackOblique.woff2") format("woff2"), url("../fonts/AvenirLT-BlackOblique.woff") format("woff"), url("../fonts/AvenirLT-BlackOblique.ttf") format("truetype"), url("../fonts/AvenirLT-BlackOblique.svg#AvenirLT-BlackOblique") format("svg");
  font-weight: 700;
  font-style: italic;
}
/* ------------------------------------------------------------- 
* Utilidades
-------------------------------------------------------------- */
/* Clases  -----------------------------------------------------*/
.full-height {
  height: 100%;
}

.justify-content-between {
  justify-content: space-between;
}

.custom-row {
  display: flex;
  flex-flow: row nowrap;
}

.text-center {
  text-align: center;
}

.inline-block {
  display: inline-block;
}

/* Botones -----------------------------------------------------*/
button.btn, a.btn {
  display: inline-block;
  border: 0;
  padding: 10px 30px;
  cursor: pointer;
  box-shadow: none;
  background: #000;
  color: #FFF !important;
  border: 0;
  font-size: 16px;
  border-radius: 0;
  transition: all 0.3s ease !important;
}
button.btn:hover, a.btn:hover {
  box-shadow: none;
  border: 0;
  background: #a2b8df;
}
button.btn:disabled, a.btn:disabled {
  background: lightgray;
}

button.btn.btn-icon i, a.btn.btn-icon i {
  display: inline-block;
  margin-left: 10px;
}
button.btn.btn-icon.icon-left i, a.btn.btn-icon.icon-left i {
  margin-right: 10px;
  margin-left: 0;
}

button.btn.btn-blue, a.btn.btn-blue {
  background: #a2b8df;
}
button.btn.btn-blue:hover, a.btn.btn-blue:hover {
  background: rgb(48.6494117647%, 60.7968627451%, 82.3309803922%);
}

button.btn.btn-blue, a.btn.btn-yellow {
  background: #d3ad29;
}
button.btn.btn-blue:hover, a.btn.btn-yellow:hover {
  background: rgb(65.9990662932%, 54.1129785247%, 12.8244631186%);
}

button.btn.btn-blue, a.btn.btn-purple {
  background: #af88be;
}
button.btn.btn-blue:hover, a.btn.btn-purple:hover {
  background: rgb(59.9317988065%, 40.3985507246%, 67.4445865303%);
}

button.btn.btn-blue, a.btn.btn-black {
  background: #000;
}
button.btn.btn-blue:hover, a.btn.btn-black:hover {
  background: #444;
}

button.btn.btn-white, a.btn.btn-white {
  background: #FFF;
  color: #000 !important;
}
button.btn.btn-white:hover, a.btn.btn-white:hover {
  background: #e5e5e5;
}

button.btn.btn-large, a.btn.btn-large {
  width: 100%;
  text-align: center;
  padding: 10px 15px;
}

button.btn.btn-small, a.btn.btn-small {
  font-size: 15px;
}

/* Mensajes -----------------------------------------------------*/
.mensaje {
  background: lightgreen;
  padding: 10px;
  margin-bottom: 10px;
  border-radius: 10px;
}
.mensaje.error {
  background: lightpink;
}

.resolver_duda {
  color: red;
}

/* ------------------------------------------------------------- 
* BASE
-------------------------------------------------------------- */
body {
  margin: 0;
  color: #3c3c3c;
  font: 400 14px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  color: #3261b0;
  transition: all 0.3s ease;
}
a:hover {
  color: #d3ad29;
}

/* Formularios ----------------------------------------------- */
/* ------------------------------------------------------------- 
* General
-------------------------------------------------------------- */
@media (min-width: 1400px) {
  .container {
    max-width: 1200px;
  }
}
/* ------------------------------------------------------------- 
* Header
-------------------------------------------------------------- */
header.header-wrapper {
  height: 80px;
  width: 100%;
  background: #FFF;
  position: relative;
  z-index: 2000;
}
header.header-wrapper .container {
  height: 100%;
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
  justify-content: space-between;
}
header.header-wrapper .header-logo {
  display: inline-block;
}
header.header-wrapper .header-logo img {
  max-width: 104px;
}

body.unlogged .header-wrapper.header-app .header-options {
  align-items: center;
}

/* Opciones del header -----------------------------------------*/
.header-options {
  display: flex;
  flex-flow: row nowrap;
  position: relative;
  height: 100%;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}
.header-options .option-item {
  display: inline-block;
  position: relative;
  padding: 12px;
  color: #000;
  font-size: 13px;
  letter-spacing: 0.01em;
}
.header-options .option-item:hover {
  color: #a2b8df;
}
.header-options .option-item + .option-item:before {
  content: "";
  height: 30px;
  width: 2px;
  display: block;
  background: #aebdd2;
  top: 50%;
  left: 0;
  position: absolute;
  margin-top: -15px;
}
.header-options .option-item:last-child {
  padding-right: 0;
}
.header-options .help-option {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-right: 20px;
  padding: 0;
  border: 0;
  outline: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  background: transparent;
}
.header-options .help-option:focus, .header-options .help-option:focus-visible, .header-options .help-option:active {
  box-shadow: none;
  border: 0;
  outline: none;
}
.header-options .help-option {
  cursor: pointer;
  color: #000;
  font: 500 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.header-options .help-option:hover {
  color: #af88be;
}
.header-options .help-option .help-option-icon {
  font-size: 16px;
  line-height: 1;
  margin-left: 0;
  color: #000;
}
.header-options .help-option:hover .help-option-icon {
  color: #af88be;
}

.remodal.modal-help-platform {
  max-width: 600px;
  padding: 0;
  text-align: left;
  border-radius: 4px;
  overflow: hidden;
  position: relative;
}
.remodal.modal-help-platform .help-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 44px 18px 24px;
}
.remodal.modal-help-platform .help-modal-title {
  margin: 0;
  padding-right: 12px;
  font: 700 18px/1.35em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #3b3b3b;
}
.remodal.modal-help-platform .help-modal-close {
  position: absolute;
  top: 10px;
  right: 12px;
  z-index: 2;
  width: 28px;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #9a9a9a;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}
.remodal.modal-help-platform .help-modal-close:hover {
  color: #333;
}
.remodal.modal-help-platform .help-modal-close:focus, .remodal.modal-help-platform .help-modal-close:focus-visible, .remodal.modal-help-platform .help-modal-close:active {
  box-shadow: none;
  border: 0;
  outline: none;
}
.remodal.modal-help-platform .help-modal-video {
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  margin: 0;
  background: #000;
  overflow: hidden;
}
.remodal.modal-help-platform .help-modal-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.remodal.modal-help-platform .help-modal-body {
  padding: 22px 24px 22px;
  display: flex;
  align-items: center;
  gap: 20px;
}
.remodal.modal-help-platform .help-modal-body p {
  flex: 1;
  margin: 0;
  font: 400 15px/1.55em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #555;
}
.remodal.modal-help-platform .help-modal-body p strong {
  color: #333;
  font-weight: 700;
}
.remodal.modal-help-platform .help-modal-faq-btn {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
  padding: 11px 18px;
  background: #91afd8;
  color: #FFF;
  font: 700 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  text-decoration: none;
  border-radius: 4px;
}
.remodal.modal-help-platform .help-modal-faq-btn:hover {
  background: rgb(45.0506645611%, 60.0368469535%, 80.5179628899%);
  color: #FFF;
}
.remodal.modal-help-platform .help-modal-faq-btn .fa {
  margin-left: 0;
  font-size: 13px;
}
@media (max-width: 640px) {
  .remodal.modal-help-platform .help-modal-header, .remodal.modal-help-platform .help-modal-body {
    padding-left: 18px;
    padding-right: 18px;
  }
  .remodal.modal-help-platform .help-modal-title {
    font-size: 15px;
  }
  .remodal.modal-help-platform .help-modal-body {
    flex-flow: column nowrap;
    align-items: flex-start;
    gap: 16px;
  }
  .remodal.modal-help-platform .help-modal-body p {
    font-size: 13px;
  }
  .remodal.modal-help-platform .help-modal-faq-btn {
    font-size: 12px;
    padding: 10px 14px;
  }
}

.header-options .user-option {
  padding: 0;
  display: flex;
  align-items: center;
  flex-flow: row nowrap;
}
.header-options .user-option .user-name {
  display: inline-block;
  margin-right: 15px;
  font: 500 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #000;
}
.header-options .user-option .user-name:hover {
  color: #a2b8df;
}
.header-options .user-option .user-picture {
  display: inline-block;
}
.header-options .user-option .user-picture:hover {
  opacity: 0.8;
}
.header-options .user-option .user-picture img {
  max-width: 36px;
}

.header-options .sub-menu {
  display: none;
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
  min-width: 160px;
  background: #FFF;
  border: 1px solid #d9d9d9;
  color: #000;
  border-top: 0;
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.08);
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.08);
  top: 70px;
  right: 0;
  position: absolute;
  z-index: 100;
  border-radius: 4px;
  z-index: 1;
}
.header-options .sub-menu:before {
  content: "";
  width: 10px;
  height: 10px;
  top: -5px;
  right: 30px;
  position: absolute;
  box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
  transform: rotate(45deg);
  z-index: 5;
}
.header-options .sub-menu li {
  padding: 0;
  background: #FFF;
  position: relative;
  z-index: 10;
}
.header-options .sub-menu li a {
  display: block;
  padding: 10px;
  color: #000;
  font: 40 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.header-options .sub-menu li a:hover {
  background: #af88be;
  color: #FFF;
}
.header-options .sub-menu li + li {
  border-top: 1px solid rgba(0, 0, 0, 0.05);
}
.header-options i {
  display: inline-block;
  margin-left: 10px;
}

/* Legenda del header -----------------------------------------*/
.header-logo.logo-legend {
  position: relative;
}
.header-logo.logo-legend .legend {
  bottom: -2px;
  position: absolute;
  left: calc(100% + 6px);
  display: inline-block;
  color: #000;
  background: #a2b8df;
  padding: 4px 8px 2px;
  text-transform: uppercase;
  font: 700 15px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  white-space: nowrap;
}
.header-logo.logo-legend .legend:hover {
  color: #000;
  background: #FFF;
}
.header-logo.logo-legend .legend.PAA {
  background: #a2b8df;
}
.header-logo.logo-legend .legend.PAA:hover {
  color: #000;
  background: #FFF;
}
.header-logo.logo-legend .legend.EXANIII {
  background: #af88be;
}
.header-logo.logo-legend .legend.EXANIII:hover {
  color: #000;
  background: #FFF;
}
.header-logo.logo-legend .legend.UNAM {
  background: #d2ac2a;
}
.header-logo.logo-legend .legend.UNAM:hover {
  color: #000;
  background: #FFF;
}

.header-app .header-logo.logo-legend .legend.PAA:hover,
.header-app .header-logo.logo-legend .legend.EXANIII:hover {
  color: #FFF;
  background: #000;
}

/* ------------------------------------------------------------- 
* Navegacion
-------------------------------------------------------------- */
.navigation {
  background: transparent;
  position: relative;
  z-index: 1000;
}
.navigation .menu {
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: none;
}
.navigation .menu li {
  float: none;
  display: inline-block;
}
.navigation .menu li a {
  text-shadow: none;
  position: relative;
  display: inline-block;
  color: #FFF;
  cursor: pointer;
  font: 400 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  border: 0;
  padding: 22px 15px;
  overflow: hidden;
  transition: none;
}
.navigation .menu li a .icon {
  transition: none;
}
.navigation .menu li a:hover {
  border: 0;
}
.navigation .menu li a:after {
  content: "";
  display: block;
  width: 100%;
  height: 6px;
  bottom: -1px;
  left: 0;
  position: absolute;
  transform: scaleX(0);
}
.navigation .menu li:first-child a {
  padding-left: 0;
  padding-right: 0;
}
.navigation .menu li a .arrow {
  border-color: #FFF transparent transparent;
}
.navigation .menu li.current a:after {
  transform: scaleX(1);
}
.navigation .menu li.current a {
  background: transparent;
}
.navigation .menu li.has-menu a {
  padding-right: 24px;
}
.navigation .menu:after {
  display: none;
}
.navigation .menu > li:hover > a {
  background: rgba(255, 255, 255, 0.15);
}
.navigation .menu > li:hover > a:after {
  transform: scaleX(1);
}
.navigation .menu ul.sub-menu {
  min-width: 240px;
  background: #FFF;
  color: #000;
  border: 1px solid #c6c6c6;
  border-top: 0;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}
.navigation .menu ul.sub-menu li {
  display: block;
  text-align: left;
  padding: 0;
}
.navigation .menu ul.sub-menu li a {
  color: #000;
  font-size: 16px;
  display: block;
  padding: 12px 15px;
}
.navigation .menu ul.sub-menu li.current a {
  background: #E5E5E5;
}
.navigation .menu ul.sub-menu li.disabled {
  opacity: 0.4;
  cursor: no-drop;
}
.navigation .menu ul.sub-menu li.disabled a {
  cursor: inherit;
}
.navigation .menu > li:nth-child(n) > a:after {
  background: #a2b8df;
}
.navigation .menu > li:nth-child(2n) > a:after {
  background: #d3ad29;
}
.navigation .menu > li:nth-child(3n) > a:after {
  background: #af88be;
}
.navigation .menu > li:nth-child(4n) > a:after {
  background: #828fa2;
}
.header-wrapper.header-simple .navigation .menu {
  height: 100%;
}
.header-wrapper.header-simple .navigation .menu > li {
  font-size: 12px;
  height: 100%;
}
.header-wrapper.header-simple .navigation .menu > li > a {
  font: 600 12px/80px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding: 0 22px;
  height: 100%;
}

.navigation.navigation-app {
  background: #000;
}

/* ------------------------------------------------------------- 
* Footer
-------------------------------------------------------------- */
#footer {
  font: 400 13px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  position: relative;
  z-index: 10;
  border-top: 0;
}

#footer.footer-wrapper.footer-full {
  background: #040707;
  padding: 100px 0 100px;
  text-align: left;
  color: #FFF;
  text-shadow: none;
}
#footer.footer-wrapper.footer-full .footer-row {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
#footer.footer-wrapper.footer-full .footer-col {
  display: inline-block;
}
#footer.footer-wrapper.footer-full .footer-col:first-child {
  max-width: 400px;
}
#footer.footer-wrapper.footer-full .footer-description {
  margin-top: 32px;
  font: 400 16px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
#footer.footer-wrapper.footer-full .footer-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}
#footer.footer-wrapper.footer-full .footer-menu li {
  display: block;
  margin: 0;
  padding: 0;
}
#footer.footer-wrapper.footer-full .footer-menu li + li,
#footer.footer-wrapper.footer-full .footer-menu > a + a {
  margin-top: 7px;
}
#footer.footer-wrapper.footer-full .footer-menu a {
  font: 400 16px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  display: inline-block;
  color: #FFF;
}
#footer.footer-wrapper.footer-full .footer-menu a:hover {
  color: #a2b8df;
}
#footer.footer-wrapper.footer-full .footer-menu > a {
  display: block;
}
#footer.footer-wrapper.footer-full .footer-logo {
  display: inline-block;
  max-width: 140px;
}
#footer.footer-wrapper.footer-full .footer-logo img {
  width: 100%;
}
#footer.footer-wrapper.footer-full h4 {
  box-shadow: none;
  text-shadow: none;
  margin: 0 0 45px;
  color: #FFF;
  font: 700 20px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
#footer.footer-wrapper.footer-full .social-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline-block;
  padding-top: 10px;
  margin-top: 10px;
}
#footer.footer-wrapper.footer-full .social-list li {
  display: inline-block;
}
#footer.footer-wrapper.footer-full .social-list li a {
  font-size: 36px;
  color: #FFF;
}
#footer.footer-wrapper.footer-full .social-list li a:hover {
  color: #a2b8df;
}
#footer.footer-wrapper.footer-full .social-list li + li {
  margin-left: 20px;
}
#footer.footer-wrapper.footer-full .contact-description {
  margin: 0;
  font: 400 16px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
#footer.footer-wrapper.footer-full .contact-description a {
  color: #FFF;
}
#footer.footer-wrapper.footer-full .contact-description a:hover {
  color: #a2b8df;
}
#footer.footer-wrapper.footer-full .footer-text {
  color: rgba(255, 255, 255, 0.8);
  margin-top: 75px;
  font: 400 12px/1.8em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
#footer.footer-wrapper.footer-full .footer-text a {
  color: #FFF;
  text-decoration: underline;
}
#footer.footer-wrapper.footer-full .footer-text a:hover {
  color: #a2b8df;
}

#footer .footer-dropdown + .footer-dropdown {
  margin-top: 20px;
}
#footer.footer-wrapper.footer-full .col-links .footer-menu {
  padding-top: 15px;
}
#footer.footer-wrapper.footer-full .col-links .footer-menu a {
  font-size: 15px;
}
#footer .dropdown-title {
  cursor: pointer;
  transition: all 0.3s ease;
  font: 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
#footer .dropdown-title i {
  transition: all 0.3s ease;
}
#footer .dropdown-title.active i {
  transform: rotate(180deg);
}
#footer .dropdown-title:hover {
  opacity: 0.6;
}
#footer .dropdown-paa .dropdown-title {
  color: #a2b8df;
}
#footer .dropdown-exani .dropdown-title {
  color: #af88be;
}
#footer .dropdown-exani .footer-menu a:hover {
  color: #af88be !important;
}
#footer .dropdown-exhcoba .dropdown-title {
  color: #af88be;
}
#footer .dropdown-exhcoba .footer-menu a:hover {
  color: #af88be !important;
}
#footer .dropdown-pienseii .dropdown-title {
  color: #d2ac2a;
}
#footer .dropdown-pienseii .footer-menu a:hover {
  color: #d2ac2a !important;
}
#footer .dropdown-otros .dropdown-title {
  color: #828fa2;
}
#footer .dropdown-otros .footer-menu a:hover {
  color: #828fa2 !important;
}

/* ------------------------------------------------------------- 
* Home
-------------------------------------------------------------- */
/* Banner Inicial ----------------------------------------------*/
.banner-initial {
  background: url(../img/fondo/DashCabecera.webp) top center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 100%;
  width: 100%;
  padding: 2rem;
  height: 280px;
}
.banner-initial .container {
  height: 100%;
  display: flex;
  justify-content: flex-end;
}
.banner-initial .banner-text {
  width: 50%;
  height: 100%;
  color: #3c3c3c;
  display: flex;
  justify-content: center;
  align-items: center;
}
.banner-initial .banner-text h4 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
}
.banner-initial .banner-text .banner-description {
  margin-top: 20px;
  font-size: 15px;
  line-height: 1.4em;
}
.banner-initial .banner-text p {
  margin: 0;
}
.banner-initial .banner-text p + p {
  margin-top: 15px;
}
.banner-initial .banner-text a.btn {
  margin-top: 20px;
  font-size: 17px;
  padding: 11px 20px;
}
.banner-initial .banner-inside {
  max-width: 400px;
}

/* Contenido Principal -----------------------------------------*/
.main-wrapper {
  padding: 60px 0;
  background: #FFF;
}
.main-wrapper.main-home {
  background: #e6e6e6;
  padding: 10px 0;
}

.row.equal-columns {
  display: flex;
}

.row.no-padders {
  margin: 0 -10px;
}
.row.no-padders div[class^=col-] {
  padding: 0;
}

/* Modulos -----------------------------------------------------*/
.module-item {
  padding: 10px;
}
.module-item.full-height .module-box {
  height: 100%;
}

.module-box {
  background: #FFF;
}
.module-box .module-header {
  padding: 15px 24px;
  border-bottom: 1px solid #cccccc;
  color: #3c3c3c;
}
.module-box .module-header h4, .module-box .module-header h3, .module-box .module-header h2 {
  margin: 0;
  font-weight: 600;
  font-size: 20px;
}
.module-box .module-content {
  padding: 16px 24px 20px;
  color: #3c3c3c;
  font: 400 15px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.module-box .module-content p {
  margin: 0;
}
.module-box .module-content p + p {
  margin-top: 15px;
}
.module-box .btn {
  margin-top: 16px;
}

/* Modulos: Stats ----------------------------------------------*/
.stats-list {
  display: flex;
  flex-flow: row wrap;
  list-style: none;
  padding: 0;
  margin: -8px -8px 0;
}
.stats-list li {
  width: 50%;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  padding: 12px 8px;
}
.stats-list li img {
  max-width: 60px;
  flex: 0 0 1;
}
.stats-list .stat-icon {
  width: 100%;
  flex: 0 0 1;
  max-width: 60px;
  position: relative;
}
.stats-list .completed .stat-icon .icon-item {
  width: 100%;
  padding-bottom: 134%;
  position: relative;
  display: block;
  z-index: 0;
}
.stats-list .completed .stat-icon .icon-item img {
  width: 100%;
  height: auto;
  transform: scale(1.68) translate(-50%, -50%);
  transform-origin: top left;
  top: 50%;
  left: 50%;
  position: absolute;
}
.stats-list .stat-info {
  position: relative;
  z-index: 10;
  padding-left: 15px;
}
.stats-list .stat-info h5 {
  margin: 0;
  font-size: 17px;
}
.stats-list .stat-info .percent {
  display: block;
  font-size: 20px;
  margin: 5px 0 2px;
}

.module-item.module-stats .module-box {
  display: flex;
  flex-flow: column nowrap;
}
.module-item.module-stats .module-header {
  flex: 0 0 1;
}
.module-item.module-stats .module-content {
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
}
.module-item.module-stats .module-content .btn {
  margin-top: auto;
}
.module-item.module-stats .stats-list {
  margin-top: 10px;
}

/* ------------------------------------------------------------- 
* Review
-------------------------------------------------------------- */
/* Pagina: Titulo de pagina -----------------------------------*/
.main-wrapper .page-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 32px;
}
.main-wrapper .page-title h2 {
  font-size: 28px;
  font-weight: 400;
  margin: 0;
}
.main-wrapper .page-title a.return {
  cursor: pointer;
  color: #3261b0;
  font: italic 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper .page-title a.return i {
  display: inline-block;
  margin-left: 6px;
  top: 1px;
  position: relative;
}
.main-wrapper .page-title a.return:hover {
  color: #000;
}

/* Modulos: Encabezados ----------------------------------------*/
.section-item .section-header {
  padding-bottom: 16px;
}
.section-item .section-header h3 {
  margin: 0;
  font: 700 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.section-item .section-header p {
  font-size: 16px;
  margin-top: 10px;
  margin-bottom: 0;
}

/* Modulos: Filtros --------------------------------------------*/
.section-item .section-content {
  background: #e9e9e9;
  padding: 10px 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  font-size: 15px;
}
.section-item .section-content fieldset {
  border: 0;
  padding-top: 10px;
  line-height: 1.5em;
  font-style: italic;
}
.section-item .section-content fieldset legend {
  background: transparent;
  padding: 0;
  border: 0;
  border-radius: 0;
  font: normal 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.section-item .section-content fieldset label {
  display: inline-block;
  margin-left: 2px;
}
.section-item .section-content fieldset input[type=radio] {
  background: transparent;
  border: 0;
  box-shadow: none;
  display: inline-block;
}
.section-item .section-content fieldset label.new-element {
  margin-left: 6px;
}
.section-item .section-content fieldset + fieldset {
  margin-top: 30px;
}
.section-item .section-content .load-more {
  margin-top: 15px;
  display: block;
  color: #3261b0;
  font: italic 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.section-item .section-content .load-more:hover {
  color: #000;
}

/* Modulos: Resumen --------------------------------------------*/
.review-resume {
  padding: 50px 0;
}
.review-resume h5 {
  font-weight: 500;
  margin: 0;
  font-size: 20px;
}
.review-resume .section-content {
  text-align: center;
  background: #FFF;
  border-bottom: 0;
  border-color: rgba(0, 0, 0, 0.15);
  padding: 35px 0;
}
.review-resume .data {
  color: #000;
  font-size: 64px;
  font-weight: 700;
  display: block;
  line-height: 1;
  margin: 6px 0 10px;
}
.review-resume .progress {
  font-weight: 500;
  font-size: 16px;
  opacity: 0.5;
}

/* Modulos: Respuestas -----------------------------------------*/
.table-item {
  border: 1px solid #e5e5e5;
  border-collapse: collapse;
}
.table-item thead th {
  padding: 13px 10px;
  font-size: 14px;
}
.table-item tbody td {
  font-size: 14px;
  padding: 13px 10px;
}

.review-answers .section-content {
  padding: 30px 0 0;
  background: #FFF;
  border-bottom: 0;
}
.review-answers table {
  margin-bottom: 0;
}
.review-answers table thead th {
  font-size: 13px;
}
.review-answers table thead th:nth-last-child(6),
.review-answers table thead th:nth-last-child(5),
.review-answers table thead th:nth-last-child(2),
.review-answers table thead th:nth-last-child(4) {
  text-align: center;
}
.review-answers table tbody td {
  font-size: 13px;
  line-height: 1.4em;
  transition: background 0.3s ease;
}
.review-answers table tbody td:first-child {
  text-align: center;
  font-size: 16px;
}
.review-answers table tbody i.fa-check {
  color: #149717;
}
.review-answers table tbody i.fa-times {
  color: #b4151d;
}
.review-answers table tbody td:last-child {
  text-align: center;
}
.review-answers table tbody tr:hover {
  cursor: pointer;
}
.review-answers table tbody tr:hover td {
  background: #f1f6ff;
}
.review-answers table tbody td:nth-last-child(6),
.review-answers table tbody td:nth-last-child(5),
.review-answers table tbody td:nth-last-child(2),
.review-answers table tbody td:nth-last-child(4) {
  text-align: center;
}
.review-answers table .mark-item {
  border: 0;
  background: transparent;
  color: #b3b3b3;
  cursor: pointer;
  transition: all 0.3s ease;
  outline: 0;
  box-shadow: none;
}
.review-answers table .marked .mark-item, .review-answers table .mark-item.marked {
  color: #b4151d;
}

.review-answer:hover {
  cursor: pointer;
}

/* ------------------------------------------------------------- 
* Home: Landing Page
-------------------------------------------------------------- */
.main-banner {
  height: 560px;
  width: 100%;
  background: #a2b8df;
  position: relative;
  overflow: hidden;
}
.main-banner .container {
  height: 100%;
  position: relative;
  z-index: 20;
}
.main-banner .img-bg {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  width: 100%;
  height: auto;
  min-height: 100%;
  z-index: 5;
  display: none;
}
.main-banner .banner-text {
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
  text-align: center;
  align-items: flex-start;
  justify-content: center;
  position: relative;
  z-index: 100;
}
.main-banner h1 {
  text-align: left;
  margin: 0;
  color: #000;
  font: 700 24px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-banner h1 span {
  display: block;
  font-weight: 500;
  color: #FFF;
  font-size: 38px;
  line-height: 1.2em;
  max-width: 780px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.main-banner h1 strong,
.main-banner h1 small {
  margin-top: 30px;
  display: inline-block;
  font-size: 20px;
  color: #FFF;
  font-weight: 400;
  opacity: 0.9;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}
.main-banner .btn {
  margin-top: 30px;
  height: 44px;
  padding: 0 30px;
  line-height: 44px;
  height: 68px;
  line-height: 68px;
  font-weight: 700;
  font-size: 20px;
  padding: 0 40px;
  letter-spacing: 0.02em;
}
.main-banner .btn:hover {
  background: #a2b8df !important;
}
.main-banner .main-banner-cta-row {
  display: flex;
  flex-flow: row wrap;
  align-items: stretch;
  gap: 20px;
  margin-top: 30px;
}
.main-banner .main-banner-cta-row .btn {
  margin-top: 0;
  flex: 1 1 0;
  min-width: 260px;
  max-width: 100%;
  text-align: center;
  box-sizing: border-box;
  white-space: nowrap;
}

html.mobile-device .main-banner .img-bg {
  display: block;
}
html.mobile-device .main-banner::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  z-index: 10;
  top: 0;
  left: 0;
  position: absolute;
}
html.mobile-device .video-wrap {
  display: none;
}
html.mobile-device .video-suggest-wrap {
  display: none;
}
html.mobile-device .suggest-frame {
  display: block;
}

/* Promo Video -------------------------------------------------*/
.home-header-video {
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  min-height: 100%;
  opacity: 0;
  transition: opacity 400ms ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .home-header-video {
    transition: none;
  }
}

.main-banner .video-wrap {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 8;
}
.main-banner .video-wrap::after {
  content: "";
  display: block;
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(162, 184, 223, 0.5);
  z-index: 10;
}
.main-banner .video-wrap.ready .home-header-video {
  opacity: 1;
}
.main-banner .video-wrap.ready::before {
  content: "";
  display: block;
  z-index: 12;
  top: 0;
  left: 0;
  position: absolute;
  width: 75%;
  height: 100%;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0));
}

/* Caracteristicas destacadas ----------------------------------*/
.features-wrapper {
  text-align: center;
  padding: 80px 0;
  background-color: #FFF;
}
.features-wrapper .feature-thumb {
  background: #af88be;
  border-radius: 50%;
  display: inline-block;
  width: 190px;
  height: 190px;
  margin-bottom: 0;
  position: relative;
  overflow: hidden;
}
.features-wrapper .feature-thumb img {
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}
.features-wrapper .feature-title {
  margin: 0 0 30px;
  font-size: 33px;
  display: block;
  margin-bottom: 50px;
}
.features-wrapper .feature-text {
  margin-top: 30px;
  width: 100%;
  max-width: 280px;
  font-size: 15px;
  line-height: 1.5em;
  font-weight: 400;
}
.features-wrapper .feature-text p {
  margin: 0;
}
.features-wrapper .feature-text p + p {
  margin-top: 24px;
}
.features-wrapper .container {
  display: flex;
  justify-content: space-around;
}
.features-wrapper .container h3, .features-wrapper .container h4 {
  margin: 0 0 20px;
  font-size: 24px;
}

/* Stats Wrapper -----------------------------------------------*/
.stats-wrapper {
  background: #af88be;
  color: #000;
  font: 500 24px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding: 50px 0;
}
.stats-wrapper .container {
  display: flex;
  justify-content: space-between;
}

.promo-examen {
  background: #d3ad29;
  padding: 25px 0;
}
.promo-examen h3 {
  font: 700 24px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
}
.promo-examen h3 span {
  display: block;
}
.promo-examen .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.promo-examen .btn {
  text-align: center;
  padding: 14px 20px;
  width: 260px;
}

/* Time List ---------------------------------------------------*/
.time-wrapper {
  background: #000;
  padding: 80px 0;
  color: #FFF;
  position: relative;
  overflow: hidden;
}
.time-wrapper .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.time-wrapper .btn-blue {
  font-weight: 500;
  color: #000 !important;
  height: 48px;
  line-height: 48px;
  padding: 0 25px;
  margin-top: 30px;
}
.time-wrapper .time-list {
  list-style: none;
  display: block;
  margin: 30px 0 0;
  padding: 0;
  content: "";
}
.time-wrapper .time-list li:before {
  content: "\f00c";
  display: inline-block;
  margin-right: 10px;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
.time-wrapper .time-list li + li {
  margin-top: 10px;
}
.time-wrapper .time-slogan {
  margin: 10px 0;
  font: 500 15px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.time-wrapper .time-title {
  margin: 0;
  font: 700 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.time-wrapper .time-image img {
  width: 100%;
  max-width: 300px;
  margin: 0 auto;
  height: auto;
}
.time-wrapper .time-info {
  width: 60%;
}
.time-wrapper .time-image {
  width: 40%;
}

/* Landing — bloque temario / descarga (reutilizable, Figma 2023:615) */
.landing-temario-cta {
  padding: 40px 0;
  background: linear-gradient(114.7deg, rgb(182, 197, 233) 30.673%, rgb(247, 226, 188) 39.886%, rgb(247, 226, 188) 69.994%, rgb(255, 255, 255) 93.192%);
}

.landing-temario-cta__inner {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: center;
  gap: 120px;
}

.landing-temario-cta__visual {
  flex: 0 0 auto;
  width: 395px;
  max-width: 100%;
}
.landing-temario-cta__visual img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 300px;
  object-fit: contain;
}

.landing-temario-cta__copy {
  /* 580px: ancho mínimo para que los títulos largos (EXANI III, EDIEMS, ECOEMS) entren en una línea */
  flex: 0 1 580px;
  min-width: 0;
  max-width: 580px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.landing-temario-cta__intro {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.landing-temario-cta__title {
  margin: 0;
  font: 800 26px/46px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #3c3c3c;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.landing-temario-cta__text {
  margin: 0;
  font: 400 14.5px/22.5px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #3c3c3c;
}

.landing-temario-cta__actions {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: 20px;
}

.landing-temario-cta__btn.btn-blue {
  display: inline-block;
  vertical-align: middle;
  box-sizing: border-box;
  height: 48px;
  line-height: 48px;
  padding: 0 25px;
  font-weight: 600;
  font-size: 16px;
  color: #000 !important;
  text-align: center;
  white-space: nowrap;
}
.landing-temario-cta__btn.btn-blue:hover, .landing-temario-cta__btn.btn-blue:focus {
  color: #000 !important;
}

.landing-temario-cta__badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 0;
}

.landing-temario-cta__badge-icon {
  display: block;
  width: 25px;
  height: 25px;
  flex-shrink: 0;
}

.landing-temario-cta__badge-text {
  font: 700 13.3px/16.8px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #9965ad;
  white-space: nowrap;
}

.landing-temario-cta__spark {
  font-size: 18px;
  line-height: 1;
  color: #9965ad;
}

/* Testimonios -------------------------------------------------*/
.testimonies-wrapper {
  padding: 80px 0;
  background: #FFF;
}
.testimonies-wrapper .testimony-title {
  font-size: 26px;
  text-align: center;
  margin: 0 0 50px;
}
.testimonies-wrapper .testimony-image {
  display: block;
  position: relative;
  overflow: hidden;
  width: 110px;
  height: 150px;
}
.testimonies-wrapper .testimony-image img {
  height: 100%;
  width: auto;
  max-width: none;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}
.testimonies-wrapper .testimony-info {
  flex: 1;
  min-width: 0;
  padding-left: 20px;
  display: flex;
  flex-flow: column nowrap;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.8em;
}
.testimonies-wrapper .testimony-info p {
  margin: 0;
}
.testimonies-wrapper .testimony-info h3,
.testimonies-wrapper .testimony-info h4 {
  font-size: 15px;
  margin: 0 0 7px;
}
.testimonies-wrapper .testimony-info .testimony-data {
  margin-top: auto;
  font-size: 18px;
}
.testimonies-wrapper .testimony-item {
  width: 50%;
  padding: 20px;
  box-sizing: border-box;
  flex: 0 0 50%;
}
.testimonies-wrapper .testimony-item .testimony-box {
  display: flex;
  flex-flow: row nowrap;
  width: 100%;
}
.testimonies-wrapper .testimony-grid .testimony-box {
  width: 50%;
  padding: 20px;
  box-sizing: border-box;
  flex: 0 0 50%;
  display: flex;
  flex-flow: row nowrap;
}
.testimonies-wrapper .container {
  width: 100%;
  display: block;
}
.testimonies-wrapper .container.testimony-grid {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}
.testimonies-wrapper .row {
  display: flex;
  flex-flow: row wrap;
  margin: -20px;
  width: 100%;
}

.landing-page .testimonies-wrapper .container {
  display: block;
  width: 100%;
}
.landing-page .testimonies-wrapper .container.testimony-grid {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}
.landing-page .testimonies-wrapper .row {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
  margin: -20px;
}
.landing-page .testimonies-wrapper .testimony-item .testimony-box {
  width: 100%;
}

/* Header Simple -----------------------------------------------*/
.header-simple .navigation {
  margin-left: auto;
  padding-right: 30px;
}

.header-simple .options-simple .option-item {
  background: #000;
  color: #a2b8df;
  font-weight: 500;
}
.header-simple .options-simple .option-item:hover {
  color: #af88be;
}
.header-simple .options-simple .option-item + .option-item:before {
  display: none;
}

.header-simple .header-options.options-simple {
  height: auto;
}

.header-simple .header-options.logged {
  color: #FFF;
}
.header-simple .header-options.logged i {
  color: #FFF;
}
.header-simple .header-options.logged a {
  color: #FFF;
}
.header-simple .header-options.logged .sub-menu {
  top: 80px;
}

.header-simple .header-options.logged .sub-menu a {
  color: #000;
}

/* Graficos ----------------------------------------------------*/
.graphs-wrapper {
  background: #dddee0;
  padding: 100px 0 60px;
}
.graphs-wrapper .graph-content {
  position: relative;
  z-index: 100;
}
.graphs-wrapper .graph-content h4, .graphs-wrapper .graph-content h2 {
  color: #000;
  margin: 0;
  font-size: 20px;
  line-height: 1.6em;
}
.graphs-wrapper .graph-content h4 small, .graphs-wrapper .graph-content h2 small {
  font-size: 0.8em;
  display: block;
  font-weight: 700;
  color: #af88be;
}
.graphs-wrapper .graph-content h4 strong, .graphs-wrapper .graph-content h2 strong {
  display: block;
  font-weight: 700;
  padding-left: 0;
}
.graphs-wrapper .graph-content .graph-text {
  margin-top: 16px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.75em;
  max-width: 340px;
}
.graphs-wrapper .container {
  position: relative;
  padding-top: 0px;
  padding-bottom: 278px;
}
.graphs-wrapper .graph-image {
  width: 100%;
  height: auto;
  bottom: 0;
  left: 0;
  position: absolute;
}

/* ------------------------------------------------------------- 
* Home: Media Query
-------------------------------------------------------------- */
.header-wrapper .menu-bars {
  color: #FFF;
  border: 0;
  box-shadow: none;
  background: transparent;
  transition: all 0.3s ease;
  font-size: 24px;
  padding: 0;
  display: none;
}
.header-wrapper .menu-bars:hover {
  color: #af88be;
}

.header-wrapper.header-app .menu-bars {
  color: #000;
}
.header-wrapper.header-app .menu-bars:hover {
  color: #af88be;
}

.menu--responsive {
  width: 100%;
  height: 100%;
  z-index: 1000;
  top: 0;
  left: 0;
  position: fixed;
  display: none;
}
.menu--responsive .navigation, .menu--responsive .navigation-wrap {
  width: 100%;
  height: 100%;
  max-width: 220px;
  z-index: 300;
  background: #FFF;
  text-align: left;
  box-shadow: 4px 0 10px rgba(0, 0, 0, 0.1);
}
.menu--responsive .navigation .menu, .menu--responsive .navigation-wrap .menu {
  display: block;
  text-align: left;
  padding-top: 100px;
}
.menu--responsive .navigation li, .menu--responsive .navigation-wrap li {
  margin: 0;
  display: block;
  margin: 0;
}
.menu--responsive .navigation li a, .menu--responsive .navigation-wrap li a {
  display: block;
  font-weight: 500;
  color: #000;
  padding: 15px;
  font-size: 16px;
}
.menu--responsive .navigation li a:after, .menu--responsive .navigation-wrap li a:after {
  height: 2px;
  transform-origin: left center;
}
.menu--responsive .navigation li + li, .menu--responsive .navigation-wrap li + li {
  border-top: 1px solid rgba(0, 0, 0, 0.05);
}
.menu--responsive .navigation li:first-child a,
.menu--responsive .navigation li:last-child a, .menu--responsive .navigation-wrap li:first-child a,
.menu--responsive .navigation-wrap li:last-child a {
  padding: 15px;
}
.menu--responsive .overlay {
  z-index: 200;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: fixed;
  background: rgba(0, 0, 0, 0.4);
}

.menu--responsive.responsive-app .navigation {
  background: #000;
  color: #FFF;
}
.menu--responsive.responsive-app .navigation ul li a {
  color: #FFF;
}
.menu--responsive.responsive-app .navigation ul li a:hover {
  background-color: #a2b8df;
}
.menu--responsive.responsive-app .menu-responsive li.has-menu span.arrow {
  right: 10px;
}
.menu--responsive.responsive-app .navigation li.current a {
  background: #a2b8df;
}
.menu--responsive.responsive-app .navigation .menu-responsive ul.sub-menu {
  width: 100%;
  display: none;
  position: relative;
  top: 0;
  left: 0;
  transform: none;
  background: #333;
  min-width: 0;
  border: 0;
  box-shadow: none;
}
.menu--responsive.responsive-app .navigation .menu-responsive ul.sub-menu li {
  background: #333;
  border: 0;
}
.menu--responsive.responsive-app .navigation .menu-responsive ul.sub-menu li a {
  background: #333;
  color: #FFF;
  border: 0;
}
.menu--responsive.responsive-app .navigation .menu-responsive ul.sub-menu li a:hover {
  background: #a2b8df;
}
.menu--responsive.responsive-app .menu-responsive {
  margin: 0;
  padding: 100px 0 0 0;
  list-style: none;
}
.menu--responsive.responsive-app .menu-responsive ul {
  padding: 0;
  margin-left: 0;
}
.menu--responsive.responsive-app .menu-responsive li.has-menu > a {
  position: relative;
}
.menu--responsive.responsive-app .menu-responsive li.has-menu > a::after {
  content: "\f0d7";
  font-family: FontAwesome;
  font-weight: 900;
  font-size: 14px;
  display: inline-block;
  color: #FFF;
  top: 50%;
  right: 10px;
  position: absolute;
  margin-top: -6px;
  transition: all 0.3s ease;
  transform-origin: center center;
}

/* ------------------------------------------------------------- 
* ERROR 404
-------------------------------------------------------------- */
.main-wrapper.error-404 {
  padding: 60px 0;
}
.main-wrapper.error-404 .container {
  display: flex;
  align-items: center;
  flex-flow: row wrap;
  justify-content: center;
  max-width: 1000px;
}
.main-wrapper.error-404 .e404-text {
  width: 40%;
}
.main-wrapper.error-404 .e404-text .title {
  display: inline-block;
}
.main-wrapper.error-404 .e404-text h2 {
  text-align: left;
  letter-spacing: 0.02em;
  margin: 0;
  color: #040707;
  font: 700 24px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.error-404 .e404-text h1 {
  color: #040707;
  font: 700 120px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
}
.main-wrapper.error-404 .e404-text h3 {
  color: #040707;
  font: 700 36px/1.1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.error-404 .e404-text h3 span {
  display: block;
  margin-bottom: 10px;
}
.main-wrapper.error-404 .e404-text h4 {
  color: #040707;
  font: 700 20px/1.1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.error-404 .e404-description {
  margin: 30px 0 0;
  color: #040707;
  font: 400 18px/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.error-404 .e404-description::after {
  content: "";
  display: block;
  width: 80px;
  height: 1px;
  background: #333;
  margin: 30px 0;
}
.main-wrapper.error-404 .links {
  padding: 0;
  margin: 0;
  list-style: none;
  font: 400 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #a2b8df;
}
.main-wrapper.error-404 .links li {
  display: inline-block;
}
.main-wrapper.error-404 .links li a {
  text-decoration: underline;
  color: #a2b8df;
}
.main-wrapper.error-404 .links li a:hover {
  color: #af88be;
}
.main-wrapper.error-404 .links li a::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #a2b8df;
  margin-left: 8px;
  margin-right: 8px;
  position: relative;
  bottom: 2px;
}
.main-wrapper.error-404 .links li:last-child a::after {
  display: none;
}
.main-wrapper.error-404 .e404-image {
  width: 60%;
}

/* ------------------------------------------------------------- 
* ERROR MANTENIMIENTO
-------------------------------------------------------------- */
.main-wrapper.error-mant {
  height: 100%;
  padding: 0;
  min-height: 100vh;
}
.main-wrapper.error-mant .container {
  min-height: 100vh;
  max-width: 1200px;
}
.main-wrapper.error-mant .e404-text h1 {
  z-index: 100;
  position: relative;
  font-size: 65px;
}
.main-wrapper.error-mant .mant-title {
  position: relative;
  z-index: 100;
  text-align: center;
}
.main-wrapper.error-mant .mant-title h1 {
  margin: 0;
  font-size: 65px;
  color: #1a1a1a;
  text-align: center;
}
.main-wrapper.error-mant .e404-image {
  width: 40%;
}
.main-wrapper.error-mant .e404-description .contact-us {
  font-weight: 700;
  color: #a2b8df;
  text-decoration: underline;
}
.main-wrapper.error-mant .e404-description .contact-us:hover {
  color: #000;
}
.main-wrapper.error-mant .mant-row {
  margin-top: -160px;
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.main-wrapper.error-mant .e404-description::after {
  display: none;
}

body.page-mantenimiento {
  background: #FFF;
  height: 100%;
}

/* ------------------------------------------------------------- 
* REPONSIVE
-------------------------------------------------------------- */
@media (max-width: 1100px) {
  .main-banner .img-bg {
    height: 100%;
    min-width: 100%;
    max-width: none;
    width: auto;
  }
}
@media (max-width: 991px) {
  header.header-wrapper.header-simple .container {
    width: 90%;
    max-width: none;
  }
  .features-wrapper {
    padding: 60px 0;
  }
  .features-wrapper .feature-title {
    font-size: 24px;
    margin-bottom: 40px;
    padding: 0 20px;
  }
  .features-wrapper .feature-column {
    padding: 0 15px;
  }
  .features-wrapper .container {
    display: flex;
    flex-flow: column nowrap;
  }
  .features-wrapper .feature-column {
    padding: 20px 0;
  }
  .features-wrapper .feature-title {
    max-width: 80%;
    margin: 0 auto 30px;
  }
  .features-wrapper .feature-text {
    margin: 0 auto;
  }
  .stats-wrapper {
    font-size: 20px;
  }
  .time-wrapper .time-title {
    line-height: 1.6em;
  }
  .time-wrapper .container {
    flex-flow: column nowrap;
  }
  .time-wrapper {
    padding: 60px 0 40px;
  }
  .time-wrapper .time-image {
    margin-top: 30px;
  }
  .landing-temario-cta {
    padding: 32px 0;
  }
  .landing-temario-cta__inner {
    flex-flow: column nowrap;
    align-items: stretch;
    gap: 32px;
  }
  .landing-temario-cta__visual {
    order: -1;
    width: 100%;
    max-width: 395px;
    margin-left: auto;
    margin-right: auto;
  }
  .landing-temario-cta__copy {
    /* En columna, flex-basis 490px del desktop sería altura; auto = alto según contenido */
    flex: 0 1 auto;
    width: 100%;
    max-width: none;
    gap: 28px;
  }
  .testimonies-wrapper {
    padding: 60px 0;
  }
  .testimonies-wrapper .testimony-title {
    font-size: 24px;
    max-width: 80%;
    margin: 0 auto 30px;
  }
  .testimonies-wrapper .testimony-info .testimony-data {
    padding-top: 20px;
  }
  .graphs-wrapper {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  #footer.footer-wrapper.footer-full .footer-description,
  #footer.footer-wrapper.footer-full .footer-menu a,
  #footer.footer-wrapper.footer-full .contact-description {
    font-size: 14px;
  }
  #footer.footer-wrapper.footer-full h4 {
    font-size: 18px;
  }
  #footer.footer-wrapper.footer-full .footer-logo {
    max-width: 120px;
  }
  #footer.footer-wrapper.footer-full .footer-col:first-child {
    max-width: 220px;
  }
}
@media (max-width: 767px) {
  header.header-wrapper.header-simple .container {
    max-width: 540px;
    width: 100%;
  }
  .header-wrapper .menu-bars {
    display: block;
  }
  .header-simple .navigation {
    display: none;
  }
  .header-simple .header-options {
    margin-left: auto;
    padding-right: 20px;
  }
  .stats-wrapper {
    font-size: 18px;
  }
  .testimonies-wrapper .testimony-item .testimony-box {
    flex-flow: column nowrap;
  }
  .testimonies-wrapper .testimony-grid .testimony-box {
    flex-flow: column nowrap;
  }
  .testimonies-wrapper .testimony-box {
    text-align: center;
  }
  .testimonies-wrapper .testimony-image {
    margin: 0 auto;
  }
  .testimonies-wrapper .testimony-info {
    width: 100%;
    padding: 25px 0 0;
  }
  .graphs-wrapper .container {
    padding-bottom: 120px;
  }
  .main-banner h1 span {
    display: inline;
  }
  .graphs-wrapper .container {
    padding-top: 40px;
  }
  /* Temario CTA — layout móvil (ref. Figma móvil 1137:214) */
  .landing-temario-cta {
    padding: 40px 0;
  }
  .landing-temario-cta__inner {
    gap: 28px;
  }
  .landing-temario-cta__copy {
    text-align: center;
    align-items: center;
  }
  .landing-temario-cta__intro {
    align-items: center;
  }
  .landing-temario-cta__title {
    font-size: 20px;
    line-height: 1.35;
  }
  .landing-temario-cta__actions {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: 16px;
  }
  .landing-temario-cta__btn.btn-blue {
    display: block;
    width: 260px;
    max-width: calc(100% - 32px);
    margin-left: auto;
    margin-right: auto;
    height: 48px;
    line-height: 48px;
    padding: 0 20px;
    white-space: nowrap;
  }
  .landing-temario-cta__badge {
    justify-content: center;
  }
  #footer.footer-wrapper.footer-full {
    text-align: center;
    padding: 80px 0 60px;
  }
  #footer.footer-wrapper.footer-full .footer-row {
    flex-flow: column nowrap;
  }
  #footer.footer-wrapper.footer-full .footer-col {
    width: 100%;
    max-width: 100%;
  }
  #footer.footer-wrapper.footer-full h4 {
    margin-bottom: 20px;
  }
  #footer.footer-wrapper.footer-full .footer-col:first-child {
    max-width: 100%;
  }
  #footer.footer-wrapper.footer-full .footer-col + .footer-col {
    margin-top: 60px;
  }
}
@media (max-width: 600px) {
  .main-banner h1 {
    font-size: 18px;
    padding: 0 15px;
    text-align: center;
  }
  .main-banner h1 span,
  .main-banner h1 small {
    display: inline-block;
  }
  .main-banner .btn {
    width: 200px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
  }
  .main-banner .main-banner-cta-row {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
  .main-banner .main-banner-cta-row .btn {
    flex: none;
    width: auto;
    min-width: min(100%, 280px);
    max-width: 100%;
    white-space: nowrap;
  }
  .features-wrapper .feature-title,
  .testimonies-wrapper .testimony-title {
    font-size: 20px;
  }
  .features-wrapper .container h4,
  .features-wrapper .container h3 {
    font-size: 17px;
  }
  .landing-temario-cta {
    padding: 40px 0;
  }
  .landing-temario-cta__inner {
    gap: 24px;
  }
  .landing-temario-cta__copy {
    gap: 24px;
  }
  .landing-temario-cta__title {
    font-size: 18px;
    line-height: 1.35;
  }
  .landing-temario-cta__text {
    font-size: 14px;
    line-height: 22px;
  }
  .landing-temario-cta__btn.btn-blue {
    width: min(100%, 280px);
    padding: 0 24px;
    font-size: 15px;
  }
  .landing-temario-cta__badge-text {
    white-space: normal;
    text-align: center;
  }
  .stats-wrapper .container {
    text-align: center;
    flex-flow: column nowrap;
  }
  .stats-wrapper {
    padding: 30px 0;
  }
  .stats-wrapper .stat-item + .stat-item {
    margin-top: 20px;
    font-size: 20px;
  }
  .graphs-wrapper .graph-image {
    max-width: 100%;
  }
  .graphs-wrapper {
    text-align: center;
  }
  .graphs-wrapper .graph-content h4 strong,
  .graphs-wrapper .graph-content h2 strong {
    padding-left: 0;
  }
  .graphs-wrapper .graph-content .graph-text {
    margin: 25px auto;
  }
  .testimonies-wrapper .row {
    margin: 0 -10px;
  }
}
@media (max-width: 480px) {
  .time-wrapper .container {
    text-align: center;
    padding: 0 30px;
  }
  .testimonies-wrapper .testimony-item {
    width: 100%;
  }
  .testimonies-wrapper .testimony-grid .testimony-box {
    width: 100%;
  }
  .graphs-wrapper .graph-image {
    position: static;
  }
  .graphs-wrapper .container {
    padding-bottom: 20px;
  }
}
/* ------------------------------------------------------------- 
* Home: Animaciones
-------------------------------------------------------------- */
html.on-animations .animated:not(.main-banner) {
  opacity: 0;
  animation-delay: 0.5s;
}

html.on-animations .main-banner.animated,
html.on-animations .main-banner h1.animated {
  opacity: 1;
  animation: none;
}

html.off-animations .animated {
  opacity: 1 !important;
}

.delay-0-5s {
  animation-delay: 0.5s;
}

.delay-1s {
  animation-delay: 1s;
}

.delay-1-5s {
  animation-delay: 1.5s;
}

.delay-2s {
  animation-delay: 2s;
}

/* ------------------------------------------------------------- 
* Leccion
-------------------------------------------------------------- */
/* Navegacion secundaria --------------------------------------*/
.secondary-navigation {
  background: #FFF;
  border-bottom: 1px solid #CCC;
}
.secondary-navigation .menu.menu-secondary {
  text-align: left;
  border: 0;
  background-image: none;
  width: 100%;
}
.secondary-navigation .menu.menu-secondary li:first-child {
  border: 0;
}
.secondary-navigation .menu.menu-secondary li:first-child a {
  border: 0;
}
.secondary-navigation .menu.menu-secondary li {
  position: relative;
  border: 0;
}
.secondary-navigation .menu.menu-secondary li a {
  border: 0;
  position: relative;
  background: #FFF;
  text-shadow: none;
}
.secondary-navigation .menu.menu-secondary li a::after {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  transform: scaleX(0);
  background: #a2b8df;
  transition: all 0.3s ease;
  bottom: 0;
  left: 0;
  position: absolute;
}
.secondary-navigation .menu.menu-secondary li.current {
  border: 0;
}
.secondary-navigation .menu.menu-secondary li.current a {
  background: #FFF;
  border: 0;
  color: #000;
  font-weight: 700;
}
.secondary-navigation .menu.menu-secondary li.current a::after {
  transform: scaleX(1);
}
.secondary-navigation .menu.menu-secondary li.current a:hover {
  border: 0;
  background: #FFF;
}
.secondary-navigation .menu.menu-secondary li.current a:hover::after {
  background: #a2b8df;
}
.secondary-navigation .menu.menu-secondary li a:hover {
  color: #000;
}
.secondary-navigation .menu.menu-secondary li a:hover::after {
  background: #af88be;
  transform: scaleX(1);
}

.menu.menu-secondary {
  background: #FFF;
  /* min-height, not height: between 561px and 991px the subject items wrap to a
     second row and a fixed height made them overflow onto the lesson title. */
  min-height: 46px;
  border: 0;
  background-image: none;
  font-size: 16px;
}
.menu.menu-secondary li:first-child a {
  border-left: 1px solid #cfcfcf;
}
.menu.menu-secondary li {
  height: 100%;
  vertical-align: top;
}
.menu.menu-secondary li a {
  height: 100%;
  border-right: 1px solid #e6e6e6;
  font-weight: 500;
  text-shadow: none;
  padding: 0 20px;
  color: #626262;
  font: 400 16px/46px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.menu.menu-secondary li.current a {
  color: #000;
  font-weight: 700;
  background: #e6e6e6;
  border-color: #e6e6e6;
}
.menu.menu-secondary li.disabled {
  overflow: visible;
  cursor: no-drop;
}
.menu.menu-secondary li.disabled a {
  color: #a8a8a8;
  cursor: no-drop;
}

.secondary-navigation .menu.menu-secondary li.disabled a:hover::after {
  transform: scaleX(0);
}
.secondary-navigation .menu.menu-secondary li.disabled .menu-secondary-tooltip {
  position: absolute;
  left: 50%;
  bottom: calc(100% + 8px);
  transform: translateX(-50%);
  padding: 8px 14px;
  background: #333;
  color: #FFF;
  font: 400 13px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  white-space: nowrap;
  border-radius: 4px;
  line-height: 1.3;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.15s ease, visibility 0.15s ease;
  z-index: 500;
  -webkit-font-smoothing: antialiased;
}
.secondary-navigation .menu.menu-secondary li.disabled:hover .menu-secondary-tooltip {
  opacity: 1;
  visibility: visible;
}

/* Leccion ----------------------------------------------------*/
.main-wrapper.single-lesson {
  position: relative;
  padding-top: 30px;
  padding-bottom: 0;
}
.main-wrapper.single-lesson:before {
  content: "";
  background: #e6e6e6;
  width: 100%;
  height: 600px;
  z-index: 1;
  top: 0;
  left: 0;
  position: absolute;
}
.main-wrapper.single-lesson .container {
  position: relative;
  z-index: 10;
}
.main-wrapper.single-lesson .lesson-title {
  margin: 0 0 20px;
  font: 500 26px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

.video-frame {
  width: 100%;
  padding-bottom: 75%;
  position: relative;
  overflow: hidden;
}
.video-frame iframe {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
}

.lesson-item .author-box, .review-explain .author-box {
  padding: 35px 0 25px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.lesson-item .author-box .author-image, .review-explain .author-box .author-image {
  position: relative;
  overflow: hidden;
  width: 70px;
  height: 70px;
  flex: 0 0 1;
  border-radius: 50%;
}
.lesson-item .author-box .author-image img, .review-explain .author-box .author-image img {
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  min-height: 100%;
}
.lesson-item .author-box .author-title, .review-explain .author-box .author-title {
  margin: 0;
  font: 500 15px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #000;
}
.lesson-item .author-box .author-title a, .review-explain .author-box .author-title a {
  color: #3261b0;
  font-weight: 700;
}
.lesson-item .author-box .author-job, .review-explain .author-box .author-job {
  color: #666;
  display: block;
  margin-top: 8px;
}
.lesson-item .author-box .author-info, .review-explain .author-box .author-info {
  padding-left: 15px;
}
.lesson-item .lesson-score, .review-explain .lesson-score {
  font-size: 18px;
}
.lesson-item .lesson-score h4, .review-explain .lesson-score h4 {
  color: #000;
  font-size: 1em;
  margin: 0;
  display: inline-block;
}
.lesson-item .btn-score, .review-explain .btn-score {
  height: 36px;
  line-height: 1;
  padding: 0 18px;
  font-size: 15px;
  margin-left: 8px;
}
.lesson-item .btn-score i, .review-explain .btn-score i {
  display: inline-block;
  margin-right: 10px;
}
.lesson-item .btn-score + .btn-score, .review-explain .btn-score + .btn-score {
  margin-left: 5px;
}
.lesson-item .btn-score.like.selected,
.lesson-item .btn-score.like:hover, .review-explain .btn-score.like.selected,
.review-explain .btn-score.like:hover {
  background: #59a683;
}
.lesson-item .btn-score.dislike.selected,
.lesson-item .btn-score.dislike:hover, .review-explain .btn-score.dislike.selected,
.review-explain .btn-score.dislike:hover {
  background: #ca3a41;
}
.lesson-item .comments-form, .review-explain .comments-form {
  border-top: 1px solid #E5E5E5;
  margin-top: 25px;
  padding-top: 15px;
}
.lesson-item .comments-form h5, .review-explain .comments-form h5 {
  margin: 0;
  font-size: 20px;
  font-weight: 500;
}
.lesson-item .comments-form p, .review-explain .comments-form p {
  color: #666;
  font-size: 14px;
  margin: 15px 0 0;
}
.lesson-item .comments-form p.note, .review-explain .comments-form p.note {
  margin: 0 0 0 10px;
  display: inline-block;
}
.lesson-item .comments-form textarea, .review-explain .comments-form textarea {
  margin-top: 20px;
  border-color: #b6b6b6;
  padding: 15px;
  font-size: 16px;
  line-height: 1.4em;
  resize: vertical;
  width: 100%;
  box-shadow: none;
  border-radius: 0;
  transition: border-color 0.4s ease;
}
.lesson-item .comments-form textarea:focus, .review-explain .comments-form textarea:focus {
  border-color: rgb(49.6504688832%, 31.031543052%, 56.8115942029%);
}
.lesson-item .comments-form button, .review-explain .comments-form button {
  display: inline-block;
  margin-top: 20px;
  text-align: center;
}
.lesson-item .comments-form.dislike-form,
.lesson-item .comments-form.like-form, .review-explain .comments-form.dislike-form,
.review-explain .comments-form.like-form {
  display: none;
}

/* Listado de lecciones sugeridass -----------------------------*/
.single-lesson .lesson-preview, .related-lessons .lesson-preview {
  display: flex;
  padding: 12px 15px 12px 15px;
  flex-flow: row nowrap;
  background: #e9e9e9;
  color: #333;
  position: relative;
}
.single-lesson .lesson-preview:before, .related-lessons .lesson-preview:before {
  content: "";
  display: block;
  height: 100%;
  width: 3px;
  background: #a2b8df;
  transform-origin: top center;
  transform: scaleY(0);
  top: 0;
  left: 0;
  position: absolute;
  transition: all 0.3s ease;
}
.single-lesson .lesson-preview .lesson-thumb, .related-lessons .lesson-preview .lesson-thumb {
  flex: 0 0 1;
  width: 72px;
  height: 60px;
  opacity: 0.8;
  display: inline-block;
  transition: all 0.3s ease;
  /* The placeholder is 72x60 but the Vimeo thumbnail that replaces it
     at runtime is 16:9, and the global img max-width:100% makes the
     browser drop the height attribute in favour of the real aspect
     ratio. Cover keeps the box filled whatever ratio the API returns. */
}
.single-lesson .lesson-preview .lesson-thumb img, .related-lessons .lesson-preview .lesson-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.single-lesson .lesson-preview .lesson-info, .related-lessons .lesson-preview .lesson-info {
  padding-left: 10px;
  text-align: left;
  display: flex;
  flex-flow: column nowrap;
  justify-content: space-between;
}
.single-lesson .lesson-preview h5, .related-lessons .lesson-preview h5 {
  margin: 0;
  font-size: 14px;
  line-height: 1.2em;
  font-weight: 500;
}
.single-lesson .lesson-preview .separation, .related-lessons .lesson-preview .separation {
  opacity: 0.6;
  bottom: 4px;
  position: relative;
}
.single-lesson .lesson-preview .duration, .related-lessons .lesson-preview .duration {
  font: italic 400 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.single-lesson .lesson-preview:hover, .related-lessons .lesson-preview:hover {
  color: #000;
}
.single-lesson .lesson-preview:hover .lesson-thumb, .related-lessons .lesson-preview:hover .lesson-thumb {
  opacity: 1;
}
.single-lesson .lesson-preview:hover:before, .related-lessons .lesson-preview:hover:before {
  transform: scaleY(1);
}
.single-lesson .lesson-preview.next-lesson, .related-lessons .lesson-preview.next-lesson {
  background: #d0d5df;
}
.single-lesson .lesson-preview.next-lesson:before, .related-lessons .lesson-preview.next-lesson:before {
  background: #d3ad29;
}
.single-lesson .list-column h4, .related-lessons .list-column h4 {
  margin: 0 0 20px;
  font-weight: 400;
  font-size: 20px;
}
.single-lesson .lesson-column, .related-lessons .lesson-column {
  padding-right: 0;
}
.single-lesson .suggest-lessons, .related-lessons .suggest-lessons {
  margin-top: 40px;
}
.single-lesson .suggest-lessons .lesson-preview + .lesson-preview, .related-lessons .suggest-lessons .lesson-preview + .lesson-preview {
  margin-top: 5px;
}
.single-lesson .next-lesson-block, .related-lessons .next-lesson-block {
  margin-top: 85px;
}

.return-table {
  margin-top: 40px;
  background: #000;
  width: 100%;
  padding: 18px 0;
}

.list-column {
  padding-top: 25px;
  padding-left: 30px;
}
.list-column .comments-form h5 {
  margin-top: 0;
}
.list-column .comments-form textarea {
  padding: 15px;
  width: 100%;
  display: block;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 0;
  box-shadow: none;
  font: 400 15px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  outline: 0;
  transition: all 0.3s ease;
  resize: vertical;
}
.list-column .comments-form textarea:focus {
  border-color: #a2b8df;
}
.list-column .comments-form button.btn, .list-column .comments-form a.btn {
  margin-top: 20px;
  padding: 11px 30px;
}
.list-column .btn-wrap {
  margin-top: 46px;
  text-align: center;
}
.list-column .btn-wrap .btn {
  width: 100%;
  padding: 16px 30px;
  max-width: none;
  font-size: 17px;
}

/* ------------------------------------------------------------- 
* Listado de Lessiones
-------------------------------------------------------------- */
.quiz-section {
  background: #e9e9e9;
  padding: 25px 0;
}
.quiz-section .section-title {
  margin: 0;
  font: 500 24px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.quiz-section .section-description {
  margin-top: 15px;
  font-size: 16px;
  line-height: 1.4em;
}
.quiz-section .quiz-box {
  margin-top: 20px;
  background-color: #FFF;
  display: flex;
  flex-flow: row nowrap;
}
.quiz-section .quiz-list {
  display: block;
  margin: 0;
  list-style: none;
  width: 40%;
  padding: 35px 0;
}
.quiz-section .quiz-list li {
  display: block;
  padding: 0 35px;
  position: relative;
}
.quiz-section .quiz-list li a {
  display: block;
  font-size: 16px;
  color: #333;
}
.quiz-section .quiz-list li a:hover {
  color: #a2b8df;
}
.quiz-section .quiz-list li a i {
  display: inline-block;
  width: 42px;
  height: 42px;
  background: #939393;
  border-radius: 50%;
  color: #FFF;
  line-height: 40px;
  text-align: center;
  font-size: 18px;
  border: 2px solid #FFF;
  box-shadow: 0 0 0 2px #FFF;
  margin-right: 10px;
}
.quiz-section .quiz-list li.seen a, .quiz-section .quiz-list li.current a {
  color: #000;
}
.quiz-section .quiz-list li.seen a i, .quiz-section .quiz-list li.current a i {
  background: #000;
  box-shadow: 0 0 0 2px #000;
}
.quiz-section .quiz-list li + li {
  margin-top: 15px;
}
.quiz-section .quiz-list li.current:after {
  content: "";
  width: 40px;
  height: 40px;
  background: #a2b8df;
  margin-top: -18px;
  top: 50%;
  right: -20px;
  position: absolute;
  transform: rotate(45deg);
  display: block;
}
.quiz-section .quiz-info {
  position: relative;
  z-index: 10;
  background: #a2b8df;
  width: 60%;
  padding: 40px 50px;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  flex-flow: column nowrap;
  overflow: hidden;
}
.quiz-section .quiz-info img.quiz-bg {
  top: 0;
  right: 0;
  position: absolute;
  height: 100%;
  width: auto;
  z-index: 10;
}
.quiz-section .quiz-info img.quiz-icon {
  top: 35px;
  left: 50px;
  position: absolute;
  width: 82px;
  height: auto;
  z-index: 10;
}
.quiz-section .quiz-info .quiz-item {
  display: none;
  z-index: 10;
  position: relative;
}
.quiz-section .quiz-info h4 {
  display: block;
  max-width: 420px;
  margin: 0 0 30px;
  font: 500 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.quiz-section .quiz-info .btn {
  width: 180px;
  text-align: center;
}
.quiz-section .quiz-info .btn:hover {
  background: #FFF;
  color: #000 !important;
}

.lessons-wrapper {
  padding-top: 0;
}

/* ------------------------------------------------------------- 
* Listado de lecciones 
-------------------------------------------------------------- */
.course-content {
  background: #FFF;
  padding: 35px 0;
}
.course-content .topic-header {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 12px 0;
  border-bottom: 1px solid #D9D9D9;
}
.course-content .topic-header:hover {
  color: #3261b0;
  cursor: pointer;
}
.course-content .topic-header img {
  max-width: 54px;
}
.course-content .topic-header .topic-title {
  padding-left: 25px;
  font-size: 18px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.3s ease;
}
.course-content .topic-header .topic-title i {
  margin-left: 6px;
  display: inline-block;
  top: 2px;
  position: relative;
  transition: all 0.3s ease;
}
.course-content .topic-header .topic-title.active i {
  transform: rotate(180deg);
}
.course-content .topic-header .glow-item {
  background: gold;
  width: 54px;
  position: relative;
  z-index: 0;
}
.course-content .topic-header .glow-item .icon-item {
  width: 100%;
  padding-bottom: 134%;
  background: #FFF;
  position: relative;
}
.course-content .topic-header .glow-item img {
  width: 100%;
  height: auto;
  transform: scale(1.68) translate(-50%, -50%);
  transform-origin: top left;
  top: 50%;
  left: 50%;
  position: absolute;
}
.course-content .topic-header .topic-numbers {
  margin-left: auto;
  opacity: 0.8;
  font-size: 16px;
}
.course-content .topic-content {
  padding-top: 15px;
  border-bottom: 1px solid #E5E5E5;
}
.course-content .chapter-title {
  font-size: 24px;
  font-weight: 500;
  border-bottom: 1px solid #CCC;
  padding-bottom: 16px;
  margin-bottom: 0;
}

/* Progress bar ------------------------------------------------*/
.topic-progress {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.topic-progress .image-item {
  border-left: 2px solid #FFF;
  border-right: 2px solid #FFF;
  background: #FFF;
  position: relative;
  z-index: 10;
  width: 54px;
}
.topic-progress .image-item.glow {
  width: 54px;
  position: relative;
  z-index: 0;
}
.topic-progress .image-item.glow .icon-glow {
  width: 100%;
  padding-bottom: 134%;
  background: #FFF;
  position: relative;
}
.topic-progress .image-item.glow .icon-glow img {
  width: 100%;
  height: auto;
  transform: scale(1.68) translate(-50%, -50%);
  transform-origin: top left;
  top: 50%;
  left: 50%;
  position: absolute;
}
.topic-progress img {
  width: 100%;
  height: auto;
}
.topic-progress .progress-bar {
  width: calc(100% - 112px);
  height: 10px;
  margin-top: -5px;
  top: 50%;
  left: 56px;
  position: absolute;
  overflow: hidden;
}
.topic-progress .progress-bar:before {
  content: "";
  background: #a7a9ac;
  background-image: linear-gradient(to right, #a7a9ac 16%, #a2b8df 19%, #a2b8df 48%, #af88be 52%, #af88be 81%, #d3ad29 84%);
  top: 0;
  left: 0;
  position: absolute;
  height: 100%;
  width: 100%;
}
.topic-progress .progress-bar span {
  display: block;
  width: 100%;
  height: 12px;
  top: -1px;
  right: 0;
  position: absolute;
  background: #FFF;
  transform-origin: right center;
  transform: scaleX(1);
}

/* Listado de las lecciones ------------------------------------*/
.chapter-item {
  padding-bottom: 25px;
}

.course-content .lesson-list {
  list-style: none;
  padding: 20px 0 20px;
  margin: 0;
}
.course-content .lesson-list li {
  padding: 10px 10px 10px 30px;
  position: relative;
  font: 400 16px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #000;
}
.course-content .lesson-list li a {
  color: #000;
}
.course-content .lesson-list li a:hover {
  color: #3261b0;
}
.course-content .lesson-list li .duration {
  display: inline-block;
  font-style: italic;
  top: 1px;
  right: 0;
  position: absolute;
}
.course-content .lesson-list .data-item {
  position: relative;
  padding-right: 80px;
  max-width: 520px;
}
.course-content .lesson-list li:before {
  content: "\f111";
  display: inline-block;
  font: normal normal normal 8px/1 "FontAwesome";
  top: 16px;
  left: 5px;
  position: absolute;
}
.course-content .lesson-list li.seen:before {
  content: "\f06e";
  display: inline-block;
  font: normal normal normal 16px/1 "FontAwesome";
  top: 13px;
  left: 0;
  position: absolute;
}
.course-content .lesson-list li.level-1:before {
  color: #a8acaf;
}
.course-content .lesson-list li.level-2:before {
  color: #a2b8df;
}
.course-content .lesson-list li.level-3:before {
  color: #af88be;
}
.course-content .lesson-list li.level-4:before {
  color: #d3ad29;
}
.course-content .lesson-list li.locked, .course-content .lesson-list li.locked a {
  color: #b3b3b3;
}
.course-content .lesson-list li.locked:before {
  opacity: 0.4;
}
.course-content .lesson-list .level-up {
  display: inline-block;
  background: #af88be;
  color: #af88be;
  padding: 15px 20px;
  transform: translateY(-50%);
  top: 50%;
  left: 580px;
  position: absolute;
}
.course-content .lesson-list .level-up .btn {
  font-size: 16px;
  width: 180px;
  padding-left: 0;
  padding-right: 0;
  text-align: center;
}
.course-content .lesson-list .level-up:before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: currentColor;
  transform: rotate(45deg);
  margin-top: -10px;
  top: 50%;
  left: -9px;
  position: absolute;
}
.course-content .lesson-list .level-up i {
  color: #d3ad29;
  display: inline-block;
  margin-right: 10px;
  font-size: 14px;
  position: relative;
}
.course-content .lesson-list .level-1 .level-up,
.course-content .lesson-list .level-1.level-up {
  background: #828fa2;
  color: #828fa2;
}
.course-content .lesson-list .level-2 .level-up,
.course-content .lesson-list .level-2.level-up {
  background: #a2b8df;
  color: #a2b8df;
}
.course-content .lesson-list .level-3 .level-up,
.course-content .lesson-list .level-3.level-up {
  background: #af88be;
  color: #af88be;
}
.course-content .lesson-list .level-4 .level-up,
.course-content .lesson-list .level-4.level-up {
  background: #d3ad29;
  color: #d3ad29;
}

/* Animaciones -------------------------------------------------*/
.topic-item .topic-content {
  display: none;
}
.topic-item .topic-progress .image-item {
  opacity: 1;
}

.topic-content.active .topic-progress .progress-bar span {
  animation: barraProgreso 4s cubic-bezier(0, 1, 0.7, 1);
}
.topic-content.active .topic-progress .image-item {
  animation: fadeIn 2s ease;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes barraProgreso {
  0% {
    transform: scaleX(10);
  }
  100% {
    transform: scaleX(1);
  }
}
/* Sugerencias ------------------------------------------------*/
.suggests-wrapper {
  background: #e9e9e9;
  padding-top: 25px;
  padding-bottom: 25px;
  margin-bottom: 15px;
}
.suggests-wrapper .section-title {
  margin: 0;
  font: 500 24px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.suggests-wrapper .description-description {
  margin-top: 15px;
  font-size: 16px;
}
.suggests-wrapper .suggest-block {
  background: #000;
  color: #FFF;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
}
.suggests-wrapper .suggest-left {
  width: 380px;
  text-align: center;
  padding: 20px 30px;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
}
.suggests-wrapper .suggest-left h3, .suggests-wrapper .suggest-left h4 {
  margin: 0;
  font: 500 28px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.suggests-wrapper .suggest-left h4 {
  color: #d3ad29;
}
.suggests-wrapper .suggest-left .suggest-inside {
  margin-top: auto;
}
.suggests-wrapper .suggest-left .btn {
  margin-top: 30px;
  font-size: 20px;
}
.suggests-wrapper .suggest-right {
  position: relative;
  width: calc(100% - 380px);
}
.suggests-wrapper .suggest-right img {
  width: 100%;
  height: auto;
}
.suggests-wrapper .suggest-description {
  color: #CCC;
  margin-top: auto;
  display: inline-block;
  font: 500 13px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

.video-suggest-wrap {
  width: 100%;
  height: auto;
  overflow: hidden;
  padding-bottom: 56.7%;
  position: relative;
}
.video-suggest-wrap video {
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 102%;
  height: auto;
  min-height: 100%;
}

.suggest-frame {
  display: none;
}

/* ------------------------------------------------------------- 
* EJERCICIOS
-------------------------------------------------------------- */
/* Header  ----------------------------------------------------*/
.excercise-wrapper {
  padding-bottom: 0;
  padding-top: 10px;
}

.excercise-header {
  padding-bottom: 20px;
  border-bottom: 1px solid #AAA;
}
.excercise-header .page-title {
  margin-bottom: 10px;
}

.excercise-data {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-flow: row nowrap;
}
.excercise-data .excercise-title {
  font-size: 22px;
  margin: 0;
}
.excercise-data .time {
  font: italic 400 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.excercise-data .time i {
  color: #999;
}

/* Preguntas --------------------------------------------------*/
.question-wrapper {
  width: 90%;
  max-width: 680px;
  margin: 0 auto;
  padding: 40px 0 40px;
}
.question-wrapper .question-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #a9a9a9;
  padding-bottom: 10px;
}
.question-wrapper .question-header h4 {
  color: #3c3c3c;
  font-size: 22px;
  margin: 0;
}
.question-wrapper .mark-question {
  cursor: pointer;
  font-size: 13px;
  font-style: italic;
  color: #3c3c3c;
  padding: 4px 10px;
  border-radius: 2px;
  background: #F5F5F5;
}
.question-wrapper .mark-question i {
  display: inline-block;
  margin-right: 6px;
}
.question-wrapper .mark-question:hover {
  color: #af88be;
}
.question-wrapper .mark-question.marked {
  background: #af88be;
  color: #FFF;
}
.question-wrapper .report {
  position: relative;
  top: 4px;
}
.question-wrapper .report img {
  display: inline-block;
  width: 22px;
  margin-right: 3px;
}
.question-wrapper .report {
  color: #000;
  font: italic 400 15px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.question-wrapper .report:hover {
  color: #e04f4f;
}

.question-item {
  padding: 0;
  font: italic 16px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.question-item .question-content {
  padding: 20px 0;
  border-bottom: 1px solid #a9a9a9;
}

.question-footer {
  text-align: right;
}

.answers-options {
  display: block;
  padding-bottom: 14px;
}
.answers-options .answer-option {
  display: block;
  position: relative;
  padding: 20px 46px;
  border-bottom: 1px solid #a9a9a9;
  transition: all 0.3s ease;
  line-height: 1.4em;
  cursor: pointer;
}
.answers-options .answer-option:hover {
  background: #e1e8f2;
}
.answers-options .answer-option.selected {
  background: #a3b9dd;
}
.answers-options .answer-option.selected > .clause {
  background: #000;
  color: #FFF;
}
.answers-options .answer-option p {
  margin: 0;
}
.answers-options .answer-option p + p {
  margin-top: 10px;
}
.answers-options .clause {
  display: inline-block;
  width: 22px;
  height: 22px;
  background: transparent;
  border: 1.5px solid #000;
  border-radius: 50%;
  text-align: center;
  line-height: 19px;
  color: #000;
  font-weight: 500;
  font-size: 13px;
  margin-top: -11px;
  top: 50%;
  left: 12px;
  position: absolute;
}
.answers-options .clause.crossed:after {
  content: "";
  width: 20px;
  height: 1px;
  background: #000;
  transform: rotate(-45deg) scale(1.5);
  top: 9px;
  left: 0;
  position: absolute;
  z-index: 10;
}
.answers-options input[type=radio],
.answers-options input[type=checkbox] {
  display: none;
}

.more-option {
  top: 50%;
  right: 12px;
  position: absolute;
  margin-top: -14px;
}
.more-option a.cross-option {
  cursor: pointer;
  display: none;
  transform: translateX(-50%);
  top: -55px;
  left: 50%;
  position: absolute;
  background: #FFF;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 4px;
  text-align: center;
  width: 100px;
  padding: 10px 0;
  z-index: 10;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}
.more-option a.cross-option .clause {
  position: relative;
  left: 0;
  top: 0;
  border-width: 1.5px;
  line-height: 20px;
}
.more-option a.cross-option .label {
  display: block;
  margin-top: 4px;
  color: #000;
  font: italic 400 13px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.more-option a.cross-option:before {
  content: "";
  display: block;
  background: #FFF;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-width: 0 1px 1px 0;
  width: 10px;
  height: 10px;
  z-index: -1;
  transform: rotate(45deg);
  margin-left: -5px;
  bottom: -5px;
  left: 50%;
  position: absolute;
}
.more-option.current a.cross-option {
  display: block;
}

.more-icon {
  cursor: pointer;
  opacity: 0.6;
  width: 18px;
}
.more-icon:hover {
  opacity: 1;
}

/* Preguntas: Deshabilitadas ----------------------------------*/
.answers-options .answer-option.disabled {
  pointer-events: none;
}
.answers-options .answer-option.disabled > .clause,
.answers-options .answer-option.disabled .text {
  opacity: 0.4;
}
.answers-options .answer-option.disabled .more-option {
  pointer-events: auto !important;
}

/* Preguntas: Respuesta correcta ------------------------------*/
.correct-answer {
  background: #eeeeee;
  border: 1px solid #cbcbcb;
  padding: 20px 20px 20px 60px;
  border-radius: 10px;
  position: relative;
  line-height: 1.5em;
  font-size: 14px;
  margin-top: 20px;
}
.correct-answer > i {
  font-size: 42px;
  color: #808080;
  top: 20px;
  left: 20px;
  position: absolute;
}
.correct-answer h4 {
  margin: 0 0 10px;
  font-size: 18px;
  line-height: 1;
}

.question-divide .correct-answer {
  width: calc(100% - 30px);
  margin: 20px auto;
}

.answer-option.wrong {
  background: #fcf5f5 !important;
}
.answer-option.wrong .text {
  color: #e04f4f;
}
.answer-option.wrong > .clause {
  border-color: #e04f4f;
  color: #FFF;
  background: #e04f4f !important;
}

.answer-option.correct {
  background: #edfce0 !important;
}
.answer-option.correct .text {
  color: #73b438;
}
.answer-option.correct > .clause {
  border-color: #73b438;
  color: #FFF;
  background: #73b438 !important;
}

/* Preguntas: Graficos ----------------------------------------*/
.question-box {
  position: relative;
  width: 100%;
  min-height: calc(100vh - 245px);
  display: flex;
  align-items: center;
  justify-content: center;
}
.question-box .container {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  z-index: 10;
  position: relative;
}
.question-box .question-left-column {
  width: 50%;
  background: #e9e9e9;
}
.question-box .question-graph {
  padding: 50px 50px 50px 0;
}
.question-box .question-graph img {
  display: block;
  max-width: 100%;
  width: auto;
  height: auto;
}
.question-box.question-divide .question-wrapper {
  width: 50%;
  max-width: 50%;
}

.question-box.question-divide.multiple-questions {
  min-height: calc(100vh - 245px);
}

.question-box.question-divide .more-option a.cross-option {
  width: 66px;
}
.question-box.question-divide:before {
  content: "";
  display: block;
  height: 100%;
  width: 50%;
  top: 0;
  left: 0;
  position: absolute;
  background: #e9e9e9;
  z-index: 1;
}
.question-box.question-divide .container {
  height: 100%;
}
.question-box.question-divide .container .question-wrapper,
.question-box.question-divide .container .question-left-column {
  overflow: auto;
  height: 100%;
}
.question-box.question-divide .container .question-wrapper {
  padding: 20px 0;
}
.question-box.question-divide .container .question-wrapper::-webkit-scrollbar,
.question-box.question-divide .container .question-left-column::-webkit-scrollbar {
  width: 8px;
  background: #f0f0f0;
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.05);
}
.question-box.question-divide .container .question-wrapper::-webkit-scrollbar-thumb,
.question-box.question-divide .container .question-left-column::-webkit-scrollbar-thumb {
  border-radius: 10px;
  width: 8px;
  background: #c2c2c2;
}
.question-box.question-divide .question-wrapper .question-header,
.question-box.question-divide .question-wrapper .question-item {
  padding-left: 15px;
  padding-right: 15px;
}
.question-box.question-divide .answers-options {
  padding: 0 15px 14px;
}
.question-box.question-divide .question-footer {
  padding: 0 15px;
}

.question-wrapper .answer-field {
  display: block;
  padding-top: 30px;
  position: relative;
}
.question-wrapper .answer-field label {
  display: inline-block;
  margin-right: 10px;
  font-style: normal;
  font-weight: 700;
}
.question-wrapper .answer-field input[type=text] {
  border: 1px solid #000000;
  height: 36px;
  padding: 0 15px;
  border-radius: 0;
  box-shadow: none;
  width: 160px;
  transition: all 0.3s ease;
}
.question-wrapper .answer-field input[type=text]:focus {
  box-shadow: 0 0 3px #3aaeff;
  border-color: #3aaeff;
}
.question-wrapper .answer-field input[type=text]:focus ~ .tooltip-field {
  display: block;
}

.question-divide .question-wrapper .answer-field {
  padding-left: 15px;
  padding-right: 15px;
}

.question-divide .answer-field.has-tooltip ~ .question-footer::after {
  content: "";
  padding-bottom: 150px;
  width: 100%;
  display: block;
}
@media (max-width: 490px) {
  .question-divide .answer-field.has-tooltip ~ .question-footer::after {
    display: none;
  }
}

.tooltip-field {
  display: none;
  top: 100%;
  left: 101px;
  position: absolute;
  margin-top: 20px;
  font-size: 14px;
  font-style: italic;
  line-height: 1.3em;
  bottom: auto;
  transform: none;
}
@media (min-width: 768px) and (max-width: 991px) {
  .tooltip-field {
    top: auto;
    left: 43px;
    bottom: 50px;
    width: 257px;
  }
}
@media (max-width: 490px) {
  .tooltip-field {
    top: auto;
    left: 43px;
    bottom: 50px;
    width: 257px;
  }
}
.tooltip-field:after, .tooltip-field:before {
  content: "";
  width: 0;
  height: 0;
  display: block;
  border-width: 14px 0 14px 12px;
  border-style: solid;
  border-color: transparent #FFF;
  z-index: 30;
  top: -14px;
  left: 1px;
  position: absolute;
}
@media (min-width: 768px) and (max-width: 991px) {
  .tooltip-field:after, .tooltip-field:before {
    border-width: 12px 14px 0 14px;
    border-color: #FFF transparent;
    left: 50%;
    top: auto;
    bottom: -9px;
    margin-left: -6px;
  }
}
@media (max-width: 490px) {
  .tooltip-field:after, .tooltip-field:before {
    border-width: 12px 14px 0 14px;
    border-color: #FFF transparent;
    left: 50%;
    top: auto;
    bottom: -9px;
    margin-left: -6px;
  }
}
.tooltip-field:before {
  z-index: 1;
  left: 0;
  border-width: 16px 0 16px 14px;
  top: -16px;
  border-color: transparent rgba(0, 0, 0, 0.2);
}
@media (min-width: 768px) and (max-width: 991px) {
  .tooltip-field:before {
    border-width: 14px 16px 0 16px;
    border-color: rgba(0, 0, 0, 0.2) transparent;
    left: 50%;
    margin-left: -8px;
    top: auto;
    bottom: -11px;
  }
}
@media (max-width: 490px) {
  .tooltip-field:before {
    border-width: 14px 16px 0 16px;
    border-color: rgba(0, 0, 0, 0.2) transparent;
    left: 50%;
    margin-left: -8px;
    top: auto;
    bottom: -11px;
  }
}
.tooltip-field .condition-box {
  position: relative;
  z-index: 100;
  background: #FFF;
  border: 1px solid rgba(0, 0, 0, 0.2);
  text-align: center;
  padding: 10px 0;
  z-index: 20;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
  text-align: left;
  padding: 12px;
}
.tooltip-field h4 {
  font-style: normal;
  font-size: 14px;
  margin: 0 0 5px;
}

.excercise-title .excercise-icon {
  display: inline-block;
  margin-left: 3px;
  max-width: 22px;
}

.excercise-header.excercise-exani .time {
  margin-left: auto;
  margin-right: 20px;
}
.excercise-header.excercise-exani .calculator-exani {
  cursor: pointer;
  font-size: 16px;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: center;
  border: 1px solid #CCC;
  padding: 8px 10px;
  transition: all 0.3s ease;
}
.excercise-header.excercise-exani .calculator-exani:hover {
  border-color: #a2b8df;
  background: #a2b8df;
}
.excercise-header.excercise-exani .calculator-exani svg {
  position: relative;
  top: -2px;
  color: #333;
  display: inline-block;
  width: 16px;
  margin-right: 8px;
}

/* Preguntas: Lectura  -----------------------------------------*/
.question-left-column.question-extract {
  padding: 45px 30px 45px 0;
  font: 400 15px/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  font-style: normal;
  font-family: "Times New Roman";
  text-align: left;
}
.question-left-column.question-extract p + p {
  margin-top: 20px;
}

.question-block + .question-block {
  padding-top: 35px;
}

/* Preguntas: Abiertas -----------------------------------------*/
.question-block.open .question-content {
  padding-bottom: 0;
  border-bottom: 0;
}
.question-block.open .answer-field {
  border-bottom: 1px solid #d9d9d9;
  padding: 20px 15px;
}
.question-block.open .answer-field input[type=text]:focus {
  border-color: #af88be;
  padding: 0 10px;
  box-shadow: 0 0 8px #af88be;
}

/* Footer  ----------------------------------------------------*/
.excercise-status {
  background: #b3b3b3;
  padding: 16px 0;
  color: #000;
}
.excercise-status .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.excercise-status .btn:hover {
  background: #af88be;
}
.excercise-status .btn.disabled {
  cursor: auto;
  border: 1px solid #000;
  color: #333 !important;
  background: transparent;
  pointer-events: none;
}

/* POPUP: Reportar -------------------------------------------*/
.jBox-overlay {
  background: rgba(100, 100, 100, 0.6);
}

.jBox-Modal .jBox-container, .jBox-Modal.jBox-closeButton-box:before {
  box-shadow: none;
}

.jBox-Modal .jBox-container {
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.15);
}

.jBox-Modal .jBox-title {
  padding: 0;
  border: 0;
  background: #FFF;
  font: 500 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #000;
}

.jBox-Modal .modal-description {
  font: 400 16px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0 0 28px 0;
}
.jBox-Modal label {
  display: block;
  font-weight: 500;
  font-size: 16px;
  margin-bottom: 8px;
}
.jBox-Modal textarea {
  resize: vertical;
  box-shadow: none;
  border: 1px solid #b8b9bb;
  background: #FFF;
  border-radius: 0;
  padding: 15px;
  width: 100%;
  font: 400 15px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.jBox-Modal .modal-footer {
  padding: 15px 30px 20px;
  display: flex;
  justify-content: flex-end;
}
.jBox-Modal .btn-submit {
  font-weight: 700;
}
.jBox-Modal .modal-inside {
  padding: 0 30px 15px;
}
.jBox-Modal .btn-close {
  background: rgba(0, 0, 0, 0.05);
  font-weight: 700;
  margin-right: 20px;
  color: #a2b8df !important;
}
.jBox-Modal .btn-close:hover {
  color: #FFF !important;
  background: #666;
}
.jBox-Modal .jBox-content {
  padding: 0;
}
.jBox-Modal .jBox-title {
  padding: 30px 30px 22px;
}

/* POPUP: Error ----------------------------------------------*/
.remodal-overlay {
  background: rgba(0, 0, 0, 0.7);
}

.remodal.modal-error {
  max-width: 560px;
  padding-top: 40px;
}
.remodal.modal-error .warning-image {
  width: 110px;
  color: #d3ad29;
  display: inline-block;
  top: 0;
  left: 0;
  position: absolute;
}
.remodal.modal-error .modal-content {
  position: relative;
  text-align: left;
  padding-left: 150px;
  padding-right: 20px;
}
.remodal.modal-error .modal-content h3 {
  margin: 0 0 20px;
  font: 700 38px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.remodal.modal-error .modal-content p {
  font: 400 18px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.remodal.modal-error .modal-content .btn {
  margin-top: 15px;
}
.remodal.modal-error .modal-content.modal-sent h3 {
  font-size: 28px;
}
.remodal.modal-error .modal-content.modal-sent p {
  font-size: 16px;
}

/* ------------------------------------------------------------- 
* EXANI II
-------------------------------------------------------------- */
.area-exani .excercise-bar {
  display: none;
}
.area-exani .question-box {
  background: #e9e9e9;
  min-height: calc(100vh - 264px);
}
.area-exani .question-wrapper {
  padding: 10px 0 30px;
}
.area-exani .progress-wrapper {
  background: #e9e9e9;
  height: 60px;
}
.area-exani .progress-wrapper .container {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.area-exani .container-progress {
  width: 100%;
}
.area-exani .progress-bar {
  position: relative;
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.area-exani .progress-bar .progress-item {
  background: #FFF;
  border-radius: 0;
  height: 18px;
  width: calc(100% - 54px);
  margin: 0 auto;
  position: relative;
  text-align: center;
}
.area-exani .progress-bar .bar {
  background: #a2b8df;
  border-radius: 4px;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
}
.area-exani .progress-bar .percent {
  width: 100%;
  height: 100%;
  line-height: 18px;
  text-align: center;
  top: 0;
  left: 0;
  position: absolute;
  color: #000;
  font: 700 13px/19px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.area-exani .progress-label {
  color: #000;
  width: 75px;
  text-align: left;
  font: 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.area-exani .main-wrapper .page-title h2 {
  font-size: 24px;
}
.area-exani .excercise-data .excercise-title {
  font-size: 18px;
}
.area-exani .excercise-header .page-title {
  margin-bottom: 0;
}
.area-exani .excercise-header {
  padding-bottom: 20px;
}
.area-exani .excercise-header .time {
  font: italic 400 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.area-exani .excercise-header .time i {
  color: #999;
}
.area-exani .exani-options {
  margin-top: 10px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  text-align: center;
  flex-flow: row nowrap;
}
.area-exani .exani-options .exani-option span {
  margin-top: 6px;
  display: block;
  font: 500 13px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.area-exani .exani-options .exani-option.next-option {
  display: flex;
  flex-flow: column-reverse nowrap;
  align-items: flex-end;
}
.area-exani .exani-options .exani-option.next-option a {
  background: transparent;
  color: #000;
}
.area-exani .exani-options .exani-option.next-option .active + button {
  background: #000;
  color: #FFF;
}
.area-exani .exani-options .exani-option.next-option .active + button:hover {
  background: #a2b8df;
}
.area-exani .exani-options .exani-option:first-child {
  text-align: left;
}
.area-exani .exani-options .exani-option:last-child {
  text-align: right;
}
.area-exani .exani-options button {
  background: #E5E5E5;
  color: #000;
  border-radius: 0;
  border: 0;
  outline: 0;
  width: 32px;
  height: 32px;
  font-size: 16px;
  line-height: 32px;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
}
.area-exani .exani-options button svg {
  width: 16px;
  height: auto;
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
}
.area-exani .exani-options button:hover {
  background: #000;
  color: #FFF;
}
.area-exani .question-block {
  background: #FFF;
  padding: 0 20px 20px 20px;
  width: calc(50% - 10px);
  min-height: 400px;
}
.area-exani .question-wrapper .question-header {
  text-align: center;
  padding: 12px 0;
  margin: 0 -20px 5px;
  background: rgba(162, 184, 223, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.area-exani .question-wrapper .question-header h4 {
  width: 100%;
  text-align: center;
}
.area-exani .question-columns {
  display: flex;
  justify-content: space-between;
  flex-flow: row nowrap;
}
.area-exani .question-wrapper {
  width: 100%;
  max-width: none;
}
.area-exani .question-item .question-content {
  padding-top: 15px;
  margin-top: 10px;
  border-top: 1px solid #a9a9a9;
  border-bottom: 0;
  padding-bottom: 5px;
}
.area-exani .question-footer {
  padding-top: 10px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-flow: row wrap;
}
.area-exani .question-footer .report {
  top: 0;
}
.area-exani .question-box.question-divide .question-footer {
  padding-top: 10px;
}
.area-exani .question-content img {
  margin-top: 20px;
}
.area-exani .question-box.question-divide .question-wrapper {
  width: 100%;
  padding-top: 0;
  max-width: none;
}

/* ------------------------------------------------------------- 
* CONTACTO
-------------------------------------------------------------- */
.container.container-auth {
  max-width: 860px;
}

.header-wrapper.header-auth .container {
  max-width: 860px;
}

/* Formulario de contacto -------------------------------------*/
.form-field {
  display: flex;
  flex-flow: column nowrap;
}
.form-field input[type=text],
.form-field input[type=email],
.form-field input[type=password],
.form-field input[type=tel],
.form-field select,
.form-field textarea {
  margin-bottom: 0;
  padding: 0;
  height: 34px;
  font-size: 14px;
  border-radius: 0;
  width: 100%;
  border: 1px solid #d6d6d6;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
  outline: 0;
  order: 2;
}
.form-field textarea {
  padding: 10px 0;
  height: 40px;
}
.form-field label {
  order: 0;
  display: block;
  font-size: 13px;
  font-weight: 700;
  margin: 0 0 12px;
  position: relative;
  left: 3px;
  transition: all 0.3s ease;
}
.form-field .error {
  color: #ef3942;
  font-size: 12px;
  font-weight: 500;
  padding-top: 8px;
  order: 3;
}
.form-field .error p {
  margin: 0;
}

input[type=submit].btn {
  background: #a2b8df;
  width: 100%;
  display: block;
  max-width: 180px;
  padding: 12px;
  border-radius: 0;
  border: 0;
  outline: 0;
  color: #000;
  font: 700 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  cursor: pointer;
  transition: all 0.3s ease;
}
input[type=submit].btn:hover {
  background: #000;
  color: #FFF;
}

.form-field + .form-field {
  margin-top: 20px;
}

.contact-wrapper {
  padding-bottom: 80px;
}
.contact-wrapper h1,
.contact-wrapper h2 {
  color: #a2b8df;
  font-size: 24px;
  margin: 0 0 20px;
}
.contact-wrapper .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
.contact-wrapper .contact-column {
  width: 40%;
  max-width: 260px;
  position: relative;
  z-index: 10;
}
.contact-wrapper .contact-image {
  width: 70%;
  margin-top: 0px;
  transform: translateY(50%);
  right: -67px;
  bottom: 55%;
  position: absolute;
}
.contact-wrapper .contact-image img {
  margin: auto;
  width: auto;
  max-width: 100%;
  position: relative;
  left: 0;
}
.contact-wrapper .form-field input[type=text],
.contact-wrapper .form-field input[type=email],
.contact-wrapper .form-field input[type=password],
.contact-wrapper .form-field input[type=tel],
.contact-wrapper .form-field select,
.contact-wrapper .form-field textarea {
  padding: 0 0 3px;
  height: auto;
  border-width: 0 0 1px 0;
  box-shadow: none;
  background: transparent;
  font-size: 13px;
}
.contact-wrapper .form-field textarea {
  resize: vertical;
  height: 40px;
}
.contact-wrapper .form-field label {
  font-size: 12px;
  margin-bottom: 5px;
}
.contact-wrapper input[type=submit] {
  margin-top: 20px;
}

.contact-form {
  margin-bottom: 30px;
}

/* Informacion de contacto -----------------------------------*/
.contact-info {
  padding: 0;
  margin: 0;
  list-style: none;
}
.contact-info li {
  font-size: 13px;
  color: #000000;
  font-weight: 700;
  position: relative;
  padding: 0 0 0 30px;
}
.contact-info li i {
  top: 50%;
  left: 0;
  position: absolute;
  transform: translateY(-50%);
  z-index: 100;
  display: inline-block;
  margin-right: 8px;
  font-size: 20px;
}
.contact-info li + li {
  margin-top: 23px;
}

/* ------------------------------------------------------------- 
* LOGIN 
-------------------------------------------------------------- */
/* Header -----------------------------------------------------*/
.header-wrapper.header-simple {
  background: #000;
  border-bottom: 0;
  height: 80px;
  width: 100%;
  top: 0;
  left: 0;
  position: fixed;
  z-index: 6000;
}
.header-wrapper.header-simple .header-logo {
  max-width: 104px;
  display: inline-block;
}
.header-wrapper.header-simple .header-logo img {
  max-width: 104px;
}
.header-wrapper.header-simple .navigation .menu {
  height: 100%;
}
.header-wrapper.header-simple .navigation .menu li {
  font-size: 12px;
  height: 100%;
}
.header-wrapper.header-simple .navigation .menu li a {
  font-size: 12px;
  padding: 0 22px;
  height: 100%;
  line-height: 80px;
}
.header-wrapper.header-simple .navigation .menu li:last-child a {
  padding: 0;
}
.header-wrapper.header-simple .navigation .menu li:last-child {
  margin-left: 22px;
  padding: 0;
}

.spacer-simple {
  width: 100%;
  height: 80px;
}

/* Formulario -------------------------------------------------*/
.log-form {
  margin: 50px auto 0;
  width: 100%;
  max-width: 720px;
  display: block;
  border: 1px solid #d6d6d6;
  border-top: 15px solid #a2b8df;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.log-form .log-header {
  text-align: center;
  padding: 25px 0;
}
.log-form .log-header h2, .log-form .log-header h1 {
  color: #a2b8df;
  text-transform: uppercase;
  font: 700 34px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
  background: #FFF;
  border: 0;
  padding: 0;
}
.log-form .log-header p {
  margin: 14px 0 0;
  font-size: 13px;
}
.log-form .log-header p a {
  font-weight: 700;
  color: #a2b8df;
}
.log-form .log-header p a:hover {
  color: #000;
}
.log-form .log-body form {
  padding: 0 30px 40px;
}
.log-form .log-field {
  position: relative;
}
.log-form .log-field .error {
  color: #ef3942;
  font-size: 12px;
  font-weight: 500;
  display: block;
  margin: 8px 0 0;
}
.log-form .log-field .error p {
  margin: 0;
}
.log-form .log-field label {
  display: block;
  margin: 0 0 12px;
  font-size: 13px;
  font-weight: 700;
}
.log-form .log-field input[type=text],
.log-form .log-field input[type=password] {
  margin-bottom: 0;
  padding: 0 10px;
  height: 34px;
  font-size: 14px;
  border-radius: 0;
  width: 100%;
  border: 1px solid #d6d6d6;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
}
.log-form .log-field + .log-field {
  margin-top: 20px;
}
.log-form input[type=submit].btn {
  margin: 35px auto 0;
}
.log-form input[type=checkbox] {
  border: 0;
  background: transparent;
  box-shadow: none;
  width: auto;
  display: inline-block;
  border-radius: 0;
}
.log-form .log-options {
  overflow: hidden;
  position: relative;
  font-size: 13px;
  margin-top: 15px;
}
.log-form .log-options .rememberme {
  float: left;
  color: #999;
}
.log-form .log-options .forgot {
  position: relative;
  left: 0;
  top: 0;
  line-height: 1;
  font-size: 13px;
  color: #a2b8df;
  font-weight: 700;
}
.log-form .log-options .forgot:hover {
  color: #000;
}

.register-form .log-header p {
  font-weight: 600;
  font-size: 13.5px;
  color: #000;
}

/* ------------------------------------------------------------- 
* OLVIDE MI CONTRASEÑA
-------------------------------------------------------------- */
.forgot-form .log-header p {
  font-size: 14px;
  line-height: 1.5em;
  max-width: 100%;
  padding: 0 30px;
}
.forgot-form .btn.btn-forgot {
  width: auto;
  max-width: none;
  padding: 12px 18px;
}
.forgot-form .forgot-return {
  line-height: 1;
  font-size: 14px;
  color: #a2b8df;
  font-weight: 700;
  display: inline-block;
  margin-top: 25px;
}
.forgot-form .forgot-footer {
  text-align: center;
}

/* ------------------------------------------------------------- 
* MENSAJES DE ACCION
-------------------------------------------------------------- */
.auth-message {
  max-width: 600px;
  margin: 120px auto;
  background: #FFF;
  padding: 40px;
  text-align: center;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
  font: 500 16px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.auth-message a {
  display: inline-block;
  background: #000;
  color: #FFF;
  font-size: 15px;
  padding: 4px 18px;
  margin-left: 10px;
}
.auth-message a:hover {
  background-color: #a2b8df;
  color: #FFF;
}

/* ------------------------------------------------------------- 
* REVIEW 
-------------------------------------------------------------- */
.review-wrapper {
  background: #e6e6e6;
}
.review-wrapper .review-header .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.review-wrapper .review-title {
  margin: 0;
  font: 400 28px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.review-wrapper .review-options {
  font: 400 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.review-wrapper .review-options .time {
  display: inline-block;
}
.review-wrapper .review-options .time i {
  display: inline-block;
  color: #999;
  margin-right: 5px;
}
.review-wrapper .review-options .btn-mark {
  margin-right: 10px;
  display: inline-block;
  background: #F5F5F5;
  padding: 8px 10px;
  border-radius: 4px;
  color: #333;
}
.review-wrapper .review-options .btn-mark i {
  margin-right: 5px;
  color: #999;
}
.review-wrapper .review-options .btn-mark:hover, .review-wrapper .review-options .btn-mark:hover i {
  color: #af88be;
}

.review-wrapper .question-inside {
  padding: 15px 45px 15px 15px;
}
.review-wrapper .question-frame {
  border: 4px solid rgba(0, 0, 0, 0.05);
  padding: 10px;
}
.review-wrapper .question-frame.question-extract {
  height: 440px;
  overflow: auto;
  font-style: normal;
  font-family: "Times New Roman";
}
.review-wrapper .question-frame.question-extract p + p {
  margin-top: 30px;
}
.review-wrapper .question-frame::-webkit-scrollbar {
  -webkit-appearance: none;
  background: #f0f0f0;
  width: 8px;
}
.review-wrapper .question-frame::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
}
.review-wrapper .question-frame.question-graph img {
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}
.review-wrapper .question-item {
  margin-top: 25px;
  background: #FFF;
  display: flex;
  justify-content: space-between;
}
.review-wrapper .question-item .question-inside {
  width: 55%;
}
.review-wrapper .question-item .question-choice {
  width: 45%;
  font-style: normal;
  font-weight: 500;
}
.review-wrapper .question-item .instructions {
  background: #fff3c2;
  color: #000;
  padding: 15px 15px 15px 30px;
  margin-bottom: 15px;
}
.review-wrapper .question-choice {
  padding: 0 0 20px;
}
.review-wrapper .multiple-field {
  padding-left: 30px;
}
.review-wrapper .multiple-field .multiple-question {
  margin-bottom: 20px;
}
.review-wrapper .multiple-field .multiple-options label {
  padding-left: 20px;
  position: relative;
  display: block;
  margin-bottom: 15px;
}
.review-wrapper .multiple-field .multiple-options input[type=radio],
.review-wrapper .multiple-field .multiple-options input[type=checkbox] {
  display: inline-block;
  margin-right: 10px;
  box-shadow: none;
  background: transparent;
}
.review-wrapper .multiple-field .multiple-options label.correct, .review-wrapper .multiple-field .multiple-options label.wrong {
  color: #73b438;
}
.review-wrapper .multiple-field .multiple-options label.correct:before, .review-wrapper .multiple-field .multiple-options label.wrong:before {
  content: "\f058";
  display: inline-block;
  font: normal normal normal 16px/1 FontAwesome;
  top: 4px;
  left: -4px;
  position: absolute;
  color: #73b438;
}
.review-wrapper .multiple-field .multiple-options label.wrong {
  color: #e04f4f;
}
.review-wrapper .multiple-field .multiple-options label.wrong:before {
  content: "\f057";
  color: #e04f4f;
}
.review-wrapper .open-field {
  display: inline-block;
  padding-left: 30px;
}
.review-wrapper .open-field input[type=text] {
  box-shadow: none;
  border-radius: 0;
  border: 1px solid rgba(0, 0, 0, 0.1);
  background: #ecacae;
  height: 38px;
  padding: 0 10px;
  color: #000;
  display: block;
}
.review-wrapper .open-field span.result {
  display: block;
  margin-top: 10px;
  font-size: 16px;
}
.review-wrapper .open-field span.result i {
  display: inline-block;
  margin-right: 4px;
}
.review-wrapper .open-field.success input[type=text] {
  background: #c8e4af;
}
.review-wrapper .open-field.success .result {
  color: #73b438;
}

.review-wrapper .results-header {
  background: #000;
  padding: 20px;
  text-align: center;
  color: #ccc;
  font-size: 16px;
}
.review-wrapper .results-header .container {
  padding-bottom: 0;
}
.review-wrapper .results-header .row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.review-wrapper .results-header h4 {
  font: 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0 0 15px;
  color: #FFF;
  text-align: center;
}
.review-wrapper .results-header p {
  color: #ccc;
  margin: 0;
}
.review-wrapper .results-header p.success {
  color: #73b438;
}
.review-wrapper .results-header p.error {
  color: #e04f4f;
}
.review-wrapper .results-header p#res_titulo {
  position: relative;
  padding-bottom: 4px;
}
.review-wrapper .results-header p#res_titulo img {
  display: inline-block;
  margin-top: -17px;
  margin-left: 4px;
  position: relative;
  top: 8px;
}
.review-wrapper .review-actions {
  position: relative;
  height: 67px;
  background: #a2b8df;
}
.review-wrapper .review-actions .review-stick {
  background: #a2b8df;
  height: 67px;
}
.review-wrapper .review-actions .review-stick .container {
  padding: 15px 33px 15px 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  height: 67px;
}
.review-wrapper .review-actions .review-stick.sticked {
  position: fixed;
  top: 0;
  z-index: 100;
  width: 100%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.review-wrapper .review-actions .btn-return {
  background: #FFF;
  color: #000 !important;
  font-size: 15px;
  font-weight: 500;
}
.review-wrapper .review-actions .btn-return:hover {
  background: #af88be;
}
.review-wrapper .review-actions .current-question {
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  font-weight: 500;
  font-size: 16px;
}
.review-wrapper .review-actions .question-navigation a {
  position: relative;
  color: #FFF;
  font-weight: 500;
  font: 400 15px/36px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  background: #000;
  display: inline-block;
  padding: 0 15px 0 8px;
  height: 36px;
}
.review-wrapper .review-actions .question-navigation a .label {
  position: relative;
  z-index: 1;
}
.review-wrapper .review-actions .question-navigation a:before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 18px 18px 18px 0;
  border-color: transparent #000;
  top: 0;
  left: -18px;
  position: absolute;
  transition: all 0.3s ease;
}
.review-wrapper .review-actions .question-navigation a.next {
  padding: 0 8px 0 15px;
}
.review-wrapper .review-actions .question-navigation a.next:before {
  left: auto;
  right: -18px;
  border-width: 18px 0 18px 18px;
}
.review-wrapper .review-actions .question-navigation a:hover {
  background: #FFF;
  color: #000;
}
.review-wrapper .review-actions .question-navigation a:hover:before {
  border-color: transparent #FFF;
}
.review-wrapper .review-actions .question-navigation a + a {
  margin-left: 6px;
}

.review-accordion {
  position: relative;
  cursor: pointer;
  transition: all 0.3s ease;
}
.review-accordion:hover {
  color: #a2b8df;
}
.review-accordion i {
  transition: all 0.3s ease;
  font-size: 24px;
  top: -5px;
  left: -24px;
  position: absolute;
}
.review-accordion.open i {
  transform: rotate(180deg);
}

.review-accordion-content {
  display: none;
}

body.page-practicas, body.page-resena-single {
  background: #FFF;
}
body.page-practicas #header,
body.page-practicas .navigation, body.page-resena-single #header,
body.page-resena-single .navigation {
  display: none;
}

body.page-resena {
  background: #FFF;
}

.review-wrapper {
  padding-top: 25px;
  padding-bottom: 0;
}
.review-wrapper.review-explain, .review-wrapper.review-ver {
  padding-top: 0;
}
.review-wrapper .container {
  padding-bottom: 20px;
}
.review-wrapper .review-columns {
  display: flex;
  justify-content: space-between;
  position: relative;
}
.review-wrapper .review-columns .review-options {
  width: 30%;
  background: #bfc2c8;
  padding: 30px 0;
  text-align: right;
}
.review-wrapper .review-columns .review-options h3 {
  padding-right: 20px;
}
.review-wrapper .review-columns .options-stick {
  position: sticky;
  top: 94px;
}
.review-wrapper .review-columns .options-cloned {
  display: none !important;
  position: fixed;
  top: 97px;
  width: 351px;
}
.review-wrapper .review-columns .review-explain {
  padding: 30px 20px;
  width: 70%;
  background: #FFF;
}
.review-wrapper .review-columns h3 {
  margin: 0;
  padding: 0;
  font-size: 26px;
  font-weight: 500;
}

.review-wrapper .lesson-score {
  margin-top: 30px;
}
.review-wrapper .review-links {
  display: block;
  list-style: none;
  padding: 0;
  margin: 30px 0 0;
}
.review-wrapper .review-links li {
  color: #000;
}
.review-wrapper .review-links li a {
  font-size: 16px;
  font-weight: 500;
  color: #000;
  display: block;
  padding: 15px 20px;
}
.review-wrapper .review-links li a:hover {
  color: #FFF;
  background: #000;
}
.review-wrapper .video-frame {
  padding-bottom: 56.25%;
  margin-bottom: 40px;
}
.review-wrapper .video-frame.relation-4-3 {
  padding-bottom: 75%;
}
.review-wrapper .review-explain {
  font-size: 16px;
  font-size: 1.5em;
}
.review-wrapper .review-explain h3 {
  margin-bottom: 20px;
}
.review-wrapper .review-writted {
  font-size: 16px;
  line-height: 1.7em;
  margin-bottom: 40px;
}
.review-wrapper .review-writted p {
  margin: 0;
}
.review-wrapper .review-writted p + p {
  margin-top: 30px;
}
.review-wrapper .related-description {
  font-size: 14px;
  line-height: 1.5em;
  margin-bottom: 15px;
}
.review-wrapper .related-grid {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  margin: 0 -8px;
}
.review-wrapper .related-grid .lesson-box {
  width: 50%;
  padding: 8px;
}

.excercise-bar {
  position: relative;
  height: 81px;
}
.excercise-bar .excercise-status {
  position: relative;
  height: 81px;
}
.excercise-bar .excercise-status.sticked {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.excercise-bar #next-question {
  display: none;
}
.excercise-bar #next-question.active {
  display: block;
}

/* ------------------------------------------------------------- 
* SINGLE REVIEW
-------------------------------------------------------------- */
.excercise-review .review-tag {
  background: rgb(48.6494117647%, 60.7968627451%, 82.3309803922%);
  color: #FFF;
  border-radius: 4px;
  display: inline-block;
  margin-left: 8px;
  padding: 6px 12px;
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.08em;
  position: relative;
  top: -3px;
  margin: 0;
  line-height: 1;
}
.excercise-review .answer-field.correct input[type=text] {
  border-color: #73b438;
  color: #73b438;
  box-shadow: 0 0 4px #73b438;
}
.excercise-review .answer-field.wrong input[type=text] {
  border-color: #e04f4f;
  background: rgb(96.8286445013%, 81.9948849105%, 81.9948849105%);
}
.excercise-review .report {
  display: none !important;
}

/* ------------------------------------------------------------- 
* PRACTICAS PERSONALIZADAS
-------------------------------------------------------------- */
/* Practicas personalizadas -----------------------------------*/
.main-wrapper.custom-wrapper {
  background: transparent;
  padding-top: 0;
}
.main-wrapper.custom-wrapper .custom-container {
  background: #FFF;
  padding: 0;
}
.main-wrapper.custom-wrapper .custom-footer {
  padding: 20px 60px;
  background: rgba(0, 0, 0, 0.03);
}
.main-wrapper.custom-wrapper .custom-footer .btn {
  padding: 14px 28px;
}
.main-wrapper.custom-wrapper .custom-footer .mensaje {
  background: transparent;
  color: #000;
  font-weight: 500;
  padding-top: 5px;
  padding-left: 0;
}
.main-wrapper.custom-wrapper .custom-footer .mensaje p {
  margin: 0;
}
.main-wrapper.custom-wrapper .custom-footer .mensaje.error {
  color: #e04f4f;
}
.main-wrapper.custom-wrapper .custom-title {
  margin: 0 0 20px;
  font: 500 32px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.custom-wrapper .custom-content {
  padding: 60px 60px 10px;
}
.main-wrapper.custom-wrapper .custom-field {
  position: relative;
  font-size: 15px;
}
.main-wrapper.custom-wrapper .custom-field select {
  padding: 0 15px;
  height: 36px;
  width: auto;
}
.main-wrapper.custom-wrapper .custom-field label, .main-wrapper.custom-wrapper .custom-field h6 {
  display: block;
  margin: 0 0 10px;
  color: #333;
  font: 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.custom-wrapper .custom-field + .custom-field {
  margin-top: 30px;
}
.main-wrapper.custom-wrapper .subject-controls a {
  font-weight: 500;
  text-decoration: underline;
}
.main-wrapper.custom-wrapper .custom-field .no-found {
  color: #666;
  display: block;
  padding: 10px 0;
}
.main-wrapper.custom-wrapper .custom-field input[type=checkbox],
.main-wrapper.custom-wrapper .custom-field input[type=radio] {
  display: inline-block;
  position: relative;
  background: transparent !important;
  box-shadow: none;
  margin-right: 10px;
  top: -2px;
}
.main-wrapper.custom-wrapper .custom-field .subjects-items {
  display: grid;
  grid-gap: 0px;
  grid-template-columns: repeat(3, 300px);
}
.main-wrapper.custom-wrapper .custom-field .subjects label {
  display: block;
  font-weight: 500;
  margin: 0;
  padding: 0;
  margin-top: 10px;
}
.main-wrapper.custom-wrapper .custom-field fieldset {
  margin: 0;
  padding: 0;
}
.main-wrapper.custom-wrapper .custom-field label.inline {
  display: inline;
  font-weight: 500;
}
.main-wrapper.custom-wrapper .custom-field .sub-col {
  width: 33.3%;
}
.main-wrapper.custom-wrapper .subjects {
  padding: 20px 0;
  width: 100%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
.main-wrapper.custom-wrapper .custom-field.tipo h6 {
  margin-bottom: 16px;
}
.main-wrapper.custom-wrapper .custom-field.tipo label {
  font-weight: 500;
}

/* ------------------------------------------------------------- 
* REVIEW 
-------------------------------------------------------------- */
.secondary-navigation.bordered {
  border-bottom: 1px solid #CCC;
}

/* Resultados -------------------------------------------------*/
.results-wrapper {
  padding-bottom: 0;
}
.results-wrapper .results-header .page-title {
  margin-bottom: 10px;
}
.results-wrapper .results-banner {
  margin: 15px 0 0;
  background: #b4caf1 url(../img/fondo/resultados-bg.webp) top center no-repeat;
  background-size: 100% 100%;
  padding: 38px 0;
}
.results-wrapper .results-banner .container {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
.results-wrapper .results-banner h3 {
  margin: 0;
  font: 700 28px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.results-wrapper .results-banner h3.total-questions {
  font-weight: 400;
  margin-top: 20px;
}
.results-wrapper .results-points .earned-points {
  margin: 0;
  font: 700 25px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.results-wrapper .results-points .points-item {
  font-weight: 500;
  display: flex;
  justify-content: space-between;
  padding-top: 10px;
  padding-bottom: 5px;
  border-bottom: 1px dotted rgba(0, 0, 0, 0.4);
}
.results-wrapper .results-points .points-item span {
  display: inline-block;
  text-align: right;
}
.results-wrapper .results-info {
  background: #b2b4b8;
  padding: 28px 0;
}
.results-wrapper .results-info .container {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.results-wrapper .results-info h4 {
  margin: 0;
  font: 700 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  display: inline-block;
  margin-right: 18px;
}
.results-wrapper .results-info .options {
  margin-left: auto;
}
.results-wrapper .results-info .options .btn + .btn {
  margin-left: 16px;
}
.results-wrapper .results-icon {
  margin: 0;
  padding: 0;
  list-style: none;
}
.results-wrapper .results-icon li {
  display: inline-block;
}
.results-wrapper .results-icon li i {
  display: inline-block;
  background: #CCC;
  color: #000;
  width: 25px;
  height: 25px;
  line-height: 27px;
  padding: 0;
  text-align: center;
  font-size: 14px;
}
.results-wrapper .results-icon li i.fa-check {
  color: rgb(35.3522765038%, 55.333998006%, 17.2150216019%);
  background: #caecb5;
}
.results-wrapper .results-icon li i.fa-times {
  color: rgb(84.0238704177%, 14.799658994%, 14.799658994%);
  background: #eccab5;
}
.results-wrapper .results-icon li + li {
  margin-left: 5px;
}
.results-wrapper .level-header {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #909090;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
.results-wrapper .level-header .result-icon {
  width: 40px;
  height: auto;
  display: inline-block;
  margin-right: 12px;
}
.results-wrapper .level-header h4 {
  font: 700 18px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
}
.results-wrapper .level-list {
  margin: 0;
  padding: 0;
  list-style: none;
  font: 500 14px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.results-wrapper .level-list li + li {
  margin-top: 8px;
}
.results-wrapper .results-detailed {
  padding: 75px 0 100px;
}
.results-wrapper .results-detailed .row {
  margin: 0 -20px;
}
.results-wrapper .results-detailed .result-col {
  width: 33.3%;
  padding: 0 25px;
}
.results-wrapper .results-detailed.results-level-up {
  padding-top: 25px;
}

/* Subir de nivel ---------------------------------------------*/
.level-up-wrap {
  padding-top: 0;
}
.level-up-wrap .lesson-title {
  position: relative;
  z-index: 20;
  color: #000;
  text-align: center;
  font: 700 20px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  border-bottom: 1px solid #CCC;
  padding-bottom: 15px;
  margin-bottom: 30px;
}
.level-up-wrap .level-arrow {
  /*color: $main_color;*/
  z-index: 20;
  font-size: 48px;
  margin-top: -40px;
  margin-left: -18px;
  top: 50%;
  left: 50%;
  position: absolute;
}
.level-up-wrap .level-up {
  position: relative;
  display: flex;
  justify-content: center;
  text-align: center;
}
.level-up-wrap .level-up .level-item {
  padding: 0 50px;
}
.level-up-wrap .level-up h4 {
  position: relative;
  z-index: 20;
  font: 500 16px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.level-up-wrap .level-up .icon-glow + h4 {
  position: relative;
  top: -2px;
}
.level-up-wrap .glow-item {
  background: gold;
  width: 142px;
  margin: 0 auto;
  position: relative;
  z-index: 0;
}
.level-up-wrap .glow-item .icon-item {
  width: 100%;
  padding-bottom: 134%;
  background: #FFF;
  position: relative;
}
.level-up-wrap .glow-item img {
  width: 100%;
  height: auto;
  transform: scale(1.68) translate(-50%, -50%);
  transform-origin: top left;
  top: 50%;
  left: 50%;
  position: absolute;
}

/* ------------------------------------------------------------- 
* FAQ
-------------------------------------------------------------- */
.faq-wrapper .page-title {
  margin: 0 0 0;
  font: 500 38px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.faq-wrapper .faq-categories {
  margin: 40px -10px 0;
  padding-bottom: 60px;
  display: flex;
  flex-flow: row nowrap;
}
.faq-wrapper .faq-categories .faq-cat {
  width: 25%;
  padding: 0 10px;
}
.faq-wrapper .faq-categories .faq-cat .cat-box {
  cursor: pointer;
  background: #f0f0f0;
  padding: 50px 30px;
  border: 1px solid rgba(0, 0, 0, 0);
  transition: all 0.3s ease;
  height: 100%;
}
.faq-wrapper .faq-categories .faq-cat .cat-box:hover {
  border-color: rgba(0, 0, 0, 0.2);
  background: #E5E5E5;
}
.faq-wrapper .faq-categories .faq-cat .cat-box.selected {
  background: #000 !important;
  color: #FFF;
}
.faq-wrapper .faq-categories .faq-cat svg {
  width: auto;
  height: 50px;
  opacity: 0.8;
  margin-bottom: 10px;
}
.faq-wrapper .faq-categories .faq-cat h2 {
  margin: 0 0 10px;
  font: 700 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.faq-wrapper .faq-categories .faq-cat span {
  font-size: 20px;
}
.faq-wrapper .faq-categories .faq-cat:first-child .cat-box {
  background: #828fa2;
}
.faq-wrapper .faq-categories .faq-cat:nth-child(2) .cat-box {
  background: #a2b8df;
}
.faq-wrapper .faq-categories .faq-cat:nth-child(3) .cat-box {
  background: #af88be;
}
.faq-wrapper .faq-categories .faq-cat:nth-child(4) .cat-box {
  background: #d3ad29;
}
.faq-wrapper .category-item {
  display: none;
  opacity: 1;
  transition: 0.4s opacity 0.15s linear;
}
.faq-wrapper .category-item.active {
  display: block;
}
.faq-wrapper .category-item.in {
  animation: catItem 0.4s ease;
}

@keyframes catItem {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.faq-item .faq-title {
  position: relative;
  margin: 0;
  font: 500 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding: 16px 27px 16px 27px;
  border-bottom: 1px dotted #333;
  cursor: pointer;
  transition: all 0.3s ease;
}
.faq-item .faq-title i {
  top: 50%;
  right: 0;
  position: absolute;
  font-size: 28px;
  margin-top: -14px;
  transition: all 0.3s ease;
  color: inherit;
}
.faq-item .faq-title:hover {
  color: #a2b8df;
}
.faq-item .faq-title.active {
  color: #a2b8df;
}
.faq-item .faq-title.active i {
  transform: rotate(90deg);
}
.faq-item .faq-answer {
  display: none;
  padding: 20px 60px 50px;
  font: 400 15px/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.faq-item .faq-answer p {
  margin: 0;
}
.faq-item .faq-answer p + p {
  margin-top: 20px;
}

.faq-footer {
  margin-top: 80px;
  text-align: center;
}
.faq-footer a {
  color: #a2b8df;
  font-weight: 700;
}
.faq-footer h4 {
  margin: 0 0 5px;
  font: 700 18px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.faq-footer .faq-message:after {
  content: "";
  display: block;
  width: 600px;
  margin: 25px auto;
  border-bottom: 1px solid #ccc;
}
.faq-footer .faq-actions a + a {
  margin-left: 20px;
}

/* ------------------------------------------------------------- 
* GARANTIA
-------------------------------------------------------------- */
.guarantee-wrapper {
  padding-bottom: 0;
}
.guarantee-wrapper.guarantee-padder {
  padding-bottom: 40px;
}
.guarantee-wrapper .page-title {
  margin: 0 0 40px;
  font: 500 37px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  letter-spacing: -0.04em;
}
.guarantee-wrapper .guarantee-content, .guarantee-wrapper .page-content {
  font: 400 18px/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.guarantee-wrapper .guarantee-content h2, .guarantee-wrapper .page-content h2 {
  font-size: 22px;
  margin: 0 0 20px;
}
.guarantee-wrapper .guarantee-content ul, .guarantee-wrapper .page-content ul {
  margin-bottom: 40px;
}
.guarantee-wrapper .guarantee-content p, .guarantee-wrapper .page-content p {
  margin: 0 0 40px;
}
.guarantee-wrapper .guarantee-plans {
  text-align: center;
  background: #F0F0F0;
  width: 100%;
  margin: 0 auto 0;
  padding: 30px 20px 30px;
}
.guarantee-wrapper .guarantee-plans h2 {
  margin: 0;
  font: 500 36px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.guarantee-wrapper .guarantee-plans p {
  max-width: 800px;
  margin: 20px auto;
  font: 400 16px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.guarantee-wrapper .guarantee-plans .action {
  text-align: center;
  margin-top: 20px;
}
.guarantee-wrapper .guarantee-plans .action a {
  font-size: 20px;
  padding: 18px 30px;
}

/* ------------------------------------------------------------- 
* PLANES
-------------------------------------------------------------- */
.mini-spacer {
  padding-bottom: 60px;
}

.plans-wrapper {
  padding-bottom: 0;
}
.plans-wrapper > .container {
  padding-left: 0;
  padding-right: 0;
}
.plans-wrapper .plans-title {
  margin: 25px 0 35px;
  text-align: center;
  color: #a2b8df;
  font: 500 40px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plans-wrapper .plans-title span {
  display: block;
}
.plans-wrapper .row-plans {
  margin: 0;
  display: flex;
  flex-flow: row wrap;
}
.plans-wrapper .plan-item {
  width: 33.3%;
  flex: 0 0 33.333%;
  max-width: 33.333%;
  box-sizing: border-box;
  padding: 0 30px;
}
.plans-wrapper .plan-item .plan-inside {
  background: #e7e8e9;
  position: relative;
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-flow: column nowrap;
}
.plans-wrapper .plan-item .plan-date {
  background: #000;
  color: #FFF;
  text-align: center;
  display: block;
  padding: 16px;
  font: 700 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plans-wrapper .plan-item .plan-header {
  color: #FFF;
  font: 500 36px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  text-align: center;
  position: relative;
  overflow: hidden;
  padding: 30px 0 0;
}
.plans-wrapper .plan-item .plan-header .promo {
  display: inline-block;
  background: #ed174d;
  color: #FFF;
  padding: 12px 26px;
  font: italic 500 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plans-wrapper .plan-item .plan-header .plan-name {
  margin: 0;
  font: 500 28px/1.1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plans-wrapper .plan-item .plan-header .plan-name span {
  display: block;
}
.plans-wrapper .plan-item .plan-header .plan-price {
  margin-top: 10px;
  font: 500 31px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plans-wrapper .plan-item .plan-header .plan-price span {
  display: inline-block;
}
.plans-wrapper .plan-item .plan-header .plan-price .discount {
  margin-right: 10px;
  text-decoration: line-through;
  opacity: 0.6;
}
.plans-wrapper .plan-item .plan-header .header-footer {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-end;
  align-items: center;
  margin-top: 20px;
}
.plans-wrapper .plan-item .plan-header .header-footer .unique {
  margin-right: 15px;
  font: 500 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plans-wrapper .plan-item .plan-body {
  background: #e7e8e9;
  padding: 50px 35px;
}
.plans-wrapper .plan-item .plan-body h3 {
  margin: 0;
  font: 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plans-wrapper .plan-item .plan-body h3 s {
  opacity: 0.6;
}
.plans-wrapper .plan-item .plan-body ul {
  margin: 25px 0 0;
  padding: 0;
  list-style: none;
  font: 500 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plans-wrapper .plan-item .plan-body ul li + li {
  margin-top: 15px;
}
.plans-wrapper .plan-item .plan-body ul s {
  opacity: 0.6;
}
.plans-wrapper .plan-item .plan-header, .plans-wrapper .plan-item .plan-footer {
  background: #a2b8df;
}
.plans-wrapper .plan-item .plan-footer {
  margin-top: auto;
  padding: 35px 50px;
}
.plans-wrapper .plan-item .plan-footer .btn {
  padding: 0;
  height: 60px;
  line-height: 60px;
  width: 100%;
  font-weight: 500;
  text-align: center;
}
.plans-wrapper .plan-item:nth-child(2) .plan-inside .plan-header, .plans-wrapper .plan-item:nth-child(2) .plan-inside .plan-footer {
  background: #af88be;
}
.plans-wrapper .plan-item:nth-child(3) .plan-inside .plan-header, .plans-wrapper .plan-item:nth-child(3) .plan-inside .plan-footer {
  background: #d3ad29;
}

.promo-banner {
  margin-top: 60px;
  background: #b3b3b3;
  padding: 80px 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.promo-banner img.promo-bg {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  width: 100%;
  min-height: 100%;
  height: auto;
}
.promo-banner .container {
  position: relative;
}
.promo-banner h3 {
  color: #000;
  font: 700 32px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.promo-banner h2 {
  color: #FFF;
  padding: 0;
  margin: 15px 0 10px;
  font: 500 44px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.promo-banner p {
  margin: 0;
  color: #FFF;
  font: 500 28px/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.promo-banner p strong {
  color: #FFF;
  font-weight: 500;
}
.promo-banner .btn {
  margin-top: 34px;
  height: 56px;
  padding: 0;
  min-width: 245px;
  text-align: center;
  font: 400 18px/56px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.promo-banner .btn + .btn {
  margin-left: 10px;
}

/* Planes ----------------------------------------------------*/
.discount-ribbon {
  display: none;
  background: #ed174d;
  color: #FFF;
  padding: 45px 0;
  margin-bottom: 50px;
}
.discount-ribbon .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-flow: row nowrap;
}
.discount-ribbon .discount-title {
  margin: 0;
  font: 700 26px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.discount-ribbon .discount-subtitle {
  margin: 15px 0 0;
  font: 400 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.discount-ribbon .discount-countdown {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-flow: row nowrap;
  text-align: center;
}
.discount-ribbon .discount-countdown .countdown-label {
  font: 500 24px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0 0 10px 0;
}
.discount-ribbon .discount-countdown .countdown-numb {
  font: 500 26px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.discount-ribbon .discount-countdown .countdown-item {
  position: relative;
}
.discount-ribbon .discount-countdown .countdown-item:after {
  content: ":";
  font-size: 28px;
  right: -10px;
  bottom: 8px;
  position: absolute;
}
.discount-ribbon .discount-countdown .countdown-item:last-child:after {
  display: none;
}
.discount-ribbon .discount-countdown .countdown-item + .countdown-item {
  margin-left: 24px;
}

.plan-inside {
  position: relative;
}
.plan-inside .offer {
  display: none;
  z-index: 30;
  top: 0;
  right: 10px;
  position: absolute;
}
.plan-inside .offer img {
  max-width: 71px;
}
.plan-inside .offer .offer-discount {
  top: 50%;
  right: 0;
  position: absolute;
  transform: translateY(-50%);
  z-index: 10;
  width: 71px;
  text-align: center;
  color: #FFF;
  font: 700 20px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.plan-inside .offer .discount-label {
  display: block;
  letter-spacing: -0.01em;
  font: 400 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

.main-wrapper.discount-active {
  padding-top: 0;
}
.main-wrapper.discount-active .discount-ribbon {
  display: block;
}
.main-wrapper.discount-active .plan-inside .offer {
  display: block;
}
.main-wrapper.discount-active .plan-item .plan-date {
  padding-right: 80px;
  padding-left: 0;
}

.main-wrapper.discount-inactive .plan-item .plan-header .promo {
  display: none;
}
.main-wrapper.discount-inactive .plan-item .plan-header .plan-price span.discount {
  color: #FFF;
  opacity: 1;
  text-decoration: none;
  margin: 0;
}
.main-wrapper.discount-inactive .plan-item .plan-header .plan-price span.amount {
  display: none;
}
.main-wrapper.discount-inactive .plan-item .plan-header .header-footer .unique {
  margin: 0;
  position: relative;
  bottom: 15px;
  width: 100%;
}

/* ------------------------------------------------------------- 
* TERMINOS
-------------------------------------------------------------- */
.terms-wrapper .page-title {
  display: block;
}
.terms-wrapper .page-content {
  padding-bottom: 40px;
}
.terms-wrapper .page-content h3,
.terms-wrapper .page-content h2 {
  margin-top: 40px;
  font: 700 20px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin-bottom: 30px;
}
.terms-wrapper .page-content h2 {
  font-size: 28px;
  margin-bottom: 20px;
}
.terms-wrapper .page-content p {
  margin: 20px 0;
}

/* ------------------------------------------------------------- 
* MISION
-------------------------------------------------------------- */
.mission-wrapper, .testimonies-page {
  padding-top: 0;
  padding-bottom: 0;
}
.mission-wrapper .banner-top, .testimonies-page .banner-top {
  padding: 0;
  margin-bottom: 50px;
  height: 500px;
  overflow: hidden;
  position: relative;
}
.mission-wrapper .banner-top .container, .testimonies-page .banner-top .container {
  position: relative;
  z-index: 10;
  height: 100%;
  display: flex;
  align-items: center;
}
.mission-wrapper .banner-top h2, .mission-wrapper .banner-top h1, .testimonies-page .banner-top h2, .testimonies-page .banner-top h1 {
  margin: 0 0 20px;
  max-width: 90%;
  color: #FFF;
  font: 500 62px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.mission-wrapper .banner-bg, .testimonies-page .banner-bg {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  width: 100%;
  height: auto;
  min-height: 100%;
}
.mission-wrapper .mission-content, .testimonies-page .mission-content {
  font: 400 20px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.mission-wrapper .mission-content h2, .testimonies-page .mission-content h2 {
  margin-top: 0;
  margin-bottom: 25px;
  color: #a2b8df;
  font: 500 34px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.mission-wrapper .mission-content p, .testimonies-page .mission-content p {
  margin-top: 0;
}
.mission-wrapper .mission-content p, .testimonies-page .mission-content p {
  margin-bottom: 20px;
}
.mission-wrapper .mission-content h2.message, .testimonies-page .mission-content h2.message {
  margin-top: 40px;
}
.mission-wrapper .video-wrap, .testimonies-page .video-wrap {
  margin: 30px auto 30px;
  max-width: 600px;
}
.mission-wrapper .video-mission, .testimonies-page .video-mission {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-bottom: 56.25%;
}
.mission-wrapper .video-mission iframe, .testimonies-page .video-mission iframe {
  top: 0;
  left: 0;
  position: absolute;
  z-index: 100;
  width: 100%;
  height: 100%;
}

.our-team, .our-testimonies {
  text-align: center;
  padding-top: 40px;
  padding-bottom: 60px;
}
.our-team h2, .our-testimonies h2 {
  color: #000;
  font: 500 42px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0 0 60px;
}
.our-team .team-list, .our-testimonies .team-list {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  margin: -50px;
}
.our-team .team-list .team-item, .our-testimonies .team-list .team-item {
  padding: 50px;
  width: 50%;
}
.our-team .team-list .member-image, .our-testimonies .team-list .member-image {
  position: relative;
  overflow: hidden;
  width: 200px;
  height: 200px;
  display: inline-block;
  border-radius: 50%;
  margin-bottom: 15px;
}
.our-team .team-list .member-image img, .our-testimonies .team-list .member-image img {
  width: 100%;
  height: auto;
  min-height: 100%;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}
.our-team .team-list .member-name, .our-testimonies .team-list .member-name {
  margin: 0 0 20px;
  color: #a2b8df;
  font: 500 28px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.our-team .team-list .member-occupation, .our-testimonies .team-list .member-occupation {
  display: block;
  opacity: 0.8;
  font: 400 16px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin-bottom: 20px;
}
.our-team .team-list .member-description, .our-testimonies .team-list .member-description {
  text-align: justify;
  font: 400 16px/1.7em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.our-team .view-more, .our-testimonies .view-more {
  text-transform: uppercase;
  display: block;
  margin-top: 20px;
  font: 500 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #a2b8df;
}
.our-team .view-more i, .our-testimonies .view-more i {
  transition: all 0.3s ease;
}
.our-team .view-more span.label-more, .our-testimonies .view-more span.label-more {
  display: inline;
}
.our-team .view-more span.label-min, .our-testimonies .view-more span.label-min {
  display: none;
}
.our-team .view-more.expanded i, .our-testimonies .view-more.expanded i {
  transform: rotate(180deg);
}
.our-team .view-more.expanded span.label-more, .our-testimonies .view-more.expanded span.label-more {
  display: none;
}
.our-team .view-more.expanded span.label-min, .our-testimonies .view-more.expanded span.label-min {
  display: inline;
}
.our-team .member-fullinfo, .our-testimonies .member-fullinfo {
  display: none;
}

/* ------------------------------------------------------------- 
* RESULTADOS DE EXAMEN
-------------------------------------------------------------- */
.results-wrapper .results-points {
  display: flex;
  justify-content: center;
  width: 100%;
}
.results-wrapper .results-points .result-item {
  display: block;
  position: relative;
  width: 300px;
  text-align: center;
  text-transform: uppercase;
}
.results-wrapper .results-points .result-item h5 {
  letter-spacing: 0.04em;
  font: 500 32px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 20px 0 0;
}
.results-wrapper .results-points .result-item .score {
  font: 700 52px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.results-wrapper .results-points .result-item a {
  margin-top: 20px;
  display: block;
  padding: 20px 10px;
  color: #FFF;
  background: #a2b8df;
}
.results-wrapper .results-quiz {
  padding: 85px 0;
}

/* ------------------------------------------------------------- 
* QUIZ PROMOCIONAL
-------------------------------------------------------------- */
.results-wrapper.quiz-promocional .result-cases {
  text-align: center;
}
.results-wrapper.quiz-promocional .result-cases .number {
  display: inline-block;
  font: 500 38px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #000;
  padding: 4px 12px;
  margin-bottom: 30px;
  background: #d3ad29;
}
.results-wrapper.quiz-promocional .result-cases .text {
  margin: 0;
  font: 400 22px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.results-wrapper.quiz-promocional .result-cases .label-anchor {
  margin-top: 15px;
  font: 400 22px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.results-wrapper.quiz-promocional .result-cases .label-anchor span {
  display: block;
  margin-bottom: 15px;
}
.results-wrapper.quiz-promocional .result-cases .label-anchor a {
  display: inline-block;
  padding: 6px 18px;
  font-size: 18px;
}
.results-wrapper.quiz-promocional .actions-row {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: row nowrap;
}
.results-wrapper.quiz-promocional .actions-row .btn-action {
  width: 240px;
  padding-right: 0;
  padding-left: 0;
  margin: 0;
}
.results-wrapper.quiz-promocional .actions-row .btn-action:hover {
  background: #000;
}
.results-wrapper.quiz-promocional .actions-row .btn-action {
  margin-left: 0;
}
.results-wrapper.quiz-promocional .actions-row .btn-action + .btn-action {
  margin-left: 30px;
}
.results-wrapper.quiz-promocional .results-actions {
  margin-top: 30px;
}
.results-wrapper.quiz-promocional .btn-action:nth-child(1) {
  background: #a2b8df;
}
.results-wrapper.quiz-promocional .btn-action:nth-child(2) {
  background: #af88be;
}
.results-wrapper.quiz-promocional .btn-action:nth-child(3) {
  background: #d3ad29;
}

/* ------------------------------------------------------------- 
* Calculadora
-------------------------------------------------------------- */
#calculatorModal .jBox-title {
  display: none;
}

#calculatorModal #mycalccontent {
  background: #303032;
  padding: 40px 0 0 0 !important;
}
#calculatorModal .calc-btn, #calculatorModal .calc-results-igual, #calculatorModal .calc-results-clear {
  border-radius: 0;
  box-shadow: none;
  color: #FFF;
  background: #626264;
  border: 0;
  padding: 0;
  text-align: center;
  font-size: 18px;
  text-indent: 0;
  margin: 0;
  width: 25%;
  border: 1px solid #303032;
  outline: 0;
  list-style: 50px;
  transition: all 0.3s ease;
}
#calculatorModal .calc-btn:hover, #calculatorModal .calc-results-igual:hover, #calculatorModal .calc-results-clear:hover {
  opacity: 0.7;
}
#calculatorModal .calc-text {
  padding: 0 20px;
  box-shadow: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  height: 60px;
  text-align: right;
  font-size: 32px;
}
#calculatorModal .row-numbers, #calculatorModal .results {
  display: flex;
  justify-content: flex-start;
  flex-flow: row nowrap;
}
#calculatorModal .row-numbers .calc-btn:last-child, #calculatorModal .results .calc-btn:last-child {
  font-size: 28px;
  background: #f2a23c;
}
#calculatorModal .row-options .calc-btn {
  background: #434345;
}
#calculatorModal .row-options .calc-btn .calc-btn:last-child {
  font-size: 28px;
  background: #f2a23c;
}
#calculatorModal .calc-btn.btn-two-cols {
  width: 50%;
}
#calculatorModal div.mycalc {
  max-width: 280px;
  width: 100%;
}

/* ------------------------------------------------------------- 
* CUENTA 
-------------------------------------------------------------- */
/* Informacion General ---------------------------------------*/
.main-wrapper.account-wrapper {
  padding: 0;
}
.main-wrapper.account-wrapper .container {
  display: flex;
  flex-flow: row nowrap;
}

.account-content, .complete-account-wrapper {
  padding: 50px 0 140px 60px;
  width: calc(100% - 260px);
}
.account-content .heading, .complete-account-wrapper .heading {
  margin-top: 50px;
  margin-bottom: 25px;
  font: 500 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding-bottom: 15px;
  border-bottom: 1px solid #E5E5E5;
}
.account-content .heading-top, .complete-account-wrapper .heading-top {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-end;
  justify-content: space-between;
  border-bottom: 1px solid #E5E5E5;
  padding-bottom: 15px;
  margin-bottom: 25px;
}
.account-content .heading-top .heading, .complete-account-wrapper .heading-top .heading {
  margin: 0;
  border: 0;
  padding: 0;
}
.account-content .form-field, .complete-account-wrapper .form-field {
  display: inline-block;
  position: relative;
}
.account-content .form-field label, .complete-account-wrapper .form-field label {
  display: block;
  margin: 0 0 8px;
  padding: 0;
  font: 700 13px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.account-content .form-field input[type=text],
.account-content .form-field input[type=select],
.account-content .form-field input[type=password],
.account-content .form-field input[type=number],
.account-content .form-field input[type=date],
.account-content .form-field select, .complete-account-wrapper .form-field input[type=text],
.complete-account-wrapper .form-field input[type=select],
.complete-account-wrapper .form-field input[type=password],
.complete-account-wrapper .form-field input[type=number],
.complete-account-wrapper .form-field input[type=date],
.complete-account-wrapper .form-field select {
  width: 100%;
  height: 38px;
  padding: 0 15px;
  border: 1px solid #d9d9d9;
  box-shadow: none;
  border-radius: 0;
  transition: border-color 0.3s ease;
  outline: none;
}
.account-content .form-field input[type=text]:focus,
.account-content .form-field input[type=select]:focus,
.account-content .form-field input[type=password]:focus,
.account-content .form-field input[type=number]:focus,
.account-content .form-field input[type=date]:focus,
.account-content .form-field select:focus, .complete-account-wrapper .form-field input[type=text]:focus,
.complete-account-wrapper .form-field input[type=select]:focus,
.complete-account-wrapper .form-field input[type=password]:focus,
.complete-account-wrapper .form-field input[type=number]:focus,
.complete-account-wrapper .form-field input[type=date]:focus,
.complete-account-wrapper .form-field select:focus {
  border-color: #a2b8df;
}
.account-content .form-field input[type=date], .complete-account-wrapper .form-field input[type=date] {
  padding-top: 4px;
}
.account-content .form-field input[disabled], .complete-account-wrapper .form-field input[disabled] {
  background: #E5E5E5;
}
.account-content .form-field .edit-password, .complete-account-wrapper .form-field .edit-password {
  margin-top: -1px;
  top: 50%;
  right: 25px;
  position: absolute;
  background: #FFF;
  color: #333;
  display: inline-block;
  padding: 5px 8px;
  font: 700 13px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.account-content .form-field .edit-password:hover, .complete-account-wrapper .form-field .edit-password:hover {
  background: #000;
  color: #FFF;
}
.account-content .form-field .radio-item, .complete-account-wrapper .form-field .radio-item {
  display: inline-block;
  margin-right: 15px;
}
.account-content .form-rows, .complete-account-wrapper .form-rows {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  margin: -15px;
}
.account-content .form-rows .form-field, .complete-account-wrapper .form-rows .form-field {
  margin: 0;
  width: 50%;
  padding: 15px;
}
.account-content .form-rows .form-field.full-field, .complete-account-wrapper .form-rows .form-field.full-field {
  width: 100%;
}

.account-sidebar {
  background: #FFF;
  border-left: 1px solid #d6d6d6;
  border-right: 1px solid #d6d6d6;
  box-shadow: 5px 0 12px rgba(0, 0, 0, 0.06);
  width: 260px;
  padding-top: 30px;
}
.account-sidebar .user-block {
  padding: 20px;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.account-sidebar .user-block .user-data {
  padding-left: 15px;
}
.account-sidebar .user-block h4 {
  margin: 0;
  font: 500 14px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.account-sidebar .user-block .add-image {
  margin-top: 4px;
  display: inline-block;
  color: #a2b8df;
  font: 500 14px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.account-sidebar .user-block .add-image:hover {
  color: #d3ad29;
}
.account-sidebar .user-avatar {
  display: inline-block;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.05);
  width: 50px;
  height: 50px;
  font: 700 18px/50px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  text-align: center;
  color: rgb(48.6494117647%, 60.7968627451%, 82.3309803922%);
}
.account-sidebar .menu {
  display: block;
  margin: 0;
  padding: 0;
  list-style: none;
  text-align: left;
}
.account-sidebar .menu li {
  display: block;
}
.account-sidebar .menu li a {
  background: #FFF;
  text-shadow: none;
  color: rgba(0, 0, 0, 0.8);
  display: block;
  padding: 20px;
  font: 400 16px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.account-sidebar .menu li a:hover {
  background: #E5E5E5;
}
.account-sidebar .menu li.current a {
  background: #a2b8df;
  color: #000;
  position: relative;
}
.account-sidebar .menu li.current a:after {
  content: "\f105";
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-top: -8px;
  top: 50%;
  right: 20px;
  position: absolute;
}

/* Subscripciones --------------------------------------------*/
table.history {
  margin-top: 40px;
}
table.history thead th {
  padding: 0 0 12px;
  border-bottom: 1px solid #CCC;
  font: 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
table.history tbody td {
  padding: 18px 0;
  font: 400 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  border-bottom: 1px solid #e5e5e5;
}
table.history tbody tr:last-child td {
  border-bottom: 1px solid #CCC;
}

.account-content .subscribe-options {
  display: flex;
  flex-flow: row nowrap;
  margin: -30px;
}
.account-content .subscribe-options .option-item {
  padding: 30px;
  width: 50%;
  display: flex;
  flex-flow: column nowrap;
}
.account-content .subscribe-options .option-description {
  padding-top: 15px;
  padding-bottom: 30px;
  font: 400 14px/1.8em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.account-content .subscribe-options .btn {
  margin-top: auto;
  width: 100%;
  text-align: center;
}

/* ------------------------------------------------------------- 
* COMPLETA TU PERFIL
-------------------------------------------------------------- */
/* Completa tu perfil -----------------------------------------*/
.complete-account-wrapper {
  width: 100%;
  padding: 0;
}
.complete-account-wrapper .container {
  background: #FFF;
  padding: 40px 15px;
  max-width: 900px;
}
.complete-account-wrapper h2 {
  color: #a2b8df;
  margin: 0 0 20px;
  font: 500 37px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  letter-spacing: -0.04em;
}
.complete-account-wrapper h3 {
  color: #333;
  margin: 0 0 10px;
  font: 500 28px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  letter-spacing: -0.04em;
}
.complete-account-wrapper p {
  margin-top: 0;
  color: #666;
  font: 400 18px/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.complete-account-wrapper .complete-form {
  display: flex;
  flex-flow: row wrap;
  margin: 0 -15px;
}
.complete-account-wrapper .complete-form .form-field {
  width: 50%;
  margin: 0;
  padding: 15px;
}
.complete-account-wrapper .complete-form .form-field h4 {
  display: block;
  margin: 0 0 8px;
  padding: 0;
  font: 700 13px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.complete-account-wrapper .complete-form .form-field.full-field {
  width: 100%;
}
.complete-account-wrapper .complete-form .radio-item {
  font-weight: 400;
  margin-top: 8px;
}
.complete-account-wrapper .complete-form input[type=radio] {
  border: 0;
  padding: 0;
  background: transparent;
  box-shadow: none;
}
.complete-account-wrapper .form-action {
  padding: 15px;
  width: 100%;
}

/* -------------------------------------------------------------
* CHECKOUT
-------------------------------------------------------------- */
/* Formulario de pago ----------------------------------------*/
.main-wrapper.checkout-wrapper, .receipt-wrapper {
  background: #818da2;
  padding-top: 0;
}
.main-wrapper.checkout-wrapper .checkout-container, .receipt-wrapper .checkout-container {
  padding: 0;
  background: #FFF;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
.main-wrapper.checkout-wrapper .checkout-content, .receipt-wrapper .checkout-content {
  padding: 50px 60px;
  background: #FFF;
  width: calc(100% - 300px);
}
.main-wrapper.checkout-wrapper .checkout-sidebar, .receipt-wrapper .checkout-sidebar {
  width: 300px;
  background: #a2b8df;
  padding: 50px 30px;
}
.main-wrapper.checkout-wrapper .checkout-sidebar.plan-1, .receipt-wrapper .checkout-sidebar.plan-1 {
  background: #a2b8df;
}
.main-wrapper.checkout-wrapper .checkout-sidebar.plan-2, .receipt-wrapper .checkout-sidebar.plan-2 {
  background: #af88be;
}
.main-wrapper.checkout-wrapper .checkout-sidebar.plan-3, .receipt-wrapper .checkout-sidebar.plan-3 {
  background: #d3ad29;
}

.checkout-content .page-title {
  margin: 0 0 15px;
  font: 500 32px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding-bottom: 15px;
  border-bottom: 1px solid #CCC;
}
.checkout-content .sign-in {
  color: #666;
  font: 400 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0 0 30px;
}
.checkout-content .form-field label {
  display: block;
  left: 0;
  margin: 0 0 8px;
  padding: 0;
  font: 700 15px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.checkout-content .form-field input[type=email],
.checkout-content .form-field input[type=password],
.checkout-content .form-field input[type=text] {
  margin: 0;
  width: 100%;
  max-width: 620px;
  height: 40px;
  padding: 0 10px;
  font: 400 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.checkout-content .form-title {
  margin-top: 50px;
  margin-bottom: 20px;
  font: 500 26px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.checkout-content .payment-methods {
  list-style: none;
  margin: 0;
  padding: 10px 0 0 0;
}
.checkout-content .payment-methods li {
  display: block;
}
.checkout-content .payment-methods li h4 {
  margin: 0;
  font: 500 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  display: inline-block;
}
.checkout-content .payment-methods li .checkbox-item {
  position: relative;
  top: -3px;
  margin-right: 8px;
}
.checkout-content .payment-methods li + li {
  margin-top: 20px;
}
.checkout-content .payment-methods label.disabled, .checkout-content .payment-methods label.disabled .checkbox-item {
  opacity: 0.4;
  color: #333;
}
.checkout-content .payment-methods img.tarjetas, .checkout-content .payment-methods img.paypal, .checkout-content .payment-methods img.tiendas {
  height: 30px;
  width: auto;
  top: 6px;
  left: 10px;
  position: relative;
}
.checkout-content .btn-checkout {
  margin-top: 50px;
  font-size: 20px;
  padding: 14px 40px;
}
.checkout-content .checkout-note {
  margin-top: 25px;
  color: #000;
  font: 500 15px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.checkout-content .checkout-note a {
  color: rgb(48.6494117647%, 60.7968627451%, 82.3309803922%);
}

.checkout-sidebar {
  color: #FFF;
  display: flex;
  flex-flow: column nowrap;
}
.checkout-sidebar .checkout-title {
  margin: 0;
  font: 500 36px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding-bottom: 20px;
  border-bottom: 1px solid #FFF;
}
.checkout-sidebar .checkout-features {
  margin: 0;
  padding: 0;
  list-style: none;
}
.checkout-sidebar .checkout-features li {
  font: 400 16px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding: 16px 0;
  border-bottom: 1px solid #FFF;
}
.checkout-sidebar .checkout-totals {
  border-bottom: 1px solid #FFF;
  padding-bottom: 20px;
  margin-top: auto;
}
.checkout-sidebar .checkout-totals h3 {
  margin: 35px 0 20px;
  padding: 0;
  font: 700 36px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.checkout-sidebar .checkout-totals .price {
  display: block;
  font: 500 30px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.checkout-sidebar .checkout-totals .price-strike {
  color: #dfdedc;
  margin-bottom: 10px;
  position: relative;
}
.checkout-sidebar .checkout-totals .price-strike.offset-x {
  left: 32px;
}

.checkbox-item {
  display: inline-block;
  position: relative;
}
.checkbox-item .mask {
  display: inline-block;
  border-radius: 50%;
  width: 18px;
  height: 18px;
  border: 2px solid #333;
  position: relative;
  line-height: 14px;
  text-align: center;
  font-size: 12px;
  color: #FFF;
}
.checkbox-item .mask:before {
  display: none;
  content: "\f00c";
  display: inline-block;
  font-family: FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.checkbox-item input[type=checkbox],
.checkbox-item input[type=radio] {
  top: 0;
  left: 0;
  position: absolute;
  opacity: 0;
}
.checkbox-item.checked .mask {
  background: #000;
}
.checkbox-item.checked .mask:before {
  display: block;
}

/* PROMOCIONES ------------------------------------------------*/
.checkout-wrapper .field-promo .promo-inside {
  justify-content: space-between;
  flex-flow: row nowrap;
  align-items: flex-end;
  width: 100%;
  max-width: 620px;
  display: flex;
}
.checkout-wrapper .field-promo .form-field {
  max-width: none;
  width: calc(100% - 210px);
}
.checkout-wrapper .field-promo .btn {
  padding: 0;
  height: 40px;
  line-height: 40px;
  width: 190px;
  text-align: center;
}

.discount-note {
  margin-top: 30px;
  position: relative;
  top: 10px;
  opacity: 0;
  background: #FFF;
  width: 100%;
  border: 0;
  padding: 10px 20px;
  color: #000;
  letter-spacing: 0.01em;
  text-align: center;
  font: 700 20px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  transition: all 0.8s ease;
}
.discount-note.displayed {
  opacity: 1;
}

.price-offer {
  display: block;
  position: relative;
}
.price-offer span {
  display: inline-block;
}
.price-offer span.amount {
  display: inline-block;
  text-decoration: line-through;
}
.price-offer span.discount {
  display: inline-block;
  background: #000;
  color: #FFF;
  padding: 4px 6px;
  font: 500 20px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin-left: 8px;
  position: relative;
  bottom: 4px;
}
.price-offer i {
  display: inline-block;
  margin-right: 10px;
  font-size: 16px;
  color: #73b438;
  position: relative;
  bottom: 4px;
}

.checkout-totals .price-final {
  font-weight: 700 !important;
  margin-top: 10px;
}

/* Modulos ----------------------------------------------------*/
.checkout-modules .module-list {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
  row-gap: 20px;
  column-gap: 20px;
  list-style: none;
  padding: 0;
  max-width: 620px;
  margin: 20px 0 0 0;
}
.checkout-modules .module-list li {
  padding: 0;
}
.checkout-modules .module-item {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  color: #333;
  cursor: pointer;
  padding: 0;
}
.checkout-modules .module-item .button-mask {
  transition: all 0.3s ease;
  padding-left: 14px;
  width: 100%;
  height: 100%;
  border: 1px solid #CCC;
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  height: 50px;
  width: 140px;
}
.checkout-modules .module-item:hover .button-mask {
  background: #E5E5E5;
}
.checkout-modules .module-item input[type=checkbox] {
  opacity: 0;
  visibility: hidden;
  width: 0;
  height: 0;
  display: inline-block;
  transform: scale(0);
  position: absolute;
  left: 0;
  top: 0;
}
.checkout-modules .module-item h5 {
  font: 700 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
}
.checkout-modules .module-item .module-check {
  position: relative;
  overflow: hidden;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin-right: 7px;
}
.checkout-modules .module-item .module-check i {
  font: 20px;
}
.checkout-modules .module-item .module-check i.unchecked {
  display: block;
}
.checkout-modules .module-item .module-check i.checked {
  display: none;
}
.checkout-modules .module-item.module--disabled {
  opacity: 0.6;
  pointer-events: none;
  cursor: not-allowed;
  justify-content: center;
  text-align: center;
}
.checkout-modules .module-item.module--disabled h5 span {
  display: block;
  font-size: 80%;
  opacity: 0.7;
}
.checkout-modules .module-item input[type=checkbox]:checked ~ .button-mask {
  background: #a2b8df;
  border-color: #a2b8df;
  color: #FFF;
}
.checkout-modules .module-item input[type=checkbox]:checked ~ .button-mask i.checked {
  display: block;
}
.checkout-modules .module-item input[type=checkbox]:checked ~ .button-mask i.unchecked {
  display: none;
}

/* -------------------------------------------------------------
* PAGADO  | PAIDOUT
-------------------------------------------------------------- */
.checkout-sidebar .checkout-totals.paid .paid-label {
  font-weight: 500;
  font-size: 38px;
  display: block;
  margin-bottom: 15px;
  color: rgba(0, 0, 0, 0.5);
}
.checkout-sidebar .checkout-totals.paid h3 {
  margin-top: 0;
}
.checkout-sidebar .checkout-totals.paid .price i {
  color: #4eb03e;
  display: inline-block;
  margin-right: 8px;
}

.paidout .paidout-message {
  text-align: center;
  padding: 50px 0 60px;
  border-bottom: 1px solid #CCC;
}
.paidout .paidout-message svg {
  display: inline-block;
  color: #73b438;
  width: 140px;
  margin-bottom: 20px;
}
.paidout .paidout-message span {
  display: block;
  color: #000;
  font: 500 32px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.paidout .paidout-message .paidout-note {
  margin-top: 15px;
  font: 400 18px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.paidout .paidout-content {
  padding-top: 40px;
}
.paidout .paidout-content h4 {
  font: 500 28px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0 0 15px;
}
.paidout .paidout-content .paidout-text {
  font: 400 18px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin-bottom: 40px;
}
.paidout .paidout-footer {
  margin-top: 45px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: flex-end;
}
.paidout .paidout-footer h3 {
  margin: 0;
  font: 500 2rem/1.1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.paidout .paidout-footer a {
  padding: 18px 45px;
  color: #FFF;
  font: 500 1.6rem/1.1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

/* -------------------------------------------------------------
* RECIBO DE PAGO
-------------------------------------------------------------- */
/* Recibo de pago --------------------------------------------*/
.main-wrapper.receipt-wrapper {
  background: #FFF;
  padding-top: 40px;
}
.main-wrapper.receipt-wrapper .checkout-content {
  padding: 40px 50px 30px 15px;
}
.main-wrapper.receipt-wrapper .checkout-sidebar {
  padding-bottom: 25px;
}
.main-wrapper.receipt-wrapper .codebars {
  margin: 30px auto 0;
  width: 100%;
  display: block;
  max-width: 200px;
  padding: 0 0 0;
  height: auto;
}
.main-wrapper.receipt-wrapper .page-title {
  margin: 0 0 30px;
  font: 500 37px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  letter-spacing: -0.04em;
}
.main-wrapper.receipt-wrapper .receipt-content {
  padding-right: 50px;
  font: 400 16px/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.receipt-wrapper .receipt-content a {
  color: #a2b8df;
}
.main-wrapper.receipt-wrapper .receipt-content h5 {
  margin: 20px 0;
  font: 700 22px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.receipt-wrapper .shops h4 {
  margin: 0;
  background: #000;
  color: #FFF;
  font: 500 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding: 14px 10px;
  text-align: center;
}
.main-wrapper.receipt-wrapper .time-limit {
  padding-top: 15px;
  padding-bottom: 5px;
}
.main-wrapper.receipt-wrapper .time-limit h4 {
  color: #a2b8df;
  margin: 0 0 20px 0;
  font: 500 26px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.receipt-wrapper .email-sent {
  text-align: center;
}
.main-wrapper.receipt-wrapper .email-sent h4 {
  padding-top: 24px;
  margin: 0 0 0;
  color: #000;
  font: 500 22px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.receipt-wrapper .email-sent .btn {
  margin-top: 25px;
}
.main-wrapper.receipt-wrapper .email-sent .btn i {
  margin-left: 10px;
  display: inline-block;
}
.main-wrapper.receipt-wrapper .shops-container {
  padding: 25px 0 0;
}
.main-wrapper.receipt-wrapper .shops-list {
  display: flex;
  flex-flow: row wrap;
  padding: 0;
  margin: 0 0 0;
  list-style: none;
}
.main-wrapper.receipt-wrapper .shops-list li {
  width: 25%;
  border: 1px solid #E5E5E5;
  border-width: 0 0 1px 1px;
  text-align: center;
  padding: 15px;
  font-size: 13px;
}
.main-wrapper.receipt-wrapper .shops-list li img {
  height: 76px;
  width: auto;
}
.main-wrapper.receipt-wrapper .shops-list li span {
  display: block;
  margin-top: 4px;
}
.main-wrapper.receipt-wrapper .shops-list li:nth-child(-n+4) {
  border-top-width: 1px;
}
.main-wrapper.receipt-wrapper .shops-list li:nth-child(4n) {
  border-right-width: 1px;
}
.main-wrapper.receipt-wrapper .shops-list li:last-child {
  border-right-width: 1px;
}

/* -------------------------------------------------------------
* NOTIFICACION
-------------------------------------------------------------- */
.bubble-notification {
  display: block;
  padding: 0;
  background: #FFF;
}
.bubble-notification .container {
  position: relative;
  padding: 14px 48px 14px 48px;
}
.bubble-notification .bubble-item {
  background: #fffece;
  border: 1px solid #e4d4b1;
  text-align: left;
  position: relative;
  color: #a27600;
  font: 16px 500/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.bubble-notification .bubble-item p {
  margin: 0;
}
.bubble-notification .bubble-item a {
  font-weight: 700;
  color: #000;
  text-decoration: underline;
}
.bubble-notification .bubble-item i {
  font-size: 18px;
  display: inline-block;
  margin-right: 10px;
}
.bubble-notification .bubble-item i.bubble-icon {
  transform: translateY(-50%);
  top: 50%;
  left: 15px;
  position: absolute;
}
.bubble-notification .close {
  transform: translateY(-50%);
  top: 50%;
  right: 15px;
  position: absolute;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  display: inline-block;
}
.bubble-notification .close i {
  color: rgba(0, 0, 0, 0.6);
  margin-right: 0;
  cursor: pointer;
}
.bubble-notification .close i:hover {
  color: #000;
}

/* ------------------------------------------------------------- 
* RECIBO DE PAGO 
-------------------------------------------------------------- */
.whitepaper h3 {
  font-size: 24px;
  margin: 15px 0 0 0;
  font-weight: 500;
  color: #000;
}

.whitepaper h4 {
  font-size: 16px;
  margin: 8px 0;
}

.whitepaper {
  background-color: #FFF;
  width: 805px;
  margin: 0 auto;
  overflow: hidden;
}

.whitepaper .Header {
  clear: both;
  float: left;
  width: 92%;
  margin: 4% 0 4% 8%;
}

.whitepaper .Logo_empresa img {
  width: 220px;
  float: left;
}

.whitepaper .Logo_paynet {
  float: right;
  margin-top: 3px;
}

.whitepaper .Logo_paynet div {
  font-size: 20px;
  font-weight: lighter;
  display: block;
  float: left;
  margin: 10px 12px 0 0;
}

.whitepaper .Logo_paynet img {
  width: 130px;
  float: left;
}

.whitepaper .Data {
  width: 100%;
  clear: both;
  float: left;
}

.whitepaper .DT-margin {
  margin: 15px 0;
  display: block;
  float: left;
  width: 100%;
  clear: both;
}

.whitepaper .Big_Bullet {
  width: 36px;
  float: left;
  margin-right: 24px;
}

.whitepaper .Big_Bullet span, .col2 {
  background-color: #000;
}

.whitepaper .Big_Bullet span {
  width: 100%;
  height: 45px;
  display: block;
}

.whitepaper .col1 {
  width: 310px;
  float: left;
}

.whitepaper .col1 .ref {
  text-align: center;
  font-weight: 400;
  color: #000;
}

.whitepaper .col1 img {
  width: 100%;
  height: auto;
}

.whitepaper .col1 span {
  font-size: 14px;
  clear: both;
  display: block;
  margin: 5px 0;
}

.whitepaper .col1 small {
  font-size: 12px;
  width: 320px;
  display: block;
}

.whitepaper .col2 {
  width: 380px;
  float: right;
  color: #FFF;
  padding: 30px 30px 30px;
}

.whitepaper .col2.modulo-1 {
  background: #a2b8df;
}

.whitepaper .col2.modulo-2 {
  background: #af88be;
}

.whitepaper .col2.modulo-3 {
  background: #d3ad29;
}

.whitepaper .col2 p {
  margin-top: 0;
}

.whitepaper .col2 h1 {
  margin: 0;
  padding: 0;
  font-size: 48px;
  font-weight: 400;
}

.whitepaper .col2 h1 span {
  font-size: 32px;
}

.whitepaper .col2 h1 small {
  font-size: 20px;
}

.whitepaper .col2 h2 {
  margin: 0;
  font-size: 22px;
  font-weight: lighter;
}

.whitepaper .S-margin {
  padding-left: 80px;
}

.whitepaper .Table-Data {
  margin: 20px 0 0 0;
  clear: both;
  width: 100%;
  display: block;
  float: left;
}

.whitepaper .table-row {
  float: left;
  width: 83%;
  padding: 0 8.5%;
}

.whitepaper .table-row div {
  float: left;
  width: 250px;
  padding: 15px 0;
}

.whitepaper .table-row span {
  float: left;
  border-left: 3px solid #FFF;
  padding: 15px 0 15px 40px;
}

.whitepaper .color1 {
  background-color: #F3F3F3;
}

.whitepaper .color2 {
  background-color: #EBEBEB;
}

.whitepaper .col1 ol, .Col2 ol {
  font-size: 13px;
  width: 290px;
  padding-left: 20px;
}

.whitepaper .col1 li, .Col2 li {
  padding: 5px 0;
  line-height: 16px;
}

.whitepaper .logos-tiendas {
  clear: both;
  float: left;
  width: 100%;
  padding: 5px 10px;
  border-top: 1px solid #EDEDED;
  border-bottom: 1px solid #EDEDED;
  margin: 15px 0 0 0;
}

.whitepaper .logos-tiendas div {
  float: left;
  margin-right: 50px;
}

.whitepaper .logos-tiendas small {
  font-size: 11px;
  margin-left: 20px;
  float: left;
}

.whitepaper .logos-tiendas ul {
  margin: 0;
  list-style: none;
  padding: 0;
  width: 480px;
  float: left;
}

.whitepaper .logos-tiendas li {
  float: left;
  margin: 10px 10px 0 10px;
}

.whitepaper .Powered {
  width: 100%;
  float: left;
  text-align: center;
  margin-top: 18px;
}

.whitepaper .Powered img {
  display: inline-block;
}

.whitepaper .Powered a {
  border-radius: 6px;
  background-color: #0075F0;
  padding: 7px 13px;
  color: #FFF;
  font-size: 16px;
  font-weight: normal;
  text-decoration: none;
  margin: 10px;
}

.whitepaper .Powered a:hover {
  background-color: #009BFF;
}

.whitepaper .note {
  letter-spacing: 0;
  word-spacing: 0;
  font-size: 13px;
  display: block;
}

/* ------------------------------------------------------------- 
* EXAMEN 
-------------------------------------------------------------- */
/* Examen ----------------------------------------------------*/
.main-wrapper.test-wrapper {
  background: #FFF;
}
.main-wrapper.test-wrapper h2.page-title {
  margin: 0 0 40px;
  color: #a2b8df;
  font: 500 37px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.test-wrapper h3 {
  margin: 35px 0 25px 0;
  color: #000;
  border-bottom: 1px solid #D9D9D9;
  padding-bottom: 5px;
  font: 500 28px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.test-wrapper p {
  font: 400 16px/1.7em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 20px 0;
}
.main-wrapper.test-wrapper .test-row {
  display: flex;
  flex-flow: row nowrap;
}
.main-wrapper.test-wrapper .test-row .test-info {
  width: 50%;
}
.main-wrapper.test-wrapper .test-row .test-list {
  width: 50%;
}
.main-wrapper.test-wrapper .test-info .results-list, .main-wrapper.test-wrapper .results-mobile .results-list {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.main-wrapper.test-wrapper .test-info .labels, .main-wrapper.test-wrapper .results-mobile .labels {
  color: #000;
  font: 700 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.test-wrapper .test-info .headings, .main-wrapper.test-wrapper .results-mobile .headings {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-end;
  border-bottom: 1px solid #E5E5E5;
  margin-bottom: 20px;
  padding-bottom: 5px;
}
.main-wrapper.test-wrapper .test-info .headings h3, .main-wrapper.test-wrapper .test-info .headings h4, .main-wrapper.test-wrapper .test-info .headings h5, .main-wrapper.test-wrapper .results-mobile .headings h3, .main-wrapper.test-wrapper .results-mobile .headings h4, .main-wrapper.test-wrapper .results-mobile .headings h5 {
  margin: 0;
  line-height: 1;
  width: 50%;
}
.main-wrapper.test-wrapper .test-info .headings h4, .main-wrapper.test-wrapper .results-mobile .headings h4 {
  font: 500 28px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.test-wrapper .test-info .headings h5, .main-wrapper.test-wrapper .results-mobile .headings h5 {
  font: 500 18px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  opacity: 0.9;
  text-align: center;
}
.main-wrapper.test-wrapper .test-info .headings .date.last, .main-wrapper.test-wrapper .results-mobile .headings .date.last {
  text-align: right;
}
.main-wrapper.test-wrapper .test-info .headings .heading-dates, .main-wrapper.test-wrapper .results-mobile .headings .heading-dates {
  margin-left: auto;
}
.main-wrapper.test-wrapper .test-info .headings .heading-dates .heading.date, .main-wrapper.test-wrapper .results-mobile .headings .heading-dates .heading.date {
  display: inline-block;
  text-align: right;
  margin-left: auto;
  white-space: nowrap;
  width: 100%;
  font-size: 16px;
}
.main-wrapper.test-wrapper .test-info .result-col, .main-wrapper.test-wrapper .results-mobile .result-col {
  width: 50%;
  padding: 0 30px;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item, .main-wrapper.test-wrapper .results-mobile .result-col .result-item {
  max-width: 80px;
  margin: 0 auto;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count, .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count {
  border: 2px solid rgba(0, 0, 0, 0.1);
  border-width: 1px 2px 1px;
  background-clip: border-box;
  background: #a2b8df;
  text-align: center;
  height: 44px;
  line-height: 40px;
  font-weight: 700;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count:first-child, .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count:first-child {
  border-radius: 0 0 0 0;
  border-top-width: 2px;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count:last-child, .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count:last-child {
  border-radius: 0 0 0 0;
  border-bottom-width: 2px;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count:nth-child(1), .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count:nth-child(1) {
  background: #a2b8df;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count:nth-child(2), .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count:nth-child(2) {
  background: #af88be;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count:nth-child(3), .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count:nth-child(3) {
  background: #d3ad29;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count:nth-child(4), .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count:nth-child(4) {
  background: rgba(0, 0, 0, 0.8);
  color: #FFF;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count[data-color=blue], .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count[data-color=blue] {
  background: #a2b8df;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count[data-color=purple], .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count[data-color=purple] {
  background: #af88be;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count[data-color=yellow], .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count[data-color=yellow] {
  background: #d3ad29;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count[data-color=gray], .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count[data-color=gray] {
  background: #828fa2;
  color: #333;
}
.main-wrapper.test-wrapper .test-info .result-col .result-item .result-count[data-color=black], .main-wrapper.test-wrapper .results-mobile .result-col .result-item .result-count[data-color=black] {
  background: #333;
  color: #FFF;
}
.main-wrapper.test-wrapper .test-info .result-col:last-child, .main-wrapper.test-wrapper .results-mobile .result-col:last-child {
  padding-right: 0;
}
.main-wrapper.test-wrapper .test-info .result-col:last-child .result-item, .main-wrapper.test-wrapper .results-mobile .result-col:last-child .result-item {
  margin-left: auto;
  margin-right: 0;
}
.main-wrapper.test-wrapper .test-info .labels, .main-wrapper.test-wrapper .results-mobile .labels {
  padding: 0;
}
.main-wrapper.test-wrapper .test-info .result-types, .main-wrapper.test-wrapper .results-mobile .result-types {
  padding: 0;
}
.main-wrapper.test-wrapper .test-info .result-types h5, .main-wrapper.test-wrapper .results-mobile .result-types h5 {
  height: 44px;
  margin: 0;
  padding: 0;
  font: 400 18px/44px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.test-wrapper .test-info .result-types h5:last-child, .main-wrapper.test-wrapper .results-mobile .result-types h5:last-child {
  font-weight: 700;
}
.main-wrapper.test-wrapper .results.results-normal {
  display: block;
}
.main-wrapper.test-wrapper .results.results-mobile {
  margin-top: 25px;
  display: none;
}
.main-wrapper.test-wrapper .splide--splide {
  margin-left: auto;
}
.main-wrapper.test-wrapper .splide__pagination {
  display: flex;
  flex-flow: row nowrap;
  column-gap: 4px;
  bottom: -30px;
  padding: 0;
  left: -400px;
}
@media (max-width: 1199px) {
  .main-wrapper.test-wrapper .splide__pagination {
    left: -340px;
  }
}
.main-wrapper.test-wrapper .splide__pagination li {
  flex: 1 1 100%;
  max-width: 80px;
}
.main-wrapper.test-wrapper .splide__pagination .splide__pagination__page {
  padding: 0;
  opacity: 1;
  margin: 0;
  width: 100%;
  background: #E5E5E5;
  border-radius: 0;
  outline: 0 !important;
  box-shadow: none !important;
  transition: all 0.3s ease;
  height: 4px;
  border: 0 !important;
}
.main-wrapper.test-wrapper .splide__pagination .splide__pagination__page:hover {
  background-color: #CCC;
}
.main-wrapper.test-wrapper .splide__pagination .splide__pagination__page.is-active {
  transform: none;
  background: #a2b8df;
}
.main-wrapper.test-wrapper .test-info {
  padding-right: 15px;
}
.main-wrapper.test-wrapper .test-list {
  padding-left: 35px;
}
.main-wrapper.test-wrapper .test-list .test-item {
  cursor: pointer;
  padding: 30px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  overflow: hidden;
  opacity: 1;
  border: 1px solid #D9D9D9;
  border-width: 0 1px 1px 1px;
}
.main-wrapper.test-wrapper .test-list .test-item .btn {
  margin-left: auto;
  padding: 12px 25px;
  display: none;
}
.main-wrapper.test-wrapper .test-list .test-item .btn:hover {
  background: #333;
}
.main-wrapper.test-wrapper .test-list .test-item:before {
  content: "";
  height: 100%;
  width: 2px;
  border-left: 2px dashed #000;
  left: 59px;
  position: absolute;
}
.main-wrapper.test-wrapper .test-list .test-item.locked {
  cursor: not-allowed;
}
.main-wrapper.test-wrapper .test-list .test-item:first-child {
  border-top: 1px solid #d9d9d9;
}
.main-wrapper.test-wrapper .test-list .test-item:first-child:before {
  top: 50%;
}
.main-wrapper.test-wrapper .test-list .test-item:last-child:before {
  top: auto;
  bottom: 50%;
}
.main-wrapper.test-wrapper .test-list .test-data {
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
}
.main-wrapper.test-wrapper .test-list .test-data h5 {
  margin: 0 0 5px;
  font: 500 20px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.test-wrapper .test-list .time {
  text-align: center;
  display: flex;
  flex-flow: column nowrap;
  align-items: center;
  justify-content: center;
  height: 58px;
  width: 58px;
  font: 500 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  border-radius: 3px;
  margin-right: 25px;
  background: #FFF;
  position: relative;
  z-index: 10;
}
.main-wrapper.test-wrapper .test-list .time span {
  font: 500 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  display: block;
}
.main-wrapper.test-wrapper .test-list .locked-label {
  display: block;
  margin-top: 5px;
}
.main-wrapper.test-wrapper .test-list .test-item.active {
  padding: 80px 30px;
}
.main-wrapper.test-wrapper .test-item.active {
  opacity: 1;
}
.main-wrapper.test-wrapper .test-item.active .time {
  border: 2px solid #FFF;
  color: #FFF;
}
.main-wrapper.test-wrapper .test-item.active.unlocked {
  color: #FFF;
}
.main-wrapper.test-wrapper .test-item.active.unlocked:before {
  border-color: #FFF;
}
.main-wrapper.test-wrapper .test-item.active .btn {
  display: inline-block;
}
.main-wrapper.test-wrapper .test-item.active span.done {
  display: none;
}
.main-wrapper.test-wrapper .test-item[data-color=blue] {
  color: #a2b8df;
}
.main-wrapper.test-wrapper .test-item[data-color=blue] .time {
  background: #a2b8df;
  color: #FFF;
}
.main-wrapper.test-wrapper .test-item[data-color=blue]:before {
  border-color: #a2b8df;
}
.main-wrapper.test-wrapper .test-item[data-color=blue].active {
  background: #a2b8df;
  border-color: #a2b8df;
}
.main-wrapper.test-wrapper .test-item[data-color=blue] span.done {
  color: #a2b8df;
}
.main-wrapper.test-wrapper .test-item[data-color=purple] {
  color: #af88be;
}
.main-wrapper.test-wrapper .test-item[data-color=purple] .time {
  background: #af88be;
  color: #FFF;
}
.main-wrapper.test-wrapper .test-item[data-color=purple]:before {
  border-color: #af88be;
}
.main-wrapper.test-wrapper .test-item[data-color=purple].active {
  background: #af88be;
  border-color: #af88be;
}
.main-wrapper.test-wrapper .test-item[data-color=purple] span.done {
  color: #af88be;
}
.main-wrapper.test-wrapper .test-item[data-color=yellow] {
  color: #d3ad29;
}
.main-wrapper.test-wrapper .test-item[data-color=yellow] .time {
  background: #d3ad29;
  color: #FFF;
}
.main-wrapper.test-wrapper .test-item[data-color=yellow]:before {
  border-color: #d3ad29;
}
.main-wrapper.test-wrapper .test-item[data-color=yellow].active {
  background: #d3ad29;
  border-color: #d3ad29;
}
.main-wrapper.test-wrapper .test-item[data-color=yellow] span.done {
  color: #d3ad29;
}
.main-wrapper.test-wrapper .test-item[data-color=gray] {
  color: #828fa2;
}
.main-wrapper.test-wrapper .test-item[data-color=gray] .time {
  background: #828fa2;
  color: #FFF;
}
.main-wrapper.test-wrapper .test-item[data-color=gray]:before {
  border-color: #828fa2;
}
.main-wrapper.test-wrapper .test-item[data-color=gray].active {
  background: #828fa2;
  border-color: #828fa2;
}
.main-wrapper.test-wrapper .test-item[data-color=gray] span.done {
  color: #828fa2;
}
.main-wrapper.test-wrapper .test-item.no-paid {
  opacity: 0.8;
  background: #F8F8F8;
}
.main-wrapper.test-wrapper .test-item.no-paid i.nopaid-icon {
  top: 38px;
  right: 30px;
  position: absolute;
  font-size: 30px;
}

.test-list .item-footer {
  margin-top: 30px;
  display: flex;
  justify-content: center;
}
.test-list .item-footer .btn {
  text-align: center;
  width: 180px;
  padding: 14px 0 13px;
}
.test-list .item-footer .btn-white {
  border: 1px solid #CCC;
}
.test-list .item-footer .btn + .btn {
  margin-left: 30px;
}
.test-list span.done {
  top: 50%;
  right: 25px;
  position: absolute;
  transform: translateY(-50%);
  color: #a2b8df;
}
.test-list span.done svg {
  width: 36px;
  height: auto;
}

.result-col .splide--slide {
  margin-left: auto;
}

.result-splide {
  position: relative;
  padding-top: 0;
}
.result-splide .result-item {
  margin-left: 0;
}
.result-splide .heading.date {
  top: 0;
  right: 0;
  position: absolute;
  margin: 0;
  text-align: right;
  font: 500 18px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

/* ------------------------------------------------------------- 
* RESULTADOS DEL EXAMEN DESGLOSADO 
-------------------------------------------------------------- */
.main-wrapper.results-list h2 {
  margin: 0;
  padding: 0;
  color: #000;
  font: 500 32px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.results-list h2 + span.date {
  display: inline-block;
  margin-top: 10px;
  color: #777;
  font: 500 24px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.results-list .qualification-separation {
  margin: 20px 0;
  width: 100%;
  height: 1px;
  display: block;
  background: #E5E5E5;
}
.main-wrapper.results-list .qualification {
  padding: 30px;
  background: rgba(126, 126, 126, 0.1);
  text-align: center;
  position: relative;
}
.main-wrapper.results-list .qualification .qualification-title {
  font: 500 34px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.main-wrapper.results-list .qualification .qualification-title strong {
  font-weight: 700;
}
.main-wrapper.results-list .qualification .qualification-title {
  color: #000;
}
.main-wrapper.results-list .qualification .btn {
  top: 50%;
  right: 30px;
  position: absolute;
  transform: translateY(-50%);
}

.subjects-list {
  margin-top: 26px;
}
.subjects-list .list-item {
  width: 100%;
  position: relative;
  background: #a2b8df;
  height: 96px;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-flow: row nowrap;
}
.subjects-list .list-item[data-color=yellow] {
  background: #d3ad29;
}
.subjects-list .list-item[data-color=purple] {
  background: #af88be;
}
.subjects-list .list-item[data-color=gray] {
  background: #828fa2;
}
.subjects-list .list-item + .list-item {
  margin-top: 15px;
}
.subjects-list .subject-info {
  display: inline;
}
.subjects-list .subject-percentage, .subjects-list .subject-info {
  text-align: center;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 150px;
}
.subjects-list .subject-percentage h3, .subjects-list .subject-percentage .percentage, .subjects-list .subject-info h3, .subjects-list .subject-info .percentage {
  font-size: 28px;
  font-weight: 500;
  line-height: 1;
  display: block;
}
.subjects-list .subject-percentage .subject-questions, .subjects-list .subject-percentage .label, .subjects-list .subject-info .subject-questions, .subjects-list .subject-info .label {
  display: block;
  margin-top: 5px;
  font-size: 18px;
  font-weight: 500;
}
.subjects-list .results {
  margin-left: auto;
  background: #FFF;
  border: 1px solid #CCC;
  border-width: 1px 0 1px 0;
  height: 100%;
  display: flex;
}
.subjects-list .results .result-item {
  width: 150px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-weight: 500;
  font-size: 16px;
  color: #000;
  padding-top: 8px;
}
.subjects-list .results .result-item span {
  display: inline-block;
  margin-bottom: 10px;
  font-size: 28px;
}
.subjects-list .results .result-item.correct {
  color: #73b438;
}
.subjects-list .results .result-item.wrong {
  color: #e04f4f;
}
.subjects-list .results .result-item + .result-item {
  border-left: 1px solid #CCC;
}
.subjects-list .subject-info {
  padding-left: 30px;
  margin-left: 0;
  text-align: left;
  align-items: flex-start;
}
.subjects-list .subject-info h3 {
  font-size: 28px;
  font-weight: 500;
  margin: 0;
}
.subjects-list .message-locked {
  margin-left: auto;
  margin-right: 50px;
  font-size: 16px;
  font-weight: 500;
}
.subjects-list .message-locked svg {
  position: relative;
  top: 2px;
  display: inline-block;
  margin-right: 6px;
}
.subjects-list .list-item.locked-nopay {
  opacity: 0.6;
  cursor: not-allowed;
}

.main-wrapper.test-wrapper .results-mobile .splide__pagination {
  left: -575px;
}
@media (max-width: 767px) {
  .main-wrapper.test-wrapper .results-mobile .splide__pagination {
    left: calc(-100vw + 310px);
  }
}
@media (max-width: 540px) {
  .main-wrapper.test-wrapper .results-mobile .splide__pagination {
    left: -390px;
  }
}
@media (max-width: 426px) {
  .main-wrapper.test-wrapper .results-mobile .splide__pagination {
    left: -285px;
    bottom: -20px;
  }
}
@media (max-width: 376px) {
  .main-wrapper.test-wrapper .results-mobile .splide__pagination {
    left: -220px;
  }
  .main-wrapper.test-wrapper .results-mobile .splide__pagination li {
    max-width: 40px;
  }
}

.main-wrapper.results-list .result-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.main-wrapper.results-list .btn-lined {
  background: #FFF;
  border: 1px solid #CCC;
  color: #333;
  font: 500 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding: 10px 15px;
}
.main-wrapper.results-list .btn-lined:hover {
  background: #CCC;
}

/* ------------------------------------------------------------- 
* BLOG 
-------------------------------------------------------------- */
/* Header ----------------------------------------------------*/
.header-wrapper.header-blog {
  background: #d3ad29;
}
.header-wrapper.header-blog .container {
  display: flex;
  justify-content: space-between;
}
.header-wrapper.header-blog .tag {
  display: inline-block;
  background: rgba(0, 0, 0, 0.8);
  padding: 4px 6px 3px;
  color: #FFF;
  font: 500 13px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.header-wrapper.header-blog .blog-search {
  width: 200px;
  display: inline-block;
  position: relative;
}
.header-wrapper.header-blog .blog-search input[type=text] {
  height: 32px;
  border: 0;
  width: 100%;
  border-radius: 0;
  padding: 0 15px 0 30px;
  box-shadow: none;
}
.header-wrapper.header-blog .blog-search i {
  color: #666;
  margin-top: -7px;
  top: 50%;
  left: 10px;
  position: absolute;
}

/* Blog Navbar -----------------------------------------------*/
.blog-navbar {
  background: #000;
  text-align: left;
}
.blog-navbar .menu {
  background: transparent;
  text-align: left;
}
.blog-navbar .menu li a {
  padding: 15px 30px;
  text-shadow: none;
  color: #FFF;
  font: 500 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.blog-navbar .menu li a i {
  display: inline-block;
  margin-left: 10px;
}
.blog-navbar .menu li a:hover {
  background: #FFF;
  color: #000;
}
.blog-navbar .menu li.has-menu span.arrow {
  display: none;
}
.blog-navbar .menu .sub-menu li a {
  color: #333;
  padding: 12px 20px;
}
.blog-navbar .menu li {
  border-left: 1px solid rgba(255, 255, 255, 0.3);
}
.blog-navbar .menu li:last-child {
  border-right: 1px solid rgba(255, 255, 255, 0.3);
}

/* Contenido -------------------------------------------------*/
.blog-wrapper {
  padding: 60px 0;
}
.blog-wrapper .container {
  display: flex;
  justify-content: flex-start;
}
.blog-wrapper .blog-title {
  margin: 0 0 30px;
  font: 500 36px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.blog-wrapper .blog-content {
  width: 70%;
  padding-right: 20px;
}
.blog-wrapper .pagination {
  text-align: center;
  list-style: none;
  margin: 25px 0 0;
  padding: 0;
}
.blog-wrapper .pagination li {
  display: inline-block;
}
.blog-wrapper .pagination li .page-number, .blog-wrapper .pagination li .page-nav {
  border: 1px solid #E5E5E5;
  display: inline-block;
  padding: 0 12px;
  height: 34px;
  color: #000;
  font: 500 15px/34px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  transition: all 0.3s ease;
}
.blog-wrapper .pagination li i {
  display: inline-block;
}
.blog-wrapper .pagination li .page-number:hover, .blog-wrapper .pagination li .prev-nav:hover, .blog-wrapper .pagination li .next-nav:hover {
  background: #a2b8df;
  color: #FFF;
  border-color: #a2b8df;
}
.blog-wrapper .pagination li span.page-number {
  background: #000;
  color: #FFF;
  border-color: #000;
}
.blog-wrapper .pagination li span.page-number:hover {
  background: #000;
  border-color: #000;
}
.blog-wrapper .pagination li .prev-nav i {
  display: inline-block;
  margin-right: 4px;
}
.blog-wrapper .pagination li .next-nav i {
  display: inline-block;
  margin-left: 4px;
}
.blog-wrapper .pagination li .dots {
  color: #999;
  padding: 0 10px;
}
.blog-wrapper .pagination li + li {
  margin-left: 4px;
}

.blog-sidebar {
  width: 30%;
  padding-left: 30px;
}
.blog-sidebar .ad-item {
  background: #E5E5E5;
  width: 100%;
  position: relative;
  padding-bottom: 75%;
  text-align: center;
}
.blog-sidebar .ad-item span {
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
  display: inline-block;
  color: #999;
  font: 700 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.blog-sidebar .widget-item img {
  width: 100%;
  height: auto;
}
.blog-sidebar .widget-item + .widget-item {
  margin-top: 30px;
}

.post-item {
  display: flex;
  flex-flow: row nowrap;
  padding-bottom: 25px;
  border-bottom: 1px solid #E5E5E5;
}
.post-item .post-image {
  position: relative;
  overflow: hidden;
  width: 42%;
  padding-bottom: 42%;
  background: #E5E5E5;
}
.post-item .post-image:hover img {
  transform: translate(-50%, -50%) scale(1.1);
}
.post-item .post-image img {
  transition: all 0.3s ease;
  max-width: none;
  width: auto;
  height: 100%;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}
.post-item .post-box {
  padding-left: 40px;
  width: 58%;
  display: flex;
  flex-flow: column nowrap;
  align-items: flex-start;
}
.post-item .post-categories {
  color: #999;
}
.post-item .post-categories a {
  display: inline-block;
  color: #a2b8df;
  text-transform: uppercase;
  font: 500 14px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.post-item .post-categories a + a {
  margin-left: 5px;
}
.post-item .post-title {
  letter-spacing: 0;
  font: 500 28px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.post-item .post-title a {
  color: #000;
}
.post-item .post-resume {
  margin-top: 20px;
  color: #333;
  font: 400 15px/1.7em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.post-item .view-more {
  margin-top: 25px;
}
.post-meta-container {
  margin-top: auto;
  padding-top: 15px;
  color: #666;
  font: 400 14px/1.7em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  display: flex;
  /* wrap: con nowrap el min-content de la meta (420px) desborda el viewport movil */
  flex-flow: row wrap;
  align-items: center;
  gap: 10px;
  overflow: hidden;
}
.post-meta-container.single-meta {
  margin-top: 0;
  padding-top: 0;
  margin-bottom: 25px;
  font-size: 15px;
  color: #777;
  flex-wrap: wrap;
}
.post-meta-container .meta-item {
  display: flex;
  align-items: center;
  gap: 5px;
  white-space: nowrap;
}
.post-meta-container .meta-item.author-item {
  min-width: 0;
}
.post-meta-container .meta-item.author-item a {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.post-meta-container .meta-item i {
  color: #a2b8df;
  font-size: 1.1em;
}
.post-meta-container .meta-item a {
  font-weight: 600;
  color: #000;
}
.post-meta-container .meta-item a:hover {
  color: #a2b8df;
}
.post-meta-container .meta-divider {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background-color: #ccc;
  display: inline-block;
}

.post-item + .post-item {
  margin-top: 25px;
}

/* ------------------------------------------------------------- 
* SINGLE
-------------------------------------------------------------- */
.single-post .blog-content {
  position: relative;
  padding-left: 80px;
}
.single-post .social-share,
.single-post .social-share-plugin {
  margin: 0;
  padding: 0;
  list-style: none;
  top: 0;
  left: 0;
  position: absolute;
}
.single-post .social-share li, .single-post .social-share .st-btn,
.single-post .social-share-plugin li,
.single-post .social-share-plugin .st-btn {
  padding: 0;
}
.single-post .social-share li a, .single-post .social-share .st-btn a,
.single-post .social-share-plugin li a,
.single-post .social-share-plugin .st-btn a {
  margin: 0;
  display: block;
  border: 1px solid #D9D9D9;
  width: 48px;
  height: 48px;
  line-height: 48px;
  text-align: center;
  background: #FFF;
  font-size: 20px;
}
.single-post .social-share li + li,
.single-post .social-share-plugin li + li {
  margin-top: 4px;
}
.single-post .social-share .share-fb,
.single-post .social-share-plugin .share-fb {
  color: #4064ad;
  border-color: #4064ad;
}
.single-post .social-share .share-fb:hover,
.single-post .social-share-plugin .share-fb:hover {
  color: #FFF;
  background: #4064ad;
}
.single-post .social-share .share-tw,
.single-post .social-share-plugin .share-tw {
  color: #1c9deb;
  border-color: #1c9deb;
}
.single-post .social-share .share-tw:hover,
.single-post .social-share-plugin .share-tw:hover {
  color: #FFF;
  background: #1c9deb;
}
.single-post .social-share .share-wh,
.single-post .social-share-plugin .share-wh {
  color: #4aa81f;
  border-color: #4aa81f;
}
.single-post .social-share .share-wh:hover,
.single-post .social-share-plugin .share-wh:hover {
  color: #FFF;
  background: #4aa81f;
}
.single-post .social-share .share-ml,
.single-post .social-share-plugin .share-ml {
  color: #bc3a2c;
  border-color: #bc3a2c;
}
.single-post .social-share .share-ml:hover,
.single-post .social-share-plugin .share-ml:hover {
  color: #FFF;
  background: #bc3a2c;
}
.single-post .social-share-plugin {
  z-index: 100;
}
.single-post .social-share-plugin #st-1 .st-btn {
  display: block !important;
  width: 48px !important;
  height: 48px !important;
  line-height: 48px !important;
  text-align: center;
  padding: 0;
}
.single-post .social-share-plugin #st-1 .st-btn > img {
  height: 22px;
  width: auto;
  top: 12px;
}
.single-post .social-share-plugin #st-1 .st-btn + .st-btn {
  margin-top: 6px;
}
.single-post .social-share-plugin #st-1 .st-btn[data-network=facebook] {
  border-color: #4064ad;
}
.single-post .social-share-plugin #st-1 .st-btn[data-network=twitter] {
  border-color: #1c9deb;
}
.single-post .social-share-plugin #st-1 .st-btn[data-network=messenger] {
  border-color: #448aff;
}
.single-post .social-share-plugin #st-1 .st-btn[data-network=whatsapp] {
  border-color: #4aa81f;
}
.single-post .social-share-plugin #st-1 .st-btn[data-network=email] {
  border-color: #666;
}
.single-post .post-categories {
  margin: 0;
}
.single-post .post-categories a {
  text-transform: uppercase;
  display: inline-block;
  margin: 0;
  color: #FFF;
  height: 32px;
  padding: 0 18px;
  font: 500 13px/32px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.single-post .post-categories a:hover {
  opacity: 0.8;
}
.single-post .post-categories a:nth-child(odd) {
  background: #a2b8df;
}
.single-post .post-categories a:nth-child(even) {
  background: #000;
}
.single-post .post-title {
  margin: 30px 0;
  font: 500 36px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.single-post .post-image {
  width: 100%;
  background: #E5E5E5;
  position: relative;
  overflow: hidden;
  margin: 0 0 30px 0;
  aspect-ratio: 16/9;
}
.single-post .post-image img {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  position: relative;
  object-fit: cover;
}
.single-post .post-content {
  width: 100%;
  text-align: justify;
  font: 400 16px/1.7em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.single-post .post-content h2 {
  font-size: 28px;
}
.single-post .post-content h3 {
  font-size: 24px;
}
.single-post .post-content h4 {
  font-size: 20px;
}
.single-post .post-content h5 {
  font-size: 16px;
}
.single-post .post-content h6 {
  font-size: 14px;
}
.single-post .post-content p {
  margin: 15px 0 20px;
}
.single-post .post-content blockquote {
  border-left: 2px solid #000;
}
.single-post .post-content img {
  display: block;
  margin: 25px auto;
  max-width: 100%;
  height: auto !important;
}
.single-post .post-content table {
  width: 100% !important;
  margin-left: auto;
  margin-right: auto;
}
.single-post .post-content table td, .single-post .post-content table th {
  text-align: center;
}
.single-post .post-content > *:first-child {
  margin-top: 0;
}
.single-post .author {
  margin-top: 40px;
  border-top: 3px double #D9D9D9;
  border-bottom: 3px double #D9D9D9;
  padding: 30px 0;
  display: flex;
  flex-flow: row nowrap;
}
.single-post .author img {
  width: 75px;
  height: 75px;
}
.single-post .author .author-content {
  padding-left: 30px;
  width: calc(100% - 75px);
}
.single-post .author h4, .single-post .author .author-name {
  margin: 0;
  font: 700 18px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.single-post .author .author-name a {
  color: inherit;
  text-decoration: none;
}
.single-post .author .author-name a:hover, .single-post .author .author-name a:focus {
  text-decoration: underline;
}
.single-post .author p {
  color: #666;
  font: 400 15px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.single-post .comments-list {
  margin: 30px 0 0;
}
.single-post .comments-list h3 {
  font: 500 28px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0 0 20px;
}
.single-post .comments-list .comment-item {
  display: flex;
  padding: 30px 0;
  border-bottom: 1px solid #E5E5E5;
}
.single-post .comments-list .comment-item .comment-thumb i {
  color: #CCC;
  font-size: 42px;
}
.single-post .comments-list .comment-item h4 {
  display: flex;
  justify-content: space-between;
  font: 700 15px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
}
.single-post .comments-list .comment-item h4 .date {
  color: #666;
  font-style: italic;
  display: inline-block;
  margin-left: 10px;
  font-weight: 400;
  font-size: 14px;
}
.single-post .comments-list .comment-item .comment-box {
  padding-left: 20px;
  width: calc(100% - 42px);
}
.single-post .comments-list .comment-item .comment-content {
  margin-top: 20px;
  font: 400 14px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.single-post .comments-form {
  margin-top: 30px;
}
.single-post .comments-form label {
  color: #1a1a1a;
  font: 700 13px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  display: block;
  margin-bottom: 8px;
}
.single-post .comments-form .field-item {
  position: relative;
}
.single-post .comments-form .field-item input, .single-post .comments-form .field-item textarea {
  width: 100%;
  height: 38px;
  background: #F5F5F5;
  padding: 0 15px;
  color: #333;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font: 500 15px/38px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  transition: all 0.3s ease;
  outline: 0;
}
.single-post .comments-form .field-item input:focus, .single-post .comments-form .field-item textarea:focus {
  background: #E5E5E5;
}
.single-post .comments-form .field-item textarea {
  height: 160px;
  padding: 15px;
}
.single-post .comments-form .field-item + .field-item {
  margin-top: 15px;
}
.single-post .comments-form .btn-primary {
  display: inline-block;
  margin-top: 20px;
  background: #000;
  box-shadow: none;
  color: #FFF;
  padding: 15px 30px;
  font: 500 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  width: auto;
  max-width: 100%;
}
.single-post .comments-form .btn-primary:hover {
  background: #a2b8df;
}
.single-post .indice-content {
  background: rgba(120, 120, 120, 0.05);
  padding: 25px;
  max-width: 100%;
  display: block;
}
.single-post .indice-header {
  padding: 10px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(120, 120, 120, 0.15);
  border-top: 1px solid rgba(120, 120, 120, 0.15);
  transition: all 0.3s ease 0.3s;
}
.single-post .indice-toggle {
  margin-left: auto;
  position: relative;
  font: 500 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  color: #333;
  cursor: pointer;
  transition: all 0.3s ease;
}
.single-post .indice-toggle:hover {
  color: #a2b8df;
}
.single-post .indice-toggle:hover span.indicator::before,
.single-post .indice-toggle:hover span.indicator::after {
  background: #a2b8df;
}
.single-post .indice-toggle span.indicator {
  display: inline-block;
  width: 15px;
  height: 3px;
  position: relative;
  margin-left: 10px;
  top: -4px;
}
.single-post .indice-toggle span.indicator::before, .single-post .indice-toggle span.indicator::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #787878;
  transition: all 0.3s ease;
}
.single-post .indice-toggle span.indicator::after {
  width: 3px;
  height: 15px;
  top: -6px;
  left: 6px;
}
.single-post .indice-toggle span.state-show {
  display: inline-block;
}
.single-post .indice-toggle span.state-hide {
  display: none;
}
.single-post .indice-title {
  color: #333;
  font: 700 18px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
}
.single-post .indice-wrapper {
  width: 100%;
  max-width: 580px;
  padding-bottom: 30px;
  margin-top: 30px;
}
.single-post .indice-wrapper.open span.state-show {
  display: none;
}
.single-post .indice-wrapper.open span.state-hide {
  display: inline-block;
}
.single-post .indice-wrapper.open span.indicator::after {
  transform: rotate(90deg);
  opacity: 0;
}
.single-post .indice-wrapper.open .indice-header {
  border-top-color: rgba(120, 120, 120, 0);
}
.single-post .indice-content ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.single-post .indice-content ul li {
  font: 500 15px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.single-post .indice-content ul li a {
  color: #8098C3;
}
.single-post .indice-content ul li a:hover {
  color: #d3ad29;
}
.single-post .indice-content ul li {
  padding: 6px 0 6px 15px;
  position: relative;
}
.single-post .indice-content ul li::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  position: absolute;
  background-color: #666;
  border-radius: 50%;
  left: 0;
  top: 13px;
}

/* Ficha del autor en /blog/autor/<nombre> ---------------------*/
/* Va fuera de .single-post: se pinta en el listado (.blog-wrapper), no en la
   entrada individual. */
.author-profile {
  margin: 0 0 30px;
  padding: 0 0 25px;
  border-bottom: 3px double #D9D9D9;
  display: flex;
  flex-flow: row nowrap;
}
.author-profile .author-profile-photo {
  width: 110px;
  height: 110px;
  flex: 0 0 110px;
  border-radius: 50%;
  object-fit: cover;
}
.author-profile .author-profile-content {
  padding-left: 25px;
  width: calc(100% - 110px);
}
.author-profile .author-profile-role {
  margin: 0 0 10px;
  color: #666;
  font: 700 13px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.author-profile .author-profile-bio {
  margin: 0;
  font: 400 15px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.author-profile .author-profile-credentials {
  margin: 15px 0 0;
  padding-left: 18px;
  list-style: disc;
}
.author-profile .author-profile-credentials li {
  color: #666;
  font: 400 15px/1.7em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

@media (max-width: 600px) {
  .author-profile {
    flex-flow: column nowrap;
  }
  .author-profile .author-profile-content {
    padding-left: 0;
    padding-top: 20px;
    width: 100%;
  }
}

/* ------------------------------------------------------------- 
* TESTIMONIOS 
-------------------------------------------------------------- */
/* Banner ----------------------------------------------------*/
.main-wrapper.testimonies-page {
  padding-bottom: 0;
}

.testimonies-page .banner-top {
  height: 480px;
  margin-bottom: 0;
}
.testimonies-page .banner-top::before {
  content: "";
  display: block;
  z-index: 10;
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
}
.testimonies-page .banner-top h1 {
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.testimonies-page .banner-ribbon {
  background: #d3ad29;
  width: 100%;
  height: auto;
  padding: 30px 0;
  color: #FFF;
  text-align: center;
  position: relative;
  font: 500 2.6em/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.testimonies-page .banner-ribbon h2 {
  position: relative;
  z-index: 10;
  display: inline-block;
  font: inherit;
}
.testimonies-page .banner-ribbon:before {
  z-index: 1;
  content: "";
  display: block;
  width: 50px;
  height: 50px;
  background: #d3ad29;
  transform: rotate(45deg);
  bottom: -25px;
  left: 50%;
  position: absolute;
  margin-left: -25px;
}

/* Testimonios -----------------------------------------------*/
.our-testimonies {
  padding-top: 100px;
}
.our-testimonies .team-list .member-image {
  width: 75px;
  height: 75px;
  margin-bottom: 0;
}
.our-testimonies .team-list .member-name {
  margin-left: 25px;
  margin-bottom: 0;
}
.our-testimonies .team-list .testimony-info {
  margin-bottom: 25px;
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
}
.our-testimonies .testimonies-header {
  max-width: 620px;
  margin: 0 auto 75px;
}
.our-testimonies .testimonies-header h3 {
  margin: 0 0 20px;
  letter-spacing: 0.08em;
  color: #a2b8df;
  font: 500 16px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.our-testimonies .testimonies-header h4 {
  margin: 0;
  font: 500 36px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

/* Conecta con nosotros --------------------------------------*/
.connect-us {
  padding: 40px 0;
  background: rgb(64.2796248934%, 46.865942029%, 70.9771952259%);
  text-align: center;
  color: #FFF;
}
.connect-us h2 {
  font: 500 2.6em/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0 20px 0 0;
  display: inline-block;
}
.connect-us .social-list {
  display: inline-block;
  margin: 0;
  padding: 0;
  list-style: none;
}
.connect-us .social-list li {
  display: inline-block;
  margin: 0;
}
.connect-us .social-list li a {
  display: inline-block;
  color: #FFF;
  font-size: 38px;
}
.connect-us .social-list li a:hover {
  color: #000;
}
.connect-us .social-list li + li {
  margin-left: 20px;
}

/* Mapa --------------------------------------------------------*/
.wizi-map {
  text-align: center;
  position: relative;
  padding: 100px 0 50px;
}
.wizi-map h2 {
  width: 100%;
  max-width: 800px;
  text-align: center;
  top: 45px;
  left: 50%;
  position: absolute;
  font: 500 34px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  z-index: 10;
  transform: translateX(-50%);
}
.wizi-map h2 strong {
  font-weight: 700;
}
.wizi-map img {
  width: 100%;
  max-width: 940px;
  height: auto;
}

.testimonies-page .promo-banner {
  margin-top: 0;
}

/* ------------------------------------------------------------- 
* CURSOS 
-------------------------------------------------------------- */
.testimonies-page.courses-wrapper .banner-top .container {
  flex-flow: column nowrap;
  justify-content: center;
  align-items: flex-start;
}
.testimonies-page.courses-wrapper .banner-top .banner-title {
  font-size: 48px;
  max-width: 800px;
}
.testimonies-page.courses-wrapper .banner-top .btn {
  font-size: 24px;
  height: 60px;
  line-height: 60px;
  padding: 0 30px;
  font-weight: 700;
}
.testimonies-page.courses-wrapper .banner-top .banner-subtitle {
  opacity: 0.8;
  font-size: 38px;
  max-width: 800px;
  color: #af88be;
}
.testimonies-page.courses-wrapper .banner-top::before {
  background: rgba(41.2094117647%, 55.1168627451%, 79.7709803922%, 0.7);
}

.courses-wrapper .course-content {
  padding-top: 0;
}
.courses-wrapper .course-title {
  color: #a2b8df;
  margin: 0 0 50px;
  text-align: center;
  font: 500 28px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.courses-wrapper .course-title.title-bg {
  background: #d3ad29;
  color: #333333;
  padding: 30px 0;
  font: 700 24px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.courses-wrapper .title-row {
  margin: 0;
  font: 500 24px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.courses-wrapper .title-row strong {
  font-weight: 500;
}
.courses-wrapper .course-row {
  display: flex;
  flex-flow: row nowrap;
  justify-items: space-between;
  align-items: center;
}
.courses-wrapper .course-row .video-wrap {
  width: 100%;
  padding-bottom: 56.25%;
  position: relative;
  overflow: hidden;
}
.courses-wrapper .course-row .video-wrap iframe {
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  position: absolute;
}
.courses-wrapper .course-row .title-row {
  margin: 0 0 30px;
  font: 500 22px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.courses-wrapper .course-row .description-row {
  text-align: left;
  font: 400 16px/1.6em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.courses-wrapper .course-row .btn-action {
  background: #af88be;
  margin-top: 20px;
}
.courses-wrapper .course-row .btn-action:hover {
  background: #000;
}
.courses-wrapper .course-col {
  width: 50%;
}
.courses-wrapper .col-text {
  padding-right: 50px;
}
.courses-wrapper .course-row + .course-row {
  margin-top: 40px;
}
.courses-wrapper .course-row.course-reverse .col-text {
  padding-left: 50px;
  padding-right: 0;
}
.courses-wrapper .course-col .image-wrap {
  width: 100%;
  padding-bottom: 56.25%;
  background: #E5E5E5;
}
.courses-wrapper .col-services {
  margin-top: 120px;
}

.col-services {
  padding-bottom: 80px;
}
.col-services .course-title {
  margin-bottom: 0;
}
.col-services .course-description {
  text-align: center;
  color: #333;
  margin-top: 15px;
  font: 400 20px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.col-services .services-wrapper {
  margin-top: 60px;
  display: flex;
  justify-content: space-around;
}
.col-services .service-item {
  width: 33.3%;
  max-width: 300px;
  text-align: center;
}
.col-services .service-image {
  margin: 0 auto;
  width: 140px;
  height: 140px;
  background: #a2b8df;
  position: relative;
  color: #FFF;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  overflow: hidden;
}
.col-services .service-image svg {
  width: 60px;
  height: auto;
}
.col-services .service-image img {
  width: 100%;
  height: 100%;
}
.col-services .service-item:nth-child(2) .service-image {
  background: #af88be;
}
.col-services .service-item:nth-child(3) .service-image {
  background: #d3ad29;
}
.col-services .service-title {
  margin: 30px 0 15px;
  font: 700 18px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.col-services .service-description {
  color: #333;
  font: 400 15px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.col-services .service-description strong {
  font-weight: 400;
}

.courses-wrapper .testimonies-wrapper {
  padding-top: 20px;
  margin-top: 0;
}
.courses-wrapper .title-container {
  text-align: center;
  display: block;
}
.courses-wrapper .testimony-title {
  width: 100%;
  color: #a2b8df;
  margin: 0 0 20px;
  text-align: center;
  font: 500 32px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.courses-wrapper .testimony-description {
  text-align: center;
  margin: 0 auto 50px;
  width: 100%;
  max-width: 800px;
  display: block;
  color: #333;
  font: 400 20px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.courses-wrapper .testimony-description strong {
  font-weight: 400;
}

.container-first-title {
  text-align: center;
  margin-bottom: 40px;
}
.container-first-title .title-row {
  font: 500 32px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

/* ------------------------------------------------------------- 
* PROMOS 
-------------------------------------------------------------- */
/* Promocionales ---------------------------------------------*/
.remodal.modal-promo {
  text-align: center;
  width: 90%;
  max-width: 960px;
  font: 500 16px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  overflow: hidden;
}
.remodal.modal-promo h3 {
  color: #000;
  margin: 0 0 35px;
  padding: 10px 0;
  letter-spacing: 0.05em;
  background: #d3ad29;
  font: 700 34px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.remodal.modal-promo p {
  color: #000;
}
.remodal.modal-promo .modal-content {
  width: 65%;
  margin-left: auto;
  padding-top: 20px;
}
.remodal.modal-promo .code {
  display: inline-block;
  background-color: #af88be;
  color: #000;
  margin: 30px 0;
  padding: 8px 24px;
  letter-spacing: 0.03em;
  font: 700 26px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.remodal.modal-promo p.note {
  font-weight: 700;
  font-size: 13px;
}
.remodal.modal-promo .social-label {
  margin-top: 35px;
  text-transform: uppercase;
  font: 700 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.remodal.modal-promo .social {
  list-style: none;
  margin: 30px;
  padding: 0;
}
.remodal.modal-promo .social li {
  display: inline-block;
}
.remodal.modal-promo .social li a {
  display: inline-block;
  width: 46px;
  height: 46px;
  background: #000;
  color: #FFF;
  font-size: 24px;
  line-height: 46px;
  text-align: center;
}
.remodal.modal-promo .social li a:hover {
  background-color: #a2b8df;
}
.remodal.modal-promo .social li + li {
  margin-left: 24px;
}
.remodal.modal-promo img.thumb-up {
  width: 34%;
  top: 15px;
  left: 25px;
  position: absolute;
}
.remodal.modal-promo .remodal-close {
  left: auto;
  right: 0;
  color: #000;
  box-shadow: none !important;
}
.remodal.modal-promo .remodal-close:hover {
  color: #666;
}
.remodal.modal-promo .remodal-close::before {
  font-size: 32px;
}

.remodal-overlay.promo {
  background: rgba(200, 200, 200, 0.6);
}

/* ------------------------------------------------------------- 
* Home Nuevo
-------------------------------------------------------------- */
/* Header ------------------------------------------------------*/
body.page-home-nuevo .header-wrapper.header-simple {
  background: transparent;
  height: 120px;
  transition: all 0.3s ease;
  background-color: transparent;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.6), transparent);
}
body.page-home-nuevo .header-wrapper.header-simple.header-stick {
  background-color: #000;
  height: 80px;
}
body.page-home-nuevo .header-wrapper.header-simple.header-stick .navigation-dropdown {
  top: 100%;
}
body.page-home-nuevo .header-spacer.spacer-simple {
  display: none;
}
body.page-home-nuevo .header-wrapper.header-simple .navigation {
  background: transparent;
  padding-right: 0;
}
body.page-home-nuevo .header-wrapper.header-simple .navigation .menu li a {
  font-size: 16px;
  font-weight: 500;
}
body.page-home-nuevo .header-wrapper.header-simple .navigation .menu li + li {
  margin-left: 20px;
}
body.page-home-nuevo .header-wrapper.header-simple:not(.header-stick) .menu > li:hover > a {
  background: transparent;
  color: rgba(255, 255, 255, 0.8);
}
body.page-home-nuevo .header-wrapper.header-simple:not(.header-stick) .navigation .menu li a:after {
  top: -1px;
  bottom: auto;
}
body.page-home-nuevo .header-wrapper.header-simple:not(.header-stick) .navigation .menu li a {
  line-height: 120px;
}
body.page-home-nuevo .header-wrapper.header-simple .navigation .menu li a .arrow {
  margin-top: -4px;
}
body.page-home-nuevo .header-wrapper.header-simple .navigation-dropdown {
  transition: all 0.3s ease;
  top: 90px;
  background: #000;
  border: 0;
}
body.page-home-nuevo .header-wrapper.header-simple .navigation-dropdown li {
  border: 0;
  height: auto;
  margin: 0 !important;
}
body.page-home-nuevo .header-wrapper.header-simple .navigation-dropdown li a {
  border: 0;
  text-align: left;
  display: block;
  width: 100%;
  padding: 10px 12px !important;
  line-height: 1 !important;
}
body.page-home-nuevo .header-wrapper.header-simple .navigation-dropdown li a:hover {
  background-color: #a2b8df;
}

.header-wrapper.header-simple.header-general .menu ul.navigation-dropdown {
  display: none;
  position: absolute;
  background: #000;
  color: #FFF;
  border: 0;
}
.header-wrapper.header-simple.header-general .menu ul.navigation-dropdown li {
  margin: 0 !important;
  border: 0;
  height: auto;
}
.header-wrapper.header-simple.header-general .menu ul.navigation-dropdown li a {
  text-align: left;
  display: block;
  width: 100%;
  padding: 10px 12px !important;
  font-size: 14px;
  font-weight: 500;
  line-height: 1 !important;
  height: auto !important;
  white-space: nowrap;
}
.header-wrapper.header-simple.header-general .menu ul.navigation-dropdown li a:hover {
  background: #a2b8df;
}
.header-wrapper.header-simple.header-general .navigation .menu li a .arrow {
  margin-top: -2px;
}

/* Banner Inicial ----------------------------------------------*/
body.page-home-nuevo {
  background: #FFF;
}
body.page-home-nuevo .main-banner {
  height: 740px;
  padding-top: 100px;
  position: relative;
}
body.page-home-nuevo .main-banner::after, body.page-home-nuevo .main-banner::before {
  content: "";
  display: block;
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: rgba(162, 184, 223, 0.7);
}
body.page-home-nuevo .main-banner::before {
  z-index: 6;
  background: rgba(0, 0, 0, 0.1);
}
body.page-home-nuevo .main-banner .img-bg {
  display: block;
  transform: translate(-50%, -50%);
  top: 60%;
  bottom: auto;
}
body.page-home-nuevo .main-banner h1 span {
  display: block;
  font-weight: 500;
  color: #FFF;
  font-size: 38px;
  line-height: 1.4em;
  max-width: 100%;
}
body.page-home-nuevo .main-banner h1 span.span-big {
  font-size: 48px;
  font-weight: 700;
}
body.page-home-nuevo .banner-catalog {
  margin-top: 80px;
}
body.page-home-nuevo .catalog-description {
  text-align: left;
  color: #FFF;
  font: 500 24px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
  margin: 0 0 20px;
}
body.page-home-nuevo .catalog-links {
  margin: -10px;
  padding: 0;
  text-align: left;
  list-style-type: none;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
}
@media (max-width: 480px) {
  body.page-home-nuevo .catalog-links {
    margin: -8px;
  }
}
body.page-home-nuevo .catalog-links li {
  display: inline-block;
  padding: 10px;
}
@media (max-width: 480px) {
  body.page-home-nuevo .catalog-links li {
    padding: 6px;
  }
}
body.page-home-nuevo .catalog-links li a {
  display: inline-block;
  background: #000;
  width: 140px;
  text-align: center;
  padding: 0;
  height: 52px;
  color: #FFF;
  font: 700 18px/52px "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
body.page-home-nuevo .catalog-links li a:hover {
  background: #a2b8df;
}

/* Estadisticas ------------------------------------------------*/
body.page-home-nuevo .features-wrapper .container {
  justify-content: space-between;
}
body.page-home-nuevo .features-wrapper .feature-icon {
  height: 100px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 30px;
}
body.page-home-nuevo .features-wrapper .feature-icon svg {
  width: auto;
  height: 100px;
  color: #af88be;
}
body.page-home-nuevo .features-wrapper .feature-column:nth-child(2) .feature-icon svg {
  height: 90px;
}
body.page-home-nuevo .features-wrapper .container h3 {
  font: 700 28px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
}
body.page-home-nuevo .features-wrapper .feature-text {
  margin-top: 15px;
  color: #333;
  font: 400 18px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}

/* Testimonios -------------------------------------------------*/
.testimony-ribbon {
  padding: 40px 0;
  background: #d3ad29;
}
.testimony-ribbon .container {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-start;
  align-items: center;
  color: #FFF;
}
.testimony-ribbon .avatar {
  width: 125px;
  height: 125px;
  border-radius: 50%;
  position: relative;
  overflow: hidden;
  display: inline-block;
}
.testimony-ribbon .testimony-avatar {
  text-align: center;
  margin-right: 60px;
}
.testimony-ribbon .testimony-name {
  margin: 8px 0 0;
  color: #FFF;
  font: 500 20px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.testimony-ribbon .testimony-text {
  width: 42%;
  font: 500 18px/1.45em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.testimony-ribbon .testimony-button.button-inside {
  display: none;
}
.testimony-ribbon .testimony-button {
  margin-left: auto;
}
.testimony-ribbon .testimony-button .btn.btn-primary {
  background: #FFF;
  color: #d3ad29 !important;
  font-weight: 700;
  font-size: 22px;
  height: 54px;
  padding: 0 30px;
  line-height: 54px;
}

/* Beneficios --------------------------------------------------*/
body.page-home-nuevo .benefits-wrapper {
  padding: 60px 0;
}
body.page-home-nuevo .benefits-wrapper .container {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: space-between;
}
body.page-home-nuevo .benefits-wrapper .benefit-content {
  padding-left: 60px;
  width: calc(100% - 300px);
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
body.page-home-nuevo .benefits-wrapper .benefit-title {
  color: #333;
  margin: 0 0 40px;
  font: 700 32px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
body.page-home-nuevo .benefits-wrapper .benefit-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
body.page-home-nuevo .benefits-wrapper .benefit-list li {
  color: #333;
  font: 400 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  position: relative;
  padding-left: 30px;
}
body.page-home-nuevo .benefits-wrapper .benefit-list li svg {
  color: #a2b8df;
  width: 20px;
  height: auto;
  top: 5px;
  left: 0;
  position: absolute;
}
body.page-home-nuevo .benefits-wrapper .benefit-list li::before {
  content: "";
  display: none;
}
body.page-home-nuevo .benefits-wrapper .benefit-list li + li {
  margin-top: 20px;
}
body.page-home-nuevo .benefits-wrapper .benefit-image {
  width: 300px;
}

/* Nuestra mision ----------------------------------------------*/
body.page-home-nuevo .promo-banner {
  margin-top: 0;
}
body.page-home-nuevo .promo-banner::after, body.page-home-nuevo .promo-banner::before {
  content: "";
  display: block;
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 5;
  background: rgba(175, 136, 190, 0.7);
}
body.page-home-nuevo .promo-banner::before {
  z-index: 6;
  background: rgba(0, 0, 0, 0.1);
}
body.page-home-nuevo .promo-banner .container {
  position: relative;
  z-index: 20;
  min-height: 320px;
  display: flex;
  flex-flow: column nowrap;
  justify-content: center;
  align-items: center;
}
body.page-home-nuevo .promo-banner .container p {
  max-width: 800px;
  font-size: 29px;
  margin: 0 auto;
}
body.page-home-nuevo .promo-banner .container a.btn {
  font-weight: 700;
  margin-top: 60px;
}

/* Conecta con nosotros ----------------------------------------*/
body.page-home-nuevo .connect-us .container {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
}
body.page-home-nuevo .connect-us {
  background: #8DB8DF;
}
body.page-home-nuevo .connect-us h2 {
  font-size: 1.8em;
  margin-right: 60px;
}

/* ------------------------------------------------------------- 
* Landing Page Generico
-------------------------------------------------------------- */
/* Banner Top ------------------------------------------------ */
.main-wrapper.generic-landing-page {
  padding: 0;
}

.banner-component {
  position: relative;
  overflow: hidden;
  width: 100%;
  display: block;
  height: 480px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #FFF;
}
@media (max-width: 767px) {
  .banner-component {
    height: 300px;
  }
}
.banner-component::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 10;
  background: rgba(175, 136, 190, 0.7);
}
.banner-component-bg {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
.banner-component .container {
  z-index: 100;
  max-width: 680px;
}
.banner-component-title {
  font: 500 36px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 0;
}
@media (max-width: 767px) {
  .banner-component-title {
    font-size: 24px;
  }
}
.banner-component-subtitle {
  font: 400 28px/1.4em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin: 10px 0 0 0;
}
@media (max-width: 767px) {
  .banner-component-subtitle {
    font-size: 18px;
  }
}
.banner-component-cta.btn {
  height: 48px;
  padding: 0 32px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin-top: 35px;
  font: 700 18px/1.05em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
@media (max-width: 767px) {
  .banner-component-cta.btn {
    font-size: 16px;
    height: 42px;
    padding: 0 25px;
  }
}
.banner-component-content {
  margin-top: 20px;
  font: 400 20px/1.5em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.banner-component--simple {
  height: auto;
  padding: 55px 0;
}
.banner-component--simple::after {
  background: #a2b8df;
}

/* Video ----------------------------------------------------- */
.video-component-wrapper {
  background: #d3ad29;
  color: #FFF;
  text-align: center;
  padding: 65px 15px;
}
@media (max-width: 767px) {
  .video-component-wrapper {
    padding: 40px 15px;
  }
}
.video-component-title {
  font: 500 36px/1.05em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin-bottom: 34px;
}
@media (max-width: 767px) {
  .video-component-title {
    font-size: 24px;
  }
}
.video-component-item-wrapper {
  max-width: 880px;
  margin: 0 auto;
}
.video-component-item {
  overflow: hidden;
  width: 100%;
  padding-bottom: 56.25%;
  position: relative;
}
.video-component-item iframe {
  top: 0;
  left: 0;
  position: absolute;
  width: 100%;
  height: 100%;
}

/* Beneficios ------------------------------------------------ */
.benefits-component {
  padding: 60px 0;
}
@media (max-width: 767px) {
  .benefits-component {
    padding: 40px 0;
  }
}
.benefits-component .container {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .benefits-component .container {
    flex-direction: column;
    justify-content: center;
  }
}
.benefits-component-content {
  padding-left: 60px;
  width: calc(100% - 300px);
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
@media (max-width: 767px) {
  .benefits-component-content {
    padding-left: 0;
    width: 100%;
  }
}
.benefits-component-title {
  color: #333;
  margin: 0 0 40px;
  font: 500 38px/1.3em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.benefits-component-title strong {
  font-weight: 700;
}
@media (max-width: 767px) {
  .benefits-component-title {
    font-size: 28px;
  }
}
.benefits-component-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.benefits-component-list li {
  color: #333;
  font: 400 22px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  position: relative;
  padding-left: 30px;
}
@media (max-width: 767px) {
  .benefits-component-list li {
    font-size: 16px;
    padding-left: 28px;
  }
}
.benefits-component-list li svg {
  color: #a2b8df;
  width: 20px;
  height: auto;
  top: 5px;
  left: 0;
  position: absolute;
}
@media (max-width: 767px) {
  .benefits-component-list li svg {
    width: 16px;
  }
}
.benefits-component-list li::before {
  content: "";
  display: none;
}
.benefits-component-list li + li {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .benefits-component-list li + li {
    margin-top: 15px;
  }
}
.benefits-component-image {
  width: 300px;
}
@media (max-width: 767px) {
  .benefits-component-image {
    margin: 0 auto 40px;
    width: 200px;
  }
}

/* Content --------------------------------------------------- */
.content-component {
  width: 100%;
  display: flex;
  justify-content: space-between;
  column-gap: 100px;
  padding: 80px 15px;
}
@media (max-width: 767px) {
  .content-component {
    row-gap: 50px;
    padding: 50px 15px;
    flex-direction: column;
  }
}
.content-component .one-column {
  flex-basis: 50%;
}
@media (max-width: 767px) {
  .content-component .one-column {
    width: 100%;
    flex-basis: 100%;
  }
}
.content-component .table-component-item {
  margin-top: 24px;
}

/* Copy ------------------------------------------------------ */
.copy-component-title {
  font: 500 36px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .copy-component-title {
    font-size: 24px;
    margin-bottom: 15px;
  }
}
.copy-component-content {
  font: 500 16px/1.75em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
}
.copy-component-content p + p {
  margin-top: 20px;
}
@media (max-width: 767px) {
  .copy-component-content p + p {
    margin-top: 15px;
  }
}

/* Tabla - --------------------------------------------------- */
.table-component-table {
  border: 0;
  border-collapse: collapse;
}
.table-component-table th, .table-component-table td {
  font: 400 14px/1.2em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  border: 1px solid #CCC;
  padding: 10px;
  text-align: center;
}
@media (max-width: 767px) {
  .table-component-table th, .table-component-table td {
    padding: 6px;
  }
}
@media (max-width: 540px) {
  .table-component-table th, .table-component-table td {
    font-size: 13px;
  }
}
.table-component-table tr.last th, .table-component-table tr.last td {
  border: 1px solid #CCC !important;
}
.table-component-table th {
  font-weight: 700;
}
.table-component-table span.amount {
  font-weight: 500;
}
.table-component-table .thead-title {
  color: #FFF;
  background: #838D9F;
  border-color: #FFF;
  height: 64px;
  text-align: center;
  font: 500 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  padding: 0;
}
@media (max-width: 767px) {
  .table-component-table .thead-title {
    height: 50px;
  }
}
@media (max-width: 540px) {
  .table-component-table .thead-title {
    font-size: 13px;
  }
}
.table-component-table .thead-title {
  color: #FFF;
  background: #838D9F;
  border-color: #FFF;
  height: 64px;
  text-align: center;
  font: 500 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  border-bottom: 0;
  padding: 0;
}
@media (max-width: 767px) {
  .table-component-table .thead-title {
    height: 50px;
  }
}
@media (max-width: 540px) {
  .table-component-table .thead-title {
    font-size: 13px;
  }
}
.table-component-table .tr-title {
  text-align: center;
  height: 44px;
  color: #000;
  font: 500 16px/1em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  background: #a2b8df;
  border: 0;
  padding: 0;
}
@media (max-width: 767px) {
  .table-component-table .tr-title {
    height: 32px;
  }
}
@media (max-width: 540px) {
  .table-component-table .tr-title {
    font-size: 13px;
  }
}
.table-component-table .tr-title.tr-title-yellow {
  background: #d3ad29;
}

/* ------------------------------------------------------------- 
* RESPONSIVE: LANSCAPE
-------------------------------------------------------------- */
@media (max-width: 1420px) {
  /* ------------------------------------------------------------- 
  * Landscape: Planes
  -------------------------------------------------------------- */
  /* Precios  ---------------------------------------------------*/
  .plans-wrapper .plan-item .plan-body ul li span {
    font-size: 90%;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Home Nuevo
  -------------------------------------------------------------- */
  /* Beneficios -------------------------------------------------*/
  body.page-home-nuevo .benefits-wrapper .benefit-list li {
    font-size: 20px;
  }
}
@media (max-width: 1399px) {
  .review-wrapper .review-columns .options-cloned {
    width: 333px;
  }
  .main-wrapper.test-wrapper .test-item .time {
    margin-right: 20px;
  }
  .main-wrapper.test-wrapper .test-list .test-item,
  .main-wrapper.test-wrapper .test-list .test-item.active {
    padding-left: 20px;
    padding-right: 20px;
  }
  .main-wrapper.test-wrapper .test-list .test-item .btn {
    padding-left: 15px;
    padding-right: 15px;
  }
  .main-wrapper.test-wrapper .test-list .test-item:before {
    left: 48px;
  }
}
@media (max-width: 1280px) {
  /* ------------------------------------------------------------- 
  * Landscape: Planes
  -------------------------------------------------------------- */
  /* Precios  ---------------------------------------------------*/
  .plans-wrapper .plans-title {
    font-size: 32px;
  }
  .plans-wrapper .plan-item .plan-header .plan-name {
    font-size: 22px;
  }
  .plans-wrapper .plan-item:nth-child(3) .plan-header .plan-name {
    font-size: 22px;
  }
  .plans-wrapper .plan-item {
    padding: 0 15px;
  }
  .plans-wrapper .plan-item .plan-header .promo {
    font-size: 14px;
  }
  .plans-wrapper .plan-item .plan-header .header-footer .unique {
    font-size: 14px;
    margin-right: 10px;
  }
  .plans-wrapper .plan-item .plan-body {
    padding: 30px 18px;
  }
  .plans-wrapper .plan-item .plan-footer {
    padding: 18px;
  }
  /* Banner - ---------------------------------------------------*/
  .promo-banner {
    margin-top: 80px;
  }
  .promo-banner h2 {
    font-size: 32px;
  }
  .promo-banner h3 {
    font-size: 26px;
  }
  .promo-banner p {
    font-size: 18px;
    max-width: 640px;
    margin: 0 auto;
  }
  .promo-banner .btn {
    font-size: 16px;
    font-weight: 500;
  }
  .promo-banner img.promo-bg {
    width: auto;
    height: 100%;
    max-width: none;
  }
  .plans-wrapper .plan-item .plan-body ul li span {
    font-size: 90%;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Ejercicios Personalizables
  -------------------------------------------------------------- */
  .review-wrapper .review-columns .options-cloned {
    width: 333px;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Recibo de pago
  -------------------------------------------------------------- */
  .main-wrapper.receipt-wrapper .codebars {
    margin-top: 0;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Home Nuevo
  -------------------------------------------------------------- */
  body.page-home-nuevo .header-wrapper.header-simple .navigation .menu li a {
    font-size: 14px;
  }
  body.page-home-nuevo .main-banner {
    height: 600px;
  }
  body.page-home-nuevo .main-banner h1 span.span-big {
    font-size: 42px;
  }
  body.page-home-nuevo .main-banner h1 span {
    font-size: 32px;
  }
  body.page-home-nuevo .banner-catalog {
    margin-top: 40px;
  }
  body.page-home-nuevo .catalog-description {
    font-size: 20px;
  }
  body.page-home-nuevo .catalog-links li a {
    width: 120px;
    font-size: 16px;
    height: 44px;
    line-height: 44px;
  }
  body.page-home-nuevo .promo-banner img.promo-bg {
    height: auto;
    width: 100%;
    min-width: 100%;
  }
}
@media (max-width: 1199px) {
  /* ------------------------------------------------------------- 
  * Landscape: Ejercicios Personalizables
  -------------------------------------------------------------- */
  .review-wrapper .review-columns .options-cloned {
    width: 279px;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Blog
  -------------------------------------------------------------- */
  .post-item {
    flex-flow: column nowrap;
  }
  .post-item .post-image {
    width: 100%;
    padding-bottom: 50%;
  }
  .post-item .post-image img {
    min-width: 100%;
    min-height: 100%;
  }
  .post-item .post-box {
    width: 100%;
    padding-top: 25px;
    padding-left: 0;
  }
  .post-item .post-resume {
    margin-top: 0;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Testimonios
  -------------------------------------------------------------- */
  .testimonies-page .banner-top h2 {
    font-size: 52px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Resultados desglosado
  -------------------------------------------------------------- */
  .subjects-list .message-locked {
    margin-right: 20px;
  }
  .subjects-list .subject-percentage h3, .subjects-list .subject-percentage .percentage,
  .subjects-list .subject-info h3, .subjects-list .subject-info .percentage {
    font-size: 24px;
  }
  .subjects-list .subject-percentage .subject-questions, .subjects-list .subject-percentage .label,
  .subjects-list .subject-info .subject-questions, .subjects-list .subject-info .label {
    font-size: 16px;
  }
  .subjects-list .results .result-item span {
    margin-bottom: 8px;
    font-size: 24px;
  }
  .subjects-list .results .result-item {
    padding-top: 0;
  }
  .main-wrapper.results-list .qualification .qualification-title {
    font-size: 24px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Paidout
  -------------------------------------------------------------- */
  .paidout .paidout-footer h3 {
    font-size: 28px;
  }
  .paidout .paidout-footer a {
    font-size: 18px;
    padding: 12px 30px;
  }
  .paidout .paidout-message {
    padding: 40px 0 50px;
  }
  .paidout .paidout-message h3 {
    font-size: 28px;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Pagos
  -------------------------------------------------------------- */
  .checkout-content .payment-methods img.tarjetas, .checkout-content .payment-methods img.paypal,
  .checkout-content .payment-methods img.tiendas {
    height: 24px;
  }
  .checkout-sidebar .checkout-title {
    font-size: 32px;
  }
  .checkout-content .page-title {
    font-size: 28px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Leccion
  -------------------------------------------------------------- */
  .list-column .btn-wrap .btn {
    font-size: 16px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .single-lesson .next-lesson-block, .related-lessons .next-lesson-block {
    margin-top: 70px;
  }
  .list-column .btn-wrap {
    margin-top: 36px;
  }
  .lesson-item .author-box, .review-explain .author-box {
    padding-top: 20px;
  }
  .main-wrapper.single-lesson:before {
    height: 490px;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Examen
  -------------------------------------------------------------- */
  .main-wrapper.test-wrapper .test-list .test-data h5 {
    font-size: 18px;
  }
  .main-wrapper.test-wrapper .test-row .test-list {
    padding-left: 30px;
    width: 55%;
  }
  .main-wrapper.test-wrapper .test-row .test-info {
    padding-right: 0;
    width: 45%;
  }
  .main-wrapper.test-wrapper .test-list .test-item .btn {
    padding: 12px 10px;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Home Nuevo
  -------------------------------------------------------------- */
  /* Beneficios -------------------------------------------------*/
  body.page-home-nuevo .benefits-wrapper .benefit-list li {
    font-size: 16px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-title {
    font-size: 28px;
  }
  body.page-home-nuevo .connect-us h2 {
    font-size: 22px;
  }
  body.page-home-nuevo .features-wrapper .feature-text {
    font-size: 16px;
  }
}
@media (max-width: 1099px) {
  /* ------------------------------------------------------------- 
  * Landscape: HOME NUEVO
  -------------------------------------------------------------- */
  body.page-home-nuevo .main-banner .img-bg {
    top: 50%;
    height: auto;
    min-height: 100%;
    width: 100%;
  }
  body.page-home-nuevo .features-wrapper .container h3 {
    font-size: 24px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-list li svg {
    top: 3px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-title {
    font-size: 28px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-list li {
    font-size: 18px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-image {
    width: 220px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-content {
    width: calc(100% - 220px);
  }
  body.page-home-nuevo .connect-us h2 {
    font-size: 22px;
  }
  body.page-home-nuevo .features-wrapper .feature-text {
    font-size: 16px;
  }
  body.page-home-nuevo .promo-banner .container p {
    font-size: 20px;
  }
  body.page-home-nuevo .promo-banner {
    padding: 40px 0;
  }
  body.page-home-nuevo .promo-banner .btn {
    min-width: 200px;
  }
  body.page-home-nuevo .promo-banner .container a.btn {
    margin-top: 30px;
  }
  body.page-home-nuevo #footer.footer-wrapper.footer-full .social-list li a {
    font-size: 28px;
  }
  .testimony-ribbon .testimony-text {
    width: 56%;
  }
  .testimony-ribbon .avatar {
    width: 100px;
    height: 100px;
  }
  .testimony-ribbon .testimony-avatar {
    margin-right: 30px;
  }
  .testimony-ribbon .testimony-name {
    font-size: 16px;
  }
  .testimony-ribbon .testimony-button .btn.btn-primary {
    font-size: 18px;
  }
}
/* ------------------------------------------------------------- 
* RESPONSIVE: TABLET
-------------------------------------------------------------- */
@media (max-width: 991px) {
  /* ------------------------------------------------------------- 
  * Tablet: Home
  -------------------------------------------------------------- */
  .promo-examen h4 span {
    display: inline;
  }
  .promo-examen h4 {
    display: inline;
    padding-right: 20px;
  }
  .promo-examen h4 {
    font-size: 18px;
    width: calc(100% - 200px);
  }
  .promo-examen .btn {
    padding: 12px 0;
    width: 200px;
  }
  .home-header-video {
    height: 100%;
    width: auto;
    max-width: none;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Contacto
  -------------------------------------------------------------- */
  .contact-wrapper .contact-image {
    width: 60%;
    right: 0;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Planes
  -------------------------------------------------------------- */
  /* Precios  ---------------------------------------------------*/
  .plans-wrapper .plans-title {
    font-size: 24px;
    margin-top: 0;
    margin-bottom: 15px;
  }
  .plans-wrapper .plan-item .plan-header .plan-price {
    font-size: 24px;
  }
  .plans-wrapper .plan-item .plan-header .promo {
    padding: 12px 18px;
  }
  .plans-wrapper .row-plans {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
  }
  .plans-wrapper .row-plans .plan-item {
    width: 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding: 15px;
  }
  /* Mision -----------------------------------------------------*/
  .mission-wrapper .banner-top h2,
  .mission-wrapper .banner-top h1 {
    font-size: 48px;
  }
  .mission-wrapper .banner-bg {
    max-width: none;
    width: auto;
    height: 100%;
  }
  .mission-wrapper .banner-top {
    height: 420px;
  }
  .mission-wrapper .mission-content {
    font-size: 16px;
  }
  .blog-wrapper.single-post .container {
    flex-flow: column nowrap;
  }
  .blog-wrapper.single-post .container .blog-content {
    padding-right: 0;
    width: 100%;
    max-width: none;
  }
  .blog-wrapper.single-post .container .blog-sidebar {
    width: 100%;
    max-width: none;
    padding: 40px 0 20px;
  }
  .blog-wrapper .post-content {
    text-align: justify;
    overflow: auto;
    font: 400 16px/1.7em "Avenir", "Open Sans", "Helvetica Neue", sans-serif;
  }
  .blog-wrapper .post-content h2 {
    font-size: 24px;
  }
  .blog-wrapper .post-content h3 {
    font-size: 22px;
  }
  .blog-wrapper .post-content h4 {
    font-size: 18px;
  }
  .blog-wrapper .post-content h5 {
    font-size: 14px;
  }
  .blog-wrapper .post-content h6 {
    font-size: 12px;
  }
  .blog-wrapper .post-content p {
    margin: 14px 0 15px;
  }
  /* Ofertas ----------------------------------------------------*/
  .discount-ribbon .discount-title {
    font-size: 22px;
  }
  .discount-ribbon .discount-subtitle {
    font-size: 19px;
  }
  .plans-wrapper .plan-item .plan-body {
    text-align: center;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Promos
  -------------------------------------------------------------- */
  .remodal.modal-promo h3 {
    letter-spacing: 0;
    font-size: 26px;
  }
  .remodal.modal-promo img.thumb-up {
    top: auto;
    bottom: 0;
    width: 30%;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Testimonios
  -------------------------------------------------------------- */
  .testimonies-page .banner-ribbon,
  .connect-us h2 {
    font-size: 2rem;
  }
  .our-testimonies .testimonies-header h2 {
    font-size: 32px;
  }
  .wizi-map h2 {
    font-size: 24px;
  }
  .our-testimonies .team-list .member-name {
    font-size: 20px;
  }
  .our-testimonies .team-list .member-image {
    width: 50px;
    height: 50px;
  }
  .our-testimonies .team-list .team-item {
    padding: 25px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Inicio 
  -------------------------------------------------------------- */
  .stats-list li {
    width: 100%;
  }
  .stats-list li img {
    max-width: 44px;
  }
  .stats-list li .stat-icon {
    max-width: 44px;
  }
  .module-item.module-stats .stats-list {
    margin-top: 0;
    padding-bottom: 10px;
  }
  .stats-list .stat-info h5 {
    font-size: 15px;
  }
  .stats-list .stat-info .percent {
    font-size: 18px;
  }
  .main-home .row.equal-columns .col-md-6 {
    display: flex;
    flex-flow: column nowrap;
  }
  .main-home .row.equal-columns .col-md-6 .module-item + .module-item {
    margin-top: auto;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Resultados desglosado
  -------------------------------------------------------------- */
  .subjects-list .subject-info {
    padding-left: 15px;
  }
  .subjects-list .results .result-item {
    width: 124px;
  }
  .subjects-list .list-item .subject-percentage {
    width: 120px;
  }
  .subjects-list .list-item .btn {
    padding-left: 10px;
    padding-right: 10px;
    width: auto;
  }
  .subjects-list .list-item .message-locked {
    font-size: 14px;
  }
  .subjects-list .list-item .message-locked svg {
    position: relative;
    top: 6px;
  }
  .subjects-list .list-item .btn {
    font-size: 15px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Leccion
  -------------------------------------------------------------- */
  .single-lesson .lesson-column, .related-lessons .lesson-column, .single-lesson .list-column {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
    padding-right: 15px;
  }
  .single-lesson .list-column {
    padding-left: 15px;
  }
  .single-lesson .suggest-lessons, .related-lessons .suggest-lessons {
    margin-top: 30px;
  }
  .single-lesson .next-lesson-block, .related-lessons .next-lesson-block {
    margin-top: 50px;
  }
  .list-column .btn-wrap .btn {
    width: auto;
    max-width: 100%;
    margin: 0 0;
    padding-left: 25px;
    padding-right: 25px;
  }
  .list-column .btn-wrap {
    text-align: left;
  }
  /* ------------------------------------------------------------- 
  * PLATFORMA: Listado de lecciones
  -------------------------------------------------------------- */
  .course-content .lesson-list .data-item {
    max-width: 400px;
  }
  .course-content .lesson-list .level-up {
    padding: 10px;
    left: 460px;
  }
  .course-content .lesson-list .level-up .btn {
    position: relative;
    z-index: 10;
    width: 140px;
  }
  .quiz-section .quiz-list li {
    padding: 0 15px;
  }
  .quiz-section .quiz-list li a i {
    width: 32px;
    height: 32px;
    font-size: 16px;
    line-height: 30px;
  }
  .quiz-section .quiz-list {
    width: 50%;
  }
  .quiz-section .quiz-info {
    padding: 20px 20px;
    width: 50%;
  }
  .quiz-section .quiz-info h4 {
    margin-bottom: 20px;
  }
  .quiz-section .quiz-info img.quiz-icon {
    width: 60px;
    left: 20px;
    top: 20px;
  }
  .suggests-wrapper .suggest-left {
    width: 100%;
  }
  .suggests-wrapper .suggest-right {
    width: 100%;
  }
  .suggests-wrapper .suggest-description {
    margin-top: 30px;
  }
  .suggests-wrapper .suggest-left {
    padding: 40px 20px;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Pagos
  -------------------------------------------------------------- */
  .main-wrapper.checkout-wrapper .checkout-content, .receipt-wrapper .checkout-content {
    padding: 30px;
  }
  .main-wrapper.checkout-wrapper .checkout-sidebar, .receipt-wrapper .checkout-sidebar {
    padding: 20px;
  }
  .checkout-wrapper .field-promo .form-field {
    width: 100%;
    margin-bottom: 10px;
  }
  .checkout-wrapper .field-promo .promo-inside {
    flex-flow: row wrap;
  }
  /* ------------------------------------------------------------- 
  * PLATFORMA: Cuenta
  -------------------------------------------------------------- */
  .account-content, .complete-account-wrapper {
    padding: 30px 0 80px 30px;
    width: calc(100% - 220px);
  }
  .account-sidebar {
    box-shadow: none;
    border: 1px solid #E5E5E5;
  }
  .account-content {
    border: 1px solid #E5E5E5;
    border-top-width: 0;
  }
  .account-sidebar .menu li a {
    padding: 14px;
  }
  .main-wrapper.account-wrapper .container {
    flex-flow: column nowrap;
  }
  .account-sidebar {
    width: 100%;
  }
  .account-content, .complete-account-wrapper {
    width: 100%;
    padding: 30px 20px 30px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Revision
  -------------------------------------------------------------- */
  .review-resume .data {
    font-size: 38px;
  }
  .review-resume h5 {
    font-size: 16px;
  }
  .review-wrapper .container.review-header.page-title {
    margin-bottom: 0;
  }
  .review-resume {
    padding: 30px 0 0;
  }
  .section-item.review-answers {
    background: #FFF;
  }
  .review-wrapper .review-accordion-content .container {
    padding-bottom: 0;
  }
  .section-item .section-content .row-column {
    width: 50%;
    padding-bottom: 20px;
  }
  .section-item .section-content .custom-row {
    flex-flow: row wrap;
  }
  .section-item.review-resume .section-content .custom-row {
    justify-content: center !important;
  }
  .section-item.review-resume .section-content .row-column:last-child {
    padding-bottom: 0;
  }
  .section-item.review-resume .container {
    padding-bottom: 0;
  }
  .section-item.review-resume .section-header h3 {
    padding-bottom: 20px;
  }
  .review-answers .section-content {
    overflow: auto;
    padding-right: 20px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Revision Interior
  -------------------------------------------------------------- */
  .review-wrapper .review-columns .options-cloned {
    width: 207px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Practicas Personalizadas
  -------------------------------------------------------------- */
  .main-wrapper.custom-wrapper .custom-field .subjects-items {
    grid-template-columns: repeat(2, 50%);
    grid-gap: 5px 30px;
    width: 100%;
    padding-right: 20px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Examen
  -------------------------------------------------------------- */
  .main-wrapper.test-wrapper .test-row {
    flex-flow: column nowrap;
  }
  .main-wrapper.test-wrapper .test-row .test-info {
    width: 100%;
    padding-right: 0;
  }
  .main-wrapper.test-wrapper .test-row .test-list {
    width: 100%;
    padding-left: 0;
    margin-top: 25px;
  }
  .main-wrapper.test-wrapper .results.results-normal {
    display: none;
  }
  .main-wrapper.test-wrapper .results.results-mobile {
    margin-top: 35px;
    display: block;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Paidout
  -------------------------------------------------------------- */
  .checkout-sidebar .checkout-totals.paid .paid-label {
    font-size: 32px;
  }
  .paidout .paidout-message span {
    font-size: 28px;
    line-height: 1.2em;
  }
  .paidout .paidout-message svg {
    width: 100px;
  }
  .paidout .paidout-message {
    padding: 30px 0;
  }
  .paidout .paidout-footer h3 {
    font-size: 24px;
  }
  .paidout .paidout-content h4 {
    font-size: 24px;
  }
  .paidout .paidout-content .paidout-text {
    font-size: 16px;
  }
  /* ------------------------------------------------------------- 
  * CURSOS
  -------------------------------------------------------------- */
  .courses-wrapper .course-row .col-text {
    padding-right: 40px;
  }
  .courses-wrapper .course-row.course-reverse .col-text {
    padding-left: 40px;
  }
  .courses-wrapper .course-row .title-row {
    font-size: 28px;
  }
  .courses-wrapper .course-row .description-row {
    font-size: 14px;
  }
  .courses-wrapper .title-container .testimony-title {
    margin: 0 0 15px;
    width: 100%;
    max-width: 100%;
    font-size: 32px;
  }
  .courses-wrapper .course-title {
    font-size: 32px;
  }
  .courses-wrapper .course-title.title-bg {
    font-size: 20px;
  }
  .courses-wrapper .testimony-description {
    font-size: 18px;
  }
  .col-services .course-description {
    font-size: 18px;
  }
  .container-first-title .title-row {
    font-size: 26px;
  }
  .courses-wrapper .col-services {
    margin-top: 80px;
    padding-bottom: 40px;
  }
  /* ------------------------------------------------------------- 
  * ERROR 404
  -------------------------------------------------------------- */
  .main-wrapper.error-404 .e404-image {
    width: 45%;
  }
  .main-wrapper.error-404 .e404-text {
    width: 55%;
  }
  .main-wrapper.error-404 .e404-text h3 {
    font-size: 28px;
  }
  .main-wrapper.error-404 .e404-text h1 {
    font-size: 100px;
  }
  .main-wrapper.error-404 .e404-text h2 {
    font-size: 28px;
  }
  .main-wrapper.error-404 .e404-description {
    font-size: 16px;
  }
  .main-wrapper.error-404 .links {
    font-size: 16px;
  }
  /* ------------------------------------------------------------- 
  * ERROR MANTENIMIENTO
  -------------------------------------------------------------- */
  .main-wrapper.error-mant .mant-title h1 {
    font-size: 48px;
    line-height: 1.2em;
  }
  /* ------------------------------------------------------------- 
  * ERROR MANTENIMIENTO
  -------------------------------------------------------------- */
  .main-wrapper.error-mant .mant-title h1 {
    font-size: 48px;
    line-height: 1.2em;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Home Nuevo
  -------------------------------------------------------------- */
  body.page-home-nuevo .header-wrapper.header-simple .navigation .menu li a {
    padding: 0 14px;
  }
  body.page-home-nuevo .main-banner {
    height: 520px;
  }
  body.page-home-nuevo .main-banner h1 span.span-big {
    font-size: 32px;
  }
  body.page-home-nuevo .main-banner h1 span {
    font-size: 24px;
  }
  body.page-home-nuevo .connect-us h2 {
    margin-right: 0;
    margin-bottom: 14px;
  }
  body.page-home-nuevo .connect-us .container {
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
  }
  body.page-home-nuevo .promo-banner {
    padding: 10px 0;
  }
  .testimony-ribbon .testimony-text {
    width: calc(100% - 130px);
  }
  .testimony-ribbon .testimony-button {
    display: none;
  }
  .testimony-ribbon .testimony-button.button-inside {
    display: block;
  }
  .testimony-ribbon .testimony-button.button-inside .btn {
    height: 42px;
    line-height: 42px;
    padding: 0 15px;
  }
  .features-wrapper .feature-column + .feature-column {
    margin-top: 40px;
  }
  .testimony-ribbon .testimony-text {
    font-size: 16px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Exani | Ejercicios
  -------------------------------------------------------------- */
  .area-exani .question-wrapper .question-header h4 {
    font-size: 18px;
  }
  .area-exani .question-block {
    width: 100%;
    min-height: 0;
  }
  .area-exani .question-columns {
    flex-flow: column nowrap;
  }
  .area-exani .question-block + .question-block {
    margin-top: 15px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Examen Demo
  -------------------------------------------------------------- */
  .results-wrapper.quiz-promocional .actions-row {
    flex-flow: column wrap;
  }
  .results-wrapper.quiz-promocional .actions-row .btn-action + .btn-action {
    margin-left: 0;
    margin-top: 20px;
  }
  .results-wrapper .results-info .container {
    flex-flow: column nowrap;
  }
  .results-wrapper .results-info .options {
    margin-left: 0;
    margin-top: 20px;
  }
}
@media (max-width: 920px) {
  /* ------------------------------------------------------------- 
  * Tablet: Header
  -------------------------------------------------------------- */
  .header-logo.logo-legend {
    top: -10px !important;
  }
  .header-logo.logo-legend .legend {
    font-size: 12px;
    padding: 3px 6px 2px;
    left: 0;
    bottom: auto;
    top: 100%;
    margin-top: 5px;
  }
}
@media (max-width: 767px) {
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Header
  -------------------------------------------------------------- */
  .header-app .header-options {
    margin-left: auto;
    margin-right: 15px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Planes
  -------------------------------------------------------------- */
  /* Precios  ---------------------------------------------------*/
  .plans-wrapper .row-plans .plan-item {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  /* Banner -----------------------------------------------------*/
  .promo-banner {
    margin-top: 40px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Garantia
  -------------------------------------------------------------- */
  /* Contenido --------------------------------------------------*/
  .guarantee-wrapper .page-title {
    font-size: 28px;
  }
  .guarantee-wrapper .guarantee-content, .guarantee-wrapper .page-content {
    font-size: 16px;
  }
  .guarantee-wrapper .guarantee-content h2, .guarantee-wrapper .page-content h2 {
    font-size: 20px;
  }
  .guarantee-wrapper .guarantee-plans h2 {
    font-size: 28px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Contacto
  -------------------------------------------------------------- */
  /* Contenido --------------------------------------------------*/
  .contact-wrapper {
    padding-bottom: 30px;
  }
  .header-wrapper.header-auth .container {
    max-width: 740px !important;
  }
  .contact-wrapper .container {
    flex-flow: column nowrap;
  }
  .contact-wrapper .contact-column {
    width: 100%;
    max-width: none;
  }
  .contact-wrapper .contact-image {
    overflow: hidden;
    position: relative;
    margin-top: 0;
    left: 0;
    top: 0;
    margin-left: auto;
    transform: none;
    text-align: center;
    width: 100%;
    bottom: 0;
  }
  .contact-wrapper .contact-image img {
    text-align: center;
  }
  /* Mision -----------------------------------------------------*/
  .our-team .team-list {
    margin: 0 -10px;
  }
  .our-team .team-list .team-item {
    padding: 30px 15px;
  }
  .our-team .team-list .member-image {
    width: 160px;
    height: 160px;
  }
  .our-team .team-list .member-name {
    font-size: 20px;
  }
  .our-team .team-list .member-description {
    font-size: 15px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: FAQ
  -------------------------------------------------------------- */
  .faq-wrapper .faq-categories .faq-cat {
    width: 50%;
    padding: 10px;
  }
  .faq-wrapper .faq-categories {
    flex-flow: row wrap;
  }
  .faq-footer .faq-message:after {
    width: 100%;
    max-width: 600px;
  }
  .faq-wrapper .faq-categories .faq-cat h2 {
    font-size: 18px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Blog
  -------------------------------------------------------------- */
  .blog-wrapper .container {
    flex-flow: column nowrap;
  }
  .blog-wrapper .container .blog-content {
    padding-right: 0;
    width: 100%;
    max-width: none;
  }
  .blog-wrapper .container .blog-sidebar {
    width: 100%;
    max-width: none;
    padding: 40px 0 20px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Promos
  -------------------------------------------------------------- */
  .remodal.modal-promo .modal-content {
    width: 100%;
    position: relative;
    z-index: 100;
  }
  .remodal.modal-promo img.thumb-up {
    width: 20%;
  }
  .remodal.modal-promo .modal-padder {
    padding-left: 10%;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Testimonios
  -------------------------------------------------------------- */
  .our-testimonies .team-list .team-item {
    width: 100%;
  }
  .testimonies-page .banner-ribbon, .connect-us h2 {
    font-size: 1.6rem;
  }
  .connect-us .social-list li a {
    font-size: 26px;
  }
  .wizi-map h2 {
    padding: 0 15px;
  }
  .testimonies-page .banner-top h1 {
    font-size: 36px;
  }
  .testimonies-page .banner-bg {
    width: auto;
    max-width: none;
    height: 100%;
  }
  .our-testimonies .team-list {
    margin: 0;
  }
  .our-testimonies .team-list .team-item {
    padding: 30px 0;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Inicio 
  -------------------------------------------------------------- */
  .navigation.navigation-app {
    display: none;
  }
  .banner-initial {
    background-position: 35% 0;
  }
  .banner-initial .banner-text {
    width: 80%;
  }
  .banner-initial {
    position: relative;
  }
  .banner-initial:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    background: rgba(255, 255, 255, 0.6);
  }
  .banner-initial .banner-text p {
    font-weight: 500;
  }
  .banner-initial .banner-text {
    position: relative;
    width: 100%;
    z-index: 10;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Ejercicios
  -------------------------------------------------------------- */
  .main-wrapper.custom-wrapper .custom-content {
    padding: 30px 20px;
  }
  .main-wrapper.custom-wrapper .custom-footer {
    padding: 20px;
  }
  .main-wrapper.custom-wrapper .custom-title {
    font-size: 24px;
  }
  .main-wrapper.custom-wrapper .custom-field + .custom-field {
    margin-top: 20px;
  }
  .main-wrapper.custom-wrapper {
    padding-top: 20px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Resultados desglosado
  -------------------------------------------------------------- */
  .subjects-list .subject-info {
    padding-left: 15px;
  }
  .subjects-list .results {
    order: 10;
    width: 100%;
    height: 80px;
    border: 1px solid #CCC;
    border-width: 0 1px 1px 1px;
  }
  .subjects-list .results .result-item {
    width: 33.3%;
  }
  .subjects-list .list-item {
    flex-wrap: wrap;
    height: auto;
  }
  .subjects-list .list-item {
    flex-wrap: wrap;
    height: auto;
  }
  .subjects-list .subject-info {
    height: 75px;
  }
  .subjects-list .list-item .subject-percentage {
    width: auto;
    margin-left: auto;
    padding-right: 15px;
  }
  .subjects-list .list-item .btn {
    order: 1;
    margin-left: auto;
    margin-right: 0;
    line-height: 1;
  }
  .subjects-list .list-item .message-locked {
    order: 2;
    width: 100%;
    padding: 0 15px 15px 15px;
    text-align: left;
  }
  .subjects-list .list-item .message-locked svg {
    top: 4px;
  }
  .main-wrapper.results-list .qualification {
    padding: 25px 15px;
  }
  .main-wrapper.results-list .qualification .btn {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    margin-top: 15px;
  }
  .main-wrapper.results-list h2 {
    font-size: 24px;
  }
  .main-wrapper.results-list h2 + span.date {
    font-size: 18px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Leccion
  -------------------------------------------------------------- */
  .lesson-item .lesson-score, .review-explain .lesson-score {
    display: flex;
    flex-flow: row wrap;
  }
  .lesson-item .lesson-score span, .review-explain .lesson-score span {
    position: relative;
    left: 10px;
    top: 3px;
  }
  .lesson-item .lesson-score span.options, .review-explain .lesson-score span.options {
    position: static;
    width: 100%;
    display: block;
    padding-top: 10px;
  }
  .lesson-item .lesson-score span.options button:first-child, .review-explain .lesson-score span.options button:first-child {
    margin-left: 0;
  }
  .main-wrapper.single-lesson .lesson-title {
    font-size: 20px;
  }
  .main-wrapper.single-lesson:before {
    height: 300px;
  }
  /* ------------------------------------------------------------- 
  * PLATFORMA: Listado de lecciones
  -------------------------------------------------------------- */
  .quiz-section .quiz-box {
    flex-flow: column nowrap;
  }
  .quiz-section .quiz-list, .quiz-section .quiz-info {
    width: 100%;
  }
  .quiz-section .quiz-list li.current:after {
    display: none;
  }
  .quiz-section .quiz-list {
    padding: 20px 0;
  }
  .quiz-section .quiz-info {
    height: 240px;
  }
  .course-content .chapter-title {
    font-size: 20px;
  }
  .course-content .topic-header img {
    max-width: 44px;
  }
  .course-content .topic-header .glow-item {
    width: 44px;
  }
  .course-content .topic-header .topic-title {
    font-size: 16px;
    padding-left: 15px;
  }
  .course-content {
    padding: 30px 0 0;
  }
  .topic-progress .image-item {
    max-width: 44px;
  }
  .course-content .lesson-list li,
  .course-content .lesson-list li .duration {
    font-size: 15px;
  }
  .course-content .lesson-list li {
    padding-left: 30px;
    padding-right: 0;
  }
  .course-content .lesson-list .level-up {
    position: relative;
    left: 0;
    top: 0;
    transform: none;
    padding: 6px;
    margin-top: 15px;
    left: -30px;
  }
  .course-content .lesson-list .level-up .btn {
    padding: 8px 20px;
    width: auto;
  }
  .course-content .lesson-list li.seen:before {
    top: 12px;
  }
  .course-content .lesson-list .level-up:before {
    width: 14px;
    height: 14px;
    left: 37px;
    top: -7px;
    margin-top: 0;
  }
  .course-content .lesson-list .data-item {
    padding-right: 56px;
    max-width: 100%;
  }
  .topic-progress .progress-bar {
    width: calc(100% - 90px);
    left: 45px;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Pagos
  -------------------------------------------------------------- */
  .main-wrapper.checkout-wrapper .checkout-container, .receipt-wrapper .checkout-container {
    flex-flow: column-reverse nowrap;
  }
  .main-wrapper.checkout-wrapper .checkout-content, .receipt-wrapper .checkout-content {
    width: 100%;
  }
  .main-wrapper.checkout-wrapper .checkout-sidebar, .receipt-wrapper .checkout-sidebar {
    width: 100%;
    padding: 30px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Mi cuenta - subscripcion
  -------------------------------------------------------------- */
  .account-content .subscribe-options {
    flex-flow: row wrap;
  }
  .account-content .subscribe-options .option-item {
    width: 100%;
  }
  .account-content .heading, .complete-account-wrapper .heading {
    margin-top: 30px;
    margin-bottom: 0;
  }
  .account-content .subscribe-options .option-description {
    padding-bottom: 20px;
    padding-top: 12px;
  }
  table.history {
    margin-top: 25px;
    display: block;
  }
  table.history thead,
  table.history tbody,
  table.history tfoot,
  table.history tr,
  table.history td,
  table.history th {
    display: block;
  }
  table.history thead {
    display: none;
  }
  table.history tbody tr {
    border: 1px solid #BBB;
  }
  table.history tbody tr td:last-child {
    border-bottom: 0;
  }
  table.history tbody tr td {
    padding: 12px;
    font-size: 14px;
  }
  table.history tr + tr {
    margin-top: 15px;
  }
  table.history td::before {
    content: attr(data-title);
    display: inline-block;
    color: #000;
    font-weight: 700;
    font-size: 14px;
    margin-right: 8px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Revision Interior
  -------------------------------------------------------------- */
  .main-wrapper .page-title h2 {
    font-size: 22px;
  }
  .main-wrapper .page-title a.return {
    font-size: 14px;
    width: 155px;
  }
  .excercise-data .excercise-title {
    font-size: 18px;
  }
  .excercise-data .time {
    font-size: 18px;
  }
  .excercise-title .excercise-icon {
    max-width: 18px;
  }
  .excercise-review .review-tag {
    padding: 5px 8px;
  }
  .question-box .container {
    flex-flow: column nowrap;
  }
  .question-box .question-left-column,
  .question-box.question-divide .question-wrapper {
    width: 100%;
    max-width: 100%;
  }
  .question-box.question-divide:before {
    display: none;
  }
  .question-box .question-graph {
    padding: 15px;
    text-align: left;
  }
  .question-box .question-graph img {
    display: block;
    margin: 0 auto;
  }
  .question-box .question-graph {
    font-size: 13px;
    line-height: 1.6em;
  }
  .question-box.question-divide .container {
    padding: 0;
  }
  .question-box .question-graph p {
    margin: 10px 0;
  }
  .review-wrapper .results-header .row > div {
    width: 33%;
    max-width: 33%;
    flex: 0 0 33%;
  }
  .review-wrapper .results-header .row > div:nth-child(4),
  .review-wrapper .results-header .row > div:nth-child(5) {
    width: 50%;
    max-width: 50%;
    flex: 0 0 50%;
    margin-top: 10px;
    border-top: 1px dashed rgba(255, 255, 255, 0.25);
    padding-top: 15px;
  }
  .review-wrapper .review-columns .options-cloned {
    display: none !important;
  }
  .review-wrapper .review-columns .options-stick {
    opacity: 1 !important;
  }
  .review-wrapper .review-columns {
    flex-flow: column nowrap;
  }
  .review-wrapper .review-columns .review-explain,
  .review-wrapper .review-columns .review-options {
    width: 100%;
  }
  .review-wrapper .review-columns .review-options {
    text-align: left;
  }
  .review-wrapper .review-links {
    margin-top: 15px;
  }
  .review-wrapper .review-columns .review-options h3 {
    padding-left: 20px;
  }
  .review-wrapper .review-columns .review-options {
    padding-bottom: 0px;
  }
  .review-wrapper .related-grid .lesson-box {
    width: 100%;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Paidout
  -------------------------------------------------------------- */
  .checkout-sidebar .checkout-totals {
    padding-top: 35px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Recibo de pago
  -------------------------------------------------------------- */
  .main-wrapper.receipt-wrapper .receipt-content {
    padding-right: 0;
    padding-top: 25px;
  }
  .main-wrapper.receipt-wrapper .page-title {
    margin-bottom: 20px;
    font-size: 32px;
  }
  .main-wrapper.receipt-wrapper .email-sent h4 {
    font-size: 18px;
  }
  .main-wrapper.receipt-wrapper .shops-list li {
    width: 33.3%;
  }
  .main-wrapper.receipt-wrapper .shops-list li:nth-child(4n) {
    border-right-width: 0;
  }
  .main-wrapper.receipt-wrapper .shops-list li:nth-child(3n) {
    border-right-width: 1px;
  }
  /* ------------------------------------------------------------- 
  * Cursos
  -------------------------------------------------------------- */
  .courses-wrapper .course-col {
    width: 100%;
    padding-right: 0;
  }
  .courses-wrapper .course-row.course-reverse .col-text {
    padding-left: 0;
  }
  .courses-wrapper .course-row .col-text {
    text-align: center;
    padding-right: 0;
  }
  .courses-wrapper .course-row .btn-action {
    margin-top: 10px;
  }
  .courses-wrapper .course-row {
    flex-flow: row wrap;
  }
  .testimonies-page.courses-wrapper .banner-top .banner-title {
    font-size: 36px;
  }
  .testimonies-page.courses-wrapper .banner-top .btn {
    font-size: 18px;
    height: 46px;
    line-height: 46px;
  }
  .courses-wrapper .course-title.title-bg {
    font-size: 20px;
  }
  .courses-wrapper .course-row .title-row {
    font-size: 24px;
    margin-bottom: 15px;
  }
  .courses-wrapper .course-row.course-reverse .col-text {
    padding-top: 25px;
  }
  .courses-wrapper .course-row .description-row {
    text-align: center;
  }
  .courses-wrapper .course-title {
    font-size: 28px;
  }
  .courses-wrapper .title-container .testimony-title {
    font-size: 28px;
  }
  .courses-wrapper .title-container .testimony-title br {
    display: none;
  }
  .courses-wrapper .testimonies-wrapper {
    padding-top: 60px;
  }
  .col-services .service-item {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
  .col-services .service-item + .service-item {
    margin-top: 40px;
  }
  .col-services .services-wrapper {
    flex-flow: column nowrap;
  }
  .courses-wrapper .testimony-description, .col-services .course-description {
    font-size: 16px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Banner
  -------------------------------------------------------------- */
  .main-banner h1 span {
    font-size: 28px;
  }
  .main-banner h1 strong, .main-banner h4 small {
    font-size: 18px;
  }
  .main-banner .btn {
    height: 54px;
    line-height: 54px;
    padding: 0 30px;
    font-size: 17px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Home Nuevo
  -------------------------------------------------------------- */
  body.page-home-nuevo .benefits-wrapper .benefit-content {
    padding-left: 0;
    width: 100%;
  }
  body.page-home-nuevo .benefits-wrapper .container {
    flex-flow: column nowrap;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-title br {
    display: none;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-title {
    font-size: 22px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-list li {
    font-size: 16px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-image {
    width: 120px;
    margin: 0 auto 30px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Planes
  -------------------------------------------------------------- */
  /* Ofertas ----------------------------------------------------*/
  .discount-ribbon .container {
    flex-flow: column nowrap;
    text-align: center;
  }
  .discount-ribbon .discount-title {
    font-size: 26px;
  }
  .discount-ribbon .discount-subtitle {
    font-size: 22px;
  }
  .discount-ribbon .discount-countdown {
    margin-top: 30px;
  }
  .main-wrapper.discount-active .discount-ribbon {
    padding: 30px 0;
    margin-bottom: 40px;
  }
}
@media (max-width: 680px) {
  /* ------------------------------------------------------------- 
  * ERROR 404
  -------------------------------------------------------------- */
  .main-wrapper.error-404 .e404-image {
    width: 45%;
  }
  .main-wrapper.error-404 .e404-text {
    width: 55%;
  }
  .main-wrapper.error-404 .e404-text h3 {
    font-size: 28px;
  }
  .main-wrapper.error-404 .e404-text h1 {
    font-size: 100px;
  }
  .main-wrapper.error-404 .e404-text h2 {
    font-size: 28px;
  }
  .main-wrapper.error-404 .e404-description {
    font-size: 16px;
  }
  .main-wrapper.error-404 .links {
    font-size: 16px;
  }
  .main-wrapper.error-404 .e404-text {
    width: 100%;
    text-align: center;
  }
  .main-wrapper.error-404 .e404-image {
    width: 100%;
    text-align: center;
  }
  .main-wrapper.error-404 .e404-image img {
    max-width: 70%;
    margin: 20px auto 0;
  }
  .main-wrapper.error-404 .e404-text h2 {
    text-align: center;
  }
  .main-wrapper.error-404 .e404-description::after {
    margin: 25px auto;
  }
  /* ------------------------------------------------------------- 
  * ERROR MANTENIMIENTO
  -------------------------------------------------------------- */
  .main-wrapper.error-mant .mant-title h1 {
    font-size: 36px;
    line-height: 1.2em;
    margin-bottom: 30px;
  }
  html.html-mantenimiento {
    height: 100%;
  }
  .main-wrapper.error-mant {
    min-height: 0;
    padding-top: 40px;
    height: 100%;
  }
  .main-wrapper.error-mant .mant-title {
    display: block;
    text-align: center;
  }
  .main-wrapper.error-mant .mant-row {
    margin-top: 0;
    display: block;
  }
  .main-wrapper.error-mant .container {
    flex-flow: column nowrap;
    height: 100%;
    min-height: 0;
  }
  .main-wrapper.error-mant .e404-description {
    width: 90%;
    margin: 0 auto;
  }
  .main-wrapper.error-mant .e404-image {
    margin: 0 auto;
    width: 80%;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Home Nuevo
  -------------------------------------------------------------- */
  body.page-home-nuevo .main-banner .img-bg {
    width: auto;
    height: 100%;
  }
}
@media (max-width: 600px) {
  .header-wrapper.header-simple {
    width: 100%;
    max-width: none;
  }
  .header-options .user-option .user-name {
    display: none;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Home
  -------------------------------------------------------------- */
  .promo-examen .container {
    flex-flow: row wrap;
  }
  .promo-examen h4 {
    width: 100%;
    text-align: center;
  }
  .promo-examen .btn {
    margin: 20px auto 0;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Planes
  -------------------------------------------------------------- */
  /* Precios  ---------------------------------------------------*/
  .plans-wrapper .row-plans .plan-item {
    width: 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  /* Banner -----------------------------------------------------*/
  .promo-banner p {
    font-size: 16px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Contacto
  -------------------------------------------------------------- */
  /* Contenido --------------------------------------------------*/
  .contact-wrapper h1,
  .contact-wrapper h2 {
    font-size: 20px;
  }
  .contact-wrapper .contact-column {
    width: 100%;
    max-width: none;
  }
  .contact-wrapper .contact-image {
    width: 60%;
    margin-top: -100px;
    left: 0;
    top: 0;
    margin-left: auto;
  }
  .contact-wrapper .contact-image img {
    text-align: right;
  }
  /* Mision -----------------------------------------------------*/
  .our-team .team-list .team-item {
    width: 100%;
  }
  .our-team h3 {
    font-size: 36px;
    margin-bottom: 10px;
  }
  .mission-wrapper .banner-top h2,
  .mission-wrapper .banner-top h1 {
    font-size: 38px;
  }
  .mission-wrapper .banner-top {
    height: 360px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Blog
  -------------------------------------------------------------- */
  .post-item .post-title {
    font-size: 22px;
  }
  .post-item .post-meta .line-sep {
    margin: 0 5px;
  }
  .header-wrapper.header-blog .container {
    flex-flow: row wrap;
  }
  .header-wrapper.header-blog .blog-search {
    width: 100%;
  }
  .header-wrapper.header-blog {
    height: 120px;
    text-align: center;
  }
  .header-wrapper.header-blog .logo-wrap {
    margin: 0 auto;
  }
  .single-post .post-categories a {
    padding: 0 6px;
  }
  .single-post .post-title {
    margin: 15px 0;
    font-size: 26px;
  }
  .blog-wrapper .container .blog-content {
    padding-left: 0;
  }
  .single-post .social-share,
  .single-post .social-share-plugin {
    margin-bottom: 20px;
    position: relative;
    left: 0;
    top: 0;
  }
  .single-post .social-share #st-1,
  .single-post .social-share-plugin #st-1 {
    text-align: left !important;
  }
  .single-post .social-share #st-1 .st-btn,
  .single-post .social-share-plugin #st-1 .st-btn {
    display: inline-block !important;
  }
  .single-post .social-share #st-1 .st-btn + .st-btn,
  .single-post .social-share-plugin #st-1 .st-btn + .st-btn {
    margin: 0 0 0 4px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Blog
  -------------------------------------------------------------- */
  .remodal.modal-promo .modal-padder {
    padding-left: 0%;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Testimonios
  -------------------------------------------------------------- */
  .connect-us h2 {
    display: block;
  }
  .wizi-map h2 {
    font-size: 20px;
  }
  .our-testimonies .testimonies-header h4 {
    font-size: 28px;
  }
  /* ------------------------------------------------------------- 
  * Landscape: Pagos
  -------------------------------------------------------------- */
  .main-wrapper.checkout-wrapper .checkout-sidebar, .receipt-wrapper .checkout-sidebar {
    padding: 20px;
  }
  .main-wrapper.checkout-wrapper .checkout-content, .receipt-wrapper .checkout-content {
    padding: 20px;
  }
  .checkout-sidebar .checkout-title,
  .checkout-sidebar .checkout-totals h3,
  .checkout-content .page-title {
    font-size: 30px;
  }
  .checkout-sidebar .checkout-totals .price,
  .checkout-content .form-title {
    font-size: 24px;
  }
  .checkout-content .form-title {
    margin-top: 30px;
    margin-bottom: 15px;
  }
  .checkout-content .payment-methods li h4 {
    font-size: 16px;
  }
  .checkout-content .btn-checkout {
    margin-top: 30px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Practicas Personalizadas
  -------------------------------------------------------------- */
  .main-wrapper.custom-wrapper .custom-field .subjects-items {
    grid-template-columns: repeat(1, 100%);
    grid-gap: 3px 0;
    width: 100%;
    padding-right: 0;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Home Nuevo
  -------------------------------------------------------------- */
  body.page-home-nuevo .catalog-description {
    font-size: 16px;
    text-align: center;
  }
  body.page-home-nuevo .catalog-links {
    justify-content: center;
  }
  body.page-home-nuevo .banner-catalog {
    width: 100%;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-title {
    text-align: center;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
  }
  .testimony-ribbon .container {
    text-align: center;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
  }
  .testimony-ribbon .testimony-avatar {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .testimony-ribbon .testimony-text {
    width: 100%;
  }
  .testimony-ribbon .testimony-button.button-inside {
    margin-top: 25px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Subir de Nivel
  -------------------------------------------------------------- */
  .level-up-wrap .level-up .level-item .result-icon {
    width: 80px;
    text-align: center;
    margin: 0 auto;
  }
  .level-up-wrap .level-up .level-item .icon-glow {
    width: auto;
  }
  .level-up-wrap .glow-item {
    width: 80px;
  }
  .level-up-wrap .level-arrow {
    font-size: 24px;
    margin-left: 12px;
  }
  /* Touch Targets Optimization for Footer Menu Links */
  #footer.footer-wrapper.footer-full .footer-menu li {
    display: block;
  }
  #footer.footer-wrapper.footer-full .footer-menu li + li,
  #footer.footer-wrapper.footer-full .footer-menu > a + a {
    margin-top: 0;
  }
  #footer.footer-wrapper.footer-full .footer-menu a {
    display: block;
    padding: 14px 0;
  }
}
/* ------------------------------------------------------------- 
* RESPONSIVE: MOBILE
-------------------------------------------------------------- */
@media (max-width: 560px) {
  /* ------------------------------------------------------------- 
  * Mobile: Home
  -------------------------------------------------------------- */
  #footer.footer-wrapper.footer-full {
    padding-top: 40px;
    padding-bottom: 30px;
  }
  #footer.footer-wrapper.footer-full .footer-text {
    margin-top: 40px;
  }
  .plans-wrapper .plan-item .plan-body ul li span {
    font-size: 100%;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Leccion
  -------------------------------------------------------------- */
  .menu.menu-secondary {
    height: auto;
  }
  .menu.menu.menu-secondary li {
    display: block;
    width: 100%;
    text-align: left;
    border: 0;
    padding: 0;
    border-top: 1px solid #ccc;
  }
  .menu.menu.menu-secondary li a {
    display: block;
    width: 100%;
    border: 0;
    padding: 0 20px;
  }
  .menu.menu.menu-secondary li:last-child {
    border-bottom: 1px solid #CCC;
  }
  .secondary-navigation .container {
    padding: 0;
  }
  .lesson-item .author-box .author-title a, .review-explain .author-box .author-title a {
    font-size: 13px;
    line-height: 1.5em;
  }
  .lesson-item .lesson-score span, .review-explain .lesson-score span {
    left: 4px;
  }
  .lesson-item .lesson-score h4, .review-explain .lesson-score h4,
  .lesson-item .lesson-score span, .review-explain .lesson-score span {
    font-size: 15px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Revision
  -------------------------------------------------------------- */
  .section-item.review-filters .section-header p {
    left: 24px;
  }
  .section-item .section-content .row-column {
    width: 100%;
  }
  .section-item.review-resume .section-content .custom-row {
    justify-content: flex-start !important;
    text-align: left;
  }
  .review-wrapper .review-columns .review-options {
    display: none;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Examen
  -------------------------------------------------------------- */
  .main-wrapper.test-wrapper h2.page-title {
    font-size: 28px;
    margin-bottom: 15px;
  }
  .main-wrapper.test-wrapper h3 {
    font-size: 22px;
  }
  .main-wrapper.test-wrapper .test-list .test-item {
    padding: 20px;
  }
  .test-list span.done svg {
    width: 32px;
    right: 20px;
    top: 20px;
  }
  .main-wrapper.test-wrapper .test-list .time {
    margin-right: 20px;
  }
  .main-wrapper.test-wrapper .test-list .test-item.active {
    padding: 40px 20px;
  }
  .test-list span.done {
    top: 35px;
  }
  .main-wrapper.test-wrapper .test-list .test-item:before {
    left: 49px;
  }
  .main-wrapper.test-wrapper .results-mobile .headings h4 {
    font-size: 20px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Recibo de pago
  -------------------------------------------------------------- */
  .main-wrapper.receipt-wrapper {
    padding-top: 0;
  }
  .main-wrapper.receipt-wrapper .receipt-content {
    padding-left: 15px;
    padding-right: 15px;
  }
  .main-wrapper.receipt-wrapper .page-title {
    font-size: 28px;
  }
  .main-wrapper.receipt-wrapper .receipt-content h5 {
    font-size: 18px;
  }
  .main-wrapper.receipt-wrapper .receipt-content {
    font-size: 16px;
  }
  .main-wrapper.receipt-wrapper .shops-list li {
    width: 50%;
  }
  .main-wrapper.receipt-wrapper .shops-list li:nth-child(3n) {
    border-right-width: 0;
  }
  /* ------------------------------------------------------------- 
  * ERROR 404
  -------------------------------------------------------------- */
  .main-wrapper.error-404 .e404-text h3 {
    font-size: 20px;
  }
  .main-wrapper.error-404 .e404-text h1 {
    font-size: 80px;
  }
  .main-wrapper.error-404 .e404-text h2 {
    font-size: 24px;
  }
  .main-wrapper.error-404 .e404-text h4 {
    font-size: 18px;
  }
  .main-wrapper.error-404 .e404-description {
    font-size: 16px;
  }
  .main-wrapper.error-404 .links {
    font-size: 16px;
  }
}
@media (max-width: 520px) {
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Mi cuenta
  -------------------------------------------------------------- */
  .account-content .heading, .complete-account-wrapper .heading {
    font-size: 20px;
  }
  .account-content .form-rows .form-field, .complete-account-wrapper .form-rows .form-field {
    width: 100%;
    padding: 10px 15px;
  }
  .account-content .form-field input[type=text],
  .account-content .form-field input[type=select],
  .account-content .form-field input[type=password],
  .account-content .form-field input[type=number],
  .account-content .form-field input[type=date],
  .account-content .form-field select,
  .complete-account-wrapper .form-field input[type=text],
  .complete-account-wrapper .form-field input[type=select],
  .complete-account-wrapper .form-field input[type=password],
  .complete-account-wrapper .form-field input[type=number],
  .complete-account-wrapper .form-field input[type=date],
  .complete-account-wrapper .form-field select {
    padding: 0 10px;
  }
  .account-content .heading-top, .complete-account-wrapper .heading-top {
    flex-flow: row wrap;
  }
  .account-content .heading-top .heading, .complete-account-wrapper .heading-top .heading {
    width: 100%;
    margin-bottom: 10px;
  }
}
@media (max-width: 480px) {
  /* ------------------------------------------------------------- 
  * Tablet: Home
  -------------------------------------------------------------- */
  .main-banner h1 span {
    font-size: 24px;
  }
  .main-banner h1 strong, .main-banner h4 small {
    font-size: 17px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Planes
  -------------------------------------------------------------- */
  /* Precios  ---------------------------------------------------*/
  .plans-wrapper .plans-title {
    font-size: 20px;
  }
  .plans-wrapper .plans-title span {
    display: inline;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Garantia
  -------------------------------------------------------------- */
  /* Contenido --------------------------------------------------*/
  .guarantee-wrapper .page-title {
    font-size: 24px;
  }
  .guarantee-wrapper .guarantee-content, .guarantee-wrapper .page-content {
    font-size: 15px;
  }
  .guarantee-wrapper .guarantee-content h2, .guarantee-wrapper .page-content h2 {
    font-size: 19px;
  }
  .guarantee-wrapper .guarantee-plans h2 {
    font-size: 24px;
  }
  .guarantee-wrapper .guarantee-plans p {
    font-size: 15px;
  }
  .guarantee-wrapper .guarantee-plans .action a {
    font-size: 18px;
  }
  .testimonies-page .banner-top h1 {
    font-size: 32px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Auth
  -------------------------------------------------------------- */
  .log-form .log-header h1 {
    font-size: 28px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Contacto
  -------------------------------------------------------------- */
  /* Contenido --------------------------------------------------*/
  .contact-wrapper .contact-image {
    width: 100%;
    margin-top: 0px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Blog
  -------------------------------------------------------------- */
  .single-post .post-content {
    font-size: 15px;
  }
  .blog-wrapper .blog-title {
    font-size: 28px;
  }
  /* ------------------------------------------------------------- 
  * Mobile: Promo
  -------------------------------------------------------------- */
  .remodal.modal-promo {
    padding: 20px;
  }
  .remodal.modal-promo h3 {
    font-size: 20px;
  }
  .remodal.modal-promo .modal-content {
    padding-top: 15px;
  }
  .remodal.modal-promo img.thumb-up {
    width: 60%;
    opacity: 0.2;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Promo
  -------------------------------------------------------------- */
  .main-wrapper.custom-wrapper .custom-footer .btn {
    width: 100%;
  }
  .main-wrapper {
    padding-bottom: 25px;
  }
  .main-wrapper.guarantee-wrapper {
    padding-bottom: 0;
  }
  .main-wrapper.plans-wrapper {
    padding-bottom: 0;
  }
  /* ------------------------------------------------------------- 
  * PLATFORMA: Listado de lecciones
  -------------------------------------------------------------- */
  .main-wrapper.lessons-wrapper {
    padding-top: 0;
  }
  .topic-progress .progress-bar {
    height: 6px;
    margin-top: -3px;
  }
  .quiz-section .quiz-list li a {
    padding-left: 30px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .quiz-section .quiz-list li a i {
    height: 28px;
    width: 28px;
    line-height: 26px;
    font-size: 14px;
    top: 2px;
    left: 10px;
    position: absolute;
  }
  .course-content .topic-header img {
    max-width: 38px;
  }
  .course-content .topic-header .glow-item {
    width: 38px;
  }
  .course-content .topic-header .topic-title {
    padding-left: 14px;
  }
  .course-content .topic-header .topic-numbers {
    font-size: 14px;
    width: 52px;
    text-align: right;
  }
  .course-content .lesson-list li, .course-content .lesson-list li .duration {
    font-size: 14px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Revision Interior
  -------------------------------------------------------------- */
  .review-wrapper .review-columns h3 {
    font-size: 22px;
  }
  .review-wrapper .results-header .row > div {
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
    text-align: left;
    padding-top: 10px;
    padding-left: 0;
    padding-right: 0;
    margin-top: 10px;
    border-top: 1px dashed rgba(255, 255, 255, 0.25);
  }
  .review-wrapper .results-header .row > div h4 {
    text-align: left;
  }
  .review-wrapper .results-header .row > div:first-child {
    padding-top: 0;
    border-top: 0;
    margin-top: 0;
  }
  .review-wrapper .review-actions .review-stick .container {
    flex-flow: row wrap;
  }
  .review-wrapper .review-actions .btn-return {
    width: 100%;
    text-align: center;
  }
  .question-navigation {
    width: 100%;
    margin-top: 15px;
  }
  .review-wrapper .review-actions,
  .review-wrapper .review-actions .review-stick,
  .review-wrapper .review-actions .review-stick .container {
    height: 117px;
  }
  .question-navigation {
    text-align: center;
  }
  .review-wrapper .review-actions .review-stick.sticked {
    position: relative;
  }
  .container.container-explain {
    padding: 0;
  }
  .question-box.question-divide .question-wrapper .question-header,
  .question-box.question-divide .question-wrapper .question-item,
  .question-box.question-divide .answers-options {
    padding-left: 10px;
    padding-right: 10px;
  }
  .rate-options {
    display: block;
    padding-top: 10px;
  }
  .rate-options .btn:first-child {
    margin-left: 0;
  }
  .review-wrapper .review-links li a {
    padding: 12px 20px;
  }
  .main-wrapper .page-title,
  .excercise-data {
    flex-flow: column nowrap;
    text-align: left;
  }
  .main-wrapper .page-title > *,
  .excercise-data > * {
    width: 100%;
  }
  .question-box .question-graph {
    padding-left: 10px;
    padding-right: 10px;
  }
  .question-wrapper {
    width: 100%;
    margin: 0;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Ejercicio
  -------------------------------------------------------------- */
  .review-wrapper.review-explain .container {
    padding-left: 0;
    padding-right: 0;
  }
  .review-writted {
    overflow: auto;
  }
  .review-wrapper.review-explain .row {
    margin-left: 0;
    margin-right: 0;
  }
  .excercise-status .container {
    flex-flow: column nowrap;
    text-align: center;
  }
  .excercise-status .container h5 {
    font-size: 20px;
    text-align: center;
    margin: 0 0 10px;
  }
  .excercise-bar .excercise-status {
    height: auto;
  }
  .excercise-bar #next-question.active {
    width: 100%;
    text-align: center;
  }
  .question-item .question-content {
    width: auto;
  }
  .question-box .question-graph .question-content {
    width: 480px;
    overflow: auto;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Examen
  -------------------------------------------------------------- */
  .main-wrapper {
    padding: 30px 0;
  }
  .main-wrapper.mission-wrapper {
    padding-top: 0;
    padding-bottom: 0;
  }
  .main-wrapper.testimonies-page {
    padding-bottom: 0;
    padding-top: 0;
  }
  .main-wrapper.test-wrapper h2.page-title {
    font-size: 28px;
  }
  .main-wrapper.test-wrapper h3,
  .main-wrapper.test-wrapper .test-info .headings h4 {
    margin-top: 15px;
    font-size: 22px;
  }
  .main-wrapper.test-wrapper .test-info .headings h5 {
    font-size: 16px;
  }
  .test-list .item-footer .btn + .btn {
    margin-left: 15px;
  }
  .test-list .item-footer {
    margin-top: 15px;
  }
  .main-wrapper.test-wrapper .test-list .test-item {
    padding: 10px;
  }
  .main-wrapper.test-wrapper .test-list .time {
    width: 46px;
  }
  .main-wrapper.test-wrapper .test-list .test-item:before {
    left: 30px;
  }
  .main-wrapper.test-wrapper .test-list .test-data h5 {
    font-size: 18px;
  }
  .test-list span.done {
    top: 23px;
    right: 10px;
  }
  .main-wrapper.test-wrapper .test-list .test-item.active {
    padding: 30px 10px;
  }
  .main-wrapper.test-wrapper .test-item.active .time {
    width: 46px;
  }
  .main-wrapper.test-wrapper .test-list .test-item .btn {
    padding: 8px 14px;
  }
  .main-wrapper.test-wrapper .test-list .test-item.active {
    padding-bottom: 70px;
  }
  .main-wrapper.test-wrapper .test-list .test-item .btn {
    position: absolute;
    left: 75px;
    bottom: 35px;
  }
  .main-wrapper.test-wrapper .test-list .test-item:before {
    top: 0;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Completa tu perfil
  -------------------------------------------------------------- */
  .complete-account-wrapper .complete-form .form-field {
    padding: 10px 15px;
  }
  .complete-account-wrapper .complete-form .form-field {
    width: 100%;
  }
  .complete-account-wrapper h2 {
    font-size: 32px;
    margin-bottom: 15px;
  }
  .complete-account-wrapper h3 {
    font-size: 24px;
  }
  .complete-account-wrapper .form-action .btn {
    width: 100%;
  }
  .complete-account-wrapper p {
    font-size: 16px;
  }
  .complete-account-wrapper .container {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Paidout
  -------------------------------------------------------------- */
  .paidout .paidout-message span,
  .paidout .paidout-content h4 {
    font-size: 22px;
  }
  .paidout .paidout-footer {
    flex-flow: row wrap;
  }
  .paidout .paidout-footer h3 {
    width: 100%;
    margin-bottom: 20px;
  }
  .paidout .paidout-footer a {
    width: 100%;
    text-align: center;
  }
  .paidout .paidout-message {
    padding-top: 10px;
  }
  .main-wrapper .checkout-content .page-title {
    align-items: flex-start;
  }
  .checkout-sidebar .checkout-title, .checkout-sidebar .checkout-totals h3, .checkout-content .page-title {
    font-size: 26px;
  }
  /* ------------------------------------------------------------- 
  * Cursos
  -------------------------------------------------------------- */
  .courses-wrapper .title-container .testimony-title,
  .courses-wrapper .course-title {
    font-size: 24px;
  }
  .testimonies-page.courses-wrapper .banner-top .banner-title {
    font-size: 30px;
  }
  .testimonies-page.courses-wrapper .banner-top .btn {
    padding: 0 20px;
    font-size: 16px;
  }
  .courses-wrapper .testimony-description {
    margin-bottom: 30px;
  }
  .promo-banner .btn {
    padding: 0 18px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Recibo de pago
  -------------------------------------------------------------- */
  .main-wrapper .page-title {
    align-items: flex-start;
  }
  .main-wrapper.receipt-wrapper .shops-list li {
    padding: 10px 5px;
  }
  .main-wrapper.receipt-wrapper .shops-list li img {
    height: 60px;
  }
  h6 {
    font-size: 14px;
  }
  /* ------------------------------------------------------------- 
  * ERROR MANTENIMIENTO
  -------------------------------------------------------------- */
  .main-wrapper.error-mant .mant-title h1 {
    font-size: 28px;
    line-height: 1.2em;
    margin-bottom: 25px;
  }
  .main-wrapper.error-mant {
    min-height: 0;
    padding: 20px 0;
  }
  .main-wrapper.error-mant .e404-description {
    width: 95%;
    font-size: 14px;
    margin: 0 auto;
  }
  .main-wrapper.error-mant .e404-image {
    margin: 0 auto;
    width: 100%;
  }
  /* ------------------------------------------------------------- 
  * MODAL
  -------------------------------------------------------------- */
  .remodal.modal-error .modal-content.modal-sent {
    padding-left: 0;
    text-align: center;
  }
  .remodal.modal-error .modal-content.modal-sent .warning-image {
    margin-bottom: 15px;
    position: relative;
    display: inline-block;
  }
  .remodal.modal-error .modal-content.modal-sent h3 {
    font-size: 24px;
  }
  .remodal.modal-error .modal-content.modal-sent p {
    font-size: 14px;
  }
}
@media (max-width: 420px) {
  .main-wrapper .page-title {
    font-size: 28px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: FAQ
  -------------------------------------------------------------- */
  .faq-footer .faq-actions a + a {
    margin-left: 0;
    margin-top: 10px;
  }
  .faq-footer .faq-actions a {
    width: 100%;
  }
  .faq-item .faq-title {
    font-size: 16px;
  }
  .faq-wrapper .faq-categories .faq-cat h2 {
    font-size: 18px;
  }
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Examen
  -------------------------------------------------------------- */
  .main-wrapper.results-list .result-header {
    flex-flow: column nowrap;
    align-items: flex-start;
  }
  .main-wrapper.results-list .header-info {
    margin-bottom: 15px;
  }
  .mission-wrapper .mission-content h2,
  .our-team h2 {
    font-size: 28px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Listado de lecciones
  -------------------------------------------------------------- */
  .suggests-wrapper .suggest-left h3, .suggests-wrapper .suggest-left h4 {
    font-size: 24px;
  }
  .suggests-wrapper .suggest-left .btn {
    margin-top: 20px;
    font-size: 16px;
  }
  /* ------------------------------------------------------------- 
  * Tablet: Planes
  -------------------------------------------------------------- */
  /* Ofertas ----------------------------------------------------*/
  .discount-ribbon .discount-title {
    font-size: 20px;
  }
  .discount-ribbon .discount-subtitle {
    font-size: 16px;
    margin-top: 10px;
  }
  .discount-ribbon .discount-countdown {
    margin-top: 30px;
  }
  .discount-ribbon .discount-countdown .countdown-label {
    font-size: 18px;
  }
  .discount-ribbon .discount-countdown .countdown-numb {
    font-size: 20px;
  }
  .main-wrapper.discount-active .discount-ribbon {
    padding: 30px 0;
    margin-bottom: 30px;
  }
  .plans-wrapper .plan-item .plan-date {
    padding-right: 80px;
    padding-left: 0;
  }
}
@media (max-width: 380px) {
  /* ------------------------------------------------------------- 
  * PLATAFORMA: Examen
  -------------------------------------------------------------- */
  .main-wrapper.test-wrapper .test-list .test-item {
    flex-flow: row wrap;
  }
  .main-wrapper.test-wrapper .test-list .test-item .btn {
    margin-left: 64px;
  }
  .main-wrapper.test-wrapper .test-list .test-data {
    width: calc(100% - 66px);
  }
  body.page-home-nuevo .banner-catalog {
    margin-top: 25px;
  }
}
@media (max-width: 360px) {
  .main-wrapper.results-list .qualification .qualification-title {
    font-size: 21px;
  }
  .list-column .btn-wrap .btn {
    width: 100%;
  }
  .main-wrapper.single-lesson .return-table button.btn, .main-wrapper.single-lesson .return-table a.btn {
    width: 100%;
    text-align: center;
  }
  /* ------------------------------------------------------------- 
  * Mobile: Home Nuevo
  -------------------------------------------------------------- */
  .header-options .option-item {
    padding: 6px;
  }
  body.page-home-nuevo .connect-us h2 {
    font-size: 20px;
  }
  body.page-home-nuevo .promo-banner .container p {
    font-size: 18px;
  }
  body.page-home-nuevo .main-banner h1 span.span-big {
    font-size: 28px;
  }
  body.page-home-nuevo .main-banner h1 span {
    font-size: 20px;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-title {
    text-align: center;
  }
  body.page-home-nuevo .benefits-wrapper .benefit-list {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-flow: column nowrap;
  }
}
/* ------------------------------------------------------------------
 * Landings (.landing-page): PAA carga nuevo.css DESPUÉS de style.css.
 * module_results + responsive en nuevo redefinen .promo-banner (padding 80px,
 * margin-top 60px, breakpoints distintos a 1280px, etc.). UNAM solo usa
 * style.css → el promo se ve distinto. Re-alineamos con style.css usando
 * mayor especificidad (.landing-page .promo-banner).
 * ------------------------------------------------------------------ */
.landing-page .promo-banner {
  margin-top: 0;
  padding: 120px 0;
}

.landing-page .promo-banner .container {
  z-index: 2;
}

.landing-page .promo-banner img.promo-bg {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  min-height: 100%;
  height: auto;
  object-fit: cover;
  z-index: 0;
}

.landing-page .promo-banner h3 {
  margin: 0;
  color: #fff;
}

/* Anula _landscape.scss @1280px para este banner (UNAM no pasa por nuevo.css) */
@media (max-width: 1280px) {
  .landing-page .promo-banner {
    margin-top: 0;
    padding: 120px 0;
  }
  .landing-page .promo-banner h2 {
    font-size: 32px;
  }
  .landing-page .promo-banner h3 {
    font-size: 32px;
    color: #fff;
  }
  .landing-page .promo-banner p {
    font-size: 28px;
    max-width: none;
    margin: 0;
  }
  .landing-page .promo-banner .btn {
    font-size: 18px;
    font-weight: 400;
  }
  .landing-page .promo-banner img.promo-bg {
    width: 100%;
    min-height: 100%;
    height: auto;
    max-width: none;
    object-fit: cover;
  }
}
@media (max-width: 991px) {
  .landing-page .promo-banner {
    margin-top: 80px;
  }
  .landing-page .promo-banner h2 {
    font-size: 32px;
  }
  .landing-page .promo-banner h3 {
    font-size: 26px;
    color: #fff;
  }
  .landing-page .promo-banner p {
    font-size: 18px;
    max-width: 640px;
    margin: 0 auto;
  }
  .landing-page .promo-banner .btn {
    font-size: 16px;
    font-weight: 500;
  }
  .landing-page .promo-banner img.promo-bg {
    width: auto;
    height: 100%;
    max-width: none;
  }
}
@media (max-width: 767px) {
  .landing-page .promo-banner {
    padding: 40px 0;
    margin-top: 40px;
  }
  .landing-page .promo-banner .btn {
    min-width: 200px;
  }
  .landing-page .promo-banner .container a.btn {
    margin-top: 30px;
  }
  .landing-page .promo-banner p {
    font-size: 16px;
  }
  .landing-page .promo-banner img.promo-bg {
    height: auto;
    width: 100%;
    min-width: 100%;
  }
}
/* UNAM no carga _mobile.scss de nuevo; evitamos padding extra del botón */
@media (max-width: 480px) {
  .landing-page .promo-banner .btn {
    padding: 0;
  }
}
