/* ===== About 페이지 v2 — 서비스/전문가 소개와 동일 토큰 ===== */
/* Pretendard: header.php ($meditrans_about_v2) */

html:has(body.about-page-v2-body) {
  overflow-x: hidden;
  max-width: 100%;
}

body.site-subpage.about-page-v2-body {
  font-family: 'Pretendard Variable', 'Pretendard', -apple-system, BlinkMacSystemFont, sans-serif;
  background: #ffffff;
  color: #0a0a0a;
  overflow-x: hidden;
  max-width: 100%;
}

body.about-page-v2-body #wrap.about-page-v2,
body.about-page-v2-body #wrap.no-side-panel-layout.about-page-v2 {
  overflow-x: hidden;
  width: 100%;
  max-width: 100%;
  background: #ffffff;
}

body.about-page-v2-body #wrap.about-page-v2 > .container,
body.about-page-v2-body #wrap.no-side-panel-layout.about-page-v2 > .container {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-width: 0;
  box-sizing: border-box;
}

body.about-page-v2-body #wrap.about-page-v2 .container > .main_sec,
body.about-page-v2-body #wrap.no-side-panel-layout.about-page-v2 .container > .main_sec {
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  box-sizing: border-box;
  background: transparent;
}

.about-page-v2 .side-fixed {
  display: none !important;
}

.about-v2 {
  --about-v2-primary: #40798c;
  --about-v2-ink: #0a0a0a;
  --about-v2-muted: rgba(9, 9, 11, 0.75);
  --about-v2-alt: rgba(9, 9, 11, 0.5);
  --about-v2-line: rgba(113, 113, 123, 0.22);
  --about-v2-pad-x: clamp(20px, 5vw, 80px);
  --about-v2-content: 1100px;
  position: relative;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: 0 0 clamp(72px, 8vw, 120px);
  overflow: visible;
}

.about-v2__glow {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 320px;
  background: linear-gradient(180deg, #70a9a1 0%, #ffffff 100%);
  opacity: 0.3;
  filter: blur(50px);
  pointer-events: none;
  z-index: 0;
}

.about-v2__hero {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: clamp(48px, 8vw, 100px) 24px clamp(36px, 5vw, 64px);
  box-sizing: border-box;
  text-align: center;
  background: transparent !important;
  border-radius: 0 !important;
  color: inherit !important;
}

/* 레거시 .hero-section 그라데이션 박스 무력화 */
.about-page-v2 .hero-section.about-v2__hero,
.about-page-v2 .about-v2__hero.hero-section,
.about-page-v2 .about-v2__hero.latam-hero,
.about-page-v2 .about-v2__hero.press-hero {
  background: transparent !important;
  color: inherit !important;
  border-radius: 0 !important;
  margin-bottom: 0 !important;
  box-shadow: none !important;
}

.about-v2__eyebrow,
.about-page-v2 .about-v2__hero .latam-hero-eyebrow,
.about-page-v2 .about-v2__hero .press-hero-eyebrow {
  display: inline-block;
  margin: 0 0 0.35rem;
  padding: 0.35rem 0.9rem;
  border: 0.8px solid var(--about-v2-line);
  border-radius: 799px;
  background: #ffffff;
  font-size: 0.875rem;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: var(--about-v2-alt);
  opacity: 1;
}

.about-v2__title,
.about-page-v2 .about-v2__hero h1 {
  margin: 0;
  width: 100%;
  font-family: 'Pretendard Variable', 'Pretendard', sans-serif;
  font-size: clamp(36px, 4.5vw, 65px);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -1.625px;
  color: var(--about-v2-primary) !important;
  text-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
}

.about-v2__sub,
.about-page-v2 .about-v2__hero .hero-subtitle {
  margin: 0;
  width: 100%;
  max-width: 900px;
  font-family: 'Pretendard Variable', 'Pretendard', sans-serif;
  font-size: clamp(16px, 1.4vw, 20px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: -0.24px;
  color: var(--about-v2-muted) !important;
  opacity: 1 !important;
}

.about-v2__rule {
  display: block;
  width: min(661px, 70%);
  height: auto;
  margin: 18px 0 0;
  border: 0;
}

.about-v2__body {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: var(--about-v2-content);
  margin: 0 auto;
  padding: 0 var(--about-v2-pad-x);
  box-sizing: border-box;
}

/* About 섹션 탭 — 서비스 칩과 동일 톤 */
.about-page-v2 .about-section-nav {
  max-width: none;
  width: 100%;
  margin: 0 0 1.75rem;
  padding: 0;
}

.about-page-v2 .about-section-nav__tabs,
.about-page-v2 .tab-navigation.about-section-nav__tabs,
.about-page-v2 .tab-navigation.about-inner-tabs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 12px;
  margin: 0 0 1.5rem;
  padding: 0 0 1.25rem;
  border-bottom: 1px solid var(--about-v2-line);
}

.about-page-v2 .about-section-nav .tab-btn,
.about-page-v2 .about-inner-tabs .tab-btn {
  background: #ffffff;
  border: 0.8px solid var(--about-v2-line);
  border-radius: 799px;
  color: var(--about-v2-ink);
  padding: 8px 18px;
  font-size: 0.95rem;
  font-weight: 500;
  letter-spacing: -0.012em;
  line-height: 1.4;
  text-decoration: none;
  box-shadow: none;
}

.about-page-v2 .about-section-nav .tab-btn:hover,
.about-page-v2 .about-inner-tabs .tab-btn:hover {
  border-color: var(--about-v2-primary);
  color: var(--about-v2-primary);
  background: #ffffff;
  transform: none;
}

.about-page-v2 .about-section-nav .tab-btn.active,
.about-page-v2 .about-inner-tabs .tab-btn.active {
  background: var(--about-v2-primary);
  border-color: var(--about-v2-primary);
  color: #ffffff;
}

.about-page-v2 .tab-container,
.about-page-v2 .press-wrap,
.about-page-v2 .latam-wrap {
  max-width: none;
  width: 100%;
  margin: 0;
  padding: 0;
}

/* 본문 타이포 */
.about-page-v2 .vision-section h2,
.about-page-v2 .ceo-section h2,
.about-page-v2 .organization-section h2,
.about-page-v2 .history-section h2,
.about-page-v2 .awards-section h2,
.about-page-v2 .latam-section h2,
.about-page-v2 .cta-section h2 {
  text-align: center;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--about-v2-ink);
  margin: 0 0 1rem;
}

.about-page-v2 .section-description,
.about-page-v2 .about-intro-lead,
.about-page-v2 .latam-lead {
  color: var(--about-v2-muted);
  font-size: clamp(15px, 1.3vw, 18px);
  line-height: 1.65;
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}

/* 카드 — 서비스/LATAM과 같은 얇은 보더 */
.about-page-v2 .vision-card,
.about-page-v2 .mission-card,
.about-page-v2 .value-item,
.about-page-v2 .latam-why-card,
.about-page-v2 .latam-service-card,
.about-page-v2 .latam-bridge-card,
.about-page-v2 .latam-identity-item,
.about-page-v2 .press-item,
.about-page-v2 .org-box,
.about-page-v2 .history-item,
.about-page-v2 .award-item {
  background: #ffffff;
  border: 1px solid var(--about-v2-line);
  border-radius: 16px;
  box-shadow: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.about-page-v2 .vision-card:hover,
.about-page-v2 .mission-card:hover,
.about-page-v2 .value-item:hover,
.about-page-v2 .latam-why-card:hover,
.about-page-v2 .latam-service-card:hover,
.about-page-v2 .latam-bridge-card:hover,
.about-page-v2 .press-item:hover {
  border-color: var(--about-v2-primary);
  box-shadow: 0 8px 24px rgba(64, 121, 140, 0.1);
}

.about-page-v2 .vision-card h3,
.about-page-v2 .mission-card h3,
.about-page-v2 .value-item h4,
.about-page-v2 .latam-why-card h3,
.about-page-v2 .latam-service-card h3,
.about-page-v2 .latam-bridge-card h3,
.about-page-v2 .press-item__title {
  color: var(--about-v2-ink);
}

.about-page-v2 .card-icon {
  color: var(--about-v2-primary);
}

.about-page-v2 .latam-identity-item {
  background: #f8fafb;
}

.about-page-v2 .latam-colombia {
  background: linear-gradient(180deg, #f8fafb 0%, #ffffff 100%);
  border: 1px solid var(--about-v2-line);
  border-radius: 16px;
}

.about-page-v2 .cta-section {
  background: #f8fafb;
  border: 1px solid var(--about-v2-line);
  border-radius: 20px;
  padding: clamp(2rem, 4vw, 3rem) 1.5rem;
  margin-top: 2rem;
  color: var(--about-v2-ink);
}

.about-page-v2 .cta-section h2 {
  color: var(--about-v2-ink);
}

.about-page-v2 .cta-section p {
  color: var(--about-v2-muted);
  opacity: 1;
}

.about-page-v2 .cta-section .cta-button,
.about-page-v2 .latam-teaser__link {
  background: var(--about-v2-primary);
  color: #ffffff;
  border-radius: 799px;
  border: 0.8px solid var(--about-v2-primary);
  box-shadow: none;
  font-weight: 600;
}

.about-page-v2 .cta-section .cta-button:hover,
.about-page-v2 .latam-teaser__link:hover {
  background: #345f6d;
  color: #ffffff;
  border-color: #345f6d;
  box-shadow: 0 4px 12px rgba(64, 121, 140, 0.22);
  transform: translateY(-1px);
}

.about-page-v2 .cta-section .latam-cta-secondary {
  background: #ffffff !important;
  color: var(--about-v2-primary) !important;
  border: 0.8px solid var(--about-v2-line) !important;
}

.about-page-v2 .cta-section .latam-cta-secondary:hover {
  background: #ffffff !important;
  color: var(--about-v2-primary) !important;
  border-color: var(--about-v2-primary) !important;
  box-shadow: none;
}

.about-page-v2 .latam-teaser__card {
  border: 1px solid var(--about-v2-line);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: none;
}

.about-page-v2 .press-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.about-page-v2 .press-item__source {
  background: #eef5f7;
  color: var(--about-v2-primary);
}

.about-page-v2 .press-pagination a {
  border-radius: 799px;
  border-color: var(--about-v2-line);
  color: var(--about-v2-primary);
}

.about-page-v2 .press-pagination a:hover,
.about-page-v2 .press-pagination strong {
  background: var(--about-v2-primary);
  border-color: var(--about-v2-primary);
  color: #ffffff;
  border-radius: 799px;
}

.about-page-v2 .press-empty {
  border-radius: 16px;
  border-color: var(--about-v2-line);
  background: #f8fafb;
}

@media (max-width: 992px) {
  .about-page-v2 .press-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 768px) {
  .about-v2__hero {
    padding: 40px 16px 28px;
  }

  .about-v2__body {
    padding: 0 16px;
  }

  .about-page-v2 .press-card-grid {
    grid-template-columns: 1fr;
  }

  .about-page-v2 .about-section-nav .tab-btn,
  .about-page-v2 .about-inner-tabs .tab-btn {
    font-size: 0.875rem;
    padding: 7px 14px;
  }
}
