#container_title{display: none !important;}

.sub_0101{
    background:#fff;
}

.greeting_inner{
    width:1500px;
    max-width:92%;
    margin:0 auto;
}

.greeting_visual{
    position:relative;
    height:520px;
    overflow:hidden;
    background:var(--dark);
}

.greeting_visual img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.greeting_visual_dim{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(16,19,23,.78), rgba(16,19,23,.28));
}

.greeting_visual_txt{
    position:absolute;
    left:50%;
    bottom:90px;
    transform:translateX(-50%);
    width:1500px;
    max-width:92%;
    color:#fff;
}

.greeting_visual_txt p,
.greeting_label{
    margin-bottom:24px;
    color:var(--point);
    font-size:16px;
    font-weight:800;
    letter-spacing:.2em;
}

.greeting_visual_txt h2{
    font-size: 48px;
    font-weight:800;
    line-height:1.3;
    letter-spacing:-0.02em;
}

.greeting_sec{
    padding:130px 0;
}

.greeting_inner{
    display:grid;
    grid-template-columns:.95fr 1.05fr;
    gap:90px;
    align-items:center;
}

.greeting_img{
    overflow:hidden;
    border-radius:4px;
    box-shadow:0 30px 70px rgba(16,19,23,.13);
}

.greeting_img img{
    width:100%;
    object-fit:cover;
    display:block;
}

.greeting_txt h3{
    color:var(--dark);
    font-size:44px;
    font-weight:800;
    line-height:1.3;
    letter-spacing:-0.02em;
}

.greeting_cont{
    margin-top:38px;
}

.greeting_cont p{
    color:var(--text2);
    font-size:18px;
    line-height:1.8;
    letter-spacing:-0.02em;
    word-break:keep-all;
}

.greeting_cont p + p{
    margin-top:24px;
}

.greeting_sign{
    margin-top:48px;
    padding-top:28px;
    border-top:1px solid var(--line);
}

.greeting_sign span{
    color:var(--text2);
    font-size:16px;
}

.greeting_sign strong{
    display:block;
    margin-top:8px;
    color:var(--dark);
    font-size:30px;
    font-weight:800;
}

.greeting_value_sec{
    padding:120px 0;
    background:var(--bg2);
}

.greeting_value_sec .greeting_inner{
    display:block;
}

.value_bg_img{
    height:480px;
    overflow:hidden;
    border-radius:28px;
}

.value_bg_img img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
    object-position: center;
}

.greeting_value_list{
    display:grid;
    grid-template-columns:repeat(3, 1fr);
    gap:24px;
    margin-top:-70px;
    position:relative;
    z-index:2;
    padding:0 60px;
}

.greeting_value_list li{
    padding:44px 36px;
    border-radius:22px;
    background:#fff;
    border:1px solid var(--line);
    box-shadow:0 22px 54px rgba(16,19,23,.08);
}

.greeting_value_list span{
    color:var(--main2);
    font-size:15px;
    font-weight:900;
}

.greeting_value_list h4{
    margin-top:18px;
    color:var(--dark);
    font-size:25px;
    font-weight:900;
}

.greeting_value_list p{
    margin-top:14px;
    color:var(--text2);
    font-size:17px;
    line-height:1.7;
}

@media(max-width:900px){
    .greeting_visual{
        height:420px;
    }

    .greeting_visual_txt h2{
        font-size:38px;
    }

    .greeting_inner{
        grid-template-columns:1fr;
        gap:50px;
    }

    .greeting_sec{
        padding:90px 0;
    }

    .greeting_txt h3{
        font-size:34px;
    }

    .greeting_value_list{
        grid-template-columns:1fr;
        margin-top:24px;
        padding:0;
    }
}

@media(max-width:600px){
    .greeting_visual{
        height:360px;
    }

    .greeting_visual_txt{
        bottom:60px;
    }

    .greeting_visual_txt h2{
        font-size:26px;
    }

    .greeting_visual_txt h2 br,
    .greeting_txt h3 br{
        display:none;
    }

    .greeting_sec,
    .greeting_value_sec{
        padding:70px 0;
    }

    .greeting_txt h3{
        font-size:24px;
    }

    .greeting_cont p{
        font-size:16px;
    }

    .value_bg_img{
        height:260px;
        border-radius:20px;
    }
}



.sub_0102{
    background:#fff;
}

.location_inner{
    width:1500px;
    max-width:92%;
    margin:0 auto;
}

.location_sec{
    padding:120px 0;
    background:var(--bg);
}

.location_head{
    margin-bottom:54px;
}

.location_label{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:30px;
    color:var(--main2);
    font-size:17px;
    font-weight:900;
    letter-spacing:.18em;
}

.location_label span{
    color:var(--text);
    font-size:17px;
    font-weight:800;
}

.location_label::after{
    content:'';
    width:46px;
    height:1px;
    background:var(--metal);
}

.location_head h2{
    color:var(--dark);
    font-size:48px;
    font-weight:800;
    line-height:1.3;
    letter-spacing:-0.02em;
}

.location_head > p:not(.location_label){
    margin-top:28px;
    color:var(--text2);
    font-size:19px;
    line-height:1.7;
    letter-spacing:-0.02em;
}

.location_info_grid{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:18px;
    margin-bottom:34px;
}

.location_info_card{
    min-height:190px;
    padding:32px 28px;
    border-radius:24px;
    background:#fff;
    border:1px solid var(--line);
    box-shadow:0 20px 50px rgba(16,19,23,.05);
}

.location_info_card span{
    width:48px;
    height:48px;
    margin-bottom:22px;
    border-radius:14px;
    background:linear-gradient(135deg, var(--main2), var(--main));
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
}

.location_info_card strong{
    display:block;
    margin-bottom:12px;
    color:var(--main2);
    font-size:14px;
    font-weight:900;
    letter-spacing:.14em;
}

.location_info_card p{
    color:var(--text);
    font-size:17px;
    font-weight:700;
    line-height:1.65;
    letter-spacing:-0.02em;
    word-break:keep-all;
}

.location_map_box{
    overflow:hidden;
    border-radius:28px;
    background:#fff;
    border:1px solid var(--line);
    box-shadow:0 26px 70px rgba(16,19,23,.08);
}

/* 카카오맵 내부 여백/깨짐 방지 */
.location_map_box .root_daum_roughmap{
    width:100% !important;
}

.location_map_box .wrap_map{
    height:450px !important;
}

.root_daum_roughmap .cont .section.lst{display: none;}

@media(max-width:1200px){
    .location_info_grid{
        grid-template-columns:repeat(2, 1fr);
    }
}

@media(max-width:768px){
    .location_sec{
        padding:80px 0;
    }

    .location_head h2{
        font-size:26px;
    }

    .location_head h2 br{
        display:none;
    }

    .location_head > p:not(.location_label){
        font-size:16px;
    }

    .location_info_grid{
        grid-template-columns:1fr;
    }

    .location_info_card{
        min-height:auto;
        padding:26px 22px;
    }

    .location_map_box{
        border-radius:20px;
    }
}



.sub_0201{
    background:#fff;
}

.product_inner{
    width:1500px;
    max-width:92%;
    margin:0 auto;
}

.product_visual{
    position:relative;
    height:520px;
    overflow:hidden;
    background:var(--dark);
}

.product_visual img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.product_visual_dim{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(16,19,23,.78), rgba(16,19,23,.25));
}

.product_visual_txt{
    position:absolute;
    left:50%;
    bottom:90px;
    transform:translateX(-50%);
    width:1500px;
    max-width:92%;
    color:#fff;
}

.product_visual_txt p,
.sub_label{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:30px;
    color:var(--main2);
    font-size:17px;
    font-weight:900;
    letter-spacing:.18em;
}

.product_visual_txt p{
    color:var(--point);
}

.sub_label span{
    color:var(--text);
    font-size:17px;
    font-weight:800;
}

.sub_label::after{
    content:'';
    width:46px;
    height:1px;
    background:var(--metal);
}

.product_visual_txt h2{
    font-size:48px;
    font-weight:800;
    line-height:1.3;
    letter-spacing:-0.02em;
}

.product_intro_sec,
.product_structure_sec,
.product_feature_sec,
.product_use_sec,
.product_place_sec{
    padding:120px 0;
}

.product_structure_sec,
.product_place_sec{
    background:var(--bg);
}

.product_intro_grid,
.product_use_grid{
    display:grid;
    grid-template-columns:.95fr 1.05fr;
    gap:90px;
    align-items:center;
}

.product_intro_txt h3,
.section_title h3,
.product_use_txt h3{
    color:var(--dark);
    font-size:44px;
    font-weight:800;
    line-height:1.3;
    letter-spacing:-0.02em;
}

.product_intro_txt > p:not(.sub_label){
    margin-top:34px;
    color:var(--text2);
    font-size:18px;
    line-height:1.8;
    letter-spacing:-0.02em;
    word-break:keep-all;
}

.product_intro_img,
.structure_img,
.product_use_img{
    overflow:hidden;
    border-radius:28px;
    box-shadow:0 26px 70px rgba(16,19,23,.10);
}

.product_intro_img img,
.structure_img video{
    width:100%;
    height:520px;
    object-fit:cover;
    display:block;
}

.structure_img img,
.product_use_img img{
    display: block;
    width: 100%;
    max-width: 100%;
}

.section_title{
    margin-bottom:60px;
}

.structure_grid{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:70px;
    align-items:center;
}

.structure_list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.structure_list li{
    padding:28px;
    border-radius:22px;
    background:#fff;
    border:1px solid var(--line);
}

.structure_list strong{
    color:var(--main2);
    font-size:14px;
    font-weight:900;
}

.structure_list span{
    display:block;
    margin-top:14px;
    color:var(--dark);
    font-size:22px;
    font-weight:800;
}

.structure_list p{
    margin-top:12px;
    color:var(--text2);
    font-size:17px;
    line-height:1.7;
    word-break:keep-all;
}

.feature_cards{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:22px;
}

.feature_cards li{
    min-height:260px;
    padding:36px 30px;
    border-radius:24px;
    background:#fff;
    border:1px solid var(--line);
    box-shadow:0 20px 50px rgba(16,19,23,.05);
    transition:all .3s;
}

.feature_cards li:hover{
    transform:translateY(-8px);
    box-shadow:0 28px 66px rgba(15,61,115,.12);
}

.feature_cards span{
    color:var(--main2);
    font-size:15px;
    font-weight:900;
}

.feature_cards h4{
    margin-top:28px;
    color:var(--dark);
    font-size:25px;
    font-weight:800;
}

.feature_cards p{
    margin-top:18px;
    color:var(--text2);
    font-size:17px;
    line-height:1.7;
    word-break:keep-all;
}

.use_step{
    margin-top:42px;
}

.use_step li{
    padding:28px 0;
    border-bottom:1px solid var(--line);
}

.use_step li:first-child{
    border-top:1px solid var(--line);
}

.use_step strong{
    display:block;
    color:var(--main2);
    font-size:14px;
    font-weight:900;
    letter-spacing:.12em;
}

.use_step p{
    margin-top:10px;
    color:var(--text);
    font-size:20px;
    font-weight:700;
    line-height:1.6;
}

.place_chips{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
}

.place_chips li{
    padding:18px 26px;
    border-radius:999px;
    background:#fff;
    border:1px solid var(--line);
    color:var(--text);
    font-size:18px;
    font-weight:800;
    box-shadow:0 14px 36px rgba(16,19,23,.05);
}

@media(max-width:1000px){
    .product_intro_grid,
    .product_use_grid,
    .structure_grid{
        grid-template-columns:1fr;
        gap:50px;
    }

    .feature_cards{
        grid-template-columns:repeat(2, 1fr);
    }
}

@media(max-width:600px){
    .product_visual{
        height:360px;
    }

    .product_visual_txt{
        bottom:60px;
    }

    .product_visual_txt h2,
    .product_intro_txt h3,
    .section_title h3,
    .product_use_txt h3{
        font-size:26px;
    }

    .product_intro_sec,
    .product_structure_sec,
    .product_feature_sec,
    .product_use_sec,
    .product_place_sec{
        padding:70px 0;
    }

    .product_intro_img img,
    .structure_img video{
        height:300px;
    }

    .structure_list,
    .feature_cards{
        grid-template-columns:1fr;
    }

    .place_chips li{
        width:100%;
        text-align:center;
        font-size:16px;
    }

    .sub_label span{display: none;}
}



.product_manual_sec{
    padding:120px 0;
    background: var(--bg);
}

.manual_list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}

.manual_list li{
    position:relative;
    padding:28px 30px 28px 72px;
    border-radius:22px;
    background:#fff;
    border:1px solid var(--line);
    box-shadow:0 18px 45px rgba(16,19,23,.04);
}

.manual_list strong{
    position:absolute;
    top:29px;
    left:28px;
    color:var(--main2);
    font-size:17px;
    font-weight:900;
}

.manual_list p{
    color:var(--dark);
    font-size:18px;
    font-weight:800;
    line-height:1.6;
    word-break:keep-all;
}

.manual_list span{
    display:block;
    margin-top:10px;
    color:var(--text2);
    font-size:16px;
    line-height:1.6;
    word-break:keep-all;
}

@media(max-width:700px){
    .manual_list{
        grid-template-columns:1fr;
    }

    .manual_list li{
        padding:24px 22px 24px 58px;
    }

    .manual_list strong{
        top:24px;
        left:22px;
    }

    .manual_list p{
        font-size:16px;
    }
}