.kimono-reviews { --review-accent: var(--color-one, #b90808); --review-surface: var(--color-dark-one, #151515); --review-text: var(--color-white, #fff); color: var(--review-text); }
.kimono-reviews .mega-section { padding: clamp(36px,5vw,72px) 0; }
.kimono-reviews #testimonials-img-bg { background: transparent; padding-top: 16px; }
.kimono-reviews .sec-heading { text-align: center; margin-bottom: 20px; }
.kimono-reviews .pre-title { color: var(--review-accent); letter-spacing: .1em; font-size: 13px; text-transform: uppercase; }
.kimono-reviews .title { color: var(--review-text); font-size: clamp(27px,3.2vw,44px); line-height: 1.25; }
.kimono-reviews .hollow-text { color: inherit; -webkit-text-stroke: 0; }
.kimono-reviews .testimonials-page-intro {
  margin: 0 auto 30px;
  opacity: 1;
  font-size: clamp(23px, 2.8vw, 38px);
  font-weight: 600;
  line-height: 1.45;
  text-wrap: balance;
  color: var(--review-accent);
}
.kimono-reviews .testimonials-page-intro p {
  margin: 0;
  font: inherit;
  line-height: inherit;
  color: inherit;
}
@supports (background-clip: text) or (-webkit-background-clip: text) {
  .kimono-reviews .testimonials-page-intro {
    background: linear-gradient(110deg, #22b5d3 15%, #ff951f 45%, #22b5d3 75%);
    background-size: 240% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: reviews-intro-color 7s ease-in-out infinite;
  }
}
@keyframes reviews-intro-color {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@media (prefers-reduced-motion: reduce) {
  .kimono-reviews .testimonials-page-intro { animation: none; }
}
.kimono-reviews .testmonial-card { padding: clamp(24px,4vw,52px); background: var(--review-surface); border: 1px solid rgba(128,128,128,.25); border-radius: 14px; text-align: center; }
.kimono-reviews .testimonial-content { width: 100%; min-width: 0; }
.kimono-reviews .customer-img { width: 88px; height: 88px; margin: 0 auto 24px; }
.kimono-reviews .customer-img img { display: block; width: 88px; height: 88px; object-fit: cover; border-radius: 50%; border: 2px solid var(--review-accent); }
.kimono-reviews .testimonial-text { font-size: clamp(17px,2vw,23px); line-height: 1.8; max-width: 820px; margin: auto; overflow-wrap: anywhere; color: var(--review-text); }
.kimono-reviews .customer-info { margin-top: 24px; }
.kimono-reviews .customer-name { color: var(--review-text); font-size: 19px; font-weight: 600; margin-bottom: 4px; }
.kimono-reviews .customer-role { color: var(--review-accent); font-size: 14px; margin: 0; }
.kimono-reviews .reviews-slide[hidden], .kimono-reviews .reviews-controls[hidden] { display: none; }
.kimono-reviews .reviews-slide { margin-bottom: 16px; }
.kimono-reviews .reviews-controls { display: flex; justify-content: center; align-items: center; gap: 22px; margin-top: 24px; }
.kimono-reviews .reviews-controls button { width: 44px; height: 44px; border-radius: 50%; border: 1px solid #159fc5; background: #159fc5; color: #fff; transition: background-color .2s ease, border-color .2s ease; }
.kimono-reviews .reviews-controls button:hover { background: #087fa5; border-color: #087fa5; color: #fff; }
.kimono-reviews .reviews-controls button:focus-visible { outline-color: #22b5d3; }
.kimono-reviews .testimonial-submission-section { background: transparent; padding-top: 16px; }
.kimono-reviews .testimonial-submission-shell { max-width: 1040px; margin: auto; padding: clamp(22px,4vw,48px); border: 1px solid rgba(128,128,128,.25); border-radius: 14px; background: var(--review-surface); box-shadow: none; }
.kimono-reviews .testimonial-submission-heading { text-align: center; margin-bottom: 28px; }
.kimono-reviews .testimonial-submission-heading p { max-width: 720px; margin: 16px auto; line-height: 1.7; color: var(--review-text); opacity: .75; }
.kimono-reviews .testimonial-form-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.kimono-reviews .testimonial-input-field { position: relative; display: flex; align-items: center; min-width: 0; background: transparent; }
.kimono-reviews .testimonial-input-icon { position: absolute; left: 16px; color: var(--review-accent); }
.kimono-reviews .testimonial-input-field input, .kimono-reviews .testimonial-textarea-field textarea { width: 100%; min-width: 0; padding: 15px 16px; border: 1px solid rgba(128,128,128,.4); background: transparent; color: var(--review-text); border-radius: 6px; box-sizing: border-box; font-size: 16px; }
.kimono-reviews .testimonial-input-field input { padding-left: 44px; min-height: 52px; }
.kimono-reviews .testimonial-textarea-field { display: block; margin-top: 16px; }
.kimono-reviews textarea { resize: vertical; }
.kimono-reviews .testimonial-textarea-field textarea { background: #090909; }
.kimono-reviews .testimonial-rating-field, .kimono-reviews .testimonial-security-field { margin-top: 22px; }
.kimono-reviews .testimonial-rating-options label { color: var(--review-text); background: transparent; border-color: rgba(128,128,128,.4); }
.kimono-reviews .testimonial-rating-options input:checked + label { color: var(--review-accent); border-color: var(--review-accent); background: transparent; }
.kimono-reviews .testimonial-consent-field { display: flex; align-items: flex-start; gap: 12px; margin: 22px 0; color: var(--review-text); line-height: 1.6; }
.kimono-reviews input[type="checkbox"] { accent-color: var(--review-accent); }
.kimono-reviews .testimonial-submit-button { padding: 14px 28px; min-height: 48px; border: 1px solid var(--review-accent); border-radius: 6px; background: var(--review-accent); color: #fff; box-shadow: none; }
.kimono-reviews :is(input, textarea, button, a):focus-visible { outline: 2px solid var(--review-accent); outline-offset: 3px; }
.kimono-reviews .testimonial-honeypot { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
@media (max-width:767px) { .kimono-reviews .testimonial-form-grid { grid-template-columns: minmax(0,1fr); } .kimono-reviews .testimonial-submit-button { width: 100%; } .kimono-reviews .testimonial-rating-options { display: flex; flex-wrap: wrap; gap: 8px; } }
