/* ============================================================
   Il Caffettino — contatti.css
   Pagina "Contatti" (non è nel Figma). Struttura chiesta da Simone
   (21/09): pagina tutta scura come il Manifesto, con titolo, sottotitolo
   e il bottone che apre il Typeform. Nient'altro in pagina.
   Mobile-first: le misure base sono quelle del frame 390,
   il blocco finale porta a quelle del frame 1440.
   ============================================================ */

.pagina-contatti {
  background: var(--color-bg-inverse);
  color: var(--color-text-on-inverse);
}

.ct-hero__inner {
  position: relative;
  width: 100%;
  max-width: var(--container-max);
  margin-inline: auto;
}

/* ---------- Il blocco, sul fondo scuro ---------- */

.ct-hero {
  position: relative;
  min-height: 442px;
  padding: 106px var(--container-pad) 96px;
  background: var(--color-bg-inverse);
  overflow: hidden;
}
.ct-hero__texture {
  position: absolute;
  inset: 0;
  opacity: 0.43;
  overflow: hidden;
  pointer-events: none;
}
.ct-hero__texture img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* La sfumatura chiude la texture sul nero, come nel Manifesto */
.ct-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(23, 24, 29, 0) 81.73%, #17181d 100%);
  pointer-events: none;
}
.ct-hero__inner {
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}
.ct-hero__eyebrow { color: var(--color-accent); }
.ct-hero__title {
  margin: 0;
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -0.01em;
  color: var(--color-text-on-inverse);
}
.ct-hero__lead {
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-text-on-inverse);
}
.ct-hero__cta-riga {
  display: flex;
  margin: 0;
  padding-top: 4px;
}

/* ============================================================
   Desktop (frame 1440)
   ============================================================ */

@media (min-width: 1024px) {
  .ct-hero {
    min-height: 0;
    padding: 220px var(--container-pad) 180px;
  }
  /* Come nel Manifesto: la texture è ingrandita e spostata, non un cover
     (che darebbe un altro taglio). */
  .ct-hero__texture img {
    inset: auto;
    top: -119.29%;
    left: -54.17%;
    width: 208.33%;
    height: 338.57%;
    max-width: none;
    object-fit: fill;
  }
  .ct-hero__inner { gap: 30px; }
  .ct-hero__title {
    font-size: 6rem;
    line-height: 0.98;
    letter-spacing: -0.02em;
  }
  .ct-hero__lead {
    max-width: 760px;
    font-size: 1.25rem;
  }
  .ct-hero__cta-riga { padding-top: 10px; }
}
