:root {
     --blanco: #FFFFFF;
     --negro: #000000;
     --azul: #002060;
     --rojo: #953634;
     --enlace: blue;
}

html {
     font-size: 62.5%;        /* 1rem = 10px */
     box-sizing: border-box;
}

/* Box-sizing */
*,
*:before,
*:after {
     box-sizing: inherit;
}

/* Utilidades */
body {
     font-size: 1.5rem;
     font-family: Arial, Helvetica, sans-serif;
}

.contenedor {
     max-width: 150rem;
     width: 80%;
     margin: 0 auto;
}

h1 {
     font-size: 3rem;
     text-transform: uppercase;
     margin: 3rem 0 3rem 0;
     text-align: center;
}
h2 {
     font-size: 2rem;
     line-height: 2;
}
h3 {
     color: var(--blanco);
     padding-left: 2rem;
     padding-top: 2rem;
     font-size: 2.2rem;
}

img {
     width: 100%;
}


p {
     text-align: justify;
     line-height: 1.5;
     color: var(--negro);
}

a{
     color: var(--enlace);
}
a:visited {
     color: var(--enlace);
}

/* Estilos */
.logo {
     display: flex;
     justify-content: center;
     max-width: 80rem;
}

.borde {    
     border: var(--negro) solid 0.2rem;
     padding: 0 3rem 3rem 3rem;
     margin-bottom: 4rem;
}

.cursiva {
     font-style: italic;
}

.azul {
     color: var(--azul);
     font-weight: bold;
}

.rojo {
     color: var(--rojo);
     font-weight: bold;
}

/* Tabla */
th, td {
     font-size: 1.2rem;
     padding: 0.7rem;
     text-align: center; 
     word-wrap: break-word;
}
@media (min-width: 768px) {
     th, td {
          font-size: 1.5rem;
          padding: 1rem;
          text-align: center; 
          overflow: hidden;
     }
}

table {
     margin-bottom: 4rem;
     width: 100%;
     border-collapse: collapse;
     table-layout: fixed;
}

/* Listas */
ol {
     list-style-type: none;
     counter-reset: item;
}
li {
     text-align: justify;
     line-height: 1.8;
}
ol li:before {
     content: counter(item) ". ";
     counter-increment: item;
     font-weight: bold;
   }

/* Footer */
.footer {
     background-color: var(--rojo);
}
.footer__texto {
     /* list-style-type: none; */
     color: var(--blanco);
     margin: 0;
     font-size: 1.5rem;
     font-weight: bold;
     text-align: left;
     line-height: 4rem;
}
.footer__texto--correo {
     color: var(--blanco);
     text-decoration: none;
}
.footer__lista {
     margin-bottom: 0;
     max-width: 50rem;
}

.footer__mapa {
     max-width: 3rem;
     margin-left: 1rem;
}
.footer__tel {
     max-width: 2.5rem;
     margin-left: 1rem;
     fill: var(--negro);
     stroke: var(--negro);
}
.footer__email {
     vertical-align: middle;
     max-width: 3rem;
     margin-left: 1rem;
     stroke: var(--negro);
}

.footer__icono {
     max-width: 15rem;
     margin: 2rem auto;
}
@media (min-width: 768px) {
     .footer__icono {
          max-width: 20rem;
     }
}

.direccion {
     display: flex;
     flex-direction: column;
     justify-content: center;
     align-items: center;
}
@media (min-width: 768px) {
     .direccion {
          display: flex;
          flex-direction: row;
          justify-content: center;
          align-items: center;
          gap: 5rem;
     }
}
