/* 푸터 무너짐 */
@media (max-width: 1900px) {
    .com-info-a {
        flex-direction: column;
        gap: 20px;
    }
}

/* 대형 데스크톱 (1400px 이상) */
@media (max-width: 1400px) {

    /* 메인 */
    .vlt-service-box {
        max-height: 400px !important;
    }

    /* company */
    #bo_v {
        max-width: 1140px;
        margin: 0 auto;
    }

    /* design-service */
    .vlt-particle.animate__animated.animate__fadeInUp {
        position: static !important;
        padding-bottom: 40px;
    }

    /* 푸터 */
    .footer-row {
        width: 100%;
        gap: 20px;
    }
}

/* 대형 데스크톱 (1200px 이상) */
@media (max-width: 1199px) {

    /* 슬라이드 애니메이션 비활성화 */
    .tp-caption,
    .tp-caption.tp-resizeme,
    .tp-caption.tp-resizeme img,
    .tp-caption.tp-resizeme.slide-s,
    .rev_slider .tp-caption,
    #slide-1-layer-1,
    #slide-1-layer-2,
    #slide-2-layer-2,
    #slide-3-layer-2,
    #slide-4-layer-2 {
        animation: none !important;
        transform: none !important;
        opacity: 1 !important;
        transition: none !important;
        -webkit-animation: none !important;
        -moz-animation: none !important;
        -o-animation: none !important;
    }

    /* 헤더 */
    .vlt-navbar-inner {
        gap: 20px !important;
    }

    .vlt-navbar-logo img {
        height: 32px !important;
    }

    .vlt-nav--default .sf-menu>li {
        padding: 0 10px;
    }


    /* 메인 */
    .vlt-service-box {
        max-height: 24vh !important;
    }

    .main-company-section {
        padding: 14vh 0;
    }

    .tp-caption.tp-resizeme img {
        width: 350px !important;
    }

    .tp-caption.tp-resizeme.slide-s {
        font-size: 20px !important;
    }

    .vlt-service-box__title {
        font-size: 1.6rem;
    }

    .vlt-section-title--style-1 h2 {
        font-size: 1.8rem;
    }

    /* 푸터 */
    /* #ft 요소 반응형 처리 */
    #ft {
        min-width: auto;
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .footer-row {
        flex-direction: column;
        align-items: center;
    }

    .vlt-footer .text-left {
        text-align: center !important;
    }

    .footer-menu {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
        justify-content: center;
    }
}

/* 중형 데스크톱 (992px 이하) */
@media (max-width: 991px) {

    /* 메인 */
    .main-contents-logo {
        width: 200px;
    }

    .vlt-section-title--style-1 h2 {
        font-size: 24px;
    }

    .vlt-service-box {
        max-height: 20vh !important;
    }

    .vlt-service-box__title {
        font-size: 22px;
    }

    .tp-caption.tp-resizeme img {
        width: 280px !important;
        height: 70px !important;
    }

    .tp-caption.tp-resizeme.slide-s {
        min-width: 500px !important;
        word-break: keep-all;
    }

    /* 공통 */
    .vlt-page-title__title {
        font-size: 52px;
    }

    #bo_v {
        width: 90% !important;
    }

    /* company */
    .company-support-wrap h5 {
        font-size: 20px;
    }

    .introduce-text {
        padding-bottom: 40px;
    }

    .introduce-text p {
        font-size: 1rem !important;
    }

    /* ip products */
    .subpage-slogan h3 {
        font-size: 18px;
    }

    .category-btn {
        font-size: 20px !important;
    }

    .product-table {
        overflow-x: scroll;
    }

    .product-table td {
        font-size: 1rem;
    }

    /* platform solutions */
    .tab-buttons {}

    .solution_part {
        width: 100%;
    }

    .solution-hover-container {
        display: none;
    }

    .contents-main {
        font-size: 1.3rem;
    }

    .contents-box p {
        font-size: 1rem;
    }

    /* design service */
    .vlt-animated-block h2 {
        font-size: 32px !important;
    }

    .col-md-6 {
        max-width: 100%;
        flex: 100%;
    }

    .content-text p {
        word-break: keep-all;
    }

    .vlt-simple-image {
        padding-bottom: 40px;
    }

    /* 서비스 박스 호버 효과 비활성화 */
    .vlt-service-box:hover {
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
    }
    .vlt-service-box:hover img {
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
    }
    .vlt-service-box:hover .vlt-service-box__content {
        background-color: transparent !important;
    }
    .vlt-service-box:hover .vlt-service-box__icon i {
        -webkit-animation: none !important;
        animation: none !important;
    }

}

/* 태블릿 (768px 이하) */
@media (max-width: 767px) {
    .container {
        padding: 0 !important;
    }

    /* 메인 */
    .index-row {
        flex-direction: column;
    }

    .main-block-contents {
        width: 100%;
    }

    /* company */
    .introduce-title,
    .business-model-title,
    .support-title,
    .subpage-title {
        font-size: 1.8rem !important;
    }

    .solution_part_title h3 {
        font-size: 1.4rem !important;
    }

    .introduce-slogan h3,
    .business-model-slogan h3,
    .support-slogan h3,
    .subpage-slogan h3,
    .solution_part_title_box p {
        font-size: 1.2rem !important;
    }

    .company-content-box {
        padding: 0 !important;
    }

    .business-model-image {
        height: 100% !important;
    }

    /* IP Products */
    .category-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .product-table td {
        font-size: 0.8rem !important;
    }

    /* platform solution */
    .contents-main {
        font-size: 1rem !important;
    }

    /* career */
    .career-slogan {
        background-size: cover !important;
    }

    .career-slogan {
        background-size: cover !important;
    }

    /* career table responsive */
    .table-responsive {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .career-table {
        min-width: 800px;
        width: 100%;
    }

}

/* 소형 모바일 (480px 이하) */
@media (max-width: 480px) {
    .container {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    .vlt-page-title__title {
        font-size: 40px !important;
    }

    /* 메인 */
    .tp-caption.tp-resizeme img {
        width: 200px !important;
    }

    .tp-caption.tp-resizeme.slide-s {
        font-size: 16px !important;
        min-width: 340px !important;
    }

    .row {
        width: 100% !important;
        margin: 0 auto !important;
    }

    .main-contents-logo {
        width: 160px !important;
    }

    .vlt-animated-block h2 {
        font-size: 20px !important;
    }

    .vlt-gap-200 {
        height: 100px !important;
    }

    .vlt-gap-80 {
        height: 40px !important;
    }

    .vlt-gap-30--sm {
        height: 10px !important;
    }

    .main-company-title {
        width: 180px !important;
    }

    .main-company-sub {
        font-size: 1rem !important;
        padding: 0 15px !important;
        word-break: keep-all;
    }

    .introduce-title,
    .business-model-title,
    .support-title,
    .subpage-title {
        font-size: 1.6rem !important;
    }

    .solution_part_title h3 {
        font-size: 1.2rem !important;
    }

    .introduce-slogan h3,
    .business-model-slogan h3,
    .support-slogan h3,
    .subpage-slogan h3,
    .solution_part_title_box p {
        font-size: 1rem !important;
    }

    /* IP Products */
    .category-grid {
        gap: 10px !important;
    }

    .category-btn {
        font-size: 16px !important;
    }

    .btn.btn-outline-info {
        font-size: 0.8rem !important;
    }

    .write-btn {
        padding: 8px 12px !important;
    }

    .product-table th,
    .product-table td {
        padding: 10px !important;
        font-size: 0.88rem !important;
    }


    /* platform solution */
    .contents_01 {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .contents_02,
    .contents_03,
    .contents_04 {
        gap: 10px !important;
    }

    .contents_03 {
        flex-direction: column !important;
        gap: 80px !important;
    }

    .tab-btn {
        padding: 8px 12px !important;
    }

    .tab-buttons {
        padding-bottom: 40px !important;
    }

    /* design service */
    .vlt-simple-image {
        padding-bottom: 0 !important;
    }

    .vlt-gap-60--sm {
        height: 0 !important;
    }

    .content-text span,
    .content-text p {
        font-size: 16px !important;
    }

    .col-12 {
        padding: 0 0 40px 0 !important;
    }

    .career-slogan {
        padding: 40px !important;
    }

    .career-table {
        min-width: 600px;
        font-size: 14px;
    }

    .career-table th,
    .career-table td {
        padding: 8px 4px;
        white-space: nowrap;
    }

    .career-table .td_subject {
        min-width: 200px;
        white-space: normal;
    }
}