
 
 /* ÀÏ¹Ý ÅÂºí¸´ ¹× ¼ÒÇü µ¥½ºÅ©Åé */
@media (max-width: 1199px) {
  #s_blank {
    height: 97px;
  }
}

/* ¸ð¹ÙÀÏ ±â±â (½º¸¶Æ®Æù) */
@media (max-width: 767px) {
  #s_blank {
    height: 97px;
  }
}

/* µ¥½ºÅ©Åé */
@media (min-width: 1200px) {
  #s_blank {
    height: 0px;
  }
}


/* =====================
   VIDEO SECTION
===================== */
.video-section {
  position: relative;
  width: 100%;
  min-height: 100svh;
  height: 100dvh;
  overflow: hidden;
  background: #000;
}

@supports not (height: 100dvh) {
  .video-section {
    height: 100vh;
  }
}

/* ¿µ»ó */
.video-section video {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover; /* ÇÙ½É */
  transform: translate(-50%, -50%);
}

/* =====================
   OVERLAY (°¡¿îµ¥ Á¤·Ä)
===================== */
.video-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;

  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  text-align: center;
  color: #fff;

  background: rgba(0,0,0,0.35);
}

/* ÀÛÀº ¹®±¸ */
.sub-text {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 3px;
  margin-bottom: 20px;
  font-family: 'NanumSquareNeo';
}

/* ¸ÞÀÎ Å¸ÀÌÆ² */
.main-title1 {
  font-size: 180px;
  font-weight: 900;
  margin-bottom: 35px;
  font-family: 'NanumSquareNeo';
}

/* =====================
   BUTTONS
===================== */
.btn-group1 {
  display: flex;
  gap: 20px;
  padding-bottom: 5px; /* ÇÏ´Ü¿¡ ¼û½¯ °ø°£À» ¸í½ÃÀûÀ¸·Î ºÎ¿© */
}

/* °øÅë ¹öÆ° */
.btn2 {
  padding: 14px 32px;
  border-radius: 50px;
  font-size: 14px;
  text-decoration: none;
  transition: all 0.3s ease;
  display: inline-block;
  border: 1px solid transparent; /* ÇÙ½É: ±âº»ºÎÅÍ border */  
  font-weight: 700;
  font-family: 'NanumSquareNeo';
}

/* ¿ÞÂÊ ¹öÆ° (Èò»ö) */
.btn-white {
  background: #fff;
  color: #000;
  border: 1px solid #fff; /* hover ´ëºñ */
}

/* ¿À¸¥ÂÊ ¹öÆ° (Åõ¸í) */
.btn-outline {
  border: 1px solid #fff;
  color: #fff;
}

/* hover ¹ÝÀü */
.btn-white:hover {
  background: transparent;
  color: #fff;
  border: 1px solid #fff;
  transform: none; /* È¤½Ã Àû¿ëµÈ È¿°ú Á¦°Å */
  text-decoration: none !important;
}

.btn-outline:hover {
  background: #fff;
  color: #000;
  text-decoration: none !important;
}

/* =====================
   SCROLL ARROW
===================== */
.scroll-indicator {
  position: absolute;
  bottom: env(safe-area-inset-bottom, 0px);
  margin-bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  width: 22px;
  height: 22px;
}

.scroll-indicator span {
  display: block;
  width: 100%;
  height: 100%;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  animation: arrowMove 1.6s ease-in-out infinite;
}

@keyframes arrowMove {
  0% { transform: translateY(0) rotate(-45deg); opacity: 0.4; }
  50% { transform: translateY(8px) rotate(-45deg); opacity: 1; }
  100% { transform: translateY(0) rotate(-45deg); opacity: 0.4; }
}

/* =====================
   CONTENT
===================== */
.content-section {
  padding: 120px 20px;
  background: #fff;
}

/* =====================
   RESPONSIVE
===================== */

/* ÅÂºí¸´ */
@media (max-width: 1024px) {
  .main-title1 {
    font-size: 120px;
  }
}

/* ¸ð¹ÙÀÏ */
@media (max-width: 768px) {

  .main-title1 {
    font-size: 75px;
  }

  .sub-text {
    font-size: 9px;
  }

  .btn-group1 {
    flex-direction: column;
    gap: 12px;
  }

  .btn2 {
    padding: 12px 24px;
    font-size: 13px;
  }
}





        /* ÀüÃ¼ ¹è°æ Wrapper (°¡·Î 100%, ¹è°æ»ö #fff) */
.wrapper4 {
    width: 100%;
    background-color: #f9f9f9;
    padding: 80px 0;
    color: #222222;

    /* ¾Ö´Ï¸ÞÀÌ¼Ç Ãß°¡ */
    opacity: 0;
    transform: translateY(30px);
    animation: fadeUp 0.8s ease forwards;
}

/* ¾Ö´Ï¸ÞÀÌ¼Ç Á¤ÀÇ */
@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

        /* Áß¾Ó Á¤·Ä Container (PC ±âÁØ 1200px) */
        .container4 {
            width: 1200px;
            margin: 0 auto;
            padding: 0;
        }

        /* --- »ó´Ü Å¸ÀÌÆ² ¿µ¿ª --- */
        .top-row {
            display: flex;
            justify-content: flex-start;
            margin-bottom: 120px;
        }

        .top-row .subtitle {
            width: 320px;
            font-size: 14px;
            font-weight: 700;
            letter-spacing: 3px;
            color: #888888;
            padding-top: 12px;
            text-align: left; /* ¸í½ÃÀû ÁÂÃø Á¤·Ä */
        }

        .top-row .main-title {
            flex: 1;
            text-align: left; /* ¸í½ÃÀû ÁÂÃø Á¤·Ä */
        }

        .top-row .main-title h1 {
            font-size: 52px;
			font-family:'NanumSquareNeo';
            font-weight: 900;
            line-height: 1.25;
            margin: 0 0 30px 0;
            letter-spacing: -1.5px;
            color: #111111;
            word-break: keep-all;
        }

        .top-row .main-title p {
            font-size: 17px;
            line-height: 1.7;
            color: #666666;
            margin: 0;
            word-break: keep-all;
        }

        /* --- Áß°£ Åë°è ¼öÄ¡ ¿µ¿ª --- */
        .stats-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            border-bottom: 1px solid #eeeeee;
            padding-bottom: 80px;
            margin-bottom: 100px;
        }

        .stat-item {
            display: flex;
            flex-direction: column;
            align-items: flex-start; /* ÁÂÃø Á¤·Ä °­Á¦ */
        }

        .stat-num-wrapper {
            display: flex;
            align-items: baseline;
            margin-bottom: 15px;
            color: #111111;
        }

        .stat-num {
            font-size: 90px;
            font-weight: 800;
            line-height: 1;
            letter-spacing: -2px;
        }

        .stat-unit {
            font-size: 40px;
            font-weight: 700;
            margin-left: 4px;
            letter-spacing: -1px;
        }

        .stat-label {
            font-size: 16px;
            font-weight: 500;
            color: #888888;
        }

        /* --- ÇÏ´Ü Àü¹®°¡ ÆÀ ¿µ¿ª --- */
        .bottom-section {
            display: flex;
            gap: 80px;
            align-items: center;
        }

        .text-content {
            flex: 1;
            text-align: left; /* ¸í½ÃÀû ÁÂÃø Á¤·Ä °­Á¦ */
        }

        .image-content {
            flex: 1;
        }

        .image-content img {
            width: 100%;
            height: auto;
            border-radius: 20px;
            display: block;
            box-shadow: 0 24px 48px rgba(0, 0, 0, 0.08); /* °í±Þ½º·¯¿î ±×¸²ÀÚ È¿°ú */
            object-fit: cover;
        }

        .text-content h2 {
            font-size: 36px;
			font-family:'NanumSquareNeo';
            font-weight: 700;
            margin: 0 0 24px 0;
            letter-spacing: -1px;
            color: #111111;
            text-align: left;
        }

        .text-content > p {
            font-size: 17px;
            line-height: 1.6;
            color: #666666;
            margin: 0 0 45px 0;
            word-break: keep-all;
            text-align: left;
        }

        .feature-list {
            display: flex;
            flex-direction: column;
            gap: 32px;
            align-items: flex-start; /* ÁÂÃø Á¤·Ä °­Á¦ */
        }

        .feature-item {
            display: flex;
            align-items: flex-start;
            gap: 20px;
            text-align: left;
        }

        .icon-circle {
            width: 36px;
            height: 36px;
            background-color: #333333; /* ÀÌ¹ÌÁö¿Í µ¿ÀÏÇÑ Â£Àº »ö Ã¼Å©¹Ú½º */
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            margin-top: 2px;
        }

        .icon-circle svg {
            width: 18px;
            height: 18px;
            stroke: #ffffff;
            stroke-width: 2.5;
            fill: none;
            stroke-linecap: round;
            stroke-linejoin: round;
        }

        .feature-text h3 {
            font-size: 19px;
			font-family:'NanumSquareNeo';
            font-weight: 700;
            margin: 0 0 8px 0;
            color: #222222;
        }

        .feature-text p {
            font-size: 15px;
            color: #888888;
            margin: 0;
            line-height: 1.4;
        }


        /* ==========================================
           ¹ÝÀÀÇü ¹Ìµð¾î Äõ¸® (Tablet & Mobile)
           ========================================== */

        /* Tablet ¹× ÀÛÀº ÇØ»óµµ PC (1200px ÀÌÇÏ) */
        @media screen and (max-width: 1200px) {
            .container4 {
                width: 100%;
                padding: 50px 10px; /* ¿äÃ»ÇÏ½Å ÁÂ¿ì 10px ¿©¹é */
            }
            .wrapper4 {
                padding: 10px 0;
            }
            .top-row {
                gap: 40px;
            }
            .top-row .subtitle {
                width: 200px;
            }
            .bottom-section {
                gap: 50px;
            }
            
            /* ¼ýÀÚ°¡ °ãÄ¡Áö ¾Êµµ·Ï 1Â÷ÀûÀ¸·Î ÆùÆ® Å©±â Ãà¼Ò */
            .stat-num { font-size: 70px; }
            .stat-unit { font-size: 32px; }
        }

        /* Áß°£ »çÀÌÁî Tablet (992px ÀÌÇÏ) - ¼ýÀÚ °ãÄ§ ¹æÁö ¼¼¹Ð Á¶Á¤ */
        @media screen and (max-width: 992px) {
            .top-row .main-title h1 {
                font-size: 35px;
            }
            .stat-num { font-size: 55px; } /* ¼ýÀÚ¸¦ ´õ ÁÙ¿©¼­ 4¿­ À¯Áö ½Ã °ãÄ§ ¹æÁö */
            .stat-unit { font-size: 24px; }
            .stat-label { font-size: 14px; }
            
            .bottom-section {
                flex-direction: column; /* Á¼Àº ÅÂºí¸´ºÎÅÍ´Â ÀÌ¹ÌÁö¿Í ÅØ½ºÆ®¸¦ À§¾Æ·¡·Î ¹èÄ¡ */
                align-items: flex-start; /* °¡¿îµ¥ Á¤·Ä ¹æÁö, ¹«Á¶°Ç ¿ÞÂÊ ±âÁØ */
            }
            .image-content {
                width: 100%;
            }
        }

        /* Mobile (768px ÀÌÇÏ) */
        @media screen and (max-width: 768px) {
            .wrapper4 {
                padding: 0px 0;
            }
            
            .top-row {
                flex-direction: column;
                gap: 24px;
                margin-bottom: 70px;
                align-items: flex-start;
            }

            .top-row .subtitle {
                width: 100%;
                padding-top: 0;
            }

            .top-row .main-title h1 {
                font-size: 29px;
                line-height: 1.3;
                margin-bottom: 20px;
            }

            .top-row .main-title p {
                font-size: 15px;
            }

            /* ¸ð¹ÙÀÏ¿¡¼­ 2¿­ ¹èÄ¡ ¿äÃ» ¹Ý¿µ */
            .stats-grid {
                grid-template-columns: repeat(2, 1fr); 
                row-gap: 50px;
                column-gap: 10px;
                margin-bottom: 70px;
                padding-bottom: 60px;
            }

            .stat-num-wrapper {
                margin-bottom: 8px;
            }

            /* 2¿­ÀÌ µÇ¸é¼­ °ø°£ÀÌ È®º¸µÇ¹Ç·Î ÆùÆ® Å©±â ´Ù½Ã »ìÂ¦ Å°¿ò */
            .stat-num { font-size: 60px; }
            .stat-unit { font-size: 28px; }

            .text-content h2 {
                font-size: 28px;
            }

            .text-content > p {
                font-size: 15px;
                margin-bottom: 35px;
            }

            .feature-item {
                gap: 16px;
            }
            
            .feature-text h3 {
                font-size: 17px;
            }
        }




        /* °¡·Î 100% wrapper7 */
        .wrapper7 { width: 100%; background-color: #fff; padding: 80px 5px; }

        /* PC ±âÁØ 1200px container7 */
        .container7 {
            max-width: 1200px;
            margin: 0 auto;
            display: flex;
            align-items: flex-start; /* »ó´Ü Á¤·Ä */
            justify-content: space-between;
            gap: 60px;
        }


/* ¿ÞÂÊ ¿µ¿ª º£ÀÌ½º */
.content-left {
    width: 50%;
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    text-align: left; /* ±âº» ¿ÞÂÊ Á¤·Ä */
}

/* »ó´Ü ¿µ¹® ¼­ºêÅ¸ÀÌÆ² */
.sub-title {
    font-size: 18px;
    letter-spacing: 4px;
    color: #999;
    margin-bottom: 20px;
    font-weight: 500;
}

/* ¸ÞÀÎ Å¸ÀÌÆ² (±âÁ¸ 100px À¯ÁöÇÏµÇ ÁÙ°£°Ý Á¶Á¤) */
.content-left h2 {
    font-size: 80px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -3px;
    color: #000;
    margin-bottom: 40px;
}

/* ¼³¸í ¹®±¸ */
.desc {
    font-size: 22px;
    line-height: 1.6;
    color: #666;
    margin-bottom: 50px;
}

/* ÇÏ´Ü ¾ÆÀÌÄÜ ¸®½ºÆ® Á¤º¸ */
.info-list {
    list-style: none;
    padding: 0;
}

.info-item {
    display: flex;
    align-items: center;
    margin-bottom: 30px; /* °£°ÝÀ» »ìÂ¦ ³ÐÇû½À´Ï´Ù */
}

.info-icon {
    width: 60px;  /* ¿ø Å©±â¸¦ 55px -> 60px·Î È®´ë */
    height: 60px;
    background: #f8f9fa; /* ¹è°æÀ» Á» ´õ ¹à°í ±ò²ûÇÏ°Ô º¯°æ */
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
    transition: all 0.3s ease; /* ºÎµå·¯¿î È¿°ú Ãß°¡ */
}

/* ¾ÆÀÌÄÜ ½ºÅ¸ÀÏ Á¤ÀÇ */
.info-icon i { 
    font-size: 20px; /* ¾ÆÀÌÄÜ ÀÚÃ¼ Å©±â */
    color: #333;  /* ¿äÃ»ÇÏ½Å »ö»ó Àû¿ë */
}

.info-text span {
    display: block;
    font-size: 14px;
    color: #888;
    margin-bottom: 4px;
    font-weight: 500;
}

.info-text p {
    margin: 0; /* ±âº» ¸¶Áø Á¦°Å */
    font-size: 19px; /* ±ÛÀÚ Å©±â ¹Ì¼¼ Á¶Á¤ */
    font-weight: 700;
    color: #222;
    line-height: 1.2;
}

/* ¸¶¿ì½º È£¹ö ½Ã »ìÂ¦ ¶°¿À¸£´Â È¿°ú (¼±ÅÃ »çÇ×) */
.info-item:hover .info-icon {
    background: #5a6775;
}
.info-item:hover .info-icon i {
    color: #fff;
}

        /* ¿À¸¥ÂÊ Iframe ¿µ¿ª */
        .content-right {
            width: 50%;
            opacity: 0; /* ÃÊ±â »óÅÂ ¼û±è */
            transform: translateY(50px); /* ¾Æ·¡¿¡¼­ ´ë±â */
            transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
            transition-delay: 0.3s; /* ¼øÂ÷Àû µîÀåÀ» À§ÇÑ Áö¿¬ */
        }

        /* ½ºÅ©·Ñ ½Ã ³ªÅ¸³ª´Â Å¬·¡½º */
        .content-left.is-visible,
        .content-right.is-visible {
            opacity: 1;
            transform: translateY(0);
        }

        #form-iframe {
           width: 100%;
           border: none;
           /* height: 0px; /* ÃÊ±â°ª */
           overflow: hidden;
           transition: height 0.3s ease; /* ºÎµå·¯¿î ³ôÀÌ º¯È­ */
        }

        /* ¸ð´Þ ÆË¾÷ */
        #modal-overlay {
            display: none;
            position: fixed;
            top: 0; left: 0; width: 100%; height: 100%;
            background: rgba(0,0,0,0.5);
            backdrop-filter: blur(8px);
            z-index: 9999;
            justify-content: center;
            align-items: center;
        }

        .modal-box {
            background: #fff;
            width: 90%;
            max-width: 650px;
            height: 70vh;
            border-radius: 24px;
            padding: 40px;
            position: relative;
            display: flex;
            flex-direction: column;
            box-shadow: 0 30px 60px rgba(0,0,0,0.2);
        }

        .modal-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px; }
        .modal-close { cursor: pointer; font-size: 35px; border: none; background: none; color: #999; line-height: 1; }
        .modal-body { flex: 1; overflow-y: auto; padding-right: 10px; line-height: 1.7; color: #444; font-size: 15px; white-space: pre-wrap; }

        /* ¹ÝÀÀÇü */
        @media (max-width: 1200px) {
            .container7 { padding: 0 5px; }
            .content-left h2 { font-size: 65px; }
        }

        @media (max-width: 768px) {
            .wrapper7 { padding: 50px 5px; }
            .container7 { flex-direction: column; text-align: center; gap: 40px; margin-bottom: 0px;}
            .content-left, .content-right { width: 100%; }
    .content-left h2 { font-size: 40px; margin-bottom: 20px; }
    .sub-title { font-size: 14px; }
    .desc { font-size: 16px; margin-bottom: 30px; }
    .info-icon { width: 45px; height: 45px; }
    .info-text p { font-size: 15px; }
        }




        /* ÀüÃ¼ ³Êºñ ·¡ÆÛ */
        .wrapper5 {
            width: 100%;
            background-color: #ffffff;
            padding: 40px 0px 0px 0px;
        }

        /* Áß¾Ó Á¤·Ä ÄÁÅ×ÀÌ³Ê */
        .container5 {
            width: 1200px;
            margin: 0 auto;
            background-color: #ffffff;
        }

        /* Å¸ÀÌÆ² ¿µ¿ª ·¹ÀÌ¾Æ¿ô (Flex »ç¿ë) */
        .title-group {
            display: flex;
            align-items: flex-start; /* »ó´Ü Á¤·Ä */
            gap: 15px; /* ±ÛÀÚ¿Í ¹öÆ° »çÀÌ °£°Ý */
        }

        /* ¸ÞÀÎ Å¸ÀÌÆ²: ¿µ»óÁ¦ÀÛ */
        .main-title {
            font-size: 45px;
            font-weight: 900;
			font-family:'NanumSquareNeo';
            line-height: 1.1;
            letter-spacing: -1px;
            color: #000;
        }

        /* ¹öÆ° ÇüÅÂÀÇ ¼­ºê Å¸ÀÌÆ²: Cinema & Motion */
        .sub-button {
            display: inline-block;
            font-size: 18px;
            font-weight: 700;
			font-family:'NanumSquareNeo';
            color: #333333;
            background-color: #ffffff;
            border: 1px solid #333333;
            padding: 6px 16px;
            border-radius: 50px; /* Å×µÎ¸®°¡ ¾ÆÁÖ µÕ±Ù ÇüÅÂ */
            letter-spacing: 0.05em;
            white-space: nowrap; /* ÁÙ¹Ù²Þ ¹æÁö */
            margin-top: 8px; /* ¸ÞÀÎ ±ÛÀÚ ³ôÀÌ¿Í ¸ÂÃß±â À§ÇÑ ¹Ì¼¼ Á¶Á¤ */
        }

        /* ¹ÝÀÀÇü: ÅÂºí¸´ ¹× ¸ð¹ÙÀÏ */
        @media (max-width: 1220px) {
            .container5 {
                width: 100%;
                padding-left: 10px;
                padding-right: 10px;
            }

            .wrapper5 {
                padding: 20px 0px 0px 0px;
            }

            .title-group {
                gap: 8px; /* ¸ð¹ÙÀÏ¿¡¼­ °£°Ý Ãà¼Ò */
            }

            /* ¸ð¹ÙÀÏ¿¡¼­ Å¸ÀÌÆ² Å©±â Ãà¼Ò */
            .main-title {
                font-size: 32px;
            }

            /* ¸ð¹ÙÀÏ¿¡¼­ ¹öÆ° Å©±â ¹× ÆùÆ® Ãà¼Ò */
            .sub-button {
                font-size: 13px;
                padding: 4px 10px;
                margin-top: 5px;
            }
        }