/* ===== 환경경영 전용 스타일 ===== */


.mo-br {
    display: none;
}

/* ── 공통 섹션 레이블 ── */
.env-section-label {
    display: block;
    font-size: 24px;
    font-weight: 700;
    color: #7A7A7A;
    line-height: 1.5;
    margin-bottom: 16px;
}

.env-section-label-white {
    display: block;
    font-size: 24px;
    font-weight: 700;
    color: #E9E9E9;
    line-height: 1.5;
    margin-bottom: 16px;
    text-align: center;
}

/* ── 섹션 reveal 애니메이션 (비활성) ── */
.env-reveal {
    opacity: 1;
    transform: none;
}


/* ══════════════════════════════════════
   ① 도입 섹션 (sticky scroll animation)
══════════════════════════════════════ */
.env-intro-outer {
    position: relative;
    background: #fff;
}

.env-intro-inner {
    position: relative;
    width: 100%;
    background: #fff;
    overflow: visible;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-bottom: 100px;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

.env-intro-outer,
.env-intro-text-section,
.env-intro-image-section {
    border: none !important;
    outline: none !important;
}

/* 환경경영 페이지 page-header 하단 선 제거 */
.env-intro-outer~*,
.page-header {
    border-bottom: none !important;
}

.env-intro-text-section {
    padding: 100px 30px 60px;
    text-align: center;
}

.env-intro-title {
    font-size: clamp(24px, 3.125vw, 60px);
    font-weight: 700;
    color: #E9E9E9;
    line-height: 1.4;
    white-space: nowrap;
    margin: 0;
    text-align: center;
}

.env-intro-title em {
    font-style: normal;
    color: #E9E9E9;
}

.env-intro-title .char {
    transition: color 0.4s ease;
}

.env-intro-title .char.active {
    color: #363636;
}

.env-intro-title em .char.active {
    color: #363636;
}

.env-intro-image-section {
    display: flex;
    justify-content: center;
    padding: 0 30px 0;
    width: 100%;
    box-sizing: border-box;
}

.env-intro-image-wrapper {
    width: 100%;
    max-width: 1860px;
    height: clamp(300px, 28.125vw, 540px);
    border-radius: 30px;
    overflow: hidden;
    position: relative;
    transition: none;
}

.env-intro-bg-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.env-intro-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
}

.env-intro-overlay-text {
    font-size: clamp(16px, 1.5625vw, 30px);
    font-weight: 500; /* 검수 0703: 상단 배경 위 오버레이 텍스트 Medium 일괄적용 */
    color: #FFFFFF;
    opacity: 0.9; /* 검수 0720: 히어로 오버레이 문구 투명도 90% 일괄 */
    text-align: center;
    line-height: 1.5;
    word-break: keep-all;
    margin: 0;
}

.env-intro-overlay-text--mobile {
    display: none;
}


/* ══════════════════════════════════════
   ② 환경방침 섹션
══════════════════════════════════════ */
.env-policy-section {
    padding: 100px 0;
    background: #fff;
}

.env-policy-section .env-section-label {
    margin-bottom: 16px;
}

.env-policy-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 40px;
}

.env-policy-heading {
    flex: 0 1 37.44%;
    max-width: 629px;
    font-size: clamp(30px, 2.61vw, 50px);
    font-weight: 700;
    color: #1B1B1B;
    line-height: 1.4;
    word-break: keep-all;
    margin: 0;
}

.env-policy-right {
    flex: 0 1 50%;
    max-width: 840px;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.env-policy-body {
    font-size: clamp(16px, 1.25vw, 24px);
    font-weight: 400;
    color: #4E4E4E;
    line-height: 1.5;
    word-break: keep-all;
    margin: 0;
    max-width: 100%;
}

.env-policy-ceo {
    font-family: 'Pretendard', sans-serif;
    font-weight: 700;   /* 검수 0730: 대표이사 bold (전 구간) */
    font-size: 24px;    /* 검수 0730: PC 24 (안전경영과 동일 24/16/16) */
    line-height: 150%;
    letter-spacing: 0%;
    color: #4E4E4E;
    margin-top: 0;
}

.env-policy-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 0;
    margin: 0;
    list-style: none;
    max-width: 100%;
    min-height: 152px;
    height: auto;
}

.env-policy-list li {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    font-size: clamp(16px, 1.15vw, 22px);
    font-weight: 400;
    color: #4E4E4E;
    line-height: 1.6;
    word-break: keep-all;
}

.env-policy-list li::before {
    content: '';
    display: inline-block;
    flex-shrink: 0;
    width: 6px;
    height: 6px;
    min-width: 6px;
    border-radius: 50%;
    background: #7A7A7A;
    margin-top: 0.65em;
}


/* ══════════════════════════════════════
   ③ 목표 섹션
══════════════════════════════════════ */
.env-goal-section {
    position: relative;
    overflow: hidden;
}

.env-goal-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.env-goal-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.env-goal-bg-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1;
}

.env-goal-content {
    position: relative;
    z-index: 2;
    padding-top: 100px;
    padding-bottom: 50px;
}

.env-goal-heading {
    font-size: clamp(30px, 2.61vw, 50px);
    font-weight: 700;
    color: #FFFFFF;
    line-height: 1.4;
    text-align: center;
    margin: 0 0 60px;
    word-break: keep-all;
}

/* 유리 패널 */
.env-goal-glass-box {
    position: relative;
    border-radius: 30px;
    padding: clamp(60px, 6.25vw, 120px) 90px clamp(40px, 5.21vw, 100px);
    display: flex;
    align-items: center;
    gap: 44px;
}

/* 태양광 에너지 레이블 래퍼 */
.env-goal-ellipse-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
}

/* 태양광 에너지 레이블 */
.env-goal-energy-label {
    position: absolute;
    bottom: calc(100% + 21px);
    left: 50%;
    transform: translateX(-50%);
    font-size: clamp(18px, 1.25vw, 24px);
    font-weight: 700;
    color: #FFFFFF;
    line-height: 1.5;
    white-space: nowrap;
    text-align: center;
}

/* 두 원을 감싸는 타원 */
.env-goal-ellipse {
    flex-shrink: 0;
    width: clamp(326px, 30.73vw, 590px);
    height: 320px;
    border: none;
    border-radius: 99999px;
    padding: 40px;
    box-sizing: border-box;
    overflow: visible;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 590 320'%3E%3Crect x='1' y='1' width='588' height='318' rx='159' fill='none' stroke='%23D3D3D3' stroke-width='2' stroke-dasharray='6 6'/%3E%3C/svg%3E");
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

.env-goal-circle-pair {
    display: flex;
    align-items: center;
    position: relative;
}

/* 겹침 영역 (vesica) - 기본 숨김 */
.env-goal-vesica {
    display: none;
}

.env-goal-circle {
    flex-shrink: 0;
    width: clamp(166px, 14.07vw, 270px);
    height: clamp(166px, 14.07vw, 270px);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(20px, 1.57vw, 30px);
    font-weight: 700;
    color: #FFFFFF;
    text-align: center;
    line-height: 1.5;
}

/* 화살표 */
.env-goal-arrow {
    flex-shrink: 0;
    width: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.env-goal-arrow img {
    width: 100%;
    height: auto;
    display: block;
}

/* 탄소배출절감 원 */
.env-goal-main-circle {
    flex-shrink: 0;
    width: clamp(174px, 16.67vw, 320px);
    height: clamp(174px, 16.67vw, 320px);
    border-radius: 50%;
    border: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 320'%3E%3Ccircle cx='160' cy='160' r='159' fill='none' stroke='%23D3D3D3' stroke-width='2' stroke-dasharray='6 6'/%3E%3C/svg%3E");
    background-size: 100% 100%;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(20px, 1.57vw, 30px);
    font-weight: 700;
    color: #FFFFFF;
    text-align: center;
    line-height: 1.5;
}

/* 효과 목록 */
.env-goal-effects {
    list-style: none;
    padding-left: 20px;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 30px;
    height: 320px;
    justify-content: center;
}

.env-goal-effects li {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: clamp(20px, 1.57vw, 30px);
    font-weight: 700;
    color: #FFFFFF;
    line-height: 1.5;
    white-space: nowrap;
}

.env-goal-effect-icon {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    display: block;
}


/* ══════════════════════════════════════
   ④ 태양광 발전소 시공 현황
══════════════════════════════════════ */
.env-solar-section {
    padding: 100px 0;
    background: #fff;
}

.env-solar-label-center {
    text-align: center;
    margin-bottom: 16px;
}

.env-solar-heading {
    font-size: clamp(30px, 2.61vw, 50px);
    font-weight: 700;
    color: #1B1B1B;
    line-height: 1.4;
    text-align: center;
    margin: 0 0 80px;
    word-break: keep-all;
}

.env-solar-infographic {
    display: flex;
    align-items: stretch;
    gap: 20px;
    flex-wrap: nowrap;
}

/* 지도 카드 */
.env-solar-map-card {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 1118px;
    height: 660px;
    background: #F1F3F7;
    border-radius: 30px;
    position: relative;
    overflow: hidden;
    padding: 60px 50px;
    box-sizing: border-box;
}

/* 한국 지도 이미지 */
.env-solar-map-img {
    position: absolute;
    left: 22.89%;
    top: 6.51%;
    width: 48.83%;
    height: 90.9%;
    object-fit: cover;
    display: block;
}

/* 핀 */
.env-solar-pin {
    position: absolute;
    display: flex;
    flex-direction: column;
    align-items: center;
    pointer-events: none;
    z-index: 2;
}

.env-solar-pin-bubble {
    background: #F27100;
    color: #FFFFFF;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.6;
    padding: 8px 12px;
    border-radius: 999px;
    white-space: nowrap;
    margin-bottom: -4px;
}

.env-solar-pin-tri {
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 8px solid #F27100;
}

.env-solar-pin-dot {
    width: 20px;
    height: 20px;
    border: 1px solid #F27100;
    border-radius: 50%;
    box-sizing: border-box;
    background: transparent;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 0 6px rgba(242, 113, 0, 0.4);
    margin-top: 4px;
}

.env-solar-pin-dot::after {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #F27100;
}

/* 시흥공장 핀: 절대 좌표 -> 백분율 */
.env-solar-pin-siheung {
    left: 41%;
    top: 25%;
    transform: translateX(-50%);
}

/* 포항공장 핀: 절대 좌표 -> 백분율 */
.env-solar-pin-pohang {
    left: 59%;
    top: 46%;
    transform: translateX(-50%);
}

/* 공장 정보 카드 (공통) */
.env-solar-fc {
    position: absolute;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border-radius: 12px;
    padding: 16px 24px;
    width: 100%;
    max-width: 290px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.env-solar-fc-name {
    font-size: 20px;
    font-weight: 500;
    color: #F27100;
    line-height: 1.6;
    white-space: nowrap;
}

.env-solar-fc-name-row {
    display: flex;
    align-items: center;
    gap: 4px;
    line-height: 1.6;
    white-space: nowrap;
}

.env-solar-fc-note {
    font-size: 16px;
    font-weight: 400;
    color: #7A7A7A;
}

.env-solar-fc-num {
    display: flex;
    align-items: flex-end;
    gap: 4px;
}

.env-solar-fc-val {
    font-size: clamp(20px, 1.88vw, 36px);
    font-weight: 700;
    color: #1B1B1B;
    line-height: 1.5;
}

.env-solar-fc-unit {
    font-size: 18px;
    font-weight: 700;
    color: #4E4E4E;
    line-height: 1.6;
    padding-bottom: 4px;
}

/* 카드 전체 컨테이너 (데스크탑: 투명 래퍼) */
.env-solar-fc-all-container {
    display: contents;
}

/* 카드1 래퍼 (데스크탑: 투명 래퍼) */
.env-solar-fc-card1 {
    display: contents;
}

/* 모바일 전용 구분선 (데스크탑: 숨김) */
.env-solar-card1-divider {
    display: none;
}

/* 모바일 전용 시흥/포항 섹션 (데스크탑: 숨김) */
.env-solar-siheung-mo {
    display: none;
}

.env-solar-pohang-mo {
    display: none;
}

/* 시흥공장 A동 카드 위치 -> 좌상단 */
.env-solar-fc-siheung {
    top: 60px;
    left: 50px;
}

/* 포항공장 카드 그룹 */
.env-solar-fc-group {
    position: absolute;
    display: flex;
    flex-direction: column;
    gap: 16px;
    width: 100%;
    max-width: 290px;
}

.env-solar-fc-group .env-solar-fc {
    position: relative;
    width: 100%;
}

/* 포항공장 그룹 -> 우상단 */
.env-solar-fc-pohang-group {
    right: 50px;
    top: 60px;
}

/* 총 설비량 카드 -> 우하단 */
.env-solar-fc.env-solar-fc-total {
    right: 50px;
    bottom: 60px;
    top: auto;
}

.env-solar-fc-total-label {
    font-size: 20px;
    font-weight: 700;
    color: #F27100;
    line-height: 1.5;
    margin-bottom: 16px;
}

.env-solar-fc-total-num {
    display: flex;
    align-items: flex-end;
    gap: 6px;
}

.env-solar-fc-total-val {
    font-size: clamp(30px, 2.61vw, 50px);
    font-weight: 700;
    color: #1B1B1B;
    line-height: 1.4;
}

.env-solar-fc-total-unit {
    font-size: 20px;
    font-weight: 700;
    color: #4E4E4E;
    padding-bottom: 10px;
}

/* 화살표 (가로, 데스크탑/태블릿) */
.env-solar-arrow-h {
    flex-shrink: 0;
    width: 28px;          /* 검수 0720: 세로 '>' 화살표(24~28 폭, 높이 160) */
    align-self: center;
}

.env-solar-arrow-h img {
    width: 100%;
    height: auto;
    display: block;
}

/* 모바일 화살표 */
.env-solar-mob-arrow {
    display: none;
}

/* 결과 카드 */
.env-solar-result-card {
    flex: 0 0 auto;
    background: #269113;
    border-radius: 30px;
    padding: 50px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 60px;
}

.env-solar-result-item {
    display: flex;
    flex-direction: column;
    gap: 20px;
    flex: 1;
    justify-content: flex-start;
}

.env-solar-result-item:last-child {
    justify-content: flex-end;
}

.env-solar-result-divider {
    flex-shrink: 0;
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.3);
}

.env-solar-result-icon {
    width: 50px;
    height: 50px;
    display: block;
    flex-shrink: 0;
}

.env-solar-result-label {
    font-size: 24px;
    font-weight: 400;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.5;
}

.env-solar-result-num {
    font-size: clamp(30px, 3.125vw, 60px);
    font-weight: 700;
    color: #FFFFFF;
    line-height: 1.4;
}

.env-solar-result-unit {
    font-size: 24px;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.85);
    margin-left: 16px;
    white-space: nowrap;
}

/* 주석 (하단, 우측 정렬) */
.env-solar-footnote {
    font-size: 24px;
    font-weight: 400;
    color: rgba(122, 122, 122, 0.8);
    line-height: 1.5;
    text-align: right;
    margin: 20px 0 0;
    word-break: keep-all;
}


/* ══════════════════════════════════════
   ⑤ 인증현황 섹션
══════════════════════════════════════ */
.env-cert-section {
    padding: 100px 0;
    background: #fff;
}

.env-cert-header {
    text-align: center;
    margin-bottom: 80px;
}

.env-cert-header .env-section-label {
    text-align: center;
    margin-bottom: 16px;
}

.env-cert-heading {
    font-size: clamp(30px, 2.61vw, 50px);
    font-weight: 700;
    color: #1B1B1B;
    line-height: 1.4;
    margin: 0;
    word-break: keep-all;
    text-align: center;
}

.env-cert-cards {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.env-cert-card-wrap {
    position: relative;
    width: 552px;
    height: 650px;
}

.env-cert-card-back {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 416px;
    height: 580px;
    background: #F1F3F7;
    border-radius: 16px;
    transform: translate(-50%, -50%) rotate(11.38deg);
    z-index: 0;
}

.env-cert-card-front {
    position: absolute;
    left: calc(50% - 3.5px);
    top: calc(50% + 9.9px);
    width: 413px;
    height: 585px;
    border: 1px solid #D3D3D3;
    border-radius: 16px;
    transform: translate(-50%, -50%);
    z-index: 1;
    overflow: hidden;
}

.env-cert-card-front img {
    width: 100%;
    height: 100%;
    display: block;
}

.env-cert-caption {
    font-size: 20px;
    font-weight: 500;
    color: #A7A7A7;
    text-align: center;
    margin: 0;
    line-height: 1.6;
}


/* 태블릿 이하에서 태양광 인포그래픽 세로 배치 — 1439px 미디어쿼리에서 처리 */


/* ══════════════════════════════════════
   TABLET (768px ~ 1439px)
══════════════════════════════════════ */
@media (min-width: 768px) and (max-width: 1439px) {
    /* 히어로 이미지 오버레이 안쪽 여백 20 (태블릿) */
    .env-intro-overlay { padding: 20px; box-sizing: border-box; }

    .env-section-label,
    .env-section-label-white {
        font-size: clamp(18px, 1.6vw, 20px);
    }

    /* 도입 — 검수 0703: 태블릿 도입부 통일 (타이틀 최소 30px, 좌우 여백 20px) */
    .env-intro-title {
        font-size: clamp(30px, 3.125vw, 60px);
    }

    .env-intro-text-section {
        padding-left: 20px;
        padding-right: 20px;
    }

    .env-intro-image-section {
        padding-left: 20px;
        padding-right: 20px;
    }

    .env-intro-image-wrapper {
        height: clamp(300px, 35vw, 500px);
        border-radius: 20px;
    }

    .env-intro-overlay-text {
        font-size: 20px;
    }

    /* 환경방침 */
    .env-policy-section {
        padding: 80px 0;
    }

    .env-policy-row {
        flex-direction: column;
        align-items: stretch;
        gap: 30px;
    }

    .env-policy-heading {
        flex: none;
        width: 100%;
        max-width: none;
        font-size: clamp(30px, 2.6vw, 50px);
    }

    .env-policy-right {
        width: 100%;
        max-width: none;
        gap: 30px;
    }

    .env-policy-body {
        font-size: clamp(16px, 1.25vw, 24px);
        max-width: 100%;
    }

    .env-policy-list {
        max-width: 100%;
    }

    .env-policy-list li {
        font-size: clamp(16px, 1.15vw, 22px);
    }

    /* 목표 */
    .env-goal-content {
        padding-top: 80px;
        padding-bottom: 40px;
    }

    .env-goal-heading {
        font-size: clamp(30px, 2.6vw, 50px);
        margin-bottom: 50px;
    }

    .env-goal-glass-box {
        flex-direction: column;
        align-items: center;
        padding: clamp(60px, 8vw, 100px) 20px clamp(40px, 8vw, 80px);
        gap: 30px;
    }

    .env-goal-energy-label {
        position: static;
        transform: none;
        font-size: clamp(18px, 1.25vw, 24px);
        text-align: center;
        margin-bottom: 21px;
    }

    .env-goal-ellipse {
        width: clamp(326px, 30.7vw, 590px);
        height: auto;
        min-height: 198px;
        padding: 16px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 326 198' preserveAspectRatio='none'%3E%3Crect x='1' y='1' width='324' height='196' rx='99' fill='none' stroke='%23E9E9E9' stroke-width='1' stroke-dasharray='6 6'/%3E%3C/svg%3E");
        background-size: 100% 100%;
        background-repeat: no-repeat;
    }

    .env-goal-circle {
        width: clamp(166px, 14vw, 270px);
        height: clamp(166px, 14vw, 270px);
        font-size: clamp(20px, 1.56vw, 30px);
    }

    .env-goal-circle+.env-goal-circle {
        margin-left: -38px;
    }

    .env-goal-arrow {
        width: clamp(20px, 2.5vw, 32px);
        transform: rotate(90deg);
    }

    .env-goal-main-circle {
        width: clamp(174px, 16.6vw, 320px);
        height: clamp(174px, 16.6vw, 320px);
        font-size: clamp(20px, 1.56vw, 30px);
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 174 174'%3E%3Ccircle cx='87' cy='87' r='86' fill='none' stroke='%23E9E9E9' stroke-width='1' stroke-dasharray='6 6'/%3E%3C/svg%3E");
    }

    .env-goal-effects {
        gap: 16px;
        height: auto;
        padding-left: 0;
        align-items: center;
    }

    .env-goal-effects li {
        font-size: clamp(20px, 1.56vw, 30px);
        gap: 8px;
    }

    .env-goal-effect-icon {
        width: 24px;
        height: 24px;
    }

    /* 태양광 */
    .env-solar-section {
        padding: 80px 0;
    }

    .env-solar-heading {
        font-size: clamp(22px, 3vw, 36px);
        margin-bottom: 60px;
    }

    .env-solar-infographic {
        flex-direction: column;
        align-items: center;
        gap: 20px;
    }

    .env-solar-map-card {
        width: 100%;
        max-width: none;
        height: 650px;
        flex: none;
        padding: 40px 30px;
        box-sizing: border-box;
    }

    .env-solar-fc-siheung {
        top: 40px;
        left: 30px;
        bottom: auto;
        right: auto;
        width: 100%;
        max-width: 280px;
    }

    .env-solar-fc-pohang-group {
        right: 30px;
        top: 40px;
        left: auto;
        width: 100%;
        max-width: 280px;
    }

    .env-solar-fc.env-solar-fc-total {
        right: 30px;
        bottom: 40px;
        left: auto;
        top: auto;
        width: 100%;
        max-width: 280px;
    }

    .env-solar-fc-val {
        font-size: clamp(24px, 3vw, 32px);
    }

    .env-solar-fc-total-val {
        font-size: clamp(30px, 4vw, 44px);
    }

    .env-solar-arrow-h {
        display: none;
    }

    .env-solar-mob-arrow {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .env-solar-mob-arrow img {
        width: clamp(100px, 45vw, 160px);   /* 검수 0720: 가로 'v' 화살표(최대 160) */
        height: auto;
        display: block;
    }

    .env-solar-result-card {
        width: 100%;
        height: auto;
        flex-direction: row;
        border-radius: 20px;
        padding: 40px;
        gap: 0;
        align-items: center;
    }

    .env-solar-result-item {
        flex: 1;
        padding: 0 clamp(16px, 3vw, 32px);
        justify-content: flex-start;
        gap: 12px;
    }

    .env-solar-result-item:first-child {
        padding-left: 0;
    }

    .env-solar-result-divider {
        width: 1px;
        height: 80px;
        flex-shrink: 0;
    }

    .env-solar-result-icon {
        width: 36px;
        height: 36px;
    }

    .env-solar-result-num {
        font-size: clamp(28px, 4vw, 48px);
    }

    .env-solar-result-label {
        font-size: clamp(14px, 1.6vw, 20px);
    }

    .env-solar-result-unit {
        font-size: clamp(14px, 1.6vw, 18px);
    }

    .env-solar-footnote {
        font-size: clamp(14px, 1.6vw, 20px);
    }

    /* 인증 */
    .env-cert-section {
        padding: 80px 0;
    }

    .env-cert-heading {
        font-size: clamp(26px, 3vw, 40px);
    }

    .env-cert-card-wrap {
        width: 420px;
        height: 520px;
    }

    .env-cert-card-back {
        width: 320px;
        height: 450px;
    }

    .env-cert-card-front {
        width: 320px;
        height: 454px;
    }
}


/* ══════════════════════════════════════
   MOBILE (≤767px)
══════════════════════════════════════ */
@media (max-width: 767px) {


    .mo-br {
        display: block;
    }

    .env-section-label,
    .env-section-label-white {
        font-size: 18px;
        height: 29px;
        margin-bottom: 0;
    }

    .env-policy-section .env-section-label {
        margin-bottom: 0;
    }

    .env-cert-header .env-section-label {
        margin-bottom: 0;
    }

    /* 도입 */
    .env-intro-outer {
        /* 자연 높이 — 스크롤 잠금은 JS 처리 */
    }

    .env-intro-inner {
        padding-bottom: 0;
    }

    .env-intro-text-section {
        padding: 40px 16px 24px;
    }

    .env-intro-title {
        font-size: 24px;
        height: auto;
        text-align: center;
        white-space: normal;
        word-break: keep-all;
    }

    .env-intro-image-section {
        padding: 0 16px 40px;
    }

    .env-intro-image-wrapper {
        width: 100%;
        height: 448px;
        border-radius: 16px;
    }

    .env-intro-overlay-text {
        font-size: 18px;   /* 검수 0720: 모바일 18px */
        line-height: 1.5;
        width: 100%;
        max-width: none;
        padding: 0 24px;
    }

    .env-intro-overlay-text--desktop {
        display: none;
    }

    .env-intro-overlay-text--mobile {
        display: block;
    }

    /* 환경방침 */
    .env-policy-section {
        padding: 40px 0;
    }

    .env-policy-row {
        flex-direction: column;
        gap: 30px;
    }

    .env-policy-heading {
        flex: none;
        width: 100%;
        max-width: none;
        font-size: 30px;
    }

    .env-policy-right {
        width: 100%;
        max-width: none;
        gap: 20px;
    }

    .env-policy-body {
        font-size: 16px;
        height: auto;
        line-height: 1.6;
        max-width: 100%;
    }

    .env-policy-ceo {
        font-size: 16px;
        line-height: 160%;
        margin-top: 0;
    }

    .env-policy-list {
        max-width: 100%;
        height: auto;
    }

    .env-policy-list li {
        font-size: 16px;
        gap: 4px;
        height: auto;
    }

    .env-policy-list+.env-policy-body {
        height: auto;
    }

    .env-policy-list li:first-child {
        height: auto;
    }

    .env-policy-list li:not(:first-child) {
        height: auto;
    }

    .env-policy-list li::before {
        width: 4px;
        height: 4px;
        min-width: 4px;
        margin-top: 11px;
    }

    /* 목표 */
    .env-goal-content {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .env-goal-heading {
        font-size: 30px;
        line-height: 1.5;
        margin-top: 8px;
        margin-bottom: 0;
    }

    .env-goal-glass-box {
        flex-direction: column;
        align-items: center;
        padding: 60px 20px 40px;
        gap: 12px;
    }

    .env-goal-energy-label {
        position: static;
        transform: none;
        font-size: 18px;
        height: 29px;
        text-align: center;
        margin-bottom: 21px;
    }

    .env-goal-ellipse {
        width: 326px;
        height: auto;
        min-height: 198px;
        padding: 16px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 326 198' preserveAspectRatio='none'%3E%3Crect x='1' y='1' width='324' height='196' rx='99' fill='none' stroke='%23E9E9E9' stroke-width='1' stroke-dasharray='6 6'/%3E%3C/svg%3E");
        background-size: 100% 100%;
        background-repeat: no-repeat;
    }

    .env-goal-circle {
        width: 166px;
        height: 166px;
        font-size: 20px;
        flex-shrink: 0;
    }

    .env-goal-circle+.env-goal-circle {
        margin-left: -38px;
    }

    /* vesica: 겹침 영역 표현 */
    .env-goal-vesica {
        display: block;
        position: absolute;
        width: 166px;
        height: 166px;
        border-radius: 50%;
        overflow: hidden;
        left: 128px;
        top: 0;
        z-index: 2;
        pointer-events: none;
    }

    .env-goal-vesica::after {
        content: '';
        position: absolute;
        width: 166px;
        height: 166px;
        border-radius: 50%;
        left: -128px;
        top: 0;
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
    }

    .env-goal-arrow {
        width: 12px;
        transform: rotate(90deg);
    }

    .env-goal-main-circle {
        width: 174px;
        height: 174px;
        font-size: 20px;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 174 174'%3E%3Ccircle cx='87' cy='87' r='86' fill='none' stroke='%23E9E9E9' stroke-width='1' stroke-dasharray='6 6'/%3E%3C/svg%3E");
    }

    .env-goal-effects {
        height: auto;
        gap: 16px;
        padding-left: 0;
        align-items: center;
        padding-top: 10px;
    }

    .env-goal-effects li {
        font-size: 20px;
        gap: 8px;
    }

    .env-goal-effect-icon {
        width: 24px;
        height: 24px;
    }

    /* 태양광 */
    .env-solar-section {
        padding: 40px 0;
    }

    .env-solar-heading {
        font-size: 30px;
        margin-top: 8px;
        margin-bottom: 0;
    }

    .env-solar-infographic {
        flex-direction: column;
        gap: 20px;
        margin-top: 40px;
    }

    /* 지도 카드 */
    .env-solar-map-card {
        width: 100%;
        height: auto;
        border-radius: 16px;
        position: relative;
        padding: 202px 18px 24px;
        box-sizing: border-box;
        flex: none;
    }

    .env-solar-map-img {
        position: absolute;
        top: 15px;
        left: 50%;
        transform: translateX(-50%);
        width: 227px;
        height: 249px;
        object-fit: cover;
    }

    .env-solar-pin-bubble {
        font-size: 14px;
        padding: 4px 8px;
    }

    .env-solar-pin-dot {
        width: 12px;
        height: 12px;
        border: 1px solid #F27100;
        box-shadow: 0 0 3px rgba(242, 113, 0, 0.4);
        border-radius: 50%;
        box-sizing: border-box;
        background: transparent;
        position: relative;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .env-solar-pin-dot::after {
        content: '';
        display: block;
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #F27100;
    }

    /* 핀 위치 (가운데 정렬된 지도 이미지 기준) */
    .env-solar-pin-siheung {
        left: calc(50% - 33.5px);
        top: 47px;
        transform: translateX(-50%);
    }

    .env-solar-pin-pohang {
        left: calc(50% + 55.5px);
        top: 109px;
        transform: translateX(-50%);
    }

    /* ── 카드 컨테이너 ── */
    .env-solar-fc-all-container {
        display: flex;
        flex-direction: column;
        gap: 10px;
        position: relative;
        width: 100%;
        z-index: 3;
    }

    /* ── 카드1: 시흥+포항 통합 흰 카드 (Figma: bg-white rounded-12px p-14px flex-col gap-24px) ── */
    .env-solar-fc-card1 {
        display: flex;
        flex-direction: column;
        gap: 24px;
        background: #ffffff;
        border-radius: 12px;
        padding: 14px;
        box-sizing: border-box;
        width: 100%;
    }

    /* 모바일 구분선 */
    .env-solar-card1-divider {
        display: block;
        width: 100%;
        height: 1px;
        background: #E9E9E9;
        margin: 0;
    }

    /* 데스크탑 전용 시흥/포항 요소: 모바일에서 숨김 */
    .env-solar-fc-card1 .env-solar-fc-siheung {
        display: none;
    }

    .env-solar-fc-card1 .env-solar-fc-pohang-group {
        display: none;
    }

    /* ── 모바일 전용: 시흥공장 섹션 ── */
    .env-solar-siheung-mo {
        display: flex;
        flex-direction: column;
        gap: 6px;
    }

    .env-solar-siheung-mo-factory {
        font-size: 16px;
        font-weight: 500;
        color: #F27100;
        line-height: 1.6;
        height: 26px;
    }

    .env-solar-siheung-mo-row {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
    }

    .env-solar-siheung-mo-dong {
        font-size: 16px;
        font-weight: 700;
        color: #4E4E4E;
        line-height: 1.6;
    }

    /* ── 모바일 전용: 포항공장 섹션 ── */
    .env-solar-pohang-mo {
        display: flex;
        flex-direction: column;
        gap: 6px;
    }

    .env-solar-pohang-mo-header {
        font-size: 16px;
        font-weight: 500;
        color: #F27100;
        line-height: 1.6;
    }

    .env-solar-pohang-mo-rows {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .env-solar-pohang-mo-row {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
    }

    .env-solar-pohang-mo-dong {
        font-size: 16px;
        font-weight: 700;
        color: #4E4E4E;
        line-height: 1.6;
    }

    .env-solar-pohang-mo-shin {
        display: flex;
        flex-direction: column;
        gap: 2px;
    }

    .env-solar-pohang-mo-note {
        font-size: 14px;
        font-weight: 400;
        color: #7A7A7A;
        line-height: 1.5;
    }

    /* ── 카드2: 총 설비량 (Figma: bg-white rounded-12px px-14px py-12px flex-row justify-between) ── */
    .env-solar-fc.env-solar-fc-total {
        position: static;
        left: auto;
        top: auto;
        bottom: auto;
        right: auto;
        width: 100%;
        max-width: none;
        height: 69px;
        background: #ffffff;
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
        border-radius: 12px;
        padding: 12px 14px;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: 4px;
    }

    /* 폰트 사이즈 */
    .env-solar-fc-val {
        font-size: 20px;
    }

    .env-solar-fc-unit {
        font-size: 16px;
        padding-bottom: 0;
    }

    .env-solar-fc-num {
        align-items: flex-end;
    }

    .env-solar-fc-name {
        font-size: 16px;
    }

    .env-solar-fc-total-val {
        font-size: 30px;
    }

    .env-solar-fc-total-label {
        font-size: 16px;
        margin-bottom: 0;
        display: flex;
        align-items: center;
    }

    .env-solar-fc-total-unit {
        font-size: 18px;
        padding-bottom: 6px;
    }

    /* 모바일 화살표 */
    .env-solar-arrow-h {
        display: none;
    }

    .env-solar-mob-arrow {
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0;
    }

    .env-solar-mob-arrow img {
        width: clamp(100px, 45vw, 160px);   /* 검수 0720: 가로 'v' 화살표(최대 160) */
        height: auto;
        display: block;
    }

    /* 결과 카드 */
    .env-solar-result-card {
        width: 100%;
        height: auto;
        border-radius: 16px;
        padding: 20px;
        gap: 22px;
    }

    .env-solar-result-item {
        padding: 0;
        gap: 8px;
        flex: none;
    }

    .env-solar-result-icon {
        width: 30px;
        height: 30px;
    }

    .env-solar-result-label {
        font-size: 14px;
    }

    .env-solar-result-num {
        font-size: 30px;
        height: auto;
    }

    .env-solar-result-unit {
        font-size: 16px;
        margin-left: 6px;
    }

    .env-solar-footnote {
        font-size: 14px;
        margin-top: 10px;
    }

    /* 인증현황 */
    .env-cert-section {
        padding: 40px 0;
    }

    .env-cert-header {
        margin-bottom: 40px;
    }

    .env-cert-cards {
        gap: 15px;
        padding: 0 40px;
    }

    .env-cert-heading {
        font-size: 30px;
        line-height: 1.5;
        margin-top: 8px;
    }

    .env-cert-card-wrap {
        width: 195px;
        height: 276px;
    }

    .env-cert-card-back {
        width: 196px;
        height: 274px;
        border-radius: 8px;
    }

    .env-cert-card-front {
        width: 195px;
        height: 276px;
        border-radius: 8px;
        left: calc(50% - 8.38px);
        top: calc(50% + 4.61px);
    }

    .env-cert-caption {
        font-size: 16px;
    }
}

/* ── 태블릿: border-radius 30px → 20px ── */
@media (min-width: 768px) and (max-width: 1439px) {
    .env-policy-ceo {
        font-size: 16px; /* 검수 0730: 태블릿 16 (안전경영과 동일 24/16/16) */
    }

    .env-intro-image-wrapper,
    .env-goal-glass-box,
    .env-solar-map-card,
    .env-solar-result-card {
        border-radius: 20px;
    }
}