/* ═══════════════════════════════════════════════════════════════
   BEB Case — template-contatti.css
   Caricato solo su questo template
═══════════════════════════════════════════════════════════════ */

/* ── PAGE BAND (riusa .page-band da beb-theme.css) ─────────────── */
.cnt-band-lead {
  font-size:.96rem; font-weight:300; line-height:1.9;
  color:rgba(255,255,255,.5); max-width:520px; margin-top:1rem;
}

/* ── SPLIT: FOTO SEDE + CONTATTI ─────────────────────────────── */
.cnt-split {
  display:grid;
  grid-template-columns:1.2fr 1fr;
  min-height:560px;
}
.cnt-foto {
  position:relative; overflow:hidden;
}
.cnt-foto img {
  width:100%; height:100%; object-fit:cover; display:block;
  filter:saturate(.85) brightness(.92);
  transition:transform .7s ease;
}
.cnt-split:hover .cnt-foto img { transform:scale(1.03); }
.cnt-foto-badge {
  position:absolute; bottom:1.5rem; left:1.5rem;
  background:rgba(35,31,32,.85);
  border:1px solid rgba(247,174,78,.35);
  color:var(--y);
  font-size:.62rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  padding:.5rem 1.1rem;
  backdrop-filter:blur(6px);
}

.cnt-info {
  background:var(--k);
  padding:5rem 4vw;
  display:flex; flex-direction:column; justify-content:center;
}
.cnt-info-title {
  font-family:'Cormorant Garamond',serif;
  font-size:1.9rem; font-weight:600; color:var(--w);
  margin-bottom:2.5rem;
}
.cnt-info-title em { font-style:italic; font-weight:300; color:var(--y); }

.cnt-row {
  display:flex; align-items:flex-start; gap:1.1rem;
  padding:1.4rem 0;
  border-bottom:1px solid rgba(247,174,78,.12);
}
.cnt-row:first-of-type { padding-top:0; }
.cnt-row:last-of-type { border-bottom:none; }
.cnt-row-icon {
  flex-shrink:0; width:38px; height:38px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(247,174,78,.1);
  border:1px solid rgba(247,174,78,.25);
}
.cnt-row-body { padding-top:.1rem; }
.cnt-row-label {
  font-size:.6rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:var(--y); display:block; margin-bottom:.35rem;
}
.cnt-row-val {
  font-size:.94rem; font-weight:300; color:rgba(255,255,255,.75);
  text-decoration:none; display:block; line-height:1.6;
  transition:color .2s;
}
.cnt-row-val:hover { color:var(--y); }
.cnt-row-sub {
  font-size:.78rem; color:rgba(255,255,255,.35); margin-top:.3rem;
}

.cnt-cta-row { margin-top:2.5rem; display:flex; gap:.8rem; flex-wrap:wrap; }

/* ── MAPPA ────────────────────────────────────────────────────── */
.cnt-map-section { background:var(--g0); padding:6rem 5vw; }
.cnt-map-head { margin-bottom:2.5rem; }
.cnt-map-wrap {
  position:relative; width:100%;
  padding-bottom:42%;
  border:1px solid var(--bd);
  overflow:hidden;
  filter:grayscale(.15) contrast(1.02);
}
.cnt-map-wrap iframe {
  position:absolute; top:0; left:0;
  width:100%; height:100%; border:0;
}

/* ── STRIP ORARI ──────────────────────────────────────────────── */
.cnt-hours-strip {
  background:var(--y);
  padding:4rem 5vw;
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:1px;
}
.cnt-hours-item { padding:1.5rem 2vw; }
.cnt-hours-day {
  font-size:.64rem; font-weight:600; letter-spacing:.16em; text-transform:uppercase;
  color:rgba(35,31,32,.55); display:block; margin-bottom:.4rem;
}
.cnt-hours-time {
  font-family:'Cormorant Garamond',serif;
  font-size:1.6rem; font-weight:700; color:var(--k);
}

/* ── RESPONSIVE ──────────────────────────────────────────────── */
@media (max-width:960px) {
  .cnt-split { grid-template-columns:1fr; min-height:auto; }
  .cnt-foto { height:340px; }
  .cnt-info { padding:3.5rem 5vw; }
  .cnt-map-wrap { padding-bottom:70%; }
  .cnt-hours-strip { grid-template-columns:1fr; gap:0; }
  .cnt-hours-item { border-bottom:1px solid rgba(35,31,32,.1); }
  .cnt-hours-item:last-child { border-bottom:none; }
}
@media (max-width:640px) {
  .cnt-map-section { padding:4rem 4vw; }
  .cnt-map-wrap { padding-bottom:100%; }
}
