
@font-face {
    font-family: 'scdream';
    font-weight: 100;
    font-style: normal;
    src: url(/assets/fonts/scdream1.woff) format('woff');
}
@font-face {
    font-family: 'scdream';
    font-weight: 200;
    font-style: normal;
    src: url(/assets/fonts/scdream2.woff) format('woff');
}
@font-face {
    font-family: 'scdream';
    font-weight: 300;
    font-style: normal;
    src: url(/assets/fonts/scdream3.woff) format('woff');
}
@font-face {
    font-family: 'scdream';
    font-weight: 400;
    font-style: normal;
    src: url(/assets/fonts/scdream4.woff) format('woff');
}
@font-face {
    font-family: 'scdream';
    font-weight: 500;
    font-style: normal;
    src: url(/assets/fonts/scdream5.woff) format('woff');
}
@font-face {
    font-family: 'scdream';
    font-weight: 600;
    font-style: normal;
    src: url(/assets/fonts/scdream6.woff) format('woff');
}
@font-face {
    font-family: 'scdream';
    font-weight: 700;
    font-style: normal;
    src: url(/assets/fonts/scdream7.woff) format('woff');
}
@font-face {
    font-family: 'scdream';
    font-weight: 800;
    font-style: normal;
    src: url(/assets/fonts/scdream8.woff) format('woff');
}
@font-face {
    font-family: 'scdream';
    font-weight: 900;
    font-style: normal;
    src: url(/assets/fonts/scdream9.woff) format('woff');
}

/* Fonts */
:root {
  --default-font: "scdream", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --heading-font: "scdream";
  --nav-font: "scdream",  sans-serif;
}

:root {
  --background-color: #ffffff; /* Background color for the entire website, including individual sections */
  --default-color: #4a4b64; /* Default color used for the majority of the text content across the entire website */
  --heading-color: #242859; /* Color for headings, subheadings and title throughout the website */
  --accent-color: #0f51e0;
  --point-color: #c51e08;
  --surface-color: #ffffff; /* The surface color is used as a background of boxed elements within sections, such as cards, icon boxes, or other elements that require a visual separation from the global background. */
  --contrast-color: #ffffff; /* Contrast color for text, ensuring readability against backgrounds of accent, heading, or default colors. */
}

:root {
  --nav-color: #4a4b64;  /* The default color of the main navmenu links */
  --nav-hover-color: #0f51e0; /* Applied to main navmenu links when they are hovered over or active */
  --nav-mobile-background-color: #ffffff; /* Used as the background color for mobile navigation menu */
  --nav-dropdown-background-color: #ffffff; /* Used as the background color for dropdown items that appear when hovering over primary navigation items */
  --nav-dropdown-color: #4a4b64; /* Used for navigation links of the dropdown items in the navigation menu. */
  --nav-dropdown-hover-color: rgb(15, 81, 224); /* Similar to --nav-hover-color, this color is applied to dropdown navigation links when they are hovered over. */
}


/* Smooth scroll */
:root {
  scroll-behavior: smooth;
}

/*--------------------------------------------------------------
# General Styling & Shared Classes
--------------------------------------------------------------*/
body {
  color: var(--default-color);
  background-color: var(--background-color);
  font-family: var(--default-font);
}

a {
  color: var(--accent-color);
  text-decoration: none;
  transition: 0.3s;
}

a:hover {
  color: color-mix(in srgb, var(--accent-color), transparent 25%);
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  color: var(--heading-color);
  font-family: var(--heading-font);
}


/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/




/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
/* .hero {
  padding-top: 140px;
  background: linear-gradient(to bottom, rgba(228, 243, 255, 1), rgba(233, 246, 255, 0.2));
  position: relative;
  overflow: hidden;
  padding-bottom: 80px;
  height:780px;
} */

/*
 .hero-section {
      height: 100vh;
      display: flex;
      align-items: center;
  }

  .btn-primary-custom {
      background-color: #2563EB;
      color: white;
      padding: 0.75rem 2rem;
      border-radius: 9999px;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
      transition: background-color 0.3s;
      border: none;
  }

  .btn-primary-custom:hover {
      background-color: #1D4ED8;
  }

  .btn-outline-custom {
      border: 2px solid #2563EB;
      color: #2563EB;
      padding: 0.75rem 2rem;
      border-radius: 9999px;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
      transition: background-color 0.3s, color 0.3s;
  }

  .btn-outline-custom:hover {
      background-color: #EFF6FF;
      color: #1D4ED8;
  } */

  .heroSwiper{height:100vh;}
  .carousel-item{height:100vh;}
  .heroSwiper .ca-item1{
    /* background: linear-gradient(to bottom, rgba(228, 243, 255, 1), rgba(233, 246, 255, 0.2)); */
    background-image: url('/assets/simg/hero1_3.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    display: flex; justify-content: center; align-items: center;
  }
   .heroSwiper .ca-item1-area{width:1440px; display: flex; flex-direction: row; justify-content: space-between; margin-top:130px;}
   .heroSwiper .ca-item1-area .carousel-text{ padding: 50px 0 0 0px;}
   .heroSwiper .ca-item1-area .carousel-text div{display: flex; flex-direction: row; justify-content: flex-start; align-items: end;}
   .heroSwiper .ca-item1-area .carousel-text h5{font-size: 4.8rem; font-weight: 700; line-height: 4rem; color: #000; margin-right:20px; }
   .heroSwiper .ca-item1-area .carousel-text h5 bold{font-size: 4.8rem; font-weight: 700; line-height: 4rem; color: #7CB229; }
   .heroSwiper .ca-item1-area .carousel-text h5 strong{font-size: 4.8rem; font-weight: 700; line-height: 4rem; color: var(--accent-color);; }
   .heroSwiper .ca-item1-area .carousel-text h6{font-size: 4.8rem; font-weight: 100; color: #000; letter-spacing: -0.2rem;  margin-bottom:40px;}
   .heroSwiper .ca-item1-area .carousel-text h7{font-size: 1.3rem;
    font-weight: 200;
    color: #000;
    padding-bottom: -50px;
    position: relative;
    bottom: -35px;
    left: 20px;}
/*--------------------------------------------------------------
# About Section
--------------------------------------------------------------*/

.about .section-intro h2 {
  font-size: 2.6rem;
  line-height: 1.25;
  margin-bottom: 0.2rem;
  font-weight: 600;
  color: var(--heading-color);
}


.about .section-intro h3 {
  font-size: 2.4rem;
  line-height: 1.25;
  margin-bottom: 1.5rem;
  font-weight: 200;
  color: var(--heading-color);
}

.about .section-intro .intro-text {
  font-size: 1rem;
  line-height: 1.7;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
  margin: 0 0 1.5rem 0;
}








.services .services-grid .featured-service-card .feature-highlights {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 2.5rem;
  align-items: center;
}

.services .services-grid .featured-service-card .feature-highlights .highlight-item {
  display: inherit;
  align-items: center;
  gap: 0.75rem;
  width: 360px;
}

.services .services-grid .featured-service-card h3 {
  font-size: 1.75rem;
  font-weight: 600;
  margin-top: 2rem;
  margin-bottom: 6rem;
  color: var(--heading-color);
}



/*컨택*/
.contact .contact-info-panel{
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
}

.contact .contact-form-wrapper{
  border-top-right-radius: 20px;
  border-bottom-right-radius: 20px;
}


.hero-actions a.btn-primary{
  background-color: rgba(15, 81, 224, 0.2) !important; /* 투명한 흰색 배경 */
  backdrop-filter: blur(10px) !important; /* 배경을 흐리게 만듦 */
  border-radius: 15px; /* 모서리 둥글게 */
  padding: 20px;
  border: 1px solid rgba(15, 81, 224, 0.6) !important; /* 연한 테두리 */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1) !important; /* 그림자 효과 */
}
.hero-actions a img{
  width: 36px;  height: auto;
}


.glass-button {
  padding: 15px 35px;
  background: rgba(15, 81, 224, 0.15);
  border: 1px solid rgba(15, 81, 224, 0.2);
  border-radius: 10px;
  color: white;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  backdrop-filter: blur(10px);
  box-shadow:
      0 8px 32px rgba(31, 38, 135, 0.37),
      inset 0 1px 0 rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease;
  text-decoration: none;
  display: inline-block;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.glass-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(
      90deg,
      transparent,
      rgba(255, 255, 255, 0.2),
      transparent
  );
  transition: left 0.5s;
}

.glass-button:hover {
  /* background: rgba(255, 255, 255, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.3); */
  box-shadow:
      0 15px 45px rgba(31, 38, 135, 0.4),
      inset 0 1px 0 rgba(255, 255, 255, 0.2);
  transform: translateY(-2px);
}

.glass-button:hover::before {
  left: 100%;
}

.glass-button:active {
  transform: translateY(0);
  box-shadow:
      0 5px 20px rgba(31, 38, 135, 0.3),
      inset 0 1px 0 rgba(255, 255, 255, 0.1);
}



.glass-button-colored {
  background: rgba(15, 81, 224, 1);
  border: 1px solid rgba(15, 81, 224, 1);
  color: white;
  display: flex;
  align-items: center;
}

.glass-button-colored:hover {
  background: rgba(31, 96, 238, 0.9);
  border: 1px solid rgba(15, 81, 224, 0.4);
  color:#fff;
}
.glass-button-colored img{margin-left: 5px;}


.banner-section{border:1px solid #ddd; border-radius: 10px; margin:120px 0 0px 0; padding:40px; }
.banner-section .banner-area{display: flex; justify-content: space-around; align-items: center;}

.plan-icon-box{padding: 10px 50px;}
.plan-icon-box .icon-box{display: flex; align-items: center; justify-content: space-around;}



.footer {
  background: var(--background-color);
  color: var(--default-color);
  font-size: 15px;
  padding: 50px 0;
  border-top: 1px solid color-mix(in srgb, var(--default-color), transparent 92%);
}

.footer .footer-main {
  margin-bottom: 80px;
}



.pricing .pricing-card .popular-tag {
  position: absolute;
  top: 20px;
  right: -35px;
  background-color: var(--point-color);
  color: var(--contrast-color);
  font-size: 13px;
  font-weight: 600;
  padding: 8px 40px;
  transform: rotate(45deg);
}


.services .services-tabs .tab-service-card {
  background: var(--surface-color);
  border-radius: 16px;
  padding: 2.5rem 2rem;
  text-align: center;
  height: 100%;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 92%);
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px color-mix(in srgb, var(--default-color), transparent 95%);
}

.services .services-tabs .tab-service-card img{width:100%; height:auto; border:1px solid #ddd; margin-bottom:20px;}

.video-card {
            position: relative;
            border-radius: 15px;
            overflow: hidden;
            background: #fff;
            box-shadow: 0 10px 30px rgba(0,0,0,0.1);
            transition: all 0.3s ease;
            cursor: pointer;
            height: 300px;
        }

        .video-card:hover {
            transform: translateY(-10px);
            box-shadow: 0 20px 40px rgba(0,0,0,0.2);
        }

        .video-thumbnail {
            width: 100%;
            height: 240px;
            object-fit: cover;
            transition: transform 0.3s ease;
        }

        .video-card:hover .video-thumbnail {
            transform: scale(1.05);
        }

        .play-overlay {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            background: rgba(0,0,0,0.7);
            border-radius: 50%;
            width: 60px;
            height: 60px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            font-size: 36px;
            transition: all 0.3s ease;
            z-index: 2;
        }

        .video-card:hover .play-overlay {
            background: rgba(255,64,129,0.9);
            transform: translate(-50%, -50%) scale(1.1);
        }

        .video-info {
            padding: 15px;
            text-align: center;
        }

        h5.video-title {
            font-size: 16px;
            font-weight: 500;
            color: #333;
            margin: 0;
            font-family: 'scdream' !important;
        }

        .video-duration {
            position: absolute;
            bottom: 90px;
            right: 10px;
            background: rgba(0,0,0,0.8);
            color: white;
            padding: 2px 8px;
            border-radius: 4px;
            font-size: 12px;
        }

        /* Modal Styles */
        .video-modal .modal-dialog {
            max-width: 80vw;
        }

        .video-modal .modal-content {
            background: transparent;
            border: none;
        }

        .video-modal .modal-body {
            padding: 0;
            position: relative;
        }

        .video-modal video {
            width: 100%;
            height: auto;
            max-height: 80vh;
            border-radius: 10px;
        }

        .video-modal .btn-close {
            position: absolute;
            top: -40px;
            right: 0;
            background: white;
            border-radius: 50%;
            width: 35px;
            height: 35px;
            z-index: 1050;
        }

        /* Tab Navigation */
        .nav-pills .nav-link {
            border-radius: 25px;
            padding: 12px 30px;
            margin: 0 5px;
            font-weight: 600;
            transition: all 0.3s ease;
        }

        .nav-pills .nav-link.active {
            background: linear-gradient(45deg, #ff4081, #ff6ec7);
            color: white;
            box-shadow: 0 5px 15px rgba(255,64,129,0.3);
        }

        .nav-pills .nav-link:not(.active) {
            background: #f8f9fa;
            color: #6c757d;
        }

        .nav-pills .nav-link:not(.active):hover {
            background: #e9ecef;
            color: #495057;
        }

        /* Loading Animation */
        .loading-spinner {
            display: none;
            text-align: center;
            padding: 50px;
        }

        .spinner-border {
            color: #ff4081;
        }

        /* Coming Soon Styles */
        .coming-soon {
            text-align: center;
            padding: 100px 20px;
            color: #6c757d;
        }

        .coming-soon i {
            font-size: 4rem;
            margin-bottom: 20px;
            color: #dee2e6;
        }

        @media (max-width: 768px) {
            .video-card {
                height: 200px;
            }

            .video-thumbnail {
                height: 140px;
            }

            .video-modal .modal-dialog {
                max-width: 95vw;
            }
        }
/*
.video-player {
  display: none;
}
.tab-service-card video{width:100%;  margin-bottom: 20px;}


.modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  justify-content: center;
  align-items: center;
}
.modal-overlay-hero {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  justify-content: center;
  align-items: center;
}


.modal-content {
  position: relative;
  width: 60%;
  max-width: 900px;
  background-color: black;
  border-radius: 8px;
  overflow: hidden;
}


#popup-video {
  width: 100%;
  height: auto;
  display: block;
}


.close-button {
  position: absolute;
  top: 10px;
  right: 20px;
  font-size: 30px;
  color: white;
  cursor: pointer;
  z-index: 1001;
} */

.services .services-grid .featured-service-card .service-badge {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background: linear-gradient(135deg, var(--point-color), color-mix(in srgb, var(--point-color), #ff6b6b 20%));
  color: var(--contrast-color);
  padding: 8px 20px;
  border-radius: 20px;
  font-size: 0.85rem;
  font-weight: 500;
  box-shadow: 0 4px 15px color-mix(in srgb, var(--point-color), transparent 70%);
}

.service-row{display: flex;  flex-direction: row;  }
.service-row h4{padding: 5px 5px 5px 10px;}

.services .services-grid .service-card .service-icon {
  width: 56px;
  height: 56px;
  background: linear-gradient(135deg, color-mix(in srgb, var(--accent-color), transparent 85%), color-mix(in srgb, var(--accent-color), transparent 90%));
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.1rem;
  transition: transform 0.3s ease;
}


/*swiper*/
 /* .swiper {
    width: 100%;
    height: 100%;
  }

  .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #444;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .swiper-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .swiper {
    margin-left: auto;
    margin-right: auto;
  } */

  .swiper-button-prev, .swiper-button-next {
    border: 1px solid #a5c7e7;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    padding: 10px;
    background-color: rgba(179, 217, 250, 0.5);
  }

  .swiper-button-next:after, .swiper-button-prev:after {
    font-size: 24px;
    color: #fff;
  }

  .bannerswiper .swiper-slide{text-align: center;}

  .bannerswiper .swiper-wrapper{justify-content: space-around;}


  /*서브페이지*/

   .container_strat {
    height: 300px;
    /* background: url('/assets/simg/sub_visual1.png') center center no-repeat;
    background-size: cover; */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
   }
   #head h1.menu_title{font-size: 3rem; font-weight:600; margin-top:70px; text-align: center;}
   .login_section{margin:60px 0;}
   .login_section .card{border-radius: 10px; background-color: rgba(238, 238, 238, 0.2); border:1px solid #ddd;}
   .login_section .card .card-body .login_left{padding:20px 50px;}

  .subimg1{background: url('/assets/simg/sub_bg1.png') center center no-repeat; background-size: cover;}

  .bread-area{text-align: center;}
  .bread-area ol{margin:0;min-width: 200px;  display: flex;   flex-direction: row;  justify-content: center; }
  .breadcrumb-item+.breadcrumb-item::before {
        float: left;
        padding-right: var(--bs-breadcrumb-item-padding-x);
        color: var(--bs-breadcrumb-divider-color);
        content: var(--bs-breadcrumb-divider, "⟩");
   }



/*회사소개신규*/

._subVisual{
	width: 100%; height: 100vh; max-height: 1000px;
	display: flex; align-items: center; position: relative; overflow: hidden;
}
._subVisual .bg{
	position: absolute;
	left: 0; top: 0; width: 100%; height: 100%;
	filter: blur(10px); transform: scale(1.4);
}
._subVisual .bg div{
	width: 100%; height: 100%; background-size: cover; background-position: center;
}




._subVisual .wrap{position: relative;width: 100%;  text-align: center;}
._subVisual .wrap .cont h2{
	font-size: 75px; font-weight: 600; color: #000;
	margin-bottom: 20px; overflow: hidden; line-height: 1.2;
}
._subVisual .wrap .cont p{transform: translateY(110%); color: #000; font-size: 20px;}

.mais .s_cover .txt{ width: 100%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: center;
    z-index: 3; position: relative;
}
.mais .s_cover .txt h2{display: block; font-size: 70px; letter-spacing: -0.05em; line-height: calc(120 / 70); font-weight: 500; color: #fff;  }
.mais .s_cover .txt h3{display: block; font-size: 50px; letter-spacing: -0.05em; line-height: calc(120 / 70); font-weight: 500; color: #fff; }
.mais .s_cover .txt h6{display: block; font-size: 20px; letter-spacing: -0.05em; line-height: calc(120 / 70); font-weight: 500; color: rgba(255, 255, 255, 0.8); }

._tit h3{
    font-size: 50px; font-weight: 600;
    line-height: calc(70/50);
    letter-spacing: -0.05em;
}
.s_ico_card ._tit{margin-bottom: 70px; text-align: center; color:var(--accent-color)}
.s_ico_card ._tit h3{color:var(--accent-color); margin-bottom: 120px;}
.s_ico_card .cont {display: inline-block;   width: 100%;  height: 300px;}
.s_ico_card .cont ul{ display: flex; gap: 20px; margin-left: auto; width: 100%;}
.s_ico_card .cont ul li{position: relative; width: 100%; list-style: none;}
/* .s_ico_card .cont ul li::before {
    content:''; display: block; padding-bottom: 10px;
} */
.s_ico_card .cont ul li > div{
    position: absolute; left: 0; top: 0; width: 100%; height: 320px;
    /* background-color: #efefef; */
    background-color: rgba(220, 232, 255, 0.5);
    border-radius: 20px; display: flex; flex-direction: column; justify-content: space-between;
    padding: 30px; box-sizing: border-box;
}

.s_ico_card .cont ul li > div .mid{height:70px; text-align: center; margin-bottom: 20px;}
.s_ico_card .cont ul li > div .mid img{width:70px; height:auto;}



.s_ico_card .cont ul li > div em{
    color: #000; font-size: 20px; font-weight: 600; text-align: left; font-style: normal;
}

.s_ico_card .cont ul li > div .bottom ul{
    margin:0; padding:0; display: flex; flex-direction: column;
}
.s_ico_card .cont ul li > div .bottom ul li{
   color: #525252; font-size: 16px; font-weight: 400; list-style: disc; margin-left: 20px;
}




.s_card ._tit{margin: 0 auto; margin-bottom: 100px;}
.s_card .pin{margin-bottom: 80px; perspective: 300px;}
.s_card .pin.last{margin-bottom: 0;}

.s_card .pin .box{
    min-height: 400px;
    display: flex; flex-direction: column; justify-content: flex-end; position: relative;
    color: #fff; filter: brightness(1); padding: 70px; box-sizing: border-box;
    border-radius: 30px; overflow: hidden;
}
.s_card .pin .bg{
    position: absolute; left: 0; top: 0; z-index: -1;
    width: 100%; height: 100%; background-position: center; background-size: cover;
}
.s_card .num{
    font-size: 30px;
    display: flex; align-items: flex-end; gap: 2px;
}
.s_card .num p{color: #b2c5ee;}
.s_card .num p:nth-child(2){
   color:#fff;
}
.s_card h4{
    font-size: 50px; font-weight: 600; line-height: 1.3;
    margin-top: max(calc(30/50*1em),20px);
    letter-spacing: -0.05em;
    color:#fff;
}
.s_card .box > p{
    font-size: 20px; line-height: calc(32/20);
    margin-top: calc(30/20*1em);
    color: rgba(255,255,255,0.8);
    letter-spacing: 0em;
}
.s_card .box > p > b {font-weight: 600; color: #fff;}
.s_card .bottom{margin-top: calc(33/16*1em);}
.s_card .bottom p{margin-bottom: 10px;}
.s_card .bottom .category{
    display: flex; gap: 10px; flex-wrap: wrap;
}
.s_card .bottom .category div{
    background-color: rgba(255,255,255,0.2);
    color: rgba(255,255,255,0.7); border-radius: calc(9/16*1em); padding: calc(10/16*1em) calc(20/16*1em);
}

.mais .s_card{ padding: 250px 0; }

.mais .s_ico_card{ padding: 150px 0; background-color: rgba(239, 239, 239, 0.3); height:100vh;}

.mais .s_chart{ background-color: #273A9D; padding: 150px 0; }
.mais .s_chart{background-image: url('../simg/sub_img8.png'); background-size:auto; background-position: right bottom; background-repeat: no-repeat;}


.mais .s_chart ._tit .top{
    color: #ffffff; font-size: 30px; line-height: 1.3; margin-bottom: 20px; font-weight: 700;
    text-transform: uppercase; letter-spacing: 0rem;
}

.mais .s_chart ._tit h3{
    color: #ffffff; font-size: 60px;
    font-weight: 100;
    line-height: calc(70 / 50);
    letter-spacing: -0.05em;
}

.mais .s_chart ._tit .small{
    color: #ffffff; font-size: 20px;
    line-height: 1.5;
    margin-top: 1em;
    letter-spacing: -0.05em;
}


.s_more_btn{
    position: relative; overflow: hidden; padding-bottom: 0 !important;
}
.s_more_btn .bg{
    position: absolute; left: 0; top: 0; width: 100%; height: 100%;
    background-position: center; background-size: cover;
}
.s_more_btn .wrap{padding-top: 170px; padding-bottom: 180px;}
.s_more_btn .wrap h3{
    font-size: 72px; font-weight: 600; line-height: 1.3; color: #fff;
    margin-bottom: max(calc(50/72*1em),20px); letter-spacing: -0.05em; text-align: center; overflow: hidden;
}
.s_more_btn .wrap .btnBx{
    display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 30px;
    font-size: 1px;
}
.s_more_btn .wrap .btnBx a{
    display: flex; width: 186em; height: 107em; border-radius: 9em;
    transition: background-color 0.2s,border-color 0.2s;
    border: 1px solid #fff; box-sizing: border-box;
    flex-direction: column; justify-content: center; align-items: center; color: #fff;
    padding: 20em;
}
html.pc .s_more_btn .wrap .btnBx a:hover{
    background-color: rgba(15, 81, 224, 0.4); color:#fff; border-color: rgba(31, 96, 238, 0.9);
}

.s_more_btn .wrap .btnBx a > p{
    font-size: 18em; font-weight: 500; line-height: 1.3; margin-bottom: 0px;
}


/*snack*/

 .snack_container {
    /* height: 400px; */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding:10px 0;

   }
.sub_banner{display: flex; flex-direction: row; justify-content: space-between; align-items: center; padding: 100px 0 50px 0; width: 100%;}
.sub_banner .sub_banner_text{width: 40%;  padding-left:15%; padding-top: 80px;}
.sub_banner h2{font-size: 46px;  font-weight: 700;}

.sub_snack section.sub_menu{display: flex; flex-direction: row; justify-content: center; align-items: center; gap: 20px; margin-bottom: 50px; border-bottom:1px solid #ddd; padding:30px 0 0 0px !important;}
.sub_snack section.sub_menu ul{padding:0; margin:0; display: flex; flex-direction: row; gap: 20px;}
.sub_snack section.sub_menu ul li {list-style: none; font-size: 18px; font-weight: 500; padding-bottom: 10px; cursor: pointer; color:#555; }
.sub_snack section.sub_menu ul li a{ color:#808080; font-weight: 400; padding:0 30px;}
.sub_snack section.sub_menu ul li a.on, .sub_snack .sub_menu ul li a:hover{color: #000; font-weight: 600;}

.snack_container{width:100%; margin:0 auto; }
.snack_container .snack_wrap{display: grid;  grid-template-columns: repeat(4, 1fr);  gap: 20px; padding:0 3%;}
.snack_container .snack_wrap .snack_img{width:100%;}
 .snack_clip {
            width:100%;
            background: white;
            border-radius: 12px;
            overflow: hidden;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
            transition: transform 0.2s, box-shadow 0.2s;
            cursor: pointer;
        }

        .snack_clip:hover {
            transform: translateY(-4px);
            box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
        }

        /* 스낵 이미지 영역 */
        .snack_img {
            position: relative;
            width: 100%;
            padding-bottom: 56.25%; /* 16:9 비율 */
            background-color: #000;
            overflow: hidden;
        }

        .snack_img a {
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

        .snack_img img {
            width: 100%;
            height:238px; border-radius: 15px;
            object-fit: cover;
            position: absolute;
            top: 0;
            left: 0;
            transition: opacity 0.3s ease;
        }

        /* 미리보기 비디오 */
        .preview-video {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: 0;
            transition: opacity 0.3s ease;
        }

        /* Hover 시 썸네일 숨기고 비디오 표시 */
        .snack_clip:hover .snack_img img {
            opacity: 0;
        }

        .snack_clip:hover .preview-video {
            opacity: 1;
        }

        /* 재생 버튼 오버레이 */
        .play-overlay {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 60px;
            height: 60px;
            background: rgba(0, 0, 0, 0.6);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            pointer-events: none;
            transition: opacity 0.3s ease;
            z-index: 10;
        }

        .play-overlay svg {
            width: 24px;
            height: 24px;
            fill: white;
            margin-left: 3px;
        }

        .snack_clip:hover .play-overlay {
            opacity: 0;
        }

        /* 스낵 텍스트 */
        .snack_text {
            padding: 12px 16px;
        }

        .snack_desc {
            font-size: 0.9rem;
            font-weight: 400;
            color: #333;
            line-height: 1.4;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }

        .snack_clip:hover .snack_desc {
            color: #1a73e8;
        }

        /* 썸네일 없음 메시지 */
        .no-thumbnail {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: #e0e0e0;
            color: #666;
            font-size: 14px;
        }




      /* 비디오 플레이어 영역 */
       .view_snack .video-container {
            position: relative;
            width: 100%;
            background-color: #000;
        }

        .view_snack .video-player {
            width: 100%;
            max-height: calc(100vh - 100px);
            aspect-ratio: 16 / 9;
            background-color: #000;
        }

        .view_snack .video-player video,
        .view_snack .video-player iframe {
            width: 100%;
            height: 100%;
            display: block;
        }

        /* 컨텐츠 영역 */
        .view_snack .content-wrapper {
            max-width: 1280px;
            margin: 0 auto;
            padding: 20px;
        }

        /* 헤더 (뒤로가기) */
        .view_snack .header {
            position: sticky;
            top: 0;
            background-color: #0f0f0f;
            padding: 16px 20px;
            z-index: 100;
            border-bottom: 1px solid #272727;
        }

        .view_snack .back-button {
            display: inline-flex;
            align-items: center;
            color: #fff;
            text-decoration: none;
            font-size: 14px;
            padding: 8px 12px;
            border-radius: 8px;
            transition: background-color 0.2s;
        }

       .view_snack  .back-button:hover {
            background-color: #272727;
        }

       .view_snack  .back-button svg {
            width: 20px;
            height: 20px;
            margin-right: 8px;
        }

        /* 영상 정보 */
        .view_snack .video-info {
            padding: 20px 0;
            border-bottom: 1px solid #272727;
        }

        .view_snack .video-title {
            font-size: 20px;
            font-weight: 600;
            line-height: 1.4;
            margin-bottom: 12px;
        }

        .video-meta {
            display: flex;
            align-items: center;
            gap: 12px;
            font-size: 14px;
            color: #aaa;
            flex-wrap: wrap;
        }

        .meta-item {
            display: flex;
            align-items: center;
            gap: 4px;
        }

       .meta-item svg {
            width: 16px;
            height: 16px;
        }

        .category-badge {
            display: inline-flex;
            align-items: center;
            padding: 4px 12px;
            background-color: #272727;
            border-radius: 12px;
            font-size: 12px;
            font-weight: 500;
            color: #3ea6ff;
        }

        /* 설명 영역 */
       .view_snack  .video-description {
            padding: 20px 0;
            border-bottom: 1px solid #272727;
        }

        .view_snack .description-title {
            font-size: 14px;
            font-weight: 600;
            margin-bottom: 12px;
            color: #fff;
        }

        .view_snack .description-text {
            font-size: 14px;
            line-height: 1.6;
            color: #aaa;
            white-space: pre-wrap;
            word-wrap: break-word;
        }

        /* 관련 영상 */
       .view_snack  .related-videos {
            padding: 20px 0;
        }

        .view_snack .related-title {
            font-size: 18px;
            font-weight: 600;
            margin-bottom: 16px;
        }

        .view_snack .related-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
            gap: 16px;
        }

        .view_snack .related-item {
            display: flex;
            flex-direction: column;
            text-decoration: none;
            color: #fff;
            border-radius: 12px;
            overflow: hidden;
            transition: transform 0.2s;
            background-color: #1a1a1a;
        }

        .view_snack .related-item:hover {
            transform: scale(1.02);
        }

        .view_snack .related-thumbnail {
            position: relative;
            width: 100%;
            padding-bottom: 56.25%;
            background-color: #272727;
            overflow: hidden;
        }

        .view_snack .related-thumbnail img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .view_snack .related-info {
            padding: 12px;
        }


        .view_snack .related-meta {
            font-size: 12px;
            color: #aaa;
        }

        /* 로딩 스피너 */
       .view_snack .loading-spinner {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 48px;
            height: 48px;
            border: 4px solid #272727;
            border-top-color: #3ea6ff;
            border-radius: 50%;
            animation: spin 1s linear infinite;
        }

        @keyframes spin {
            to { transform: translate(-50%, -50%) rotate(360deg); }
        }

        /* 반응형 */
        @media (max-width: 768px) {
            .view_snack .video-player {
                max-height: 300px;
            }

            .view_snack .video-title {
                font-size: 16px;
            }

           .view_snack .related-grid {
                grid-template-columns: 1fr;
            }
        }

     .movie_container{padding:0px !important;}
     .movie_banner{display: flex; flex-direction: row; justify-content: center; align-items: center; padding: 120px 0 20px 0; width: 100%;}
     .movie_banner h2{font-weight: 600;  background-color: #000;  padding: 5px 40px;  color: #fff;  font-size: 1.8rem;  border-radius: 24px;}
     .view_snack{border-top: 1px solid #ddd; padding: 20px 15%;}
        @media (max-width: 1248px) {
             .view_snack{border-top: 1px solid #ddd; padding: 20px 5%;}
        }

        @media (max-width: 576px) {
              .view_snack{border-top: 1px solid #ddd; padding: 20px 2%;}
        }

     .view_snack .video-container{border-radius: 20px;}
     .view_snack .video-container .video-player{border-radius: 20px; padding:10px;}
     .movie_banner_text .video-meta{justify-content: center !important;}
     .movie-wrapper .movie-description{margin-top: 50px; display: flex;  flex-direction: column;}
     .movie-wrapper .movie-description h2{color:#000; font-size: 1.2rem; border-bottom: 1px solid #eee; padding:0 0 5px 0; margin-bottom: 10px; font-weight: 600;}
     .movie-wrapper .movie-description .description-text{color:var(--default-color); font-size: 0.9rem; line-height: 1.6; white-space: pre-wrap; word-wrap: break-word; padding:20px 40px; margin-bottom:50px;}

     .related-movie h2{color:#000; font-size: 1.2rem; border-bottom: 1px solid #eee; padding:0 0 5px 0; margin-bottom: 10px; font-weight: 600;}
     .related-movie .related-item-title {
            font-size: 0.8rem;
            font-weight: 400;
            line-height: 1.4;
            margin-bottom: 8px;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
            color:#fff;
        }

































@media (max-width: 768px) {

 .about .section-intro h2 {
     font-size: 2rem;
  }
.about .section-intro h3 {
    font-size: 1.6rem;
}

  .header .header-container {
      padding: 10px 0px 10px 0px;
  }

  .header .logo img {
    max-height: 24px;
  }

.header .btn-getstarted {
  display: none;
}

.ca-item1 .ca-item1-area .carousel-text{display: flex; flex-direction: column; justify-content: center; align-items: center;}
.ca-item1 .ca-item1-area .item-img{width: 100%;  padding: 0 10%;}
.ca-item1 .ca-item1-area .item-img img{width:100%; height:auto;}
.hero {
  padding: 0px 0 60px 0;
}

.heroSwiper .ca-item1 .ca-item1-area .carousel-text {
  padding: 0px;
}
.heroSwiper .ca-item1 .ca-item1-area .carousel-text h7 {
  font-size: 1.0rem;
  font-weight: 200;
  color: #000;
  padding-bottom: -50px;
  position: relative;
  bottom: 0px;
  left: 0px;
}
.heroSwiper .ca-item1 .ca-item1-area .carousel-text h5 {
  font-size: 2rem;
  margin-right: 10px;
  margin-bottom: 0;
  line-height: 2.4rem;
}
.heroSwiper .ca-item1 .ca-item1-area .carousel-text img{height:70px;}
.heroSwiper .ca-item1 .ca-item1-area .carousel-text h6 {
  font-size: 1.8rem;
  letter-spacing: 0rem;
  margin-bottom: 40px;
}
.hero-actions a img {
  width: 34px;
  height: 34px !important;
}
.carousel-item {
  height: 100vh;
}

.heroSwiper .ca-item1 .ca-item1-area {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-top: 30px;
}
.glass-button {
  padding: 10px 35px;
}

.ca-item2 img{width:100%; height:100vh; object-fit: cover;}

.about .section-intro .intro-text {
  color: color-mix(in srgb, var(--default-color), transparent 10%);
  margin: 0 0 1.5rem 0;
}

.section-title p {
  font-size: 1rem;
  color: color-mix(in srgb, var(--default-color), transparent 10%);

}
.pricing .plan-header p {
    font-size: 15px;
    color: color-mix(in srgb, var(--default-color), transparent 10%);
}
.pricing .plan-features ul li {
    color: color-mix(in srgb, var(--default-color), transparent 10%);
}

.services .services-tabs .nav-pills {
        flex-direction: row;
        width: 100%;
        max-width: 100%;
}
.services .services-tabs .nav-pills .nav-item {
        width: 33%;
 }
.services .services-tabs .tab-service-card {
    padding: 1.5rem 1rem;
}
.contact .contact-form-wrapper .modern-form .submit-btn {
    width: 100%;
}


















}
