/* Refinamientos locales del sistema NP aprobado. No afecta a otras páginas. */
.np-local-landing .np-hero-name {
  max-width: none;
  font-size: clamp(3.2rem, 5.5vw, 6.4rem);
  line-height: 1.08;
}
.np-local-landing .np-hero-lead {max-width: 46ch}
.np-local-landing .np-hero-media img {object-position: center}
.np-local-intro {border-bottom: 1px solid var(--np-line)}
.np-local-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(2rem, 6vw, 6rem);
  align-items: center;
}
.np-local-intro-copy p + p {margin-top: 1.4rem}
.np-local-landing .np-authority-media {
  width: min(100%, 420px);
  aspect-ratio: auto;
  margin-inline: auto;
}
.np-local-landing .np-authority-media img {height: auto;object-fit: contain}
.np-local-credential {
  max-width: 52ch;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--np-line);
  color: var(--np-muted);
  font-size: .88rem;
  line-height: 1.7;
}
.np-local-landing .np-route .np-display {max-width: 19ch}
.np-local-address {display: grid;gap: .3rem;margin-top: 2rem;font-style: normal;font-size: .95rem}
.np-local-address strong {font-weight: 550}
.np-local-route-note {margin-top: 1.4rem;color: var(--np-muted);font-size: .9rem;line-height: 1.7;max-width: 56ch}
.np-local-landing .np-route-map,
.np-local-landing .np-route-map iframe {min-height: 480px}
.np-local-reviews-head {max-width: 850px;margin-bottom: 3rem}
.np-local-landing .np-service-list {margin-top: 3rem}
.np-local-landing .np-service-row {align-items: start}
.np-local-landing .np-service-arrow {font-size: 1.5rem}
.np-local-landing .np-button:active {transform: translateY(1px)}
@media (min-width: 960px) and (max-width: 1150px) {
  .np-local-landing .np-hero {grid-template-columns: minmax(0, 1fr) minmax(0, 1fr)}
  .np-local-landing .np-hero-copy {padding-inline: 2rem}
  .np-local-landing .np-hero-name {font-size: 5.25vw}
}
@media (max-width: 959px) {
  .np-local-intro-grid {grid-template-columns: minmax(0, 1fr);gap: 2rem}
  .np-local-landing .np-hero {position: relative}
  .np-local-landing .np-hero-copy {padding-block: 3rem}
  .np-local-landing .np-hero-name {font-size: clamp(2.8rem, 7.7vw, 5.5rem)}
  .np-local-landing .np-hero-media {height: auto;aspect-ratio: 16 / 10}
  .np-local-landing .np-authority-media {max-width: 360px}
  .np-local-landing .np-route-map,
  .np-local-landing .np-route-map iframe {min-height: 360px}
}
@media (max-width: 599px) {
  .np-local-landing .np-section {padding-block: 3.5rem}
  .np-local-landing .np-hero-name {font-size: clamp(2.1rem, 10.6vw, 3.8rem)}
  .np-local-landing .np-actions {gap: 1.15rem}
  .np-local-landing .np-text-link {font-size: .82rem}
  .np-local-landing .np-hero-copy {padding-block: 2.5rem 2rem}
  .np-local-landing .np-route-actions .np-button {font-size: .84rem;padding-inline: 1rem}
  .np-local-landing .np-display-medium {font-size: clamp(2rem, 8.5vw, 3rem)}
}
@media (max-width: 720px) {
  .np-local-landing .np-hero {height: auto;min-height: 100svh}
  .np-local-landing .np-hero-media {
    position: absolute;
    inset: 70px 0 0;
    height: calc(100% - 70px);
    aspect-ratio: auto;
  }
  .np-local-landing .np-hero-media::after {
    background: linear-gradient(100deg, rgba(245,240,230,.95), rgba(245,240,230,.85) 60%, rgba(245,240,230,.72));
  }
}
