.main-banner {width:100%;  max-width: 100%; height: 100vh; position: relative; overflow: hidden;}
.main-banner::after { content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: 1;}


/* 타이틀 */
.main-banner .title {z-index: 2; width:100%;  max-width: 80rem; padding-left: 7.7rem;}
.main-banner .title h1 {font-size: 6rem; color: #111; text-transform: uppercase; line-height: 1.3; margin-bottom: 2.5rem;}
.main-banner .title .logo-wrap {flex-shrink: 0; margin-bottom: 4rem;}
.main-banner .logo-wrap img {width: 16rem;}
.main-banner .title p {font-weight: 200; }

.main-banner .btn-viewmore {
  margin-top: 7rem;
}

.main-banner .btn-viewmore a {
    display: inline-flex;
    align-items: center;
    gap: 38px;
    padding: 10px 20px;
    background: linear-gradient(90deg, #3167A7 0%, #B7BADA 109.48%);
    border-radius: 6px;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    transition: 0.3s ease;
    color: #fff;
}

.main-banner .btn-viewmore a:hover {
    background-color: #1d5ba1; 
}

.main-banner .btn-viewmore a .icon {
    width: 32px;
    height: 32px;
    background-color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: transform .35s ease; 
}

.main-banner .btn-viewmore a .icon::after {
    content: "+";
    color: #3167A7;
    font-size: 22px;
    font-weight: 500;
    display: inline-block;
    transform: translateY(-2px);
}

.main-banner .btn-viewmore a:hover .icon {
    transform: rotate(180deg);
}


/* 카피라이트 */
.main-banner .copy-right {position: absolute; bottom: 6rem; left:77px; z-index: 2; color:rgba(255,255,255,0.5); width: 100%;}
.main-banner .copy-right p {font-size: 1.6rem; color: #9F9F9F;}
@media screen and (max-width:1280px) { 
  html,body {font-size: 50% !important;}
  .main-banner .title{flex-wrap: wrap;}
  .main-banner .title .logo-wrap {flex-basis:calc(100% - 2rem); max-width:calc(100% - 2rem); display: flex; justify-content: center; align-items: center;}
  .main-banner .title .logo-wrap>img {max-width: 15rem;}
  .main-banner .title .white {text-align: center;}
  .main-banner .title .white a {margin:0 auto; margin-top:3rem;}
}



.intro-bg {
  position: relative;
  overflow: hidden;
}

.intro-bg img {
  display: block;
  width: 100%;
  height: 100%;
  transform: translateX(-40px) scale(1.03); 
  opacity: 0;
  clip-path: inset(0 100% 0 0);
  object-fit: unset;
  object-position: left;
}


.title .logo-wrap,
.title h1,
.title .ft-20,
.title .btn-viewmore {
  opacity: 0;
  transform: translateX(-24px);
}

/* 접근성: 모션 최소화 환경일 때는 애니메이션 제거 */
@media (prefers-reduced-motion: reduce) {
  .intro-bg img,
  .title .logo-wrap,
  .title h1,
  .title .ft-20,
  .title .btn-viewmore {
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
    clip-path: inset(0 0 0 0) !important;
  }
}


@media screen and (max-width:1024px) {
  
  .main-banner .title .logo-wrap {
    justify-content: center;
  }

  .main-banner {
    flex-direction: column;
  }

  .main-banner .title {
    padding-left: 0;
    padding: 4rem 2rem;
    max-width: 100%;
  }

  .intro-bg {
    width: 100%;
  }

  .intro-bg img {
    object-fit: cover;
    object-position: center;
  }

  .main-banner .txt {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .main-banner .title h1,
  .main-banner .title p {
    text-align: center;
  }

  .main-banner .title h1 br {
    display: none;
  }

  .main-banner .copy-right {
    display: none;
  }

  .intro-bg {
    height: 100%;
  }

}

@media screen and (max-width:768px) {
  .main-banner .title .logo-wrap>img {
      max-width: 9rem;
  }

  .main-banner .title h1 {
    font-size: 4.5rem;
    margin-bottom: 1.5rem;
  }

  .main-banner .title p {
    font-size: 1.8rem;
  }

  .btn-viewmore a {
    padding: 8px 17px !important;
    font-size: 14px !important;
    gap: 25px !important;
  }

  .btn-viewmore a .icon {
    width: 25px !important;
    height: 25px !important;
  }

  .main-banner .btn-viewmore {
    margin-top: 5rem;
  }
}