@font-face {
  font-family: PlayfairDisplay-Black;
  src: url(../fonts/PlayfairDisplay-Black.ttf); }

@font-face {
  font-family: PlayfairDisplay-Bold;
  src: url(../fonts/PlayfairDisplay-Bold.ttf); }

@font-face {
  font-family: PlayfairDisplay-Regular;
  src: url(../fonts/PlayfairDisplay-Regular.ttf); }

@font-face {
  font-family: Montserrat-Light;
  src: url(../fonts/Montserrat-Light.otf); }

@font-face {
  font-family: Montserrat-SemiBold;
  src: url(../fonts/Montserrat-SemiBold.ttf); }

@font-face {
  font-family: Montserrat-Regular;
  src: url(../fonts/Montserrat-Regular.otf); }

@font-face {
  font-family: Montserrat-Bold;
  src: url(../fonts/Montserrat-Bold.ttf); }

html {
  background: #fff; }

body {
  line-height: 1.2;
  padding-bottom: 110px;
  /*	@media (min-width: 768px) { 
		overflow: auto;
	}*/ }

#zocalo {
  display: none; }

#zocalo.active {
  display: block;
  width: calc(100% - 6px);
  position: absolute;
  bottom: 3px;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-animation-duration: 15s;
  animation-duration: 15s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-name: flash;
  animation-name: flash; }

@-webkit-keyframes flash {
  0%, 20%, 40%, 60%, 80%, 100% {
    opacity: 1; }
  26%, 46%, 66%, 86% {
    opacity: 0; } }

@keyframes flash {
  /*0%, 50%, 100% {*/
  0%, 20%, 40%, 60%, 80%, 100% {
    opacity: 1; }
  /*25%, 75% {*/
  26%, 46%, 66%, 86% {
    opacity: 0; } }

textarea {
  resize: vertical; }

.progress-big {
  height: 40px !important; }

.progress-big > div {
  font-size: 30px;
  line-height: 37px; }

.wrapper {
  width: 100%;
  /* whatever width you want */
  display: inline-block;
  position: relative; }

.wrapper:after {
  padding-top: 56.25%;
  /* 16:9 ratio */
  display: block;
  content: ''; }

.main {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background-color: black;
  color: white; }
  .main > * {
    width: 100%;
    height: 100%; }

.contenedor-centrador {
  width: 100%;
  height: 100%;
  display: table; }

.centrador {
  display: table-cell;
  vertical-align: middle; }

.nowrap {
  white-space: nowrap; }

.mb-15 {
  margin-bottom: 15px; }

.degradado_principal {
  background: #FFFFFF;
  background: -moz-linear-gradient(top, #FFFFFF 0%, white 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, #FFFFFF), color-stop(100%, white));
  background: -webkit-linear-gradient(top, #FFFFFF 0%, white 100%);
  background: -o-linear-gradient(top, #FFFFFF 0%, white 100%);
  background: -ms-linear-gradient(top, #FFFFFF 0%, white 100%);
  background: linear-gradient(to bottom, #FFFFFF 0%, white 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#000000', GradientType=0 ); }

#logo_navbar {
  margin-top: 0px;
  margin-left: 0px;
  height: 40px; }
  @media (min-width: 768px) {
    #logo_navbar {
      margin-top: 21px;
      margin-left: 15px;
      height: 59px; } }

.navbar-brand {
  padding: 5px; }
  @media (min-width: 768px) {
    .navbar-brand {
      padding: 2px; } }

.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:focus,
.navbar-default .navbar-nav > .active > a:hover {
  background: none;
  box-shadow: none;
  color: #000000;
  position: relative; }

@media (min-width: 768px) {
  .navbar-default .navbar-nav > .active > a:after,
  .navbar-default .navbar-nav > li:hover > a:after {
    content: '';
    position: absolute;
    width: calc(100% - 30px);
    height: 3px;
    bottom: 28px;
    left: 15px;
    background-color: #002E5D; } }

.navbar-nav > li > a {
  font-family: "Montserrat-SemiBold";
  font-size: 16px;
  text-decoration: none; }

.navbar-default .navbar-nav > li > a,
.navbar-default .navbar-nav > li > a:hover {
  color: #002E5D; }

/* Estilo resolucion mayor a un celular */
@media (min-width: 768px) {
  #menu {
    margin-right: 25px; }
  .navbar-nav > li > a {
    padding-top: 45px;
    padding-bottom: 40px; } }

.navbar-default {
  border-radius: 0;
  background-color: #fff;
  background-image: none; }
  @media (min-width: 768px) {
    .navbar-default {
      border: none; } }

#footer {
  background-color: #002E5D;
  font-family: "Montserrat-Light";
  color: #fff;
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  width: 100%;
  text-align: center;
  position: relative;
  padding-top: 8px;
  padding-bottom: 6px;
  margin-top: 70px;
  /* Estilo resolucion mayor a un celular */ }
  @media (min-width: 768px) {
    #footer {
      padding-bottom: 0px;
      margin-top: 0;
      position: fixed;
      bottom: 0;
      height: 30px; } }
  #footer .logo-livedirecto {
    position: absolute;
    width: 167px;
    bottom: 50px;
    left: 0;
    right: 0;
    margin: 0 auto; }

.menu_externo {
  width: 100%;
  height: 105px;
  background-color: #D40F04;
  position: relative;
  padding-top: 23px; }
  .menu_externo .menu_externo__logo {
    width: 245px;
    display: block; }

.home .header {
  color: #D40F04;
  font-family: "Montserrat-Regular";
  font-size: 41px;
  text-align: center;
  margin-top: 35px;
  margin-bottom: 40px; }

.home .grupo {
  cursor: pointer;
  font-family: "Montserrat-SemiBold";
  font-size: 20px;
  color: #002E5D;
  background-color: #D40F04;
  width: 268px;
  border-radius: 20px;
  text-align: center;
  padding-left: 20px;
  padding-right: 20px;
  padding-top: 7px;
  padding-bottom: 7px;
  display: block;
  margin: 21px  auto; }

body.grupo .logo {
  width: 100%;
  max-width: 305px;
  display: block;
  margin: 18px auto 56px; }

body.grupo .contenido {
  padding-top: 24px; }
  @media (min-width: 768px) {
    body.grupo .contenido {
      padding-top: 129px; } }

body.grupo input {
  height: 42px;
  font-size: 14px;
  font-family: "Montserrat-Regular";
  color: #4a5861;
  margin-bottom: 18px;
  border-color: #002E5D; }

@media (min-width: 768px) {
  body.grupo .columna_1 {
    padding-right: 50px;
    border-right: 2px solid #002E5D; } }

@media (min-width: 768px) {
  body.grupo .columna_2 {
    padding-left: 50px;
    border-left: 2px solid #002E5D;
    position: relative;
    left: -2px; } }

body.grupo .titulo {
  font-family: "Montserrat-Regular";
  font-size: 46px;
  line-height: 50px;
  color: #D40F04;
  margin-bottom: 20px;
  padding-top: 14px; }

body.grupo .subtitulo {
  font-family: "Montserrat-Regular";
  font-size: 17px;
  margin-bottom: 25px;
  color: #002E5D; }

body.grupo .descripcion {
  color: #4a5861;
  font-family: "Montserrat-Regular";
  font-size: 14px;
  padding-bottom: 15px;
  text-align: justify; }

body.grupo button {
  border-radius: 16px;
  border: none;
  background-color: #D40F04;
  display: block;
  height: 30px;
  width: 130px;
  font-family: "Montserrat-SemiBold";
  color: #002E5D;
  text-transform: uppercase;
  font-size: 16px;
  float: right;
  margin-top: 13px;
  margin-bottom: 22px; }

@media (min-width: 768px) {
  .en_vivo .columna_1 {
    padding-right: 38px;
    border-right: 2px solid #a33b35;
    padding-top: 8px; } }

@media (min-width: 768px) {
  .en_vivo .columna_2 {
    padding-left: 38px; } }

@media (min-width: 768px) {
  .en_vivo .columna_1,
  .en_vivo .columna_2 {
    margin-top: 16px; } }

.en_vivo .titulo {
  font-family: "Montserrat-Regular";
  font-size: 29px;
  color: #002E5D;
  margin-bottom: 6px;
  margin-top: 26px; }

.en_vivo .subtitulo {
  color: #000;
  font-family: "Montserrat-Regular";
  font-size: 17px;
  margin-bottom: 16px; }

.en_vivo .descripcion {
  color: #002E5D;
  font-family: "Montserrat-Regular";
  font-size: 14px;
  line-height: 22.8px;
  padding-bottom: 15px; }

.en_vivo .label_preguntas {
  font-family: "Montserrat-SemiBold";
  font-size: 20px;
  color: #002E5D;
  margin-top: 4px;
  margin-bottom: 17px; }

.en_vivo input {
  height: 42px;
  margin-bottom: 18px;
  font-size: 14px;
  font-family: "Montserrat-Regular";
  color: #002E5D;
  border-color: #002E5D; }

.en_vivo textarea {
  margin-bottom: 15px; }

.en_vivo #form_pregunta button {
  border-radius: 16px;
  border: none;
  background-color: #a33b35;
  display: block;
  height: 30px;
  width: 130px;
  font-family: "Montserrat-SemiBold";
  color: #002E5D;
  text-transform: uppercase;
  font-size: 16px;
  float: right;
  margin-top: 2px;
  margin-bottom: 22px; }

.biblioteca .header {
  font-family: "Montserrat-Regular";
  font-size: 41px;
  color: #ffff;
  margin-bottom: 30px;
  margin-top: 15px;
  text-align: center; }

.biblioteca .titulo {
  font-family: "Montserrat-Regular";
  font-size: 21px;
  color: #a33b35;
  margin-bottom: 0px;
  margin-top: 5px; }

.biblioteca .subtitulo {
  color: #000;
  font-family: "Montserrat-Regular";
  font-size: 16px;
  margin-bottom: 26px; }
