/* ============================================
   partner1 - 파트너/고객사 로고 무한 스크롤 배너
   ============================================ */

/* 최상위 - 패딩은 mbt_widget_padding 인라인 스타일로 적용 */
.partner1 {
  position: relative;
  overflow: hidden;
}

/* 내부 래퍼 */
.partner1 .partner1_inner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: var(--partner1-height, auto);
}

/* ── 배경이미지 ── */
.partner1 .partner1_bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  filter: blur(var(--partner1-blur, 0px));
}
.partner1 .partner1_bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}
.partner1 .partner1_bg picture {
  display: block;
  width: 100%;
  height: 100%;
}
.partner1 .partner1_bg .partner1_bg_alt {
  width: 100%;
  height: 100%;
}
.partner1 .partner1_bg .partner1_bg_alt img,
.partner1 .partner1_bg .partner1_bg_alt video,
.partner1 .partner1_bg .partner1_bg_alt iframe,
.partner1 .partner1_bg .partner1_bg_alt lottie-player {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* ── 오버레이 ── */
.partner1 .partner1_overlay {
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, var(--partner1-overlay, 0.5));
  z-index: 1;
}

/* ── 콘텐츠 영역 (flex 자식 → 전체 너비 유지) ── */
.partner1 .contents-container {
  position: relative;
  z-index: 2;
  width: 100% !important;
}
.partner1 .partner1_content {
  width: 100%;
}

/* ── 타이틀 영역 ── */
.partner1 .partner1_title_area {
  position: relative;
  width: 100%;
  margin-bottom: clamp(40px, calc(3.13vw + 30px), 80px);
}
.partner1 .partner1_title_area .hymore_wrap {
  position: absolute;
  right: 0;
  bottom: 0;
}
/* 더보기 폰트컬러 (MORE 스킨 + 폴백 공통) */
.partner1 .hymore_wrap a {
  color: var(--partner1-more-color, #fff);
}
.partner1 .hymore_wrap a:hover {
  opacity: 0.8;
}
.partner1 .partner1_subtit {
  color: #fff;
  font-size: clamp(14px, calc(0.47vw + 12.5px), 20px);
  font-weight: 500;
  margin-bottom: clamp(4px, calc(0.31vw + 3px), 8px);
}
/* 제목2: 메인 타이틀 */
.partner1 .partner1_tit2 {
  color: #fff;
  font-size: clamp(28px, calc(2.34vw + 20.5px), 58px);
  font-weight: 700;
  line-height: 1.2;
}
/* 제목3: 설명 */
.partner1 .partner1_tit3 {
  color: rgba(255, 255, 255, 0.7);
  font-size: clamp(14px, calc(0.47vw + 12.5px), 20px);
  line-height: 1.6;
  margin-top: clamp(8px, calc(0.63vw + 6px), 16px);
}
/* 제목4: 추가 텍스트 */
.partner1 .partner1_tit4 {
  color: rgba(255, 255, 255, 0.6);
  font-size: clamp(13px, calc(0.23vw + 12.26px), 16px);
  line-height: 1.6;
  margin-top: clamp(4px, calc(0.31vw + 3px), 8px);
}
/* 제목5 */
.partner1 .partner1_tit5 {
  color: rgba(255, 255, 255, 0.6);
  font-size: clamp(13px, calc(0.23vw + 12.26px), 16px);
  line-height: 1.6;
  margin-top: clamp(4px, calc(0.31vw + 3px), 8px);
}

/* ── 마키 영역 (100vw 브레이크아웃) ── */
.partner1 .partner1_marquee_area {
  overflow: hidden;
  position: relative;
  width: 100vw;
  left: 50%;
  transform: translateX(-50%);
}

/* 트랙 래퍼 */
.partner1 .partner1_track_wrap {
  overflow: hidden;
  width: 100%;
}
.partner1 .partner1_track_wrap + .partner1_track_wrap {
  margin-top: clamp(12px, calc(0.63vw + 10px), 20px);
}

/* 트랙 (flex row) */
.partner1 .partner1_track {
  display: flex;
  width: max-content;
}

/* 좌측 스크롤 애니메이션 */
.partner1 .partner1_left {
  animation: partner1Loop var(--partner1-speed, 30s) infinite linear;
}

/* 우측 스크롤 애니메이션 */
.partner1 .partner1_right {
  animation: partner1LoopReverse var(--partner1-speed, 30s) infinite linear;
}

/* 호버 시 멈춤 */
.partner1 .partner1_track_wrap:hover .partner1_track {
  animation-play-state: paused;
}

/* ── 썸네일 아이템 ── */
.partner1 .partner1_thumb {
  flex-shrink: 0;
  overflow: hidden;
  margin-left: clamp(12px, calc(0.63vw + 10px), 20px);
  padding: clamp(16px, calc(1.25vw + 12px), 32px);
  width: clamp(200px, calc(11.72vw + 162.5px), 350px);
  height: clamp(70px, calc(3.91vw + 57.5px), 120px);
  border-radius: clamp(8px, calc(0.31vw + 7px), 12px);
  background: rgba(255, 255, 255, var(--partner1-thumb-opacity, 0.7));
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s;
}
.partner1 .partner1_thumb:hover {
  background: rgba(255, 255, 255, 1);
}
.partner1 .partner1_thumb a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
.partner1 .partner1_thumb img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  display: block;
}
.partner1 .partner1_name {
  font-size: clamp(12px, calc(0.16vw + 11.5px), 14px);
  font-weight: 600;
  color: #333;
  text-align: center;
  word-break: keep-all;
}

/* ── 키프레임 ── */
@keyframes partner1Loop {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-50%, 0, 0);
  }
}

@keyframes partner1LoopReverse {
  0% {
    transform: translate3d(-50%, 0, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

/* ── 더보기 기본 스타일 (MORE 미설정 시 폴백) ── */
.partner1 .partner1_more {
  display: inline-flex;
  align-items: center;
  color: var(--partner1-more-color, #fff);
  font-size: clamp(13px, calc(0.23vw + 12.26px), 16px);
  font-weight: 500;
  text-decoration: none;
  opacity: 0.7;
  transition: opacity 0.3s;
}
.partner1 .partner1_more:hover {
  opacity: 1;
}

/* ── 반응형: 태블릿/모바일 ── */
@media screen and (max-width: 992px) {
  .partner1 .partner1_title_area {
    margin-bottom: clamp(20px, calc(3.13vw + 10px), 40px);
  }
  .partner1 .partner1_thumb {
    margin-left: clamp(8px, calc(0.63vw + 6px), 16px);
    padding: clamp(12px, calc(0.94vw + 9px), 21px);
    width: clamp(150px, calc(6.41vw + 129.5px), 232px);
    height: clamp(50px, calc(2.34vw + 42.5px), 80px);
    border-radius: clamp(6px, calc(0.31vw + 5px), 10px);
  }
  .partner1 .partner1_track_wrap + .partner1_track_wrap {
    margin-top: clamp(8px, calc(0.63vw + 6px), 16px);
  }
}

/* ── 배경 고정 (bg-fixed) ── */
.partner1.bg-fixed {
  clip-path: inset(0);
}
.partner1.bg-fixed .partner1_bg,
.partner1.bg-fixed .partner1_overlay {
  position: fixed;
}

/* ── 편집 모드 ── */
.partner1 .wg_edit_txt,
.partner1 .wg_edit_img,
.partner1 .wg_edit_link,
.partner1 .wg_edit_title {
  transition: none !important;
}
