.desktop-nav .active::after { right: 0; }

.place-hero { position: relative; min-height: 100svh; overflow: hidden; color: var(--white); background: var(--ink); }
.place-hero > img,
.place-hero-shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.place-hero > img { object-fit: cover; animation: heroScale 14s ease-out both; }
.place-hero-shade { background: linear-gradient(90deg, rgba(0,0,0,.72), rgba(0,0,0,.18) 64%), linear-gradient(0deg, rgba(0,0,0,.42), transparent 60%); }
.place-hero-content { position: absolute; left: 8vw; bottom: 13vh; width: min(900px, 76vw); }
.place-hero-content h1 { font-size: clamp(3.8rem, 6.8vw, 7.6rem); }
.place-hero-content > p:last-child { max-width: 610px; margin: 2rem 0 0; font-size: clamp(1.04rem,1.35vw,1.22rem); font-weight: 300; }

.valley { min-height: 90vh; }
.valley-copy { max-width: 1180px; margin-top: clamp(4rem,8vw,8rem); }
.valley h2,
.wind h2,
.adige h2,
.place-summary h2 { font-size: clamp(3.4rem,6.3vw,7rem); }
.valley-copy > p:last-child { width: min(66.666vw,1080px); max-width: 100%; margin: 2.7rem 0 0; font-size: clamp(1rem,1.3vw,1.22rem); font-weight: 300; }

.valley-image { position: relative; height: min(82vh,920px); margin: 0; overflow: hidden; background: var(--ink); }
.valley-image img { height: 100%; object-fit: cover; }

.wind { padding: clamp(7rem,11vw,11rem) 8vw; color: var(--white); background: var(--ink); overflow: hidden; }
.wind-heading h2 { margin-top: clamp(4rem,8vw,8rem); }
.wind-heading > p:last-child { width: min(66.666vw,1080px); max-width: 100%; margin: 2.5rem 0 0; color: rgba(255,255,255,.72); font-size: clamp(1rem,1.25vw,1.18rem); font-weight: 300; }

.adige { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(2.5rem,4vw,5rem); align-items: center; background: var(--white); }
.adige-head { grid-column: 1 / -1; }
.adige-image { position: relative; height: min(72vw,860px); overflow: hidden; }
.adige-image img { height: 100%; object-fit: cover; object-position: center; }
.adige-copy { max-width: none; }
.adige-copy > p:last-child { max-width: 900px; margin: 2.5rem 0 0; font-size: clamp(1rem,1.23vw,1.18rem); font-weight: 300; }

.place-summary { min-height: 95vh; padding: clamp(7rem,11vw,11rem) 8vw; display: flex; flex-direction: column; justify-content: center; color: var(--white); background: #1b1c1e; }
.place-summary-heading { margin-top: clamp(4rem,8vw,8rem); }
.place-signals { margin: clamp(5rem,8vw,8rem) 0 0; border-top: 1px solid rgba(255,255,255,.24); }
.place-signals div { display: grid; grid-template-columns: 4rem 1fr 1fr; align-items: center; padding: 1.4rem 0; border-bottom: 1px solid rgba(255,255,255,.24); }
.place-signals span { color: rgba(255,255,255,.46); font-size: .65rem; letter-spacing: .15em; }
.place-signals strong { font-family: var(--display); font-size: clamp(1.6rem,2.4vw,2.6rem); font-weight: 400; }
.place-signals small { justify-self: start; color: rgba(255,255,255,.62); font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.place-summary .button-light { align-self: flex-start; margin-top: clamp(2.75rem,4vw,4rem); }

@media (max-width: 900px) {
  .place-hero > img { object-position: 58% center; }
  .place-hero-content { left: 1.4rem; right: 1.4rem; bottom: 13vh; width: auto; }
  .place-hero-content h1 { font-size: clamp(3.1rem,12vw,5.2rem); }
  .valley { min-height: auto; }
  .valley-copy > p:last-child,
  .wind-heading > p:last-child { width: 100%; }
  .valley-image { height: 75svh; }
  .valley-image img { object-position: 58% center; }
  .wind { padding: 7rem 1.4rem; }
  .adige { grid-template-columns: 1fr; }
  .adige-image { height: 118vw; max-height: 760px; }
  .place-summary { min-height: auto; padding: 7rem 1.4rem; }
  .place-signals { margin: 5rem 0 0; }
  .place-signals div { grid-template-columns: 2.5rem 1fr; }
  .place-signals small { grid-column: 2; justify-self: start; margin-top: .35rem; }
  .place-summary .button-light { align-self: flex-start; }
}
