/* ===== SECTION ===== */

.social-proof {
  padding: 100px 0;
  background: #FFF6F0;
}


/* ===== TITLE ===== */

.social-proof__title {
  font-size: 56px;
  color: #034743;
  margin-bottom: 60px;
}


.social-proof__stats {
  display: grid;
  grid-template-columns: 360px 392px 1fr;
  gap: 16px;

  border-top: 1px solid rgba(30,29,27,0.2);
  padding-top: 40px;
  margin-bottom: 80px;
}

.social-proof__stats-label {
  font-size: 40px;
  color: #1E1D1B;
}

.stats-col {
  display: flex;
  flex-direction: column;
  gap: 80px;
}

.stat__value {
  font-size: 56px;
  line-height: 0.92;
  color: #034743;
}

.stat__text {
  font-size: 20px;
  line-height: 1.2;
  color: #034743;
}


/* ===== LOGOS ===== */

.social-proof__logos {
  display: grid;
  grid-template-columns: 369px minmax(0, 1fr);
  gap: 95px;

  border-top: 1px solid rgba(30,29,27,0.2);
  padding-top: 56px;
  margin-bottom: 80px;
}


/* ===== LEFT TEXT ===== */

.social-proof__logos-text {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.social-proof__logos-text h3 {
  font-size: 40px;
  line-height: 1;
  font-weight: 500;
  color: #1E1D1B;
}

.social-proof__logos-text p {
  font-size: 20px;
  color: #1E1D1B;
  opacity: 0.6;
}


/* ===== IMAGE BLOCK ===== */

.social-proof__logos-grid,
.social-proof__logos-image {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

.social-proof__logos-image {
  max-width: 914px;
  height: 416px;
  display: flex;
  align-items: center;
}

.social-proof__logos-grid img,
.social-proof__logos-image img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  object-fit: contain;
  opacity: 0.8;
}

/* ===== SECTION cases===== */

.cases {
  background: #FFF6F0;
  padding: 56px 0 80px;
  border-top: 1px solid rgba(30,29,27,0.2);
}

.cases__inner {
  max-width: 1376px;
  margin: 0 auto;
}

.cases__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 36px;
}

.cases__head h2 {
  font-size: 40px;
  color: #034743;
}

.cases__btn {
  padding: 18px 32px;
  border: 2px solid #054743;
  border-radius: 22px;
  color: #054743;
  text-decoration: none;
  font-size: 17px;
}

.cases__slider {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  padding-bottom: 10px;

  scroll-snap-type: x mandatory;
}

.cases__slider::-webkit-scrollbar {
  display: none;
}

.case-card {
  flex: 0 0 563px;
  height: fit-content;

  background: #fff;
  border-radius: 28px;
  padding: 40px;

  display: flex;
  flex-direction: column;
  gap: 24px;

  scroll-snap-align: start;
}

.case-meta span,
.case-block span {
  font-size: 15px;
  opacity: 0.5;
}

.case-meta p {
  font-size: 20px;
}

.case-card h3 {
  font-size: 36px;
  line-height: 1.1;
}

.case-block p {
  font-size: 20px;
  line-height: 1.3;
}

.case-link {
  font-size: 15px;
  color: #005842;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 5px;
}

/* ===== PROGRESS BAR (UNIVERSAL) ===== */

.slider-progress {
  width: 100%;
  height: 2px;
  background: rgba(30,29,27,0.2);
  margin-top: 24px;
  position: relative;
  overflow: hidden;
}

.slider-progress__bar {
  height: 100%;
  width: 20%;
  background: #034743;

  transform: translateX(0);
  transition: transform 0.1s linear, width 0.2s ease;
}

.case-footer {
  margin-top: auto;

  display: flex;
  border-top: 1px solid rgba(30,29,27,0.2);
  padding-top: 16px;
}

.case-footer div {
  flex: 1;
}

.case-footer strong {
  display: block;
  font-size: 20px;
}

.case-footer span {
  font-size: 15px;
  opacity: 0.5;
}

/* ===== REVIEWS ===== */

.reviews {
  background: #FFF6F0;
  padding: 80px 0;
}

.section-head h3 {
  font-size: 40px;
  color: #034743;
}

.reviews .section-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.btn-outline {
  height: auto;
  padding: 13px 32px;
  border: 2px solid #054743;
  border-radius: 22px;
  background: transparent;
  color: #054743;
  font-size: 17px;
}

.reviews__slider {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  margin-top: 36px;
  padding-bottom: 10px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}

.reviews__slider .review-card {
  flex: 0 0 563px;
  min-width: 563px;
  scroll-snap-align: start;
}

.review-card {
  height: 641px;
  background: #fff;
  border-radius: 28px;
  padding: 40px;

  display: flex;
  flex-direction: column;
  gap: 24px;
}

.review-top {
  display: flex;
  align-items: center;
  gap: 12px;
}

.avatar {
  width: 48px;
  height: 48px;
  background: #D9D9D9;
  border-radius: 50%;
}

.review-meta {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.review-date {
  font-size: 15px;
  opacity: 0.5;
}

.review-meta strong {
  font-size: 20px;
}

.review-media {
  display: flex;
  gap: 8px;
}

.review-media div {
  flex: 1;
  height: 369px;
  background: #D9D9D9;
  border-radius: 16px;
}

.review-footer {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.divider {
  height: 1px;
  background: rgba(30,29,27,0.2);
}

.review-text {
  font-size: 20px;
}

.cases__slider,
.reviews__slider {
  overflow-x: auto;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE/Edge */
  touch-action: pan-x;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
  user-select: none;
}

.cases__slider.is-dragging,
.reviews__slider.is-dragging {
  cursor: grabbing;
  scroll-snap-type: none;
}

.cases__slider.is-dragging .case-card,
.cases__slider.is-dragging .review-card,
.reviews__slider.is-dragging .case-card,
.reviews__slider.is-dragging .review-card {
  pointer-events: none;
}

.cases__slider::-webkit-scrollbar,
.reviews__slider::-webkit-scrollbar {
  display: none; /* Chrome / Safari */
}


/* ===== TEXT ===== */

.social-proof__about {
  font-weight: 500;
    font-size: 36px;
    line-height: 117%;
    letter-spacing: 0.01em;
    color: #034743;
    margin-top: 50px;
}