.pgkLand{
  background: #fff;

  /*background: var(--pgk-bg, #f3f1ed);*/
  height: 320vh;              
  position: relative;
  isolation: isolate;
}

/* sticky full viewport */
.pgkLand__sticky{
  position: sticky;
  top: 0;
  height: 100vh;
  display: grid;
  place-items: center;

  /* spazio sotto header fisso */
  padding-top: var(--pgk-header-h, 86px);
  padding-bottom: 24px;

  overflow: clip;
}

/* media wrapper: dimensioni animate via CSS vars */
.pgkLand__media{
  width: calc(var(--w, 62) * 1vw);
  height: calc(var(--h, 46) * 1vh);

  border-radius: calc(var(--r, 14) * 1px);
  overflow: hidden;            
  position: relative;
  transform: translate3d(0,0,0);
  will-change: width, height, border-radius;
}

.pgkLand__img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transform: scale(1.02);
}

/* overlay testo DENTRO immagine */
/* DISATTIVA qualunque velo/gradient */
.pgkLand__media::after{
  display: none !important;
}

/* TESTO: posizione fissa come screenshot */
.pgkLand__txt{
  position: absolute;
  left: clamp(28px, 4vw, 56px);
  bottom: clamp(48px, 14vw, 156px);
  width: min(720px, 90vw);

  color: #fff;
  opacity: 1;                
  transform: none;            /* niente animazioni testo */
}

/* Nessuna ombra, nessun pannello */
.pgkLand__kicker,
.pgkLand__title,
.pgkLand__desc,
.pgkLand__link{
  color: #fff !important;
  text-shadow: none !important;
  background: none !important;
}

/* Tipografia pulita */
.pgkLand__kicker{
  font-family: var(--pgk-font-sans, system-ui);
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin: 0 0 10px;
}

.pgkLand__title{
  font-family: var(--pgk-font-serif, Georgia);
  font-size: clamp(58px, 7vw, 112px);
  line-height: .90;
  margin: 0 0 14px;
}

.pgkLand__desc{
  margin: 0 0 18px;
  max-width: 56ch;
  font-size: 15px;
  line-height: 1.65;
}

.pgkLand__link{
  display: inline-block;
  font-family: var(--pgk-font-sans, system-ui);
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid #fff;
  padding-bottom: 4px;
}

/* mobile */
@media (max-width: 980px){
  .pgkLand{
    height: 280vh;
  }
  .pgkLand__sticky{
    padding-top: var(--pgk-header-h-m, 72px);
  }
  .pgkLand__txt{
    bottom: 20px;
    width: min(560px, 92vw);
  }
}