/* ===== PRESS 섹션 전용 스타일 ===== */
#atc03.press-section {
    background: #fff !important;
    padding: 80px 0 !important;
}

.press_wrap {
    max-width: 100vw; /* 우측 배너를 화면 오른쪽 구석까지 */
    width: 100vw;
    margin: 0; /* 가운데 정렬 제거 */
    /* 우측 배너가 430px로 늘어난만큼 좌측 여백을 줄여 카드 영역을 좌측으로 이동 */
    padding-left: clamp(10px, calc((100vw - 1400px) / 2), 40px);
    padding-right: 0; /* 오른쪽은 구석까지 붙임 */
    display: grid;
    grid-template-columns: 1fr 430px; /* 좌:콘텐츠, 우:배너 고정 430px */
    gap: 40px; /* 전체 레이아웃 간격 축소 */
    align-items: start;
}

.press_left { 
    margin-top: 20px; 
    max-width: 1400px; 
}

.press_title {
    font-family: "Times New Roman", Georgia, serif;
    font-size: 56px;
    font-weight: 800;
    letter-spacing: 0.02em;
    color: #111;
    margin: 0 0 50px; /* NEWS 아래 마진 50px */
    text-align: left;
}

.press_list {
    display: grid;
    grid-template-columns: 300px repeat(3, 340px); /* 인트로 + 우측 3개 카드(340px) */
    gap: 30px; /* 카드 섹션 간격 축소 */
    justify-content: start; /* 좌측 정렬 */
}

.press_intro {
    width: 300px;
    height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    margin-top: 100px; /* 카드보다 약간 아래로 */
    margin-left: 35px; /* 인트로 블록을 살짝 우측으로 이동 */
}

.intro_title {
    font-size: 32px;
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: 0.02em;
    color: #111;
    margin: 0 0 14px;
}

.intro_sub {
    font-size: 16px;
    color: #444;
    line-height: 1.5;
    margin: 0 0 18px;
}

.intro_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 150px;
    height: 44px;
    border: 1px solid #ddd;
    border-radius: 22px;
    color: #666;
    text-decoration: none;
    font-size: 13px;
}

.press_card {
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
    width: 340px; /* 카드 폭 고정 */
    gap: 10px;
}

.press_card .thumb {
    width: 340px;
    height: 370px; /* 이미지 영역 고정 340x370 */
    overflow: hidden;
    border-radius: 8px;
    background: #f2f2f2;
}

.press_card .thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.press_card .meta {
    margin-top: 0;
}

.press_headline {
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 18px; /* 제목-내용 간격 살짝 확대 */
    white-space: nowrap;           /* 한 줄만 표기 */
    overflow: hidden;              /* 넘침 숨김 */
    text-overflow: ellipsis;       /* 말줄임표 */
}

.press_excerpt {
    font-size: 15px;
    color: #444;
    margin: 0 0 20px; /* 내용-날짜 간격 살짝 확대 */
    display: -webkit-box;          /* 2줄 말줄임 */
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.press_date {
    font-size: 12px;
    color: #9b9b9b; /* 회색, 좌하단 느낌 */
}

.press_right {
    width: 430px;
    height: 100vh; /* 네이게이터 포함 섹션 전체 높이 */
    margin-top: -80px;  /* 섹션 패딩 보정 - 상단 */
    margin-bottom: -80px; /* 섹션 패딩 보정 - 하단 */
    align-self: stretch;
    justify-self: end; /* 화면 오른쪽 구석까지 붙임 */
}

.press_banner {
    width: 430px;
    height: 100%;
    min-height: 0;
    border-radius: 12px;
    background: #000 center/cover no-repeat; /* s_3.jpg가 없을 경우 배경색만 표시 */
}

#pressCards.press_cards_container {
    grid-column: 2 / span 3;
    display: grid;
    grid-template-columns: repeat(3, 340px); /* 카드 폭 변경 반영 */
    gap: 30px; /* 카드들 사이 간격 축소 */
}

#atc03.press-section .press_intro .intro_nav {
    display: flex !important; /* 이전 숨김 규칙 무력화 */
    gap: 20px; /* 버튼 커짐에 맞춰 간격 확대 */
    align-items: center;
    margin-top: 16px;
}

#atc03.press-section .press_intro .nav_btn {
    width: 56px;   /* 버튼 크게 */
    height: 56px;  /* 버튼 크게 */
    border: 1.5px solid #d0d0d0;
    border-radius: 50%;
    background: #fff;
    color: #333;
    font-size: 28px; /* 아이콘 크기 증가 */
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .2s ease;
}

#atc03.press-section .press_intro .nav_btn:hover {
    border-color: #999;
    color: #111;
}

#atc03.press-section .press_intro .nav_btn:focus { outline: none; }
#atc03.press-section .press_intro .nav_btn:focus-visible { box-shadow: 0 0 0 3px rgba(0,0,0,.08); }

/* 모바일에서 터치 영역 유지 */
@media (max-width: 900px) {
    #atc03.press-section .press_intro .nav_btn {
        width: 48px;
        height: 48px;
        font-size: 24px;
    }
}

/* 반응형 */
@media (max-width: 1200px) {
    .press_list { grid-template-columns: repeat(2, 340px); gap: 24px; }
    #pressCards.press_cards_container {
        grid-column: 1 / span 2; /* 2열 레이아웃에서는 전체 폭 */
        grid-template-columns: repeat(2, 340px);
        gap: 24px;
    }
}

@media (max-width: 1024px) {
  /* 섹션3 모바일 정책: 제목 + 카드 1개 + 좌우 네비만 표시 */
  #atc03.press-section { padding: 56px 0 !important; position: relative; }

  /* 우측 배너 숨김 */
  .press_wrap { grid-template-columns: 1fr; padding-left: 12px; padding-right: 12px; }
  .press_right { display: none !important; }

  /* 제목은 그대로 노출 (약간 축소) */
  .press_title { font-size: 32px; margin: 0 0 16px; text-align: left; }

  /* 리스트는 단일 열 */
  .press_list { grid-template-columns: 1fr; gap: 16px; position: relative; }

  /* 인트로 콘텐츠는 숨기되, 네비만 사용 */
  .press_intro { width: 0; height: 0; margin: 0; overflow: visible; }
  .press_intro > *:not(.intro_nav) { display: none !important; }

  /* 네비 컨테이너를 섹션 전체에 오버레이로 배치 */
  #atc03.press-section .press_intro .intro_nav {
    display: block !important;
    position: absolute;
    inset: 0;               /* 섹션 전체 덮기 */
    z-index: 5;
    pointer-events: none;   /* 컨테이너는 이벤트 막고 버튼만 통과 */
  }

  /* 좌/우 네비 버튼을 섹션 중앙 좌우에 배치 */
  #atc03.press-section .press_intro .nav_btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 6;
    pointer-events: auto;   /* 버튼은 클릭 가능 */
  }
  #atc03.press-section .press_intro .nav_btn.prev { left: 8px; }
  #atc03.press-section .press_intro .nav_btn.next { right: 8px; }
}

@media (max-width: 420px) {
  .press_title { font-size: 28px; }
  .press_card { max-width: 90vw; }
  .press_headline { font-size: 15px; }
  .press_excerpt { font-size: 12.5px; }
}

@media (max-width: 900px) {
    .press_wrap { grid-template-columns: 1fr; gap: 30px; }
    .press_right { width: 100%; height: 260px; margin: 0; }
    .press_banner { width: 100%; height: 100%; }
    .press_title { font-size: 42px; }
    .press_list { grid-template-columns: 1fr; gap: 30px; }
    #pressCards.press_cards_container {
        grid-column: 1 / -1;
        grid-template-columns: 1fr; /* 모바일 1열 */
        gap: 20px;
    }
    .press_card { width: 100%; }
    .press_card .thumb { width: 100%; height: auto; aspect-ratio: 340/370; }
    .press_intro { margin-left: 0; } /* 모바일에서는 원위치 */
}

@media (max-width: 360px) {
  .press_title { font-size: 26px; }
  .press_card { max-width: 92vw; }
  .press_headline { font-size: 14.5px; }
  .press_excerpt { font-size: 12px; }
}