/* ESG경영 지속가능한 공급망 · 윤리경영 */
.esg_se{ --se_accent: #F49E00; --se_light: #FFF1D8; --se_soft: #FEF5E3; --se_line: #DDD; }
.esg_ethics{ --se_accent: #0091DB; --se_light: #EDF6FB; --se_soft: #EDF6FB; }
.esg_se .w1740{ gap: 100px; }
.esg_se .esg_deco_title::after{ background: var(--se_accent); }
.esg_se .esg_deco_title{ min-width: 0; }

.se_block{ display: flex; flex-direction: column; gap: 60px; min-width: 0; }
.se_head{ display: flex; flex-direction: column; align-items: flex-start; gap: 20px; min-width: 0; }
.se_title_lg{ font-size: 5rem; font-weight: 600; line-height: 1.3; letter-spacing: -1px; color: #222; }
.se_desc{ max-width: 1240px; font-size: 2rem; font-weight: 400; line-height: 1.7; letter-spacing: -0.4px; color: #333; min-width: 0; }
.se_sub_group{ display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.se_sub_row{ display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 10px 20px; }
.se_sub{ font-size: 2.6rem; font-weight: 600; line-height: 1.3077; letter-spacing: -0.52px; color: var(--se_accent); min-width: 0; }
.se_note{ font-size: 1.8rem; font-weight: 400; line-height: 1.6111; letter-spacing: -0.36px; color: #666; }
.se_btn_wrap{ display: flex; justify-content: center; }

.se_chip{ display: inline-flex; align-items: stretch; max-width: 100%; border: 1px solid var(--se_accent); border-radius: 3px; overflow: hidden; font-size: 1.4rem; font-weight: 600; line-height: 1.3; letter-spacing: -0.28px; color: #fff !important; }
.se_chip span{ min-width: 0; padding: 6px 12px; background: var(--se_accent); }
.se_chip::after{ content: ""; flex: 0 0 30px; background: #fff url("/img/sub/esg_supply_chain_icon_link.svg") no-repeat center / 16px; } /* decoration */

.se_files{ display: flex; flex-wrap: wrap; gap: 10px 20px; }
.se_head.has_view{ display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.se_head.has_view .esg_deco_title{ grid-column: 1; grid-row: 1; }
.se_head.has_view .se_files{ grid-column: 2; grid-row: 1; }
.se_head.has_view .se_desc{ grid-column: 1 / -1; grid-row: 2; }

.se_bullets{ display: flex; flex-direction: column; gap: 10px; list-style: none; min-width: 0; }
.se_bullets li{ display: flex; gap: 5px; min-width: 0; font-size: 1.8rem; font-weight: 400; line-height: 1.2778; letter-spacing: -0.36px; color: #333; text-align: left; overflow-wrap: break-word; }
.se_bullets li::before{ content: "•"; flex: 0 0 auto; }
.se_bullets.two_cols{ display: grid; grid-template-columns: repeat(2, max-content); justify-content: start; gap: 10px 120px; }

.se_table_wrap{ min-width: 0; overflow-x: auto; }
.se_table{ width: 100%; border-collapse: collapse; table-layout: fixed; }
.se_table th,
.se_table td{ font-size: 1.8rem; line-height: 1.2778; letter-spacing: -0.36px; vertical-align: middle; overflow-wrap: break-word; }
.se_table thead th{ padding: 19px 10px 20px; border: solid var(--se_accent); border-width: 1px 0 1px 1px; background: var(--se_light); font-weight: 600; color: #111; text-align: center; }
.se_table thead th:first-child{ border-left-width: 0; background: var(--se_accent); color: #fff; }
.se_table tbody th{ padding: 20px 40px; border-bottom: 1px solid var(--se_line); background: #F9F9F9; font-weight: 500; color: #111; text-align: center; }
.se_table tbody td{ padding: 20px 40px 20px 30px; border-bottom: 1px solid var(--se_line); border-left: 1px solid var(--se_line); font-weight: 400; color: #333; text-align: left; }
.se_table tbody td.center{ padding: 20px 40px; text-align: center; }

.se_table_two col:first-child{ width: 19.54%; }
.esg_supply_chain .se_table_two thead th + th{ border-left-width: 0; }
.esg_ethics .se_table_two col:first-child{ width: 14.94%; }
.se_table_risk{ min-width: 900px; }
.se_table_risk col:nth-child(1){ width: 12.64%; }
.se_table_risk col:nth-child(2){ width: 24.14%; }
.se_table_risk col:nth-child(3){ width: 25.86%; }
.se_table_risk td.center{ line-height: 1.6111; }
.se_table_risk td.center:nth-child(2){ line-height: 1.3; }
.se_table_roles{ border-top: 2px solid var(--se_accent); }
.se_table_roles col:first-child{ width: 33.3%; }
.se_table_roles tbody th{ padding: 17px 30px; border-bottom-color: rgba(221, 221, 221, 0.87); }
.se_table_roles tbody td{ padding-top: 17px; padding-bottom: 17px; border-bottom-color: rgba(221, 221, 221, 0.87); }

.se_table_method{ min-width: 820px; }
.se_table_method col:nth-child(1){ width: 8.62%; }
.se_table_method col:nth-child(2){ width: 19.54%; }
.se_table_method col:nth-child(3){ width: 35.92%; }
.se_table_method tbody th,
.se_table_method tbody td{ padding: 20px 40px; line-height: 1.6111; }
.se_table_method tbody td{ font-weight: 400; text-align: center; }
.se_table_method tbody td.left{ text-align: left; }
.se_table_method tbody th.grp{ padding: 20px 10px; border-right: 1px solid var(--se_line); }
.se_table_method .grp_inner{ display: flex; flex-direction: column; align-items: center; gap: 15px; font-weight: 500; line-height: 1.2778; color: var(--se_accent); }
.se_table_method .grp_inner span{ line-height: 1.2778; letter-spacing: -0.36px; }
.se_table_method .grp_icon{ display: block; width: 46px; aspect-ratio: 46 / 60; }
.se_table_method sup,
.esg_supply_chain .se_bullets sup,
.esg_supply_chain .se_nums sup{ font-size: 0.6em; vertical-align: super; line-height: 0; }
.se_nums{ display: flex; flex-direction: column; gap: 0; list-style: none; counter-reset: se_num; }
.se_nums li{ display: flex; gap: 6px; counter-increment: se_num; }
.se_nums li::before{ content: counter(se_num) "."; flex: 0 0 auto; }
.se_nums.is_center{ gap: 5px; }
.se_nums.is_center li{ display: block; line-height: 1.6111; text-align: center; }
.se_nums.is_center li::before{ display: inline; margin-right: 6px; }
.se_table_method tbody th.nw{ white-space: nowrap; }
.esg_ethics .se_table_two tbody th{ white-space: nowrap; }

.se_steps{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; list-style: none; }
.se_steps li{ display: flex; flex-direction: column; min-width: 0; }
.se_steps .step_title{ display: flex; justify-content: center; align-items: center; padding: 20px 10px; border: 1px solid var(--se_accent); border-radius: 10px 10px 0 0; background: var(--se_light); font-size: 2rem; font-weight: 600; line-height: 1.3; letter-spacing: -0.4px; color: var(--se_accent); text-align: center; }
.se_steps .step_body{ flex: 1 1 auto; font-weight: 400; display: flex; flex-direction: column; justify-content: center; padding: 20px 30px; border: 1px solid var(--se_accent); border-top: 0; border-radius: 0 0 10px 10px; background: #fff; font-size: 1.8rem; line-height: 1.6111; letter-spacing: -0.36px; color: #333; text-align: center; }
.se_steps .step_body p{ font-size: inherit; line-height: 1.6111; letter-spacing: -0.36px; }
.se_steps .step_body p + p{ margin-top: 20px; padding-top: 20px; border-top: 1px dashed var(--se_line); }

.se_dl_box{ padding: 60px 0; border-radius: 20px; background: #F9F9F9; }
.se_dl{ display: flex; flex-direction: column; gap: 10px; width: 93.1%; max-width: 1620px; margin: 0 auto; }
.se_dl_row{ display: flex; min-width: 0; }
.se_dl dt{ flex: 0 0 16.05%; display: flex; align-items: center; min-width: 0; padding: 20px 20px 20px 30px; border: 1px solid var(--se_accent); border-radius: 10px 0 0 10px; background: var(--se_soft); font-size: 1.8rem; font-weight: 600; line-height: 1.2778; letter-spacing: -0.36px; color: var(--se_accent); }
.se_dl dd{ flex: 1 1 0; display: flex; align-items: center; min-width: 0; padding: 20px 20px 20px 30px; border: 1px solid var(--se_accent); border-left: 0; border-radius: 0 10px 10px 0; background: #fff; }
.se_dl_wide dt{ flex-basis: 18.5%; }

.se_panel{ padding: 60px 0; border-radius: 20px; background: #F9F9F9; }

.esg_supply_chain .org_panel{ padding: 60px 0; border-radius: 20px; background: #F9F9F9; }
.esg_supply_chain .org_inner{ width: 93.1%; max-width: 1620px; margin: 0 auto; }
.esg_supply_chain .org_list{ display: flex; flex-direction: column; gap: 30px; }
.esg_supply_chain .org_row{ position: relative; display: grid; grid-template-columns: minmax(0, 177fr) minmax(0, 316fr) minmax(0, 237fr) minmax(0, 890fr); align-items: center; }
.esg_supply_chain .org_row::before{ content: ""; position: absolute; top: 0; bottom: -30px; left: 20.68%; width: 1px; background: #BBB; } /* decoration */
.esg_supply_chain .org_row_main::before{ bottom: -17px; }
.esg_supply_chain .org_row_dept::before{ display: none; }
.esg_supply_chain .org_node{ position: relative; z-index: 1; grid-column: 2; display: flex; justify-content: center; align-items: center; min-width: 0; padding: 20px 10px; border-radius: 10px; font-size: 1.8rem; font-weight: 600; line-height: 1.2778; letter-spacing: -0.36px; text-align: center; }
.esg_supply_chain .org_node.n_board{ background: #B07200; color: #fff; }
.esg_supply_chain .org_node.n_esg{ background: #F49E00; color: #fff; }
.esg_supply_chain .org_node.n_ceo{ background: #FFD68B; color: #B0760A; }
.esg_supply_chain .org_node.n_main{ border: 1px solid #F49E00; background: #FFF1D8; color: #F49E00; }
.esg_supply_chain .org_line{ grid-column: 3; height: 1px; background: #F49E00; }
.esg_supply_chain .org_desc{ grid-column: 4; min-width: 0; padding: 20px 30px; border: 1px solid #F49E00; border-radius: 10px; background: #fff; }
.esg_supply_chain .org_desc .se_bullets{ gap: 0; }
.esg_supply_chain .org_desc .se_bullets li + li{ margin-top: 15px; padding-top: 14px; border-top: 1px dashed var(--se_line); }
.esg_supply_chain .org_desc_cols{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
.esg_supply_chain .org_row_dept{ grid-template-columns: minmax(0, 670fr) minmax(0, 60fr) minmax(0, 890fr); }
.esg_supply_chain .org_row_dept .org_line{ grid-column: 2; background: #D9D9D9; }
.esg_supply_chain .org_row_dept .org_desc{ grid-column: 3; }
.esg_supply_chain .org_depts{ grid-column: 1; display: flex; gap: 10px; min-width: 0; list-style: none; }
.esg_supply_chain .org_depts li{ position: relative; flex: 1 1 0; display: flex; justify-content: center; align-items: center; min-width: 0; padding: 20px 10px; border: 1px solid var(--se_line); border-radius: 10px; background: #fff; font-size: 1.8rem; font-weight: 500; line-height: 1.2778; letter-spacing: -0.36px; color: #666; text-align: center; }
.esg_supply_chain .org_depts li::before{ content: ""; position: absolute; bottom: 100%; left: 50%; width: 1px; height: 40px; background: #BBB; } /* decoration */
.esg_supply_chain .org_depts li:not(:last-child)::after{ content: ""; position: absolute; bottom: calc(100% + 40px); left: 50%; width: calc(100% + 10px); height: 1px; background: #BBB; } /* decoration */

.esg_ethics .gov_grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; }
.esg_ethics .chart_panel{ min-width: 0; padding: 60px 0; border-radius: 20px; background: #F9F9F9; }
.esg_ethics .chart_scroll{ width: 85.9%; margin: 0 auto; overflow-x: auto; }
.esg_ethics .chart_grid{ position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: 31px 21px auto 32px auto 32px auto 33px 33px auto 33px auto 33px 33px auto 33px auto; column-gap: var(--se_cg, 30px); }
.esg_ethics .node{ position: relative; z-index: 1; display: flex; justify-content: center; align-items: center; min-width: 0; padding: 20px 10px; border-radius: 10px; font-size: 1.8rem; font-weight: 600; line-height: 1.2778; letter-spacing: -0.36px; color: #fff; text-align: center; }
.esg_ethics .node.c0{ background: #0091DB; }
.esg_ethics .node.c1{ background: #73C2EA; }
.esg_ethics .node.outline{ min-height: 100px; border: 1px solid #0091DB; background: #EDF6FB; color: #0091DB; }
.esg_ethics .node.plain{ border: 1px solid #E1E1E1; background: #fff; font-weight: 500; color: #666; }
.esg_ethics .n_board{ grid-area: 3 / 2; }
.esg_ethics .n_audit{ grid-area: 3 / 3; }
.esg_ethics .n_esg{ grid-area: 5 / 2; }
.esg_ethics .n_ceo{ grid-area: 7 / 2; }
.esg_ethics .n_acc{ grid-area: 10 / 2; }
.esg_ethics .n_ethics{ grid-area: 12 / 1; }
.esg_ethics .n_accteam{ grid-area: 12 / 2; }
.esg_ethics .n_inaudit{ grid-area: 12 / 3; }
.esg_ethics .n_process{ grid-area: 15 / 2; }
.esg_ethics .n_work{ grid-area: 17 / 2; }
.esg_ethics .n_audit::before{ content: ""; position: absolute; top: 50%; right: 100%; width: var(--se_cg, 30px); height: 1px; background: #BBB; } /* decoration */
.esg_ethics .n_ethics::before{ content: ""; position: absolute; bottom: 100%; left: 50%; width: 1px; height: 106px; background: #BBB; } /* decoration */
.esg_ethics .n_ethics::after{ content: ""; position: absolute; bottom: calc(100% + 105px); left: 50%; width: calc(100% + var(--se_cg, 30px)); height: 1px; background: #BBB; } /* decoration */
.esg_ethics .axis{ z-index: 0; justify-self: center; width: 1px; background: #BBB; }
.esg_ethics .axis_main{ grid-area: 3 / 2 / 18 / 3; }
.esg_ethics .axis_side{ grid-area: 3 / 3 / 13 / 4; }
.esg_ethics .zone{ z-index: 0; border: 0 dashed #EC0202; pointer-events: none; }
.esg_ethics .zone_3{ grid-area: 2 / 3 / 14 / 4; margin-left: calc(var(--se_cg, 30px) / -3); border-top-width: 1px; border-left-width: 1px; }
.esg_ethics .zone_2{ grid-area: 9 / 1 / 13 / 3; margin-right: calc(var(--se_cg, 30px) / -3); border-top-width: 1px; border-right-width: 1px; }
.esg_ethics .zone_1{ grid-area: 13 / 1 / 14 / 4; border-bottom-width: 1px; }
.esg_ethics .zone_label{ font-size: 1.6rem; font-weight: 600; line-height: 1.3; letter-spacing: -0.32px; color: #E71013; white-space: nowrap; }
.esg_ethics .zl_3{ grid-area: 1 / 3; justify-self: end; align-self: start; }
.esg_ethics .zl_2{ grid-area: 8 / 1; align-self: start; margin-top: 2px; }
.esg_ethics .zl_1{ grid-area: 14 / 3; justify-self: end; align-self: start; margin-top: 10px; }

.esg_ethics .se_policy_files{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; width: 100%; list-style: none; }
.esg_ethics .se_policy_files li{ display: flex; flex-direction: column; align-items: center; gap: 15px; min-width: 0; padding: 25px 20px; border: 1px solid #EEE; border-radius: 10px; }
.esg_ethics .se_policy_files .name{ font-size: 1.8rem; font-weight: 600; line-height: 1.3; letter-spacing: -0.36px; color: #111; text-align: center; }
.esg_ethics .se_policy_files .btns{ display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }

.esg_ethics .audit_cards{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 60px; width: 93.1%; max-width: 1620px; margin: 0 auto; list-style: none; }
.esg_ethics .audit_cards li{ display: flex; flex-direction: column; min-width: 0; }
.esg_ethics .card_head{ display: flex; flex-direction: column; align-items: center; gap: 30px; padding: 40px 10px; border: 1px solid #0091DB; border-radius: 20px 20px 0 0; background: #EDF6FB; }
.esg_ethics .card_icon{ display: block; width: 120px; aspect-ratio: 1 / 1; }
.esg_ethics .card_head strong{ font-size: 2rem; font-weight: 600; line-height: 1.3; letter-spacing: -0.4px; color: #0091DB; text-align: center; }
.esg_ethics .card_body{ flex: 1 1 auto; font-weight: 400; display: flex; flex-direction: column; justify-content: center; padding: 25px 30px; border: 1px solid #0091DB; border-top: 0; border-radius: 0 0 20px 20px; background: #fff; font-size: 1.8rem; line-height: 1.6111; letter-spacing: -0.36px; color: #333; text-align: center; }
.esg_ethics .card_body p{ font-size: inherit; line-height: 1.2778; letter-spacing: -0.36px; }
.esg_ethics .card_body p + p{ margin-top: 15px; padding-top: 15px; border-top: 1px dashed #E1E1E1; }

.se_view_btn{ display: inline-flex; justify-content: center; align-items: center; padding: 7px 25px; border: 1px solid #D9D9D9; border-radius: 100px; background-color: #F9F9F9; font-size: 1.6rem; font-weight: 500; line-height: 27px; letter-spacing: -0.32px; color: #666; white-space: nowrap; cursor: pointer; transition: background-color 0.3s, border-color 0.3s, color 0.3s; }

html.se_lock,
html.se_lock body{ overflow: hidden; }
.se_modal{ position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 99999; display: flex; justify-content: center; align-items: center; padding: 20px; } /* overlay */
.se_modal[hidden]{ display: none; }
.se_modal_dim{ position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0, 0, 0, 0.7); } /* overlay */
.se_modal_box{ position: relative; display: flex; flex-direction: column; width: 100%; max-width: 1200px; max-height: calc(100vh - 40px); max-height: calc(100svh - 40px); outline: 0; } /* popup */
.se_modal_close{ position: relative; padding: 0; border: 0; background: none; flex: 0 0 30px; align-self: flex-end; width: 30px; margin-bottom: 20px; cursor: pointer; }
.se_modal_close::before,
.se_modal_close::after{ content: ""; position: absolute; top: 50%; left: 50%; width: 100%; height: 2px; background: #fff; } /* decoration */
.se_modal_close::before{ transform: translate(-50%, -50%) rotate(45deg); }
.se_modal_close::after{ transform: translate(-50%, -50%) rotate(-45deg); }
.se_modal_pop{ flex: 1 1 auto; display: flex; flex-direction: column; min-height: 0; padding: 40px 0 34px; border-radius: 20px; background: #fff; }
.se_modal_title{ flex: 0 0 auto; margin-bottom: 30px; font-size: 3rem; font-weight: 600; line-height: 1.3; letter-spacing: -0.6px; color: #111; text-align: center; }
.se_modal_doc{ flex: 0 1 503px; width: 90%; min-height: 120px; margin: 0 auto; padding: 30px 39px 30px 30px; border-radius: 20px; background: #F9F9F9; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.se_modal_doc:focus-visible{ outline: 2px solid #004FA2; }
.se_modal_btns{ flex: 0 0 auto; display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; margin-top: 40px; }
.se_doc{ display: flex; flex-direction: column; gap: 80px; width: 100%; margin: 0; }
.se_doc .doc_title{ font-size: 2.8rem; font-weight: 700; line-height: 1.2857; letter-spacing: -0.56px; color: #111; }
.se_doc .doc_chapter{ display: flex; flex-direction: column; gap: 40px; }
.se_doc .doc_chapter_title{ font-size: 2.2rem; font-weight: 700; line-height: 1.3182; letter-spacing: -0.44px; color: #111; }
.se_doc .doc_chapter_title::after{ background: #004FA2; }
.se_doc .doc_article{ display: flex; flex-direction: column; gap: 15px; }
.se_doc .doc_article h5{ font-size: 1.8rem; font-weight: 600; line-height: 1.2778; letter-spacing: -0.36px; color: #111; }
.se_doc .doc_clauses{ display: flex; flex-direction: column; gap: 10px; list-style: none; counter-reset: doc_num; }
.se_doc .doc_clauses li{ display: block; counter-increment: doc_num; font-size: 1.6rem; font-weight: 400; line-height: 1.6; letter-spacing: -0.32px; color: #333; overflow-wrap: break-word; }
.se_doc .doc_clauses li::before{ content: counter(doc_num) ". "; }
.se_doc .doc_title + .doc_chapter{ margin-top: -20px; }
.se_doc .doc_clauses li span{ min-width: 0; line-height: inherit; letter-spacing: inherit; }
.se_doc .doc_clauses.strong li::before,
.se_doc .doc_clauses strong{ font-weight: 600; color: #111; line-height: inherit; letter-spacing: inherit; }
.se_modal_btns .esg_btn{ flex: 0 0 217px; padding: 0; }
.se_modal_btns .esg_btn.is_en{ font-size: 1.6rem; }

@media screen and (hover: hover){
	.se_view_btn:hover{ background-color: #004FA2; border-color: #004FA2; color: #fff; }
}

@media screen and (hover: hover){
	.se_chip:hover span{ background: #111; }
}

@media screen and (max-width: 1280px){
	.esg_se .w1740{ gap: 80px; }
	.se_title_lg{ font-size: 4rem; }
	.se_desc{ font-size: 1.8rem; }
	.se_sub{ font-size: 2.2rem; }
	.se_note{ font-size: 1.6rem; }
	.se_bullets li,
	.se_table th,
	.se_table td{ font-size: 1.6rem; }
	.se_bullets.two_cols{ column-gap: 40px; }
	.se_table tbody th{ padding: 16px 20px; }
	.se_table tbody td{ padding: 16px 20px; }
	.se_table tbody td.center{ padding: 16px 20px; }
	.se_table_method tbody th,
	.se_table_method tbody td{ padding: 16px 20px; }
	.se_steps{ gap: 20px; }
	.se_steps .step_title{ font-size: 1.8rem; }
	.se_steps .step_body{ padding: 20px; font-size: 1.6rem; }
	.se_dl dt,
	.se_dl dd{ padding: 16px 20px; font-size: 1.6rem; }
	.esg_supply_chain .org_node,
	.esg_supply_chain .org_depts li{ font-size: 1.6rem; }
	.esg_supply_chain .org_desc{ padding: 16px 20px; }
	.esg_ethics .node{ font-size: 1.6rem; padding: 16px 6px; }
	.esg_ethics .zone_label{ font-size: 1.4rem; }
	.esg_ethics .gov_grid{ gap: 20px; }
	.esg_ethics .se_policy_files{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.esg_ethics .card_body{ font-size: 1.6rem; }
}

@media screen and (max-width: 1000px){
	.se_doc{ gap: 60px; }
	.esg_se .w1740{ gap: 70px; }
	.se_block{ gap: 40px; }
	.se_bullets.two_cols{ grid-template-columns: minmax(0, 1fr); }
	.se_steps{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.esg_supply_chain .org_panel{ padding: 30px 0; }
	.esg_supply_chain .org_inner{ width: 90%; }
	.esg_supply_chain .org_list{ gap: 20px; }
	.esg_supply_chain .org_row,
	.esg_supply_chain .org_row_dept{ display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
	.esg_supply_chain .org_row::before,
	.esg_supply_chain .org_line,
	.esg_supply_chain .org_depts li::before,
	.esg_supply_chain .org_depts li:not(:last-child)::after{ display: none; }
	.esg_supply_chain .org_desc{ border-left: 4px solid #F49E00; }
	.esg_supply_chain .org_depts{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.esg_ethics .gov_grid{ grid-template-columns: minmax(0, 1fr); }
	.esg_ethics .chart_scroll{ width: 90%; }
	.esg_ethics .audit_cards{ gap: 20px; }
}

@media screen and (max-width: 768px){
	.se_modal{ padding: 10px; }
	.se_modal_box{ max-height: calc(100vh - 20px); max-height: calc(100svh - 20px); }
	.se_modal_pop{ padding: 24px 0 20px; border-radius: 12px; }
	.se_modal_title{ margin-bottom: 16px; padding: 0 16px; font-size: 2.2rem; }
	.se_modal_doc{ width: 92%; padding: 20px 16px; border-radius: 12px; }
	.se_modal_btns .esg_btn{ flex: 1 1 140px; padding: 0 10px; }
	.se_modal_btns{ gap: 10px; margin-top: 20px; }
	.se_doc{ gap: 40px; }
	.se_doc .doc_title{ font-size: 2.2rem; }
	.se_doc .doc_chapter{ gap: 24px; }
	.se_doc .doc_chapter_title{ font-size: 2rem; }
	.se_doc .doc_article h5{ font-size: 1.6rem; }
	.se_doc .doc_clauses li{ font-size: 1.5rem; line-height: 1.6; }

	.esg_se .w1740{ gap: 60px; }
	.se_head{ gap: 14px; }
	.se_title_lg{ font-size: 3.2rem; }
	.se_desc{ font-size: 1.6rem; line-height: 1.6; }
	.se_sub{ font-size: 2rem; }
	.se_note{ font-size: 1.4rem; }
	.se_bullets li,
	.se_table th,
	.se_table td{ font-size: 1.5rem; }
	.se_bullets{ gap: 8px; }
	.se_table thead th{ padding: 14px 6px; }
	.se_table tbody th{ padding: 14px 10px; }
	.se_table tbody td{ padding: 14px 12px; }
	.se_table tbody td.center{ padding: 14px 10px; }
	.se_table_method tbody th,
	.se_table_method tbody td{ padding: 14px 10px; }
	.se_table_two col:first-child,
	.esg_ethics .se_table_two col:first-child{ width: 28%; }
	.se_table_roles col:first-child{ width: 32%; }
	.se_table_roles tbody th{ padding: 14px 10px; }
	.se_steps{ grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.se_steps .step_body{ padding: 16px; font-size: 1.5rem; }
	.se_dl_box{ padding: 24px 0; border-radius: 12px; }
	.se_dl{ width: 90%; }
	.se_dl_row{ flex-direction: column; }
	.se_dl dt,
	.se_dl_wide dt{ flex: none; padding: 14px 16px; border-radius: 10px 10px 0 0; font-size: 1.5rem; }
	.se_dl dt br{ display: none; }
	.se_dl dd{ padding: 14px 16px; border-left: 1px solid var(--se_accent); border-top: 0; border-radius: 0 0 10px 10px; }
	.se_panel{ padding: 24px 0; border-radius: 12px; }
	.esg_supply_chain .org_panel{ border-radius: 12px; }
	.esg_supply_chain .org_node,
	.esg_supply_chain .org_depts li{ padding: 14px 8px; font-size: 1.5rem; }
	.esg_supply_chain .org_desc{ padding: 14px 16px; }
	.esg_supply_chain .org_desc_cols{ grid-template-columns: minmax(0, 1fr); gap: 0; }
	.esg_supply_chain .org_desc_cols .se_bullets + .se_bullets{ margin-top: 15px; padding-top: 15px; border-top: 1px dashed var(--se_line); }
	.esg_ethics .chart_panel{ padding: 30px 0; border-radius: 12px; }
	.esg_ethics .chart_scroll{ width: 94%; }
	.esg_ethics .chart_grid{ --se_cg: 12px; }
	.esg_ethics .node{ padding: 10px 3px; font-size: 1.3rem; line-height: 1.3; }
	.esg_ethics .node.outline{ min-height: 80px; }
	.esg_ethics .zone_label{ font-size: 1.2rem; }
	.esg_ethics .se_policy_files .name{ font-size: 1.6rem; }
	.esg_ethics .audit_cards{ grid-template-columns: minmax(0, 1fr); }
	.esg_ethics .card_head{ gap: 16px; padding: 24px 10px; border-radius: 12px 12px 0 0; }
	.esg_ethics .card_icon{ width: 80px; }
	.esg_ethics .card_head strong{ font-size: 1.8rem; }
	.esg_ethics .card_body{ padding: 18px 16px; border-radius: 0 0 12px 12px; font-size: 1.5rem; }
	.se_table_risk{ min-width: 760px; }
	.se_table_method{ min-width: 720px; }
}

@media screen and (max-width: 480px){
	.se_modal_title{ font-size: 2rem; }
	.se_doc .doc_clauses li{ font-size: 1.4rem; }
	.esg_se .w1740{ gap: 50px; }
	.se_title_lg{ font-size: 2.8rem; }
	.se_desc{ font-size: 1.5rem; }
	.se_sub{ font-size: 1.8rem; }
	.se_chip{ font-size: 1.3rem; }
	.se_bullets li,
	.se_table th,
	.se_table td{ font-size: 1.4rem; }
	.se_table tbody th{ padding: 12px 6px; }
	.se_table tbody td{ padding: 12px 10px; }
	.se_steps .step_title{ font-size: 1.6rem; }
	.esg_ethics .se_policy_files{ grid-template-columns: minmax(0, 1fr); }
	.esg_ethics .node{ font-size: 1.2rem; }
}
@media (max-width: 1280px){
	.esg_supply_chain .se_steps br{ display: none; }
	.se_table_method tbody th.nw{ white-space: normal; }
	.esg_ethics .se_table_two tbody th{ white-space: normal; }
}
.esg_ethics .se_note{ line-height: 1.3; }
