.firmas,
footer,
header {
    display: flex;
}
:root {
    --main: #8d096b;
    --secondary: #f4b61c;
    --white: #faf7fb;
    --light-grey: #ece9ed;
    --grey: #c0b6bd;
    --dark-grey: #7c767e;
    --black: #291825;
    --padding-cta: 16px 24px;
    --padding-site: 184px;
}
html{
      font-family: "Roboto", sans-serif;
    color: #24467d;
        width: 1050px;   /* Mantén esta proporción 210:297 */
    height: 1485px;  /* 1050 * (297 / 210) = 1485 */
}
#certificacion-wrapper {
    width: 1050px;   /* Mantén esta proporción 210:297 */
    height: 1485px;  /* 1050 * (297 / 210) = 1485 */
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    overflow: hidden;
    margin: 0 auto;
    position: relative;
          width: 21cm;
  height: 29.7cm;
}

#certificacion {
    width: 100%;
    height: 100%;
    background: white;
        width: 1050px;   /* Mantén esta proporción 210:297 */
    height: 1485px;
          width: 21cm;
  height: 29.7cm;
}
body{
      width: 21cm;
  height: 29.7cm;
      margin: 0px;
      position: relative;
        background: white;
          box-sizing: border-box;
}
.body {
  width: 21cm;
  height: 29.7cm;
  margin: 0;
    padding: 0.5cm 1.5cm 0cm 1.5cm;
  box-sizing: border-box;
  background: white;
  background-size: cover;
  /*
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  */
}
h1 {
    margin: 1.2cm auto;
    font-size: 22px;
}
section.mc {
    font-size: 20px;
    margin-bottom: 4cm;
}
section.mc div {

    max-width: 600px;
    margin: auto;
        margin-bottom: 0.8em;
}
.firmas {
    display: flex;
    flex-direction: column;
    font-size: 20px;
}
.ceojob {
    color: #5b749e;
}
@media print {
  body#certificacion {
    size: A4 portrait;
  }
}
header {
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2cm;
    margin-top: 1.5cm;
    margin-left: 2cm;
}
body {
    text-align: center;
    overflow-x: hidden;
}
#veracidad,
h2{
    font-size: 2em;
}
img.firma {
    object-fit: contain;
    border-bottom: 1px solid #000;
    filter: grayscale(1);
}
.firmas {
    justify-content: space-evenly;
}
.academy {
    font-weight: 900;
}
footer {
    justify-content: space-evenly;
    align-items: center;
    margin-top: 25px;
    position: absolute;
    bottom: 0px;
    background: #24467d;
    width: 100%;
    height: 3cm;
    display: flex
;
}
footer * {
    max-width: 250px;
}
::selection {
    background: var(--main);
    color: var(--white);
    text-shadow: none;
}
@media only screen and (max-width: 270px) {
    body {
        padding: 0.5cm;
        width: 650px;
        max-width: 90%;
        position: fixed;
        left: 50%;
        transform: translatex(-50%);
    }
}

