/* ========================================================================
 * Contact Location Page + Block – FINAL (v1.2.2 consolidated)
 * Include:
 *  - Header pagină (breadcrumbs + titlu)
 *  - Bloc "ET Contact Locație" cu:
 *      • Imagine pătrată (square) pe desktop
 *      • Centrare verticală col 1 (text) și col 3 (info)
 *      • Grid recalibrat (coloane 1 & 3 mai late, col 2 imagine)
 *      • Culori text / detalii: #75787B
 *      • et-cli-label font-weight 400
 *      • Link-uri fără underline, doar color hover
 *      • Doar border-top pentru stacking multiplu (fără dubluri între blocuri)
 *      • Spațiere controlată cu variabila --et-contact-block-pad
 *  - Override mobil (imagine 4/3 – poți comenta dacă vrei pătrat și pe mobil)
 * ======================================================================= */

/* ============ PAGE CONTACTE HEADER ============ */
.et-contact-page {
  padding-top:clamp(24px,3.5vw,48px);
  padding-bottom:clamp(70px,8vw,120px);
  position:relative;
  --et-contact-bc-mb: 46px; /* ajustează 46px -> 55px dacă vrei ca la "echipa" */
}

.et-contact-breadcrumbs.et-breadcrumbs {
  margin:0 0 var(--et-contact-bc-mb);
  position:relative;
  padding-bottom:10px;
}
.et-contact-breadcrumbs.et-breadcrumbs a {
  font-size:16px;
  color:#75787B;
  text-decoration:none;
  font-weight:400;
  transition:color .18s;
}
.et-contact-breadcrumbs.et-breadcrumbs a:hover { color:#3459AF; }
.et-contact-breadcrumbs .current,
.et-contact-breadcrumbs span:last-child {
  font-size:16px;
  color:#3C3C3C;
  font-weight:400;
}
.et-contact-breadcrumbs .sep {
  font-size:16px;
  opacity:.55;
  margin:0 6px;
}
.et-contact-breadcrumbs.et-breadcrumbs::after {
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:140px;
  height:1px;
  background:linear-gradient(90deg,#D8DDE3 0%,#E6E9EE 55%,rgba(230,233,238,0)100%);
}

.et-contact-head {
  margin:0 0 clamp(40px,6vw,70px);
}
.et-contact-title {
  margin:0;
  font-size:38px;
  line-height:1.05;
  font-weight:600;
  letter-spacing:-0.3px;
  color:#000;
}
@media (max-width:640px){
  .et-contact-title { font-size:32px; }
}
.et-contact-head-divider {
  width:100%;
  height:0;
  margin:26px 0 0;
  border-top:1px solid #E5E9EE;
}

/* ============ CONTACT LOCATION BLOCK BASE ============ */
.et-contact-loc-block {
  --et-contact-gap: clamp(32px,3.8vw,66px);
  --et-contact-border:#E2E6EC;
  --et-contact-accent: var(--et-primary-blue,#154ADC);
  --et-contact-image-max: clamp(340px,36vw,460px);
  --et-contact-block-pad: clamp(26px,3.4vw,38px); /* padding vertical simetric pentru stacking */
  width:100%;
  margin:0; /* eliminăm margin extern pentru stacking curat */
  position:relative;
}

/* Grid cu doar border-top (fără border-bottom pentru a evita dubluri între blocuri) */
.et-contact-loc-grid {
  display:grid;
  grid-template-columns:
    minmax(320px, 520px)   /* text */
    minmax(300px, 420px)   /* imagine */
    minmax(320px, 500px);  /* info */
  gap:var(--et-contact-gap);
  align-items:stretch;
  border-bottom:1px solid var(--et-contact-border);
  border-top:none;
  padding:var(--et-contact-block-pad) 0 var(--et-contact-block-pad);
  position:relative;
}

/* Stacking: între două blocuri apare doar border-top al celui nou */
.et-contact-loc-block + .et-contact-loc-block {
  margin-top:0;
}

/* (Opțional – dacă vrei linie finală după ultimul bloc, decomentează)
.et-contact-loc-block:last-of-type .et-contact-loc-grid {
  border-bottom:1px solid var(--et-contact-border);
}
*/

/* ---------- Col 1: Text ---------- */
.et-contact-loc-col--text {
  display:flex;
  flex-direction:column;
  justify-content:center;
  font-size:15px;
  line-height:1.56;
  color:#75787B;
  min-height:100%;
}
.et-contact-loc-title {
  margin:0 0 16px;
  font-size:24px;
  line-height:1.22;
  font-weight:600;
  color:#111;
  letter-spacing:-0.25px;
}
@media (max-width:640px){
  .et-contact-loc-title { font-size:22px; }
}
.et-contact-loc-desc,
.et-contact-loc-desc p {
  margin:0 0 1em;
  color:#75787B;
}
.et-contact-loc-desc p:last-child { margin-bottom:0; }

/* ---------- Col 2: Imagine (square) ---------- */
.et-contact-loc-col--image {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:100%;
}
.et-contact-loc-image,
.et-contact-loc-image--placeholder {
  width:100%;
  max-width:var(--et-contact-image-max);
  aspect-ratio:1 / 1;
  max-height:var(--et-contact-image-max);
  height:auto;
  object-fit:cover;
  display:block;
  border-radius:17px;
  background:#F3F5F8;
  box-shadow:0 4px 18px -8px rgba(0,0,0,0.12), 0 2px 8px -4px rgba(0,0,0,0.06);
}
.et-contact-loc-image--placeholder {
  background:linear-gradient(135deg,#f0f3f6,#d8dde3);
}

/* ---------- Col 3: Info ---------- */
.et-contact-loc-col--info {
  display:flex;
  flex-direction:column;
  justify-content:center;
  font-size:14px;
  line-height:1.5;
  color:#75787B;
  min-height:100%;
}
.et-contact-loc-info {
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:20px; /* redus pentru înălțime apropiată imaginii */
}
.et-cli-item {
  padding:0 0 18px;
  border-bottom:1px solid var(--et-contact-border);
}
.et-cli-item:last-child {
  border-bottom:none;
  padding-bottom:0;
}
.et-cli-label {
  display:block;
  font-size:16px;
  font-weight:400;
  color:var(--et-contact-accent);
  margin:0 0 6px;
  line-height:1.25;
}
.et-cli-value {
  font-size:14.5px;
  color:#75787B;
  line-height:1.42;
  word-break:break-word;
}
.et-cli-value a {
  color:inherit;
  text-decoration:none;
  border:0;
  padding:0;
  transition:color .18s;
}
.et-cli-value a:hover,
.et-cli-value a:focus-visible {
  color:var(--et-contact-accent);
  text-decoration:none;
  outline:none;
}

/* ============ RESPONSIVE ============ */
@media (max-width:1250px){
  .et-contact-loc-grid {
    grid-template-columns:
      minmax(300px, 500px)
      minmax(280px, 400px)
      minmax(300px, 480px);
  }
  .et-contact-loc-image,
  .et-contact-loc-image--placeholder {
    max-width:clamp(300px,34vw,420px);
    max-height:clamp(300px,34vw,420px);
  }
}

@media (max-width:1020px){
  .et-contact-loc-grid {
    grid-template-columns:
      minmax(300px, 1fr)
      minmax(280px, 380px)
      minmax(300px, 1fr);
  }
}

@media (max-width:980px){
  .et-contact-loc-grid {
    grid-template-columns:1fr;
    gap:34px;
    padding:clamp(28px,6vw,40px) 0;
    align-items:start;
  }
  .et-contact-loc-col--text,
  .et-contact-loc-col--info { justify-content:flex-start; }

  /* Pe mobil: schimbă înapoi la 4/3 pentru context; 
     dacă vrei să rămână pătrată, comentează override-ul aspect-ratio de mai jos */
  .et-contact-loc-image,
  .et-contact-loc-image--placeholder {
    aspect-ratio:4 / 3;
    max-width:100%;
    max-height:none;
  }
}

/* ============ ACCESSIBILITY & MOTION ============ */
@media (prefers-reduced-motion:reduce){
  .et-cli-value a { transition:none; }
}
.et-contact-loc-block a:focus-visible {
  outline:2px solid var(--et-contact-accent);
  outline-offset:3px;
  border-radius:4px;
}

/* ============ OPTIONAL UTILITY CLASSES (inactive – add in HTML if needed) ============ */
/*
.et-contact-loc-block.compact .et-contact-loc-grid { --et-contact-block-pad: clamp(20px,2.6vw,30px); }
.et-contact-loc-block.relaxed .et-contact-loc-grid { --et-contact-block-pad: clamp(34px,4.4vw,48px); }
*/