
/* Reset and Base Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
.mt40 {
    margin-top: 40px;
}
/* 언어별 최적화 스타일 */
/* 한국어 */
html[lang="ko"] {
    --text-scale: 1;
    --line-height-scale: 1.2;
    --letter-spacing: -0.02em;
}
html[lang="ja"] .vip-benefits p {
    word-break: break-all;
    overflow-wrap: normal;
    word-wrap: break-word;
}
.transportationWrap {
    margin-top: 30px;
}
.transportationWrap h2 {
    font-size: 20px;
    font-weight: 700;
    color: #000;
    margin-bottom: 10px;
    border-bottom: 2px solid #000;
    display: inline-block;
}
.transportationWrap p {
    font-size: 14px;
}
.locationInfoWrap {
    margin: 10px;
    margin-bottom: 30px;
}
.lineSymbol {
    width: 20px;
    display: inline-block;
    text-align: center;
    height: 20px;
    border-radius: 25px;
    color: #fff;
    font-size: 14px;
    line-height: 20px;
}
.lineSymbol.num9 {
    background: rgb(157, 140, 73);
}
.color9 {
    color: rgb(157, 140, 73);
}
.lineSymbol.num5 {
    background: #785C97;
}
.color5 {
    color: #785C97;
}
.lineSymbol.numG {
    background: #37B42D;
}
.colorG {
    color: #37B42D;
}
.lineSymbol.numB {
    background: #26479D;
}
.colorB {
    color: #26479D;
}
.locationInfoWrap ul {
    margin-top: 10px;
    padding-left: 10px;
    list-style: none;
}
.locationInfoWrap ul li {
    font-size: 15px;
    padding: 5px 0;
}
.locationInfoWrap ul li .fwB {
    font-weight: 600;
}
.locationInfoWrap ul li.subLi {
    padding: 0;
    padding-left: 10px;
}
/* 영어 */
html[lang="en"] {
    --text-scale: 0.8;
    --line-height-scale: 1.25;
    --letter-spacing: 0.01em;
}

/* 일본어 */
html[lang="ja"] {
    --text-scale: 0.82;
    --line-height-scale: 1.35;
    --letter-spacing: -0.01em;
    font-family: "Pretendard JP Variable", "Pretendard JP", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Hiragino Sans", "Apple SD Gothic Neo", Meiryo, "Noto Sans JP", "Noto Sans KR", "Malgun Gothic", Osaka, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
}

/* 중국어 */
html[lang="zh"] {
    --text-scale: 0.88;
    --line-height-scale: 1.3;
    --letter-spacing: 0.02em;
    font-weight: 400;
    font-family: "Noto Sans SC", sans-serif;
}

/* 피그마 디자인 기반 스타일 */
html, body {
    height: 100%;
    margin: 0;
    padding: 0;
    scroll-behavior: smooth;
}

body {
    font-family: 'Pretendard Variable', 'Noto Sans', sans-serif;
    background: url('https://bb-cdn.gameking.com/web/376399/b98acfccdd6bc4605f0eda70b4d9dea57e11d62d.jpg');
    background-size: cover;
    color: #000000;
    line-height: var(--line-height-scale, 1.6);
    letter-spacing: var(--letter-spacing, 0);
    overflow-x: hidden;
    padding-top: 80px; /* 헤더 높이만큼 상단 패딩 추가 */
    word-break: keep-all;
    overflow-wrap: break-word;
}

/* 반응형 줄바꿈 클래스 */
.mobile-br {
    display: none;
}
.mo-none {
    display: inline;
}
.main-container {
    width: 100%;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    padding: 0;
    position: relative;
}


/* 헤더 */
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 37px;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.3);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    z-index: 1000;
    transition: all 0.3s ease;
}

/* 스크롤 시 헤더 스타일 */
.header.scrolled {
    background: rgba(0, 0, 0, 0.8);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.3);
}

.logo {
    width: 326px;
    height: 72px;
    flex-shrink: 0;
}

.logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: left center;
}

/* homeBtn 클릭 가능 스타일 */
.homeBtn {
    cursor: pointer;
}


.nav {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 195px;
}

/* 언어 선택 박스 */
.language-selector {
    flex-shrink: 0;
    position: relative;
    width: 153.885px;
    height: 42px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.language-select {
    width: 100%;
    height: 100%;
    background: transparent;
    border: 2px solid #f9f9f9;
    color: #f9f9f9;
    font-size: 16px;
    font-weight: bold;
    outline: none;
    cursor: pointer;
    transition: all 0.3s ease;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    text-align: center;
    text-align-last: center;
    line-height: 1;
    position: relative;
    z-index: 2;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-text-align-last: center;
    -moz-text-align-last: center;
}

.language-select:hover {
    background: rgba(249, 249, 249, 0.1);
    border-color: #ffffff;
}

.language-select:focus {
    background: rgba(249, 249, 249, 0.1);
    border-color: #ffffff;
    box-shadow: 0 0 0 2px rgba(249, 249, 249, 0.2);
}

.language-select option {
    background: #1a1a1a;
    color: #ffffff;
    padding: 8px 12px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

/* 언어 선택박스 아이콘들 */
.language-selector::before {
    content: '';
    position: absolute;
    left: 28.36px;
    top: 50%;
    transform: translateY(-50%);
    width: 17px;
    height: 17px;
    background: url('/images/dfc37f035b8921083d8559cd6a4b2a0ad8f8cbf6.png') center/cover no-repeat;
    z-index: 1;
    pointer-events: none;
}

.language-selector::after {
    content: '';
    position: absolute;
    right: 13.52px;
    top: 50%;
    transform: translateY(-50%) rotate(180deg);
    width: 12px;
    height: 8px;
    background: url('/images/4f8b0b0c03af0bacfe560f94c6ab45b0fba6c3b4.svg') center/contain no-repeat;
    z-index: 1;
    pointer-events: none;
}

.nav-link {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 35px;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.3s ease;
    --text-scale: 0.85;
    --line-height-scale: 1.3;
    --letter-spacing: -0.02em;
    line-height: var(--line-height-scale, 1.6);
    letter-spacing: var(--letter-spacing, 0);
}

.nav-link.exhibition {
    color: #d69600;
    
}

.nav-link.limited {
    color: #ffffff;
    
}

.nav-link:hover {
    color: #d69600;
}

/* 햄버거 메뉴 버튼 (기본적으로 숨김) */
.hamburger-menu {
    display: none;
    flex-direction: column;
    justify-content: space-between;
    width: 24px;
    height: 18px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 1001;
}

.hamburger-line {
    width: 100%;
    height: 2px;
    background-color: #ffffff;
    transition: all 0.3s ease;
}

.hamburger-menu.active .hamburger-line:nth-child(1) {
    transform: rotate(45deg) translate(6px, 6px);
}

.hamburger-menu.active .hamburger-line:nth-child(2) {
    opacity: 0;
}

.hamburger-menu.active .hamburger-line:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
}

/* 모바일 메뉴 오버레이 */
.mobile-menu-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5); /* 오버레이 배경 복원 */
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.mobile-menu-overlay.active {
    opacity: 1;
    visibility: visible;
}

.mobile-menu {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: auto;
    min-height: 240px;
    background: #f9f9f9;
    padding: 20px;
    transform: translateY(-100%);
    transition: transform 0.3s ease;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
    z-index: 1001;
}

.mobile-menu-overlay.active .mobile-menu {
    transform: translateY(0);
}

.mobile-menu-close {
    position: absolute;
    top: 20px;
    right: 20px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    line-height: 1;
    width: 23px;
    height: 11px;
    background-image: url('/images/8eb7a47094ecd79fdaa83cf02cbcf74f3a3da5bf.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    text-indent: -9999px;
}

.mobile-nav {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin: 0;
    position: relative;
    top: 40px;
    left: 0;
    padding: 0 20px;
}

.mobile-nav-link {
    color: #101010;
    text-decoration: none;
    font-family: 'Pretendard Variable', sans-serif;
    font-size: 28px;
    font-weight: bold;
    padding: 15px 0;
    margin: 0 20px;
    border-bottom: none;
    transition: color 0.3s ease;
    line-height: normal;
}

.mobile-nav-link:last-child {
    margin-bottom: 20px;
}

.mobile-nav-link:hover,
.mobile-nav-link.active {
    color: #d69600
}

.mobile-language-selector {
    position: relative;
    margin: 30px 20px 20px 20px;
}

.mobile-language-selector::after {
    content: '';
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #101010;
    pointer-events: none;
    z-index: 1;
}

.mobile-language-select {
    width: 100%;
    padding: 12px 35px 12px 15px;
    background: transparent;
    border: 1px solid #101010;
    border-radius: 4px;
    color: #101010;
    font-family: 'Pretendard Variable', sans-serif;
    font-size: 16px;
    font-weight: normal;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.mobile-language-select option {
    background: #2d2d2d;
    color: #ffffff;
}

/* 히어로 섹션 */
.hero-section {
    display: flex;
    justify-content: center;
    padding: 0 36px;
    margin-bottom: 200px;
    position: relative;
}

.hero-image {
    width: 100%;
    max-width: 1848px;
    height: 784px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 0px 5px 11px 0px rgba(0,0,0,0.6);
    position: relative;
    z-index: 2;
}

/* 화이트 베어브릭을 아래에 absolute로 고정 */
.white-bearbrick-image {
    position: absolute;
    top: 784px;
    left: 36px;
    right: 36px;
    width: calc(100% - 72px);
    max-width: 1848px;
    height: 759px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
    margin: 0 auto;
}

/* 전시 정보 섹션 */
.exhibition-info {
    padding: 66px 40px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 200px;
    position: relative;
    z-index: 2;
}

.main-title {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: 800;
    font-size: calc(50px * var(--text-scale, 1));
    color: #ffffff;
    margin-bottom: 23px;
    line-height: var(--line-height-scale, 1.2);
    letter-spacing: var(--letter-spacing, 0);
    word-break: keep-all;
    overflow-wrap: break-word;
}

.exhibition-period {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: 700;
    font-size: calc(24px * var(--text-scale, 1));
    color: #ffffff;
    margin-bottom: 25px;
    line-height: var(--line-height-scale, 1.2);
    letter-spacing: var(--letter-spacing, 0);
    word-break: keep-all;
}

.description {
    font-family: 'Pretendard Variable', sans-serif;
    color: #ffffff;
    font-weight: 400;
    font-size: calc(25px * var(--text-scale, 1));
    line-height: calc(100% * var(--line-height-scale, 1.2));
    letter-spacing: var(--letter-spacing, 0);
    text-align: center;
    word-break: keep-all;
    overflow-wrap: break-word;

}
.description p b {
    font-weight: 700;
    font-size: calc(35px * var(--text-scale, 1));
}
.mt80 {
    margin-top: 80px;
}

.description br {
    margin-bottom: 20px;
}
/* 티켓 섹션 */
.tickets-section {
    display: flex;
    justify-content: center;
    padding: 0 40px;
        gap: 40px;
    margin-bottom: 50px;
}

.ticket-card {
    width: 704px;
    position: relative;
    background: transparent;
    border: 2px solid #f9f9f9;
    border-radius: 5px;
    padding: 60px 0;
    padding-top: 70px;
}
.ticket-card.earlyTicket {
    max-width: 1448px;
    width: 100%;
    height: max-content;
    padding: 60px;
    background: transparent;
    border: 2px solid #f9f9f9;
    border-radius: 5px;
}
.dFlex {
    display: flex;
}
.ticket-card.earlyTicket .dFlex {
    margin-top: 25px;
    align-items: flex-end;
    justify-content: space-between;
}
.ticket-card.earlyTicket .dFlex .ticket-button {
    margin: 0 ; 
}
.ticket-card.earlyTicket .dFlex .vip-benefits {
    text-align: left;
}
.ticket-card.earlyTicket .ticket-title {
    text-align: left;
}
.vip-bearbrick {
    height: 228px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0 auto;
    margin-top: 20px;
}

.ticket-title {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 35px;
    text-shadow: rgba(0,0,0,0.5) 0px 3px 6px;
    white-space: nowrap;
    text-align: center;
    margin-bottom: 7px;
}
.textC {
    text-align: center;
    color: #fff;
    font-weight: 700;
    font-size: 20px;
}
.vip-title {
    color: #ffc400;
}
.ticket-card.general .ticket-title {
    color: #ffc400;
}
.mt25 {
    margin-top: 25px;
}
.mt50 {
    margin-top: 50px;
}
.vip-benefits {
    font-weight: 500;
    font-size: 16px;
    color: #ffffff;
    line-height: 1.2;
}
.vip-benefitsTitl h1{
    margin-bottom: 10px;
    color: #ffffff;
    font-weight: 600;
    font-size: 20px;
}
.vip-benefitsTitl p {
    color: #fff;
}
html[lang="zh"] .vip-benefits p {
    font-weight: 600;
}
html[lang="en"] .vip-benefits p {
    font-size: 15px;
}
.vip-benefitsTextWrap {
    padding: 0 55px;
    /* height: 250px; */
    margin-top: 20px;
}
.ticket-prices {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin: 25px 0 0 0;
}

.price-item {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 20px;
    color: #ffffff;
    white-space: nowrap;
    text-align: center;
}

.price-note {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 14px;
    color: #ffffff;
    text-align: center;
    white-space: nowrap;
    margin: 15px 0 0 0;
}

.ticket-price {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 35px;
    color: #ffffff;
    text-align: center;
    margin: 25PX 0 0 0;
}

.ticket-button {
    width: 219px;
    height: 63px;
    border: 2px solid #f9f9f9;
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 20px;
    cursor: pointer;
    background-color: transparent;
    color: #f9f9f9;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    position: relative;
    margin: 50px auto 0;
    text-decoration: none; /* a 태그의 밑줄 제거 */
    outline: none; /* focus 시 outline 제거 */
    display: flex;
    justify-content: center;
    padding: 0;
    gap: 20px;
}
.ticket-button.absoluteBtn {
    position: absolute;
    bottom: 60px;
    left: 50%;
    transform: translateX(-50%);
}
.general .ticket-button {
    margin: 24px auto 0;
}

html[lang="zh"] .ticket-button p {
    font-weight: bold;
}
.ticket-arrow {
    width: 21px;
    height: 19px;
    background: url('/images/b76ddef12ee175d0071dd0faefe36dda54868520.png') no-repeat center;
}
@media (hover: hover) and (pointer: fine) {
    .ticket-button:hover {
        background-color: #ffffff;
        color: #042A80;
        border: 2px solid #ffffff;
    }
    .ticket-button:hover .ticket-arrow {
        background: url('/images/166299c653002919e4dfe67a5db0d06b87268375.png') no-repeat center;
        background-size: contain;
    }
}
.vip-benefits h2 {
    font-size: 16px;
    font-weight: 600;
}


.ticket-button.inactive {
    background-color: #0f0f0f;
    color: #ffffff;
}

.container1448 {
    max-width: 1448px;
    width: 100%;
    margin: 0 auto;
}
.container965 {
    max-width: 965px;
    width: 100%;
    margin: 0 auto;
}
.topNoticeWrap {
    border: 2px solid #f9f9f9;
    border-radius: 5px;
}
.topNoticeWrap .noticeContentWrap {
    max-width: 980px;
    width: 100%;
    margin: 0 auto;
    padding: 80px 0;
}
.topNoticeWrap .noticeContentWrap .ticket-title {
    margin-top: 0;
}
.topNoticeWrap .noticeContentWrap .notice-content {
    margin-top: 80px;
}
.topNoticeWrap .noticeContentWrap .notice-content .notice-section{
    margin-bottom: 0;
}
.topNoticeWrap .noticeContentWrap h4 {
    margin-bottom: 10px;
    color: #ffffff;
    font-weight: 600;
    font-size: 20px;
}
.topNoticeWrap .noticeContentWrap p {
    color: #ffffff;
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
}
.topNoticeWrap .noticeContentWrap .notice-table th,
.topNoticeWrap .noticeContentWrap  .notice-table td {
    border: 1px solid #f9f9f9;
    background: none;
    color: #f9f9f9;
}
.topNoticeWrap .noticeContentWrap .notice-table th {
    background:#f9f9f9;
    color: #042A80;
}
.ticket-title.colorW {
    color: #fff;
    margin-bottom: 105px;
    font-weight: 700;
    font-size: 60px;
}

.topNoticeWrap.container965 .noticeContentWrap {
    padding: 20px 55px;
}
.topNoticeWrap.container965 .noticeContentWrap .notice-content {
    margin-top: 0;
}
.topNoticeWrap.container965 .noticeContentWrap p {
    line-height: 1.2;
}
.topNoticeWrap.container965 .noticeContentWrap p.textC {
    text-align: center;
    margin-bottom: 20px;
}
/* 반응형 notice-section */
@media (max-width: 1200px) {
    .topNoticeWrap {
        border: none;
        border-radius: 0;
        padding: 0 40px;
    }
    .mo-none {
        display: none;
    }
    .topNoticeWrap .noticeContentWrap {
        max-width: 600px;
        padding: 60px 20px;
        border: 2px solid #f9f9f9;
        border-radius: 5px;
    }
    
    .topNoticeWrap .noticeContentWrap .ticket-title {
        margin-top: 0;
    }
    
    .topNoticeWrap .noticeContentWrap .notice-content {
        margin-top: 50px;
    }
    
    .topNoticeWrap .noticeContentWrap h4 {
        font-size: 18px;
    }
    
    .topNoticeWrap .noticeContentWrap p {
        font-size: 15px;
        line-height: 1.5;
    }
}

@media (max-width: 1000px) {
    .container1448 {
        width: 100%;
        max-width: 600px;
    }
    
    .topNoticeWrap {
        padding: 0 ;
    }
    
    .topNoticeWrap .noticeContentWrap {
        padding: 40px 20px;
        border: 2px solid #f9f9f9;
        border-radius: 5px;
    }
    
    .topNoticeWrap .noticeContentWrap .ticket-title {
        margin-top: 0;
    }
    
    .topNoticeWrap .noticeContentWrap .notice-content {
        margin-top: 30px;
    }
    
    .topNoticeWrap .noticeContentWrap h4 {
        font-size: 16px;
    }
    
    .topNoticeWrap .noticeContentWrap p {
        font-size: 14px;
        line-height: 1.6;
    }
    
    .topNoticeWrap .noticeContentWrap .notice-table th,
    .topNoticeWrap .noticeContentWrap .notice-table td {
        font-size: 13px;
        padding: 8px 6px;
    }
    .topNoticeWrap.container965 .noticeContentWrap {
        padding: 20px;
    }
}

@media (max-width: 480px) {
    .vip-benefits p {
        font-weight: 400 !important;
    }
    .container1448 {
        width: 100%;
    }
    .topNoticeWrap {
        padding: 0 10px;
    }
    
    .topNoticeWrap .noticeContentWrap {
        padding: 25px 15px;
        border: 2px solid #f9f9f9;
        border-radius: 5px;
    }
    
    .topNoticeWrap .noticeContentWrap .ticket-title {
        margin-top: 0;
    }
    
    .topNoticeWrap .noticeContentWrap .notice-content {
        margin-top: 20px;
    }
    
    .topNoticeWrap .noticeContentWrap h4 {
        font-size: 15px;
        font-weight: 700;
        margin-bottom: 8px;
    }
    
    .topNoticeWrap .noticeContentWrap p {
        font-size: 12px;
        line-height: 1.2;
    }
    
    .topNoticeWrap .noticeContentWrap .notice-table th,
    .topNoticeWrap .noticeContentWrap .notice-table td {
        font-size: 11px;
        padding: 6px 4px;
    }
    .topNoticeWrap.container965 .noticeContentWrap {
        padding: 25px 10px;
        margin-top: 30px;
    }
    .topNoticeWrap.container965 .noticeContentWrap p.textC {
        margin-bottom: 14px;
    }
}
/* 서울 전용 아티스트 섹션 */
.exclusive-artists {
    margin: 0 auto;
    margin-bottom: 100px;
    padding: 0 20px;
    max-width: 1920px;
    width: 100%;
    overflow: hidden;
}

.section-title {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: 800;
    font-size: 60px;
    color: #ffffff;
    text-align: center;
    margin-bottom: 90px;
}

.artists-gallery {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    height: 1041px;
    overflow-x: auto;
    scroll-behavior: smooth;
    padding: 20px 0;
    position: relative;
}

.artist-item {
    flex-shrink: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-radius: 12px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    position: relative;
}

.artist-item:hover {
    transform: scale(1.05);
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}

.artist-item.artist-5 {
    width: 357px;
    height: 976px;
}

.artist-item.artist-4 {
    width: 561px;
    height: 1038px;
}

.artist-item.artist-1 {
    width: 687px;
    height: 1041px;
}

.artist-item.artist-2 {
    width: 561px;
    height: 1037px;
}

.artist-item.artist-3 {
    width: 394px;
    height: 995px;
}

/* Ben-Baller 특별 섹션 */
.ben-baller-overlay {
    position: absolute;
    top: 18px;
    left: 29px;
    width: 631px;
    height: 985px;
    background: linear-gradient(to bottom, #939393 0%, #f9f9f9 60%, #939393 100%);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 47px 20px 66px;
}

.artist-name {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: 800;
    font-size: 40px;
    color: #0f0f0f;
    text-align: center;
    margin-bottom: 40px;
}

.bearbrick-showcase {
    width: 205px;
    height: 415px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bearbrick-showcase img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}




.size-info {
    display: flex;
    flex-direction: column;
    gap: 37px;
    width: 382px;
    margin-bottom: auto;
}

.size-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 25px;
    color: #0f0f0f;
    border-bottom: 1px solid #000;
    padding-bottom: 8px;
}

.exhibition-sales-info {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.exhibition-section {
    display: flex;
    align-items: center;
    gap: 30px;
    justify-content: center;
}

.exhibition-section .section-title {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: 800;
    font-size: 40px;
    color: #0f0f0f;
    text-shadow: none;
    margin: 0;
}



.exhibition-section .section-title.sales {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: 800;
    font-size: 40px;
    color: #4a4dff;
    margin: 0;
}

.sales-section {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.sales-section .size-info {
    margin-top: 15px;
}

.artist-price {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 35px;
    color: #0f0f0f;
    text-align: center;
}

/* 갤러리 네비게이션 */
.gallery-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 0 20px;
    pointer-events: none;
}

.nav-arrow {
    width: 60px;
    height: 94px;
    border: none;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
    pointer-events: all;
    border-radius: 50%;
    transition: transform 0.3s ease;
}

.nav-arrow:hover {
    transform: scale(1.1);
}

.nav-arrow.left {
    transform: rotate(180deg) scaleY(-100%);
}

.nav-arrow.left:hover {
    transform: rotate(180deg) scaleY(-100%) scale(1.1);
}

/* 아코디언 섹션 */
.accordion-sections {
    padding: 0 477px;
    margin-bottom: 100px;
    display: flex;
    flex-direction: column;
    gap: 60px;
}

.accordion-item {
    width: 100%;
    max-width: 965px;
    margin: 0 auto;
    background-color: transparent;
    border-radius: 5px;
    overflow: hidden;
    transition: all 0.3s ease;
    max-height: 110px;
}

.accordion-item.active {
    background-color: #f9f9f9;
    border-radius: 5px;
    max-height: max-content;
}

.accordion-header {
    width: 100%;
    height: 110px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 70px;
    cursor: pointer;
    border-radius: 5px;
    transition: all 0.3s ease;
}

.accordion-item.active .accordion-header {
    background-color: transparent;
    border-radius: 5px 5px 0 0;
}

.accordion-header h3 {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 35px;
    color: #ffffff;
    margin: 0;
    transition: color 0.3s ease;
}

.accordion-item.active .accordion-header h3 {
    color: #0f0f0f;
}

.accordion-icon {
    width: 32px;
    height: 29px;
    background-position: center;
    background-repeat: no-repeat;
    transition: opacity 0.3s ease;
}

.accordion-item.active .accordion-icon {
    background-image: url('/images/accordionActive.png') !important;
}

.accordion-content {
    overflow: hidden;
    transition: max-height 0.3s ease;
    background-color: transparent;
    border-radius: 0 0 5px 5px;
    padding: 0;
    max-height: 0;
}

.accordion-item.active .accordion-content {
    background-color: #f9f9f9;
    padding: 0 70px;
    max-height: max-content;
}

.accordion-content-inner {
    padding: 0;
    opacity: 0;
    transform: translateY(-20px);
    transition: all 0.3s ease;
}

.accordion-item.active .accordion-content-inner {
    opacity: 1;
    transform: translateY(0);
    padding: 60px 0;
}

.artists-intro {
    font-family: 'Pretendard Variable', sans-serif;
    font-weight: bold;
    font-size: 20px;
    color: #000000;
    text-align: center;
    margin-bottom: 40px;
    line-height: 1.4;
}

.artists-list {
    font-family: 'Pretendard Variable', 'Noto Sans', sans-serif;
    font-weight: bold;
    font-size: 14px;
    color: #000000;
    line-height: 1;
    text-align: left;
    word-break: keep-all;
    overflow-wrap: break-word;
}

.artists-list p {
    margin-bottom: 8px;
    line-height: 1.2;
    /* font-weight: bold !important; */
     font-family: 'Pretendard Variable', 'Noto Sans', sans-serif !important;
}

.accordion-arrow-up {
    display: none; /* 필요시 flex로 변경 */
    position: absolute;
    top: 46px;
    right: 70px;
    width: 30px;
    height: 18px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/* 공지사항 스타일 */
.notice-content {
    font-family: 'Pretendard Variable', sans-serif;
    color: #000000;
}

.notice-section {
    margin-bottom: 266px;
}

.notice-section h4 {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
    color: #000000;
}

.notice-section p {
    font-weight: 400;
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 5px;
    color: #000000;
}

.notice-table {
    margin: 20px 0;
    margin-top: 10px;
}

.notice-table table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #000000;
}

.notice-table th,
.notice-table td {
    border: 2px solid #f9f9f9;
    padding: 12px;
    text-align: center;
    font-size: 14px;
    font-weight: 400;
    vertical-align: middle;
}

.notice-table th {
    width: 50%;
    background-color: #f9f9f9;
    color: #042A80;
    font-weight: bold;
}
.notice-table th:first-child {
border-right: 2px solid #545454;
}

.notice-table td {
    color: #f9f9f9;
}


/* 푸터 */
.footer {
    background-color: #0f0f0f;
    padding: 35px 38px 40px 38px;
    margin-top: auto;
    min-height: 220px;
}

.footer-content {
    display: flex;
    flex-direction: column;
    max-width: 1920px;
    margin: 0 auto;
    position: relative;
}

.footer-logo {
    width: 320px;
    height: 70px;
    margin-bottom: 18px;
    flex-shrink: 0;
}

.footer-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: left center;
}

.footer-info {
    font-family: 'Pretendard Variable', 'Noto Sans', sans-serif;
    font-weight: 100;
    font-size: 16px;
    color: #ffffff;
    line-height: normal;
    margin-bottom: 6px;
}

.footer-info .company-info {
    margin-bottom: 6px;
    white-space: pre-line;
}

.footer-info .business-info {
    margin-bottom: 20px;
}

.footer-info .copyright {
    margin-bottom: 0;
}

.footer-social {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 65px;
    height: 65px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    cursor: pointer;
    transition: transform 0.3s ease;
}

.footer-social:hover {
    transform: scale(1.1);
}
      


      .swiper {
        width: 100%;
        max-width: 1600px;
        margin: 0 auto;
        padding-top: 50px;
        padding-bottom: 50px;
        position: relative;
        overflow: visible !important;
      }

      .swiper-wrapper {
        overflow: visible !important;
      }

      .swiper-container {
        overflow: visible !important;
      }

      /* 스와이퍼 네비게이션 버튼 커스텀 스타일 */
      .swiper-button-next,
      .swiper-button-prev {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 44px;
        height: 44px;
        margin-top: 0;
        background: rgba(255, 255, 255, 0.9);
        border-radius: 50%;
        color: #333;
        font-size: 18px;
        font-weight: bold;
        z-index: 10;
        transition: all 0.3s ease;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
        display: flex;
        align-items: center;
        justify-content: center;
      }

      .swiper-button-next:hover,
      .swiper-button-prev:hover {
        background: rgba(255, 255, 255, 1);
        transform: translateY(-50%) scale(1.1);
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
      }

      /* 중앙 active 슬라이드 기준으로 좌우 50px에 위치 */
      .swiper-button-next {
        left: calc(50% + 275px + 50px); /* 슬라이드 너비의 절반(275px) + 여백 50px */
      }

      .swiper-button-prev {
        right: calc(50% + 275px + 50px); /* 슬라이드 너비의 절반(275px) + 여백 50px */
        left: auto;
      }

      /* 아이콘 커스터마이징 */
      .swiper-button-next:after,
      .swiper-button-prev:after {
        font-size: 16px;
        font-weight: 900;
      }

      .swiper-slide {
        background-position: center;
        background-size: cover;
        width: 550px;
        height: 857px;
        perspective: 1000px;
        position: relative;
        transition: filter 0.3s ease;
      }

      /* 비활성 슬라이드에 블러 효과 적용 */
      .swiper-slide:not(.swiper-slide-active):not(.swiper-slide-next):not(.swiper-slide-prev) {
        filter: blur(3px);
        opacity: 0.7;
      }

      /* 활성 슬라이드와 인접한 슬라이드는 약간의 블러만 */
      .swiper-slide.swiper-slide-next,
      .swiper-slide.swiper-slide-prev {
        filter: blur(1px);
        opacity: 1;
      }

      /* 활성 슬라이드는 선명하게 */
      .swiper-slide.swiper-slide-active {
        filter: none;
        opacity: 1;
      }

      .swiper-slide img {
        display: block;
        width: 100%;
      }

      /* 모바일 반응형 아티스트 카드 스타일 - 동전 플립 애니메이션 제거 */
      .artist-card {
        width: 100%;
        height: 100%;
        position: relative;
        pointer-events: none; /* 직접 이벤트 받지 않음 */
      }
html[lang="ja"] .description ,html[lang="en"] .description{
    font-weight: 400;
}
      /* 모바일에서는 아티스트 이미지 숨기고 정보만 표시 */
      @media (max-width: 1024px) {
        .artist-img {
          display: none !important;
        }

        .artist-info {
          position: static !important;
          transform: none !important;
          backface-visibility: visible !important;
          display: flex !important;
          width: 100% !important;
          height: 100% !important;
        }
      }

      /* 데스크탑에서는 기존 플립 애니메이션 유지 */
      @media (min-width: 1025px) {
        .artist-card {
          transform-style: preserve-3d;
          transition: transform 0.6s ease;
        }

        /* active 슬라이드만 호버 커서 표시 */
        .swiper-slide.swiper-slide-active {
          cursor: pointer;
        }

        .swiper-slide:not(.swiper-slide-active) {
          cursor: default;
        }

        /* 비활성 슬라이드는 플립 방지 */
        .swiper-slide:not(.swiper-slide-active) .artist-card.flipped {
          transform: none !important;
        }

        .artist-card.flipped {
          transform: rotateY(180deg);
        }

        .artist-img,
        .artist-info {
          position: absolute;
          width: 100%;
          height: 100%;
          backface-visibility: hidden;
          overflow: hidden;
          pointer-events: none; /* 이벤트 버블링 방지 */
        }

        .artist-img {
          z-index: 2;
        }
      }

      .artist-info {
        transform: rotateY(180deg);
        background: linear-gradient(180deg, #939393 0%, #F9F9F9 60%, #939393 100%);
        color: #0f0f0f;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        position: relative;
      }

      .artist-info .artist-name {
        font-size: 40px;
        font-weight: 800;
        margin-bottom: 0;
        color: #0058a8;
        text-align: center;
        line-height: 1;
      }

      .artist-info .artist-name.artistNicky {
        color: #007B84;

      }
    .artist-info .artist-name.artistSon{    
        color: #00771E;
      }
    .artist-info .artist-name.artistHeendy{
        color: #373737;
    }
    .artist-info .artist-name.artistSambypen {
        color: #d02820;
    }
    .artist-info .artist-name.artistInchul {
        color: #8f3e0e;
    }
    .artist-info .artist-name.artistKidill {
        color: #9d2b00;
    }
    .artist-info .artist-name.artistKen {
        color: #cf3669;
    }
    .artist-info .artist-name.artistHaruki {
        color: #464646;
    }
    .artist-info .artist-name.artistAugust {
        color: #734d26;
    }
    .artist-info .artist-name.artistNobuki {
        color: #0f0f0f;
    }
    .artist-info .bearbrick-showcase {
        width: max-content;
        height: max-content;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .artist-info.onlyExhibition .bearbrick-showcase {
        width: max-content;
        height: max-content;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 22px;
    }
      .artist-info .bearbrick-showcase img {
        width: 100%;
        height: 100%;
        object-fit: contain;
      }

      .artist-info .size-info {
        display: flex;
        flex-direction: column;
        gap: 0;
        margin-bottom: 40px;
        width: 100%;
        max-width: 382px;
      }

      .artist-info .exhibition-sales-info {
        display: flex;
        flex-direction: column;
        width: 100%;
        max-width: 382px;
      }
      .artist-info.onlyExhibition .exhibition-sales-info {
        margin-top: 22px;
      }
    .artist-info .exhibition-sales-info .size-info.oneRow {
        margin-top: 55px;
    }
      .artist-info .exhibition-section {
        display: flex;
        align-items: center;
        gap: 32px;
      }

      .artist-info .exhibition-section .section-title {
        font-size: 40px;
        font-weight: 800;
        color: #0f0f0f;
        margin: 0;
        text-align: center;
        position: relative;
      }
      .artist-info .exhibition-section .section-title:first-child:after {
        content: "";
        position: absolute;
        right: -16px;
        width: 1px;
        height: 30px;
        background: #0f0f0f;
        top: 50%;
        transform: translateY(-50%);
      }
      .artist-info.onlyExhibition .exhibition-section .section-title:first-child:after {
        display: none;
      }
      .exhibition-description {
        margin-top: 15px;
        font-size: 18px;
        font-weight: 700;
        line-height: 1;
      }
      .artist-info .exhibition-section .divider {
        height: 29px;
        width: auto;
      }

      .artist-info .exhibition-section .divider img {
        height: 100%;
        width: auto;
      }

      .artist-info .exhibition-section .section-title.sales {
        font-size: 40px;
        font-weight: 800;
        color: #4a4dff;
        margin: 0;
        text-align: center;
      }

      .artist-info .sales-section {
        display: flex;
        flex-direction: column;
        gap: 15px;
      }

      .artist-info .sales-section .size-info {
        margin-top: 15px;
        margin-bottom: 0;
      }

      .artist-info .size-row {
        display: flex;
        justify-content: space-between;
        font-size: 25px;
        font-weight: 700;
        padding: 5px 0;
        border-bottom: 1px solid #0f0f0f;
        align-items: center;
      }

      .artist-info .size-row:last-child {
        border-bottom: none;
      }

      .artist-info .artist-price {
        font-size: 35px;
        font-weight: 700;
        color: #0f0f0f;
        text-align: center;
        margin-top: 20px;
      }
.artistComment {
    text-align: center;
    font-weight: 700;
}
.artistComment .artist-name-wrap{
    margin-top: 40px;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.artist-description {
    margin-top: 24px;
    height: 88px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.artistComment p {
    font-size: 18px;
    line-height: 1;
}
.artist-info .artistComment.twoLine p {
    margin-top: 20px;
}
html[lang="zh"] .artistComment p {
    font-weight: 400;
}
.artist-info .copy {
    font-size: 11px;
    font-weight: 700;
    width: max-content;
    position: absolute;
    text-align: center;
    bottom: 15px;
    left: 50%;
    transform: translateX(-50%);
}
body {
    padding-top: 130px; 
}
/* 반응형 디자인 */
@media (max-width: 1920px) {
    
    .header {
        padding: 15px 20px;
        background: rgba(0, 0, 0, 0.4);
    }
    
    .logo {
        width: 280px;
        height: 62px;
    }

    .logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: left center;
    }
    
    
    
    .vip-benefits h2 {
        font-size: 18px;
    }
    
    .ticket-button p {
        font-size: 15px;
    }
    
    
    .accordion-sections {
        padding: 0 40px;
        gap: 40px;
    }
    
    .accordion-header {
        padding: 0 50px;
        height: 90px;
    }
    
    .accordion-header h3 {
        font-size: 28px;
    }
    
    .accordion-item.active .accordion-content {
        padding: 0 50px;
    }

    /* 1920px 이하에서 스와이퍼 버튼 조정 */
    .swiper-button-next {
        left: calc(50% + 275px + 45px);
    }

    .swiper-button-prev {
        right: calc(50% + 275px + 45px);
    }



}

@media (max-width: 1200px) {
    body {
        padding-top: 62px; /* 1200px 이하에서 헤더 높이 조정 */
    }
    
    .header {
        padding: 12px 20px;
        background: rgba(0, 0, 0, 0.5);
    }
}

/* 1025px~1200px PC 비율 유지 반응형 */

@media (max-width: 1200px) {
    .logo {
        width: 240px;
        height: 52px;
    }

    .logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: left center;
    }
    
    .nav {
        gap: 40px;
    }
    
    .nav-link {
        font-size: 32px;
    }
    
    .nav-link.exhibition {
        color: #d69600;
        
    }
    
    .nav-link.limited {
        color: #ffffff;
        
    }
    
    .language-selector {
        width: 150px;
        height: 36px;
    }
    
    .language-select {
        font-size: 15px;
    }
    
    .language-selector::before {
        left: 24px;
        width: 15px;
        height: 15px;
    }
    
    .language-selector::after {
        right: 11px;
        width: 10px;
        height: 7px;
    }
    
    .hero-section {
        padding: 0 20px;
        margin-bottom: 120px;
    }
    
    .hero-image {
        height: 500px;
    }
    
    .white-bearbrick-image {
        top: 500px;
        height: 480px;
    }
    
    .main-title {
        font-size: 48px;
    }
    
    .exhibition-period {
        font-size: 28px;
        margin-bottom: 60px;
    }
    
    .description {
        font-size: 22px;
    }
    
    .section-title {
        font-size: 48px;
        margin-bottom: 40px;
    }
    
    .tickets-section {
        flex-direction: column;
        align-items: center;
        gap: 40px;
        padding: 0 20px;
    }
    
    .ticket-card {
        width: 100%;
        max-width: 600px;
        height: auto;
        background: transparent;
        border: 2px solid #f9f9f9;
        border-radius: 5px;
        padding: 40px 20px;
    }
    .ticket-arrow  {
        display: none; /* 모바일에서는 화살표 숨김 */
    }
    .ticket-card.earlyTicket {
        width: 100%;
        max-width: 600px;
        height: auto;
        padding: 40px 20px;
        background: transparent;
        border: 2px solid #f9f9f9;
        border-radius: 5px;
    }
    
    
    .ticket-card.earlyTicket .ticket-title {
        text-align: center;
        font-size: 24px;
    }
    
    .ticket-card.earlyTicket .dFlex {
        flex-direction: column;
        align-items: flex-start;
    }
    .ticket-card.earlyTicket .dFlex .ticket-button {
        margin: 30 auto;
    }
    .ticket-button.absoluteBtn {
        position: static;
        transform: none;
    }
    .vip-benefitsTextWrap {
        padding: 0;
    }
    
    .vip-benefitsTitl h1 {
        font-size: 16px;
    }
    .vip-benefitsTitl p{
        font-size: 12px;
    }
    .vip-benefits {
        font-size: 14px !important;
        line-height: 1.2;
    }
    html[lang="en"] .vip-benefits p {
        font-size: 14px;
    }
    .vip-benefits p {
        margin: 8px 0;
        line-height: 1.2;
    }
    
    .vip-benefits h2 {
        font-size: 16px;
    }
    
    .ticket-button {
        margin-top: 30px;
        padding: 15px 30px;
    }
    .ticket-card.earlyTicket .dFlex .ticket-button {
        margin-top: 30px;
    }
    .ticket-button p {
        font-size: 14px;
    }
    
    .textC {
        font-size: 14px;
        margin-bottom: 15px;
        line-height: 1.6;
    }
    
    .ticket-title , .ticket-title.colorW{
        font-size: 24px;
    }
    .artists-gallery {
        justify-content: flex-start;
        padding: 20px;
        height: 800px;
    }
    
    .artist-item.artist-5 {
        width: 285px;
        height: 780px;
    }

    .artist-item.artist-4 {
        width: 449px;
        height: 830px;
    }

    .artist-item.artist-1 {
        width: 549px;
        height: 833px;
    }

    .artist-item.artist-2 {
        width: 449px;
        height: 829px;
    }

    .artist-item.artist-3 {
        width: 315px;
        height: 796px;
    }
    
    .accordion-sections {
        padding: 0 30px;
        gap: 40px;
    }
    
    .accordion-header {
        padding: 0 40px;
        height: 90px;
    }
    
    .accordion-header h3 {
        font-size: 28px;
    }
    
    .accordion-item.active .accordion-content {
        padding: 0 40px;
    }


    .swiper-button-next {
        left: calc(50% + calc(100vw * 0.1833) + calc(100vw * 0.0292));
    }

    .swiper-button-prev {
        right: calc(50% + calc(100vw * 0.1833) + calc(100vw * 0.0292));
    }

    .swiper-button-next,
    .swiper-button-prev {
        width: calc(100vw * 0.0317); /* 1200px에서 38px 기준 */
        height: calc(100vw * 0.0317); /* 1200px에서 38px 기준 */
        font-size: calc(100vw * 0.0133); /* 1200px에서 16px 기준 */
    }

    .swiper-button-next:after,
    .swiper-button-prev:after {
        font-size: calc(100vw * 0.0117); /* 1200px에서 14px 기준 */
    }


}

@media (max-width: 1000px) {
    /* 모바일 네비게이션과 햄버거 메뉴 활성화 */
    .nav,
    .language-selector {
        display: none;
    }
    
    .hamburger-menu {
        display: flex;
        position: absolute;
        right: 20px;
    }
    
    .mobile-menu-overlay {
        display: block;
    }
}

@media (max-width: 1000px) {
    body {
        padding-top: 80px; /* 1000px 이하에서 헤더 높이 조정 - 한줄 구조 */
    }
    
    /* 모바일에서 줄바꿈 표시 */
    .mobile-br {
        display: inline;
    }
    .mo-none {
        display: none;
    }
    .header {
        flex-direction: row;
        justify-content: center;
        align-items: center;
        gap: 0;
        padding: 15px 20px;
        background: rgba(0, 0, 0, 0.6);
        height: 80px;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        z-index: 1000;
    }
    
    .logo {
        width: 180px;
        height: 40px;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
    }
    
    /* 기존 네비게이션과 언어 선택기 숨김 */
    .nav,
    .language-selector {
        display: none;
    }
    
    /* 햄버거 메뉴 버튼 표시 */
    .hamburger-menu {
        display: flex;
        position: absolute;
        right: 20px;
    }
    
    /* 모바일 메뉴 오버레이 표시 */
    .mobile-menu-overlay {
        display: block;
    }
    
    /* 768px에서 모바일 메뉴 크기 조정 */
    .mobile-menu {
        min-height: 220px;
        padding: 18px;
    }
    
    .mobile-nav {
        top: 35px;
        padding: 0 18px;
    }
    
    .mobile-nav-link {
        font-size: 26px;
        padding: 12px 0;
        margin: 0 18px;
    }
    
    .mobile-menu-close {
        top: 18px;
        right: 18px;
        width: 20px;
        height: 10px;
    }
    
    .mobile-language-selector {
        margin: 25px 18px 18px 18px;
    }
    
    .language-select {
        font-size: 14px;
    }
    
    .language-selector::before {
        left: 20px;
        width: 13px;
        height: 13px;
    }
    
    .language-selector::after {
        right: 9px;
        width: 8px;
        height: 6px;
    }
    
    .hero-section {
        padding: 0 15px;
        margin-bottom: 80px;
    }
    
    .hero-image {
        height: 300px;
    }
    
    .white-bearbrick-image {
        top: 300px;
        height: 290px;
        left: 15px;
        right: 15px;
        width: calc(100% - 30px);
    }
    
    .main-title {
        font-size: 28px;
        margin-bottom: 15px;
    }
    
    .exhibition-period {
        font-size: 20px;
        margin-bottom: 40px;
    }
    
    .exhibition-info {
        padding: 30px 15px;
        margin-bottom: 60px;
    }
    
    .description {
        font-size: 16px;
        line-height: 140%;
    }
    
    .section-title {
        font-size: 28px;
        margin-bottom: 30px;
    }
    
    .tickets-section {
        padding: 0 15px;
        gap: 30px;
        margin-bottom: 60px;
    }
    
    .ticket-card {
        width: 100%;
        height: auto;
        background: transparent;
        border: 2px solid #f9f9f9;
        border-radius: 5px;
        padding: 25px 15px;
    }
    
    .ticket-card.earlyTicket {
        width: 100%;
        height: auto;
        padding: 25px 15px;
        background: transparent;
        border: 2px solid #f9f9f9;
        border-radius: 5px;
    }

    /* .ticket-card.earlyTicket .dFlex .vip-benefits {
        display: none;
    } */
    
    .ticket-card.earlyTicket .ticket-title {
        margin-top: 0;
        text-align: center;
        font-size: 20px;
    }
    
    .ticket-card.earlyTicket .dFlex .ticket-button {
        margin: 20px auto 0;
    }
    
    .vip-benefitsTextWrap {
        padding: 0;
    }
    
    .vip-benefitsTitl h1 {
        font-size: 14px;
        margin-bottom: 8px;
    }
    
    .vip-benefits {
        font-size: 12px !important;
        line-height: 1.2;
    }
    html[lang="en"] .vip-benefits p {
        font-size: 12px;
    }
    .vip-benefits p {
        margin: 6px 0;
        line-height: 1.2;
    }
    
    .vip-benefits h2 {
        font-size: 14px;
    }
    
    .ticket-button {
        margin-top: 20px;
        padding: 12px 24px;
    }
    
    .ticket-button p {
        font-size: 12px;
    }
    
    .textC {
        font-size: 12px;
        margin-bottom: 15px;
        line-height: 1.7;
    }
    .ticket-title ,.ticket-title.colorW {
        font-size: 24px;
        margin: 50px 0 0 0;
    }
    
    .vip-benefits {
        font-size: 18px;
    }
    
    .ticket-prices {
        gap: 8px;
        margin: 20px 0 0 0;
    }
    
    .price-item {
        font-size: 16px;
    }
    
    .ticket-price {
        font-size: 24px;
    }
    
    .price-note {
        font-size: 11px;
        margin: 12px 0 0 0;
    }
    
    .ticket-button {
        width: 180px;
        height: 50px;
        font-size: 16px;
        margin: 30px auto 0;
    }
    
    .general .ticket-button {
        margin: 19px auto 0;
    }
    
    .artists-gallery {
        overflow-x: scroll;
        padding: 15px;
        justify-content: flex-start;
        height: 600px;
        gap: 15px;
    }
    
    .artist-item.artist-5 {
        width: 214px;
        height: 585px;
    }

    .artist-item.artist-4 {
        width: 337px;
        height: 623px;
    }

    .artist-item.artist-1 {
        width: 412px;
        height: 624px;
    }

    .artist-item.artist-2 {
        width: 337px;
        height: 622px;
    }

    .artist-item.artist-3 {
        width: 236px;
        height: 597px;
    }
    
    .ben-baller-overlay {
        top: 14px;
        left: 22px;
        width: 475px;
        height: 590px;
        padding: 30px 15px 40px;
    }
    
    .artist-name {
        font-size: 28px;
        margin-bottom: 25px;
    }
    
    
    .size-info {
        gap: 25px;
        width: 100%;
        max-width: 280px;
    }
    
    .size-row {
        font-size: 18px;
        padding-bottom: 6px;
    }
    
    .artist-price {
        font-size: 24px;
    }
    
    .accordion-sections {
        padding: 0 15px;
        gap: 30px;
        margin-bottom: 60px;
    }
    
    .accordion-header {
        padding: 0 20px;
        height: 70px;
    }
    
    .accordion-header h3 {
        font-size: 20px;
    }
    
    .accordion-item.active .accordion-content {
        padding: 0 20px;
    }
    
    .accordion-content-inner {
        padding: 30px 0;
    }
    
    .accordion-item.active .accordion-content-inner {
        padding: 30px 0;
    }
    
    .artists-intro {
        font-size: 16px;
        margin-bottom: 25px;
    }
    
    .artists-list {
        font-size: 12px;
        line-height: 1.5;
    }
    
    .artists-list p {
        margin-bottom: 6px;
    }
    
    .footer {
        padding: 15px 15px 20px 15px;
        min-height: 154px;
    }
    
    .footer-content {
        text-align: left;
        position: relative;
    }
    
    .footer-logo {
        width: 151px;
        height: 33px;
        margin: 0 0 15px 0;
        background-position: left center;
    }
    
    .footer-info {
        font-size: 10px;
        margin-bottom: 4px;
        text-align: left;
        padding: 0;
        width: 100%;
    }
    
    .footer-social {
        width: 33px;
        height: 33px;
        position: absolute;
        top: 0;
        right: 15px;
        margin-top: 0;
    }

    /* 1000px에서 bearbrick 이미지 설정 */
    .artist-info .bearbrick-showcase img {
        
        height: auto; /* height auto로 변경 */
        width: 100%;
        object-fit: contain;
    }

}

@media (max-width: 768px) {
    
    /* 768px 이하에서 스와이퍼 설정 */
    .swiper {
        padding-top: calc(100vw * 0.0391); /* 768px에서 30px 기준 */
        padding-bottom: calc(100vw * 0.0391); /* 768px에서 30px 기준 */
    }
    

    .swiper-button-next {
        left: calc(50% + calc(100vw * 0.37) + calc(100vw * 0.0326));
    }

    .swiper-button-prev {
        right: calc(50% + calc(100vw * 0.37) + calc(100vw * 0.0326));
    }

    .swiper-button-next,
    .swiper-button-prev {
        width: calc(100vw * 0.0417); /* 768px에서 32px 기준 */
        height: calc(100vw * 0.0417); /* 768px에서 32px 기준 */
        font-size: calc(100vw * 0.0182); /* 768px에서 14px 기준 */
    }

    .swiper-button-next:after,
    .swiper-button-prev:after {
        font-size: calc(100vw * 0.0156); /* 768px에서 12px 기준 */
    }

}
@media (max-width:600px) {
    body {
        background:url('/images/a98acfccdd6bc4605f0eda70b4d9dea57e11d62d.jpg')
    }
    /* 480px 이하에서 스와이퍼 설정 */
    .swiper {
        padding-top: calc(100vw * 0.0521); /* 480px에서 25px 기준 */
        padding-bottom: calc(100vw * 0.0521); /* 480px에서 25px 기준 */
    }
    
    .swiper-slide {
        width: calc(100vw * 0.75); /* 너비를 75%로 변경 */
        height: calc(100vw * 1.1657); /* 비율 유지하여 높이 조정 */
    }

    .swiper-button-next {
        left: calc(50% + calc(100vw * 0.2292) + calc(100vw * 0.0417));
    }

    .swiper-button-prev {
        right: calc(50% + calc(100vw * 0.2292) + calc(100vw * 0.0417));
    }

    .swiper-button-next,
    .swiper-button-prev {
        width: calc(100vw * 0.0583); /* 480px에서 28px 기준 */
        height: calc(100vw * 0.0583); /* 480px에서 28px 기준 */
        font-size: calc(100vw * 0.025); /* 480px에서 12px 기준 */
    }

    .swiper-button-next:after,
    .swiper-button-prev:after {
        font-size: calc(100vw * 0.0208); /* 480px에서 10px 기준 */
    }
    
    .artist-info .artist-name {
        font-size: calc(100vw * 0.05); /* 480px에서 16px 기준 */
    }
    .artistComment .artist-name-wrap {
        height:calc(100vw * 0.09);
        margin-top: calc(100vw * 0.05);
    }


    .artist-info .bearbrick-showcase img {
        width: 100%;
        height: auto; /* height auto로 변경 */
        object-fit: contain;
        max-height: calc(100vw * 0.5); /* 480px에서 160px 기준 */
    }

    .artist-info .size-info {
        margin-bottom: calc(100vw * 0.025); /* 480px에서 12px 기준 */
        max-width: calc(100vw * 0.4167); /* 480px에서 200px 기준 */
    }

    .artist-info .exhibition-sales-info {
        gap: calc(100vw * 0.0167); /* 480px에서 8px 기준 */
        max-width: calc(100vw * 0.4167); /* 480px에서 200px 기준 */
    }
    .artist-info .exhibition-section .section-title:first-child:after {
        height :calc(100vw * 0.0333);
    }
    .artist-info .exhibition-sales-info .size-info.oneRow {
        margin-top: calc(100vw * 0.0333);
    }
    .artist-info.onlyExhibition .bearbrick-showcase {
        margin-top: calc(100vw * 0.0333);
        margin-bottom: calc(100vw * 0.0333);
    }
    .artist-info.onlyExhibition .exhibition-sales-info {
        margin-top:0;
    }
    .exhibition-description {
        margin-top: 0;
        font-size: calc(100vw * 0.018333); /* 480px에서 16px 기준 */
    }
    .artist-info .exhibition-section .section-title {
        font-size: calc(100vw * 0.0333); /* 480px에서 16px 기준 */
    }

    .artist-info .exhibition-section .divider {
        height: calc(100vw * 0.025); /* 480px에서 12px 기준 */
        width: auto;
    }

    .artist-info .exhibition-section .divider img {
        height: 100%;
        width: auto;
    }

    .artist-info .exhibition-section .section-title.sales {
        font-size: calc(100vw * 0.0333); /* 480px에서 16px 기준 */
    }

    .artist-info .sales-section {
        gap: calc(100vw * 0.0125); /* 480px에서 6px 기준 */
    }

    .artist-info .sales-section .size-info {
        margin-top: calc(100vw * 0.0125); /* 480px에서 6px 기준 */
        margin-bottom: 0;
    }

    .artist-info .size-row {
        font-size: calc(100vw * 0.025); /* 480px에서 12px 기준 */
        padding: calc(100vw * 0.0125) 0; /* 480px에서 6px 기준 */
    }

    .artist-info .artist-price {
        font-size: calc(100vw * 0.0333); /* 480px에서 16px 기준 */
        margin-top: calc(100vw * 0.0167); /* 480px에서 8px 기준 */
    }

    /* artistComment 반응형 (480px 기준 비율 유지) */
    .artistComment {
        font-size: calc(100vw * 0.0417); /* 480px에서 20px 기준 */
    }
    .artist-description {
        margin-top: calc(100vw * 0.025); /* 480px에서 24px 기준 */
        height: calc(100vw * 0.11666); /* 480px에서 88px 기준 */
    }
    .artistComment p {
        font-size: calc(100vw * 0.0243); /* 480px에서 12px 기준 */
    }

    /* artist-info .copy 반응형 (480px 기준 비율 유지) */
    .artist-info .copy {
        font-size: 6px; /* 480px에서 11px 기준 */
        bottom: calc(100vw * 0.0208); /* 480px에서 10px 기준 */
    }
}

/* 추가 반응형 브레이크포인트 */
@media (max-width: 480px) {
    body {
        padding-top: 110px; /* 480px 이하에서 헤더 높이 조정 - 2줄 구조 */
    }
    
    /* 모바일에서 줄바꿈 표시 */
    .mobile-br {
        display: inline;
    }
    .mo-none {
        display: none;
    }
    .header {
        padding: 8px;
        background: rgba(0, 0, 0, 0.7);
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
        z-index: 1000;
    }
    
    /* 480px에서 모바일 메뉴 크기 조정 */
    .mobile-menu {
        min-height: 200px;
        padding: 15px;
    }
    
    .mobile-nav {
        top: 30px;
        padding: 0 15px;
    }
    
    .mobile-nav-link {
        font-size: 22px;
        padding: 10px 0;
        margin: 0 15px;
    }
    
    .mobile-menu-close {
        top: 15px;
        right: 15px;
        width: 18px;
        height: 9px;
    }
    
    .mobile-language-selector {
        margin: 20px 15px 15px 15px;
    }
    
    .mobile-language-select {
        font-size: 14px;
        padding: 10px 30px 10px 12px;
    }
    
    .logo {
        width: 160px;
        height: 35px;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
    }
    
    .nav {
        gap: 15px;
    }
    
    .language-selector {
        width: 100px;
        height: 28px;
    }
    
    .language-select {
        font-size: 13px;
    }
    
    .language-selector::before {
        left: 18px;
        width: 11px;
        height: 11px;
    }
    
    .language-selector::after {
        right: 8px;
        width: 7px;
        height: 5px;
    }
    
    .nav-link {
        font-size: 18px;
    }
    
    .nav-link.exhibition {
        color: #004fff;
        text-shadow: #042a7f 0px 4px 3px;
    }
    
    .nav-link.limited {
        color: #ffffff;
        text-shadow: #042a7f 0px 4px 3px;
    }
    
    .hero-section {
        padding: 0 10px;
        margin-bottom: 60px;
    }
    
    .hero-image {
        height: 220px;
    }
    
    .white-bearbrick-image {
        top: 220px;
        height: 210px;
        left: 10px;
        right: 10px;
        width: calc(100% - 20px);
    }
    
    .main-title {
        font-size: 24px;
        margin-bottom: 12px;
    }
    
    .exhibition-period {
        font-size: 18px;
        margin-bottom: 30px;
    }
    
    .exhibition-info {
        padding: 35px 10px;
        /* margin-bottom: 50px; */
        margin-bottom: 0;
    }
    /* 임시css 수정 필요할수도:? */
    .notice-section {
        margin-bottom: 50px;
    }
    .topNoticeWrap.container965 {
        padding: 0 30px;
    }
    .description {
        font-weight: 400;
        font-size: 12px;
        line-height: 1.2;
    }
    .description p {
        margin-bottom: 0;
    }
    .description p img {
        max-width: 50%;
    }
    .description p img {
        margin-bottom: 30px;
    }
    .description p b {
        font-size: 15px;
    }
    .section-title {
        font-size: 24px;
        margin-bottom: 25px;
    }
    
    .tickets-section {
        margin-top: 60px;
        padding: 0 30px;
        gap: 45px;
        margin-bottom: 45px;
    }
    .tickets-section.earlyTicketSec {
        margin-top: 0;
    }
    .vip-benefitsTextWrap {
        margin-top: 15px;
    }
    .vip-benefitsTitl h1 {
        font-size: 15px;
        margin-bottom: 5px;
    }
    .vip-benefits p {
        margin: 0;

    }
    .ticket-card.earlyTicket .dFlex {
        align-items: center;
        justify-content: center;
    }
    .ticket-card.earlyTicket .dFlex .vip-benefitsTitl {
        display: none;
    }
    .ticket-card.earlyTicket .dFlex .vip-benefits {
        text-align: center;
    }
    .topNoticeWrap {
        padding: 0 30px;
    }
    .ticket-card {
        width: 100%;
        height: auto;
        padding: 25px 16px;
    }
    .exclusive-artists {
        margin-top: 45px;
        margin-bottom: 0;
    }
    .ticket-card.earlyTicket {
        width: 100%;
        height: auto;
        padding: 20px;
    }
    .vip-bearbrick {
        height: 126px;
    }
    .ticket-title {
        font-size: 20px;
        margin: 0;
    }
    
    .vip-benefits {
        font-size: 16px;
    }
    
    .ticket-prices {
        gap: 6px;
        margin: 15px 0 0 0;
    }
    
    .price-item {
        font-size: 12px;
    }
    
    .ticket-price {
        font-size: 20px;
    }
    
    .price-note {
        font-size: 8px;
        margin: 9px 0 0 0;
    }
    
    .ticket-button {
        width: 160px;
        height: 45px;
        font-size: 14px;
        margin: 25px auto 0;
    }
    
    .general .ticket-button {
        margin: 14px auto 0;
    }
    
    .artists-gallery {
        padding: 10px;
        height: 450px;
        gap: 10px;
    }
    
    .artist-item.artist-5 {
        width: 160px;
        height: 439px;
    }

    .artist-item.artist-4 {
        width: 252px;
        height: 467px;
    }

    .artist-item.artist-1 {
        width: 309px;
        height: 468px;
    }

    .artist-item.artist-2 {
        width: 252px;
        height: 466px;
    }

    .artist-item.artist-3 {
        width: 177px;
        height: 447px;
    }
    
    .ben-baller-overlay {
        top: 10px;
        left: 16px;
        width: 356px;
        height: 442px;
        padding: 25px 12px 30px;
    }
    
    .artist-name {
        font-size: 22px;
        margin-bottom: 20px;
    }
    
    .bearbrick-showcase {
        width: 224px;
        height: 180px;
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        margin-bottom: 22px;
    }
    
    .size-info {
        gap: 18px;
        max-width: 220px;
    }
    
    .size-row {
        font-size: 15px;
        padding-bottom: 5px;
    }
    
    .artist-price {
        font-size: 20px;
    }
    
    .accordion-sections {
        padding: 0 30px;
        gap: 25px;
        margin-bottom: 50px;
    }
    
    .accordion-header {
        padding: 0 15px;
        height: 60px;
    }
    
    .accordion-header h3 {
        font-size: 18px;
    }
    
    .accordion-item.active .accordion-content {
        padding: 0 15px;
    }
    
    .accordion-content-inner {
        padding: 25px 0;
    }
    
    .accordion-item.active .accordion-content-inner {
        padding: 25px 0;
    }
    
    .artists-intro {
        font-size: 14px;
        margin-bottom: 20px;
    }
    
    .artists-list {
        font-size: 11px;
        line-height: 1.4;
    }
    
    .artists-list p {
        margin-bottom: 5px;
    }
    
    .footer {
        padding: 15px 15px 20px 15px;
        min-height: 154px;
    }
    
    .footer-content {
        text-align: left;
        position: relative;
    }
    
    .footer-logo {
        width: 151px;
        height: 33px;
        margin: 0 0 15px 0;
        background-position: left center;
    }
    
    .footer-info {
        font-size: 10px;
        margin-bottom: 4px;
        text-align: left;
        /* padding: 0 15px; */
        padding: 0;
        width: 100%;
    }
    
    .footer-social {
        width: 33px;
        height: 33px;
        position: absolute;
        top: 0;
        right: 15px;
        margin-top: 0;
    }

}

/* 언어별 모바일 반응형 최적화 */
@media (max-width: 1000px) {
    /* 영어 모바일 최적화 */
    html[lang="en"] .main-title {
        font-size: calc(38px * var(--text-scale, 1));
        line-height: 1.15;
        word-spacing: 0.05em;
    }
    
    
    
    html[lang="en"] .exhibition-period {
        font-size: calc(19px * var(--text-scale, 1));
        letter-spacing: 0.03em;
    }
    
    

    
    /* html[lang="ja"] .exhibition-period {
        font-size: calc(19px * var(--text-scale, 1));
        letter-spacing: 0.05em;
        font-weight: 500;
    } */
    
    /* 중국어 모바일 최적화 */
    html[lang="zh"] .main-title {
        font-size: calc(38px * var(--text-scale, 1));
        line-height: 1.2;
        letter-spacing: 0.08em;
        font-weight: 500;
        -webkit-font-smoothing: antialiased;
    }
    
    /* html[lang="zh"] .description {
        font-size: calc(19px * var(--text-scale, 1));
        line-height: 1.3;
        letter-spacing: 0.1em;
        font-weight: 300;
        -webkit-font-smoothing: antialiased;
    } */
    
    html[lang="zh"] .exhibition-period {
        font-size: calc(20px * var(--text-scale, 1));
        letter-spacing: 0.12em;
        font-weight: 400;
        -webkit-font-smoothing: antialiased;
    }
    
    /* 언어별 버튼 텍스트 최적화 */
    html[lang="en"] .ticket-button p {
        font-size: calc(17px * var(--text-scale, 1));
        white-space: nowrap;
        letter-spacing: 0.02em;
    }
    
    html[lang="ja"] .ticket-button p {
        font-size: calc(17px * var(--text-scale, 1));
        letter-spacing: 0.02em;
        font-weight: 600;
    }
    
    html[lang="zh"] .ticket-button p {
        font-family: 'Pretendard Variable', sans-serif;
    }
    
    /* 언어별 내비게이션 최적화 */
    html[lang="en"] .nav li a {
        font-size: calc(14px * var(--text-scale, 1));
        padding: 8px 12px;
    }
    
    html[lang="ja"] .nav li a,
    html[lang="zh"] .nav li a {
        font-size: calc(14px * var(--text-scale, 1));
        padding: 8px 12px;
        font-weight: 400;
    }
    
}

/* 언어별 텍스트 줄바꿈 방지 */
html[lang="ko"] p,
html[lang="ja"] p,
html[lang="zh"] p {
    word-break: keep-all;
    overflow-wrap: break-word;
}

html[lang="en"] p {
    word-break: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
    line-height: 1.2;
}

/* 일본어 전용 세밀 조정 */
html[lang="ja"] .main-title {
    font-feature-settings: "palt" 1, "kern" 1;
    text-rendering: optimizeLegibility;
}

html[lang="ja"] .description,
html[lang="ja"] .exhibition-period,
html[lang="ja"] body {
    font-feature-settings: "palt" 1;
    text-rendering: optimizeLegibility;
    font-family: "Pretendard JP Variable", "Pretendard JP", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Hiragino Sans", "Apple SD Gothic Neo", Meiryo, "Noto Sans JP", "Noto Sans KR", "Malgun Gothic", Osaka, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
}

html[lang="ja"] h1, 
html[lang="ja"] h2, 
html[lang="ja"] h3 {
    font-feature-settings: "palt" 1, "kern" 1;
}

/* 중국어 전용 세밀 조정 - 두께감 완화 */
html[lang="zh"] .main-title {
    font-weight: 600;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

html[lang="zh"] .description,
html[lang="zh"] .exhibition-period {
    font-weight: 300;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

html[lang="zh"] h1, 
html[lang="zh"] h2, 
html[lang="zh"] h3 {
    font-weight: 700;
    -webkit-font-smoothing: antialiased;
}

html[lang="zh"] p {
    font-weight: 300;
    -webkit-font-smoothing: antialiased;
}
html[lang="zh"] .description,
html[lang="zh"] .exhibition-period,
html[lang="zh"] body,
html[lang="zh"] p ,
html[lang="zh"] .notice-content{
    font-feature-settings: "palt" 1;
    text-rendering: optimizeLegibility;
    font-family: "Noto Sans SC", sans-serif;
}

/* 중국어 버튼 폰트 웨이트 조정 */
html[lang="zh"] .ticket-button {
    font-weight: 400;
}

html[lang="zh"] .nav li a {
    font-weight: 400;
}
html[lang="zh"] p.artists-intro {
    font-weight: bold;
}
/* 일본어 세로 여백 최적화 */
html[lang="ja"] .hero-content {
    padding-top: 120px;
    padding-bottom: 80px;
}

/* 일본어 버튼 여백 조정 */
html[lang="ja"] .ticket-button {
    padding: 0;
    min-height: 60px;
}

/* 일본어 네비게이션 세밀 조정 */
html[lang="ja"] .nav li {
    margin: 0 12px;
}

html[lang="ja"] .nav li a {
    padding: 10px 14px;
    white-space: nowrap;
}
.privacyBtn p {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
}
html[lang="zh"] .privacyBtn p {
    color: #fff;
    font-size: 16px;
    font-weight: 500;
}
/* 개인정보처리방침 모달 스타일 */
.privacyModal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 10000;
    justify-content: center;
    align-items: center;
}

.privacyModalContent {
    background: white;
    border-radius: 10px;
    max-width: 800px;
    max-height: 80vh;
    width: 90%;
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.privacyModalHeader {
    padding: 20px 30px;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: #f9f9f9;
}

.privacyModalHeader h2 {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
    color: #333;
}

.closePrivacyModal {
    background: none;
    border: none;
    font-size: 16px;
    padding: 8px 16px;
    cursor: pointer;
    border-radius: 5px;
    transition: background-color 0.3s ease;
}

.closePrivacyModal:hover {
    background-color: #e0e0e0;
}

.privacyModalBody {
    padding: 30px;
    overflow-y: auto;
    max-height: calc(80vh - 80px);
    line-height: 1.6;
}

.privacyModalBody p {
    margin-bottom: 16px;
    color: #555;
}

/* 개인정보처리방침 버튼 스타일 */
.privacyBtn {
    cursor: pointer;
    transition: opacity 0.3s ease;
    margin-bottom: 20px;
    width: max-content;
}

.privacyBtn:hover {
    opacity: 0.7;
}

/* 모바일 반응형 */
@media (max-width: 768px) {
    .privacyModalContent {
        width: 95%;
        max-height: 90vh;
    }
    
    .privacyModalHeader {
        padding: 15px 20px;
    }
    
    .privacyModalHeader h2 {
        font-size: 20px;
    }
    
    .privacyModalBody {
        padding: 20px;
        max-height: calc(90vh - 70px);
    }
}
.medicomtoyLogo {
    max-width: 178px;
    margin-top: 65px;
    margin-bottom: 57px;
}
.BBLogo,.BWWT3Logo {
    max-height: 75px;
}
.BBLogo {
    margin-top: 65px;
    margin-bottom: 57px;
}
.BWWT3Logo {
    margin-bottom: 57px;
}
@media (max-width: 480px) {
    .privacyModalContent {
        width: 98%;
    }
    
    .privacyModalHeader {
        padding: 12px 15px;
    }
    
    .privacyModalHeader h2 {
        font-size: 18px;
    }
    html[lang="en"] .main-title,html[lang="zh"] .main-title ,html[lang="ja"] .main-title,html[lang="ko"] .main-title{
        font-size: 25px;
        margin-bottom: 5px;
    }
    html[lang="en"] .exhibition-period, html[lang="zh"] .exhibition-period ,html[lang="ja"] .exhibition-period,html[lang="ko"] .exhibition-period {
        font-size: 12px;
        margin-bottom: 50px;
    }
    .BWWT3Logo.mt80 {
        margin-top: 0;
    }
    .privacyModalBody {
        padding: 15px;
    }
    .hero-section .hero-image {
        background-image: url("/images/bdbdc70a8db0301d8feccb95cb2ff10cfc5c304f.png") !important;
        width: 335px;
        height: 418.75px;
    }
    .white-bearbrick-image {
        background-image: url("/images/145f8a3c7430c1665edeba9cd6c059a1c06a0c04.png") !important;
        top: 418.75px;
        width: 335px;
        height: 335px;
        left: 0;
        right: 0;
    }
    .medicomtoyLogo {
        width: 85px;
        margin-top: 52px;
    } 
    .BBLogo {
        margin-top: 52px;
    }
    .vip-benefits h2   {
        font-size: 12px;
    }
}

/* 푸터 로고 반응형 이미지 스타일 */
@media (max-width: 1000px) {
    .footer-logo img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: left center;
    }
}
@media (max-width: 480px) {
        .notice-table td {
        font-size: 10px;
        font-weight: 400;
        padding: 12px 5px;
    }
}
