/* typography-system.css
   Sistema leggero di uniformità tipografica Poggio ai Santi.
   Non modifica animazioni, sticky, pin, cross-block o layout: normalizza solo font,
   scala testi, CTA e piccoli dettagli responsive. Caricato dopo i CSS di pagina per
   proteggere il progetto dagli override generici di Bootstrap. */

:root{
  --pgk-type-kicker: 12px;
  --pgk-type-kicker-track: .24em;
  --pgk-type-copy: clamp(16px, 1.05vw, 18px);
  --pgk-type-small: 15px;
  --pgk-type-h2: clamp(30px, 3.15vw, 48px);
  --pgk-type-hero: clamp(46px, 7vw, 112px);
  --pgk-leading-copy: 1.75;
  --pgk-leading-title: 1.16;
  --pgk-cta-size: 12px;
  --pgk-cta-track: .18em;
}

html,
body,
button,
input,
textarea,
select{
  font-family: var(--pgk-font-sans) !important;
}

h1,h2,h3,h4,h5,h6,
.site-brand,
.overlay-brand,
.overlay-menu,
.the-place-page,
.dna-sequence,
.pgkLand,
.pin-section,
.pgkEvt,
.hero{
  font-family: var(--pgk-font-serif) !important;
}

p{
  font-weight: 400;
}
main p {
  color: #1a1a1a !important;
}
/* Kicker / eyebrow uniformi */
.dna-intro__kicker,
.dna-split__kicker,
.pin-copy__eyebrow,
.pgkLand__kicker,
.pgkEvt__eyebrow,
.the-place-page .tpl-kicker{
  font-size: var(--pgk-type-kicker) !important;
  line-height: 1.35 !important;
  letter-spacing: var(--pgk-type-kicker-track) !important;
  text-transform: uppercase;
  font-weight: 400 !important;
}

/* Titoli editoriali */
.dna-intro__title,
.pin-copy__title,
.pgkEvt__h2,
.the-place-page .tpl-title{
  font-size: var(--pgk-type-h2) !important;
  line-height: 1.24 !important;
  letter-spacing: .01em !important;
  font-weight: 400 !important;
}

/* Hero pagine interne coerenti con homepage, senza cambiare struttura */
.the-place-page .tpl-hero__title{
  font-size: var(--pgk-type-hero) !important;
  line-height: .94 !important;
  letter-spacing: -.045em !important;
  font-weight: 400 !important;
}

/* Paragrafi */
.dna-split__excerpt,
.dna-split__excerpt-room,
.pin-copy__text,
.pgkLand__desc,
.pgkEvt__text,
.the-place-page .tpl-copy,
.tpl-copy-food{
  font-size: var(--pgk-type-copy) !important;
  line-height: var(--pgk-leading-copy) !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
}

.tpl-copy-food{
  max-width: 820px;
}

/* CTA testuali uniformi */
.dna-link,
.pin-copy__cta,
.pgkLand__link,
.tpl-feature__link,
.pgkEvt__all,
.the-place-page a[class*="__link"]{
  font-family: var(--pgk-font-sans) !important;
  font-size: var(--pgk-cta-size) !important;
  line-height: 1.2 !important;
  letter-spacing: var(--pgk-cta-track) !important;
  text-transform: uppercase;
  font-weight: 400 !important;
}

@media (max-width: 740px){
  :root{
    --pgk-type-kicker: 11px;
    --pgk-type-kicker-track: .20em;
    --pgk-type-copy: 16px;
    --pgk-type-h2: clamp(27px, 8vw, 38px);
    --pgk-type-hero: clamp(38px, 12vw, 62px);
    --pgk-leading-copy: 1.68;
  }

  .the-place-page .tpl-kicker,
  .dna-intro__kicker{
    margin-bottom: 24px !important;
  }

  .the-place-page .tpl-hero__content{
    padding-bottom: clamp(120px, 20vh, 190px) !important;
  }
}
