.kifa-loc__title{ font-size:22px; margin:8px 0 8px; color:#e11; font-weight:600; }
.kifa-loc__intro{ color:#666; font-size:14px; line-height:1.5; margin:0 0 12px; }

/* Layout principale: sidebar + immagine */
.kifa-loc {
  display: grid !important;
  grid-template-columns: 500px 1fr; /* come nel tuo inline */
  gap: 0;
  min-height: 72vh;
  width: 100%;
  padding-left: 6%;
  background: #fff;
}

.kifa-loc__sidebar {
  border-right: 1px solid #eee;
  padding: 0;
  position: relative;
  overflow: hidden;
  z-index: 2; /* anti overlay */
}

.kifa-loc__map {
  position: relative;
  min-height: 72vh;
  height: 100%;
}

#kifa-map { width:100%; height:100%; min-height:85vh; }
#kifa-map-img {
  display:block;
  width:100%;
  height:100%;
  object-fit: cover;
  object-position: center;
  background:#f5f5f5;
  transition: opacity .25s ease;
  pointer-events: none; /* non blocca i click sulla sidebar */
}

/* Pannelli */
.kifa-loc__panel{ display:none; }
.kifa-loc--level-1 .kifa-loc__panel[data-level="1"],
.kifa-loc--level-2 .kifa-loc__panel[data-level="2"],
.kifa-loc--level-3 .kifa-loc__panel[data-level="3"]{ display:block; }

/* Liste */
#kifa-nations .kifa-loc__list{ list-style:none; margin-top:40px; margin-right:24px; padding:0; font-size:22px; }
.kifa-loc__list{ list-style:none; margin-top:40px; margin-right:24px; padding:0; font-size:18px; }
.kifa-loc__list li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:17px;
  padding:24px 0;
  border-bottom:1px solid #eee;
  cursor:pointer;
  color:black;
}
.kifa-loc__list li:hover{ border-bottom:1px solid #E42A1F; color:#E42A1F; }
.kifa-loc__list li .caret{ width:22px; height:22px; display:inline-block; flex:0 0 22px; position:relative; }
.kifa-loc__list li .caret::after{
  content:"";
  position:absolute; top:50%; left:50%;
  width:8px; height:8px;
  border-top:2px solid #333; border-right:2px solid #333;
  transform:translate(-50%,-50%) rotate(45deg);
}

/* Back */
.kifa-loc__back{ margin-bottom:32px; background:transparent; font-size:14px; font-weight:500; display:none; }
.kifa-loc--level-2 .kifa-loc__back,
.kifa-loc--level-3 .kifa-loc__back{ display:inline-block; }

/* Accordion base */
.kifa-acc__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  cursor:pointer;
  border:none;
  width:100%;
  background:transparent;
  padding:12px 8px;
}
.kifa-acc__body{
  max-height:0;
  overflow:hidden;
  opacity:0;
  transition:max-height .35s ease, opacity .25s ease;
  display:none;
}
.kifa-acc.open .kifa-acc__body{ opacity:1; }

/* Arrow animazione */
.kifa-acc__head .arrow{ transform: rotate(90deg); transition: transform .3s ease; margin-left:6px; }
.kifa-acc__head[aria-expanded="true"] .arrow{ transform: rotate(-90deg); }

/* ===== OVERRIDE LIVELLO 3: accordion verticale (down) ===== */
.kifa-loc--level-3 #kifa-locations > li{
  display:block !important;      /* stop flex orizzontale */
  align-items:stretch !important;
  justify-content:initial !important;
  padding:16px 0;
  border-bottom:1px solid #eee;
}
.kifa-loc--level-3 #kifa-locations .kifa-acc__head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  width:100%;
  padding:8px 0;
  background:transparent;
  border:0;
}
.kifa-loc--level-3 #kifa-locations .kifa-acc__body{
  width:100%;
  padding:12px 0 4px; /* appare SOTTO al titolo */
  color: #7D7473;
  font-size: 16px;
}
.kifa-loc--level-3 #kifa-locations .kifa-acc__row{ margin-bottom:10px; }
.kifa-loc--level-3 #kifa-locations .kifa-acc__row a{ text-decoration: underline; }

/* Mobile */
@media (max-width:860px){
  .kifa-loc{ display:flex !important; flex-direction:column-reverse !important; padding:0 !important; min-height:50vh !important; }
  .kifa-loc__map{ height:60vh; order:2; min-height:50vh !important; }
  #kifa-map{ width:100%; height:100%; min-height:35vh !important; margin-bottom:40px !important; }
  .kifa-loc__sidebar{ order:1; padding:0 6%; border-right:0; }
  .kifa-loc__list{ margin-right:0; }
  .kifa-loc__back,.kifa-loc__list li,.kifa-acc__title{ color:black; }
  .kifa-acc__head[aria-expanded="true"]{ color:#E42A1F; }
}

/* Hiding the hero text quando non è livello 1 */
.kifa-loc .text-location { opacity:1; overflow:hidden; }
.kifa-loc.kifa-loc--level-2 .text-location,
.kifa-loc.kifa-loc--level-3 .text-location { opacity:0; max-height:0; pointer-events:none; }
