/* container */

/* Swiper wrapper */
.testimonial-swiper { position: relative; }
.testimonial-swiper .swiper-wrapper { align-items: center; }

/* Slide card */
.testimonial-card {
  display: grid;
  grid-template-columns: 1fr 160px;
  background: linear-gradient(180deg,#fff,#fff);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 8px 28px rgba(20,20,25,0.08);
  padding: 20px;
  align-items: stretch;
}

/* Left column: text */
.testimonial-left {display:flex; flex-direction:column; justify-content:center; position: relative;}
.quote-icon { font-size: 42px; color:#e72619; line-height: 1;}
.testimonial-comment { 
  padding: 0px 10px 0px 35px;
  font-size: 16px;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 20px;
} 

.testimonial-left::before {
    content: "";
    width: 40%;
    height: 3px;
    background: linear-gradient(135deg, rgba(231, 38, 25, 0.9), rgba(231, 38, 25, 0.3), rgba(231, 38, 25, 0.01));
    position: absolute;
    top: 10px;
    left: 35px;
}

.testimonial-left::after {
    content: "";
    width: 3px;
    height: 40%;
    background: linear-gradient(135deg, rgba(231, 38, 25, 0.9), rgba(231, 38, 25, 0.3), rgba(231, 38, 25, 0.01));
    position: absolute;
    top: 35px;
    left: 10px;
}

/* Right column: portrait */
.testimonial-right {
  position:relative;
  border-radius:12px 12px 12px 0px;
  background-size:cover;
  background-position:center;
  min-height:220px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-start;
  padding: 18px;
}

/* portrait overlay (avatar + name) */
.testimonial-info { 
    margin-top: auto;
    display:flex; 
    align-items:center; 
    gap:12px; background: linear-gradient(90deg,#000000 0%, #ffffff 100%); 
    padding:10px 14px; 
    border-radius: 10px 0px 0px 10px; 
    backdrop-filter: blur(4px); 
}
.testimonial-avatar { width:66px; height:66px; border-radius:8px; object-fit:cover; display:block; }

/* author details block */
.author-name { font-size:16px; margin:0; color:#fff; font-weight:600; }
.author-role { font-size:13px; color:#e9e9e9; display:block; margin-top:4px; }

/* navigation override (small icon boxes) */
.swiper-button-next, .swiper-button-prev {
  width:44px; height:44px; background:#fff; border-radius:50%; box-shadow:0 8px 18px rgba(15,15,20,0.08);
  display:flex; align-items:center; justify-content:center; right:10px; top:50%; transform:translateY(-50%);
}
.swiper-button-prev { left: -22px; right:auto; }
.swiper-button-next { right: -22px; }

/* hide default arrows content so we can use background image via CSS if preferred */
.swiper-button-next::after, .swiper-button-prev::after { display:none; }

/* pagination */
.swiper-pagination { bottom: -18px; }

.swiper-pagination-bullet-active {
    background-color: #e72619 !important;
}

/* Responsive */
@media (max-width: 1248px) {
  .testimonial-card { grid-template-columns: 1fr 150px; }
}
@media (max-width: 768px) {
  .testimonial-card { grid-template-columns: 1fr; gap:12px; padding:16px; }
  .testimonial-right { min-height:220px; order: -1; }
  .swiper-button-prev { left: 8px; }
  .swiper-button-next { right: 8px; }
}