.dr1057testimonials{
  padding: 90px 20px;
  background: radial-gradient(circle at top, #050816, #020617);
  color:#fff;
  overflow:hidden;
  position:relative;
}

/* soft luxury glow */
.dr1057testimonials::before,
.dr1057testimonials::after{
  content:"";
  position:absolute;
  width:500px;
  height:500px;
  border-radius:50%;
  filter:blur(140px);
  opacity:0.18;
  z-index:0;
}

.dr1057testimonials::before{
  background:#3b82f6;
  top:-180px;
  left:-180px;
}

.dr1057testimonials::after{
  background:gold;
  bottom:-200px;
  right:-200px;
}

/* container */
.dr1057testimonials-container{
  max-width:1200px;
  margin:auto;
  text-align:center;
  position:relative;
  z-index:2;
}

/* TITLE */
.dr1057-title{
  font-size:2.6rem;
  font-weight:700;
  margin-bottom:10px;
  background:linear-gradient(90deg,gold,#fff,gold);
  background-size:200%;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:shine 5s linear infinite;
}

@keyframes shine{
  0%{background-position:0%;}
  100%{background-position:200%;}
}

/* TEXT */
.dr1057-testimonial-subtext{
  max-width:900px;
  margin:10px auto 25px;
  opacity:0.85;
  line-height:1.7;
}

/* GOOGLE BUTTON */
.dr1057-google-box{
  margin-bottom:30px;
}

.dr1057-google-box a{
  display:inline-block;
  padding:12px 22px;
  border-radius:40px;
  background:linear-gradient(135deg,gold,#ffcc00);
  color:#111;
  font-weight:600;
  text-decoration:none;
  box-shadow:0 12px 30px rgba(255,215,0,0.25);
  transition:0.3s ease;
}

.dr1057-google-box a:hover{
  transform:translateY(-3px) scale(1.05);
}

/* GOOGLE SCREENSHOT */
.dr1057-google-screenshot{
  display:block;
  max-width:520px;
  margin:10px auto 45px;
  position:relative;
  text-decoration:none;
}

/* badge */
.dr1057-google-badge{
  position:absolute;
  top:12px;
  left:12px;
  background:rgba(0,0,0,0.6);
  padding:6px 10px;
  font-size:12px;
  border-radius:20px;
  border:1px solid gold;
  color:gold;
  backdrop-filter:blur(6px);
}

/* image */
.dr1057-google-screenshot img{
  width:100%;
  border-radius:16px;
  border:1px solid rgba(255,215,0,0.35);
  box-shadow:0 25px 60px rgba(0,0,0,0.7);
  transition:0.4s ease;
}

.dr1057-google-screenshot:hover img{
  transform:scale(1.03);
}

/* ============================= */
/* SLIDER BASE (MOBILE FIRST)    */
/* ============================= */

.dr1057-slider{
  display:flex;
  gap:25px;
  overflow-x:auto;
  scroll-behavior:smooth;
  padding:20px 10px 60px;
  position:relative;
  z-index:2;
}

.dr1057-slider::-webkit-scrollbar{
  display:none;
}

/* CARD */
.dr1057-card{
  flex:0 0 auto;
  width:320px;
}

/* floating ONLY mobile/tablet */
@keyframes float{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-8px);}
}

.dr1057-card-inner{
  background:linear-gradient(145deg,#0f172a,#111c33);
  padding:26px;
  border-radius:18px;
  box-shadow:0 20px 50px rgba(0,0,0,0.6);
  transition:0.4s ease;
}

/* hover */
.dr1057-card-inner:hover{
  transform:translateY(-10px);
}

/* stars */
.dr1057-stars{
  color:gold;
  margin-bottom:10px;
}

/* text */
.dr1057-text{
  opacity:0.9;
  line-height:1.6;
}

/* tag */
.dr1057-tag{
  margin-top:15px;
  display:inline-block;
  font-size:12px;
  padding:6px 12px;
  border-radius:12px;
  background:rgba(255,215,0,0.1);
  color:gold;
}

/* ============================= */
/* DESKTOP FIX (NO CROPPING)     */
/* ============================= */

@media (min-width: 1024px){

  .dr1057-slider{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    gap:28px;
    overflow:visible;
    padding:40px 10px 80px;
    align-items:stretch;
  }

  .dr1057-card{
    width:100%;
  }

  .dr1057-card-inner{
    height:100%;
  }
}

/* ============================= */
/* TABLET                       */
/* ============================= */

@media (max-width: 1023px) and (min-width: 768px){
  .dr1057-card{
    width:300px;
  }
}

/* ============================= */
/* MOBILE                       */
/* ============================= */

@media (max-width:768px){
  .dr1057-title{
    font-size:1.8rem;
  }

  .dr1057-card{
    width:92%;
  }

  .dr1057-slider{
    flex-direction:column;
    align-items:center;
  }
}