/* ── 실제 사례 후기 — KakaoTalk mock + carousel ── */
#reviews{
  background:#0a0a0b;
  border-top:1px solid rgba(255,255,255,.06);
}
#reviews .section-head{
  text-align:center !important;
  align-items:center !important;
  margin-bottom:52px !important;
}
#reviews .section-head p{
  font-size:16px !important;
  color:#7a7a80 !important;
}

.review-carousel{
  position:relative;
  max-width:none;
  margin:0 -24px;
}
.review-carousel__viewport{
  overflow:hidden;
  padding:8px 0 4px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.review-carousel__track{
  display:flex;
  gap:24px;
  width:max-content;
  will-change:transform;
}
.review-carousel__track--marquee{
  animation:review-marquee var(--review-marquee-duration,32s) linear infinite;
}
.review-carousel__track--marquee.is-paused{
  animation-play-state:paused;
}
@keyframes review-marquee{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
.review-slide{
  flex:0 0 340px;
  min-width:0;
}

/* Phone shell */
.kkt-phone{
  background:#111;
  border-radius:36px;
  padding:10px;
  box-shadow:
    0 24px 60px rgba(0,0,0,.55),
    0 0 0 1px rgba(255,255,255,.08),
    inset 0 1px 0 rgba(255,255,255,.06);
}
.kkt-phone__screen{
  border-radius:28px;
  overflow:hidden;
  background:#bacee0;
  display:flex;
  flex-direction:column;
  min-height:420px;
}

/* KakaoTalk native-like typography */
.kkt-header__name,
.kkt-bubble,
.kkt-time,
.kkt-date,
.kkt-avatar{
  font-family:-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Noto Sans KR',sans-serif;
}

/* KakaoTalk header */
.kkt-header{
  background:#fff;
  padding:12px 14px 11px;
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
  border-bottom:1px solid rgba(0,0,0,.06);
}
.kkt-header__back{
  font-size:18px;
  color:#191919;
  line-height:1;
  width:22px;
  flex-shrink:0;
}
.kkt-header__info{
  flex:1;
  min-width:0;
  text-align:center;
  margin-right:22px;
}
.kkt-header__name{
  font-size:15px;
  font-weight:600;
  color:#191919;
  letter-spacing:-.02em;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.kkt-header__sub{
  font-size:11px;
  color:#888;
  margin-top:2px;
}

/* Chat area */
.kkt-chat{
  flex:1;
  padding:14px 12px 18px;
  display:flex;
  flex-direction:column;
  gap:10px;
  overflow:hidden;
  background:#bacee0;
}
.kkt-date{
  align-self:center;
  background:rgba(0,0,0,.18);
  color:#fff;
  font-size:11px;
  padding:5px 12px;
  border-radius:12px;
  margin-bottom:4px;
  letter-spacing:-.01em;
}
.kkt-row{
  display:flex;
  align-items:flex-end;
  gap:6px;
  max-width:100%;
}
.kkt-row--sent{
  flex-direction:row-reverse;
  align-self:flex-end;
}
.kkt-row--recv{
  align-self:flex-start;
}
.kkt-avatar{
  width:36px;
  height:36px;
  border-radius:14px;
  background:#ddd;
  flex-shrink:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:700;
  color:#555;
  overflow:hidden;
}
.kkt-avatar--corp{
  background:linear-gradient(135deg,#e8e8e8,#d0d0d0);
  font-size:9px;
  letter-spacing:-.04em;
  text-align:center;
  line-height:1.15;
  padding:2px;
}
.kkt-bubble-wrap{
  display:flex;
  flex-direction:column;
  gap:2px;
  max-width:78%;
}
.kkt-row--sent .kkt-bubble-wrap{
  align-items:flex-end;
}
.kkt-bubble{
  padding:9px 11px;
  font-size:13.5px;
  line-height:1.45;
  letter-spacing:-.02em;
  word-break:keep-all;
  box-shadow:0 1px 1px rgba(0,0,0,.06);
}
.kkt-bubble--recv{
  background:#fff;
  color:#191919;
  border-radius:4px 16px 16px 16px;
}
.kkt-bubble--sent{
  background:#fee500;
  color:#191919;
  border-radius:16px 16px 4px 16px;
}
.kkt-time{
  font-size:10px;
  color:rgba(0,0,0,.38);
  padding:0 2px;
  white-space:nowrap;
  flex-shrink:0;
  margin-bottom:2px;
}
.kkt-row--sent .kkt-time{
  order:1;
}

@media(max-width:1024px){
  .review-slide{
    flex:0 0 300px;
  }
}
@media(max-width:768px){
  .review-carousel{
    margin:0 -16px;
  }
  .review-slide{
    flex:0 0 min(280px,78vw);
  }
  .review-carousel__track{
    gap:16px;
  }
  .kkt-phone__screen{
    min-height:400px;
  }
}
