/*
 * ACC Store — Opinie klientów / Reviews v150
 * Niezależny komponent zgodny z systemem wizualnym ACC Store.
 */

.acc-reviews130{
  --r130-blue:#0b7cd3;
  --r130-blue-dark:#086fbd;
  --r130-blue-soft:#edf7fd;
  --r130-navy:#0c2237;
  --r130-text:#162432;
  --r130-muted:#657487;
  --r130-line:#e4ebf1;
  --r130-soft:#f6f9fb;
  --r130-white:#fff;
  --r130-star:#f5b82e;
  position:relative;
  padding:76px 0 78px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 0%,rgba(11,124,211,.055),transparent 36%),
    var(--r130-soft);
  color:var(--r130-text);
  font-family:Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}

.acc-reviews130 *,
.acc-reviews130 *::before,
.acc-reviews130 *::after{box-sizing:border-box}

.acc-reviews130 button{font:inherit}
.acc-reviews130 svg{display:block}

.acc-reviews130__container{
  width:min(calc(100% - 48px),1440px);
  margin-inline:auto;
}

.acc-reviews130__header{
  width:min(100%,820px);
  margin:0 auto 37px;
  text-align:center;
}

.acc-reviews130__eyebrow{
  margin:0 0 10px;
  color:var(--r130-blue);
  font-size:.72rem;
  line-height:1.2;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
}

.acc-reviews130__header h2{
  margin:0;
  color:var(--r130-text);
  font-size:clamp(2rem,2.7vw,3.1rem);
  line-height:1.04;
  letter-spacing:-.045em;
  font-weight:620;
}

.acc-reviews130__intro{
  width:min(100%,690px);
  margin:17px auto 0;
  color:var(--r130-muted);
  font-size:.97rem;
  line-height:1.68;
}

.acc-reviews130__rating{
  min-height:36px;
  margin-top:22px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
}

.acc-reviews130__rating strong{
  display:inline-flex;
  align-items:baseline;
  color:var(--r130-navy);
  font-size:1.15rem;
  line-height:1;
  letter-spacing:-.025em;
  font-weight:750;
}

.acc-reviews130__rating strong span{
  margin-left:2px;
  color:#788797;
  font-size:.72rem;
  font-weight:650;
}

.acc-reviews130__rating-separator{
  width:1px;
  height:24px;
  background:#d7e1e8;
}

.acc-reviews130__stars,
.acc-reviews130__card-stars{
  display:flex;
  align-items:center;
  gap:3px;
  color:var(--r130-star);
}

.acc-reviews130__stars svg{
  width:18px;
  height:18px;
}

.acc-reviews130__rating-label{
  color:#708092;
  font-size:.79rem;
  line-height:1.2;
  font-weight:600;
}

.acc-reviews130__carousel{
  position:relative;
  margin-top:3px;
}

.acc-reviews130__viewport{
  min-width:0;
  margin:0 -30px;
  padding:0 30px 12px;
  overflow:hidden;
  outline:none;
}

.acc-reviews130__viewport:focus-visible{
  border-radius:14px;
  box-shadow:0 0 0 3px rgba(11,124,211,.18);
}

.acc-reviews130__track{
  display:flex;
  align-items:flex-start;
  gap:14px;
  min-width:0;
  padding:3px 0 10px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
  -ms-overflow-style:none;
  -webkit-overflow-scrolling:touch;
}

.acc-reviews130__track::-webkit-scrollbar{display:none}

.acc-reviews130__card{
  position:relative;
  flex:0 0 calc((100% - 28px)/3);
  min-width:0;
  min-height:390px;
  height:auto;
  padding:29px 28px 25px;
  display:flex;
  flex-direction:column;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  overflow:hidden;
  border:1px solid #dfe7ed;
  border-radius:12px;
  background:var(--r130-white);
  box-shadow:0 10px 28px rgba(17,46,71,.065);
  transition:border-color .24s ease,box-shadow .24s ease,transform .24s ease;
}

.acc-reviews130__card::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:3px;
  background:transparent;
}

.acc-reviews130__card--featured{
  border-color:#a9d5f3;
  box-shadow:0 16px 36px rgba(11,124,211,.12);
}

.acc-reviews130__card--featured::before{
  background:linear-gradient(90deg,var(--r130-blue),#38afe9);
}

@media(hover:hover){
  .acc-reviews130__card:hover{
    transform:translateY(-2px);
    border-color:#cbdbe7;
    box-shadow:0 18px 38px rgba(17,46,71,.1);
  }

  .acc-reviews130__card--featured:hover{
    border-color:#8fc9ee;
    box-shadow:0 20px 42px rgba(11,124,211,.15);
  }
}

.acc-reviews130__featured{
  width:max-content;
  max-width:100%;
  min-height:27px;
  margin:-4px 0 18px;
  padding:0 10px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  border-radius:999px;
  color:var(--r130-blue);
  background:var(--r130-blue-soft);
  font-size:.66rem;
  line-height:1;
  letter-spacing:.055em;
  text-transform:uppercase;
  font-weight:750;
}

.acc-reviews130__featured svg{
  width:12px;
  height:12px;
}

.acc-reviews130__card-stars{
  min-height:20px;
}

.acc-reviews130__card-stars svg{
  width:19px;
  height:19px;
}

.acc-reviews130__card-stars svg.is-empty{
  color:#d5dee5;
}

.acc-reviews130__quote{
  flex:1 1 auto;
  margin:22px 0 31px;
  color:#344353;
  font-size:.95rem;
  line-height:1.72;
  letter-spacing:-.012em;
  font-weight:450;
}

.acc-reviews130__card--featured .acc-reviews130__quote{
  margin-top:3px;
}

.acc-reviews130__quote--clamp:not(.is-expanded){
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:8;
  overflow:hidden;
}

.acc-reviews130__more{
  width:max-content;
  max-width:100%;
  margin:-17px 0 24px;
  padding:0;
  border:0;
  color:var(--r130-blue);
  background:transparent;
  cursor:pointer;
  font-size:.74rem;
  line-height:1.35;
  font-weight:700;
}

.acc-reviews130__more:hover{
  color:var(--r130-blue-dark);
}

.acc-reviews130__more:focus-visible{
  outline:3px solid rgba(11,124,211,.2);
  outline-offset:4px;
  border-radius:3px;
}

.acc-reviews130__card-footer{
  margin-top:auto;
  padding-top:20px;
  border-top:1px solid var(--r130-line);
}

.acc-reviews130__author{
  min-width:0;
  display:flex;
  align-items:center;
  gap:12px;
}

.acc-reviews130__avatar{
  flex:0 0 46px;
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  border:1px solid rgba(11,124,211,.12);
  font-size:.89rem;
  line-height:1;
  letter-spacing:.02em;
  font-weight:750;
}

.acc-reviews130__avatar--blue{color:#0874c8;background:#e9f5fd}
.acc-reviews130__avatar--navy{color:#fff;background:#17344c;border-color:#17344c}
.acc-reviews130__avatar--cyan{color:#087ca5;background:#e8f7fb;border-color:#caebf3}
.acc-reviews130__avatar--slate{color:#42586c;background:#eef2f5;border-color:#dfe6eb}

.acc-reviews130__author-copy{
  min-width:0;
  display:grid;
  gap:5px;
}

.acc-reviews130__author-copy strong{
  overflow:hidden;
  color:var(--r130-text);
  font-size:.86rem;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:700;
}

.acc-reviews130__source{
  min-width:0;
  display:flex;
  align-items:center;
  gap:6px;
  color:#738294;
  font-size:.72rem;
  line-height:1.3;
}

.acc-reviews130__source i{
  flex:0 0 3px;
  width:3px;
  height:3px;
  border-radius:50%;
  background:#a4b0bc;
}

.acc-reviews130__google-g{
  flex:0 0 auto;
  width:17px;
  height:17px;
}

.acc-reviews130__arrow{
  position:absolute;
  top:50%;
  z-index:5;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border:1px solid #d9e4eb;
  border-radius:50%;
  color:var(--r130-blue);
  background:rgba(255,255,255,.97);
  box-shadow:0 8px 22px rgba(17,46,71,.11);
  cursor:pointer;
  transform:translateY(-50%);
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background-color .2s ease;
}

.acc-reviews130__arrow--prev{left:-2px}
.acc-reviews130__arrow--next{right:-2px}

.acc-reviews130__arrow svg{
  width:20px;
  height:20px;
  stroke:currentColor;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media(hover:hover){
  .acc-reviews130__arrow:hover{
    border-color:#b8d7eb;
    background:#fff;
    box-shadow:0 11px 27px rgba(11,124,211,.15);
  }
  .acc-reviews130__arrow--prev:hover{transform:translate(-2px,-50%)}
  .acc-reviews130__arrow--next:hover{transform:translate(2px,-50%)}
}

.acc-reviews130__arrow:focus-visible,
.acc-reviews130__google-link:focus-visible,
.acc-reviews130__dot:focus-visible{
  outline:3px solid rgba(11,124,211,.2);
  outline-offset:3px;
}

.acc-reviews130__dots{
  min-height:13px;
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
}

.acc-reviews130__dot{
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:999px;
  background:#cbd7e0;
  cursor:pointer;
  transition:width .2s ease,background-color .2s ease;
}

.acc-reviews130__dot.is-active{
  width:22px;
  background:var(--r130-blue);
}

.acc-reviews130__actions{
  margin-top:25px;
  display:flex;
  justify-content:center;
}

.acc-reviews130__google-link{
  min-height:45px;
  padding:0 16px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:1px solid #b9cbd8;
  border-radius:7px;
  color:var(--r130-navy);
  background:#fff;
  text-decoration:none;
  font-size:.82rem;
  line-height:1;
  font-weight:700;
  box-shadow:0 5px 15px rgba(17,46,71,.04);
  transition:transform .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;
}

.acc-reviews130__google-link .acc-reviews130__google-g{
  width:18px;
  height:18px;
}

.acc-reviews130__external{
  width:15px;
  height:15px;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media(hover:hover){
  .acc-reviews130__google-link:hover{
    transform:translateY(-1px);
    color:var(--r130-blue-dark);
    border-color:#8db9d6;
    box-shadow:0 9px 21px rgba(17,46,71,.08);
  }
}

@media(max-width:1179px){
  .acc-reviews130__card{
    flex-basis:calc((100% - 14px)/2);
  }
}

@media(max-width:780px){
  .acc-reviews130{
    padding:54px 0 56px;
  }

  .acc-reviews130__container{
    width:calc(100% - 34px);
  }

  .acc-reviews130__header{
    margin-bottom:29px;
    text-align:left;
  }

  .acc-reviews130__header h2{
    font-size:1.86rem;
    line-height:1.05;
  }

  .acc-reviews130__intro{
    margin-top:14px;
    font-size:.91rem;
    line-height:1.62;
  }

  .acc-reviews130__rating{
    margin-top:18px;
    justify-content:flex-start;
    gap:9px;
  }

  .acc-reviews130__rating strong{
    font-size:1.05rem;
  }

  .acc-reviews130__rating-separator{
    height:22px;
  }

  .acc-reviews130__stars{
    gap:2px;
  }

  .acc-reviews130__stars svg{
    width:16px;
    height:16px;
  }

  .acc-reviews130__rating-label{
    font-size:.72rem;
  }

  .acc-reviews130__viewport{
    margin:0 -17px 0 0;
    padding:0 17px 10px 0;
    overflow:visible;
  }

  .acc-reviews130__track{
    gap:12px;
    overflow-x:auto;
    padding-right:17px;
  }

  .acc-reviews130__card{
    flex-basis:min(86vw,390px);
    min-height:400px;
    height:auto;
    padding:24px 22px 22px;
    border-radius:11px;
  }

  .acc-reviews130__featured{
    margin-bottom:16px;
  }

  .acc-reviews130__quote{
    margin:19px 0 27px;
    font-size:.91rem;
    line-height:1.67;
  }

  .acc-reviews130__card--featured .acc-reviews130__quote{
    margin-top:1px;
  }

  .acc-reviews130__quote--clamp:not(.is-expanded){
    -webkit-line-clamp:9;
  }

  .acc-reviews130__arrow{
    display:none!important;
  }

  .acc-reviews130__dots{
    justify-content:flex-start;
    margin-top:10px;
  }

  .acc-reviews130__actions{
    justify-content:flex-start;
    margin-top:22px;
  }
}

@media(max-width:480px){
  .acc-reviews130__rating-label{
    max-width:90px;
  }

  .acc-reviews130__card{
    flex-basis:87vw;
    min-height:400px;
    height:auto;
  }

  .acc-reviews130__google-link{
    width:100%;
  }
}

@media(max-width:390px){
  .acc-reviews130__container{
    width:calc(100% - 30px);
  }

  .acc-reviews130__viewport{
    margin-right:-15px;
    padding-right:15px;
  }

  .acc-reviews130__track{
    padding-right:15px;
  }

  .acc-reviews130__card{
    flex-basis:88vw;
    padding-left:20px;
    padding-right:20px;
  }

  .acc-reviews130__rating{
    flex-wrap:wrap;
  }
}

@media(prefers-reduced-motion:reduce){
  .acc-reviews130__track{scroll-behavior:auto}
  .acc-reviews130__card,
  .acc-reviews130__arrow,
  .acc-reviews130__dot,
  .acc-reviews130__google-link{transition:none!important}
}
