/* HOME-PORTADA-03. Carátula aprobada de Inicio; estilos acotados al bloque. */
.page-home .home-cover[data-home-cover] {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: minmax(0, 1fr);
  grid-template-areas: 'cover';
  position: relative;
  isolation: isolate;
}
.home-cover[data-home-cover] .home-cover-copy,
.home-cover[data-home-cover] .home-cover-visual {
  grid-area: cover;
}
.home-cover[data-home-cover] .home-cover-visual {
  z-index: 0;
  min-height: 100%;
}
.home-cover[data-home-cover] .home-cover-visual img {
  object-position: 50% top;
}
.home-cover[data-home-cover] .home-cover-visual::after {
  inset: 0;
  background:
    linear-gradient(90deg, #012d20ed 0%, #012d20d1 22%, #012d2080 42%, #012d2014 68%, #012d2000 88%),
    linear-gradient(0deg, #012d20d9 0%, #012d2033 32%, #012d2000 65%);
}
.page-home .home-cover[data-home-cover] .home-cover-copy {
  position: relative;
  z-index: 1;
  width: 100%;
  min-width: 0;
  align-items: flex-start;
  justify-content: center;
  padding: 24px var(--cover-gutter) 152px;
}
.home-cover[data-home-cover] .cover-body {
  width: 100%;
  max-width: 710px;
}
:root body.page-home .home-cover[data-home-cover] h1 {
  max-width: 710px;
  font-size: clamp(52px, min(5vw, 9.1svh), 84px);
  line-height: 1.13;
  letter-spacing: -.045em;
  text-wrap: initial;
}
.home-cover[data-home-cover] h1 > span {
  display: inline;
  color: inherit;
}
.home-cover[data-home-cover] h1 > em {
  display: block;
}
.page-home .home-cover[data-home-cover] .cover-description {
  max-width: 470px;
  margin: 0 0 18px;
  font-size: 12px;
  letter-spacing: .015em;
  line-height: 1.8;
  color: #e4ebe0;
}
.page-home .home-cover[data-home-cover] .cover-actions {
  display: grid;
  grid-template-columns: 212px 164px;
  align-items: center;
  margin-top: 30px;
  gap: 28px;
}
.page-home .home-cover[data-home-cover] .cover-primary {
  min-height: 54px;
  width: 100%;
  justify-content: space-between;
  padding: 15px 20px;
  font-size: 14px;
  gap: 24px;
}
.page-home .home-cover[data-home-cover] .cover-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  min-height: 54px;
  font-size: 14px;
  gap: 24px;
  color: #f8f4eb;
  border-color: #c2d1c0;
}
.home-cover[data-home-cover] .cover-footer {
  position: absolute;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 44px minmax(0, 1fr);
  align-items: center;
  gap: 24px;
  left: var(--cover-gutter);
  right: var(--cover-gutter);
  bottom: 32px;
  padding-top: 22px;
  border-top: 1px solid #f8f4eb40;
}
.page-home .home-cover[data-home-cover] .cover-person {
  justify-self: start;
  min-height: 44px;
  margin: 0;
  gap: 12px;
}
.home-cover[data-home-cover] .cover-person > img {
  width: 40px;
  height: 40px;
}
.home-cover[data-home-cover] .cover-person > span > span {
  font-size: 11px;
  color: #d2dfd4;
}
.page-home .home-cover[data-home-cover] .cover-explore {
  position: static;
  grid-column: 2;
  justify-content: center;
  width: 44px;
  min-height: 44px;
  margin: 0;
  padding: 0;
  color: #e2e9df;
}
.home-cover[data-home-cover] .cover-explore::after {
  display: none;
}
.home-cover[data-home-cover] .cover-explore svg {
  width: 20px;
  height: 20px;
}
.page-home .home-cover[data-home-cover] .home-cover-visual figcaption {
  left: auto;
  right: var(--cover-gutter);
  bottom: 44px;
  max-width: 320px;
  text-align: right;
  font-size: 12px;
}
@media (min-width: 801px) and (max-height: 760px) {
  .page-home .home-cover[data-home-cover] .home-cover-copy {
    padding-top: 24px;
    padding-bottom: 132px;
  }
  :root body.page-home .home-cover[data-home-cover] h1 {
    font-size: clamp(48px, min(5vw, 8.5svh), 70px);
  }
  .page-home .home-cover[data-home-cover] .cover-description {
    margin: 0 0 15px;
    font-size: 12px;
  }
  .page-home .home-cover[data-home-cover] .cover-actions {
    margin-top: 24px;
  }
  .page-home .home-cover[data-home-cover] .cover-person {
    margin: 0;
    min-height: 44px;
  }
  .home-cover[data-home-cover] .cover-footer {
    bottom: 24px;
    padding-top: 16px;
  }
  .page-home .home-cover[data-home-cover] .home-cover-visual figcaption {
    bottom: 36px;
  }
}
@media (max-width: 1023px) and (min-width: 801px) {
  .page-home .home-cover[data-home-cover] .home-cover-copy {
    padding-left: 32px;
  }
  :root body.page-home .home-cover[data-home-cover] h1 {
    max-width: 620px;
    font-size: 56px;
  }
  .home-cover[data-home-cover] .home-cover-visual img {
    object-position: 25% top;
  }
}
@media (max-width: 800px) {
  .page-home .home-cover[data-home-cover] {
    min-height: max(480px, calc(100svh - 80px));
  }
  .home-cover[data-home-cover] .home-cover-visual img {
    object-position: 61% top;
  }
  .home-cover[data-home-cover] .home-cover-visual::after {
    background: linear-gradient(180deg, #012d2000 30%, #012d2010 46%, #012d20a3 63%, #012d20d9 84%, #012d20f2 100%);
  }
  .page-home .home-cover[data-home-cover] .home-cover-copy {
    justify-content: flex-end;
    padding: 180px 24px 48px;
  }
  .home-cover[data-home-cover] .cover-body {
    max-width: 620px;
  }
  :root body.page-home .home-cover[data-home-cover] h1 {
    max-width: 620px;
    font-size: clamp(34px, 10.3vw, 62px);
    line-height: 1.14;
    letter-spacing: -.045em;
  }
  .page-home .home-cover[data-home-cover] :is(.cover-description, .cover-secondary, .cover-person, .cover-explore, .cover-footer) {
    display: none;
  }
  .page-home .home-cover[data-home-cover] .cover-actions {
    display: block;
    width: 100%;
    margin-top: 26px;
  }
  .page-home .home-cover[data-home-cover] .cover-primary {
    width: 100%;
    min-height: 52px;
    padding: 12px 0;
    border: 0;
    border-bottom: 1px solid #ffffff80;
    background: transparent;
    color: #f8f4eb;
    font-size: 14px;
    gap: 32px;
  }
  .page-home .home-cover[data-home-cover] .cover-primary:hover {
    background: transparent;
    border-color: #f8f4eb;
  }
  .page-home .home-cover[data-home-cover] .home-cover-visual figcaption {
    display: none;
  }
}
@media (max-width: 359px) {
  .page-home .home-cover[data-home-cover] .home-cover-copy {
    padding-inline: 20px;
    padding-bottom: 36px;
  }
}
