/* MOEBIUS COTIZAR */
html {
     scroll-padding-top: 180px;
   }
.body-agency {
     padding: 0;
}
.agency {
     overflow: hidden;
     min-height: calc( 50% + 102px);
     display: flex;
     flex-direction: column;
     justify-content: center;
}
.agency h1 {
     font-family: 'Poppins', sans-serif;
     text-transform: uppercase;
     font-weight: 900;
     font-size: 30px;
     line-height: 1em;
     margin-bottom: 0px;
     text-align: center;
     padding: 0 20px;
}
.agency form {
     width: 100%;
     max-width: 960px;
     margin: 0 auto;
     padding: 20px;
     font-size: 14px;
     font-weight: 400;
}
.agency form > fieldset {
     position: relative;
     overflow: hidden;
     display: block;
     text-align: left;
     width: 100%;
     padding: 0px 15px 20px;
}
.agency form > fieldset fieldset legend {
     width: 100%;
     border-bottom: solid 1px #ccc;
     font-size: 16px;
}
.agency form > p {
     font-size: 12px;
     max-width: 768px;
     margin: 0 auto;
}
.agency form > p a {
     font-weight: 700;
}
@media (max-width: 580px) {
     .agency form {
          padding: 20px 10px;
     }
     .agency form > fieldset {
          padding: 10px 5px;
     }
}
.agency form legend {
     position: relative; 
     font-family: 'Poppins',sans-serif;
     font-size: 24px;
     font-weight: 600;
     color: #444;
     display: block;
     padding: 5px 10px;
     text-align: center;
     text-transform: uppercase;
}
.agency form legend sub {
     color: red;
     font-size: 18px;
}
@media (max-width: 580px) {
     .agency form legend {
          font-size: 16px;
     }
     .agency form legend sub {
          font-size: 15px;
     }
}
.agency form .fieldset {
     width: 100%;
     display: -webkit-flex; 
     display: flex;
     -webkit-flex-wrap: nowrap; 
     flex-wrap: nowrap;
     -webkit-justify-content: flex-start; 
     justify-content: flex-start;
}
@media (max-width: 959px) {
     .agency form .fieldset {
          -webkit-flex-wrap: wrap; 
          flex-wrap: wrap;
     }
     .agency form .fieldset label {
          max-width: 100% !important;
     }
}
.agency form .fieldset label {
     width: 100%;
     text-align: left;
     padding: 5px;
}

.agency form .fieldset label span {
     width: 100%;
     display: block;
     font-family: 'Poppins', sans-serif;
     margin: 0 0 5px;
     white-space: nowrap;
     overflow: hidden;
     text-overflow: ellipsis;
}
@media (max-width: 580px) {
     .agency form .fieldset label span {
          white-space: normal;
     }
}
.agency form .fieldset label input,
.agency form .fieldset label select,
.agency form .fieldset label option,
.agency form .fieldset label textarea {
     width: 100%;
     height: 39px;
     font-size: 16px;
     padding: 10px 8px;
     background-color: #fff;
     border: solid 1px #a9a9a9;
     border-radius: 4px;
     font-family: 'Poppins', sans-serif;    
}

.agency form .fieldset label input::placeholder {
     color: rgb(202, 127, 127);
     font-size: 12px;
}

.agency form .fieldset label input[type="checkbox"],
.agency form .fieldset label input[type="radio"] {
     box-shadow: none;
}
.agency form .fieldset label textarea {
     height: auto;
}
.agency form .fieldset label input[type="number"] {
     text-align: center;
     font-weight: 700;
}
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button {  
   opacity: 1;
}
.agency form .checks {
     width: 100%;
     display: -webkit-flex; 
     display: flex;
     -webkit-flex-wrap: wrap; 
     flex-wrap: wrap;
     -webkit-justify-content: flex-start; 
     justify-content: flex-start;
     margin-bottom: 10px;
}
.agency form .checks > label,
.agency form .checks > fieldset,
.agency form .checks > fieldset label {
     display: -webkit-flex; 
     display: flex;
     -webkit-flex-wrap: nowrap; 
     flex-wrap: nowrap;
     -webkit-justify-content: flex-start; 
     justify-content: flex-start;
     -webkit-align-items: center; 
     align-items: center;
     width: 25%;
     position: relative;
}
.agency form .med > label,
.agency form .med > fieldset,
.agency form .med > fieldset label {
     width: 50%;
}
@media (max-width: 959px) {
     .agency form .checks > label,
     .agency form .checks > fieldset,
     .agency form .checks > fieldset label {
          width: 50%;
     }
}
@media (max-width: 767px) {
     .agency form .med > label,
     .agency form .med > fieldset,
     .agency form .med > fieldset label {
          width: 100%;
     }
}
@media (max-width: 580px) {
     .agency form .checks > label,
     .agency form .checks > fieldset,
     .agency form .checks > fieldset label {
          width: 100%;
     }
}
.agency form .checks > fieldset {
     -webkit-flex-wrap: wrap; 
     flex-wrap: wrap;
     padding: 10px;
}
.agency form .checks > fieldset label {
     width: 100%;
     border: solid 1px #ccc;
}
.agency form .checks > fieldset label:first-child {
     border-bottom: none;
     border-radius: 3px 3px 0 0;
}
.agency form .checks > fieldset label:last-child {
     border-top: none;
     border-radius:  0 0 3px 3px;
     padding-bottom: 10px;
}
.agency form .checks > fieldset label:nth-child(2) span {
     width: 50%;
     text-align: right;
     border:none;
     font-weight: 700;
     font-size: 11px;
}
.agency form .checks label input[type="checkbox"],
.agency form .checks label input[type="radio"] {
     width: 20px;
     height: 20px;
     margin: 0 4px;
     padding:10px 5px;
     opacity: .8;
     z-index: 2;
}
.agency form .checks label input[type="number"] {
     width: 50%;
     font-weight: 700;
}
.agency form .checks label span {
     width: 100%;
     z-index: 2;     
     border-bottom: dashed 1px #ddd;
     padding: 5px 10px;
     margin: 0;
     opacity: .8;
}
.agency form .checks label img {
     display: block;
     border: solid 5px #fff;
     margin: 0 10px;
     transition: border 300ms linear;
}
.agency form .checks input[type="checkbox"]:checked,
.agency form .checks input:checked ~ span,
.agency form .checks input[type="radio"]:checked,
.agency form .checks input:checked ~ span {
     font-weight: 700;
     opacity: 1;
}
.agency form .checks input:checked ~ img {
     border: solid 5px #000;
}
.agency .bot {
     padding: 5px;

}
.agency .bot a,
.agency .bot input  {
     position: relative;
     font-family: 'Poppins';
     padding: 10px 50px 10px 20px;
     background-color: #000519;
     transition: color 100ms linear, background-color 100ms linear;
    display: block;
     font-weight: 400;
     line-height: 1em;
     color: #fff;
     font-size: 12px;
     text-transform: uppercase;
     border: none;
}
.agency .bot a:after {
     content: '→';
     position: absolute;
     right: 20px;
     line-height: 1em;
     top: calc( 50% - (1em/2) );
     font-size: 22px;
 }
.agency form .form-footer {
     position: relative;
     display: flex;
     justify-content: space-between;
     align-items: flex-start;
}

/* LOGIN */
.agency-login-form {
     position: relative;
     background-position: center;
     background-size: cover;
     background-attachment: fixed;
     padding: 20px 10px 60px;
}
@media (min-width: 1025px) {
     .agency-login-form {
          min-height: calc( ( 100vw * 960 / 1920 ));
          background-image: url('../grp/home-bg-desktop.jpg');
     }
}
@media (min-width: 581px) and (max-width: 1024px) {
     .agency-login-form {
          min-height: calc( ( 100vw * 860 / 1024 ));
          background-image: url('../grp/home-bg-tablet.jpg');
     }
}
@media (max-width: 580px) {
     .agency-login-form {
          min-height: calc( ( 100vw * 860 / 580 ));
          background-image: url('../grp/home-bg-mobile.jpg');
     }
}
.agency-login-form:before {
     content: "";
     position: absolute;
     display: block;
     width: 100%;
     height: 60px;
     bottom: 0;
     left: 0;
     background: linear-gradient(rgba(0,0,0,0), rgba(0,0,0,.6));
     z-index: 1;
}
.agency-login-form form {
     z-index: 2;
}
.agency-login-form h1 {
     color: #fff;
}
.agency-login-form h2 {
     color: #fff;
}
.agency-login-form form legend {
     font-weight: 500;
     color: #fff;
     font-size: 16px;
}
.agency-login-form form .fieldset label span {
     color: #fff;
}
.agency-login-form form .form-footer {
     justify-content: center;
}

/* REGISTRO */
.agency-register-form h1 {
     color: #fff;
     margin: 20px auto;
}
.agency-register-form h3 {
     font-family: 'Poppins',sans-serif;
     color: #fff;      
     max-width: 580px;
     margin: 0 auto;
     font-size: 18px;
     text-transform: uppercase;
     font-weight: 500;
}
.agency-register-form h4 {
     font-family: 'Poppins',sans-serif;
     color: #fff;      
     max-width: 580px;
     margin: 0 auto;
     font-size: 14px;
     font-weight: 600;
}
.agency-register-form .marco {
     width: 100%;
   
     border: solid 1px #fff;
     padding: 20px;    
     text-align: center;
     min-height: 130px;
     display: flex;
     align-items: center;
}
.agency-register-form form legend {
     font-weight: 500;
     font-size: 16px;
}
.agency-register-form form .form-footer {
     justify-content: center;
}
.agency-register-form .top {
     color: #fff;
     background-position: center;
     background-size: cover;
     background-image: url('../grp/registro-bg-desktop.jpg');
     padding: 50px 20px;
     min-height: 330px;

     display: flex;
     justify-content: center;
     align-items: center;

     width: 100%;

 }
 .agency-register-form .top > div {
     width: 100%;
     max-width: 768px;
 }

/* DOWNLOADS */
.downloads {
     position: relative;
     padding: 40px 20px 60px;
     z-index: 0;
     background-color: #a9a9a9;
}

.downloads:after {
     content: "";
     position: fixed;
     display: block;
     width: 100%;
     height: 100%;
     max-width: 100%;
     max-height: 100%;
     top: 102px;
     left: 0;
     background-position: center center;
     background-size: cover;
     background-repeat: no-repeat;
     background-color: #a9a9a9;
     overflow: hidden;
     z-index: 1;
}

@media (min-width: 1025px) {
     .downloads {
          min-height: calc( ( 100vw * 960 / 1920 ));
     }
     .tarifario:after,
     .promociones:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px),  url('../grp/tarifario-bg-desktop.jpg');
     }
     .mice:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px),  url('../grp/mice-bg-desktop.jpg');
     }
     .manual:after,
     .herramientas:after,
     .circuito:after,
     .nacionales:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px),  url('../grp/manual-bg-desktop.jpg');
     }
}
@media (min-width: 581px) and (max-width: 1024px) {
     .downloads:after {
          min-height: calc( ( 100vw * 860 / 1024 ));
     }
     .tarifario:after,
     .promociones:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px), url('../grp/tarifario-bg-tablet.jpg');
     }
     .mice:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px),  url('../grp/mice-bg-tablet.jpg');
     }
     .manual:after,
     .herramientas:after,
     .circuito:after,
     .nacionales:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px), url('../grp/manual-bg-tablet.jpg');
     }
}
@media (max-width: 580px) {
     .downloads:after {
          min-height: calc( ( 100vw * 860 / 580 ));
          padding: 40px 0px 60px;
     }
     .tarifario:after,
     .promociones:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px), url('../grp/tarifario-bg-mobile.jpg');
     }
     .mice:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px),  url('../grp/mice-bg-mobile.jpg');
     }
     .manual:after,
     .herramientas:after,
     .circuito:after,
     .nacionales:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px), url('../grp/manual-bg-mobile.jpg');
     }
}




.downloads-content {
     position: relative;
     z-index: 2;
     color: #fff;
}
.downloads-content h1,
.downloads-content h2 {
     color: #fff;
}
.downloads-content h2 {
     font-size: 18px;
     font-weight: 400;
     text-transform: uppercase;
}
.downloads-content .icon {
     width: 54px;
     height: 54px;
     background-color: #000;
     margin: 10px auto 30px;
     border-radius:50%;
     background-size: 50%;
     background-position:center;
     background-repeat: no-repeat;
}
.tarifario .icon,
.promociones .icon {
     background-image: url('../grp/tarifario.svg');
}
.herramientas .icon, 
.manual .icon, 
.circuito .icon,
.nacionales .icon {
     background-image: url('../grp/manual.svg');
}
.mice .icon {
     background-size: 60%;
     background-image: url('../grp/mice.png');
}
.foto-data {
     position: absolute;
     bottom: 10px;
     left: 10px;
     font-size: 12px;
     color: #fff;
     text-shadow: 0 1px 2px rgba(0,0,0,.6);
     z-index: 2;
}

/* DOWNLOAD CATEGORIA */
.download-categoria {
     position: relative;
     background-color: #000;
     
     justify-content: space-between;
     align-items: center;
     width: 100%;
     max-width: 768px;
     margin: 1px auto;
     color: #fff;
     text-align: left;
     padding: 10px;
     border-radius: 3px;
     z-index: 2;
     transition: background 200ms linear, color 200ms linear;
     box-shadow: 0 1px 1px rgba(0,0,0,.3);

     position: sticky;
    top: 154px;
    left: 0;
}
.download-categoria.flex {
display: flex;
}

.download-categoria.active{
     color: #000;
     background-color: #fff;
}
@media (hover: hover) {
     .download-categoria:hover{
          color: #000;
          background-color: #fff;
     }
}

.download-categoria:before {
     content: "";
     position: relative;
     width: 9px;
     height: 54px;
     background-color: #fff;
     display: block;
     border-radius: 4px;
}

.download-categoria:after {
     content: "+";
     position: relative;
     width: 38px;
     height: 38px;
     min-width: 38px;
     background-color: #fff;
     color: #000;
     display: block;
     border-radius: 50%;
     text-align: center;
     line-height: 38px;
     font-size: 23px;
     font-family: 'Poppins', sans-serif;
     transition: transform 200ms ease, background 200ms linear, color 200ms linear ;
}
.download-categoria.active:after {
     transform: rotate(135deg) scale(1.3);
   
     background-color: transparent;
}
@media (hover: hover) {
     .download-categoria:hover:after,
     .download-categoria:focus:after {
          color: #000;
     }
}

.regiones-title {
     width: 100%;
     font-weight: 900;
     font-size: 18px;
     font-family: 'Poppins', sans-serif;
     line-height: 18px;
     text-transform: uppercase;
}
.regiones-icon { 
     width: 52px;
     height: 52px;
     min-width: 52px;
     background-size: cover;
     background-repeat: no-repeat;
     background-position: center;
     border-radius: 50%;
     margin: 0 15px;
}

/* DOWNLOAD LISTA */
.download-list {
     position: relative;
     height: 1px;
     visibility: hidden;
     width: 100%;
     max-width: 768px;
     margin: 0px auto;
     text-align: left;
     transform: translateY(-50px);
     transition: transform 150ms ease;
     overflow: hidden;
     z-index: 1;
}
.download-list.show {
     visibility: visible;
     height: auto;
     transform: translateY(0);
}
.download-list > li {
     width: 100%;
     background-color: rgba(232,232,232,.80);
     backdrop-filter: blur(3px);
     -webkit-backdrop-filter: blur(3px);

     margin: 1px 0;
     border-radius: 3px;
     overflow: hidden;
}
.download-list > li .data-container {
     display: flex; 
     flex-wrap: nowrap;
     align-items: center;
     padding: 10px;
     font-family: 'Poppins', sans-serif;
     border: solid 1px transparent;
     transition: background-color 100ms linear;
}





.download-list .data {
     position: relative;
     width: 100%;
     padding-left: 20px;
     min-height: 39px;
     padding-right: 10px;
     color: #111;
}
.mice .download-list .data {
     padding: 20px;
}

.download-list .data a:not(.bot) {
     text-decoration: underline;
}
.download-list .data:before {
     content: "→";
     position: absolute;
     top: 0;
     left: 0;
}
.mice .download-list .data:before {
     display: none;
}

.download-list .titulo {
     font-size: 14px;
     font-weight: 700;
     margin-bottom: 5px;
}
.download-list .descripcion {
     font-size: 12px;
     font-weight: 400;
}
.download-list .descripcion-lg {
     font-size: 14px;
     font-weight: 400;
}
.download-list .descripcion p {
     margin-bottom: 16px;
}

.download-list .descripcion iframe.yt-1x1{
     width: 100%;
     aspect-ratio: 1/1;
}
.download-list .descripcion iframe.yt-16x9{
     width: 100%;
     aspect-ratio: 16/9;
}

.download-list ul {
     padding-left: 20px;
     margin-bottom: 15px;
}
.download-list ul li {
     list-style-type: disc; 
     margin-bottom: 2px;
}

.download-list .locacion_escala {
     font-size: 10px;
     font-weight: 400;
}
.download-list .locacion_escala span {
     background-color: #000;
     color: #000;
     margin: 2px;
     color: #ccc;
     padding: 2px 5px;
     display: inline-block;
     border-radius: 3px;
     text-transform: uppercase;
     font-weight: 700;
}
.download-list .bot {
     background-color: #000;
     color: #fff;
     padding: 2px 10px;
     border-radius: 12px;
     text-transform: uppercase;
     font-size: 12px;
     transition: background-color 200ms linear, color 200ms linear;
}
.download-list li a:hover .bot {
     color: #000;
}

@media (max-width: 580px) {
     .download-list li .data-container {
          flex-wrap: wrap;
     }
     .download-list .bot {
          margin: 10px 0 0 20px;
     }
}

/* EVENTOS */
.eventos {
     position: relative;
     padding: 40px 20px 60px;
     z-index: 0;
     
}
@media (min-width: 1025px) {
     .eventos {
          min-height: calc( ( 100vw * 960 / 1920 ));
          background-image: url('../grp/eventos-bg-desktop.jpg');
     }
}
@media (min-width: 581px) and (max-width: 1024px) {
     .eventos {
          min-height: calc( ( 100vw * 860 / 1024 ));
          background-image: url('../grp/eventos-bg-tablet.jpg');
     }
}
@media (max-width: 580px) {
     .eventos {
          min-height: calc( ( 100vw * 860 / 580 ));
          background-image: url('../grp/eventos-bg-mobile.jpg');
     }
}

.eventos:after {
     content: "";
     position: fixed;
     display: block;
     width: 100%;
     height: 100%;
     max-width: 100%;
     max-height: 100%;
     top: 102px;
     left: 0;
     background-position: center top;
     background-size: cover;
     background-repeat: no-repeat;
     background-color: #fff;
     overflow: hidden;
     z-index: 1;
}
@media (min-width: 1025px) {
     .eventos {
          min-height: calc( ( 100vw * 960 / 1920 ));
     }
     .eventos:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px),  url('../grp/eventos-bg-desktop.jpg');
     }
}
@media (min-width: 581px) and (max-width: 1024px) {
     .eventos:after {
          min-height: calc( ( 100vw * 860 / 1024 ));
     }
     .eventos:after {
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px), url('../grp/eventos-bg-tablet.jpg');
     }
}
@media (max-width: 580px) {
     .eventos:after {
          min-height: calc( ( 100vw * 860 / 580 ));
          padding: 40px 0px 60px;
     }
     .eventos:after{
          background-image: linear-gradient(rgba(0,0,0,.8), rgba(0,0,0,0) 300px), url('../grp/eventos-bg-mobile.jpg');
     }
}



.eventos-content {
     position: relative;
     z-index: 2;
}
.eventos-content h1,
.eventos-content h2 {
     color: #fff;
}
.eventos-content h2 {
     font-size: 18px;
     font-weight: 400;
     text-transform: uppercase;
}
.eventos-content .icon {
     width: 54px;
     height: 54px;
     background-color: #000;
     margin: 10px auto 30px;
     border-radius:50%;
     background-size: 50%;
     background-position:center;
     background-repeat: no-repeat;
}


/* EVENTO LISTA */
.evento-list {
     position: relative;
     width: 100%;
     max-width: 768px;
     margin: 20px auto 100px;
     text-align: left;
     z-index: 1;
}
.evento-list li {
     width: 100%;
     background-color: #fff;
     margin: 6px 0;
     border-radius: 18px;
     display: flex;
     align-items: center;
     justify-content: center;
     min-height: 200px;
}

.evento-list .icono {
     display: block;
     width: 30%;
     padding: 10px 0 20px 10px;
     text-align: center;
}
.evento-list .icono img {
     width: auto;
     height: auto;
     max-height: 220px;
     max-width: 100%;
}
.evento-list .data {
     position: relative;
     width: 70%;
     padding: 20px 30px 20px 20px;
     min-height: 39px;
     text-align: right;
}
.evento-list .descripcion {
     font-family: 'Poppins', sans-serif;
     text-align: left;
     font-size: 14px;
     line-height: 20px;
     font-weight: 400;
}
.evento-list li a {
     padding: 2px 20px;
     transition: background-color 100ms linear;
     background-color: #00f0ff;
     border-radius: 12px;
     font-size: 14px;
     display: inline-block;
     margin-top: 10px;
     text-transform: uppercase;
     letter-spacing: -1px;
}
.evento-list li a:hover,
.evento-list li a:focus {
     background-color: #000;
     color:  #00f0ff ;
}

@media (max-width: 580px) {
     .evento-list li {
          flex-wrap: wrap;
     }
     .evento-list .icono {
          width: 45%;
          padding: 20px 0 20px;
     }
     .evento-list .data {
          width: 100%;
          padding: 0 20px 20px;
     }
}

.cita-form .top {
     background-image: url('../grp/eventos-cita-bg-desktop.jpg');
}