/*
Theme Name: woomindesign
Theme URI: http://www.woomindesign.com/
Description: Divi child theme 
Author: woomindesign
Author URI: http://www.woomindesign.com/
Author Email: wmd2016@naver.com
Template: Divi
Version: 1.0.0
*/

/* =Theme customization starts here
------------------------------------------------------- */

/* ========== Text style ========== */
body,
h1,
h2,
h3,
h4,
h5,
h6,
li,
p,
#nav ul li a,
#topbar,
input,
button,
select,
textarea,
a,
.wf-container > *,
.widget-title,
.dwqa-container,
#wpmem_reg,
#wpmem_login {
  font-family:
    Pretendard, "Pretendard Variable", "Noto Sans KR", Montserrat, Roboto,
    sans-serif !important;
  letter-spacing: -0.03em;
}

#left-area ul,
.entry-content ul,
.et-l--body ul,
.et-l--footer ul,
.et-l--header ul {
  padding: 0 0 0 1em;
}

#EN h1,
#EN h2,
#EN h3,
#EN h4,
#EN h5,
#EN h6 {
  font-family: "Kanit" !important;
}

.dvmd_tm_description {
  font-size: 16px !important;
  line-height: 1.3;
}

/* Desktop 기준 */
:root {
  --fs-h1: 64px;
  --fs-h2: 40px;
  --fs-h3: 32px;
  --fs-h4: 24px;
  --fs-h5: 20px;
  --fs-h6: 18px;

  --fs-display-h1: 64px;

  --fs-body-1: 18px;
  --fs-body-2: 16px;
}

/* Ultra Wide */
@media (min-width: 1600px) {
  :root {
    --fs-h2: 48px;
    --fs-h3: 36px;

    --fs-body-1: 20px;
    --fs-body-2: 18px;
  }
}

/* Tablet Wide / Tablet */
@media (max-width: 1279px) {
  :root {
    --fs-h1: 40px;
    --fs-h2: 32px;
    --fs-h3: 24px;
    --fs-h4: 20px;
    --fs-h5: 18px;
    --fs-h6: 16px;

    --fs-display-h1: 56px;

    --fs-body-1: 18px;
    --fs-body-2: 16px;
  }
}

/* Mobile */
@media (max-width: 767px) {
  :root {
    --fs-display-h1: 32px;
    --fs-prd-h5: 18px;

    --fs-body-1: 16px;
    --fs-body-2: 14px;
  }
}

/* ========== Spacing Tokens (Figma: space) ========== */
/* Base (Desktop 기준) */
:root {
  --space-xs: 12px;
  --space-sm: 20px;
  --space-md: 40px;
  --space-lg: 60px;
  --space-xlg: 80px;
  --space-xxlg: 100px;

  --section-py-sm: 100px;
  --section-py-md: 160px;
  --section-py-lg: 200px;

  --gap-col: 24px;
  --gap-3col: 24px;

  --col-w-1: 1200px; /* 1단 컬럼 넓이 */
  --col-w-2: 588px; /* 2단 컬럼 넓이 */
  --col-w-3: 384px; /* 3단 컬럼 넓이 */
  --col-w-4: 282px; /* 4단 컬럼 넓이 */
}

/* Ultra Wide (Desktop과 동일 값이라 생략 가능) */
@media (min-width: 1600px) {
  :root {
    --space-xs: 12px;
    --space-sm: 20px;
    --space-md: 40px;
    --space-lg: 60px;
    --space-xlg: 80px;
    --space-xxlg: 100px;

    --gap-col: 24px;
    --gap-3col: 24px;

    --col-w-1: 1440px; /* 1단 컬럼 넓이 */
    --col-w-2: 708px; /* 2단 컬럼 넓이 */
    --col-w-3: 464px; /* 3단 컬럼 넓이 */
    --col-w-4: 342px; /* 4단 컬럼 넓이 */
  }
}

/* Tablet wide / Tablet / Mobile  */
@media (max-width: 1279px) {
  :root {
    --space-md: 20px;
    --space-lg: 40px;
    --space-xlg: 60px;
    --space-xxlg: 80px;

    --section-py-sm: 80px;
    --section-py-md: 120px;
    --section-py-lg: 160px;

    --gap-col: 16px;
    --gap-3col: 16px;

    --col-w-1: 920px; /* 1단 컬럼 넓이 */
    --col-w-2: 452px; /* 2단 컬럼 넓이 */
    --col-w-3: 296px; /* 3단 컬럼 넓이 */
    --col-w-4: 218px; /* 4단 컬럼 넓이 */
  }
}

@media (min-width: 768px) and (max-width: 980px) {
  :root {
    --gap-3col: 18px;

    --col-w-1: 720px; /* 1단 컬럼 넓이 */
    --col-w-2: 352px; /* 2단 컬럼 넓이 */
    --col-w-3: 224px; /* 3단 컬럼 넓이 */
    --col-w-4: 352px; /* 4단 컬럼 넓이 */
  }
}

/* Mobile */
@media (max-width: 767px) {
  :root {
    --section-py-sm: 60px;
    --section-py-md: 80px;
    --section-py-lg: 120px;

    --gap-3col: 32px;
    --col-w-1: 100%; /* 1단 컬럼 넓이 */
    --col-w-3: 100%; /* 3단 컬럼 넓이 */
  }
}

.et_pb_section,
.et_pb_row,
.et_pb_column {
  transition: none !important;
  transform: none !important;
}

@media screen and (min-width: 1600px) {
  #et-boc .et_pb_row,
  #et-boc .et_pb_row:hover {
    max-width: 1440px !important;
  }
}

@media (min-width: 1280px) and (max-width: 1599px) {
  #et-boc .et_pb_row,
  #et-boc .et_pb_row:hover {
    max-width: 1200px !important;
  }
}

/* 모바일 좌우 여백 */
@media screen and (max-width: 767px) {
  .et_pb_section {
    padding-left: 20px;
    padding-right: 20px;
  }

  .et_pb_section.sec_visual_page {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  #full.et_pb_row {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}

.et_pb_section .prd_item .et_pb_image_wrap {
  border-radius: 8px !important;
}

/* ===== section_visual ===== */
#section_visual.et_pb_section {
  --vertical-gap: 108px !important;
}

/* ===== Tab 메뉴 ===== */
#tab-menu .et-menu-nav {
  flex: 1;
}

#et-boc #tab-menu .et_pb_menu__menu > nav > ul > li {
  flex: 1 1 auto !important;
  width: 100%;
}

#tab-menu ul.et-menu.nav {
  width: 100vw !important; /* 탭메뉴 넓이 확장 */
}

@media (max-width: 1599px) {
  #tab-menu .et_pb_menu__menu > nav > ul > li > a {
    font-size: 18px !important;
  }
}

/* 태블릿 와이드 이하 */
@media (max-width: 1279px) {
  .sec_tab_menu.et_pb_section {
    display: none !important; /* 탭메뉴 숨김 */
  }
}

.visual_img_wrap {
  width: 100vw;
}

.visual_img_wrap .et_pb_image_wrap img,
.visual_img_wrap .et_pb_image_wrap img:hover {
  object-fit: cover;
  width: 100% !important;
}

.prd_img_wrap .dsm_image_carousel_slideshow_bg {
  width: auto !important;
  aspect-ratio: 1/1;
}

.prd_img_wrap .swiper.dsm_image_gallery_thumbs {
  margin-top: 100px;
}

#sec_prd_vis.et_pb_section .btn_prd_contact {
  height: 72px !important;
  line-height: normal !important;
  justify-content: center;
}

/* ===== 제품 상세페이지 ===== */

#sec_prd_vis.et_pb_section .row_prd_vis.et_pb_row {
  column-gap: 24px !important;
  justify-items: center;
}

#sec_prd_vis.et_pb_section .prd_img_wrap {
  margin-bottom: 0 !important;
  padding: 100px 102px 40px 102px !important; /*이미지 영역 여백 */
}

#sec_prd_vis.et_pb_section .prd_img_wrap .dsm_image_carousel_slideshow_bg {
  width: 100% !important;
  height: auto !important;
}

/* 미니 썸네일 간격 */
#sec_prd_vis.et_pb_section
  .prd_img_wrap
  .swiper.dsm_image_gallery_thumbs
  .swiper-wrapper {
  column-gap: 10px !important;
}

/* 미니 썸네일 스타일 */
#sec_prd_vis.et_pb_section
  .prd_img_wrap
  .dsm_image_gallery_thumbs
  .swiper-slide {
  width: 114px !important;
  padding: 16px !important;
  border-width: 1px !important;
  border-color: #cdd1d5 !important;
  border-style: solid !important;
  margin: 0 !important; /* 마진설정 제거 */
}

#sec_prd_vis.et_pb_section .prd_img_wrap .dsm_image_carousel_thumbs_image {
  border-radius: 0 !important;
  border-style: none !important; /* 미니 썸네일 라인 삭제 */
}

#sec_prd_vis.et_pb_section .prd_info_wrap {
  margin-bottom: 0 !important;
}

#sec_prd_vis .swiper-arrow-button {
  top: 35%;
}

/* 문의하기 버튼 */
#sec_prd_vis.et_pb_section .btn_prd_contact {
  display: flex;
}

/* 울트라 와이드 */
@media (min-width: 1600px) {
  #sec_prd_vis.et_pb_section .prd_img_wrap {
    padding: 100px 122px 40px 122px !important; /* 이미지 영역 여백 */
  }
}

@media (min-width: 1280px) and (max-width: 1599px) {
  #sec_prd_vis.et_pb_section .prd_img_wrap {
    width: 690px !important; /* 이미지 영역 넓이 */
    padding: 100px 102px 40px 102px !important; /* 이미지 영역 여백 */
  }

  #sec_prd_vis.et_pb_section .prd_info_wrap {
    width: 486px !important; /* 인포 영역 넓이 */
  }
}

/* 태블릿 와이드 */
@media (max-width: 1279px) {
  #sec_prd_vis.et_pb_section .row_prd_vis.et_pb_row {
    column-gap: 16px !important;
    justify-items: center;
  }

  #sec_prd_vis.et_pb_section .prd_img_wrap {
    padding: 80px 78px 40px 78px !important; /* 이미지 영역 여백 */
  }

  #sec_prd_vis.et_pb_section .prd_info_wrap {
    padding-top: 80px !important; /* 정보 영역 상단 */
  }

  /* 문의하기 버튼 사이즈 */
  #sec_prd_vis.et_pb_section .btn_prd_contact {
    height: 60px !important;
    width: 296px;
    margin-left: 0;
  }

  #sec_prd_vis.et_pb_section
    .prd_img_wrap
    .swiper.dsm_image_gallery_thumbs
    .swiper-wrapper {
    column-gap: 8px !important;
  }

  /* 미니 썸네일 스타일 */
  #sec_prd_vis.et_pb_section
    .prd_img_wrap
    .dsm_image_gallery_thumbs
    .swiper-slide {
    width: 68px !important;
    padding: 12px !important;
  }
}

/* 태블릿 */
@media (min-width: 768px) and (max-width: 989px) {
  #sec_prd_vis.et_pb_section .btn_prd_contact {
    width: 352px !important; /* 문의하기 버튼 넓이 */
    margin-left: 0 !important;
  }

  #sec_prd_vis.et_pb_section .prd_img_wrap {
    padding: 80px 168px 40px !important;
  }

  #sec_prd_vis.et_pb_section
    .prd_img_wrap
    .dsm_image_gallery_thumbs
    .swiper-slide {
    width: 90px !important; /* 미니 썸네일 사이즈 */
    padding: 12px !important;
  }
}

/* 모바일 */
@media (max-width: 767px) {
  #sec_prd_vis.et_pb_section .prd_info_wrap {
    padding-top: 60px !important; /* 정보 영역 상단 */
  }

  #sec_prd_vis.et_pb_section .prd_img_wrap {
    padding: 60px 20px 40px !important;
  }

  #sec_prd_vis .swiper-arrow-button {
    display: none; /* 화살표 제거 */
  }

  #sec_prd_vis.et_pb_section
    .prd_img_wrap
    .swiper.dsm_image_gallery_thumbs
    .swiper-wrapper {
    column-gap: 8px !important;
    justify-content: center;
  }

  #sec_prd_vis.et_pb_section
    .prd_img_wrap
    .dsm_image_gallery_thumbs
    .swiper-slide {
    width: 20% !important; /* 미니 썸네일 사이즈 */
  }
}

/* ===== 테이블 모듈 ===== */
@media (min-width: 981px) {
  #et-boc .sec_table.et_pb_section .tbl_prd_spe {
    max-width: 1584px !important;
  }

  #et-boc .sec_table.et_pb_section .tbl_prd_spe .dvmd_tm_table,
  #et-boc .sec_table.et_pb_section .tbl_prd_spe2 .dvmd_tm_table {
    display: grid;
    grid-auto-rows: minmax(72px, auto) !important;
    overflow: auto;
    padding: 0.5px;
    width: auto !important;
  }
  #et-boc .sec_table.et_pb_section .tbl_prd_spe .dvmd_tm_tcell,
  #et-boc .sec_table.et_pb_section .tbl_prd_spe2 .dvmd_tm_tcell {
    padding: 12px 8px !important;
  }

  #et-boc .sec_table.et_pb_section .tbl_prd_spe .dvmd_tm_tcell.dvmd_tm_rhead,
  #et-boc .sec_table.et_pb_section .tbl_prd_spe2 .dvmd_tm_tcell.dvmd_tm_rhead {
    padding: 12px 0 !important;
  }
}

/* Tablet wide 이하 */
@media (max-width: 980px) {
  #et-boc .sec_table.et_pb_section .tbl_prd_spe {
    max-width: 720px !important;
    width: 100% !important;
  }

  #et-boc .sec_table.et_pb_section .tbl_prd_spe .dvmd_tm_table,
  #et-boc .sec_table.et_pb_section .tbl_prd_spe2 .dvmd_tm_table {
    display: grid;
    grid-auto-rows: minmax(48px, auto) !important;
    overflow: auto;
    padding: 0.5px;
  }
  #et-boc .sec_table.et_pb_section .tbl_prd_spe .dvmd_tm_tcell,
  #et-boc .sec_table.et_pb_section .tbl_prd_spe2 .dvmd_tm_tcell {
    padding: 12px 8px !important;
  }

  #et-boc .sec_table.et_pb_section .tbl_prd_spe .dvmd_tm_tcell.dvmd_tm_rhead,
  #et-boc .sec_table.et_pb_section .tbl_prd_spe2 .dvmd_tm_tcell.dvmd_tm_rhead {
    padding: 12px 0 !important;
  }

  #et-boc .sec_table.et_pb_section .dvmd_tm_tcell .dvmd_tm_cdata {
    font-size: 14px !important;
  }
}

/* ===== 푸터 ===== */

/* 울트라 와이드 */
@media (min-width: 1600px) {
}
