/* ==========================================================================
   Theme Variables (Figma Design Tokens)
   ========================================================================== */

:root {
  /* ======================================================================
     Colors
     ====================================================================== */
  --logogreen: #006241;
  --NewLogoGreen: #006241;
  --logocolor2: #006241;
  --darkgreen: #14483C;
  --darkGreen: #0a4432;
  --gray: #283C36;
  --white: #FFFFFF;
  --lightgray: #F6F5F2;
  --offwhite: #F9F3E2;
  --bluegreen: #3B8686;
  --black: #111113;
  --black-60: #111113;
  --black-20: #111113;
  --te-papa-green: #1C4B42;
  --color-scheme-1-background: #ffffff;
  --color-scheme-1-text: #000000;
  --color-white: #ffffff;
  --color-neutral-darkest: #000000;

  /* ======================================================================
     Typography - title/H3 (Paperlogy Bold 60px)
     ====================================================================== */
  --title-h3-font-family: var(--font-paperlogy);
  --title-h3-font-size: 60px;
  --title-h3-font-weight: 700;
  --title-h3-line-height: 1.2;
  --title-h3-letter-spacing: 0px;

  /* Typography - title/H5 (Paperlogy Bold 42px) */
  --title-h5-font-family: var(--font-paperlogy);
  --title-h5-font-size: 42px;
  --title-h5-font-weight: 700;
  --title-h5-line-height: 1.3;
  --title-h5-letter-spacing: 0px;

  /* Typography - title/enH3 (Paperlogy Bold 48px) */
  --title-enH3-font-family: var(--font-paperlogy);
  --title-enH3-font-size: 48px;
  --title-enH3-font-weight: 700;
  --title-enH3-line-height: 1.4;
  --title-enH3-letter-spacing: -2px;

  /* Typography - title/enH5 (Paperlogy Bold 40px) */
  --title-enH5-font-family: var(--font-paperlogy);
  --title-enH5-font-size: 40px;
  --title-enH5-font-weight: 700;
  --title-enH5-line-height: 1.3;
  --title-enH5-letter-spacing: -2px;

  /* Typography - title/enH6 (Paperlogy Bold 30px) */
  --title-enH6-font-family: var(--font-paperlogy);
  --title-enH6-font-size: 30px;
  --title-enH6-font-weight: 700;
  --title-enH6-line-height: 1.0;
  --title-enH6-letter-spacing: 0px;

  /* Typography - H6 (Paperlogy Bold 34px) */
  --h6-font-family: var(--font-paperlogy);
  --h6-font-size: 34px;
  --h6-font-weight: 700;
  --h6-line-height: 1.3;
  --h6-letter-spacing: 0px;

  /* Typography - title/H7 (Pretendard SemiBold 30px) */
  --title-h7-font-family: var(--font-pretendard);
  --title-h7-font-size: 30px;
  --title-h7-font-weight: 600;
  --title-h7-line-height: 1.4;
  --title-h7-letter-spacing: -2px;

  /* Typography - title/H8 (Pretendard SemiBold 22px) */
  --title-h8-font-family: var(--font-pretendard);
  --title-h8-font-size: 22px;
  --title-h8-font-weight: 600;
  --title-h8-line-height: 1.4;
  --title-h8-letter-spacing: -2px;

  /* Typography - body/large (Pretendard Regular 20px) */
  --body-large-font-family: var(--font-pretendard);
  --body-large-font-size: 20px;
  --body-large-font-weight: 400;
  --body-large-line-height: 1.6;
  --body-large-letter-spacing: -2px;

  /* Typography - body/midium (Pretendard Regular 17px) */
  --body-midium-font-family: var(--font-pretendard);
  --body-midium-font-size: 17px;
  --body-midium-font-weight: 400;
  --body-midium-line-height: 1.5;
  --body-midium-letter-spacing: 0px;

  /* Typography - body/small (Pretendard Regular 15px) */
  --body-small-font-family: var(--font-pretendard);
  --body-small-font-size: 15px;
  --body-small-font-weight: 400;
  --body-small-line-height: 1.5;
  --body-small-letter-spacing: 0px;

  /* Typography - body/news (Pretendard Regular 20px) */
  --body-news-font-family: var(--font-pretendard);
  --body-news-font-size: 20px;
  --body-news-font-weight: 400;
  --body-news-line-height: 1.6;
  --body-news-letter-spacing: 0px;

  /* Typography - display/menu (Poppins Medium 20px) */
  --display-menu-font-family: var(--font-poppins);
  --display-menu-font-size: 20px;
  --display-menu-font-weight: 500;
  --display-menu-line-height: 1.0;
  --display-menu-letter-spacing: 0px;

  /* Typography - display/memu_select (Poppins Bold 22px) */
  --display-memu-select-font-family: var(--font-poppins);
  --display-memu-select-font-size: 22px;
  --display-memu-select-font-weight: 700;
  --display-memu-select-line-height: 1.0;
  --display-memu-select-letter-spacing: -2px;

  /* Typography - display/midium (Poppins Regular 24px) */
  --display-midium-font-family: var(--font-poppins);
  --display-midium-font-size: 24px;
  --display-midium-font-weight: 400;
  --display-midium-line-height: 34px;
  --display-midium-letter-spacing: -2px;

  /* Typography - button (Poppins Medium 14px) */
  --button-font-family: var(--font-poppins);
  --button-font-size: 14px;
  --button-font-weight: 500;
  --button-line-height: 1.5;
  --button-letter-spacing: 0px;

  /* ======================================================================
     Spacing / Layout
     ====================================================================== */
  --padding-global: 64px;
  --padding-section-medium: 80px;
  --container-large: 1280px;

  /* ======================================================================
     Borders / Radius
     ====================================================================== */
  --radius-large: 0;
  --stroke-border-width: 1px;
}

/* ==========================================================================
   Mobile Typography Overrides (max-width: 767px)
   홈 첫 번째 섹션(.hero-section)만 제외, 나머지 전체 적용
   ========================================================================== */
@media (max-width: 767px) {
  section:not(.hero-section) h1,
  section:not(.hero-section) h2,
  .page-header__title {
    font-size: 2.2rem !important;
  }

  section:not(.hero-section) h2,
  .section-heading__title {
    font-size: 1.7rem !important;
  }

  /* h2 옆 세로 막대 굵기 */
  .page-header__accent,
  .section-heading__bar,
  .innovation-base__accent-bar {
    width: 0.25rem !important;
  }

  section:not(.hero-section) h3 {
    font-size: 1.5rem !important;
  }

  section:not(.hero-section) p,
  body {
    font-size: 1rem;
  }

  /* 컨테이너 레이아웃: 모든 섹션 좌우 6vw 통일, navbar→섹션 간격 4rem */
  /* 배경이미지/색상이 꽉 차는 섹션은 제외 */
  section:not(.hero-section):not(.about-visual):not(.research-domains):not(.drug-delivery-platform):not(.research-statistics):not(.ir-content-section):not(.vision-section):not(.image-gallery-section):not(.peptardel-platform):not(.platform-overview):not(.peptardel-s-section):not(.innovation-lineup-section):not(.core-portfolio-section):not(.pipeline-sections-container):not(.innovation-base):not(.footer-cta),
  .page-header,
  .navbar-index,
  .cmo-cdmo-header,
  .research-statistics__header,
  .vision-title-wrapper,
  .vision-bg-light,
  .vision-bg-dark,
  .innovation-base__content,
  .video-section {
    padding-left: 6vw !important;
    padding-right: 6vw !important;
  }

  .page-header {
    padding-bottom: 6vw !important;
  }

  .navbar-index {
    padding-top: 0 !important;
    margin-bottom: 4rem;
  }

  /* 내부 컨테이너 좌우 패딩 리셋 (section에 6vw 이미 적용됨) */
  /* home */
  .drug-delivery-heading__container,
  .medical-devices-header,
  .investor-heading__content,
  /* about */
  .vision-bg-light,
  .vision-bg-dark,
  .our-core-values__wrapper,
  .innovation-base__container,
  .three-innovation-pillars,
  .history-timeline-section,
  .core-values-content,
  .org-chart-section,
  .world-quality-section,
  .compliance-list__wrapper,
  /* technology */
  .platform-overview__header,
  .peptardel-s-section__inner,
  .peptardel-o-section__inner,
  .pepscovery-process-wrapper,
  .tops-platform-wrapper,
  .core-business-wrapper,
  .biomaterial-tech-main,
  .innovation-lineup-header,
  .product-card__content--dark,
  .product-card__content--light,
  /* pipeline */
  .pipeline-module-inner,
  .pipeline-detail-2__container,
  .pipeline-detail-3__container,
  .pipeline-vaccines-wrapper,
  .pipeline-content__container,
  /* ir / contact / locations */
  .contact-contents,
  .loc-contents,
  .cmo-cdmo-features,
  section > .scroll-reveal {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .video-section {
    padding-bottom: 3rem !important;
  }

  .core-business-wrapper {
    padding-top: 0 !important;
  }

  .chart-phase,
  .header-phase,
  .pipeline-detail-3__header-phase,
  .pipeline-accordion-header-phase {
    white-space: nowrap;
  }

  .vision-text-wrapper.vision-bg-light,
  .vision-text-wrapper.vision-bg-dark,
  .platform-overview__header,
  .peptardel-t-section__inner,
  .peptardel-s-section__header,
  .peptardel-s-section__diagram,
  .peptardel-s-section__footer,
  .peptardel-o-section__header,
  .core-business-wrapper {
    padding-left: 6vw !important;
    padding-right: 6vw !important;
  }

  .biomaterial-tech-header,
  .biomaterial-tech-list,
  .innovation-lineup-section,
  .pipeline-accordion-container,
  .pipeline-module {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .innovation-lineup-title,
  .product-card__text,
  .core-portfolio-title {
    padding-left: 6vw !important;
    padding-right: 6vw !important;
  }

  .navbar-index__link {
    font-size: 0.875rem;
  }

  section:not(.hero-section) button a,
  section:not(.hero-section) .btn-report span,
  section:not(.hero-section) .btn-download span,
  section:not(.hero-section) .btn-list-download,
  section:not(.hero-section) .btn-list-view {
    font-size: 0.875rem;
  }
}
