@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

::-webkit-input-placeholder {
  color: #6d6e70;
  font-weight: bold; }

:-moz-placeholder {
  /* Firefox 18- */
  color: #6d6e70;
  font-weight: bold; }

::-moz-placeholder {
  /* Firefox 19+ */
  color: #6d6e70;
  font-weight: bold; }

:-ms-input-placeholder {
  color: #6d6e70;
  font-weight: bold; }

body * {
  font-size: 1rem;
  line-height: 1.25rem;
  font-family: 'Josefin Sans', sans-serif;
  font-weight: 500;
  color: #6d6e70; }

.text--hero-2 {
  font-size: 4.21rem;
  line-height: 5rem;
  font-weight: bold; }
  @media (max-width: 768px) {
    .text--hero-2 {
      font-size: 1.777rem;
      line-height: 2.5rem; } }

.text--hero {
  font-size: 3.158rem;
  line-height: 3.75rem;
  font-weight: bold; }
  @media (max-width: 768px) {
    .text--hero {
      font-size: 1.333rem;
      line-height: 2.5rem; } }

.heading-1 {
  font-size: 2.369rem;
  line-height: 2.5rem;
  font-weight: bold; }
  @media (max-width: 425px) {
    .heading-1 {
      font-size: 1.333rem;
      line-height: 2.5rem; } }

.heading-2 {
  font-size: 1.777rem;
  line-height: 2.5rem;
  font-weight: bold; }
  @media (min-width: 768px) {
    .heading-2 {
      font-size: 1.777rem;
      line-height: 2.5rem; } }

.heading-3 {
  font-size: 1.333rem;
  line-height: 2.5rem;
  font-weight: bold; }
  @media (max-width: 768px) {
    .heading-3 {
      font-size: 1rem;
      line-height: 1.5rem; } }

.text {
  font-size: 1rem;
  line-height: 1.5rem; }

.text--light {
  color: white; }

.text--small {
  font-size: 0.75rem;
  line-height: 1.25rem; }

.text--upper {
  text-transform: uppercase; }

.text--italic {
  font-style: italic; }

.text--regular {
  font-weight: 400; }

.text--bold {
  font-weight: 600; }

.text--condensed {
  line-height: 1.5rem; }

.text--primary {
  color: #ce4239; }

.text--accent {
  color: #00344d; }

.text--lightgrey {
  color: #C8C8C8; }

.text--justify {
  text-align: justify; }
  @media (max-width: 425px) {
    .text--justify-sm {
      text-align: justify !important; } }

.text--center {
  text-align: center; }
  @media (max-width: 768px) {
    .text--center-sm {
      text-align: center !important; } }

.text--center-right {
  text-align: right; }
  @media (max-width: 768px) {
    .text--center-right-sm {
      text-align: center !important; } }

.text--left {
  text-align: left; }
  @media (max-width: 425px) {
    .text--left-sm {
      text-align: left; } }

@media (min-width: 1024px) {
  .text--padding-left {
    padding-left: 13.75rem; } }

.text--padding-right {
  padding-right: 2.5rem; }

.text--padding-bottom {
  padding-bottom: 1.25rem; }
  @media (max-width: 768px) {
    .text--padding-bottom {
      padding-bottom: 0; } }

.text--padding-top {
  padding-top: 0.625rem; }
  @media (max-width: 768px) {
    .text--padding-top {
      padding-top: 0; } }

@media (min-width: 1024px) {
  .text--float-left {
    float: left; } }

@media (min-width: 1024px) {
  .text--mbottom {
    margin-bottom: -50px; } }

h2.text--icon {
  padding-left: 10px; }

.icon--phone {
  background-image: url(/img/icons/tel-img.png); }

.icon--car {
  background-image: url(/img/icons/carro-img.png); }

.container {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto; }
  .container:after {
    content: " ";
    display: block;
    clear: both; }
  @media (max-width: 425px) {
    .container {
      padding-left: 1.25rem;
      padding-right: 1.25rem; } }
  @media (min-width: 426px) and (max-width: 1024px) {
    .container {
      padding-left: 2.5rem;
      padding-right: 2.5rem; } }
  .container-sm {
    max-width: 512px;
    margin-left: auto;
    margin-right: auto; }
    @media (max-width: 1024px) {
      .container-sm {
        padding-left: 1.25rem;
        padding-right: 1.25rem; } }

.container--padding-top {
  padding-top: 5rem; }

.container--padding-bottom {
  padding-bottom: 5rem; }

.container-marker {
  position: relative; }

.container-form {
  padding-top: 1.25rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  background-color: #D8D8D8;
  border-radius: 15px;
  height: 550px;
  width: 75%;
  margin-bottom: 1.25rem; }
  @media (min-width: 768px) {
    .container-form {
      height: 780px;
      width: 80%; } }
  @media (min-width: 1024px) {
    .container-form {
      height: 410px;
      width: 55%; } }
  .container-form.container-form--small {
    height: 280px;
    width: 78%; }
    @media (min-width: 1024px) {
      .container-form.container-form--small {
        height: 280px;
        width: 49%; } }

.two-fifths {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 2.5rem; }
  .two-fifths.last {
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0; }
    @media (min-width: 768px) {
      .two-fifths.last {
        width: 38.7234%;
        float: right;
        margin-right: 0; } }
  @media (min-width: 768px) {
    .two-fifths {
      width: 38.7234%;
      float: left;
      margin-right: 2.12766%;
      padding-top: 2.5rem;
      margin-bottom: 0; } }

.three-fifths {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 2.5rem; }
  .three-fifths.three-fifths--float-none {
    float: none;
    padding-top: 0; }
  .three-fifths.last {
    width: 100%;
    float: left;
    margin-left: 0;
    margin-right: 0; }
    @media (min-width: 768px) {
      .three-fifths.last {
        width: 59.14894%;
        float: right;
        margin-right: 0; } }
  @media (min-width: 768px) {
    .three-fifths {
      width: 59.14894%;
      float: left;
      margin-right: 2.12766%;
      float: right;
      padding-top: 2.5rem;
      margin-bottom: 0 !important; } }

.one-third {
  width: 31.91489%;
  float: left;
  margin-right: 2.12766%;
  padding-top: 1.25rem;
  text-align: left; }
  .one-third.last {
    width: 31.91489%;
    float: right;
    margin-right: 0; }
    @media (max-width: 768px) {
      .one-third.last {
        width: 100%;
        float: left;
        margin-left: 0;
        margin-right: 0;
        display: flex; } }
  @media (max-width: 768px) {
    .one-third {
      width: 100%;
      float: left;
      margin-left: 0;
      margin-right: 0;
      text-align: center !important; } }

.half {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0; }
  @media (min-width: 768px) {
    .half.last {
      width: 48.93617%;
      float: right;
      margin-right: 0; } }
  @media (min-width: 768px) {
    .half {
      width: 48.93617%;
      float: left;
      margin-right: 2.12766%; } }

.half-fixed {
  width: 50% !important; }
  @media (max-width: 767px) {
    .half-fixed {
      width: 100% !important; } }

.padding-right {
  padding-right: 3rem; }

header {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  height: 5rem;
  background-color: #f1f1f2;
  z-index: 2;
  position: relative; }
  @media (min-width: 768px) {
    header {
      height: 6.25rem; } }

nav {
  display: block; }

section {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0; }
  section.section--lightgrey {
    background-color: #f1f1f2; }
  section.section--accent {
    background-color: #00344d; }

.banner {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  text-align: center;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  background-color: #00344d;
  position: absolute;
  top: 0;
  height: 1.25rem;
  display: flex;
  justify-content: center;
  align-items: center; }
  .banner .banner-wrapper {
    display: flex;
    align-items: center; }
  .banner img {
    width: 40px; }
  @media (min-width: 768px) {
    .banner {
      height: 2.5rem; } }
  @media (min-width: 1024px) {
    .banner {
      width: 33.333%;
      margin-left: 33.333%;
      height: 2.5rem; } }

footer {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  background-color: #ce4239;
  padding-bottom: 1.25rem;
  text-align: center; }
  footer .contact {
    background-image: url(/img/banners/accidente_banner.jpg);
    background-color: #00344d;
    background-blend-mode: multiply;
    background-size: cover;
    padding-bottom: 1.25rem;
    text-align: left; }

.social-icon {
  margin: 0 0.75em; }

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table; }

.clearfix:after {
  clear: both; }

.clearfix {
  *zoom: 1; }

@media (max-width: 425px) {
  .hide-s {
    display: none !important; } }

@media (min-width: 426px) {
  .hide-s {
    display: block; } }

@media (max-width: 767px) {
  .hide-m {
    display: none !important; } }

@media (min-width: 769px) {
  .hide-m {
    display: block; } }

@media (max-width: 675px) {
  .right-xs {
    float: right; } }

.margin-left {
  margin-left: 2.5rem; }

.logomenu {
  background-image: url(/img/logos/vasaloseguro-logo.png);
  background-size: cover;
  display: block;
  float: left;
  margin: 15px 10px 0;
  width: 120px;
  height: 44px; }
  @media (min-width: 1024px) {
    .logomenu {
      width: 156px;
      height: 58px;
      margin: 18px 10px 0; } }

.logo {
  display: inline-block;
  width: 106px;
  height: 2.5rem;
  position: relative;
  float: left; }
  .logo.logo--big {
    width: 175px;
    height: 5rem; }
    @media (min-width: 768px) {
      .logo.logo--big {
        height: 6.25rem; } }
  .logo.logo--center {
    display: flex;
    margin: auto;
    float: none;
    width: 175px;
    height: 5rem; }
    @media (min-width: 768px) {
      .logo.logo--center {
        height: 6.25rem; } }
  .logo.logo--small {
    width: 75px;
    height: 5rem;
    float: none !important; }
    @media (max-width: 768px) {
      .logo.logo--small {
        display: flex;
        margin: auto;
        padding-top: 1.25rem;
        height: 6.25rem; } }
    .logo.logo--small.logo--smbig {
      width: 110px; }
  .logo.logo--right {
    float: right; }
    @media (max-width: 768px) {
      .logo.logo--right {
        float: none;
        margin: 0 auto; } }
  .logo.logo--top img {
    bottom: inherit; }
  .logo .logo__img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto; }

/* Nuestro nav con id #menuresponsive lo flotaremos a la derecha*/
#menuresponsive {
  float: right; }

/* Quitamos estilos por defecto de el tag UL */
#menuresponsive ul {
  list-style: none; }

/* Centramos y ponemos los textos en mayuscula */
#menuresponsive li {
  display: block;
  float: left;
  text-align: center;
  position: relative; }

/* Damos estilo a nuestros enlaces */
#menuresponsive li a {
  display: block;
  color: #00344d;
  text-decoration: none;
  height: 66px;
  line-height: 100px;
  padding: 0 20px; }

#menuresponsive li a:hover .line {
  border-bottom: 3px solid #00344d; }

#menuresponsive li .line.active {
  border-bottom: 3px solid #ce4239; }

#menuresponsive li a:hover {
  color: #00344d; }

#menuresponsive li a.active {
  color: #ce4239; }

.line {
  position: absolute;
  width: 25px;
  top: 80%;
  height: 10px;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto; }

/* Estilos #nav-mobile y lo ocultamos */
#nav-mobile {
  background: url(/img/icons/nav.png) no-repeat center center;
  display: none;
  float: right;
  width: 80px;
  height: 80px;
  position: absolute;
  right: 0;
  top: 0;
  opacity: .6; }

/* Agregaremos esta clase a #nav-mobile, cuando el menuresponsive mobile haya sido desplegado */
#nav-mobile.nav-active {
  opacity: 1; }

/*
    MEDIA QUERY
*/
@media only screen and (max-width: 1024px) {
  /* mostramos #nav-mobile */
  #nav-mobile {
    display: block; }
  /* Fijamos nuestro nav en 100% ancho y dejamos de flotarlo  */
  #menuresponsive {
    float: none;
    padding-top: 60px; } }
  @media only screen and (max-width: 1024px) and (max-width: 425px) {
    #menuresponsive {
      margin-left: -1.25rem;
      margin-right: -1.25rem; } }
  @media only screen and (max-width: 1024px) and (min-width: 426px) and (max-width: 1024px) {
    #menuresponsive {
      margin-left: -2.5rem;
      margin-right: -2.5rem; } }

@media only screen and (max-width: 1024px) {
  /* Convertimos nuestra lista de enlaces en un menÃº horizontal */
  #menuresponsive ul {
    max-height: 0;
    overflow: hidden; }
  /* estilos para los LI del menuresponsive */
  #menuresponsive li {
    background: #f1f1f2;
    /*border-bottom: 1px solid #282b30;*/
    float: none; }
  /* Quitamos el borde del ultimo item del menÃº */
  #menuresponsive li:last-child {
    border-bottom: 0; }
  #menuresponsive li a {
    padding: 15px 0;
    height: auto;
    line-height: normal; }
  #menuresponsive li a:hover {
    background: #d7d7d9; }
  /* Agregamos una animaciÃ³n al despligue del menÃº */
  #menuresponsive ul.open-menu {
    max-height: 400px;
    -webkit-transition: max-height .4s;
    -moz-transition: max-height .4s;
    -ms-transition: max-height .4s;
    -o-transition: max-height .4s;
    transition: max-height .4s; } }

.hero-img {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  height: 300px;
  position: relative; }
  @media (min-width: 375px) {
    .hero-img {
      height: 300px; } }
  @media (min-width: 425px) {
    .hero-img {
      height: 300px; } }
  @media (min-width: 768px) {
    .hero-img {
      height: 350px; } }
  @media (min-width: 1024px) {
    .hero-img {
      height: 659px; } }
  @media (min-width: 2560px) {
    .hero-img {
      height: 1100px; } }
  .hero-img.hero-img--small {
    height: 175px; }
    @media (min-width: 425px) {
      .hero-img.hero-img--small {
        height: 225px; } }
    @media (min-width: 1024px) {
      .hero-img.hero-img--small {
        height: 275px; } }
    @media (min-width: 1440px) {
      .hero-img.hero-img--small {
        height: 350px; } }
    @media (min-width: 2560px) {
      .hero-img.hero-img--small {
        height: 600px; } }
  .hero-img.hero-img--400 {
    height: 215px; }
    @media (min-width: 425px) {
      .hero-img.hero-img--400 {
        height: 250px; } }
    @media (min-width: 768px) {
      .hero-img.hero-img--400 {
        height: 320px; } }
    @media (min-width: 1024px) {
      .hero-img.hero-img--400 {
        height: 400px; } }
    @media (min-width: 1440px) {
      .hero-img.hero-img--400 {
        height: 500px; } }
    @media (min-width: 2560px) {
      .hero-img.hero-img--400 {
        height: 750px; } }
  @media (min-width: 768px) {
    .hero-img.hero-img--big {
      height: 500px; } }
  @media (min-width: 1024px) {
    .hero-img.hero-img--big {
      height: 625px; } }
  @media (min-width: 1440px) {
    .hero-img.hero-img--big {
      height: 750px; } }
  @media (min-width: 2560px) {
    .hero-img.hero-img--big {
      height: 1250px; } }
  .hero-img .hero-img__text {
    position: absolute;
    text-align: left;
    bottom: 1.25rem; }
    .hero-img .hero-img__text.hero-img__text--padding {
      padding-bottom: 2.5rem; }
      @media (min-width: 1024px) {
        .hero-img .hero-img__text.hero-img__text--padding {
          padding-bottom: 1.25rem; } }
    @media (min-width: 1024px) {
      .hero-img .hero-img__text.hero-img__text--bottom {
        bottom: 2.5rem; } }
    @media (min-width: 425px) {
      .hero-img .hero-img__text {
        bottom: 2.5rem; } }
    @media (min-width: 1024px) {
      .hero-img .hero-img__text {
        text-align: left;
        bottom: 7.5rem; } }
  @media (max-width: 1024px) {
    .hero-img .display--none {
      display: none; } }

.hero-img__image {
  width: 100%;
  height: 100%;
  object-fit: cover; }

.form__input {
  display: block;
  margin-bottom: 1.25rem;
  width: 90%;
  border: 1px solid #EBEFF1;
  border-radius: 6px;
  background-color: #EBEFF1;
  padding-left: 1.25rem;
  padding-right: 0.625rem;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  font-size: 1rem;
  line-height: 1.5rem; }
  .form__input.form__input--first {
    margin-top: 1.25rem; }
  .form__input.form__input--small {
    width: 37%;
    margin-left: 52%; }
    @media (min-width: 1024px) {
      .form__input.form__input--small {
        width: 23%;
        margin-left: 32%;
        font-size: 1.333rem;
        line-height: 2.5rem; } }
  .form__input.form__input--dark {
    background-color: #afbfc7; }
  .form__input.form__input--bg {
    width: 90%; }
  @media (min-width: 1024px) {
    .form__input {
      width: 55%;
      font-size: 1.333rem;
      line-height: 2.5rem; } }

.form__input--big {
  height: 7.5rem; }

.form__input--bigger {
  height: 11.25rem;
  width: 90%; }

.form__input-single {
  display: block;
  margin-bottom: 1.25rem;
  width: 90%;
  border: 1px solid #fff;
  background-color: #fff;
  padding-left: 0.625rem;
  padding-right: 0.625rem;
  padding-top: 0.625rem;
  padding-bottom: 0.625rem;
  font-size: 0.75rem;
  line-height: 1.25rem; }
  .form__input-single.form__input-single--small {
    width: 42%;
    float: left; }
  .form__input-single.form__input-single--lightgrey {
    background-color: #D8D8D8;
    border: none; }
    @media (min-width: 768px) {
      .form__input-single.form__input-single--lightgrey {
        font-size: 1rem;
        line-height: 1.5rem; } }
    @media (min-width: 1024px) {
      .form__input-single.form__input-single--lightgrey {
        font-size: 1.333rem;
        line-height: 2.5rem; } }
  .form__input-single.nofloat {
    float: none; }
  @media (min-width: 1024px) {
    .form__input-single {
      float: right;
      width: 60%; } }

.select-style {
  float: left;
  padding-left: 1.25rem;
  padding-right: 0.625rem;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-bottom: 1.25rem;
  border: 1px solid #EBEFF1;
  width: 36%;
  border-radius: 6px;
  overflow: hidden;
  background: #EBEFF1 url("/img/icons/arrowdown.gif") no-repeat 90% 50%; }
  @media (min-width: 1024px) {
    .select-style {
      width: 23%; } }

.select-style select {
  color: #6d6e70;
  font-weight: bold;
  font-size: 1rem;
  line-height: 1.5rem;
  padding: 0px 6px;
  width: 90%;
  border: none;
  box-shadow: none;
  background-color: transparent;
  background-image: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }
  @media (min-width: 1024px) {
    .select-style select {
      width: 100%;
      font-size: 1.333rem;
      line-height: 2.5rem;
      padding: 0px 8px;
      height: 39px; } }

.select-style select:focus {
  outline: none;
  color: #6d6e70; }

select option {
  background-color: #c8c8c8;
  color: #6d6e70;
  padding: 0.625rem;
  font-size: 1rem;
  line-height: 1.5rem; }

.display-moral {
  display: none; }

#fisica {
  cursor: pointer; }

#moral {
  cursor: pointer; }

.map {
  width: 100%;
  float: left;
  margin-left: 0;
  margin-right: 0;
  position: relative;
  background: transparent;
  z-index: 1000;
  margin-bottom: -10px; }

.map iframe {
  pointer-events: none;
  height: 50vh; }
  @media (min-width: 426px) {
    .map iframe {
      height: 500px; } }
  @media (min-width: 2560px) {
    .map iframe {
      height: 800px; } }

.button {
  text-align: center;
  text-decoration: none;
  letter-spacing: 2px;
  background-color: #ce4239;
  padding: 0.41667rem;
  border-radius: 10px;
  border: 1px solid #ce4239;
  cursor: pointer;
  letter-spacing: 0;
  font-size: 1.333rem;
  line-height: 2.5rem; }
  .button.button--small {
    float: left;
    margin-top: 2%;
    margin-bottom: 0;
    font-size: 1rem;
    line-height: 1.5rem; }
    @media (min-width: 1024px) {
      .button.button--small {
        font-size: 1.333rem;
        line-height: 2.5rem; } }
  .button.button--center {
    display: flex;
    margin: 0 auto; }
  .button.button--block {
    display: block;
    width: 100%; }

ul.list {
  list-style-type: inherit;
  list-style-position: inside; }
  ul.list li {
    line-height: 1.25rem; }

.marker {
  position: absolute;
  background-color: #00344d;
  width: 6.25rem;
  height: 1.875rem;
  bottom: 0;
  right: 1.25rem; }

.tabs {
  width: 90%;
  display: flex;
  justify-content: space-between; }
  @media (min-width: 1024px) {
    .tabs {
      width: 55%;
      font-size: 1.333rem;
      line-height: 2.5rem; } }

.tab {
  position: relative; }

#fisica.active + .line, #moral.active + .line {
  background-color: #ce4239;
  height: 4px; }

#fisica, #moral {
  color: #424243;
  padding-bottom: 0.625rem; }

#fisica.active, #moral.active {
  color: #ce4239; }
