/* Brera - Contatti: filmato verticale originale con recapiti leggibili. */
body.contatti .contact-direct {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 780px;
  background: #172c23;
  color: #f8f6ef;
  padding: clamp(75px, 7vw, 104px) 0 clamp(85px, 7vw, 104px);
}
body.contatti .contact-direct-film {
  position: absolute;
  z-index: -3;
  inset: 0 0 0 auto;
  height: 100%;
  width: 56%;
  object-fit: cover;
  object-position: center 45%;
  filter: saturate(.92) contrast(1.06);
  pointer-events: none;
}
body.contatti .contact-direct::before {
  content: "";
  position: absolute;
  z-index: -2;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, #172c23 0%, #172c23 24%, rgba(23,44,35,.96) 35%, rgba(23,44,35,.65) 56%, rgba(23,44,35,.21) 100%),
    linear-gradient(0deg, rgba(14,31,23,.82) 0%, rgba(14,31,23,.22) 49%, rgba(14,31,23,.23) 100%);
}
body.contatti .contact-direct::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 20px;
  pointer-events: none;
  border: 1px solid rgba(242,241,229,.14);
}
body.contatti .contact-direct .wrap { position: relative; z-index: 1; }
body.contatti .contact-direct-head {
  display: block;
  margin-bottom: clamp(48px, 6.2vw, 79px);
  max-width: 750px;
}
body.contatti .contact-direct .eyebrow { color: #d6b49c; }
body.contatti .contact-direct-title {
  color: #f8f6ef;
  font-size: clamp(62px, 7.2vw, 104px);
  line-height: .99;
  letter-spacing: -.063em;
  max-width: 780px;
  margin: 22px 0 22px;
  text-wrap: balance;
}
body.contatti .contact-direct-title em { color: #e9b89b; }
body.contatti .contact-direct-intro {
  color: rgba(246,246,239,.83);
  font-size: clamp(15px,1.25vw,17px);
  line-height: 1.8;
  max-width: 525px;
  margin: 0;
}
body.contatti .contact-direct-grid {
  width: min(100%, 875px);
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
  position: relative;
}
body.contatti .contact-direct-item {
  min-width: 0;
  min-height: 146px;
  padding: 26px 28px 29px;
  border: 1px solid rgba(245,245,238,.23);
  background: rgba(21,42,33,.68);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  transition: border-color .25s, background .25s;
}
body.contatti .contact-direct-item:hover {
  border-color: rgba(233,184,155,.65);
  background: rgba(21,42,33,.86);
}
body.contatti .contact-direct-label {
  color: #e5b99e;
  margin-bottom: 15px;
}
body.contatti .contact-direct-value {
  color: #fcf9f1;
  font-size: clamp(22px,2.05vw,29px);
  line-height: 1.32;
}
body.contatti a.contact-direct-value:hover,
body.contatti .contact-direct-map:hover { color: #f5c5a7; }
body.contatti .contact-direct-map {
  color: #f1eee4;
  margin-top: 15px;
  padding-bottom: 6px;
}
body.contatti .contact-film-toggle {
  position: absolute;
  z-index: 4;
  right: clamp(30px,4.4vw,74px);
  bottom: 30px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: rgba(18,35,28,.74);
  color: #f8f6ef;
  border: 1px solid rgba(245,245,238,.38);
  padding: 11px 15px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}
body.contatti .contact-film-toggle:hover { background: #f7f3eb; color: #213b31; }
body.contatti .contact-film-icon { font-size: 12px; line-height: 1; }
@media (max-width: 900px) {
  body.contatti .contact-direct { min-height: 750px; padding: 80px 0 98px; }
  body.contatti .contact-direct-film { width: 71%; }
  body.contatti .contact-direct::before {
    background: linear-gradient(90deg,rgba(23,44,35,.97),rgba(23,44,35,.86) 46%,rgba(23,44,35,.34)),linear-gradient(0deg,rgba(14,31,23,.79),transparent 68%);
  }
  body.contatti .contact-direct-grid { width: 100%; }
}
@media (max-width: 630px) {
  body.contatti .contact-direct { min-height: unset; padding: 72px 0 95px; }
  body.contatti .contact-direct-film { width: 100%; object-position: 54% center; }
  body.contatti .contact-direct::before {
    background: linear-gradient(180deg,rgba(16,35,26,.83),rgba(16,35,26,.88) 42%,rgba(16,35,26,.82) 100%);
  }
  body.contatti .contact-direct::after { inset: 12px; }
  body.contatti .contact-direct-head { margin-bottom: 43px; }
  body.contatti .contact-direct-title { font-size: clamp(52px,13vw,69px);margin: 21px 0; }
  body.contatti .contact-direct-intro { max-width: 440px; font-size: 15px; }
  body.contatti .contact-direct-grid { grid-template-columns: 1fr; gap: 9px; }
  body.contatti .contact-direct-item { min-height: 112px; padding: 20px 22px 23px; background: rgba(20,40,31,.74); }
  body.contatti .contact-direct-label { margin-bottom: 12px; }
  body.contatti .contact-direct-value { font-size: clamp(20px,6vw,25px); }
  body.contatti .contact-film-toggle { right: 25px; bottom: 27px; }
}
@media (prefers-reduced-motion: reduce) {
  body.contatti .contact-direct-item { transition: none; }
}
