
.p_top_1{padding-top:1rem;} .p_bottom_1{padding-bottom:1rem;}
.p_top_2{padding-top:2rem;} .p_bottom_2{padding-bottom:2rem;}
.p_top_3{padding-top:3rem;} .p_bottom_3{padding-bottom:3rem;}
.p_top_4{padding-top:4rem;} .p_bottom_4{padding-bottom:4rem;}
.p_top_6{padding-top:6rem;} .p_bottom_6{padding-bottom:6rem;}
.p_top_8{padding-top:8rem;} .p_bottom_8{padding-bottom:8rem;}



.hero_box {min-height:35vw; position:relative;}

.txt_letter {letter-spacing:2px;}

/*========== 교회비전 ==========*/
.txt_center {text-align: center;}
.fw_thin {font-weight: 300;}
.p_bar_2{padding:2rem;}

.sub_title {display: block; margin: 0 0 1.75rem; font-weight: 700; color: #6C99C8;}
.sub_title_light {color: #fff;} 
.sub_title_dark {color: #121212;}
.sub_title_gray {color: rgba(0,0,0,0.8); letter-spacing: 0.24em;}
.sub_title_tight {margin-bottom: 0.75rem;}

.sec_title {margin: 0; line-height: 1.42; font-weight: 700; letter-spacing: -0.03em; color: #121212;}
.sec_title_light { color: #fff; line-height: 1.3; font-weight: 900;}

.txt_body {margin: 0; line-height: 2; font-weight: 400; color: rgba(0,0,0,0.8);}
.txt_body_light {color: rgba(255,255,255,0.85);}

.img_box img {display: block; width: 100%;  object-fit: cover;}

.vision_hero {position: relative; min-height: 44rem; display: grid; align-content: center; background-size: cover; background-position: center; background-repeat: no-repeat;}
.vision_hero > div {position: relative; z-index: 1; width: 100%; max-width: 1440px; margin-left: auto; margin-right: auto;}

.mission_list {display: flex; flex-direction: column;}
.mission_item {display: grid; grid-template-columns: 2rem 1fr; gap: 1.25rem; padding: 1.5rem 0.75rem; border-top: 1px solid rgba(18,18,18,0.12); transition: background 0.35s ease;}
.mission_item:last-child {border-bottom: 1px solid rgba(18,18,18,0.12);}
.mission_item:hover {background: #f3f5f8;}
.mission_item p {margin: 0; line-height: 1.7; font-weight: 600; letter-spacing: -0.02em; color: #121212;}
.mission_num {color: #6C99C8; font-weight: 600; line-height: 2.1;}

.core_value > div {border-top: 1px solid rgba(18,18,18,0.12);}
.core_value_last > div {border-bottom: 1px solid rgba(18,18,18,0.12);}
.value_num {display: block; font-weight: 600; color: #6C99C8; line-height: 1.25;}

@media (max-width: 1199px) {
  .vision_hero {min-height: 32rem;}
 
}

@media (max-width: 992px) {
  .sub_title {margin-bottom: 1.375rem;}
  .vision_hero {min-height: 22rem;}
  .mission_item {padding: 1.125rem 0.5rem; gap: 0.875rem;}
  .mission_num {line-height: 1.95;}
  
}

@media (max-width: 767px) {
  .sub_title {margin-bottom: 1rem;}
  .vision_hero {min-height: 18rem;}
  .vision_hero .txt_body br {display: none;}
  .mission_item {grid-template-columns: 1.75rem 1fr; gap: 0.75rem; padding: 1rem 0.25rem;}
  .mission_num {line-height: 1.85;}
  .value_num {margin-bottom: 0.625rem;}
  .core_value h3 br {display: none;}
  .img_box {margin-top: 1.5rem;}

}
/*========== 연혁 ==========*/
.txt_body_sm {line-height: 1.9;}
.txt_point {font-weight: 700; color: #121212;}

.tab_history .nav-tabs {display: flex; flex-wrap: wrap; gap: 0.625rem; border-bottom: 0; margin: 0 0 2.5rem; padding: 0;}
.tab_history .nav-tabs > li {float: none; margin: 0;}
.tab_history .nav-tabs > li > a {margin: 0; padding: 0.75rem 1.5rem; border: 1px solid rgba(18,18,18,0.15); border-radius: 100px; background: transparent; color: rgba(0,0,0,0.8); font-weight: 500; line-height: 1.5; transition: all 0.3s ease;}
.tab_history .nav-tabs > li > a:hover, .tab_history .nav-tabs > li > a:focus {border-color: #6C99C8; background: transparent; color: #6C99C8;}
.tab_history .nav-tabs > li.active > a, .tab_history .nav-tabs > li.active > a:hover, .tab_history .nav-tabs > li.active > a:focus {border-color: #1f3c6e; background: #1f3c6e; color: #fff;}
.tab_history .tab-content {border: 0;}

.era_head {position: sticky; top: 4rem; z-index: 2; padding-bottom: 0.5rem; background: #fff;}
.era_num {display: block; font-weight: 700; line-height: 1; letter-spacing: -0.04em; color: #6C99C8;}
.era_head .sub_title {margin: 0.75rem 0 0;}
.era_box {margin-top: 2rem; padding: 1.75rem; background: #f3f5f8;}
.era_box p {margin: 0;}

.hist_table {width: 100%; max-width: 100%; margin: 0; border-collapse: collapse; table-layout: fixed;}
.hist_table td {padding: 2rem 0.75rem; border-top: 1px solid rgba(18,18,18,0.12); vertical-align: top; word-break: keep-all;}
.hist_table tr:last-child td {border-bottom: 1px solid rgba(18,18,18,0.12);}
.hist_table td:first-child {width: 10.5rem;}
.hist_table p {margin: 0;}
.hist_date {display: block; font-weight: 700; letter-spacing: -0.01em; color: #1f3c6e; line-height: 1.9;}

@media (max-width: 1199px) {
  .hist_table td {padding: 1.75rem 0.5rem;}
  .hist_table td:first-child {width: 9rem;}
  .era_box {margin-top: 1.5rem; padding: 1.375rem;}
}

@media (max-width: 992px) {
  .tab_history .nav-tabs {gap: 0.5rem; margin-bottom: 2rem;}
  .tab_history .nav-tabs > li > a {padding: 0.625rem 1.125rem;}
  .era_head {position: static; padding-bottom: 0;}
  .era_head .sub_title {margin-top: 0.5rem;}
  .era_box {margin-top: 1.25rem;}
  .hist_table td {padding: 1.5rem 0.5rem;}
  .hist_table td:first-child {width: 8rem;}
}

@media (max-width: 767px) {
  .tab_history {padding: 1.25rem 0 !important;}
  .tab_history .nav-tabs {gap: 0.375rem; margin-bottom: 1.5rem;}
  .tab_history .nav-tabs > li > a {padding: 0.5rem 0.875rem;}
  .tab_history .tab-content {padding: 1.25rem 0 !important;}
  .hist_table, .hist_table tbody, .hist_table tr, .hist_table td {display: block; width: 100%;}
  .hist_table td {padding: 0 0.25rem; border-top: 0;}
  .hist_table td:first-child {width: 100%; padding-top: 1.25rem; border-top: 1px solid rgba(18,18,18,0.12);}
  .hist_table td:last-child {padding-bottom: 1.25rem;}
  .hist_table tr:last-child td {border-bottom: 0;}
  .hist_table tr:last-child td:last-child {border-bottom: 1px solid rgba(18,18,18,0.12);}
  .hist_date {line-height: 1.5; margin-bottom: 0.375rem;}
  .era_box {padding: 1.125rem;}
  .img_box {margin-top: 1.25rem;}
}
/*========== 섬기는분들 ==========*/
.sec_head {position: relative; padding-bottom: 1.5rem;}
/* .sec_head::after {content: ''; position: absolute; left: 0; bottom: 0; width: 2.5rem; height: 3px; background: #6C99C8;} */

.img_box_p img {height: auto; aspect-ratio: 340 / 353;}

.people_card {display: flex; flex-direction: column; padding-top: 1.5rem;}
.people_card .sub_title {margin: 0 0 0.5rem;}
.people_card p {margin: 0.875rem 0 0;}
.people_name {font-weight: 700; letter-spacing: -0.03em; line-height: 1.3; color: #121212;}
.people_grid {display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem 1.875rem;}
.people_grid > div {min-width: 0;}

@media (max-width: 1199px) {
  .people_card {padding-top: 1.25rem;}
  .people_card p {margin-top: 0.75rem;}
}

@media (max-width: 992px) {
  .sec_head {padding-bottom: 1.125rem; margin-bottom: 1.5rem;}
/*   .sec_head::after {width: 2rem;} */
  .people_card {padding-top: 1rem;}
  .people_grid {gap: 1.5rem 1.25rem;}
}

@media (max-width: 767px) {
  .sec_head {padding-bottom: 1rem; margin-bottom: 1.25rem;}
  .people_card {padding-top: 0.875rem;}
  .people_card p {margin-top: 0.625rem;}
  .img_box {margin-top: 0;}
    .people_grid {grid-template-columns: repeat(2, 1fr); gap: 1.25rem 1rem;}

}
/*========== 예배시간 안내 ==========*/
.img_box_c {width: 11.25rem; max-width: 100%;}
.img_box_c img {height: auto; aspect-ratio: 1 / 1; border-radius: 50%;}

.wor_table {width: 100%; max-width: 100%; margin: 0; border-collapse: collapse; table-layout: fixed;}
.wor_table th {padding: 0.75rem 1.125rem; border-bottom: 3px solid #121212; border-top: 3px solid #121212; text-align: left; font-weight: 800; letter-spacing: 0.16em; color: #121212; vertical-align: bottom;}
.wor_table td {padding: 1.2rem 0.75rem; border-bottom: 1px solid rgba(18,18,18,0.12); vertical-align: middle; word-break: keep-all;}
.wor_table tbody tr:hover td {background: #f3f5f8;}
.wor_table th:first-child, .wor_table td:first-child {width: 30%;}
.wor_table th:nth-child(2), .wor_table td:nth-child(2) {width: 26%;}
.wor_table p {margin: 0;}
.wor_table_light tbody tr:hover td {background: #fff;}

.wor_name {display: block; font-weight: 700; letter-spacing: -0.03em; line-height: 1.5; color: #121212;}
.wor_time {display: block; font-weight: 500; letter-spacing: -0.02em; line-height: 1.5; color: #1f3c6e;}
.worship_title {margin-top:2rem;}
@media (max-width: 1199px) {
  .img_box_c {width: 9.5rem;}
  .wor_table td {padding: 1.5rem 0.5rem;}
  .wor_table th {padding: 0 0.5rem 1rem;}
}

@media (max-width: 992px) {
  .img_box_c {width: 8rem;}
  .wor_table th:first-child, .wor_table td:first-child {width: 28%;}
  .wor_table th:nth-child(2), .wor_table td:nth-child(2) {width: 28%;}
  .wor_table td {padding: 1.25rem 0.5rem;}
}

@media (max-width: 767px) {
  .img_box_c {width: 7rem;}
  .wor_table thead {display: none;}
  .wor_table, .wor_table tbody, .wor_table tr, .wor_table td {display: block; width: 100%;}
  .wor_table tr {padding: 1.25rem 0; border-bottom: 1px solid rgba(18,18,18,0.12);}
  .wor_table td {padding: 0 0.25rem; border-bottom: 0;}
  .wor_table th:first-child, .wor_table td:first-child, .wor_table th:nth-child(2), .wor_table td:nth-child(2) {width: 100%;}
  .wor_table td:nth-child(2) {margin-top: 0.375rem;}
  .wor_table td:last-child {margin-top: 0.5rem;}
  .wor_table tbody tr:hover td, .wor_table_light tbody tr:hover td {background: transparent;}
  .img_box {margin-top: 0;}
}
/*========== 오시는길 ==========*/
.map_box {position: relative; width: 100%; height: 32.5rem; overflow: hidden; background: #f3f5f8;}
.map_box iframe, .map_box > div, .map_box .root_daum_roughmap {position: absolute; left: 0; top: 0; width: 100% !important; height: 100% !important; border: 0;}
.map_box img {display: block; width: 100%; height: 100%; object-fit: cover;}

.addr_info {padding-top: 2rem;}
.addr_info .people_name {line-height: 1.4;}
.addr_info p {margin: 1.125rem 0 0;}

@media (max-width: 1199px) {
  .map_box {height: 28rem;}
  .addr_info {padding-top: 1.5rem;}
}

@media (max-width: 992px) {
  .map_box {height: 24rem;}
  .addr_info {padding-top: 1.25rem;}
  .addr_info p {margin-top: 0.875rem;}
}

@media (max-width: 767px) {
  .map_box {height: 18rem;}
  .addr_info {padding-top: 1rem;}
  .addr_info p {margin-top: 0.75rem;}
  .addr_info .people_name br {display: none;}
}
/*========== 시설안내 ==========*/
.bld_head {display: flex; align-items: flex-end; justify-content: space-between; gap: 2.5rem; padding-bottom: 1.125rem; border-bottom: 3px solid #121212;}
.bld_head h3 {margin: 0;}
.bld_head .sub_title {margin: 0; padding-bottom: 0.625rem; white-space: nowrap;}

.plan_box {padding: 2rem; background: #f3f5f8;}
.plan_box img {display: block; width: 100%; max-width: 46.25rem; height: auto; margin: 0 auto;}
.plan_box_light {background: #fff;}

.facility_info_img  img{height: auto; aspect-ratio: 10 / 6;object-fit:cover;}

@media (max-width: 1199px) {
  .plan_box {padding: 1.5rem;}
}

@media (max-width: 992px) {
  .bld_head {gap: 1.5rem; padding-bottom: 1rem;}
  .bld_head .sub_title {padding-bottom: 0.375rem;}
  .plan_box {padding: 1.25rem;}
}

@media (max-width: 767px) {
  .bld_head {gap: 1rem; padding-bottom: 0.875rem; border-bottom-width: 2px;}
  .bld_head .sub_title {padding-bottom: 0.25rem;}
  .plan_box {padding: 1rem;}
  .people_card .people_name br {display: none;}
}
/*========== 오시는 길 ==========*/
.sub80 .cont{display:none;}

/*========== 온라인 헌금 ==========*/
.acc_box {padding: 2.75rem; background: #f3f5f8;}
.acc_box .sub_title {margin: 0 0 0.875rem;}
.acc_num {display: block; font-weight: 700; letter-spacing: -0.02em; line-height: 1.3; color: #121212; font-variant-numeric: tabular-nums; word-break: keep-all;}
.acc_util {display: flex; align-items: center; flex-wrap: wrap; gap: 1rem; margin-top: 1.75rem;}
.acc_msg {color: #1f3c6e; font-weight: 500; opacity: 0; transition: opacity 0.3s ease;}
.acc_msg.is_on {opacity: 1;}

.btn_copy {display: inline-flex; align-items: center; gap: 0.625rem; padding: 0.9375rem 1.625rem; border: 0; border-radius: 100px; background: #6C99C8; color: #fff; font-weight: 500; line-height: 1.4; cursor: pointer; transition: background 0.3s ease;}
.btn_copy:hover, .btn_copy:focus {background: #1f3c6e; color: #fff;}

@media (max-width: 1199px) {
  .acc_box {padding: 2.25rem;}
}

@media (max-width: 992px) {
  .acc_box {max-width: 100%; padding: 1.875rem;}
  .acc_util {margin-top: 1.5rem;}
}

@media (max-width: 767px) {
  .acc_box {padding: 1.5rem;}
  .acc_util {gap: 0.75rem; margin-top: 1.25rem;}
  .btn_copy {padding: 0.8125rem 1.25rem;}
}

/*========== 새가족 등록안내 ==========*/
.step_list {display: flex; flex-direction: column;}
.step_item {position: relative; display: grid; grid-template-columns: 6.25rem 1fr; gap: 2.25rem; padding-bottom: 2.75rem;}
.step_item::before {content: ''; position: absolute; left: 3.0625rem; top: 6.25rem; width: 2px; height: calc(100% - 6.25rem); background: rgba(108,153,200,0.35);}
.step_item_last {padding-bottom: 0;}
.step_item_last::before {display: none;}

.step_mark {position: relative; z-index: 1;}
.step_num {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.25rem; width: 6.25rem; height: 6.25rem; border-radius: 50%; background: #6C99C8; color: #fff;}
.step_num_end {background: #1f3c6e;}
.step_no {display: block; letter-spacing: 0.1em; font-weight: 500; line-height: 1; opacity: 0.85;}
.step_ico {display: block; line-height: 0;}
.step_ico svg {display: block; width: 2.125rem; height: 2.125rem;}

.step_body {padding-top: 0.75rem;}
.step_body .wor_name {margin-bottom: 0.875rem;}
.step_body p.txt_body {margin: 0; max-width: 41.25rem;}

@media (max-width: 1199px) {
  .step_item {grid-template-columns: 5.5rem 1fr; gap: 1.75rem; padding-bottom: 2.25rem;}
  .step_item::before {left: 2.6875rem; top: 5.5rem; height: calc(100% - 5.5rem);}
  .step_num {width: 5.5rem; height: 5.5rem;}
  .step_ico svg {width: 1.875rem; height: 1.875rem;}
}

@media (max-width: 992px) {
  .step_item {grid-template-columns: 4.5rem 1fr; gap: 1.25rem; padding-bottom: 1.875rem;}
  .step_item::before {left: 2.1875rem; top: 4.5rem; height: calc(100% - 4.5rem);}
  .step_num {width: 4.5rem; height: 4.5rem; gap: 0.125rem;}
  .step_ico svg {width: 1.5rem; height: 1.5rem;}
  .step_body {padding-top: 0.375rem;}
  .step_body .wor_name {margin-bottom: 0.625rem;}
}

@media (max-width: 767px) {
  .step_item {grid-template-columns: 3.5rem 1fr; gap: 1rem; padding-bottom: 1.5rem;}
  .step_item::before {left: 1.6875rem; top: 3.5rem; height: calc(100% - 3.5rem);}
  .step_num {width: 3.5rem; height: 3.5rem; gap: 0;}
  .step_no {display: none;}
  .step_ico svg {width: 1.375rem; height: 1.375rem;}
  .step_body {padding-top: 0.25rem;}
}
/*========== 예배 ==========*/
.day_card {height: 100%; padding: 2.75rem 2.5rem; background: #f3f5f8;}
.team_list {display: flex; flex-direction: column;}
.team_row {padding: 1.125rem 0; border-top: 1px solid rgba(18,18,18,0.12);}
.team_row .wor_name {font-weight: 500; line-height: 1.5;}

@media (max-width: 1199px) {
  .day_card {padding: 2.25rem 2rem;}
}

@media (max-width: 992px) {
  .day_card {padding: 1.875rem 1.5rem;}
  .team_row {padding: 0.875rem 0;}
}

@media (max-width: 767px) {
  .day_card {padding: 1.5rem 1.25rem;}
  .team_row {padding: 0.75rem 0;}
}
/*할렐루야*/
.day_card_flat {padding: 2.75rem 0;}

.role_grid {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));}
.role_col {padding: 0 2.75rem;}
.role_col + .role_col {border-left: 1px solid rgba(18,18,18,0.12);}
.role_col .people_card {padding-top: 0;}
.role_col .people_name {white-space: nowrap;}
.sch_table_box {padding: 2rem;background: #f3f5f8;}
.sch_table {width: 100%; margin: 0; border: none; table-layout: fixed;}
.sch_table tr:not(tr:last-child){border-bottom:1px solid #ddd;}
.sch_table td {border: 0; vertical-align: middle; word-break: keep-all;}
.sch_key {width: 9rem; padding: 1.75rem 0rem; font-weight: 700; letter-spacing: -0.03em; line-height: 1.5; color: #121212;}
.sch_val {padding: 1.75rem 0rem; font-weight: 400; letter-spacing: -0.02em; line-height: 1.7; color: rgba(0,0,0,0.8);}


@media (max-width: 1199px) {
  .day_card_flat {padding: 2.25rem 0;}
  .role_col {padding: 0 2rem;}
  .sch_key {width: 8rem; padding: 1.5rem 0 1.5rem 2rem;}
  .sch_val {padding: 1.5rem 2rem 1.5rem 0;}
}

@media (max-width: 992px) {
  .day_card_flat {padding: 1.875rem 0;}
  .role_col {padding: 0 1.25rem;}
  .role_col .people_name {white-space: normal;}
  .sch_key {width: 7rem; padding: 1.25rem 0 1.25rem 1.5rem;}
  .sch_val {padding: 1.25rem 1.5rem 1.25rem 0;}
}

@media (max-width: 767px) {
  .day_card_flat {padding: 0.5rem 1.25rem;}
  .role_grid {grid-template-columns: 1fr;}
  .role_col {padding: 1.25rem 0;}
  .role_col + .role_col {border-left: 0; border-top: 1px solid rgba(18,18,18,0.12);}
  .sch_table, .sch_table tbody, .sch_table tr, .sch_table td {display: block; width: 100%;}
  .sch_table tr + tr td {border-top: 0;}
  .sch_table tr + tr {border-top: 1px solid rgba(18,18,18,0.12);}
  .sch_key {width: 100%; padding: 1.25rem 1.25rem 0.375rem;}
  .sch_val {padding: 0 1.25rem 1.25rem;}
}
/*========== 다음세대 ==========*/
.split_grid {display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: center;}
.point_color{color:#18459b;}
/* .vision_hero_tall {min-height: 36rem;} */
.txt_body_dark {color: #121212;}
.wor_name_light {color: #fff;}

.info_row {display: flex; flex-wrap: wrap; gap: 1rem 3.5rem; margin-top: 1.75rem;}
.info_item {display: inline-flex; align-items: center; gap: 0.75rem; font-weight: 400; letter-spacing: -0.02em; line-height: 1.5; color: #fff;}
.info_ico {display: block; line-height: 0; color: #a2cdf9;}
.info_ico svg {display: block; width: 1.625rem; height: 1.625rem;}

.feat_list {display: flex; flex-direction: column; gap: 2.75rem;}
.feat_list > p.sec_title {margin: 0;}
.feat_list > p.txt_body {margin: -1.5rem 0 0;}
.feat_item h3 {margin: 0 0 1rem;}
.feat_item p {margin: 0;}

.img_box_v img {height: auto; aspect-ratio: 4 / 3;}

.notice_box {margin-top: 2.75rem; padding-top: 2rem; border-top: 1px solid rgba(18,18,18,0.15);}
.notice_box p {margin: 0;}

@media (max-width: 1199px) {
  .split_grid {gap: 3.5rem;}
  .vision_hero_tall {min-height: 32rem;}
  .feat_list {gap: 2.25rem;}
  .notice_box {margin-top: 2.25rem; padding-top: 1.75rem;}
}

@media (max-width: 992px) {
  .split_grid {gap: 2.5rem;}
  .vision_hero_tall {min-height: 26rem;}
  .info_row {gap: 0.75rem 2rem; margin-top: 1.25rem;}
  .info_ico svg {width: 1.375rem; height: 1.375rem;}
  .feat_list {gap: 1.75rem;}
  .feat_list > p.txt_body {margin-top: -1rem;}
  .feat_item h3 {margin-bottom: 0.75rem;}
  .notice_box {margin-top: 1.75rem; padding-top: 1.5rem;}
}

@media (max-width: 767px) {
  .split_grid {grid-template-columns: 1fr; gap: 1.75rem;}
  .vision_hero_tall {min-height: 22rem;}
  .info_row {flex-direction: column; gap: 0.625rem; margin-top: 1rem;}
  .feat_list {gap: 1.5rem;}
  .feat_list > p.txt_body {margin-top: -0.75rem;}
  .notice_box {margin-top: 1.5rem; padding-top: 1.25rem;}
}

/*학생부*/

.teen_sec {position: relative; min-height: 42rem; padding: 5rem 0 4.5rem; background-size: cover; background-position: center; background-repeat: no-repeat;}
.teen_sec::before {content: ''; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(18,18,18,0.35) 0%, rgba(18,18,18,0.2) 40%, rgba(18,18,18,0.78) 100%);}
.teen_sec > div {position: relative; z-index: 1;}
.teen_sec_hero {min-height: 48rem; padding-top: 12rem;}
.teen_sec_time {min-height: 38rem;}
.teen_txt h2.sec_title + .info_row {margin-top: 1.75rem;}

.teen_col {display: flex; flex-direction: column; justify-content: space-between; min-height: 38rem;}
.teen_col_end {justify-content: flex-end; min-height: 34rem;}
.teen_sec_hero .teen_col {min-height: 34rem;}

.teen_txt {max-width: 46rem;}
.teen_txt_left {margin-right: auto; text-align: left;}
.teen_txt_right {margin-left: auto; text-align: right;}
.teen_txt p.sec_title {margin: 0 0 1.5rem;}
.teen_txt p.txt_body {margin: 0;}

.info_row_end {justify-content: flex-end;}
.info_row_bar {gap: 1rem 1.75rem;}
.info_row_bar .info_item + .info_item {position: relative; padding-left: 1.75rem;}
.info_row_bar .info_item + .info_item::before {content: ''; position: absolute; left: 0; top: 50%; width: 1px; height: 1.5rem; margin-top: -0.75rem; background: rgba(255,255,255,0.4);}

.teen_link {display: inline-flex; align-items: center; gap: 0.625rem; margin-top: 1.5rem; padding: 0.5rem 1.5rem; border: 1px solid rgba(255,255,255,0.5); border-radius: 100px; font-weight: 500; line-height: 1.5; color: #fff; transition: all 0.3s ease;}
.teen_link:hover, .teen_link:focus {border-color: #6C99C8; background: #6C99C8; color: #fff !important;text-decoration:none;}
.teen_link .info_ico {color: inherit;}
.teen_link .info_ico svg {width: 1.25rem; height: 1.25rem;}

.teen_link {display: inline-flex; align-items: center; gap: 0.75rem; margin-top: 1.75rem; padding-bottom: 0.375rem; border-bottom: 1px solid rgba(255,255,255,0.45); font-weight: 500; line-height: 1.5; color: #fff; transition: all 0.3s ease;}
.teen_link:hover, .teen_link:focus {border-bottom-color: #6C99C8; color: #6C99C8;}
.teen_link .info_ico {color: inherit;}
.teen_link .info_ico svg {width: 1.375rem; height: 1.375rem;}

@media (max-width: 1199px) {
  .teen_sec {min-height: 36rem; padding: 4rem 0 3.5rem;}
  .teen_sec_hero {min-height: 42rem; padding-top: 11rem;}
  .teen_sec_time {min-height: 34rem;}
  .teen_col {min-height: 32rem;}
  .teen_col_end {min-height: 28rem;}
  .teen_sec_hero .teen_col {min-height: 38rem;}
  .teen_txt {max-width: 40rem;}
}

@media (max-width: 992px) {
  .teen_sec {min-height: 30rem; padding: 3.5rem 0 3rem;}
  .teen_sec_hero {min-height: 34rem; padding-top: 9rem;}
  .teen_sec_time {min-height: 28rem;}
  .teen_col {min-height: 26rem;}
  .teen_col_end {min-height: 22rem;}
  .teen_sec_hero .teen_col {min-height: 30rem;}
  .teen_txt {max-width: 34rem;}
  .teen_txt p.sec_title {margin-bottom: 1.125rem;}
  .teen_link {margin-top: 1.25rem; padding: 0.625rem 1.25rem;}
  .teen_txt h2.sec_title + .info_row {margin-top: 1.25rem;}

}

@media (max-width: 767px) {
  .teen_sec {min-height: 24rem; padding: 2.5rem 0 2.25rem;}
  .teen_sec_hero {min-height: 28rem; padding-top: 7rem;}
  .teen_sec_time {min-height: 24rem;}
  .teen_col {min-height: 20rem;}
  .teen_col_end {min-height: 17rem;}
  .teen_sec_hero .teen_col {min-height: 24rem;}
  .teen_txt, .teen_txt_left, .teen_txt_right {max-width: 100%; margin: 0; text-align: left;}
  .teen_txt p.sec_title {margin-bottom: 0.875rem;}
  .info_row_end {justify-content: flex-start;}
.info_row_bar {gap: 0.625rem;}
  .info_row_bar .info_item + .info_item {padding-left: 0;}
  .info_row_bar .info_item + .info_item::before {display: none;}
  .teen_link {margin-top: 1rem; padding: 0.5rem 1.125rem;}
  .teen_txt h2.sec_title + .info_row {margin-top: 1rem;}

}

/*청년부*/
.teen_txt_wide {max-width: 56rem;}

.check_list {display: flex; flex-direction: column; gap: 0.875rem; margin-top: 2rem;}
.check_item {display: flex; align-items: flex-start; gap: 0.875rem; font-weight: 400; line-height: 1.6; }
.check_item .info_ico {flex: none; margin-top: 0.125rem; color: #6C99C8;}
.check_item .info_ico svg {width: 1.375rem; height: 1.375rem;}

.quote_line {display: block; margin: 0 0 1.5rem; font-weight: 700; letter-spacing: -0.02em; line-height: 1.5; color: #1f3c6e;}

.feat_item .value_num {margin-bottom: 0.75rem;}

@media (max-width: 1199px) {
  .teen_txt_wide {max-width: 48rem;}
}

@media (max-width: 992px) {
  .teen_txt_wide {max-width: 100%;}
  .check_list {gap: 0.75rem; margin-top: 1.5rem;}
  .quote_line {margin-bottom: 1.125rem;}
}

@media (max-width: 767px) {
  .check_list {gap: 0.625rem; margin-top: 1.25rem;}
  .check_item .info_ico svg {width: 1.125rem; height: 1.125rem;}
  .quote_line {margin-bottom: 1rem;}
  .feat_item .value_num {margin-bottom: 0.5rem;}

}

/*========== 양육 ==========*/
.split_grid_lead {grid-template-columns: 0.85fr 1.15fr;}
.split_grid_course {grid-template-columns: 1fr 22.5rem; gap: 3.5rem; align-items: start;}

.sch_table_flat {background: transparent;}
.sch_table_flat .sch_key {padding-left: 0;}
.sch_table_flat .sch_val {padding-right: 0;}
.sch_key_wide {width: 12.5rem;}
.sch_sub {width: 6.5rem; padding: 1.75rem 1.5rem 1.75rem 0; font-weight: 400; line-height: 1.7; color: rgba(0,0,0,0.8); vertical-align: middle;}

.dgm_box {width: 100%;}
.dgm_box svg {display: block; width: 100%; height: auto;}
.dgm_box svg text {font-family: inherit; letter-spacing: -0.02em;}
.dgm_blend circle {mix-blend-mode: multiply; opacity: 0.88;}
.t_cont_box{padding:2rem;background:#f7f8f9;}
@media (max-width: 1199px) {
  .split_grid_course {grid-template-columns: 1fr 18rem; gap: 2.5rem;}
  .sch_key_wide {width: 11rem;}
  .sch_sub {width: 5.5rem; padding: 1.5rem 1.25rem 1.5rem 0;}
}

@media (max-width: 992px) {
  .split_grid_lead {grid-template-columns: 1fr;}
  .split_grid_course {grid-template-columns: 1fr; gap: 2.5rem;}
  .dgm_box {max-width: 26rem; margin: 0 auto;}
  .sch_key_wide {width: 9.5rem;}
  .sch_sub {width: 4.5rem; padding: 1.25rem 1rem 1.25rem 0;}
}

@media (max-width: 767px) {
  .sch_table_flat, .sch_table_flat tbody, .sch_table_flat tr, .sch_table_flat td {display: block; width: 100%;}
  .sch_table_flat .sch_key, .sch_key_wide {width: 100%; padding: 1.25rem 0 0.375rem;}
  .sch_sub {width: 100%; padding: 0 0 0.25rem;}
  .sch_table_flat .sch_val {padding: 0 0 1.25rem;}
  .dgm_box {max-width: 100%;}
}
/*========== 선교 ==========*/
.split_grid_dom {grid-template-columns: 1.7fr 1fr; gap: 4.5rem; align-items: start;}
.day_card_sm {padding: 1.875rem 2rem;}
.stat_row {display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 2.75rem 0 3.5rem;}
.stat_box {padding: 1.625rem 2.5rem 1.625rem 1.875rem; border-left: 2px solid #6C99C8;}
.stat_num {display: block; font-weight: 700; letter-spacing: -0.04em; line-height: 1; color: #121212;}
.stat_box .sub_title {margin: 0.625rem 0 0;}
.map_wrap {position: relative; width: 100%; margin-bottom: 3.5rem;}
.map_bg img {display: block; width: 100%; height: auto; aspect-ratio: auto;}
.map_pins {position: absolute; left: 0; top: 0; right: 0; bottom: 0;}
.map_pin {position: absolute; width: 0; height: 0; color: #1f3c6e;}
.map_ico {position: absolute; left: -0.6875rem; bottom: 0; width: 1.375rem; height: 1.8333rem; display: block;}
.map_label {position: absolute; bottom: 0; display: flex; flex-direction: column; gap: 0.25rem; white-space: nowrap;}
.map_name {display: block; font-weight: 700; letter-spacing: -0.02em; line-height: 1.3; color: #121212;}
.map_who {display: block; font-weight: 400; line-height: 1.3; color: rgba(0,0,0,0.8);}
.map_pin_r .map_label {left: 1.125rem; align-items: flex-start;}
.map_pin_l .map_label {right: 1.125rem; align-items: flex-end;}
.mis_card_grid {display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem;}
.mis_card_grid > div {min-width: 0;}
.mis_card_grid .DIDIDI-unit {height: 100%;}
.mis_card_foot {margin-top: 1rem; padding-top: 1rem; border-top: 1px solid rgba(18,18,18,0.12);}
.mis_card_foot p {margin: 0;}
.list_head {display: flex; align-items: baseline; gap: 0.875rem; padding-bottom: 1rem; border-bottom: 2px solid #121212;}
.list_cnt {font-weight: 500; color: #6C99C8;}
.mis_table {width: 100%; margin: 0; border: 0; border-collapse: collapse; table-layout: auto;}
.mis_table td {padding: 1.375rem 0; border: 0; border-bottom: 1px solid rgba(18,18,18,0.12); vertical-align: baseline; background: none;}
.mis_table td.mis_gap {width: 0; padding: 0 1.5rem; border-bottom: 0; font-size: 0; line-height: 0;}
.mis_table_2 td.mis_name {width: 50%;}
.mis_name {font-weight: 500; letter-spacing: -0.02em; color: #121212; white-space: nowrap;}
.mis_who {font-weight: 400; color: rgba(0,0,0,0.8); white-space: nowrap;}
.mis_table td.mis_who {width: 1%; text-align: right;}
@media (max-width: 1199px) {
  .split_grid_dom {gap: 3rem;}
  .stat_box {padding: 1.375rem 2rem 1.375rem 1.5rem;}
  .mis_card_grid {gap: 1rem;}
  .mis_table td.mis_gap {padding: 0 1rem;}
}
@media (max-width: 992px) {
  .split_grid_dom {grid-template-columns: 1fr; gap: 3rem;}
  .stat_row {margin: 2rem 0 2.5rem;}
  .map_wrap {margin-bottom: 2.5rem;}
  .map_ico {left: -0.575rem; width: 1.15rem; height: 1.5rem;}
  .map_label {gap: 0.1875rem;}
  .map_pin_r .map_label {left: 0.875rem;}
  .map_pin_l .map_label {right: 0.875rem;}
  .mis_card_grid {grid-template-columns: repeat(2, 1fr); gap: 1rem;}
  .day_card_sm {padding: 1.5rem 1.5rem;}
  .mis_table td {padding: 1.125rem 0;}
}
@media (max-width: 767px) {
  .stat_row {gap: 0.75rem; margin: 1.5rem 0 2rem;}
  .stat_box {flex: 1 1 100%; padding: 1rem 1.25rem;}
  .map_wrap {margin-bottom: 2rem;}
  .map_ico {left: -0.48rem; width: 0.96rem; height: 1.255rem;}
  .map_label {gap: 0.125rem;}
  .map_pin_r .map_label {left: 0.75rem;}
  .map_pin_l .map_label {right: 0.75rem;}
  .mis_card_grid {grid-template-columns: 1fr; gap: 0.75rem;}
  .day_card_sm {padding: 1.25rem 1.25rem;}
  .mis_table, .mis_table tbody {display: block; width: 100%;}
  .mis_table tr {display: grid; grid-template-columns: 1fr auto;}
  .mis_table td {display: block; padding: 1rem 0;}
  .mis_table td.mis_gap {display: none;}
  .mis_table_2 td.mis_name, .mis_table td.mis_who {width: auto;}
  .mis_name, .mis_who {white-space: normal;}
}



/*========== 맥체인성경읽기 ==========*/
.split_grid_rev {grid-template-columns: 1.15fr 1fr;}
.sec_head_gap {margin-bottom: 0rem;}

.num_row {display: flex; flex-wrap: wrap; gap: 1.5rem; margin-top: 2.75rem;}
.num_box {padding: 2rem 2.5rem; background: #fff;}
.num_box .sub_title {margin: 0 0 0.75rem;}
.num_val {display: block; font-weight: 700; letter-spacing: -0.04em; line-height: 1.2; color: #121212;}

@media (max-width: 1199px) {
  .sec_head_gap {margin-bottom: 2.75rem;}
  .num_row {gap: 1.25rem; margin-top: 2.25rem;}
  .num_box {padding: 1.75rem 2rem;}
}

@media (max-width: 992px) {
  .split_grid_rev {grid-template-columns: 1fr;}
  .sec_head_gap {margin-bottom: 2rem;}
  .num_row {margin-top: 1.75rem;}
  .num_box {padding: 1.5rem 1.75rem;}
}

@media (max-width: 767px) {
  .sec_head_gap {margin-bottom: 1.5rem;}
  .num_row {gap: 1rem; margin-top: 1.5rem;}
  .num_box {flex: 1 1 auto; padding: 1.25rem 1.5rem;}
}
