/* ============================================================
   KOMINAPEC.SK — FAQ modul (Apollo) — farebné doladenie
   Samostatný súbor. Nemení štruktúru, len vzhľad.
   ============================================================ */
:root{ --kpf:#c1121f; --kpf-dark:#8d0d17; }

/* nadpis sekcie */
.faq-block .homepage-group-title{
  position:relative; padding-bottom:12px; font-weight:800; text-align:center;
}
.faq-block .homepage-group-title:after{
  content:""; position:absolute; left:50%; transform:translateX(-50%); bottom:0;
  width:56px; height:3px; background:var(--kpf); border-radius:3px;
}

/* ĽAVÉ ZÁLOŽKY */
.faq-side-list{ list-style:none; padding:0; margin:0; }
.faq-side-list__item{
  cursor:pointer; padding:16px 20px; margin-bottom:10px;
  background:#fff; border:1px solid #ececec; border-left:4px solid transparent;
  border-radius:12px; font-weight:600; color:#444;
  transition:border-color .25s ease, color .25s ease, transform .2s ease, box-shadow .25s ease;
}
.faq-side-list__item:hover{
  border-left-color:var(--kpf); color:#1b1b1b;
  box-shadow:0 8px 22px -18px rgba(0,0,0,.35);
}
.faq-side-list__item.is-active{
  background:linear-gradient(135deg,#1b1b1b,#2a1414); color:#fff;
  border-color:transparent; border-left-color:var(--kpf);
  box-shadow:0 12px 28px -20px rgba(193,18,31,.6);
}

/* NADPIS OBSAHU */
.faq-content-title{
  font-size:1.2rem; color:#1b1b1b; margin-bottom:18px;
  padding-bottom:10px; border-bottom:2px solid #f0f0f0; position:relative;
}
.faq-content-title:after{
  content:""; position:absolute; left:0; bottom:-2px;
  width:48px; height:2px; background:var(--kpf);
}

/* AKORDEÓN */
.faq-block .accordion__item{
  background:#fff; border:1px solid #ececec; border-left:4px solid var(--kpf);
  border-radius:12px; margin-bottom:12px; overflow:hidden;
  box-shadow:0 8px 24px -22px rgba(0,0,0,.3);
  transition:box-shadow .25s ease;
}
.faq-block .accordion__item:hover{ box-shadow:0 14px 30px -22px rgba(193,18,31,.4); }
.faq-block .accordion__trigger{
  cursor:pointer; padding:18px 54px 18px 22px; font-weight:700;
  color:#1b1b1b; position:relative; line-height:1.45;
  transition:color .2s ease;
}
.faq-block .accordion__trigger:hover{ color:var(--kpf); }
.faq-block .accordion__trigger:after{
  content:"+"; position:absolute; right:20px; top:50%; transform:translateY(-50%);
  width:26px; height:26px; border-radius:50%; background:var(--kpf); color:#fff;
  display:flex; align-items:center; justify-content:center;
  font-size:1.05rem; font-weight:700; transition:transform .25s ease;
}
.faq-block .accordion__item.is-active .accordion__trigger,
.faq-block .accordion__item.active .accordion__trigger{ color:var(--kpf); }
.faq-block .accordion__item.is-active .accordion__trigger:after,
.faq-block .accordion__item.active .accordion__trigger:after{
  content:"\2212"; transform:translateY(-50%) rotate(180deg);
}
.faq-block .accordion__content{ padding:0 22px 20px; }
.faq-block .accordion__content p{ color:#555; line-height:1.75; margin:0; }
.faq-block .accordion__content strong{ color:#1b1b1b; }
.faq-block .accordion__content a{ color:var(--kpf); }

/* MOBIL */
@media(max-width:768px){
  .faq-side-list__item{ padding:13px 16px; font-size:.95rem; }
  .faq-block .accordion__trigger{ padding:15px 48px 15px 16px; font-size:.97rem; }
  .faq-block .accordion__content{ padding:0 16px 16px; }
}
