.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;
}



/*
.pgkLand__txt{
  position: absolute;
  left: calc(var(--tx, -110) * 1px);  /* parte fuori a sinistra => tagliato */
 /* bottom: calc(var(--ty, 44) * 1px);
  width: min(720px, 90vw);
  color: #fff;

  opacity: var(--to, 0);
  transform: translate3d(0, calc((1 - var(--to,0)) * 12px), 0);
  will-change: left, opacity, transform;

  /* niente pannelloni */
 /* text-shadow: 0 18px 40px rgba(0,0,0,.28);
}

/* velo leggerissimo (quasi impercettibile) */
/*.pgkLand__media::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:0;
  height: 55%;
  background: linear-gradient(to top, rgba(0,0,0,.24), rgba(0,0,0,0));
  opacity: calc(var(--to, 0) * 0.95);
  pointer-events:none;
}

.pgkLand__kicker{
  font-family: var(--pgk-font-sans, system-ui);
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255,255,255,.78);
  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;
  text-decoration: bold;
  color: rgba(255,255,255,.98);
  /*color: #fff;*/
/*
}

.pgkLand__desc{
  margin: 0 0 18px;
  max-width: 56ch;
  font-size: 15px;
  line-height: 1.65;
  color: rgba(255,255,255,.86);
  text-shadow: 0 12px 26px rgba(0,0,0,.22);
}

.pgkLand__link{
  display: inline-block;
  pointer-events: auto;
  font-family: var(--pgk-font-sans, system-ui);
  font-size: 12px;
  letter-spacing: .18em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,.85);
  padding-bottom: 4px;
  color: rgba(255,255,255,.95);
}
*/
/* 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);
  }
}