/*
Theme Name: Hello Elementor Child - ICEC
Theme URI: https://icec.net
Template: hello-elementor
Author: ICEC
Description: ICEC website child theme for Hello Elementor - Wix design token matching
Version: 2.0.4
*/

/* ==============================================
   ICEC Website — Wix 원본 매칭 CSS
   Hello Elementor (빈 테마) 기반 — !important 최소화
   ============================================== */

/* ------------------------------------------
   0. 자체 호스팅 폰트 (@font-face)
   중국 접속 가능하도록 Google Fonts CDN 대신 로컬 호스팅
   ------------------------------------------ */
@font-face {
    font-family: 'Cormorant Garamond';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../../../uploads/fonts/cormorant-garamond-v16-latin-regular.woff2') format('woff2');
}
@font-face {
    font-family: 'Cormorant Garamond';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../../../uploads/fonts/cormorant-garamond-v16-latin-italic.woff2') format('woff2');
}
@font-face {
    font-family: 'Cormorant Garamond';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../../../uploads/fonts/cormorant-garamond-v16-latin-700.woff2') format('woff2');
}
@font-face {
    font-family: 'Cormorant Garamond';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../../../uploads/fonts/cormorant-garamond-v16-latin-700italic.woff2') format('woff2');
}

/* ------------------------------------------
   1. CSS 커스텀 프로퍼티 (Wix 원본 디자인 토큰)
   ------------------------------------------ */
:root {
    /* === COLORS === */
    --icec-primary-blue: #0f2ccf;
    --icec-dark: #151414;
    --icec-text: #383838;
    --icec-text-light: #767574;
    --icec-white: #ffffff;
    --icec-light-bg: #f1f0ef;
    --icec-footer-bg: #eefffb;
    --icec-link-hover: #0a1f99;
    --icec-menu-hover: #2D9CC6;

    /* Surfaces */
    --icec-summary-bg: #e8edf2;
    --icec-table-stripe: #fafafa;
    --icec-hover-bg: #f5f5f5;
    --icec-primary-light: #c8d0ff;

    /* Borders */
    --icec-border: #e5e5e5;
    --icec-border-light: #f0f0f0;
    --icec-border-table: rgba(0, 0, 0, 0.12);
    --icec-footer-divider: #d5efe8;

    /* Shadows */
    --icec-shadow-sm: 0 1px 4px rgba(0, 0, 0, 0.06);
    --icec-shadow-card: 0 1px 4px rgba(0, 0, 0, 0.1);
    --icec-shadow-card-hover: 0 2px 8px rgba(0, 0, 0, 0.15);

    /* === TYPOGRAPHY === */
    --icec-heading-font: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    --icec-body-font: 'Helvetica Neue', Helvetica, Arial, sans-serif;

    /* Font Sizes (11-step) — +4px 전체 스케일업 */
    --icec-fs-xs: 15px;
    --icec-fs-sm: 16px;
    --icec-fs-nav: 17px;
    --icec-fs-table: 18px;
    --icec-fs-base: 19px;
    --icec-fs-md: 20px;
    --icec-fs-lg: 22px;
    --icec-fs-xl: 26px;
    --icec-fs-2xl: 30px;
    --icec-fs-3xl: 32px;
    --icec-fs-4xl: 36px;

    /* Spacing (6-step) */
    --icec-space-xs: 8px;
    --icec-space-sm: 10px;
    --icec-space-md: 12px;
    --icec-space-lg: 16px;
    --icec-space-xl: 20px;
    --icec-space-2xl: 30px;

    /* Border Radius */
    --icec-radius-sm: 2px;
    --icec-radius-md: 4px;
    --icec-radius-lg: 5px;

    /* Layout */
    --icec-content-max-width: 980px;
    --icec-nav-height: 50px;
}

/* WordPress 블록 에디터 콘텐츠 너비 → 980px 통일 */
body {
    --wp--style--global--content-size: 980px;
    --wp--style--global--wide-size: 980px;
}

/* ------------------------------------------
   2. 글로벌 타이포그래피 (Wix font_9: 15px/1.88em)
   ------------------------------------------ */
html {
    font-size: 100%;
}

body,
button, input, select, textarea {
    font-family: var(--icec-body-font) !important;
    font-size: var(--icec-fs-base);
    line-height: 1.8;
    color: var(--icec-text);
    letter-spacing: 0.01em;
}

/* ------------------------------------------
   3. 제목 스타일 (Wix 디자인 토큰)
   ------------------------------------------ */

/* h1 — Helvetica Neue 34px */
h1, .entry-content h1,
.elementor-heading-title.elementor-size-xxl {
    font-family: var(--icec-heading-font);
    font-size: var(--icec-fs-4xl);
    line-height: 1.4;
    font-weight: 400;
    letter-spacing: -0.3px;
    color: var(--icec-dark);
    margin-bottom: 20px;
}

/* h2 — Helvetica Neue 30px, 청록색 */
h2, .entry-content h2,
.elementor-heading-title.elementor-size-xl {
    font-family: var(--icec-heading-font);
    font-size: var(--icec-fs-3xl);
    line-height: 1.38;
    font-weight: 400;
    letter-spacing: -0.3px;
    color: var(--icec-menu-hover);
    margin-bottom: 16px;
}

/* h3 — Helvetica Neue 24px */
h3, .entry-content h3,
.elementor-heading-title.elementor-size-large {
    font-family: var(--icec-heading-font);
    font-size: var(--icec-fs-xl);
    line-height: 1.41;
    font-weight: 400;
    letter-spacing: -0.3px;
    color: var(--icec-dark);
    margin-bottom: 12px;
}

/* h4 — 18px/600 */
h4, .entry-content h4,
.elementor-heading-title.elementor-size-medium {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-lg);
    line-height: 1.5;
    font-weight: 600;
    color: var(--icec-dark);
    margin-bottom: 10px;
}

/* h5, h6 — 15px/600 */
h5, h6, .entry-content h5, .entry-content h6 {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    line-height: 1.5;
    font-weight: 600;
    color: var(--icec-dark);
}

/* 단락 */
p, .entry-content p {
    margin-bottom: 1em;
    line-height: 1.8;
}

/* ------------------------------------------
   4. 링크 스타일
   ------------------------------------------ */
a,
.entry-content a,
.elementor-widget-text-editor a {
    color: var(--icec-menu-hover);
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover,
.entry-content a:hover,
.elementor-widget-text-editor a:hover {
    color: var(--icec-dark);
    text-decoration: underline;
}

/* ------------------------------------------
   5. Elementor 텍스트 위젯 (Wix font_9: 15px/1.75)
   ------------------------------------------ */
.elementor-widget-text-editor,
.elementor-widget-text-editor p,
.elementor-text-editor,
.elementor-text-editor p {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    line-height: 1.75;
    color: var(--icec-text);
    letter-spacing: 0.01em;
}

/* ------------------------------------------
   6. 컨테이너/콘텐츠 너비 (980px)
   ------------------------------------------ */
.site-content,
.page-content,
.entry-content {
    max-width: var(--icec-content-max-width);
    margin-left: auto;
    margin-right: auto;
}

.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: var(--icec-content-max-width);
}

/* .entry-content 스타일 (Default 템플릿 페이지용) */
.entry-content {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    line-height: 1.75;
    color: var(--icec-text);    /* #383838 — body 텍스트 색상과 통일 */
    padding: 20px 0;
}

/* 리스트 스타일 */
.entry-content ul,
.entry-content ol,
.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol {
    padding-left: 20px;
    margin-bottom: 1em;
}

.entry-content li,
.elementor-widget-text-editor li {
    font-size: var(--icec-fs-base);
    line-height: 1.75;
    margin-bottom: 8px;
}

/* ------------------------------------------
   7. 테이블 스타일
   ------------------------------------------ */
.entry-content table,
.elementor-widget-text-editor table,
.elementor-widget table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.5em;
}

.entry-content table th,
.entry-content table td,
.elementor-widget-text-editor table th,
.elementor-widget-text-editor table td {
    padding: 10px 14px;
    border: 1px solid var(--icec-border-table);
    font-size: var(--icec-fs-table);
    line-height: 1.4;
    vertical-align: top;
}

.entry-content table th,
.elementor-widget-text-editor table th {
    background-color: var(--icec-menu-hover);  /* G-3: cyan 헤더 — Wix 매칭 */
    font-weight: 600;
    color: var(--icec-white);
}

.entry-content table tr:nth-child(even),
.elementor-widget-text-editor table tr:nth-child(even) {
    background-color: var(--icec-table-stripe);
}

/* ------------------------------------------
   8. 버튼 스타일
   ------------------------------------------ */
.elementor-button,
.elementor-widget-button .elementor-button {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-table);
    font-weight: 500;
    border-radius: var(--icec-radius-md);
    padding: 12px 28px;
    transition: all 0.3s ease;
}

.elementor-button.elementor-size-md {
    background-color: var(--icec-primary-blue);
    color: var(--icec-white);
    border: 2px solid var(--icec-primary-blue);
}

.elementor-button.elementor-size-md:hover {
    background-color: var(--icec-link-hover);
    border-color: var(--icec-link-hover);
}

/* 잘못된 색상 교정 (#46a8cf → ICEC 블루) */
.elementor-button[style*="background-color: #46a8cf"],
.elementor-button[style*="background-color:#46a8cf"],
.elementor-button[style*="background-color: #46afd8"],
.elementor-button[style*="background-color:#46afd8"] {
    background-color: var(--icec-primary-blue) !important;
    border-color: var(--icec-primary-blue) !important;
}

/* ------------------------------------------
   9. 히어로 배너 — Elementor Container 포맷
   홈페이지(home_hero) + ICEC2026(hero_banner) 공통
   ------------------------------------------ */

/* 9-a. 홈페이지 히어로 — 전체 너비 브레이크아웃 */
.elementor-element-home_hero {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
}

/* 9-b. 홈페이지 히어로 — 버튼 (텍스트 스타일은 섹션 26에서 처리) */
.elementor-element-home_hero .elementor-button {
    background: rgba(255,255,255,0.12) !important;
    color: #fff !important;
    border: 2px solid rgba(255,255,255,0.7) !important;
    border-radius: 0 !important;
    padding: 12px 40px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase;
    transition: all 0.25s ease;
}
.elementor-element-home_hero .elementor-button:hover {
    background: rgba(255,255,255,0.28) !important;
    border-color: #fff !important;
}

/* 9-c. ICEC2026 히어로 — 텍스트 스타일 */
.elementor-element-hero_banner .elementor-heading-title {
    color: #fff !important;
    text-shadow: 0 2px 8px rgba(0,0,0,0.35);
}

/* 9-e. 컬럼 내 슬라이더(미디어 등)는 컬럼 폭 유지 */
.e-con .n2-section-smartslider,
.elementor-column .n2-section-smartslider {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
}

#n2-ss-3 .n2-ss-slide-active {
    opacity: 1 !important;
}

/* 히어로 텍스트 */
.elementor-section-height-full .elementor-widget-heading .elementor-heading-title {
    font-family: var(--icec-heading-font);
    color: var(--icec-white);
    text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4);
}

/* ------------------------------------------
   10. 이미지
   ------------------------------------------ */
.entry-content img,
.elementor-widget-image img {
    max-width: 100%;
    height: auto;
}

.elementor-widget-image-gallery .gallery-item img {
    border-radius: var(--icec-radius-sm);
    transition: opacity 0.3s ease;
}

.elementor-widget-image-gallery .gallery-item:hover img {
    opacity: 0.85;
}

/* ------------------------------------------
   11. Elementor Canvas 페이지 내비게이션 (ICEC2026 서브페이지)
   ------------------------------------------ */
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-nav);
    font-weight: 400;
    color: var(--icec-dark);
    padding: 8px 14px;
    white-space: nowrap;
    line-height: var(--icec-nav-height);
}

.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active {
    color: var(--icec-menu-hover);
}

/* (섹션 12 — 푸터 CSS: HFE 푸터 템플릿으로 이전됨) */

/* HFE 푸터 heading 리셋 → 파일 하단 섹션 36으로 이동 */

/* ------------------------------------------
   13. WooCommerce (Registration 스타일)
   ------------------------------------------ */
.woocommerce .products .product .woocommerce-loop-product__title {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-md);
    color: var(--icec-dark);
}

.woocommerce .products .product .price {
    color: var(--icec-primary-blue);
    font-size: var(--icec-fs-lg);
    font-weight: 600;
}

.woocommerce .button,
.woocommerce .checkout-button {
    background-color: var(--icec-primary-blue);
    color: var(--icec-white);
    border-radius: var(--icec-radius-md);
    font-family: var(--icec-body-font);
}

.woocommerce .button:hover,
.woocommerce .checkout-button:hover {
    background-color: var(--icec-link-hover);
}

/* ------------------------------------------
   14. Notice/Blog 게시글 그리드
   ------------------------------------------ */

/* 카드 스타일 (Wix 원본: 그림자 + 라운드 코너) */
.rttpg-container .rttpg-grid-item,
.rt-post-grid .rt-post-item {
    border-radius: var(--icec-radius-lg);
    box-shadow: var(--icec-shadow-card);
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.rttpg-container .rttpg-grid-item:hover,
.rt-post-grid .rt-post-item:hover {
    box-shadow: var(--icec-shadow-card-hover);
}

.rttpg-container .rttpg-post-title a,
.rt-post-grid .post-title a {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    font-weight: 600;
    color: var(--icec-menu-hover);
    line-height: 1.4;
}

.rttpg-container .rttpg-post-title a:hover,
.rt-post-grid .post-title a:hover {
    color: var(--icec-dark);
}

.rttpg-container .rttpg-post-excerpt,
.rt-post-grid .post-excerpt {
    font-size: var(--icec-fs-nav);
    line-height: 1.5;
    color: var(--icec-text-light);
}

.rttpg-container .rttpg-post-meta,
.rt-post-grid .post-meta-bottom {
    font-size: var(--icec-fs-xs);
    line-height: 1.4;
    color: var(--icec-text-light);
}

/* ------------------------------------------
   15. Elementor Toggle/Accordion
   ------------------------------------------ */
.elementor-toggle .elementor-tab-title {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-md);
    font-weight: 600;
    color: var(--icec-dark);
}

.elementor-toggle .elementor-tab-content {
    font-size: var(--icec-fs-table);
    line-height: 1.6;
    color: var(--icec-text);
}

/* ------------------------------------------
   16. 구분선 및 간격
   ------------------------------------------ */
.elementor-widget-divider .elementor-divider-separator {
    border-top-color: var(--icec-border);
}

.entry-content hr {
    border: none;
    border-top: 1px solid var(--icec-border);
    margin: 2em 0;
}

/* ------------------------------------------
   17. 색상 교정 (#46a8cf/#6EC1E4 → ICEC 블루)
   ------------------------------------------ */
.elementor-widget-heading .elementor-heading-title[style*="color: #46a8cf"],
.elementor-widget-heading .elementor-heading-title[style*="color:#46a8cf"],
.elementor-widget-heading .elementor-heading-title[style*="color: #6EC1E4"],
.elementor-widget-heading .elementor-heading-title[style*="color:#6EC1E4"],
a[style*="color: #6EC1E4"],
a[style*="color:#6EC1E4"] {
    color: var(--icec-menu-hover) !important;
}

/* ------------------------------------------
   18. 섹션 배경
   ------------------------------------------ */
.elementor-section[style*="background-color: #eefffb"],
.elementor-section[style*="background-color:#eefffb"] {
    background-color: var(--icec-footer-bg);
}

/* ------------------------------------------
   19. 선택 색상
   ------------------------------------------ */
::selection {
    background-color: var(--icec-primary-blue);
    color: var(--icec-white);
}

/* ------------------------------------------
   20. Hello Elementor 테마 보정
   (Astra 오버라이드 불필요 — 깔끔한 보정만)
   ------------------------------------------ */

/* 페이지 타이틀 영역 숨김 (Elementor 페이지에서) */
.elementor-page .entry-header,
.elementor-page .page-header {
    display: none;
}

/* 사이드바 제거 */
#secondary { display: none; }
#primary { width: 100%; }

/* 데스크톱 전용 레이아웃 — 1200px 고정, 모바일/태블릿은 축소 표시 */
html, body {
    min-width: 1200px;
}

/* Elementor 반응형 비활성화 — 모바일/태블릿 레이아웃 차단 */
.elementor-mobile-extra .elementor-element,
.elementor-mobile .elementor-element {
    width: initial !important;
}

/* Elementor 모바일/태블릿 숨김 위젯 → 항상 표시 */
.elementor-hidden-tablet,
.elementor-hidden-mobile,
.elementor-hidden-mobile_extra {
    display: initial !important;
}

/* 데스크톱 전용 숨김 → 항상 숨김 유지 */
.elementor-hidden-desktop {
    display: none !important;
}

/* Breadcrumb 숨김 */
.hfe-breadcrumb-wrapper {
    display: none;
}

/* Elementor 위젯 여백 */
.elementor-widget-wrap {
    padding: 0;
}

.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
    padding: 10px;
}

/* ------------------------------------------
   21. 인쇄 스타일
   ------------------------------------------ */
@media print {
    .site-header,
    .site-footer,
    .elementor-widget-nav-menu,
    .hfe-header,
    .hfe-footer {
        display: none !important;
    }
    body {
        font-size: 12pt;
        color: #000000;
    }
}

/* (섹션 22 — Hello Elementor 헤더 CSS: HFE 헤더 템플릿으로 이전됨) */

/* HFE 헤더 컨테이너 — 메뉴 폭 확보 */
.hfe-header .elementor-container,
.hfe-header .e-con-inner {
    max-width: 1400px;
}

.hfe-header {
    margin-bottom: 8px;
}

/* HFE 헤더 내비게이션 — B안 (모던 미니멀: bottom underline) */
ul.hfe-nav-menu > li > a.hfe-menu-item,
ul.hfe-nav-menu > li > .hfe-has-submenu-container > a.hfe-menu-item {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-table);   /* 14px */
    font-weight: 500;
    color: var(--icec-dark);
    text-decoration: none;
    padding: 10px 20px;
    white-space: nowrap;
    border-bottom: 2px solid transparent;
    transition: color 0.2s ease, border-color 0.2s ease;
}

/* HFE overline 포인터 제거 — B안은 bottom underline만 사용 */
.hfe-pointer__overline .menu-item.parent a.hfe-menu-item::before,
.hfe-pointer__overline .menu-item.parent a.hfe-menu-item::after {
    display: none !important;
}

/* HFE 내비게이션 전체 — 한 줄 강제 + 가운데 정렬 */
ul.hfe-nav-menu {
    flex-wrap: nowrap;
    justify-content: center;
}

/* Hover — cyan 색상 + bottom underline */
ul.hfe-nav-menu > li:hover > a.hfe-menu-item,
ul.hfe-nav-menu > li:hover > .hfe-has-submenu-container > a.hfe-menu-item {
    color: var(--icec-menu-hover);
    border-bottom-color: var(--icec-menu-hover);
}

/* Active/Current — 강조 */
ul.hfe-nav-menu > li.current-menu-item > a.hfe-menu-item,
ul.hfe-nav-menu > li.current-menu-ancestor > .hfe-has-submenu-container > a.hfe-menu-item,
ul.hfe-nav-menu > li.current-menu-ancestor > a.hfe-menu-item {
    color: var(--icec-menu-hover);
    border-bottom-color: var(--icec-menu-hover);
    font-weight: 600;
}

/* HFE 서브메뉴 드롭다운 */
ul.hfe-nav-menu .sub-menu a.hfe-menu-item {
    font-size: var(--icec-fs-table);
    font-weight: 400;
    color: var(--icec-text);
    border-bottom: none;
    padding-top: 8px;
    padding-bottom: 8px;
}
ul.hfe-nav-menu .sub-menu a.hfe-menu-item:hover {
    color: var(--icec-menu-hover);
    background: var(--icec-hover-bg);
}

/* 서브메뉴 화살표 숨김 (Wix 원본: 화살표 없음) */
.hfe-menu-toggle.sub-arrow {
    display: none !important;
}

/* 모바일 토글 숨김 (데스크톱 전용) */
.hfe-nav-menu__toggle {
    display: none !important;
}

/* ------------------------------------------
   23. Hello Elementor 콘텐츠 영역
   ------------------------------------------ */
main#content.site-main {
    max-width: var(--icec-content-max-width);
    margin: 0 auto;
    padding: 15px 20px;
    overflow: visible; /* Smart Slider 전체 너비 브레이크아웃 보장 */
}

/* 홈페이지는 상단 여백 유지 (Hero 슬라이더) */
.home main#content.site-main {
    padding-top: 30px;
}

/* page-content는 main에서 max-width 처리 */
main#content .page-content {
    max-width: none;
}

/* (섹션 24 — Hello Elementor 푸터 CSS: HFE 푸터 템플릿으로 이전됨) */

/* ------------------------------------------
   25. ICEC2026 서브홈 헤더 변형 (HFE 대응)
   ------------------------------------------ */

/* ICEC2026 서브홈 — 메뉴 하단 간격 */
body.icec2026-subhome .hfe-header {
    margin-bottom: 8px;
}

/* ICEC2026 서브홈 — 메뉴 중앙정렬 + 텍스트 크기 */
body.icec2026-subhome ul.hfe-nav-menu {
    justify-content: center;
}

body.icec2026-subhome ul.hfe-nav-menu {
    flex-wrap: nowrap;
}

body.icec2026-subhome ul.hfe-nav-menu > li > a.hfe-menu-item,
body.icec2026-subhome ul.hfe-nav-menu > li > .hfe-has-submenu-container > a.hfe-menu-item {
    padding: 10px 10px;
    font-size: var(--icec-fs-nav);   /* 13px */
}

/* 페이지 본문 내 중복 ICEC2026 로고 숨김 */
body.icec2026-subhome:not(.elementor-template-canvas) .elementor-element-9ee6274 {
    display: none !important;
}

/* 페이지 본문 내 중복 내비게이션 숨김 */
body.icec2026-subhome:not(.elementor-template-canvas) nav.top-menu {
    display: none !important;
}

/* Astra 테마 잔재 숨김 */
.site-above-footer-wrap {
    display: none !important;
}

/* Canvas 페이지 하단 불필요 요소 숨김 */
body.elementor-template-canvas .elementor-element-38a6332,
body.elementor-template-canvas .elementor-element-e40e07f,
body.elementor-template-canvas .elementor-element-1d71f84 {
    display: none !important;
}

/* ------------------------------------------
   26. 홈페이지 섹션 스타일 (Wix 원본 매칭)
   Notice / Media 섹션 제목 — 청록색 Helvetica
   ------------------------------------------ */

/* 홈페이지 섹션 제목 (Notice, Media 등) */
/* !important 필요: Elementor post CSS가 오버라이드 (specificity 4 classes) */
/* HFE 푸터 heading은 별도 리셋 (섹션 12 아래) */
/* 히어로 배너(.elementor-element-home_hero) 내부는 제외 */
.home .elementor-widget-heading .elementor-heading-title,
.home .e-con .elementor-heading-title {
    color: var(--icec-menu-hover) !important;           /* #2D9CC6 */
    font-family: var(--icec-body-font) !important;      /* Helvetica Neue */
    font-style: normal;
    font-weight: 400 !important;
    font-size: 28px;
}
/* 히어로 배너 내부 heading — 흰색 복원 (위 규칙 오버라이드) */
.home .elementor-element-home_hero .elementor-widget-heading .elementor-heading-title {
    color: #fff !important;
    text-shadow: 0 2px 10px rgba(0,0,0,0.5);
    font-style: normal !important;
}
.home .elementor-element-home_hero h1.elementor-heading-title {
    font-size: 36px !important;
    font-weight: 700 !important;
}
.home .elementor-element-home_hero h3.elementor-heading-title {
    font-size: 18px !important;
    font-weight: 400 !important;
}
.home .elementor-element-home_hero h5.elementor-heading-title {
    font-size: 14px !important;
    font-weight: 400 !important;
    color: rgba(255,255,255,0.85) !important;
}

/* 홈페이지 섹션 구분선 — Wix 원본: 청록색 하단 라인 */
.home .elementor-widget-divider .elementor-divider-separator {
    border-top-color: var(--icec-menu-hover); /* #2D9CC6 */
}

/* 홈페이지 Notice 섹션 — 게시글 제목 (Elementor post-3873.css보다 높은 specificity 필요) */
.home .tpg-el-main-wrapper .entry-title,
.home .tpg-el-main-wrapper .entry-title a,
.home .rttpg-container .rttpg-post-title a,
.home .rt-post-grid .post-title a {
    color: var(--icec-menu-hover) !important;
    font-size: var(--icec-fs-md);
    font-weight: 600;
    line-height: 24px;
}

.home .tpg-el-main-wrapper .entry-title a:hover,
.home .rttpg-container .rttpg-post-title a:hover,
.home .rt-post-grid .post-title a:hover {
    color: var(--icec-dark) !important;
}

/* 홈페이지 Notice 섹션 — Read More 링크 */
.home .tpg-el-main-wrapper .read-more a {
    color: var(--icec-menu-hover) !important;
    font-weight: 500;
}

.home .tpg-el-main-wrapper .read-more a:hover {
    color: var(--icec-dark) !important;
}

/* 홈페이지 섹션 간격 미세 조정 */
/* Hero slider 컨테이너 — 상단 간격 제거 */
.home .elementor-element-38a6332 {
    margin-top: 0;
}
/* Notice+Media 그리드 — 상단/하단 여백 */
.home .elementor-element-e8c8316 {
    padding-top: 30px;
    padding-bottom: 30px;
}

/* ==============================================
   27. 통합 디자인 시스템 (Unified Design System)
   모든 페이지에서 일관된 디자인 적용
   ============================================== */

/* ------------------------------------------
   27-1. 플러그인 컬러 변수 오버라이드
   The Post Grid, WooCommerce 등 플러그인이 주입하는
   기본 색상을 ICEC 디자인 토큰으로 통일
   ------------------------------------------ */
:root {
    --tpg-primary-color: var(--icec-menu-hover) !important;      /* #0d6efd → #2D9CC6 */
    --tpg-secondary-color: var(--icec-dark) !important;      /* hover → #151414 */
    --tpg-primary-light: var(--icec-primary-light) !important;
}

/* ------------------------------------------
   27-2. Smart Slider 폰트 오버라이드
   Roboto/Montserrat → ICEC 디자인 토큰 폰트
   ------------------------------------------ */
[class*="n2-font-"] {
    font-family: var(--icec-body-font) !important;
}

/* Smart Slider 제목 텍스트 — Cormorant Garamond 사용 */
.n2-ss-slide .n2-ss-layer[data-type="text"] [class*="n2-font-"],
.n2-ss-slide .n2-font-a879dba07cee35fceff8f5d5cde1fea2,
.n2-ss-slide h1[class*="n2-font-"],
.n2-ss-slide h2[class*="n2-font-"],
.n2-ss-slide h3[class*="n2-font-"] {
    font-family: var(--icec-heading-font) !important;
}

/* Smart Slider 본문/버튼 텍스트 */
.n2-ss-slide .n2-ss-button-container a[class*="n2-style-"] {
    font-family: var(--icec-body-font) !important;
}

/* Smart Slider 버튼 — 원본 디자인 유지 (오버라이드 하지 않음) */

/* ------------------------------------------
   27-3. Canvas 페이지 내비게이션 (.top-menu)
   Wix 마이그레이션 Canvas 페이지용 메뉴 통일
   ------------------------------------------ */
.top-menu {
    background: var(--icec-white);
    box-shadow: var(--icec-shadow-sm);
    display: flex;
    justify-content: center;
    padding: 0;
    margin: 0 0 20px;
}

.top-menu ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    max-width: var(--icec-content-max-width);
    width: 100%;
    justify-content: center;
}

.top-menu li {
    margin: 0;
    padding: 0;
}

.top-menu li a {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-nav);
    font-weight: 500;
    color: var(--icec-dark);
    padding: 0 10px;
    line-height: var(--icec-nav-height);
    height: var(--icec-nav-height);
    display: flex;
    align-items: center;
    text-decoration: none;
    transition: color 0.2s ease, border-color 0.2s ease;
    border-bottom: 2px solid transparent;
    white-space: nowrap;
}

.top-menu li a:hover,
.top-menu li a.active,
.top-menu li.active a {
    color: var(--icec-menu-hover);
    border-bottom-color: var(--icec-menu-hover);   /* B안 통일 */
}

/* Canvas 페이지 .active 밑줄 색상 교정 */
.top-menu li a.active::after,
.top-menu li.active a::after {
    background-color: var(--icec-menu-hover) !important; /* #46AFD8 → #2D9CC6 */
}

/* ------------------------------------------
   27-4. 페이지 제목 통일
   모든 페이지 타입에서 일관된 제목 스타일
   ------------------------------------------ */

/* Elementor 페이지 제목 (H1 또는 가장 큰 헤딩) */
.e-con .elementor-heading-title.elementor-size-xxl,
.e-con .elementor-heading-title.elementor-size-xl,
.elementor-widget-heading .elementor-heading-title {
    font-family: var(--icec-heading-font);
    color: var(--icec-dark);
    letter-spacing: -0.3px;
}

/* G-1: H2 Elementor 헤딩 cyan 복원 — Wix 원본 매칭 */
.e-con h2.elementor-heading-title,
.elementor-widget-heading h2.elementor-heading-title {
    color: var(--icec-menu-hover);  /* #2D9CC6 */
}

/* G-2: 페이지 제목(H1) 중앙 정렬 — Wix 원본 매칭 */
.e-con h1.elementor-heading-title {
    text-align: center;
}

/* 내부 페이지 섹션 제목 — Wix 원본: 청록색 세리프 */
.e-con h2,
.entry-content h2,
.elementor-widget-text-editor h2 {
    font-family: var(--icec-heading-font);
    font-size: var(--icec-fs-3xl);
    font-weight: 400;
    line-height: 1.38;
    color: var(--icec-menu-hover);
    margin-bottom: 16px;
    letter-spacing: -0.3px;
}

.e-con h3,
.entry-content h3,
.elementor-widget-text-editor h3 {
    font-family: var(--icec-heading-font);
    font-size: var(--icec-fs-xl);
    font-weight: 400;
    line-height: 1.41;
    color: var(--icec-dark);
    margin-bottom: 12px;
    letter-spacing: -0.3px;
}

/* General Information 페이지 — 섹션 제목(H3) 볼드 + 메인 컬러 */
.elementor-6615 .e-con h3.elementor-heading-title {
    font-weight: 700;
    color: var(--icec-menu-hover);
}

.e-con h4,
.entry-content h4,
.elementor-widget-text-editor h4 {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-lg);
    font-weight: 600;
    line-height: 1.5;
    color: var(--icec-dark);
    margin-bottom: 10px;
}

/* ------------------------------------------
   27-5. Elementor 컨테이너 너비 통일
   ※ 홈페이지 전체폭 섹션(슬라이더, 2컬럼)은 제외
   ------------------------------------------ */
/* Elementor boxed 섹션만 — 전체폭 e-con은 건드리지 않음 */
.elementor-section.elementor-section-boxed > .elementor-container {
    max-width: var(--icec-content-max-width);
}

/* ------------------------------------------
   27-6. Chairs 페이지 인라인 스타일 교정
   과도한 16pt !important 인라인 스타일 오버라이드
   ------------------------------------------ */
.entry-content table[style] th,
.entry-content table[style] td,
.e-con table[style] th,
.e-con table[style] td {
    font-size: var(--icec-fs-table) !important;
    line-height: 1.5 !important;
}

.entry-content table[style] a,
.e-con table[style] a {
    font-size: var(--icec-fs-table) !important;
    color: inherit !important;        /* Wix 원본: 테이블 내 링크는 텍스트 색상 상속 */
    text-decoration: none !important;
}

.entry-content table[style] a:hover,
.e-con table[style] a:hover {
    color: var(--icec-menu-hover) !important;
    text-decoration: underline !important;
}

.entry-content table[style] span,
.e-con table[style] span {
    font-size: inherit !important;
}

/* 인라인 system-ui 폰트 교정 (Conference Committee 등) */
.entry-content table[style],
.e-con table[style],
.elementor-widget table[style] {
    font-family: var(--icec-body-font) !important;
}

.entry-content table[style] td,
.e-con table[style] td,
.elementor-widget table[style] td {
    color: var(--icec-text) !important;
}

/* ------------------------------------------
   27-7. 페이지 본문 텍스트 통일
   ※ Smart Slider, 히어로 섹션은 제외
   ------------------------------------------ */
.elementor-widget-text-editor p,
.elementor-widget-text-editor li,
.entry-content p,
.entry-content li {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    line-height: 1.75;
    color: var(--icec-text);
    letter-spacing: 0.01em;
}

/* ------------------------------------------
   27-8. 링크 색상 통일 (모든 컨텍스트)
   ------------------------------------------ */
.elementor-widget-text-editor a:not(.elementor-button),
.entry-content a:not(.elementor-button) {
    color: var(--icec-menu-hover);
    text-decoration: none;
    transition: color 0.2s ease;
}

.elementor-widget-text-editor a:not(.elementor-button):hover,
.entry-content a:not(.elementor-button):hover {
    color: var(--icec-dark);
    text-decoration: underline;
}

/* ------------------------------------------
   27-9. 섹션 간 여백 통일
   ------------------------------------------ */
/* (removed — was breaking homepage full-width layout) */

/* ------------------------------------------
   27-10. 잘못된 색상값 교정 (글로벌)
   Elementor 인라인 스타일 중 잘못된 색상 강제 교정
   ------------------------------------------ */

/* #46a8cf / #46afd8 → ICEC 메뉴 호버 색상으로 교정 */
[style*="color: #46a8cf"],
[style*="color:#46a8cf"],
[style*="color: #46afd8"],
[style*="color:#46afd8"],
[style*="color: #46AFD8"],
[style*="color:#46AFD8"] {
    color: var(--icec-menu-hover) !important;
}

[style*="background-color: #46a8cf"],
[style*="background-color:#46a8cf"],
[style*="background-color: #46afd8"],
[style*="background-color:#46afd8"],
[style*="background-color: #46AFD8"],
[style*="background-color:#46AFD8"] {
    background-color: var(--icec-menu-hover) !important;
}

/* #6EC1E4 (Elementor 기본 액센트) → ICEC 블루로 교정 */
.elementor-widget [style*="color: #6EC1E4"],
.elementor-widget [style*="color:#6EC1E4"],
.elementor-widget [style*="color: #6ec1e4"],
.elementor-widget [style*="color:#6ec1e4"] {
    color: var(--icec-menu-hover) !important;
}

/* #0693e3 (WordPress vivid-cyan-blue 프리셋) → ICEC 블루로 교정 */
.has-vivid-cyan-blue-color { color: var(--icec-menu-hover) !important; }
.has-vivid-cyan-blue-background-color { background-color: var(--icec-primary-blue) !important; }

/* #1890d7, #37bd3c — Smart Slider 전용 색상, 교정 제외 (슬라이더 호버 깨짐 방지) */

/* ------------------------------------------
   27-11. 테이블 통일 스타일 (모든 페이지)
   ------------------------------------------ */
.e-con table,
.elementor-widget table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.5em;
}

.e-con table th,
.e-con table td,
.elementor-widget table th,
.elementor-widget table td {
    padding: 10px 14px;
    border: 1px solid var(--icec-border-table);
    font-size: var(--icec-fs-table);
    line-height: 1.4;
    vertical-align: top;
    font-family: var(--icec-body-font);
}

.e-con table th,
.elementor-widget table th {
    background-color: var(--icec-menu-hover);  /* G-3: cyan 헤더 — Wix 매칭 */
    font-weight: 600;
    color: var(--icec-white);
}

.e-con table tr:nth-child(even),
.elementor-widget table tr:nth-child(even) {
    background-color: var(--icec-table-stripe);
}

/* ------------------------------------------
   27-12. 이미지 통일
   ------------------------------------------ */
.e-con img {
    max-width: 100%;
    height: auto;
}

/* ------------------------------------------
   27-13. Elementor 구분선 통일
   ------------------------------------------ */
.elementor-widget-divider .elementor-divider-separator {
    border-top-color: var(--icec-border);
    border-top-width: 1px;
}

/* ------------------------------------------
   27-14. 버튼 통일 (모든 컨텍스트)
   ------------------------------------------ */
.e-con .elementor-button,
.elementor-button.elementor-size-sm,
.elementor-button.elementor-size-md,
.elementor-button.elementor-size-lg {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-table);
    font-weight: 500;
    border-radius: var(--icec-radius-md);
    transition: all 0.3s ease;
}

/* ------------------------------------------
   27-15. Notice/Blog 리스트 페이지 통일
   ------------------------------------------ */
.blog .hentry,
.archive .hentry,
.search-results .hentry {
    margin-bottom: 20px;
    padding: 24px 28px;
    border-bottom: none;
    background: var(--icec-white);
    border-left: 3px solid var(--icec-menu-hover);
    box-shadow: var(--icec-shadow-sm);
    transition: box-shadow 0.3s ease;
}

.blog .hentry:hover,
.archive .hentry:hover,
.search-results .hentry:hover {
    box-shadow: var(--icec-shadow-card);
}

.blog .entry-title a,
.archive .entry-title a,
.search-results .entry-title a {
    font-family: var(--icec-body-font);
    font-size: 22px;
    font-weight: 600;
    color: var(--icec-menu-hover);
    text-decoration: none;
}

.blog .entry-title a:hover,
.archive .entry-title a:hover {
    color: var(--icec-dark);
}

.blog .entry-meta,
.archive .entry-meta {
    font-size: var(--icec-fs-sm);
    color: var(--icec-text-light);
    margin-bottom: 8px;
}

.blog .entry-content p,
.archive .entry-content p {
    font-size: var(--icec-fs-table);
    line-height: 1.6;
    color: var(--icec-text);
}

/* ------------------------------------------
   27-16. 단일 게시글 페이지
   ------------------------------------------ */
.single .entry-title {
    font-family: var(--icec-heading-font);
    font-size: var(--icec-fs-4xl);
    font-weight: 400;
    color: var(--icec-dark);
    margin-bottom: 10px;
}

.single .entry-meta {
    font-size: var(--icec-fs-sm);
    color: var(--icec-text-light);
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--icec-border);
}

/* ------------------------------------------
   27-17. Astra 잔재 제거 (Hello Elementor 전환 후)
   Astra 관련 클래스가 남아있을 수 있는 요소 처리
   ------------------------------------------ */
.ast-container {
    max-width: var(--icec-content-max-width);
    margin: 0 auto;
}

.site-above-footer-wrap,
.ast-mobile-header-wrap {
    display: none !important;
}

/* ------------------------------------------
   27-18. wp-block 스타일 통일 (Gutenberg 블록)
   ------------------------------------------ */
.wp-block-heading {
    font-family: var(--icec-heading-font);
    color: var(--icec-dark);
}

.wp-block-paragraph {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    line-height: 1.75;
    color: var(--icec-text);
}

.wp-block-table table {
    border-collapse: collapse;
    width: 100%;
}

.wp-block-table td,
.wp-block-table th {
    padding: 10px 14px;
    border: 1px solid var(--icec-border-table);
    font-size: var(--icec-fs-table);
    font-family: var(--icec-body-font);
}

.wp-block-button .wp-block-button__link,
.wp-block-button .wp-block-button__link:visited {
    background-color: var(--icec-primary-blue) !important;
    color: var(--icec-white) !important;
    border-radius: var(--icec-radius-md);
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-table);
    font-weight: 500;
    padding: 12px 28px;
    transition: all 0.3s ease;
}

.wp-block-button .wp-block-button__link:hover {
    background-color: var(--icec-link-hover) !important;
}

/* ==============================================
   28–35. 전체 페이지 Wix 디자인 패리티
   v1.5.0 — 비-Elementor 페이지 + Wix 클래스 + 인라인 방어
   ============================================== */

/* ------------------------------------------
   28. .page-content 타이포그래피 (Type A 페이지)
   Leadership, Contact, About ICEC, Past Conferences
   ------------------------------------------ */
.page-content {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    line-height: 1.75;
    color: var(--icec-text);
    letter-spacing: 0.01em;
    padding: 20px 0;
}
.page-content p { margin-bottom: 1em; line-height: 1.8; }
.page-content a:not(.elementor-button) {
    color: var(--icec-menu-hover);
    text-decoration: none;
}
.page-content a:not(.elementor-button):hover {
    color: var(--icec-dark);
    text-decoration: underline;
}
.page-content ul, .page-content ol { padding-left: 20px; margin-bottom: 1em; }
.page-content li { font-size: var(--icec-fs-base); line-height: 1.75; margin-bottom: 8px; }
.page-content table { width: 100%; border-collapse: collapse; margin-bottom: 1.5em; }
.page-content table th, .page-content table td {
    padding: 10px 14px;
    border: 1px solid var(--icec-border-table);
    font-size: var(--icec-fs-table); line-height: 1.4; vertical-align: top;
}
.page-content table th { background-color: var(--icec-menu-hover); font-weight: 600; color: var(--icec-white); }
.page-content table tr:nth-child(even) { background-color: var(--icec-table-stripe); }
.page-content img { max-width: 100%; height: auto; }
.page-content hr { border: none; border-top: 1px solid var(--icec-border); margin: 2em 0; }

/* ------------------------------------------
   29. Wix 마이그레이션 아티팩트 클래스
   font_7, font_8, font_10, wixui-rich-text 등
   ------------------------------------------ */
.font_7 { font-family: var(--icec-body-font); font-size: 19px; line-height: 1.75; color: var(--icec-text); }
.font_8 { font-family: var(--icec-body-font); font-size: var(--icec-fs-base); line-height: 1.88; color: var(--icec-text); }
.font_10 { font-family: var(--icec-body-font); font-size: var(--icec-fs-sm); line-height: 1.66; color: var(--icec-text); }
ul.font_10, ol.font_10 { font-size: var(--icec-fs-base); padding-left: 20px; margin-bottom: 1em; }
ul.font_10 > li { margin-bottom: 8px; line-height: 1.75; }
.wixui-rich-text { font-family: var(--icec-body-font); font-size: var(--icec-fs-base); line-height: 1.75; color: var(--icec-text); }
.wixui-rich-text__text { font-family: inherit; font-size: inherit; line-height: inherit; color: inherit; }
[data-testid="richTextElement"] { font-family: var(--icec-body-font); font-size: var(--icec-fs-base); line-height: 1.75; color: var(--icec-text); }

/* ------------------------------------------
   30. Leadership 사진 플로트
   페이지 ID: 3928 — 좌측 사진 + 우측 바이오 텍스트
   ------------------------------------------ */
.page-id-3928 .page-content img[width="200"] {
    float: left;
    margin: 5px 24px 15px 0;
    border-radius: var(--icec-radius-sm);
}
.page-id-3928 .page-content > h2 {
    clear: both;
    padding-top: 20px;
}

/* ------------------------------------------
   31. WP 블록 콘텐츠 너비 강제 (theme.json 보완)
   ------------------------------------------ */
:root {
    --wp--style--global--content-size: 980px;
    --wp--style--global--wide-size: 980px;
}

/* ------------------------------------------
   32. 인라인 <style> 글로벌 오염 방어
   Chairs(3991), Past Conferences(3982) 인라인 16pt 방어
   ------------------------------------------ */
/* (헤더/푸터 인라인 방어 — HFE 전환으로 제거됨) */

/* Chairs/Past Conferences — 16pt는 Wix 원본이므로 테이블 내 유지 */
/* Section 27-6의 14px 강제 오버라이드에서 이 페이지들 제외 */
.elementor-3991 .elementor-widget-text-editor table td,
.elementor-3982 .elementor-widget-text-editor table td {
    font-size: inherit !important;
    line-height: inherit !important;
}
.elementor-3991 .elementor-widget-text-editor table a,
.elementor-3982 .elementor-widget-text-editor table a {
    font-size: inherit !important;
    color: var(--icec-menu-hover) !important;
}

/* Past Conference Records — 테이블 선 제거 + 링크 메인 색상 */
.elementor-3982 .elementor-widget-text-editor table,
.elementor-3982 .elementor-widget-text-editor table td,
.elementor-3982 .elementor-widget-text-editor table th,
.elementor-3982 .elementor-widget-text-editor table tr {
    border: none !important;
}
.elementor-3982 .elementor-widget-text-editor table tr:nth-child(even) {
    background-color: transparent !important;
}

/* ------------------------------------------
   33. Contact 페이지 보정
   페이지 ID: 3941
   ------------------------------------------ */
.page-id-3941 .page-content table[style] td { border: none !important; }
.page-id-3941 .page-content > p > img { display: block; margin-bottom: 20px; }

/* ------------------------------------------
   34. #0693e3 인라인 색상 교정
   ------------------------------------------ */
[style*="color: #0693e3"], [style*="color:#0693e3"] { color: var(--icec-menu-hover) !important; }
[style*="background-color: #0693e3"], [style*="background-color:#0693e3"] { background-color: var(--icec-primary-blue) !important; }

/* ------------------------------------------
   35. WP 기본 링크 밑줄 제거 (Wix 원본: hover 시에만)
   ------------------------------------------ */
a:where(:not(.wp-element-button)) { text-decoration: none; }

/* ------------------------------------------
   36. HFE 헤더/푸터 보정 (최하단 — 최고 우선순위)
   글로벌 h2 청록색 + 홈페이지 이탤릭이
   HFE 푸터 heading까지 오버라이드하는 것 방지
   ------------------------------------------ */
footer#colophon .elementor-widget-heading .elementor-heading-title {
    font-family: var(--icec-body-font) !important;
    font-style: normal !important;
    font-weight: 700 !important;
    font-size: var(--icec-fs-2xl) !important;
    color: var(--icec-dark) !important;
}

/* HFE 푸터 구분선 색상 보정 — 홈페이지 청록색 오버라이드 방지 */
footer#colophon .elementor-widget-divider .elementor-divider-separator {
    border-top-color: var(--icec-footer-divider) !important;
}

/* ------------------------------------------
   37. [icec_recent_posts] 숏코드 스타일
   홈페이지 Notice 섹션 — icec2026 카드 스타일
   ------------------------------------------ */
.icec-recent-posts {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.icec-rp-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    background: #f5f5f5;
    padding: 18px 20px;
    text-decoration: none;
    color: inherit;
    transition: background 0.2s;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.icec-rp-card:last-child {
    border-bottom: none;
}

.icec-rp-card:hover {
    background: #eaeaea;
}

.icec-rp-title {
    font-family: var(--icec-body-font);
    font-size: 17px;
    font-weight: 600;
    color: var(--icec-dark);
    line-height: 1.4;
    margin-bottom: 4px;
}

.icec-rp-desc {
    font-family: var(--icec-body-font);
    font-size: 14px;
    color: #666;
    line-height: 1.5;
}

.icec-rp-arrow {
    display: block;
    width: 25%;
    height: 1px;
    background: var(--icec-menu-hover);
    margin-top: 20px;
    margin-bottom: 10px;
    position: relative;
    font-size: 0;
    transition: width 0.2s;
}

.icec-rp-arrow::after {
    content: '';
    position: absolute;
    right: 0;
    top: -2.5px;
    border: solid var(--icec-menu-hover);
    border-width: 0 1px 1px 0;
    padding: 2.5px;
    transform: rotate(-45deg);
}

.icec-rp-card:hover .icec-rp-arrow {
    width: 30%;
}

/* ------------------------------------------
   38. 페이지 타이틀 배너 (홈페이지 제외)
   the_content 필터로 삽입 — 100vw 전체 너비 배너
   ------------------------------------------ */
.icec-page-banner {
    width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-top: 0;
    margin-bottom: 24px;
    height: 136px;
    background: #E6F6FF;
    display: flex;
    align-items: center;
    justify-content: center;
}
.icec-page-banner h1 {
    font-size: 36pt;
    color: var(--icec-menu-hover);
    font-weight: 300;
    letter-spacing: 0.5px;
    margin: 0;
    font-family: var(--icec-body-font);
}

/* 배너가 있는 페이지 — Elementor 콘텐츠 내 기존 H1 타이틀 숨김 */
body:not(.home) .elementor-widget-heading h1.elementor-heading-title {
    display: none;
}
/* ICEC2026 hero h1 — 표시 복원 (배너 미적용 페이지) */
.elementor-6360 .elementor-widget-heading h1.elementor-heading-title {
    display: block !important;
}

/* 배너 h1과 동일 텍스트 H2 → PHP the_content 필터에서 제거 (functions.php) */

/* ------------------------------------------
   39. ICEC2026 카드 그리드 — 클릭 가능 + hover + 간격 축소
   card_grid(6개) + bottom_cta(2개) 공통
   ------------------------------------------ */

/* 카드 컨테이너 — 클릭 가능 + 배경색 차별화 */
.elementor-6360 .elementor-element-card_grid > .e-con {
    cursor: pointer;
    background-color: #EEF4FA !important;
    transition: background-color 0.2s ease;
}

.elementor-6360 .elementor-element-card_grid > .e-con:hover {
    background-color: #DDEAF5 !important;
}

.elementor-6360 .elementor-element-bottom_cta > .e-con {
    cursor: pointer;
    transition: background-color 0.2s ease, opacity 0.2s ease;
}

.elementor-6360 .elementor-element-bottom_cta > .e-con:hover {
    opacity: 0.88;
}

/* 카드 컨테이너 — kit-widget-spacing 리셋 + 내부 간격 축소 */
.elementor-6360 .elementor-element-card_grid > .e-con,
.elementor-6360 .elementor-element-bottom_cta > .e-con {
    --kit-widget-spacing: 0px;
    gap: 0 !important;
    --gap: 0px !important;
    padding-top: 16px !important;
    padding-bottom: 12px !important;
}

/* 위젯 간격 축소 — 아이콘 / 타이틀 / 설명 사이 상하 간격 */
.elementor-6360 .elementor-element.elementor-element-c_cfp_icon,
.elementor-6360 .elementor-element.elementor-element-c_si_icon,
.elementor-6360 .elementor-element.elementor-element-c_ws_icon,
.elementor-6360 .elementor-element.elementor-element-c_cc_icon,
.elementor-6360 .elementor-element.elementor-element-c_prog_icon,
.elementor-6360 .elementor-element.elementor-element-c_loc_icon,
.elementor-6360 .elementor-element.elementor-element-cta_sub_icon,
.elementor-6360 .elementor-element.elementor-element-cta_reg_icon {
    margin: 0 0 3px 0 !important;
}

.elementor-6360 .elementor-element.elementor-element-c_cfp_link,
.elementor-6360 .elementor-element.elementor-element-c_si_link,
.elementor-6360 .elementor-element.elementor-element-c_ws_link,
.elementor-6360 .elementor-element.elementor-element-c_cc_link,
.elementor-6360 .elementor-element.elementor-element-c_prog_link,
.elementor-6360 .elementor-element.elementor-element-c_loc_link,
.elementor-6360 .elementor-element.elementor-element-cta_sub_link,
.elementor-6360 .elementor-element.elementor-element-cta_reg_link {
    margin: 0 0 2px 0 !important;
}

.elementor-6360 .elementor-element.elementor-element-c_cfp_desc,
.elementor-6360 .elementor-element.elementor-element-c_si_desc,
.elementor-6360 .elementor-element.elementor-element-c_ws_desc,
.elementor-6360 .elementor-element.elementor-element-c_cc_desc,
.elementor-6360 .elementor-element.elementor-element-c_prog_desc,
.elementor-6360 .elementor-element.elementor-element-c_loc_desc,
.elementor-6360 .elementor-element.elementor-element-cta_sub_desc,
.elementor-6360 .elementor-element.elementor-element-cta_reg_desc {
    margin: 0 !important;
}

/* ICEC2026 페이지 배경 흰색 + 하단 여백 */
.elementor-6360 {
    background-color: var(--icec-white);
    padding-bottom: 136px;
}

/* main_row 하늘색 배경 → 흰색 */
.elementor-6360 .elementor-element.elementor-element-main_row,
.elementor-6360 .elementor-element.elementor-element-main_row:not(.elementor-motion-effects-element-type-background) {
    background-color: var(--icec-white) !important;
}

/* ------------------------------------------
   40. ICEC2026 히어로 배너 — 전체 너비 브레이크아웃
   (섹션 9로 이동: hero_banner 텍스트 스타일)
   ------------------------------------------ */
.elementor-6360 .elementor-element.elementor-element-hero_banner {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
}

/* ------------------------------------------
   41. 반응형 완전 비활성화 — 1200px 데스크톱 고정
   모바일/태블릿: viewport=1200 → 비율 축소 표시
   Elementor/HFE 반응형 CSS 오버라이드
   ------------------------------------------ */

/* HFE 모바일 토글 + Elementor 햄버거 메뉴 항상 숨김 */
.hfe-nav-menu__toggle,
.elementor-menu-toggle,
.elementor-widget-nav-menu .elementor-menu-toggle {
    display: none !important;
}

/* HFE 내비게이션 항상 데스크톱 모드 표시 */
ul.hfe-nav-menu {
    display: flex !important;
    flex-wrap: nowrap !important;
}
.hfe-nav-menu__layout-horizontal .hfe-nav-menu {
    display: flex !important;
}

/* =============================================
   42. Special Issues — 공유 컴포넌트 시스템
   Collaborating Journals / SI 2026 / Active SI / Past SI
   ============================================= */

/* --- 요약 박스 (회색 배경 + 시안 타이틀 스트립) --- */
.si-summary-box {
    background: var(--icec-summary-bg);
    padding: 30px 40px 40px;
    margin: 20px 0;
}
.si-summary-title {
    background: var(--icec-menu-hover);
    color: #fff;
    font-size: 30px;
    font-weight: 700;
    text-align: center;
    padding: 16px 20px;
    margin-bottom: 24px;
}

/* --- 저널 리스트 --- */
.si-journal-list { list-style: disc; padding-left: 24px; }
.si-journal-list li { margin-bottom: 12px; font-size: 16px; }
.si-journal-list li a { color: var(--icec-text); text-decoration: underline; font-weight: 600; }

/* --- 저널 제목 (h2, 시안) --- */
.si-journal-heading {
    font-size: 20px;
    color: var(--icec-menu-hover);
    font-weight: 400;
    margin: 30px 0 5px;
}

/* --- 소제목 (이탤릭 시안) --- */
.si-sub-heading {
    font-size: 16px;
    color: var(--icec-menu-hover);
    font-weight: 400;
    font-style: italic;
    margin: 28px 0 10px;
}

/* --- CFP 버튼 공통 --- */
.si-cfp-btn,
.si-cfp-btn-dark {
    display: inline-block;
    color: #fff !important;
    padding: 7px 14px;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none !important;
    text-align: center;
    margin: 3px 2px;
    line-height: 1.4;
}
.si-cfp-btn { background: var(--icec-menu-hover); }
.si-cfp-btn:hover { background: #1e94c5; }
.si-cfp-btn-dark { background: #555; }
.si-cfp-btn-dark:hover { background: #444; }

/* --- 에디터/참고문헌 블록 --- */
.si-editor-block { margin: 10px 0; font-size: 13px; }
.si-editor-block strong { color: var(--icec-text); }
.si-editor-bio { font-size: 13px; color: var(--icec-text-light); margin: 4px 0 16px; }
.si-ref-block { font-size: 13px; color: var(--icec-text-light); margin: 4px 0; }

/* --- 부제/테마 --- */
.si-journal-subtitle { font-size: 13px; color: var(--icec-text-light); margin: 0 0 5px; }
.si-theme { font-size: 16px; font-weight: 700; color: var(--icec-text); margin: 10px 0 5px; }
.si-short { font-size: 13px; color: var(--icec-text-light); font-style: italic; margin-bottom: 10px; }

/* =============================================
   42-a. Collaborating Journals (.icec-collab)
   ============================================= */
.icec-collab {
    max-width: 800px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: var(--icec-body-font);
    color: var(--icec-text);
    font-size: 15px;
    line-height: 1.8;
}
.icec-collab h1 {
    font-size: 28px;
    font-weight: 400;
    color: var(--icec-menu-hover);
    margin: 0 0 16px;
}
.icec-collab .intro { margin-bottom: 30px; }

/* =============================================
   42-b. Special Issues 2026 (.icec-si)
   ============================================= */
.icec-si {
    max-width: 800px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: var(--icec-body-font);
    color: var(--icec-text);
    font-size: 14px;
    line-height: 1.8;
}
.icec-si a { color: var(--icec-menu-hover); text-decoration: none; }
.icec-si a:hover { text-decoration: underline; }
.icec-si .intro-text { margin-bottom: 30px; font-size: 13px; color: var(--icec-text-light); }
.icec-si hr { border: none; border-top: 1px solid var(--icec-border); margin: 40px 0; }
.icec-si p { margin: 0 0 14px; }
.icec-si ul { padding-left: 20px; margin: 10px 0 16px; }
.icec-si ul li { margin-bottom: 4px; font-size: 13px; }

/* =============================================
   42-c. Active Special Issues (.icec-si-active)
   ============================================= */
.icec-si-active {
    max-width: 800px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: var(--icec-body-font);
    color: var(--icec-text);
    font-size: 15px;
    line-height: 1.8;
}

/* =============================================
   42-d. Past Special Issues (.icec-si-past)
   ============================================= */
.icec-si-past {
    max-width: 800px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: var(--icec-body-font);
    color: var(--icec-text);
    font-size: 15px;
    line-height: 1.8;
}

/* ------------------------------------------
   43. Submission 페이지 — Guideline 제목 박스
   ------------------------------------------ */
.elementor-element-sub_label {
    width: fit-content !important;
    max-width: fit-content !important;
}

/* =============================================
   44. Registration 페이지 (.icec-reg)
   인라인 <style> → style.css 이동 + 디자인 토큰 적용
   ============================================= */
.icec-reg {
    max-width: 800px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: var(--icec-body-font);
    color: var(--icec-text);
    font-size: 16px;
    line-height: 1.7;
}

.icec-reg h2.section-label {
    font-size: 20px;
    font-weight: 700;
    color: var(--icec-menu-hover);
    margin-bottom: 16px;
}

.icec-reg table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 16px;
}

.elementor-widget .icec-reg table th,
.elementor-widget .icec-reg table td {
    border: 1px solid var(--icec-border);
    padding: 12px 16px;
    text-align: center;
    font-size: 15px;
}

.elementor-widget .icec-reg table th {
    background-color: var(--icec-border-light);
    font-weight: 600;
    color: var(--icec-text);
}

.icec-reg .note {
    font-size: 15px;
    color: var(--icec-text-light);
    margin-bottom: 6px;
}

.icec-reg hr.divider {
    border: none;
    border-top: 1px solid var(--icec-border);
    margin: 50px auto;
    width: 60px;
}

/* ------------------------------------------
   44-b. Registration 결제 섹션 (.icec-credit)
   인라인 <style> → style.css 이동 + 디자인 토큰 적용
   @media (max-width:600px) 제거 — viewport=1200 고정
   ------------------------------------------ */
.icec-credit {
    max-width: 800px;
    margin: 0 auto;
    padding: 50px 20px;
    font-family: var(--icec-body-font);
    background: #fff;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.06);
    border-radius: 4px;
}

.icec-credit h2 {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
    color: var(--icec-text);
}

.icec-credit .pay-item {
    border-top: 2px solid var(--icec-border);
    padding: 24px 0;
    display: flex;
    align-items: center;
    gap: 20px;
}

.icec-credit .pay-item:last-of-type {
    border-bottom: 2px solid var(--icec-border);
}

.icec-credit .pay-info {
    flex: 1;
}

.icec-credit .pay-info h3 {
    font-size: 19px;
    font-weight: 700;
    color: var(--icec-text);
    margin: 0 0 4px;
}

.icec-credit .pay-info p {
    font-size: 15px;
    color: var(--icec-text-light);
    margin: 0;
}

.icec-credit .pay-price {
    font-size: 20px;
    font-weight: 700;
    color: var(--icec-text);
    width: 80px;
    text-align: right;
}

.icec-credit .pay-btn {
    width: 130px;
    text-align: right;
}

.icec-credit .pay-btn a {
    display: inline-block;
    background: #b5453a;
    color: #fff;
    padding: 8px 18px;
    font-size: 15px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 3px;
}

.icec-credit .pay-btn a:hover {
    background: #963a31;
}

.icec-credit .korean-notice {
    text-align: center;
    margin-top: 40px;
    font-size: 15px;
    color: var(--icec-text);
}

.icec-credit .korean-notice strong {
    display: block;
    margin-top: 4px;
}

.icec-credit .korean-notice .kr-text {
    margin-top: 8px;
    font-size: 16px;
}

.icec-credit .korean-btn {
    text-align: center;
    margin-top: 16px;
}

.icec-credit .korean-btn a {
    display: inline-block;
    background: #b5453a;
    color: #fff;
    padding: 10px 24px;
    font-size: 16px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 3px;
}

.icec-credit .korean-btn a:hover {
    background: #963a31;
}

/* ------------------------------------------
   44-c. How to Join Us 페이지 (.icec-join)
   인라인 <style> → style.css 이동 + 디자인 토큰 적용
   ------------------------------------------ */
.icec-join {
    max-width: 800px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: var(--icec-body-font);
    color: var(--icec-text);
    font-size: 17px;
    line-height: 1.8;
}

.icec-join h2 {
    font-size: 22px;
    font-weight: 700;
    color: var(--icec-text);
    margin: 0 0 14px;
}

.icec-join p {
    margin: 0 0 20px;
}

.icec-join .file-box {
    display: inline-block;
    border: 1px solid var(--icec-border);
    padding: 20px 30px;
    text-align: center;
    margin-bottom: 30px;
}

.icec-join .file-box .file-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 12px;
}

.icec-join .file-box .file-icon {
    font-size: 50px;
    color: var(--icec-text-light);
    margin-bottom: 6px;
}

.icec-join .file-box .file-ext {
    font-size: 15px;
    color: var(--icec-text-light);
}

.icec-join .email-label {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 4px;
}

.icec-join .email-addr {
    font-size: 24px;
    color: var(--icec-text);
}

/* ------------------------------------------
   45. WooCommerce 상품 상세 페이지
   컨퍼런스 등록 전용 — 깔끔한 카드형 레이아웃
   ------------------------------------------ */

/* 브레드크럼 숨김 */
.single-product .woocommerce-breadcrumb {
    display: none;
}

/* 상품 이미지 갤러리 숨김 (등록 상품에 불필요) */
.single-product .woocommerce-product-gallery {
    display: none !important;
}

/* Summary 전체 너비 (이미지 숨김 후) */
.single-product .summary.entry-summary {
    width: 100% !important;
    float: none !important;
    max-width: 680px;
    margin: 0 auto;
    padding: 40px 0;
}

/* 상품 제목 */
.single-product .product_title.entry-title {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-2xl);
    font-weight: 700;
    color: var(--icec-dark);
    margin-bottom: 12px;
    letter-spacing: -0.2px;
}

/* 가격 — 빨간색 */
.single-product .summary .price {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-xl);
    font-weight: 700;
    color: #b5453a;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--icec-border);
}

/* 짧은 설명 */
.single-product .woocommerce-product-details__short-description {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    line-height: 1.75;
    color: var(--icec-text);
    margin-bottom: 24px;
}

/* 수량 선택 숨김 (등록 = 1매) */
.single-product .quantity {
    display: none !important;
}

/* Register 버튼 */
.single-product .single_add_to_cart_button {
    background-color: var(--icec-menu-hover) !important;
    color: var(--icec-white) !important;
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    font-weight: 600;
    padding: 14px 48px;
    border: none;
    border-radius: var(--icec-radius-md);
    cursor: pointer;
    transition: background-color 0.2s ease;
    width: 100%;
    text-align: center;
}

.single-product .single_add_to_cart_button:hover {
    background-color: #247f9f !important;
}

/* 탭 섹션 숨김 (설명 중복) */
.single-product .woocommerce-tabs {
    display: none;
}

/* 상품 목록 페이지 — 카드 스타일 */
.woocommerce ul.products li.product {
    border: 1px solid var(--icec-border);
    border-radius: var(--icec-radius-md);
    padding: 24px;
    transition: box-shadow 0.2s ease;
    text-align: center;
}

.woocommerce ul.products li.product:hover {
    box-shadow: var(--icec-shadow-card);
}

/* 상품 목록 — 이미지 숨김 */
.woocommerce ul.products li.product a img {
    display: none;
}

/* 상품 목록 — 제목 */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-base);
    font-weight: 600;
    color: var(--icec-dark);
    padding: 0;
    margin-bottom: 8px;
}

/* 상품 목록 — 가격 (빨간색) */
.woocommerce ul.products li.product .price {
    color: #b5453a;
    font-size: var(--icec-fs-lg);
    font-weight: 700;
    margin-bottom: 16px;
}

/* 상품 목록 — 장바구니 버튼 */
.woocommerce ul.products li.product .button {
    background-color: var(--icec-menu-hover);
    color: var(--icec-white);
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-sm);
    font-weight: 600;
    padding: 10px 24px;
    border-radius: var(--icec-radius-md);
    border: none;
    transition: background-color 0.2s ease;
}

.woocommerce ul.products li.product .button:hover {
    background-color: #247f9f;
}

/* ------------------------------------------
   46. WooCommerce Checkout 페이지
   Wix Booking Form 매칭 — 2컬럼 레이아웃
   좌: 폼필드 / 우: 주문요약 사이드바
   ------------------------------------------ */

/* 컨테이너 960px + 2컬럼 flex */
.woocommerce-checkout .woocommerce {
    max-width: 960px;
    margin: 0 auto;
    padding: 40px 20px;
    font-family: var(--icec-body-font);
    color: var(--icec-text);
    font-size: 17px;
    line-height: 1.6;
}

/* 페이지 제목 — Wix "Booking Form" 매칭 */
.woocommerce-checkout .entry-title {
    font-family: var(--icec-body-font);
    font-size: 30px;
    font-weight: 700;
    color: var(--icec-dark);
    margin: 0 0 30px;
    text-align: left;
}

/* checkout form → 2컬럼 flex */
.woocommerce-checkout form.woocommerce-checkout {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

/* 좌측: 폼 필드 */
.woocommerce-checkout #customer_details {
    flex: 1;
    min-width: 0;
}

/* 우측: 주문요약 사이드바 */
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout #order_review {
    width: 280px;
    flex-shrink: 0;
}

/* "Your order" 제목 + 윗줄 숨김 */
.woocommerce-checkout #order_review_heading {
    display: none !important;
}

/* 쿠폰 영역 + 로그인 바 숨김 */
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout .checkout_coupon,
.woocommerce-checkout .woocommerce-form-login-toggle,
.woocommerce-checkout .woocommerce-form-login {
    display: none !important;
}

/* "Billing details" 제목 — Wix "Client Details" 매칭 */
.woocommerce-checkout #customer_details h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--icec-dark);
    margin: 0 0 20px;
}

/* Returning customer 로그인 바 — Wix 매칭 */
.woocommerce-checkout .woocommerce-info {
    background: #f2f2f2;
    border: none;
    border-left: none;
    padding: 12px 16px;
    font-size: 16px;
    margin-bottom: 24px;
    color: var(--icec-text);
}

.woocommerce-checkout .woocommerce-info a {
    color: var(--icec-dark);
    font-weight: 600;
}

/* Name + Email 가로 배치 */
.woocommerce-checkout #customer_details .col-1 {
    width: 100%;
    float: none;
}

.woocommerce-checkout #customer_details .col-2 {
    display: none;
}

/* 입력 필드 — Wix: 검은 보더, 정사각형 */
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #333;
    border-radius: 0;
    font-family: var(--icec-body-font);
    font-size: 16px;
    color: var(--icec-text);
    background: var(--icec-white);
    box-sizing: border-box;
    transition: border-color 0.2s ease;
}

.woocommerce-checkout .form-row textarea {
    min-height: 80px;
    resize: vertical;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
    border-color: var(--icec-menu-hover);
    outline: none;
}

/* 라벨 — Wix: 14px bold */
.woocommerce-checkout .form-row label {
    font-family: var(--icec-body-font);
    font-size: 16px;
    font-weight: 600;
    color: var(--icec-dark);
    margin-bottom: 6px;
    display: block;
}

/* 필수 표시 * */
.woocommerce-checkout .form-row label .required {
    color: var(--icec-dark);
}

/* 폼 행 간격 */
.woocommerce-checkout .form-row {
    margin-bottom: 20px;
}

/* Select2 드롭다운 — Wix 매칭 */
.woocommerce-checkout .select2-container .select2-selection--single {
    height: 40px;
    border: 1px solid #333;
    border-radius: 0;
}

.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
    line-height: 40px;
    padding-left: 12px;
    font-family: var(--icec-body-font);
    font-size: 16px;
    color: var(--icec-text);
}

/* === 사이드바: 주문 요약 === */

/* 주문 요약 테이블 */
.woocommerce-checkout .woocommerce-checkout-review-order-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 0;
    border: none;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    padding: 6px 0;
    font-family: var(--icec-body-font);
    font-size: 17px;
    border: none;
    background: none;
    color: var(--icec-text);
    font-weight: 400;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
    font-weight: 700;
    font-size: 17px;
    color: var(--icec-dark);
    text-transform: none;
    letter-spacing: 0;
    padding-bottom: 4px;
    border-bottom: none;
    background: none;
}

/* 상품명 — 볼드 */
.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
    font-weight: 700;
    font-size: 17px;
}

/* Subtotal 행 */
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th {
    font-weight: 400;
}

/* Total 행 — Wix: 볼드 금액 + 하단 구분선 */
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
    font-weight: 700;
    font-size: 17px;
    color: var(--icec-dark);
    padding-top: 12px;
    padding-bottom: 16px;
    border-top: 1px solid #ddd;
}

/* Shipping 행 숨김 (디지털 상품) */
.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-shipping-totals {
    display: none;
}

/* 결제 수단 영역 — Wix: 배경 없음, 심플 */
.woocommerce-checkout #payment {
    background: none;
    border-radius: 0;
    padding: 0;
    margin-top: 16px;
}

.woocommerce-checkout #payment .payment_methods {
    list-style: none;
    padding: 0;
    margin: 0 0 16px;
    border: none;
}

.woocommerce-checkout #payment .payment_methods li {
    padding: 8px 0;
    border-bottom: none;
}

.woocommerce-checkout #payment .payment_methods li label {
    font-family: var(--icec-body-font);
    font-size: 16px;
    font-weight: 500;
    color: var(--icec-dark);
    cursor: pointer;
}

/* Place Order 버튼 — Wix "Book Now" 매칭 (검정 배경) */
.woocommerce-checkout #place_order {
    background-color: #000 !important;
    color: var(--icec-white) !important;
    font-family: var(--icec-body-font);
    font-size: 17px;
    font-weight: 700;
    padding: 14px;
    border: none;
    border-radius: 0;
    width: 100%;
    cursor: pointer;
    transition: background-color 0.2s ease;
    text-align: center;
}

.woocommerce-checkout #place_order:hover {
    background-color: #222 !important;
}

/* 불필요 요소 숨김 */
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout .woocommerce-shipping-fields {
    display: none !important;
}

/* 개인정보 약관 텍스트 */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    font-family: var(--icec-body-font);
    font-size: var(--icec-fs-xs);
    color: var(--icec-text-light);
    margin-top: 8px;
}

/* Validation 에러 — Wix: 빨간 보더 + 에러 메시지 */
.woocommerce-checkout .woocommerce-invalid input.input-text,
.woocommerce-checkout .woocommerce-invalid textarea {
    border-color: #c44;
}

.woocommerce-checkout .form-row.woocommerce-invalid .error-msg,
.woocommerce-checkout .form-row .woocommerce-error {
    font-size: 15px;
    color: #c44;
    margin-top: 4px;
}

/* WooCommerce 공지/에러 — Wix 매칭 */
.woocommerce-checkout .woocommerce-error {
    font-family: var(--icec-body-font);
    font-size: 16px;
    border: none;
    border-left: none;
    padding: 12px 16px;
    margin-bottom: 16px;
    background: #fff5f5;
    color: #c44;
}

.woocommerce-checkout .woocommerce-message {
    font-family: var(--icec-body-font);
    font-size: 16px;
    background: #f2f2f2;
    border: none;
    padding: 12px 16px;
    margin-bottom: 16px;
}

/* Cart 페이지 → Checkout으로 리다이렉트되므로 Cart 숨김 */
.woocommerce-cart .woocommerce-cart-form {
    display: none;
}

.woocommerce-cart .cart-collaterals {
    display: none;
}
