/* Portada de MiControl, basada en la referencia de 1672 × 941. */
.portada {
  --max: 94rem;
  --margen-portada: 1.5rem;
  --pad: max(var(--margen-portada), calc((100% - var(--max)) / 2));
  --tinta-portada: #343132;
  --naranja-portada: #cf4500;
}

.portada .site-header,
.portada-hero {
  font-family: system-ui, sans-serif;
}

.portada .site-header {
  background: #fdfcfc;
  border-bottom-color: #f3ebe7;
  color: var(--tinta-portada);
}

.portada .brand {
  color: inherit;
  gap: .75rem;
  letter-spacing: -.04em;
}

.portada .brand img {
  object-fit: contain;
}

.portada .nav .btn {
  border-radius: 16px;
}

.portada .nav .btn-ghost {
  color: inherit;
  border: 1px solid #e44800;
  background: transparent;
}

.portada .btn-primary {
  background: var(--naranja-portada);
}

.portada .btn-primary:hover {
  background: #b93e00;
}

.portada .nav a[aria-disabled="true"] {
  cursor: default;
  pointer-events: none;
}

.portada-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 0;
  color: var(--tinta-portada);
  background:
    radial-gradient(ellipse at 41% 27%, #fdf8f4 0, transparent 58%),
    radial-gradient(ellipse at 30% 90%, #fdf7f3 0, transparent 57%),
    linear-gradient(115deg, #fdf4ef, #fdf5f0 64%, #fff0e5);
}

.portada-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 43rem;
  height: 43rem;
  left: -24rem;
  bottom: -36rem;
  border-radius: 50%;
  background: #fee5cf;
}

.portada-hero::after {
  content: "";
  position: absolute;
  z-index: -2;
  width: 50rem;
  height: 53rem;
  right: -21.875rem;
  top: -7.25rem;
  border-radius: 50%;
  background: linear-gradient(156deg, #ffd4b8, #ffdbc4 29%, #ffeadb 59%, transparent 85%);
}

.portada-interior {
  position: relative;
  width: min(var(--max), calc(100% - 2 * var(--margen-portada)));
  margin-inline: auto;
  padding-block: 2.75rem 1.375rem;
}

.portada-arte {
  display: block;
  width: min(100%, 51.25rem);
  height: auto;
  margin: .375rem 0 0 auto;
}

.portada-etiqueta {
  display: inline-block;
  border-radius: 999px;
  background: #fde6cf;
  color: #b94000;
  font-weight: 600;
}

.portada-texto h1 {
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -.018em;
}

.portada-resumen {
  line-height: 1.4;
}

.portada-funciones.btn {
  border-radius: 999px;
  border: 1px solid #fff;
  box-shadow: 0 4px 7px #62381910;
}

.portada-ventajas {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin-bottom: 0;
}

.portada-ventajas li {
  display: flex;
  align-items: center;
  border-radius: 999px;
  background: #f8ede2;
  color: #292626;
  font-weight: 600;
  line-height: 1.16;
}

.portada-ventajas svg {
  flex: none;
  color: #e65c00;
}

.portada-etiqueta {
  padding: .375rem .9375rem;
  font-size: .9375rem;
}

.portada-texto h1 {
  max-width: 16ch;
  margin-top: 1.375rem;
  font-size: 2.25rem;
}

.portada-salto {
  display: none;
}

.portada-resumen {
  max-width: 41.25rem;
  margin-top: 1.125rem;
  font-size: 1.125rem;
}

.portada-funciones.btn {
  min-height: 3.375rem;
  margin-top: 1.5rem;
  padding: .5rem 1.75rem;
  font-size: 1.25rem;
}

.portada-ventajas {
  margin-top: 1.625rem;
  gap: .5rem;
}

.portada-ventajas li {
  gap: .5rem;
  padding: .5625rem .75rem;
  font-size: .8125rem;
}

.portada-ventajas svg {
  width: 1.4375rem;
  height: 1.4375rem;
}

@media (min-width: 48rem) {
  .portada-texto h1 {
    font-size: 3rem;
  }

  .portada-resumen {
    font-size: 1.25rem;
  }
}

@media (width <= 1100px) {
  .portada-hero::after {
    top: auto;
    bottom: -7.5rem;
    width: min(82%, 45rem);
    height: auto;
    aspect-ratio: 6 / 5;
    right: -15%;
    background: linear-gradient(156deg, #ffdcc4, #ffeddf 55%, transparent 85%);
  }
}

@media (width > 1100px) {
  .portada .nav {
    font-size: 1rem;
    font-weight: 600;
    white-space: nowrap;
  }

  .portada .nav a.link {
    padding: .75rem .375rem;
    border-radius: 0;
    border-width: 2px;
  }

  .portada .nav a.link[aria-current="page"] {
    background: transparent;
    border-bottom-color: #e44800;
    color: #c54000;
  }

  .portada .nav .btn {
    padding: .5rem 1rem;
    font-size: 1rem;
  }

  .portada-interior {
    padding-block: 3.5rem 5rem;
  }

  .portada-texto {
    position: relative;
    z-index: 1;
    max-width: 46%;
  }

  .portada-arte {
    position: absolute;
    bottom: 3rem;
    right: clamp(-6rem, calc((var(--max) - 100vw) / 2), -1.5rem);
    width: min(72%, 67.2rem);
    max-width: none;
    margin: 0;
  }

  .portada-etiqueta {
    font-size: 1.125rem;
  }

  .portada-texto h1 {
    max-width: none;
    margin-top: 1.8125rem;
    font-size: clamp(3.25rem, calc(1.9rem + 2.25vw), 4.25rem);
  }

  .portada-resumen {
    margin-top: 1.5625rem;
  }

  .portada-funciones.btn {
    margin-top: 2rem;
  }

  .portada-ventajas {
    margin-top: 2.5rem;
  }

  .portada .site-header:not(.scrolled) ~ #wa-flotante {
    visibility: hidden;
  }
}

@media (min-width: 94rem) {
  .portada .site-header .wrap {
    min-height: 5.6875rem;
    padding-block: 0 .3125rem;
  }

  .portada .brand {
    gap: 1rem;
    font-size: 2.375rem;
  }

  .portada .brand img {
    width: 2.875rem;
    height: 3.875rem;
  }

  .portada .nav {
    gap: 1.75rem;
    font-size: 1.25rem;
  }

  .portada .nav a.link {
    padding-inline: .4375rem;
  }

  .portada .nav-acc {
    gap: 1rem;
    margin-left: 1.5rem;
  }

  .portada .nav .btn {
    min-height: 3.1875rem;
    padding-inline: 1.875rem;
    font-size: 1.1875rem;
  }

  .portada-interior {
    padding-block: 5.5rem 8rem;
  }

  .portada-texto {
    max-width: min(46%, 41.25rem);
  }

  .portada-arte {
    bottom: 4.875rem;
  }

  .portada-etiqueta {
    padding: .3125rem 1.5rem;
    font-size: 1.3125rem;
  }

  .portada-salto {
    display: initial;
  }

  .portada-resumen {
    font-size: 1.5rem;
  }

  .portada-funciones.btn {
    gap: 1.0625rem;
    margin-top: 2.1875rem;
    min-height: 4.25rem;
    min-width: 17.8125rem;
    padding: 0 1.75rem 0 2.5rem;
    font-size: 1.5rem;
  }

  .portada-funciones svg {
    width: 1.875rem;
    height: 1.875rem;
  }

  .portada-ventajas {
    margin-top: 3.625rem;
    gap: .75rem;
  }

  .portada-ventajas li {
    min-height: 3.8125rem;
    padding: .625rem 1.125rem;
    gap: .75rem;
    font-size: .9375rem;
  }

  .portada-ventajas svg {
    width: 1.8125rem;
    height: 1.8125rem;
  }
}
