/* ============================================
   HOME HERO SECTION - Figma Design Implementation
   ============================================ */

/* Hero Section Container */
.section.home-hero {
  /* 배경색 */
    background-color: var(--black-color);
    
  background-image: url('../images_figma/home-background.png');
  background-position: 100% 0;
  background-repeat: no-repeat;
  background-size: 1027px 1064px;
  
  /* 패딩 - Figma 디자인: pt-[100px] pb-[20px] px-[100px] */
  padding-top: 100px;
  padding-bottom: 20px;
  
  /* Flexbox 레이아웃 */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/* Hero Section Wrapper */
.home-hero-section-wrapper {
  /* Flexbox 레이아웃 */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 80px;

  padding-top: 100px;
  padding-left: 100px;
  padding-right: 100px;
  
  /* 전체 너비 */
  width: 100%;
  max-width: 1440px;
}
  
  /* Hero Content Layout */
  .home-hero-content-wrapper {
  max-width: none;
  /* Flexbox 레이아웃 */
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 60px;
  
  /* 전체 너비 */
  width: 100%;
  }
  
  /* Hero Content Wrap */
  .hero-content-wrap {
    /* 컨텐츠 정렬 */
    display: flex;
    flex-direction: column;
  gap: 32px;
  
  /* 전체 너비 */
  width: 100%;
  }
  
  /* Section Tag/Badge */
  .section-tag-boarder-wrapper {
  width: 236px;
    /* 배경색 조정 */
  background-color: transparent;
  
  /* 테두리 색상 - Figma: border-[#5065ff] */
  border-bottom: 1px solid #5065ff;
  border-left: none;
  border-right: none;
  
  /* 패딩 조정 - Figma: px-[12px] py-[6px] */
    padding: 6px 12px;
    
    /* border-radius */
  border-radius: 0;
    
    /* 인라인 플렉스 */
    display: inline-flex;
    align-items: center;
    gap: 8px;
  }
  
  .section-tag-text {
  /* 텍스트 색상 - 그라디언트 유지 */
  /* Figma: from-[#8a98ff] from-[47.573%] to-[#c8cbe4] to-[98.345%] */
  background-image: linear-gradient(to bottom, #8a98ff 47.573%, #c8cbe4 98.345%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  
  /* 폰트 스타일 - Figma: font-['Inter_24pt:Regular',sans-serif] */
  font-family: 'Inter Tight', sans-serif;
    font-size: 14px;
  line-height: 1.5;
  font-weight: 400;
  
  /* 텍스트 정렬 */
  text-align: center;
  white-space: nowrap;
  }
  
  /* Hero Main Heading */
  .hero-heading-text {
  /* 폰트 크기 - Figma: text-[70px] */
  font-size: 70px;
    
  /* 줄 간격 - Figma: leading-[1.2] */
    line-height: 1.2;
    
  /* 색상 - Figma: text-white */
  color: #ffffff;
    
  /* 폰트 굵기 - Figma: font-['Inter_24pt:Medium',sans-serif] */
  font-family: 'Inter Tight', sans-serif;
  font-weight: 500;
    
    /* 마진 */
  margin-top: 0;
    margin-bottom: 0;
    
  /* 최대 너비 - Figma: w-[760px] */
  max-width: 760px;
    
  /* letter-spacing - Figma: tracking-[-2.8px] */
  letter-spacing: -2.8px;
  }
  
/* Heading 강조 색상 - FutureSense */
  .hero-heading-text .title-color {
  /* 강조 색상 - FutureSense는 그라디언트 또는 특정 색상 */
  /* Figma에서 FutureSense는 더 큰 폰트와 특별한 색상으로 표시됨 */
  color: #ffffff;
  /* 또는 그라디언트 적용 */
  /* background: linear-gradient(135deg, #8a98ff 0%, #c8cbe4 100%); */
  /* -webkit-background-clip: text; */
  /* -webkit-text-fill-color: transparent; */
  /* background-clip: text; */
  }
  
  /* Hero Description Text */
  .hero-short-details-text {
    /* 폰트 크기 - Figma: text-[16px] */
    font-size: 16px;
    
    /* 줄 간격 - Figma: leading-[1.5] */
    line-height: 1.5;
    
    /* 색상 - Figma: text-[color:var(--neutral\/white,#ffffff)] */
    color: #ffffff;
    
    /* 폰트 스타일 - Figma: font-['Inter_24pt:Regular',sans-serif] */
    font-family: 'Inter Tight', sans-serif;
    font-weight: 400;
      
      /* 마진 */
    margin-top: 0;
    margin-bottom: 0;
      
    /* 최대 너비 - Figma: w-[559px] */
    max-width: 559px;
  }
  
  /* Primary Button */
.primary-button-wrapper {
  /* 마진 제거 */
  margin: 0;
}

  .primary-button-wrap {
  /* 배경 그라디언트 - Figma: radial gradient */
  /* gradient from rgba(158,169,255,1) to rgba(114,131,254,1) to rgba(71,92,253,1) */
  background: radial-gradient(70.66% 70.66% at 50.29% 100%, #9EA9FF 0%, #475CFD 100%);

    
    /* 테두리 */
    border: none;
    
  /* 테두리 반경 - Figma: rounded-[8px] */
    border-radius: 8px;
    
  /* 패딩 - Figma: px-[16px] py-[12px] */
    padding: 12px 16px;
  
  /* 높이 - Figma: h-[48px] */
  height: 48px;
    
    /* 호버 효과 */
    transition: all 0.3s ease;
    
    /* 커서 */
    cursor: pointer;
    
    /* 인라인 플렉스 */
    display: inline-flex;
    align-items: center;
  gap: 4px;
  
  /* 텍스트 정렬 */
  text-align: center;
  }
  
  .primary-button-wrap:hover {
    /* hover 효과 */
    transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(71, 92, 253, 0.4);
}

.preview-hero-button-text-wrap {
  /* 높이 조정 */
  height: auto;
  overflow: visible;
  }
  
  .preview-hero-button-text {
  /* 버튼 텍스트 색상 - Figma: text-[color:var(--neutral\/white,#ffffff)] */
  color: #ffffff;
    
  /* 폰트 크기 - Figma: text-[16px] */
    font-size: 16px;
    
  /* 폰트 굵기 - Figma: font-['Inter_24pt:Medium',sans-serif] */
  font-family: 'Inter Tight', sans-serif;
  font-weight: 500;
    
  /* 줄 간격 - Figma: leading-[1.5] */
    line-height: 1.5;
  
  /* 텍스트 정렬 */
  text-align: center;
  white-space: nowrap;

  transform: none !important;
}

.primary-button-arrow {
  /* 크기 - Figma: size-[20px] */
  width: 20px;
  height: 20px;
}

/* Hero Scroll Indicator */
.hero-scroll-indicator {
  /* Flexbox 레이아웃 */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  
  /* 패딩 - Figma: px-0 py-[3px] */
  padding: 3px 0;
  
  /* 마진 */
  margin-top: 0;
}

.scroll-text {
  /* 텍스트 스타일 - Figma: font-['Inter_24pt:Medium',sans-serif] text-[16px] */
  font-family: 'Inter Tight', sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  
  /* 색상 - Figma: text-[color:var(--neutral\/white,#ffffff)] */
  color: #ffffff;
    
    /* 텍스트 정렬 */
    text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
  
  /* 마진 */
  margin: 0;
}

.scroll-arrow {
  /* 크기 - Figma: h-[18px] w-[19.459px] */
  height: 18px;
  width: 19.459px;
  
  /* 디스플레이 */
  display: flex;
  align-items: center;
  justify-content: center;
}

.scroll-arrow-icon {
  /* 크기 */
  width: 100%;
  height: 100%;
  
  /* 회전 - 아래쪽 화살표 */
  transform: rotate(90deg);
}

/* 반응형 디자인 */
@media screen and (max-width: 991px) {
  .section.home-hero {
    /* 태블릿 패딩 */
    padding: 100px 0 20px 0;
    background-position: 150% 0;
    background-size: 800px;
  }

    /* Hero Section Wrapper */
  .home-hero-section-wrapper {
    /* Flexbox 레이아웃 */
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 80px;

    padding-top: 0px;
    padding-left: 40px;
    padding-right: 40px;
    
    /* 전체 너비 */
    width: 100%;
    max-width: 1440px;
  }
  
  .hero-heading-text {
    /* 태블릿 폰트 크기 */
    font-size: clamp(48px, 6vw, 70px);
    letter-spacing: -2px;
  }
  
  .hero-short-details-text {
    /* 태블릿 폰트 크기 */
    font-size: 15px;
  }
  
  .home-hero-content-wrapper {
    /* 태블릿 gap */
    gap: 60px;
  }
  
  .hero-content-wrap {
    /* 태블릿 gap */
    gap: 32px;
  }
}

@media screen and (max-width: 767px) {
  .section-tag-text {
    font-size: 12px;
  }

  .section-tag-icon {
    width: 17px;
    height: 17px;
  }
}

@media screen and (max-width: 767px) {
  .section.home-hero .section-tag-boarder-wrapper {
    /* 테두리 반경 - Figma: rounded-[8.2px] */
    border-radius: 8.2px;
    width: 223px;
  }

  .section.home-hero {
    /* 모바일 패딩 */
    padding-top: 122px;
    padding-bottom: 20px;

    background-position: 0% -20%;
    background-size: 800px;
  }
  
  .home-hero-section-wrapper {
    /* 모바일 gap */
    gap: 80px;
  }
  
  .home-hero-content-wrapper {
    /* 모바일 gap */
    gap: 40px;
  }
  
  .hero-content-wrap {
    /* 모바일 gap */
    gap: 32px;
  }
  
  .hero-heading-text {
    /* 모바일 폰트 크기 */
    font-size: 32px;
  }
  
  .hero-short-details-text {
    /* 모바일 폰트 크기 */
    font-size: 14px;
  }
  
  .primary-button-wrap {
    /* 모바일 패딩 */
    padding: 10px 14px;
    height: 44px;
  }
  
  .preview-hero-button-text {
    /* 모바일 폰트 크기 */
    font-size: 14px;
  }
  
  .scroll-text {
    /* 모바일 폰트 크기 */
    font-size: 12px;
  }
}

/* ============================================
   WHO WE ARE SECTION - Figma Design Implementation
   ============================================ */

/* Who We Are Section */
.section.who-we-are {
  /* 배경색 */
  background-color: var(--black-color);
  
  /* 패딩 - Figma: py-[100px] */
  padding-top: 100px;
      padding-bottom: 100px;
  
  /* 위치 */
  position: relative;
  overflow: hidden;
  
  /* 가운데 정렬 */
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Who We Are Wrapper */
.who-we-are-wrapper {
  max-width: 1440px;
  /* Flexbox 레이아웃 - Figma: gap-[40px] */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  padding: 0 100px;
  
  /* 전체 너비 */
  width: 100%;
  
  /* 가운데 정렬 */
  margin: 0 auto;
}

/* Title Section */
.who-we-are-title-section {
  /* Flexbox 레이아웃 - Figma: gap-[16px] */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  
  /* 전체 너비 */
  width: 100%;
}

.who-we-are-title-section .section-tag-boarder-wrapper {
  /* 테두리 반경 - Figma: rounded-[8.2px] */
  border-radius: 8.2px;
  width: 130px;
}

/* Who We Are Heading */
.who-we-are-heading-text {
  /* 폰트 크기 - Figma: text-[36px] */
  font-size: 36px;
  
  /* 줄 간격 - Figma: leading-[1.4] */
  line-height: 1.4;
  
  /* 색상 - Figma: text-[color:var(--neutral\/white,#ffffff)] */
  color: #ffffff;
  
  /* 폰트 스타일 - Figma: font-['Inter_24pt:Medium',sans-serif] */
  font-family: 'Inter Tight', sans-serif;
  font-weight: 500;
  
  /* letter-spacing - Figma: tracking-[-1.44px] */
  letter-spacing: -1.44px;
  
  /* 텍스트 정렬 */
  text-align: center;
  
  /* 마진 */
  margin: 0;
  
  /* 최소 너비 */
  min-width: fit-content;
}

.who-we-are-heading-text .title-color {
  /* 강조 색상 - 그라디언트 */
  background: linear-gradient(to bottom, #8a98ff 47.573%, #c8cbe4 98.345%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Content Section */
.who-we-are-content-section {
  /* Flexbox 레이아웃 - Figma: gap-[40px] */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  
  /* 전체 너비 */
  width: 100%;
}

/* Video Label Wrapper */
.video-label-wrapper {
  /* Flexbox 레이아웃 - Figma: gap-[10px] */
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  
  /* 패딩 */
  padding: 0 12px;
}

.video-label-divider {
  /* 크기 - Figma: h-[12px] */
  height: 12px;
  
  /* 구분선 스타일 */
  border-left: 1px solid rgba(255, 255, 255, 1);
}

.video-label-text {
  /* 폰트 스타일 - Figma: font-['Inter_24pt:Regular',sans-serif] text-[16px] */
  font-family: 'Inter Tight', sans-serif;
      font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  
  /* 색상 - Figma: text-[color:var(--neutral\/white,#ffffff)] */
  color: #ffffff;
  
  /* 텍스트 */
  text-align: center;
  white-space: nowrap;
  
  /* 마진 */
  margin: 0;
}

/* Video Container */
.video-container {
  /* Grid 레이아웃 */
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  
  /* 위치 */
  position: relative;
  
  width: 100%;
  
  /* 커서 */
  cursor: pointer;
}

/* Video Element */
.intro-video {
  /* Grid area */
  grid-column: 1;
  grid-row: 1;
  
  /* 크기 */
  width: 100%;
  height: 100%;
  
  /* 이미지 스타일 */
  object-fit: cover;
  object-position: 50% 50%;
  
  /* 초기 상태: 숨김 */
  opacity: 0;
  z-index: 0;
  
  /* 전환 효과 */
  transition: opacity 0.3s ease;
}

.intro-video.playing {
  /* 재생 중: 표시 */
  opacity: 1;
  z-index: 3;
  cursor: pointer;
}

.video-thumbnail-wrapper {
  /* Grid area */
  grid-column: 1;
  grid-row: 1;
  
  /* 크기 */
  width: 100%;
  height: 100%;
  
  /* 위치 */
  position: relative;
  
  /* z-index */
  z-index: 1;
  
  /* 전환 효과 */
  transition: opacity 0.3s ease;
}

.video-thumbnail-wrapper.hidden {
  /* 숨김 상태 */
  opacity: 0;
  pointer-events: none;
}

.video-thumbnail-image {
  /* 크기 */
  width: 100%;
  height: 100%;
  
  /* 이미지 스타일 */
  object-fit: cover;
  object-position: 50% 50%;
}

.video-overlay {
  /* 오버레이 - Figma: bg-[rgba(0,0,0,0.5)] */
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  
  /* 포인터 이벤트 */
  pointer-events: none;
}

/* Video Play Button Wrapper */
.video-play-button-wrapper, .video-pause-button-wrapper {
  /* Grid area */
  grid-column: 1;
  grid-row: 1;
  
  /* Flexbox 레이아웃 - Figma: gap-[20px] */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  
  /* 위치 - 정가운데 배치 */
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  
  /* 크기 - Figma: w-[116px] */
  width: 116px;
  
  /* z-index */
  z-index: 2;
  
  /* 전환 효과 */
  transition: opacity 0.3s ease;
}

/* Video Play Button Wrapper */
.video-pause-button-wrapper {
  /* z-index */
  z-index: 3;
}

.video-play-button-wrapper.hidden, .video-pause-button-wrapper.hidden {
  /* 숨김 상태 */
  opacity: 0;
  pointer-events: none;
}

.video-play-button, .video-pause-button {
  /* 크기 - Figma: size-[80px] */
  width: 80px;
  height: 80px;
  
  /* 디스플레이 */
  display: flex;
  align-items: center;
  justify-content: center;
}

.play-icon, .pause-icon {
  /* 크기 */
  width: 100%;
  height: 100%;
}

.video-play-text, .video-pause-text {
  /* 폰트 스타일 - Figma: font-['Inter_24pt:Regular',sans-serif] text-[20px] */
  font-family: 'Inter Tight', sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.5;
  
  /* 색상 - Figma: text-[color:var(--neutral\/white,#ffffff)] */
  color: #ffffff;
  
  /* 텍스트 */
  text-align: center;
  white-space: nowrap;
  
  /* 마진 */
  margin: 0;
}

/* Stats Wrapper */
.who-we-are-stats-wrapper {
  /* Flexbox 레이아웃 - Figma: gap-[20px] */
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 20px;
  
  /* 패딩 - Figma: py-[20px] */
  padding: 20px 0;
  
  /* 전체 너비 */
  width: 100%;
}

/* Stat Card */
.who-we-are-stat-card {
  /* Flexbox 레이아웃 - Figma: gap-[16px] */
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  
  /* Flex grow */
  flex: 1 1 0;
  min-width: 0;
  min-height: fit-content;
}

.stat-value-wrapper {
  /* Flexbox 레이아웃 */
  display: flex;
  align-items: center;
  gap: 0;
}

.stat-value {
  /* 폰트 스타일 - Figma: font-['Inter_24pt:Medium',sans-serif] text-[32px] */
  font-family: 'Inter Tight', sans-serif;
  font-size: 32px;
  font-weight: 500;
  line-height: 1.3;
  
  /* 색상 - Figma: text-[color:var(--neutral\/white,#ffffff)] */
  color: #ffffff;
  
  /* 텍스트 */
  text-align: center;
  white-space: nowrap;
  
  /* 마진 */
  margin: 0;
}

.stat-arrow-down {
  /* 크기 - Figma: h-[24px] */
  height: 28px;
  width: 28px;
  rotate: 90deg;
  
  /* 디스플레이 */
  display: block;
}

.stat-description {
  /* 폰트 스타일 - Figma: font-['Inter_24pt:Regular',sans-serif] text-[16px] */
  font-family: 'Inter Tight', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  
  /* 색상 - Figma: text-[color:var(--primary\/blue1,#f4f6ff)] */
  color: #f4f6ff;
  
  /* 텍스트 */
  text-align: center;

  /* 마진 */
  margin: 0;
}

.stat-divider {
  /* 높이 - Figma: h-0 */
  height: 0;
  
  /* 너비 */
  width: 100%;
  
  /* 위치 */
  position: relative;
  
  /* 구분선 스타일 - Figma: stroke rgba(28, 44, 123, 1) */
  border-top: 1px solid rgba(28, 44, 123, 1);
}

/* 반응형 디자인 */
@media screen and (max-width: 991px) {
  .section.who-we-are {
    /* 태블릿 패딩 */
    padding-top: 60px;
    padding-bottom: 60px;
  }

  /* Who We Are Wrapper */
  .who-we-are-wrapper {
    max-width: 1440px;
    /* Flexbox 레이아웃 - Figma: gap-[40px] */
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
    padding: 0 40px;
    
    /* 전체 너비 */
    width: 100%;
    
    /* 가운데 정렬 */
    margin: 0 auto;
  }
  
  .who-we-are-content-section {
    /* 태블릿 패딩 */
    padding-left: 0px;
    padding-right: 0px;
  }
  
  .who-we-are-heading-text {
    /* 태블릿 폰트 크기 */
    font-size: 30px;
  }
  
  .video-container {
    /* 태블릿 높이 */
    width: 100%;
  }
  
  .video-play-button-wrapper, .video-pause-button-wrapper {
    /* 태블릿 위치 조정 */
    margin-left: auto;
    margin-right: auto;
    margin-top: auto;
    margin-bottom: auto;
  }
  
  .who-we-are-stats-wrapper {
    /* 태블릿 레이아웃 */
    grid-template-columns: repeat(2, 1fr);
    }
  }
  
  @media screen and (max-width: 767px) {

  .who-we-are-title-section .section-tag-boarder-wrapper {
    /* 테두리 반경 - Figma: rounded-[8.2px] */
    border-radius: 8.2px;
    width: 118px;
  }

  .section.who-we-are {
      /* 모바일 패딩 */
    padding-top: 60px;
    padding-bottom: 60px;
  }
  
  .who-we-are-wrapper {
    /* 모바일 gap */
    gap: 40px;
    padding-left: 20px;
    padding-right: 20px;
  }
  
  .who-we-are-content-section {
    /* 모바일 패딩 */
    gap: 20px;
  }
  
  .who-we-are-heading-text {
      /* 모바일 폰트 크기 */
    font-size: 18px;
  }

  .video-label-text {
    font-size: 12px;
  }
  
  .video-play-button-wrapper, .video-pause-button-wrapper {
    /* 모바일 크기 */
    width: 100px;
    gap: 10px;
  }
  
  .video-play-button, .video-pause-button {
    /* 모바일 크기 */
    width: 32px;
    height: 32px;
  }
  
  .video-play-text, .video-pause-text {
      /* 모바일 폰트 크기 */
    font-size: 14px;
  }
  
  .who-we-are-stats-wrapper {
    /* 모바일 레이아웃 */
    display: grid;
    gap: 20px;
  }

  .stat-arrow-down {
    /* 크기 - Figma: h-[24px] */
    height: 20px;
    width: 20px;
  }
  
  .stat-description {
    /* 모바일 너비 */
    width: 100%;
    font-size: 14px;
    max-width: 288px;
  }

  .stat-value {
    font-size: 20px;
  }

  .who-we-are-stat-card { 
    gap: 10px;
  }
}

/* ============================================
   PARTNERS SECTION - Figma Design Implementation
   ============================================ */

/* Partners Section */
.section.partners {
  /* 배경색 */
  background-color: var(--black-color);
  
  /* 패딩 */
  padding-top: 80px;
  padding-bottom: 80px;
  
  /* 위치 */
  position: relative;
  overflow: hidden;
}

/* Partners Section Wrapper */
.partners-section-wrapper {
  /* Flexbox 레이아웃 */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
  
  /* 전체 너비 */
  width: 100%;
}

/* Partners Title Text */
.partners-title-text {
  font-family: 'Inter', sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--white-color);
  text-align: center;
  letter-spacing: -0.96px;
  margin: 0;
  max-width: 1315px;
  width: 100%;
}

/* Partners Images Wrapper */
.partners-images-wrapper {
  /* Flexbox 레이아웃 */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  
  /* 전체 너비 */
  width: 100%;
  max-width: none;
  margin: 0 auto;
}

/* Partners Image Containers */
.partners-image-up,
.partners-image-down {
  /* 전체 너비 */
  width: 100%;
  
  /* 디스플레이 */
  display: flex;
  align-items: center;
  justify-content: flex-start;
  
  /* 오버플로우 */
  overflow: hidden;
  
  /* 테두리 반경 (필요시) */
  border-radius: 0;
  background-color: #C8CBE4;
}

/* Partners Scroll Wrapper */
.partners-scroll-wrapper {
  display: flex;
  align-items: center;
  animation: scroll-horizontal 30s linear infinite;
  will-change: transform;
}

.partners-scroll-reverse {
  animation: scroll-horizontal-reverse 30s linear infinite;
}

@keyframes scroll-horizontal {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

@keyframes scroll-horizontal-reverse {
  from {
    transform: translateX(-50%);
  }
  to {
    transform: translateX(0);
  }
}

.partners-image {
  /* 이미지 크기 */
  width: 80vw;
  height: 60px;
  flex-shrink: 0;
  
  /* 이미지 스타일 */
  object-fit: contain;
  object-position: center;
  
  /* 디스플레이 */
  display: block;
  
  /* 이미지 품질 */
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;

  padding: 0 15px;

  background-color: #C8CBE4;
}

/* 반응형 디자인 */
@media screen and (max-width: 991px) {
  .section.partners {
    /* 태블릿 패딩 */
    padding-top: 80px;
    padding-bottom: 80px;
  }
  
  .partners-section-wrapper {
    gap: 60px;
  }
  
  .partners-title-text {
    font-size: 24px;
    max-width: 100%;
    padding: 0 20px;
  }
  
  .partners-images-wrapper {
    max-width: 100%;
    gap: 0;
  }

  .partners-image {
    width: 150vw;
  }
}

@media screen and (max-width: 767px) {
  .section.partners {
      /* 모바일 패딩 */
    padding-top: 60px;
    padding-bottom: 60px;
  }
  
  .partners-section-wrapper {
    gap: 20px;
  }
  
  .partners-title-text {
    font-size: 16px;
    letter-spacing: -0.8px;
    padding: 0 15px;
  }
  
  .partners-images-wrapper {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  
  .partners-image {
    width: 200vw;
  }
}

/* ============================================
   SOLUTIONS SECTION - Figma Design Implementation
   ============================================ */

/* Solutions Section */
.section.solutions {
  background-color: var(--black-color);
  padding-top: 100px;
  padding-bottom: 100px;
  position: relative;
  overflow: hidden;
}

.solutions-title-section .section-tag-boarder-wrapper {
  /* 테두리 반경 - Figma: rounded-[8.2px] */
  border-radius: 8.2px;
  width: 115px;
}

/* Solutions Section Wrapper */
.solutions-section-wrapper {
  max-width: 1440px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
  width: 100%;
  padding: 0 100px;
  margin: 0 auto;
}

/* Solutions Title Section */
.solutions-title-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
  max-width: 100%;
}

/* Solutions Heading Text */
.solutions-heading-text {
  font-family: 'Inter', sans-serif;
  font-size: 36px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--white-color);
  text-align: center;
  letter-spacing: -1.44px;
  margin: 0;
  max-width: 100%;
}

/* Solutions Cards Wrapper */
.solutions-cards-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  align-items: stretch;
  justify-content: center;
  width: 100%;
}

/* Solution Card */
.solution-card {
  background: linear-gradient(180deg, #0A0A1A 0%, #1E1E40 100%);
  border: 1px solid #253db4;
  border-radius: 12px;
  padding: 30px 20px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  flex: 1 1 0;
  min-width: 300px;
  max-width: 400px;
  position: relative;
  overflow: hidden;
}

/* Solution Card Content */
.solution-card-content {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  text-align: left;
}

/* Solution Card Title */
.solution-card-title {
  font-family: 'Inter', sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--white-color);
  margin: 0;
}

/* Solution Card Description */
.solution-card-description {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--white-color);
  margin: 0;
}

/* Solution Card Image Wrapper */
.solution-card-image-wrapper {
  width: 100%;
  max-width: 300px;
  max-height: 300px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
  margin: 20px 0;
  position: relative;
}

.solution-card-image {
  width: 300px;
  height: 300px;
  object-fit: contain;
  object-position: center;
}

.solution-card-image2 {
  width: 240px;
  height: 240px;
  object-fit: contain;
  object-position: center;
}

/* Solution Card Button */
.solution-card-button {
  background: radial-gradient(70.66% 70.66% at 50.29% 100%, #9EA9FF 0%, #475CFD 100%);
  border-radius: 8px;
  padding: 12px 15px;
  display: flex;
  align-items: center;
  gap: 4px;
  text-decoration: none;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  width: 138px;
  height: 48px;
  justify-content: center;
}

.solution-card-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(71, 92, 253, 0.4);
}

.solution-button-text {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--white-color);
  white-space: nowrap;
}

.solution-button-arrow {
  width: 20px;
  height: 20px;
}

/* 반응형 디자인 */
@media screen and (max-width: 991px) {
  .section.solutions {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  
  .solutions-section-wrapper {
    padding-left: 40px;
    padding-right: 40px;
    gap: 40px;
  }
  
  .solutions-heading-text {
    font-size: 28px;
  }
  
  .solutions-cards-wrapper {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 40px;
    align-items: stretch;
    justify-items: center;
    width: 100%;
  }
  
  .solution-card {
    width: 360px;
    height: 600px;
  }
  
  .solution-card-image-wrapper {
    max-width: 100%;
  }
  
  .solution-card-image {
    width: 100%;
    max-width: 300px;
    height: auto;
    aspect-ratio: 1;
  }
  
  .solution-card-image2 {
    width: 100%;
    max-width: 240px;
    height: auto;
    aspect-ratio: 1;
  }
}

@media screen and (max-width: 767px) {
  .solutions-title-section .section-tag-boarder-wrapper {
    /* 테두리 반경 - Figma: rounded-[8.2px] */
    border-radius: 8.2px;
    width: 106px;
  }

  .section.solutions {
    padding-top: 60px;
    padding-bottom: 60px;
  }
    
  .solutions-section-wrapper {
    gap: 40px;
    padding-left: 20px;
    padding-right: 20px;
  }
  
  .solutions-heading-text {
    font-size: 16px;
  }
  
  .solutions-cards-wrapper {
    flex-direction: column;
    gap: 20px;
    align-items: stretch;
    padding: 0 20px;
  }
  
  .solution-card {
    max-width: 100%;
    min-height: 520px;
    width: 100%;
    height: auto;
  }

  .solution-card-title {
    font-size: 16px;
  }

  .solution-card-description {
    font-size: 14px;
  }

  .solution-card-image {
    max-width: 240px;
    max-height: 240px;
  }

  .solution-card-image2 {
    max-width: 200px;
    max-height: 200px;
  }
}

/* ============================================
   CERTIFICATIONS SECTION - Figma Design Implementation
   ============================================ */

/* Certifications Section */
.section.certifications {
  background-color: #0b0c1b;
  padding-top: 100px;
  padding-bottom: 100px;
  position: relative;
  overflow: hidden;
}

/* Certifications Section Wrapper */
.certifications-section-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 100px;
}

/* Certifications Title Section */
.certifications-title-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
}

.certifications-title-section .section-tag-boarder-wrapper {
  border-radius: 8.2px;
  width: auto;
}

/* Certifications Heading Text */
.certifications-heading-text {
  font-family: 'Inter', sans-serif;
  font-size: 36px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--white-color);
  text-align: center;
  letter-spacing: -1.44px;
  margin: 0;
  max-width: 1440px;
}

/* Certifications Cards Wrapper */
.certifications-cards-wrapper {
  display: flex;
  gap: 40px;
  align-items: stretch;
  justify-content: center;
  width: 100%;
}

/* Certification Card */
.certification-card {
  background-image: url('../images_figma/home-certificate-background.png');
  background-size: 250px 337px;
  background-repeat: no-repeat;
  background-position: 145px -49px;

  background-color: transparent;

  border: 1px solid #6578fe;
  border-radius: 8px;
  padding: 36px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 420px;
  position: relative;
  overflow: hidden;
}

/* Certification Card Header */
.certification-card-header {
  display: flex;
  gap: 10px;
  align-items: center;
}

/* Certification Icon Wrapper */
.certification-icon-wrapper {
  position: relative;
  width: 54px;
  height: 54px;
  flex-shrink: 0;
}

.certification-icon-bg {
  position: absolute;
  inset: 0;
  border-radius: 12px;
  background: radial-gradient(circle at 50% 100%, #9ea9ff, #475cfd);
}

.certification-icon {
  position: absolute;
  width: 30px;
  height: 30px;
  left: 12px;
  top: 12px;
  z-index: 1;
}

/* Certification Title Wrapper */
.certification-title-wrapper {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.certification-subtitle {
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: #dbdbdb;
  margin: 0;
  white-space: nowrap;
}

.certification-title {
  font-family: 'Inter', sans-serif;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--white-color);
  margin: 0;
  white-space: nowrap;
}

/* Certification Description */
.certification-description {
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  color: #dbdbdb;
  margin: 0;
  width: 362px;
}

.certification-description strong {
  font-weight: 700;
}

/* Certification Divider */
.certification-divider {
  height: 0;
  width: 345px;
  border-top: 1px solid #1c2c7b;
  margin: 0;
}

/* Certification Button */
.certification-button {
  background: radial-gradient(70.66% 70.66% at 50.29% 100%, #9EA9FF 0%, #475CFD 100%);
  border-radius: 8px;
  padding: 12px 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-decoration: none;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  width: 100%;
  height: 48px;
}

.certification-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(71, 92, 253, 0.4);
}

.certification-button-text {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--white-color);
  text-align: center;
}

.certification-button-arrow {
  width: 10px;
  height: 10px;
}

/* 반응형 디자인 */
@media screen and (max-width: 991px) {
  .section.certifications {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  
  .certifications-section-wrapper {
    gap: 40px;
    padding: 0 40px;
  }
  
  .certifications-heading-text {
    font-size: 28px;
  }
  
  .certifications-cards-wrapper {
    gap: 40px;
  }
  
  .certification-card {
    width: 100%;
    max-width: 420px;
  }
  
  .certification-description {
    width: 100%;
  }
  
  .certification-divider {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .section.certifications {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  
  .certifications-section-wrapper {
    gap: 40px;
    padding: 0 20px;
  }
  
  .certifications-heading-text {
    font-size: 18px;
  }
  
  .certifications-cards-wrapper {
    flex-direction: column;
    gap: 20px;
  }
  
  .certification-card {
    width: 100%;
    max-width: 100%;
  }
}

/* ============================================
   OUR TEAM SECTION - Figma Design Implementation
   ============================================ */

/* Our Team Section */
.section.our-team {
  background-color: #0b0c1b;
  background-image: url('../images_figma/our-team-background.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: 740px 1120px;
  padding-top: 60px;
  padding-bottom: 60px;
  position: relative;
  overflow: hidden;
}

/* Our Team Section Wrapper */
.our-team-section-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 80px;
  width: 100%;
  max-width: 1440px;
  padding-left: 100px;
  padding-right: 100px;
  margin: 0 auto;
}

/* Our Team Title Section */
.our-team-title-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  width: 100%;
}

.our-team-title-section .section-tag-boarder-wrapper {
  border-radius: 8.2px;
  width: auto;
}

/* Our Team Heading Text */
.our-team-heading-text {
  font-family: 'Inter', sans-serif;
  font-size: 36px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--white-color);
  text-align: center;
  letter-spacing: -1.44px;
  margin: 0;
}

/* Our Team Content Wrapper */
.our-team-content-wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}

/* Main Profile */
.our-team-main-profile {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 20px;
  align-items: flex-start;
  width: 100%;
}

.main-profile-image-wrapper {
  flex-shrink: 0;
  aspect-ratio: 190 / 190;
  max-height: 240px;
  max-width: 240px;
  min-height: 0;
  min-width: 0;
  position: relative;
  grid-column: 1;
  grid-row: 1 / 3;
  margin-right: 20px;
}

.main-profile-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.main-profile-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
  align-self: stretch;
  grid-column: 2;
  grid-row: 2;
}

.main-profile-header-wrapper {
  display: flex;
  flex-direction: column;
  width: 100%;
  grid-column: 2;
  grid-row: 1;
}

.main-profile-header {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
}

.main-profile-name {
  font-family: 'Inter', sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--white-color);
  margin: 0;
  white-space: nowrap;
}

.profile-divider-icon {
  font-family: 'Inter', sans-serif;
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  color: var(--white-color);
  height: 20.5px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.main-profile-title {
  font-family: 'Inter', sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
  color: #f4f6ff;
  margin: 0;
  white-space: nowrap;
}

.main-profile-details {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  width: 100%;
}

.profile-detail-section {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.profile-detail-section-right {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}

.profile-detail-subsection {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
}

.profile-detail-badge {
  background-color: var(--white-color);
  color: #1c2c7b;
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  padding: 0 10px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  white-space: nowrap;
  flex-shrink: 0;
}

.profile-detail-item {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--white-color);
  margin: 0;
  min-width: 0;
}

.profile-detail-item strong {
  font-weight: 700;
}

/* Our Team Divider */
.our-team-divider {
  height: 0;
  width: 100%;
  border-top: 1px solid #1c2c7b;
}

/* Our Team Members Grid */
.our-team-members-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  align-items: stretch;
  width: 100%;
}

/* Team Member Card */
.team-member-card {
  background-color: #0e1023;
  border: 1px solid #1c2c7b;
  border-radius: 8px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  flex: 1 1 0;
  min-width: 460px;
}

.team-member-header {
  display: flex;
  gap: 16px;
  align-items: center;
  flex-wrap: wrap;
}

.team-member-name {
  font-family: 'Inter', sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
  color: #f4f6ff;
  margin: 0;
  white-space: nowrap;
}

.team-member-divider {
  font-family: 'Inter', sans-serif;
  font-size: 24px;
  color: var(--white-color);
  line-height: 1;
}

.team-member-title {
  font-family: 'Inter', sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
  color: #f4f6ff;
  margin: 0;
  white-space: nowrap;
}

.team-member-description {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: #f4f6ff;
  margin: 0;
}

.team-member-info {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.team-member-info-item {
  font-family: 'Inter', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: #f4f6ff;
  margin: 0;
}

.team-member-divider-small {
  height: 0;
  width: 100%;
  border-top: 1px solid #1c2c7b;
  margin: 0;
}

/* 반응형 디자인 */
@media screen and (max-width: 991px) {
  .section.our-team {
    background-color: transparent;
    background-position: right top;
    padding-top: 60px;
    padding-bottom: 60px;
  }
  
  .our-team-section-wrapper {
    gap: 80px;
    padding-left: 40px;
    padding-right: 40px;
  }
  
  .our-team-heading-text {
    font-size: 36px;
  }
  
  .main-profile-image-wrapper {
    width: 240px;
    height: 240px;
  }
  
  .main-profile-details {
    flex-direction: column;
  }
  
  .our-team-members-grid {
    gap: 30px;
  }
  
  .team-member-card {
    min-width: 100%;
    max-width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .section.our-team {
    background-position: 300px -92px;
    padding-top: 60px;
    padding-bottom: 60px;
    padding-left: 0px;
    padding-right: 0px;
  }
  
  .our-team-section-wrapper {
    gap: 40px;
    padding-left: 20px;
    padding-right: 20px;
  }
  
  .our-team-heading-text {
    font-size: 18px;
  }
  
  .our-team-main-profile {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px;
    align-items: flex-start;
    margin-right: 0px;
  }

  .main-profile-image-wrapper {
    width: 188px;
    height: 188px;
    flex-shrink: 0;
    margin-right: 0px;
  }

  .main-profile-header-wrapper {
    flex: 1;
    min-width: 0;
    display: flex;
    margin: auto;
  }

  .main-profile-content {
    width: 100%;
    flex: 1 1 100%;
    padding-top: 12px;
  }

  .main-profile-name {
    font-size: 16px;
  }
  
  .main-profile-title {
    font-size: 16px;
  }

  .main-profile-header {
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
  }

  .main-profile-details {
    gap: 40px;
  }

  .profile-detail-section-right {
    gap: 40px;
  }

  .profile-divider-icon {
    display: none;
  }
  
  .our-team-members-grid {
    flex-direction: column;
    gap: 20px;
  }
  
  .team-member-card {
    min-width: 100%;
  }
  
  .team-member-name,
  .team-member-title {
    font-size: 16px;
  }
  
  .team-member-description,
  .team-member-info-item {
    font-size: 16px;
  }
}
