@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');
body{
    max-width: 1266px;
    margin: 0 auto;
    font-family: 'Montserrat', sans-serif;
}
section{
	padding: 30px 20px;
}
h1{
    margin: 0 0 15px;
    font-size: 22pt;
}
h2{
    font-size: 20pt;
    margin: 0;
}
h3{
    margin: 0 0 15px;
    font-size: 13pt;
}
h4{
    margin: 0 0 10px;
    font-size: 12pt;
}
h6{
    margin: 0 0 10px;
    font-size: 10pt;
}
p{
    margin: 0;
    font-size: 11pt;
}
.head{
	display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 30px;
}
.head h5{
	font-weight: 400;
    margin: 0;
    font-size: 10pt;
}
.telefonosgrid{
	display: flex;
    grid-gap: 0 40px;
    align-items: center;
}
.flex{
	display: flex;
	grid-gap: 0 15px;
    align-items: center;
}
.btn-blog{
    border: 1px solid #941B80;
    color: #941B80;
    background: #fff;
    border-radius: 5px;
    height: 40px;
    font-size: 14pt;
    font-weight: 500;
    cursor: pointer;
    padding: 0 30px;
}
.btn-blog:hover{
    background: #941B80;
    color: #fff;
}
.btn-blog:active, .btn-blog:focus{
    background: #490035;
    color: #fff;
}
.center{
    text-align: center;
}
.bg-mapfre{
    background: url(../img/fondo-seguro-auto-mapfre-desktop.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    display: grid;
    grid-template-columns: 45% 50%;
    justify-content: space-between;
    padding: 20px;
    color: #fff;
    border-radius: 10px;
}
.skewX2, .skewX3{
	background: #000;
    padding: 3px;
    transform: skewX(-10deg);
    width: fit-content;
    margin: auto;
}
.skewX2{
    display: block;
    font-size: 12pt;
    padding: 3px 10px;
}
.skewX3 strong{
	font-weight: 900;
    font-size: 16pt;
}
.skewX3{
	background: #BFBFBF;
	margin: 0 auto;
	padding: 3px 35px;
    font-size: 18pt;
}
.flex-promo{
    display: flex;
    justify-content: center;
}
.flex-promo img{
    margin-right: -190px;
}
.fontXL{
    font-size: 16pt;
    margin-top: -32px;
    padding: 3px 75px;
}
.text-xl{
    font-size: 12.5pt;
    margin-bottom: 25px;
}
.xs{
    font-size: 8pt;
}
form{
    background: rgba(255, 255, 255, 0.75);
    color: #000;
    padding: 20px;
    border-radius: 10px;
}
select, input{
	width: -webkit-fill-available;
    width: -moz-available;
    font-size: 12pt;
    padding: 5px;
    margin-bottom: 10px;
    border-radius: 5px;
    border: 1px solid #F2F2F2;
}
.grid2{
    display: grid;
    grid-template-columns: 48% 48%;
    justify-content: space-between;
}
.grid3{
    display: grid;
    grid-template-columns: 32% 32% 32%;
    justify-content: space-between;
}
.terminos{
    display: grid;
    grid-template-columns: 20px 70%;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
}
.terminos p{
    font-size: 7pt;
}
.terminos input{
    margin: 0;
}
.terminos a{
    color: #000;
}
.btncotnow{
    width: 200px;
    height: 40px;
    border: 1px solid #fff;
    border-radius: 5px;
    background: #45B800;
    font-size: 13pt;
    font-weight: 600;
    color: #fff;
    cursor: pointer;
}
.btncotnow:hover{
    background: #50D500;
}
.btncotnow:focus, .btncotnow:active{
    background: #3D8F00;
}
.coberturas, .opiniones{
    flex: 0 0 calc(100% / 3.3);
    padding: 0 20px;
}
.coberturas>div{
    display: flex;
    align-items: center;
}
.coberturas .bx-gris{
    background: #F2F2F2;
    padding: 12px 12px 12px 55px;
    margin-left: -42px;
    position: relative;
    z-index: -1;
    border-radius: 10px;
    height: 110px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.coberturas .xs{
    font-size: 10pt;
}
.slide{
    overflow: hidden;
    padding-top: 25px;
    width: -webkit-fill-available;
}
.slide-coberturas, .slide-opiniones{
    transition: transform 0.4s ease;
    display: flex;
}
.dots, .dots50 {
  margin-top: 10px;
}
.dot, .dot50 {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 5px;
  background: transparent;
  border-radius: 50%;
  cursor: pointer;
  border: 1px solid #969696;
}
.dot:hover{
    background: #969696;
}
.dot.active, .dot50.active {
  background: #323232;
}
.flecha{
    width: 34px;
    height: 34px;
    border: 3px solid #969696;
    border-radius: 100%;
    display: flex;
    font-size: 20pt;
    color: #969696;
    text-align: -webkit-center;
    align-items: center;
    flex-direction: column-reverse;
    justify-content: center;
    cursor: pointer;
}
.flecha:hover{
    border-color: #646464;
    color: #646464;
}
.flecha:active, .flecha:focus{
    border-color: #323232;
    color: #323232;
}
.slide-all{
    display: grid;
    grid-template-columns: 5% 85% 5%;
    justify-content: space-between;
    align-items: center;
    justify-items: center;
}
.slide-nuestros{
   display: flex;             /* coloca las tarjetas en fila */
  overflow-x: hidden;          /* activa scroll horizontal */
  scroll-behavior: smooth;   /* scroll suave */
  scrollbar-width: none;     /* opcional: oculta barra en Firefox */
}
.slide-nuestros::-webkit-scrollbar{
  display: none;             /* oculta barra en Chrome/Safari */
}
.nuestros-box{
    flex: 0 0 calc(100% / 3.3);
    padding: 0 20px;
}
.nuestros-box>div{
    width: 85%;
    margin: auto;
    border: 1px solid #D81E05;
    border-radius: 10px;
    box-shadow: 0px 0px 15px -5px #000;
    padding: 15px;
    height: 530px;
}
.nuestros-box h4{
    font-size: 18pt;
}
.nuestros-box hr{
    border-color: #AC0404;
}
.ulcheck{
    margin: 10px 0 0;
    padding-left: 20px;
    list-style: url(../img/check-rojo.svg);
    font-size: 10pt;
}
.ulcheck li:not(:last-child), .ulrojo li:not(:last-child), .ularrow li:not(:last-child){
    margin-bottom: 10px;
}
.small{
    font-size: 10pt;
}
.large{
    font-size: 15pt;
}
table{
    border-collapse: collapse;
    margin: 30px auto 0;
}
table, th, td{
    border: 1px solid #F2F2F2;
}
th{
    height: 50px;
    background: #D81E05;
    color: #fff;
    font-weight: 600;
    font-size: 18px;
    width: 120px;
}
.th{
    text-align: left;
    width: 300px;
    background: #fff;
    color: #000;
    font-weight: 700;
    padding: 0 15px;
}
td{
    height: 40px;
    text-align: center;
}
.td{
    background: #BFBFBF;
    font-weight: 600;
    font-size: 16px;
    text-align: left;
    padding: 0 15px;
}
.table-xs th{
    font-size: 16px;
}
.table-xs td{
    font-size: 14px;
}
.grid4{
    display: grid;
    grid-template-columns: 22% 22% 22% 22%;
    justify-content: space-around;
    margin: 30px 0;
}
.numbers{
    display: flex;
    align-items: stretch;
}
.numbers span, .quehacer span{
    color: #AC0404;
    font-size: 55pt;
    font-weight: 900;
}
.numbers p{
    text-align: left;
    margin-left: 5px;
    border-left: 3px solid #BFBFBF;
    padding-left: 5px;
    font-size: 14pt;
}
.bg-gris{
    background: #F2F2F2;
    padding: 20px;
    border-radius: 10px;
}
.flexi{
    display: flex;
    grid-gap: 0 50px;
    align-items: center;
}
.img-border{
    border-radius: 10px;
}
.ulrojo{
    margin: 0;
    padding-left: 20px;
    font-size: 11pt;
}
.ulrojo li::marker{
    color: #AC0404;
    font-size: 16pt;
}
.opiniones>div{
    background: url(../img/globo-opiniones.svg);
    background-repeat: no-repeat;
    height: 250px;
    background-position: center;
    display: flex;
    flex-direction: column;
    /* align-content: center; */
    align-items: center;
    justify-content: center;
    padding: 0 40px;
    grid-gap: 15px 0;
}
.justifyCenter{
    justify-content: center;
}
.ularrow{
    list-style: url(../img/flecha-roja.svg);
    margin: 0;
    padding-left: 20px;
    font-size: 11pt;
}
.quehacer>div{
    display: flex;
    grid-gap: 0 15px;
    align-items: center;
}
.quehacer{
    grid-gap: 50px 0;
}
.quehacer a{
    color: #AC0404;
    font-weight: 600;
    font-style: italic;
    font-size: 12pt;
    text-decoration: underline;
    cursor: pointer;
}
.show{
    display: block!important;
}
.pregunta-head{
    background: #D81E05;
    color: #fff;
    font-size: 14pt;
    border-radius: 5px;
    padding: 15px;
}
.pregunta-head h3{
    margin: 0;
}
.pregunta-body{
    padding: 15px;
}
.footer{
	background: #AC0404;
    display: flex;
    grid-gap: 40px;
    justify-content: space-between;
    text-align: center;
    padding: 15px 40px;
}
.footer p, .footer a{
	color: #fff;
	font-size: 9pt;
}
.movil, .hide{
    display: none;
}
@media (max-width: 820px){
    .movil{
        display: block;
    }
    .desk{
        display: none;
    }
    .head {
	    padding: 10px 20px;
	}
    .menumovil{
        position: absolute;
        left: 0;
        top: 0;
        padding: 20px;
        width: 80%;
        background: #fff;
        height: 100vh;
        z-index: 3;
    }
    .padding0-mobile{
        padding: 0;
    }
    .bg-mapfre {
        grid-template-columns: 100%;
        border-radius: 0;
        grid-gap: 40px 0;
    }
    .bg-mapfre img{
        height: 235px;
    }
    h1 {
        font-size: 19pt;
    }
    h2 {
        font-size: 16pt;
    }
    .skewX3 {
        padding: 3px 30px;
        font-size: 14pt;
    }
    .skewX3 strong {
        font-size: 14pt;
    }
    form {
        background: transparent;
        padding: 0;
        border-radius: 0;
        color: #fff;
    }
    .grid2, .grid3, .slide-all, .grid4 {
        grid-template-columns: 100%;
    }
    .terminos {
        grid-template-columns: 20px 90%;
    }
    .terminos a {
        color: #fff;
    }
    .coberturas, .opiniones {
        flex: 0 0 calc(100% / 1.1);
    }
    .slide-nuestros {
        display: block;
    }
    .nuestros-box>div {
        width: 90%;
        height: auto;
    }
    .table{
        overflow-y: scroll;
    }
    th {
        padding: 0 15px;
    }
    .td {
        padding: 5px 15px;
    }
    .spans{
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 15px;
    }
    .w3-badge {
        display: inline-block;
        width: 15px;
        height: 15px;
        margin: 0 5px;
        background: transparent;
        border: 1px solid #969696;
        border-radius: 50%;
        cursor: pointer;
    }
     .white{
        background: #323232!important;
    }
    .numbers {
        width: 75%;
        margin: auto;
    }
    .flexi {
        grid-gap: 50px;
        flex-direction: column;
    }
    .flexi-reverse{
        flex-direction: column-reverse;
    }
    .grid2-movil{
        grid-template-columns: 48% 48%;
    }
    .bg-gris {
        border-radius: 0;
    }
    .uldown-mobile{
        list-style: none;
        padding: 0;
    }
    .uldown-mobile li strong{
        display: flex;
        align-items: center;
        grid-gap: 10px;
    }
    .uldown-mobile span{
        font-size: 16pt;
        color: #AC0404;
    }
    .hide2{
        display: none;
    }
    .footer {
        grid-gap: 20px;
        padding: 15px 20px;
        flex-direction: column;
    }
}