/* OPINIE NIE SA PRZYCINANE.
   W tym pliku byly trzy reguly `-webkit-line-clamp` (6, 7 i 5 wierszy).
   Na 1440 px ucinaly SZESC z osmiu opinii w polowie zdania — w tym opinie
   Iwonki Brzozowskiej, ktora zgodzila sie wystapic jako glowna, pokazywana
   w 67 procentach, i Hanny Bakowskiej w 63 procentach. Ucinane bylo zawsze
   zakonczenie, czyli zdanie z rekomendacja: „Bardzo dziekuje i zdecydowanie
   polecam." To jednoczesnie zniekształcenie cudzej wypowiedzi i wyrzucenie
   najmocniejszego zdania na stronie. Karta ma rosnac do tekstu, nie tekst
   kurczyc sie do karty. Nie wracamy do przycinania bez mechanizmu „pokaz
   calosc". */

/* AVANTIQ — opinie: finalne zblizenie do zaakceptowanej makiety.
   Tylko homepage. Nadpisania sa celowo odseparowane od homepage-v5.css,
   zeby mozna bylo je wycofac jednym plikiem bez ruszania reszty strony. */

.hp-opinie{
  padding:44px 0 52px!important;
  background:linear-gradient(180deg,#fff 0%,#f8fafc 52%,#eef3f9 100%)!important;
}

/* Gora ma byc zwarta: tekst i fotografia w jednym ekranie, a opinie tuz pod nimi. */
.hp-opinie-glowa{
  grid-template-columns:minmax(0,.82fr) minmax(620px,1.18fr)!important;
  gap:28px!important;
  align-items:start!important;
  margin-bottom:14px!important;
}
.hp-opinie-slowo{padding-top:2px!important;}
.hp-opinie-kicker{margin-bottom:10px!important;}
.hp-opinie-glowa h2{
  margin-bottom:12px!important;
  max-width:620px!important;
  font-size:clamp(38px,3.25vw,50px)!important;
  line-height:1.01!important;
  letter-spacing:-.041em!important;
}
.hp-opinie-lead{
  max-width:61ch!important;
  margin-bottom:16px!important;
  font-size:14.5px!important;
  line-height:1.48!important;
}

/* W makiecie trzy atuty sa w JEDNYM rzedzie. To kluczowo obniza caly naglowek. */
.hp-opinie-atuty{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px 16px!important;
}
.hp-opinie-atuty li{
  gap:9px!important;
  align-items:center!important;
  font-size:11.5px!important;
  line-height:1.28!important;
}
.hp-atut-ikona{
  flex-basis:34px!important;
  width:34px!important;
  height:34px!important;
}
.hp-atut-ikona svg{width:16px!important;height:16px!important;}

/* Panorama po prawej — mniej wysoka niz obecnie, blizej proporcji makiety. */
.hp-opinie-bok{position:relative!important;min-height:326px!important;overflow:visible!important;}
.hp-opinie-bok>.hp-opinie-foto{
  display:block!important;
  width:100%!important;
  height:326px!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:52% 34%!important;
  border-radius:18px!important;
  box-shadow:0 16px 40px rgba(18,39,67,.10)!important;
}
.hp-opinie-ocena{
  z-index:3!important;
  padding:15px 17px!important;
  border-radius:16px!important;
  box-shadow:0 16px 40px rgba(16,32,54,.17)!important;
}
.hp-ocena-tytul{margin-bottom:6px!important;font-size:11.5px!important;}
.hp-ocena-liczba{gap:9px!important;}
.hp-ocena-liczba strong{font-size:36px!important;}
.hp-ocena-gwiazdki{font-size:14px!important;}
.hp-ocena-podstawa{margin-top:5px!important;font-size:10.5px!important;}
.hp-ocena-link{margin-top:9px!important;padding:8px 11px!important;font-size:11px!important;}
.hp-ocena-stopka{margin-top:9px!important;padding-top:8px!important;font-size:9.5px!important;}

/* W makiecie karta Iwonki jest wyraznie szersza od pozostalych dwoch. */
.hp-opinie-glowne{
  grid-template-columns:minmax(0,1.62fr) minmax(0,.94fr) minmax(0,.94fr)!important;
  gap:14px!important;
  align-items:stretch!important;
}
.hp-opinia{
  gap:9px!important;
  min-height:272px!important;
  padding:20px!important;
  border-radius:17px!important;
  box-shadow:0 9px 26px rgba(27,43,67,.05)!important;
}
.hp-opinia--glowna blockquote{
  font-size:15.5px!important;
  line-height:1.46!important;
}

/* Flagowa opinia: prawdziwy portret po lewej, tresc po prawej. */
.hp-opinia--flagowa{
  min-height:272px!important;
  padding:12px!important;
  border-radius:17px!important;
  background:linear-gradient(145deg,#08233d 0%,#0b3555 100%)!important;
}
.hp-opinia--flagowa.hp-opinia--zfoto{
  display:grid!important;
  grid-template-columns:minmax(142px,34fr) minmax(0,66fr)!important;
  gap:16px!important;
}
.hp-flagowa-foto{
  overflow:hidden!important;
  align-self:stretch!important;
  border-radius:13px!important;
}
.hp-flagowa-foto img{
  width:100%!important;
  height:100%!important;
  min-height:248px!important;
  object-fit:cover!important;
  object-position:50% 22%!important;
}
.hp-flagowa-tresc{
  gap:8px!important;
  padding:5px 7px 5px 0!important;
}
.hp-opinia--flagowa blockquote{
  font-family:var(--serif)!important;
  color:#f2f6fa!important;
  font-size:14.2px!important;
  line-height:1.43!important;
  letter-spacing:-.01em!important;
}
.hp-opinia-nowa{padding:4px 9px!important;font-size:8.5px!important;}
.hp-opinia-gwiazdki{font-size:13.5px!important;}
.hp-opinia footer{padding-top:10px!important;}
.hp-opinia-kiedy{font-size:10px!important;}

/* Drugi rzad — piec kart w jednej lekkiej linii jak na makiecie. */
.hp-opinie-pasek{margin:20px 0 10px!important;}
.hp-opinie-podtytul{font-size:18px!important;}
.hp-opinie-reszta{gap:10px!important;}
.hp-opinia--mala{
  min-height:156px!important;
  padding:14px!important;
}
.hp-opinia--mala blockquote{
  font-size:12px!important;
  line-height:1.38!important;
}
.hp-opinia--mala footer{padding-top:8px!important;}
.hp-opinie-zrodlo{margin-top:11px!important;font-size:10px!important;}

/* CTA ma domykac sekcje, a nie tworzyc kolejny duzy blok. */
.hp-opinie-cta{
  margin-top:17px!important;
  padding:15px 20px!important;
  gap:16px!important;
  border-radius:17px!important;
}
.hp-cta-ikona{width:40px!important;height:40px!important;flex-basis:40px!important;}
.hp-opinie-cta-slowo strong{font-size:18px!important;}
.hp-opinie-cta-slowo span{font-size:11.5px!important;}
.hp-opinie-cta-lista li{font-size:10.5px!important;}
.hp-opinie-podpis{font-size:13px!important;}

@media (min-width:1025px){
  .hp-opinie-ocena{
    position:absolute!important;
    top:18px!important;
    right:16px!important;
    bottom:auto!important;
    width:252px!important;
  }
}

@media (max-width:1250px) and (min-width:1025px){
  .hp-opinie-glowa{
    grid-template-columns:minmax(0,.9fr) minmax(540px,1.1fr)!important;
    gap:24px!important;
  }
  .hp-opinie-glowa h2{font-size:43px!important;}
  .hp-opinie-lead{font-size:13.5px!important;}
  .hp-opinie-atuty li{font-size:10.5px!important;}
  .hp-opinia--flagowa blockquote{font-size:13.2px!important;}
  .hp-opinia--glowna blockquote{font-size:14.2px!important;}
}

@media (max-width:1024px){
  .hp-opinie{padding:48px 0 52px!important;}
  .hp-opinie-glowa{grid-template-columns:1fr!important;gap:22px!important;margin-bottom:22px!important;}
  .hp-opinie-atuty{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .hp-opinie-bok{min-height:0!important;}
  .hp-opinie-bok>.hp-opinie-foto{height:auto!important;aspect-ratio:16/9!important;}
  .hp-opinie-glowne{grid-template-columns:1fr!important;}
  .hp-opinia{min-height:0!important;}
  .hp-opinia--flagowa.hp-opinia--zfoto{grid-template-columns:minmax(150px,.36fr) minmax(0,.64fr)!important;}
}

@media (max-width:640px){
  .hp-opinie{padding:40px 0 44px!important;}
  .hp-opinie-glowa h2{font-size:36px!important;}
  .hp-opinie-lead{font-size:14px!important;}
  .hp-opinie-atuty{grid-template-columns:1fr!important;}
  .hp-opinia--flagowa.hp-opinia--zfoto{grid-template-columns:1fr!important;}
  .hp-flagowa-foto img{height:220px!important;min-height:220px!important;}
  .hp-opinia{padding:17px!important;}
  .hp-opinia--flagowa{padding:12px!important;}
  .hp-opinie-cta{padding:16px!important;}
}

/* Finalna korekta 17.09: mniej tekstu na pierwszym planie, wiecej opinii naraz.
   Pelne cytaty pozostaja w DOM i w zrodle bez zmian; skrocenie jest wyłącznie
   wizualne, aby nie przepisywac ani nie parafrazowac wypowiedzi klientow. */
@media (min-width:1025px){
  .hp-opinie-glowne{
    grid-template-columns:minmax(0,1.46fr) minmax(0,1fr) minmax(0,1fr)!important;
    gap:13px!important;
  }
  .hp-opinia{
    min-height:246px!important;
    padding:18px!important;
  }
  .hp-opinia--flagowa{
    min-height:246px!important;
    padding:11px!important;
  }
  .hp-opinia--flagowa.hp-opinia--zfoto{
    grid-template-columns:minmax(112px,29fr) minmax(0,71fr)!important;
    gap:14px!important;
  }
  .hp-flagowa-foto{
    align-self:center!important;
    height:214px!important;
    margin:5px 0!important;
    border-radius:12px!important;
    background:#0a2945!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.06)!important;
  }
  .hp-flagowa-foto img{
    height:100%!important;
    min-height:0!important;
    object-position:50% 20%!important;
    filter:saturate(.78) contrast(.97)!important;
    opacity:.92!important;
  }
  .hp-flagowa-tresc,
  .hp-opinia--glowna{
    display:flex!important;
    flex-direction:column!important;
  }
  .hp-opinia--flagowa blockquote{
    font-size:13.7px!important;
    line-height:1.42!important;
  }
  .hp-opinia--glowna blockquote{
    font-size:14.1px!important;
    line-height:1.43!important;
  }
  .hp-opinia--glowna footer,
  .hp-flagowa-tresc footer{
    margin-top:auto!important;
  }
  .hp-opinie-pasek{
    margin-top:18px!important;
  }
  .hp-opinie-strzalki{
    display:none!important;
  }
  .hp-opinie-reszta{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:10px!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
    padding:0!important;
  }
  .hp-opinia--mala{
    width:auto!important;
    min-width:0!important;
    min-height:174px!important;
    padding:13px!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .hp-opinia--mala blockquote{
    font-size:11.4px!important;
    line-height:1.38!important;
  }
  .hp-opinia--mala footer{
    margin-top:auto!important;
  }
}

@media (max-width:1024px){
  .hp-opinie-reszta{
    display:flex!important;
    gap:10px!important;
    overflow-x:auto!important;
    scroll-snap-type:x mandatory!important;
    padding-bottom:8px!important;
  }
  .hp-opinia--mala{
    flex:0 0 min(310px,82vw)!important;
    min-width:min(310px,82vw)!important;
    scroll-snap-align:start!important;
  }
  .hp-opinia--flagowa.hp-opinia--zfoto{
    grid-template-columns:minmax(125px,.29fr) minmax(0,.71fr)!important;
    gap:13px!important;
  }
  .hp-flagowa-foto{
    align-self:center!important;
    height:220px!important;
  }
  .hp-flagowa-foto img{
    height:100%!important;
    min-height:0!important;
    object-position:50% 20%!important;
    filter:saturate(.8) contrast(.97)!important;
    opacity:.93!important;
  }
}

@media (max-width:640px){
  .hp-opinia--flagowa.hp-opinia--zfoto{
    grid-template-columns:1fr!important;
  }
  .hp-flagowa-foto{
    width:42%!important;
    min-width:126px!important;
    height:154px!important;
    margin:0 auto 2px!important;
    border-radius:14px!important;
  }
  .hp-flagowa-foto img{
    height:154px!important;
    min-height:154px!important;
    object-position:50% 17%!important;
  }
  .hp-opinia--flagowa blockquote,
  .hp-opinia--glowna blockquote{
    font-size:14px!important;
    line-height:1.46!important;
  }
}
