@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Thin.woff2') format('woff2');
    font-weight: 100;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-ExtraLight.woff2') format('woff2');
    font-weight: 200;
    font-display: swap;
}

/* 탑버튼 */
.top-btn{
    display: none;
    position: fixed;
    right: 30px;
    bottom: 80px;
    z-index: 999;
    width: 58px;
    height: 58px;
    background: #ffe066;
    color: #212121;
    border-radius: 50%;
    box-shadow: 0 2px 16px rgba(0,0,0,0.18);
    align-items: center;
    justify-content: center;
    cursor: pointer;
    font-size: 2em;
    transition: background 0.2s;
}
.top-btn:hover {
    background: #ffd900;
    color: #000;
}


/* 바텀배너 */
.bottom_barbnr{
    position: fixed;
    bottom:0;
    left:0;
    width:100%;
    height:74px;
    background-color:#ffde59;
    z-index: 100;
    display:flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0 0 10px 0 rgba(0,0,0,0.1);
}
.bottom_barbnr a{
    font-size:35px;
    font-weight:700;
    color:#212121;

}

.white{
    color:#fff !important;
}

.white_shadow{
    color:#fff;
    text-shadow: 0 0 40px #ffc100;
}

.pm_typo h2{
    font-size:55px;
    line-height:1.3;
    font-weight: 700;
    text-align: center;
    color:#212121;
}
.small_typo{
    font-weight: 100;
}


.yellow{
    color:#ffde59;
}
.yellow_2{
    color:#ebbf0e;
    position: relative;
    display: inline-block;
}

.yellow_2 .dot-text {
    position: relative;
    display: inline-block;
}

.yellow_2 .dot-text::before {
    content: '•';
    position: absolute;
    top: -15px;
    left: 50%;
    transform: translateX(-50%);
    color: #ebbf0e;
    font-size: 20px;
    line-height: 1;
}

.visual{
    background:url('https://image.engineerlab.co.kr/data/acad/engr/promotion/2025/roadmap/visual/bg.png') 
    no-repeat center top / cover;
    height:100vh;
    width:100%;
    text-align: center;
}
.main_typo{
    text-align:left;
    padding-top:148px;
}
.sub_typo_label{
    border:1px solid #ffde59;
    padding:6px 40px;
    border-radius:50px;
}
.sub_typo_value{
    margin-left:20px;
}
.sub_typo_pad{
    padding-top:50px;
}
.sub_typo_row_1{
    font-size:30px;
}


.sub_typo_row_2{
    padding-top:40px;
}
.sub_typo_row_2 .sub_typo_label{
    border:1px solid #fff;
}
.sub_typo_row_2 span{
    color:#fff;
}

/* 메인타이포 움직임 */

/* 순차 등장 애니메이션 */
.recommend-fadein {
    opacity: 0;
    transform: translateY(40px) scale(0.97);
    filter: blur(6px);
    transition: 
      opacity 0.8s cubic-bezier(0.23, 1, 0.32, 1),
      transform 0.8s cubic-bezier(0.23, 1, 0.32, 1),
      filter 0.8s cubic-bezier(0.23, 1, 0.32, 1);
  }
  .recommend-fadein.on {
    opacity: 1;
    transform: translateY(0) scale(1);
    filter: blur(0);
  }


/* 프로모션 콘텐츠1 */
.promotion_content_1{
    background-color:#212121;
    padding: 90px 0;
}

.promotion_content_1 h2{
    color:#fff;
}

.promotion_content_1_img{
    padding: 52px 0 100px 0;
}

.sub_typo{
    text-align: center;
    color:#fff;
}

.sub_typo h5, 
.sub_typo h4{
    color:#fff;
}
.sub_typo h5{
    font-size:36px;
}

.sub_typo h4{
    font-size:46px;
    font-weight: 700;
}

.promotion_content_1_img_02{
    padding-top:47px;
    display:flex;
    justify-content: center;
}


/* 프로모션2 */
.promotion_content_2{
    background-color:#f1f1f1;
    padding: 90px 0;
}

.promotion_content_2_img {
    padding-top:50px;
}

.promotion_content_2_img ul{
    display:flex;
    justify-content: space-between;
}


/* 프로모션3 */
.promotion_content_3{
    padding: 90px 0 0 0;
}

.promotion_content_3_img{
    position: relative;
    height: 1594px;
    overflow: hidden;
}

.promotion_content_3_img .btn{
    position: absolute;
    top:268px;
    right:217px;
    /* 애니메이션 그냥 위아래로만 */
    animation: finalUpDown 1.8s ease-in-out infinite;
    filter: drop-shadow(0 10px 10px rgba(0, 0, 0, 0.4));
}



.promotion_content_3_img .btn img{
    width:75%;
}
@keyframes finalUpDown {
    0% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-10px); /* 위로 살짝 */
    }
    100% {
      transform: translateY(0);
    }
  }
  

/* 프로모션4 */
.promotion_content_4{
    padding:90px 0;
    background-color:#ffde59;
}

.img_but{
    position: absolute;
    top:0;
    right:0;
    z-index: 1;
    animation: shine 2.5s infinite linear;
    /* option: softer glowing edge */
    filter: brightness(1) drop-shadow(0 0 10px #fffabe);
}

@keyframes shine {
    0% {
        filter: brightness(1) drop-shadow(0 0 10px #fffabe);
        
    }
    30% {
        filter: brightness(1.4) drop-shadow(0 0 24px #ffefbe);
    }
    50% {
        filter: brightness(1.7) drop-shadow(0 0 36px #fff7c7);
    }
    70% {
        filter: brightness(1.3) drop-shadow(0 0 22px #fffabe);
    }
    100% {
        filter: brightness(1) drop-shadow(0 0 10px #fffabe);
    }
}


.promotion_content_4_img{
    padding-top:50px;
    
}
.promotion_content_4_img ul{
    flex-wrap:wrap;
    display:flex;
    justify-content: space-between;
    gap:10px;
}


/* 프로모션5 */
.promotion_content_5{
    padding:90px 0;
    background:linear-gradient(180deg, #212121 0%,#212121 55%, #020202 100%);
}

.promotion_content_5_img{
    text-align: center;
    padding-top:50px;
    position: relative;
} 

.coup_3{
    position: absolute;
    right:250PX;
}

.btn_e{
    position: absolute;
    left:50%;
    bottom:0;
    transform: translateX(-50%);
    width:53%;
    z-index: 1;
}



.finger{
    position: absolute;
    bottom:127px;
    right:0;
    z-index: 1;
    animation: finalUpDown 1.8s ease-in-out infinite;
}

@keyframes finalUpDown {
    0% {
      transform: translateY(0);
    }
    50% {
      transform: translateY(-10px); /* 위로 살짝 */
    }
    100% {
      transform: translateY(0);
    }
  }

.promotion_content_5_notice{
    padding-top:50px;
}

.promotion_content_5_notice ul{
    display:flex;
    justify-content: left;
    margin-left:100px;
    gap:60px;
    align-items: center;
}

.promotion_content_5_notice ul li p{
    font-size:20px;
    color:rgba(255,255,255,0.6);
    line-height:1.5;
    font-weight:400;
    padding-bottom:30px;
}

/* 프로모션6 */
.promotion_content_6{
    padding:90px 0;
    background-color:#414141;
}


/* 찾아오는길 */
.promotion_content_7{
    background-color:#f1f1f1;
    padding:90px 0;
}

.promotion_content_7_img{
    padding-top:50px;
}


/* 바쁘니 우선 한곳에 모아놓자자 */

/* 스크롤 애니메이션 공통 스타일 */
.scroll-animate {
    opacity: 0;
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.scroll-animate.on {
    opacity: 1;
}

/* 섹션별 애니메이션 효과 */
.promotion_content_1 .pm_typo.scroll-animate {
    transform: translateX(-50px);
}
.promotion_content_1 .pm_typo.scroll-animate.on {
    transform: translateX(0);
}

.promotion_content_1 .promotion_content_1_img.scroll-animate {
    transform: translateX(50px);
}
.promotion_content_1 .promotion_content_1_img.scroll-animate.on {
    transform: translateX(0);
}

.promotion_content_1 .sub_typo.scroll-animate {
    transform: translateY(30px);
}
.promotion_content_1 .sub_typo.scroll-animate.on {
    transform: translateY(0);
}

.promotion_content_1 .promotion_content_1_img_02.scroll-animate {
    transform: scale(0.9);
}
.promotion_content_1 .promotion_content_1_img_02.scroll-animate.on {
    transform: scale(1);
}
 .pm_typo.scroll-animate {
    transform: translateY(50px);
}
.pm_typo.scroll-animate.on {
    transform: translateY(0);
}

.promotion_content_2 .promotion_content_2_img li {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.promotion_content_2 .promotion_content_2_img.scroll-animate.on li:nth-child(1) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.1s;
}
.promotion_content_2 .promotion_content_2_img.scroll-animate.on li:nth-child(2) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.2s;
}
.promotion_content_2 .promotion_content_2_img.scroll-animate.on li:nth-child(3) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.3s;
}

/* promotion_content_3 */
.promotion_content_3 .pm_typo.scroll-animate {
    transform: scale(0.9) translateY(30px);
}
.promotion_content_3 .pm_typo.scroll-animate.on {
    transform: scale(1) translateY(0);
}

.promotion_content_3_img.scroll-animate {
    transform: scale(0.95);
}
.promotion_content_3_img.scroll-animate.on {
    transform: scale(1);
}

/* promotion_content_4 */
.promotion_content_4 .pm_typo.scroll-animate {
    transform: translateY(40px);
}
.promotion_content_4 .pm_typo.scroll-animate.on {
    transform: translateY(0);
}

.promotion_content_4 .promotion_content_4_img li {
    opacity: 0;
    transform: scale(0.8) rotate(-5deg);
    transition: opacity 0.5s ease-out, transform 0.5s ease-out;
}
.promotion_content_4 .promotion_content_4_img.scroll-animate.on li:nth-child(1) {
    opacity: 1;
    transform: scale(1) rotate(0deg);
    transition-delay: 0.1s;
}
.promotion_content_4 .promotion_content_4_img.scroll-animate.on li:nth-child(2) {
    opacity: 1;
    transform: scale(1) rotate(0deg);
    transition-delay: 0.2s;
}
.promotion_content_4 .promotion_content_4_img.scroll-animate.on li:nth-child(3) {
    opacity: 1;
    transform: scale(1) rotate(0deg);
    transition-delay: 0.3s;
}
.promotion_content_4 .promotion_content_4_img.scroll-animate.on li:nth-child(4) {
    opacity: 1;
    transform: scale(1) rotate(0deg);
    transition-delay: 0.4s;
}

/* promotion_content_5 */
.promotion_content_5 .pm_typo.scroll-animate {
    transform: translateY(40px);
}
.promotion_content_5 .pm_typo.scroll-animate.on {
    transform: translateY(0);
}

.promotion_content_5 .promotion_content_5_img.scroll-animate {
    transform: translateY(30px) scale(0.95);
}
.promotion_content_5 .promotion_content_5_img.scroll-animate.on {
    transform: translateY(0) scale(1);
}

.promotion_content_5 .promotion_content_5_notice.scroll-animate {
    transform: translateX(-30px);
}
.promotion_content_5 .promotion_content_5_notice.scroll-animate.on {
    transform: translateX(0);
}

/* promotion_content_6 */
.promotion_content_6 .pm_typo.scroll-animate {
    transform: translateY(40px);
}
.promotion_content_6 .pm_typo.scroll-animate.on {
    transform: translateY(0);
}

.promotion_content_6 .promotion_content_5_img.scroll-animate {
    transform: scale(0.9);
}
.promotion_content_6 .promotion_content_5_img.scroll-animate.on {
    transform: scale(1);
}

.promotion_content_6 .promotion_content_5_notice.scroll-animate {
    transform: translateY(30px);
}
.promotion_content_6 .promotion_content_5_notice.scroll-animate.on {
    transform: translateY(0);
}

/* promotion_content_7 */
.promotion_content_7 .pm_typo.scroll-animate {
    transform: translateY(40px);
}
.promotion_content_7 .pm_typo.scroll-animate.on {
    transform: translateY(0);
}

.promotion_content_7_img.scroll-animate {
    transform: translateY(30px) scale(0.95);
}
.promotion_content_7_img.scroll-animate.on {
    transform: translateY(0) scale(1);
}