/* 모바일 화면 패딩 조절 */
@media screen and (max-width: 768px) {
    body:not(.home) {
        padding-top: 40px !important; /* 모바일 헤더 높이에 맞춘 여백 */
    }
}

/* =========================
   1. 히어로 커버 반응형 레이아웃
   ========================= */
/* PC / 데스크탑 (1025px 이상) */
@media (min-width: 1025px) {
    .wpcom-ai-cover-hero {
        aspect-ratio: unset !important;
        min-height: 80vh !important;
        height: 100vh !important;
    }
    .wpcom-ai-cover-hero .wp-block-cover__inner-container {
        padding-top: 100px !important;
        padding-bottom: 60px !important;
    }
}

/* 태블릿 (769px ~ 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
    .wpcom-ai-cover-hero {
        aspect-ratio: unset !important;
        min-height: 100vh !important;
        height: 100vh !important;
    }
    .wpcom-ai-cover-hero .wp-block-cover__inner-container {
        padding-top: 120px !important;
        padding-bottom: 80px !important;
    }
    .wpcom-ai-cover-hero h1,
    .wpcom-ai-cover-hero h2 {
        font-size: clamp(2.5rem, 6vw, 4rem) !important;
        line-height: 1.15 !important;
    }
}

/* 모바일 (768px 이하) */
@media (max-width: 768px) {
    .wpcom-ai-cover-hero {
        aspect-ratio: unset !important;
        min-height: 50svh !important;
        max-height: 60svh !important;
    }
    .wpcom-ai-cover-hero .wp-block-cover__inner-container {
        justify-content: flex-start !important;
        padding-top: 0px !important;
        padding-bottom: 100px !important;
        margin-top: -100px !important;
    }
    .wpcom-ai-cover-hero h1,
    .wpcom-ai-cover-hero h2 {
        font-size: clamp(2.2rem, 10vw, 3.2rem) !important;
        line-height: 1.2 !important;
    }
    .wpcom-ai-cover-hero p {
        font-size: clamp(1.15rem, 4.8vw, 1.45rem) !important;
    }
}

.wpcom-ai-cover-hero .wp-block-button__link,
.wpcom-ai-cover-hero .wp-block-button a,
.wpcom-ai-cover-hero a.wp-block-button__link {
    white-space: nowrap !important;
    width: auto !important;
    min-width: max-content !important;
    padding: 8px 20px !important;
    font-size: 0.85rem !important;
    display: inline-block !important;
    text-align: center !important;
    word-break: keep-all !important;
    transition: all 0.3s ease !important;
}

.wpcom-ai-cover-hero .wp-block-button__link:hover,
.wpcom-ai-cover-hero .wp-block-button a:hover {
    opacity: 0.85 !important;
    transform: translateY(-2px);
}

/* ======================
   2. 메인 헤더
   ==================== */
#main-header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    padding: 15px 40px !important;
    box-sizing: border-box !important;
    border: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
    transition: background 0.3s ease, color 0.3s ease;
}

@media screen and (max-width: 768px) {
    #main-header {
        padding: 15px 20px !important;
    }
}

/* 모바일 일반 헤더 상단 연장 배경 */
#main-header::before {
    content: "" !important;
    position: absolute !important;
    top: -100px !important;
    left: 0 !important;
    right: 0 !important;
    height: 100px !important;
    background: inherit !important;
    z-index: -1 !important;
}

#main-header *,
#main-header a,
#main-header .wp-block-navigation-item__content {
    border: none !important;
    border-bottom: none !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

#main-header,
#main-header.scrolled {
    background: #FAF9F6 !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
}

#main-header a,
#main-header .wp-block-navigation-item__content,
#main-header .wp-block-site-title a,
#main-header #lang-btn,
#main-header #lang-btn *,
#main-header #lang-switcher button,
#main-header.scrolled a,
#main-header.scrolled .wp-block-navigation-item__content,
#main-header.scrolled .wp-block-site-title a,
#main-header.scrolled #lang-btn,
#main-header.scrolled #lang-btn *,
#main-header.scrolled #lang-switcher button {
    color: rgba(55, 55, 57, 1) !important;
}

#main-header .wp-block-navigation__responsive-container-open,
#main-header.scrolled .wp-block-navigation__responsive-container-open {
    color: rgba(55, 55, 57, 1) !important;
}
#main-header .wp-block-navigation__responsive-container-open svg,
#main-header.scrolled .wp-block-navigation__responsive-container-open svg {
    fill: rgba(55, 55, 57, 1) !important;
    stroke: rgba(55, 55, 57, 1) !important;
}

/* 홈 상단 스크롤 전 (투명 헤더일 때 흰색 유지) */
#main-header.is-home-header:not(.scrolled) {
    background: transparent !important;
    box-shadow: none !important;
}

#main-header.is-home-header:not(.scrolled) .wp-block-site-title a,
#main-header.is-home-header:not(.scrolled) #lang-btn,
#main-header.is-home-header:not(.scrolled) #lang-btn *,
#main-header.is-home-header:not(.scrolled) #lang-switcher > button,
#main-header.is-home-header:not(.scrolled) #lang-switcher > a,
#main-header.is-home-header:not(.scrolled) .wp-block-navigation__container > li > a,
#main-header.is-home-header:not(.scrolled) .wp-block-navigation__container > li > .wp-block-navigation-item__content {
    color: #f7f5f2 !important;
}

#main-header.is-home-header:not(.scrolled) .wp-block-navigation__responsive-container-open {
    color: #f7f5f2 !important;
}
#main-header.is-home-header:not(.scrolled) .wp-block-navigation__responsive-container-open svg {
    fill: #f7f5f2 !important;
    stroke: #f7f5f2 !important;
}

/* ===================
   3. 모바일 사이드 패널 메뉴
  ==================== */
.wp-block-navigation__responsive-container.is-menu-open,
.wp-block-navigation__responsive-container.is-menu-open *,
.wp-block-navigation-submenu,
.wp-block-navigation-submenu * {
    color: #222222 !important;
    -webkit-text-fill-color: #222222 !important;
    opacity: 1 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg {
    fill: #222222 !important;
    stroke: #222222 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    line-height: 1 !important;
    display: inline-block !important;
}

/* ========================
   4. 언어 선택 및 서브메뉴 드롭다운
   ========================= */
#main-header .wp-block-navigation__submenu-container,
#main-header .wp-block-navigation-submenu,
#main-header #lang-switcher ul,
#main-header #lang-switcher .dropdown-menu,
#main-header .lang-dropdown,
#main-header [class*="lang"] ul,
#main-header [class*="lang"] .dropdown-menu {
    background-color: #FAF9F6 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
    border: none !important;
}

#main-header .wp-block-navigation__submenu-container *,
#main-header #lang-switcher ul *,
#main-header #lang-switcher .dropdown-menu *,
#main-header .lang-dropdown *,
#main-header [class*="lang"] ul *,
#main-header [class*="lang"] .dropdown-menu * {
    color: rgba(55, 55, 57, 1) !important;
}

#main-header .wp-block-navigation__submenu-container a:hover,
#main-header #lang-switcher ul a:hover,
#main-header #lang-switcher ul button:hover,
#main-header #lang-switcher .dropdown-menu a:hover,
#main-header .lang-dropdown a:hover {
    opacity: 0.6 !important;
}

/* 기본적으로 언어 전용 메뉴 숨김 */
.lang-kr-only, .lang-en-only, .lang-it-only, .lang-jp-only {
    display: none !important;
}

/* html lang 속성 기반으로 해당 언어 메뉴만 표시 (ja 및 jp 모두 대응) */
:lang(ko) .lang-kr-only { display: inline-block !important; }
:lang(en) .lang-en-only { display: inline-block !important; }
:lang(it) .lang-it-only { display: inline-block !important; }
:lang(ja) .lang-jp-only, :lang(jp) .lang-jp-only { display: inline-block !important; }

}
:lang(ko) p {
    font-family: 'Noto Sans',KR, sans-serif !important;
}
/* 일본어 전용 폰트 (ja 및 jp 모두 대응) */
:lang(ja) p, :lang(jp) p {
    font-family: 'Noto Sans JP', 'Hiragino Sans', sans-serif !important;
}

/* 홈페이지(Home) 전체 드래그 방지 */
body.home {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
}

body.home img {
    -webkit-user-drag: none !important;
    user-drag: none !important;
}