* { box-sizing: border-box; }
html, body { margin: 0; font-family: Pretendard, sans-serif !important; color: #000; }

/* 콘텐츠 틀 초기화 */
.magazine_view { width: auto; }
.cont img { width: 100%; }
#contents .page_info, .magazine_view .cont .title, .magazine_view .cont .txt_03,
.magazine_view .cont .txt_info, .magazine_view .cont .txt_01,
.magazine_view .cont .txt_02, .magazine_view .line_01,
.magazine_view .relate_link, .magazine_view .hashtag_box { display: none;}
.base_slider_list .product .infor_box .p_conts { font-size: 15px; }
.base_slider_list .product .price_box .ori_price { font-size: 14px; }
button { font: inherit; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
.pc_ey { display: block; }
.mo_ey { display: none; }

#wrapper_ey { overflow: clip; background: #fff; letter-spacing: -0.02em; }
#wrapper_ey h1, #wrapper_ey h2, #wrapper_ey h3,
#wrapper_ey h4, #wrapper_ey h5, #wrapper_ey h6 { margin: 0; }
#wrapper_ey button { padding: 0; border: 0; color: inherit; background: none; cursor: pointer; }
#wrapper_ey .inner_ey { width: calc(100% - 60px); max-width: 1400px; margin: 0 auto; padding: 0; }

/* visual_section */
#visual_section { background: #efefef; }
#visual_section .visual_box { position: relative; width: 100%; max-width: none; margin: 0 auto; aspect-ratio: 768 / 301; background-position: center top; background-repeat: no-repeat; background-size: cover; overflow: hidden; }
#visual_section .visual_box::before { position: absolute; inset: 0; z-index: 1; background: rgba(0, 0, 0, 0.1); content: ""; pointer-events: none; }
@font-face {font-family: 'NakwonChildTree'; src: local('낙원어린나무체'), local('NakwonChildTree'); font-weight: normal; font-style: normal; font-display: swap;}

#visual_section .visual_copy { position: absolute; inset: 0; z-index: 2; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; 
    filter: drop-shadow(0 4px 1px rgba(0, 0, 0, 0.42)) drop-shadow(0 8px 8px rgba(0, 0, 0, 0.22)); pointer-events: none; }
#visual_section .visual_sub_title { display: flex; align-items: center; justify-content: center; gap: 0; margin-bottom: 10px; color: #fff; 
    font-family: 'NakwonChildTree', '낙원어린나무체', Pretendard, sans-serif; font-size: 40px; font-weight: 400; font-style: italic; transform: skewX(355deg); transform-origin: center; }
#visual_section .visual_sub_title_text { display: inline-block; }
#visual_section .visual_sub_title_mark { position: relative; display: inline-flex; align-items: center; justify-content: center; margin: 0 4px; }
#visual_section .visual_sub_title_word { position: relative; z-index: 2; display: inline-block; }
#visual_section .visual_sub_title_check { position: absolute; left: 50%; top: 50%; z-index: 1; width: 147px; max-width: none; overflow: visible; transform: translate(-50%, -44%); pointer-events: none; }
#visual_section .visual_check_pencil { fill: none; stroke: #008aff; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
#visual_section .visual_check_pencil_main { stroke-width: 3.2; opacity: 0.92; }
#visual_section .visual_check_pencil_texture { stroke-width: 0.9; opacity: 0.34; }
#visual_section .visual_title { color: #fff; font-size: 148px; font-weight: 600; }
#visual_section.is_animation_ready .visual_sub_title { opacity: 0; transform: translateY(24px) skewX(355deg); }
#visual_section.is_animation_ready .visual_title { opacity: 0; transform: translateY(30px); }
#visual_section.is_animation_ready .visual_check_pencil { stroke-dasharray: 1; stroke-dashoffset: 1; }
#visual_section.is_animation_ready.is_animated .visual_sub_title { animation: visual_sub_title_show 0.72s cubic-bezier(0.22, 1, 0.36, 1) 0.18s both; }
#visual_section.is_animation_ready.is_animated .visual_title { animation: visual_title_show 0.82s cubic-bezier(0.22, 1, 0.36, 1) 0.58s both; }
#visual_section.is_animation_ready.is_animated .visual_check_pencil { animation: visual_mark_draw 0.82s cubic-bezier(0.42, 0, 0.28, 1) 1.38s forwards; }
@keyframes visual_sub_title_show {
    0% { opacity: 0; transform: translateY(24px) skewX(355deg); }
    100% { opacity: 1; transform: translateY(0) skewX(355deg); }}
@keyframes visual_title_show {
    0% { opacity: 0; transform: translateY(30px); }
    100% { opacity: 1; transform: translateY(0); }}
@keyframes visual_mark_draw {
    0% { stroke-dashoffset: 1; }
    100% { stroke-dashoffset: 0; }}

/* sub01_section */
#sub01_section { padding: 150px 0; }
#sub01_section .sub01_head { width: 100%; }
#sub01_section .sub01_date_row { display: flex; align-items: center; gap: 10px; padding: 0 0 12px; border-bottom: 2px solid #000; }
#sub01_section .sub01_date { font-size: 22px; font-weight: 300; color: #000; }
#sub01_section .sub01_state { display: inline-flex; align-items: center; justify-content: center; min-width: 46px; height: 22px; padding: 0 8px; border-radius: 0; font-size: 14px; font-weight: 500;
    color: #fff; background: #d70000; }
#sub01_section .sub01_state.is_end { background: #9e9e9e; }
#sub01_section .sub01_title_row { display: flex; align-items: flex-start; justify-content: space-between; gap: 30px; padding: 22px 0 0; }
#sub01_section .sub01_title_left { flex: 1 1 auto; min-width: 0; text-align: left; }
#sub01_section .sub01_title { width: 100%; font-size: 60px; font-weight: 600; line-height: 1.2em; text-align: left; }
#sub01_section .sub01_desc_row { width: 100%; margin-top: 14px; text-align: left; }
#sub01_section .sub01_desc { width: 100%; font-size: 24px; font-weight: 400; color: #000; text-align: left; }
#sub01_section .sub01_mobile_ep,
#sub01_section .sub01_mobile_desc { display: none; }
#sub01_section .sub01_side { flex: 0 0 auto; display: flex; flex-direction: column; align-items: flex-end; min-width: 220px; text-align: right; }
#sub01_section .sub01_ep { font-size: 36px; font-weight: 600; }
#sub01_section .sub01_tag { margin-top: 34px; font-size: 24px; font-weight: 400; line-height: 1.4em; color: #000; white-space: nowrap; }
#sub01_section .sub01_list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; padding-top: 54px; }
#sub01_section .sub01_item { display: block; min-width: 0; }
#sub01_section .sub01_thumb { width: 100%; overflow: hidden; background: #f4f4f4; }
#sub01_section .sub01_thumb img { width: 100%; aspect-ratio: 1 / 1.57; object-fit: cover; transition: opacity 0.25s ease; }
#sub01_section .sub01_thumb img.is_loading { opacity: 0; }
#sub01_section .sub01_copy { padding-top: 23px; text-align: left; }
#sub01_section .sub01_copy_head { width: 100%; }
#sub01_section .sub01_emoji { font-size: 22px; font-weight: 400; color: #000; margin-top: 12px; }
#sub01_section .sub01_item_title { margin-top: 15px; font-size: 46px; font-weight: 500; }
#sub01_section .sub01_item_desc { margin-top: 20px; font-size: 18px; font-weight: 300; line-height: 1.55em; color: #000; word-break: keep-all; }
#sub01_section .sub01_item_desc_line { display: block; }
#sub01_section.is_animation_ready .sub01_date,
#sub01_section.is_animation_ready .sub01_mobile_ep,
#sub01_section.is_animation_ready .sub01_state,
#sub01_section.is_animation_ready .sub01_title,
#sub01_section.is_animation_ready .sub01_desc,
#sub01_section.is_animation_ready .sub01_mobile_desc,
#sub01_section.is_animation_ready .sub01_ep,
#sub01_section.is_animation_ready .sub01_tag,
#sub01_section.is_animation_ready .sub01_item { opacity: 0; transform: translateY(24px); transition: opacity 0.58s cubic-bezier(0.22, 1, 0.36, 1), transform 0.58s cubic-bezier(0.22, 1, 0.36, 1); }
#sub01_section.is_animation_ready .sub01_date.is_show,
#sub01_section.is_animation_ready .sub01_mobile_ep.is_show,
#sub01_section.is_animation_ready .sub01_state.is_show,
#sub01_section.is_animation_ready .sub01_title.is_show,
#sub01_section.is_animation_ready .sub01_desc.is_show,
#sub01_section.is_animation_ready .sub01_mobile_desc.is_show,
#sub01_section.is_animation_ready .sub01_ep.is_show,
#sub01_section.is_animation_ready .sub01_tag.is_show,
#sub01_section.is_animation_ready .sub01_item.is_show { opacity: 1; transform: translateY(0); }
#sub01_section.is_animation_ready .sub01_item_title,
#sub01_section.is_animation_ready .sub01_emoji,
#sub01_section.is_animation_ready .sub01_item_desc { opacity: 0; transform: translateY(16px); transition: opacity 0.48s cubic-bezier(0.22, 1, 0.36, 1), transform 0.48s cubic-bezier(0.22, 1, 0.36, 1); }
#sub01_section.is_animation_ready .sub01_item_title.is_show,
#sub01_section.is_animation_ready .sub01_emoji.is_show,
#sub01_section.is_animation_ready .sub01_item_desc.is_show { opacity: 1; transform: translateY(0); }
#sub01_section .sub01_title.is_typing::after { display: inline-block; width: 2px; height: 0.88em; margin-left: 5px; background: #000; vertical-align: -0.06em; animation: sub01_type_cursor 0.7s steps(1) infinite; content: ""; }
@keyframes sub01_type_cursor {
    0%, 48% { opacity: 1; }
    49%, 100% { opacity: 0; }}

/* sticky_section */
#sticky_section { position: sticky; top: 0; z-index: 40; width: 100%; background: transparent; }
#sticky_section .sticky_inner { position: relative; background: #000; }
#sticky_section .sticky_tab_list { display: flex; align-items: center; justify-content: center; }
#sticky_section .sticky_tab_item { flex: 0 0 15%; min-width: 0; }
#sticky_section .sticky_tab_button { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; height: 56px; color: #fff; font-size: 20px; 
    font-weight: 300; line-height: 1; letter-spacing: -0.03em; }
#sticky_section .sticky_tab_button.is_active { color: #00a7ff; font-weight: 700; }
#sticky_section .sticky_bar { position: absolute; left: 0; bottom: 10px; width: 96px; height: 2px; background: #00a7ff; pointer-events: none; transition: transform 0.3s ease, width 0.3s ease; }

/* sub02_section */
#sub02_section { position: relative; padding: 0 0 100px; }
#sub02_section #sub02_render { padding-top: 70px; }
#sub02_section .sub02_panel { display: none; }
#sub02_section .sub02_panel.is_active { display: grid; grid-template-columns: minmax(0, 34%) minmax(0, 1fr); grid-template-rows: 76px 614px; grid-template-areas: "video head" "video content"; 
column-gap: 18px; min-height: 690px; opacity: 1; transform: translateY(0); transition: opacity 0.22s ease, transform 0.42s cubic-bezier(0.22, 1, 0.36, 1); }
#sub02_section .sub02_panel.is_active.has_no_video { grid-template-columns: 1fr; grid-template-areas: "head" "content"; }
#sub02_section .video_area { grid-area: video; position: relative; width: 100%; height: 690px; overflow: hidden; background: #eef4fb; }
#sub02_section .video_area video { display: block; width: 100%; height: 100%; min-height: 0; object-fit: cover; cursor: pointer; }
#sub02_section .video_area::after { position: absolute; right: 0; bottom: 0; left: 0; z-index: 4; height: 92px; background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.24)); content: ""; pointer-events: none; }
#sub02_section .video_controls { position: absolute; bottom: 14px; left: 14px; z-index: 6; display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; 
    background: rgba(0, 0, 0, 0.38); border-radius: 50%; box-shadow: 0 4px 16px rgba(0, 0, 0, 0.14); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); 
    transition: background 0.2s ease, opacity 0.2s ease; }
#sub02_section .video_controls:hover { background: rgba(0, 0, 0, 0.52); }
#sub02_section .video_control_button { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; color: #fff; opacity: 0.82; transition: opacity 0.2s ease; }
#sub02_section .video_control_button:hover { opacity: 1; }
#sub02_section .video_control_button svg { width: 16px; height: 16px; fill: currentColor; pointer-events: none; }
#sub02_section .video_feedback { position: absolute; top: 50%; left: 50%; z-index: 7; display: flex; align-items: center; justify-content: center; width: 66px; height: 66px; color: #fff; 
    background: rgba(0, 0, 0, 0.48); border-radius: 50%; opacity: 0; transform: translate(-50%, -50%) scale(0.82); pointer-events: none; }
#sub02_section .video_feedback.is_show { animation: video_feedback_show 0.62s ease forwards; }
#sub02_section .video_feedback svg { width: 28px; height: 28px; fill: currentColor; }
@keyframes video_feedback_show {
    0% { opacity: 0; transform: translate(-50%, -50%) scale(0.82); }
    20% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
    68% { opacity: 1; transform: translate(-50%, -50%) scale(1); }
    100% { opacity: 0; transform: translate(-50%, -50%) scale(1.08); }}
#sub02_section .sub02_head { grid-area: head; display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; min-width: 0; margin: 0; padding: 0 0 20px; }
#sub02_section .sub02_title { flex: 0 0 auto; font-size: 46px; font-weight: 500; }
#sub02_section .sub02_caption { min-width: 0; padding-top: 12px; font-size: 22px; font-weight: 400; color: #000; text-align: right; white-space: nowrap; }
#sub02_section .sub02_content { grid-area: content; display: grid; grid-template-columns: minmax(0, 45%) minmax(0, 1fr); gap: 14px; min-width: 0; min-height: 0; height: 614px; }
#sub02_section .product_area { position: relative; min-width: 0; min-height: 0; height: 614px; padding: 0; overflow: hidden; background: transparent; }
#sub02_section .product_scroll { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: max-content; align-content: start; gap: 26px 8px; width: 100%; height: 100%; 
    max-height: 100%; padding: 0 0 62px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; scrollbar-width: none; -ms-overflow-style: none; }
#sub02_section .product_scroll::-webkit-scrollbar { display: none; width: 0; height: 0; }
#sub02_section .product_scroll_guide { position: absolute; right: 0; bottom: 0; left: 0; z-index: 5; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; 
    gap: 2px; height: 68px; padding: 18px 0 8px; color: #000; background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #fff 48%); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.22s ease, visibility 0.22s ease; }
#sub02_section .product_scroll_guide.is_visible { opacity: 1; visibility: visible; }
#sub02_section .product_scroll_guide h6 { font-size: 11px; font-weight: 600; line-height: 1.4; }
#sub02_section .product_scroll_icon { position: relative; width: 22px; height: 14px; animation: product_scroll_move 1.4s ease-in-out infinite; }
#sub02_section .product_scroll_icon::before { position: absolute; top: 0; left: 50%; width: 12px; height: 12px; border-right: 2px solid #000; border-bottom: 2px solid #000; content: ""; transform: translateX(-50%) rotate(45deg); }
@keyframes product_scroll_move {
    0%, 100% { opacity: 0.35; transform: translateY(0); }
    50% { opacity: 1; transform: translateY(7px); }}

#sub02_section .product_card { min-width: 0; }
#sub02_section .product_link { display: block; min-width: 0; }
#sub02_section .product_thumb { width: 100%; overflow: hidden; background: #f4f4f4; }
#sub02_section .product_thumb img { width: 100%; aspect-ratio: 1 / 1.27; object-fit: cover; }
#sub02_section .product_info { min-width: 0; padding: 8px 0 0; text-align: left; }
#sub02_section .product_brand { width: 100%; overflow: hidden; margin-bottom: 4px; font-size: 12px; font-weight: 600; color: #000; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
#sub02_section .product_name { width: 100%; overflow: hidden; font-size: 13px; font-weight: 400; color: #262626; text-align: left; text-overflow: ellipsis; white-space: nowrap; letter-spacing: -0.03em; }
#sub02_section .product_price_row { display: flex; align-items: baseline; justify-content: flex-start; flex-wrap: nowrap; gap: 6px; width: 100%; margin-top: 6px; text-align: left; white-space: nowrap; }
#sub02_section .product_price { flex: 0 0 auto; font-size: 15px; font-weight: 600; }
#sub02_section .product_origin { flex: 0 0 auto; font-size: 11px; font-weight: 400; color: #8b8b8b; text-decoration: line-through; }
#sub02_section .product_sale { flex: 0 0 auto; font-size: 13px; font-weight: 600; color: #d70000; }
#sub02_section .product_skeleton { background: linear-gradient(90deg, #f0f0f0 25%, #f7f7f7 37%, #f0f0f0 63%); background-size: 400% 100%; animation: product_loading 1.2s ease infinite; }
#sub02_section .product_skeleton.product_thumb { aspect-ratio: 1 / 1.27; }
#sub02_section .product_skeleton_line { height: 10px; margin-top: 7px; }
#sub02_section .product_skeleton_line.line_01 { width: 88%; }
#sub02_section .product_skeleton_line.line_02 { width: 64%; }
@keyframes product_loading {
    0% { background-position: 100% 50%; }
    100% { background-position: 0 50%; }}

#sub02_section .styling_area { position: relative; min-width: 0; height: 614px; overflow: hidden; background: #f4f4f4; }
#sub02_section .styling_mark { position: absolute; top: 20px; right: 20px; z-index: 5; display: inline-flex; align-items: center; justify-content: center; height: 26px; padding: 0 10px; color: #000; 
    font-size: 14px; font-weight: 500; background: #fff; border: 1px solid #b6b6b6; }
#sub02_section .styling_swiper { position: relative; width: 100%; height: 614px; }
#sub02_section .styling_slide { display: flex; align-items: center; justify-content: center; background: #f6f6f6; }
#sub02_section .styling_link { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
#sub02_section .styling_slide img { width: 100%; height: 100%; object-fit: contain; object-position: center center; transition: opacity 0.25s ease; }
#sub02_section .styling_slide img.is_loading { opacity: 0; }
#sub02_section .styling_prev,
#sub02_section .styling_next { position: absolute; top: 50%; z-index: 6; display: flex; align-items: center; justify-content: center; width: 38px; height: 46px; margin-top: -23px; border: 0; font-family: Arial, sans-serif; font-size: 32px; font-weight: 400; line-height: 1; background: transparent; cursor: pointer; }
#sub02_section .styling_prev { left: 24px; color: #c6c6c6; }
#sub02_section .styling_next { right: 24px; color: #000; }
#sub02_section .styling_prev::after,
#sub02_section .styling_next::after { display: none; content: none; }

#sub02_section .sub02_panel.is_tab_leaving { opacity: 0; transform: translateY(-8px); pointer-events: none; }
#sub02_section .sub02_panel.is_tab_entering { opacity: 0; transform: translateY(20px); pointer-events: none; }
#sub02_section .sub02_panel.is_tab_entering.is_tab_entered { opacity: 1; transform: translateY(0); }
#sub02_section .sub02_panel.is_first_motion_ready .sub02_title,
#sub02_section .sub02_panel.is_first_motion_ready .sub02_caption { opacity: 0; transform: translateY(20px); transition: opacity 0.58s cubic-bezier(0.22, 1, 0.36, 1), transform 0.58s cubic-bezier(0.22, 1, 0.36, 1); }
#sub02_section .sub02_panel.is_first_motion_ready .sub02_title.is_show,
#sub02_section .sub02_panel.is_first_motion_ready .sub02_caption.is_show { opacity: 1; transform: translateY(0); }
#sub02_section .sub02_panel.is_first_motion_ready .video_area::before { position: absolute; inset: 0; z-index: 8; background: #000; transform: scaleX(1); transform-origin: right center; transition: transform 0.78s cubic-bezier(0.76, 0, 0.24, 1); content: ""; pointer-events: none; }
#sub02_section .sub02_panel.is_first_motion_ready .video_area video { opacity: 0; transform: scale(1.025); transition: opacity 0.38s ease, transform 0.9s cubic-bezier(0.22, 1, 0.36, 1); }
#sub02_section .sub02_panel.is_first_motion_ready .video_area .video_controls { opacity: 0; transform: translateY(8px); transition: opacity 0.32s ease 0.42s, transform 0.32s ease 0.42s, background 0.2s ease; }
#sub02_section .sub02_panel.is_first_motion_ready .video_area.is_show::before { transform: scaleX(0); }
#sub02_section .sub02_panel.is_first_motion_ready .video_area.is_show video { opacity: 1; transform: scale(1); }
#sub02_section .sub02_panel.is_first_motion_ready .video_area.is_show .video_controls { opacity: 1; transform: translateY(0); }
#sub02_section .sub02_panel.is_first_motion_ready .product_card,
#sub02_section .sub02_panel.is_product_motion .product_card { opacity: 0; transform: translateY(18px); transition: opacity 0.46s cubic-bezier(0.22, 1, 0.36, 1), transform 0.46s cubic-bezier(0.22, 1, 0.36, 1); }
#sub02_section .sub02_panel.is_first_motion_ready .product_card.is_show,
#sub02_section .sub02_panel.is_product_motion .product_card.is_show { opacity: 1; transform: translateY(0); }
#sub02_section .sub02_panel.is_first_motion_ready .styling_swiper { opacity: 0.45; clip-path: inset(0 100% 0 0); transition: opacity 0.3s ease, clip-path 0.78s cubic-bezier(0.76, 0, 0.24, 1); }
#sub02_section .sub02_panel.is_first_motion_ready .styling_area.is_show .styling_swiper { opacity: 1; clip-path: inset(0 0 0 0); }
#sub02_section .sub02_panel.is_first_motion_ready .styling_mark { opacity: 0; transform: translateY(-8px); transition: opacity 0.36s ease, transform 0.36s cubic-bezier(0.22, 1, 0.36, 1); }
#sub02_section .sub02_panel.is_first_motion_ready .styling_mark.is_show { opacity: 1; transform: translateY(0); }
#sub02_section .sub02_content.has_no_products,
#sub02_section .sub02_content.has_no_styling { grid-template-columns: 1fr; }
#sub02_section .sub02_content.has_no_products .product_area,
#sub02_section .sub02_content.has_no_styling .styling_area,
#sub02_section .sub02_content.has_no_products.has_no_styling { display: none; }

/* event_section */
#event_section { padding: 90px 0 0; background: #fff; }
#event_section .event_inner { width: calc(100% - 60px); max-width: 1400px; }
#event_section .event_head { text-align: center; }
#event_section .event_en { font-size: 46px; font-weight: 400; }
#event_section .event_title { margin-top: 63px; font-size: 58px; font-weight: 500; }
#event_section .event_desc { margin-top: 32px; font-size: 22px; font-weight: 400; color: #000; line-height: 1.65em; }
#event_section .event_desc_line { display: block; }
#event_section .event_desc_bold { font-weight: 700; }
#event_section .event_vote_focus { position: relative; z-index: 0; display: inline-block; }
#event_section .event_vote_focus::before { position: absolute; inset: 0px -3px; z-index: -1; background: rgba(0, 167, 255, 0.12); border: 1px solid rgba(0, 167, 255, 0.2); transform: scaleX(0); transform-origin: left center; transition: transform 0.58s cubic-bezier(0.22, 1, 0.36, 1); content: ""; }
#event_section .event_vote_focus.is_boxed::before { transform: scaleX(1); }
#event_section .event_desc_focus { position: relative; display: inline-block; }
#event_section .event_desc_focus::after { position: absolute; right: 0; bottom: -2px; left: 0; height: 3px; background: #00a7ff; transform: scaleX(0); transform-origin: left center; transition: transform 0.72s cubic-bezier(0.22, 1, 0.36, 1); content: ""; }
#event_section .event_desc_focus.is_underlined::after { transform: scaleX(1); }
#event_section .event_list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 70px; }
#event_section .event_item { display: flex; flex-direction: column; min-width: 0; }
#event_section .event_select { display: block; width: 100%; padding: 0; border: 0; background: none; color: #000; text-align: left; text-decoration: none; 
    cursor: url("https://cdn-icons-png.flaticon.com/32/99/99162.png") 16 0, pointer; }
#event_section .event_thumb_wrap { position: relative; width: 100%; overflow: hidden; background: #f6f6f6; }
#event_section .event_thumb_wrap img { width: 100%; aspect-ratio: 2 / 3; object-fit: cover; transition: opacity 0.25s ease, transform 0.3s ease; }
#event_section .event_thumb_wrap img.is_loading { opacity: 0; }
#event_section .event_select:hover .event_thumb_wrap img { transform: scale(1.015); }
#event_section .event_look_badge { position: absolute; top: 18px; left: 18px; z-index: 3; display: inline-flex; align-items: center; justify-content: center; height: 24px; padding: 0 7px; 
    color: #fff; font-size: 16px; font-weight: 500; background: #000; }
#event_section .event_overlay { position: absolute; inset: 0; z-index: 2; background: rgba(0, 0, 0, 0.16); opacity: 0; transition: opacity 0.25s ease, background 0.25s ease; pointer-events: none; }
#event_section .event_select:hover .event_overlay { opacity: 1; }
#event_section .event_select_state { position: absolute; inset: 0; z-index: 4; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 20px; color: #fff; text-align: center; opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity 0.25s ease, visibility 0.25s ease, transform 0.25s ease; pointer-events: none; }
#event_section .event_select_title { font-size: 30px; font-weight: 700; line-height: 1; }
#event_section .event_select_help { margin-top: 12px; font-size: 14px; font-weight: 400; line-height: 1.4; }
#event_section .event_item.is_selected .event_overlay { background: rgba(0, 0, 0, 0.32); opacity: 1; }
#event_section .event_item.is_selected .event_select_state { opacity: 1; visibility: visible; transform: translateY(0); }
#event_section .event_product_row { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; margin-top: 14px; }
#event_section .event_name { min-width: 0; overflow: hidden; color: #000; font-size: 16px; font-weight: 400; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
#event_section .event_name.is_loading { color: #8b8b8b; }
#event_section .event_view { flex: 0 0 auto; color: #000; font-size: 16px; font-weight: 600; white-space: nowrap; }
#event_section .event_view_hint { position: absolute; right: 0; bottom: calc(100% + 10px); z-index: 6; padding: 8px 10px; color: #fff; font-size: 13px; font-weight: 600; line-height: 1; white-space: nowrap; background: #000; opacity: 0; visibility: hidden; transform: translateY(7px); transition: opacity 0.28s ease, visibility 0.28s ease, transform 0.28s ease; pointer-events: none; }
#event_section .event_view_hint::after { position: absolute; top: 100%; right: 18px; border-top: 7px solid #000; border-right: 6px solid transparent; border-left: 6px solid transparent; content: ""; }
#event_section .event_view_hint.is_show { opacity: 1; visibility: visible; transform: translateY(0); }
#event_section .event_vote_btn { display: flex; align-items: center; justify-content: center; width: 100%; height: 54px; margin-top: 72px; color: #fff; font-size: 17px; font-weight: 700;
    line-height: 1; background: #000; opacity: 0.45; transition: opacity 0.25s ease; }
#event_section .event_vote_btn.is_ready { opacity: 1; }
#event_section .event_bottom { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-top: 28px; }
#event_section .event_info { color: #000; font-size: 18px; font-weight: 300; line-height: 1.55em; text-align: left; }
#event_section .event_info strong { font-weight: 700; }
#event_section .notice_open { flex: 0 0 auto; color: #000; font-size: 18px; font-weight: 400; }
#event_section.is_animation_ready .event_en,
#event_section.is_animation_ready .event_title,
#event_section.is_animation_ready .event_desc_line,
#event_section.is_animation_ready .event_item,
#event_section.is_animation_ready .event_vote_btn,
#event_section.is_animation_ready .event_info,
#event_section.is_animation_ready .notice_open { opacity: 0; transform: translateY(30px); transition: opacity 0.68s cubic-bezier(0.22, 1, 0.36, 1), transform 0.68s cubic-bezier(0.22, 1, 0.36, 1); }
#event_section.is_animation_ready .event_en.is_show,
#event_section.is_animation_ready .event_title.is_show,
#event_section.is_animation_ready .event_desc_line.is_show,
#event_section.is_animation_ready .event_item.is_show,
#event_section.is_animation_ready .event_info.is_show,
#event_section.is_animation_ready .notice_open.is_show { opacity: 1; transform: translateY(0); }
#event_section.is_animation_ready .event_vote_btn.is_show { opacity: 0.45; transform: translateY(0); }
#event_section.is_animation_ready .event_vote_btn.is_show.is_ready { opacity: 1; }
#event_section .event_title.is_typing::after { display: inline-block; width: 2px; height: 0.88em; margin-left: 5px; background: #000; vertical-align: -0.06em; 
    animation: event_type_cursor 0.7s steps(1) infinite; content: ""; }
@keyframes event_type_cursor {
    0%, 48% { opacity: 1; }
    49%, 100% { opacity: 0; }}

@media (prefers-reduced-motion: reduce) {
#visual_section.is_animation_ready .visual_sub_title,
#visual_section.is_animation_ready .visual_title,
#sub01_section.is_animation_ready .sub01_date,
#sub01_section.is_animation_ready .sub01_mobile_ep,
#sub01_section.is_animation_ready .sub01_state,
#sub01_section.is_animation_ready .sub01_title,
#sub01_section.is_animation_ready .sub01_desc,
#sub01_section.is_animation_ready .sub01_mobile_desc,
#sub01_section.is_animation_ready .sub01_ep,
#sub01_section.is_animation_ready .sub01_tag,
#sub01_section.is_animation_ready .sub01_item,
#sub01_section.is_animation_ready .sub01_item_title,
#sub01_section.is_animation_ready .sub01_emoji,
#sub01_section.is_animation_ready .sub01_item_desc,
#event_section.is_animation_ready .event_en,
#event_section.is_animation_ready .event_title,
#event_section.is_animation_ready .event_desc_line,
#event_section.is_animation_ready .event_item,
#event_section.is_animation_ready .event_vote_btn,
#event_section.is_animation_ready .event_info,
#event_section.is_animation_ready .notice_open,
#sub02_section .sub02_panel,
#sub02_section .sub02_title,
#sub02_section .sub02_caption,
#sub02_section .video_area,
#sub02_section .video_area video,
#sub02_section .video_controls,
#sub02_section .product_card,
#sub02_section .styling_area,
#sub02_section .styling_swiper,
#sub02_section .styling_mark { opacity: 1 !important; transform: none !important; animation: none !important; transition: none !important; clip-path: none !important; }
#visual_section.is_animation_ready .visual_sub_title { transform: skewX(355deg) !important; }
#visual_section.is_animation_ready .visual_check_pencil { stroke-dashoffset: 0 !important; animation: none !important; }
#sub02_section .sub02_panel.is_first_motion_ready .video_area::before { display: none !important; }
#sub01_section .sub01_title.is_typing::after,
#event_section .event_title.is_typing::after { display: none; }
#event_section .event_vote_focus::before,
#event_section .event_desc_focus::after { transform: scaleX(1) !important; transition: none !important; }
#event_section .event_view_hint { transition: none !important; }
#event_section.is_animation_ready .event_vote_btn { opacity: 0.45 !important; }
#event_section.is_animation_ready .event_vote_btn.is_ready { opacity: 1 !important; }
}

/* admin_preview_panel */
#admin_preview_panel { position: fixed; right: 20px; bottom: 20px; z-index: 10000; width: min(380px, calc(100% - 40px)); max-height: 50vh; padding: 20px; color: #fff; background: rgba(0, 0, 0, 0.92); overflow-y: auto; }
#admin_preview_panel .admin_preview_title { font-size: 18px; font-weight: 700; }
#admin_preview_panel .admin_preview_list { margin-top: 12px; }
#admin_preview_panel .admin_preview_item { margin-top: 7px; font-size: 13px; font-weight: 400; line-height: 1.5em; }
#admin_preview_panel .admin_preview_item:first-child { margin-top: 0; }

/* notice_layer */
#notice_layer { display: none; position: fixed; inset: 0; z-index: 9999; align-items: center; justify-content: center; padding: 24px; background: rgba(0, 0, 0, 0.65); }
#notice_layer.is_open { display: flex; }
#notice_layer .notice_content { position: relative; width: min(620px, 100%); max-height: 80vh; padding: 36px 34px 32px; background: #fff; color: #000; overflow: hidden; }
#notice_layer .notice_title { text-align: center; font-size: 24px; font-weight: 800; line-height: 1.2; letter-spacing: -0.03em; }
#notice_layer .notice_list { margin-top: 22px; overflow-y: auto; max-height: calc(80vh - 110px); padding-right: 8px; text-align: left; }
#notice_layer .notice_group { text-align: left; }
#notice_layer .notice_group + .notice_group { margin-top: 24px; padding-top: 24px; border-top: 1px solid #e0e0e0; }
#notice_layer .notice_items { margin-top: 0; text-align: left; }
#notice_layer .notice_item { display: grid; grid-template-columns: 10px minmax(0, 1fr); gap: 6px; margin-top: 8px; text-align: left; }
#notice_layer .notice_item:first-child { margin-top: 0; }
#notice_layer .notice_bullet { font-size: 14px; font-weight: 700; line-height: 1.6; }
#notice_layer .notice_text { font-size: 14px; font-weight: 400; line-height: 1.6; color: #303030; letter-spacing: -0.03em; white-space: pre-line; }
#notice_layer .notice_close { position: absolute; top: 12px; right: 12px; width: 36px; height: 36px; font-size: 28px; font-weight: 400; line-height: 1; color: #000; }

@media (max-width: 768px) {
/* 콘텐츠 틀 초기화 768 */
.magazine_conts_top { margin: 70px 0 30px; }
.page_cont.padding_01 { padding: 0; }
.page_view_top > *:not(.data_box), .page_view_top > .data_box { display: none; }
.title_con h1 span { display: block; }
.base_slider_list.list_mode ul li { margin-bottom: 0; }
.discount_view .goods_list > div .btn_top { right: 20px; top: 96px; }
.discount_view .goods_list > div { padding-top: 70px; }
.base_slider_list .product .infor_box .p_conts { font-size: 24px !important; }
.base_slider_list .product .price_box .ori_price { font-size: 26px; }
.base_slider_list .product .price_box .sale { font-size: 28px; font-weight: 500; }
.base_slider_list .box_01 .price_box .current_price { font-size: 28px; }
.line_02 { background-color: #fff; }
.mb110 { margin-bottom: 50px !important; }

/* common */
html, body { overflow-x: clip; }
#contents, .page_cont, .magazine_view, .magazine_view .cont,
#wrap, #wrapper_ey, #sub02_section { overflow: visible !important; }
#wrapper_ey .inner_ey { width: calc(100% - 32px); padding: 0; }
#wrapper_ey button, #wrapper_ey a { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }

/* visual_section */
#visual_section .visual_box { height: 900px; aspect-ratio: auto; background-position: center center; background-size: auto 100%; }
#visual_section .visual_copy { padding: 0 16px; filter: drop-shadow(0 3px 1px rgba(0, 0, 0, 0.4)) drop-shadow(0 6px 6px rgba(0, 0, 0, 0.2)); }
#visual_section .visual_sub_title { margin-bottom: 7px; font-size: 42px; white-space: nowrap; }
#visual_section .visual_sub_title_mark { margin: 0 3px; }
#visual_section .visual_sub_title_check { width: clamp(92px, 26.5vw, 150px); transform: translate(-50%, -44%); }
#visual_section .visual_title { font-size: 100px; line-height: 1em; white-space: nowrap; }

/* sub01_section */
#sub01_section { padding: 100px 0; }
#sub01_section .sub01_date_row { gap: 12px; padding-bottom: 16px; border-bottom-width: 1px; }
#sub01_section .sub01_date { font-size: 26px; }
#sub01_section .sub01_mobile_ep { display: block; flex: 0 0 auto; margin-left: auto; font-size: 26px; font-weight: 600; }
#sub01_section .sub01_state { flex: 0 0 auto; min-width: 42px; height: 32px; padding: 0 7px; font-size: 26px; }
#sub01_section .sub01_title_row { display: grid; grid-template-columns: 1fr; gap: 0; padding-top: 24px; }
#sub01_section .sub01_title { font-size: 52px; line-height: 1.22em; word-break: keep-all; }
#sub01_section .sub01_desc_row { display: none; }
#sub01_section .sub01_mobile_desc { display: block; margin-top: 14px; font-size: 34px; font-weight: 400; line-height: 1.4em; letter-spacing: -0.04em; white-space: nowrap; }
#sub01_section .sub01_side { display: none; }
#sub01_section .sub01_list { grid-template-columns: 1fr; gap: 36px; padding-top: 36px; }
#sub01_section .sub01_thumb img { aspect-ratio: 1 / 1.38; }
#sub01_section .sub01_copy { padding-top: 20px; }
#sub01_section .sub01_copy_head { display: flex; align-items: baseline; justify-content: flex-start; gap: 20px; min-width: 0; }
#sub01_section .sub01_emoji { flex: 0 1 auto; min-width: 0; font-size: 30px; text-align: left; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#sub01_section .sub01_item_title { flex: 0 0 auto; margin-top: 0; font-size: 42px; white-space: nowrap; }
#sub01_section .sub01_item_desc { margin-top: 16px; font-size: 26px; line-height: 1.5em; white-space: normal; word-break: keep-all; overflow-wrap: break-word; }
#sub01_section .sub01_item_desc_line { display: inline; }
#sub01_section .sub01_item_desc_line + .sub01_item_desc_line::before { content: " "; }

/* sticky_section */
#sticky_section { position: -webkit-sticky; position: sticky; top: 0; z-index: 90; width: 100%; background: #000; }
#sticky_section .sticky_inner { width: 100%; max-width: none; background: #000; }
#sticky_section .sticky_tab_list { display: flex; align-items: center; justify-content: center; padding: 0 6px; }
#sticky_section .sticky_tab_item { flex: 1 1 0; min-width: 0; }
#sticky_section .sticky_tab_button { width: 100%; height: 80px; padding: 0 2px; font-size: 26px; font-weight: 400; }
#sticky_section .sticky_tab_button.is_active { color: #00a7ff; font-weight: 700; }
#sticky_section .sticky_bar { bottom: 7px; width: 64px; height: 2px; }

/* sub02_section */
#sub02_section { padding: 0 0 72px; }
#sub02_section #sub02_render { padding-top: 100px; }
#sub02_section .sub02_panel { display: none; }
#sub02_section .sub02_panel.is_active { display: grid; grid-template-columns: 1fr; grid-template-rows: auto auto auto; grid-template-areas: "head" "video" "content"; gap: 40px; min-height: 0; }
#sub02_section .sub02_panel.is_active.has_no_video { grid-template-rows: auto auto; grid-template-areas: "head" "content"; }
#sub02_section .sub02_head { grid-area: head; display: flex; align-items: baseline; justify-content: space-between; gap: 20px; min-width: 0; padding: 0; }
#sub02_section .sub02_title { flex: 0 0 auto; font-size: 62px; text-align: left; white-space: nowrap; word-break: keep-all; }
#sub02_section .sub02_caption { flex: 1 1 auto; min-width: 0; margin-top: 0; font-size: 28px; text-align: right; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#sub02_section .video_area { grid-area: video; width: 100%; height: auto; }
#sub02_section .video_area video { width: 100%; height: 100%; object-fit: cover; }
#sub02_section .video_area::after { height: 78px; }
#sub02_section .video_controls { bottom: 20px; left: 20px; width: 62px; height: 62px; }
#sub02_section .video_control_button { width: 62px; height: 62px; }
#sub02_section .video_control_button svg { width: 46px; height: 46px; }
#sub02_section .video_feedback { width: 60px; height: 60px; }
#sub02_section .video_feedback svg { width: 46px; height: 46px; }
#sub02_section .sub02_content { grid-area: content; display: grid; grid-template-columns: 1fr; gap: 40px; min-width: 0; min-height: 0; height: auto; }
#sub02_section .product_area { min-width: 0; min-height: 0; height: auto; overflow: hidden; }
#sub02_section .product_scroll { display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - 10px) / 3.5); gap: 0 10px; width: 100%; height: auto; 
    max-height: none; padding: 0 0 12px; overflow-x: auto; overflow-y: hidden; overscroll-behavior-x: contain; -webkit-overflow-scrolling: touch; scroll-snap-type: x mandatory; 
    scroll-padding-left: 0; touch-action: pan-x pan-y; }
#sub02_section .product_scroll::-webkit-scrollbar { display: none; width: 0; height: 0; }
#sub02_section .product_card { scroll-snap-align: start; scroll-snap-stop: always; }
#sub02_section .product_scroll_guide { display: none; }
#sub02_section .product_scroll_guide h6 { font-size: 10px; }
#sub02_section .product_scroll_icon { width: 20px; height: 13px; }
#sub02_section .product_scroll_icon::before { width: 11px; height: 11px; }
#sub02_section .product_info { padding-top: 7px; }
#sub02_section .product_brand { font-size: 22px; font-weight: 400; line-height: 1.3em; }
#sub02_section .product_name { font-size: 22px; font-weight: 400; line-height: 1.4em; }
#sub02_section .product_price_row { flex-wrap: wrap; gap: 4px 6px; margin-top: 7px; }
#sub02_section .product_price { font-size: 24px; font-weight: 600; }
#sub02_section .product_origin { font-size: 20px; font-weight: 500; }
#sub02_section .product_sale { font-size: 24px; font-weight: 700; }
#sub02_section .styling_area { width: 100%; height: auto; aspect-ratio: 2 / 3; }
#sub02_section .styling_mark { top: 20px; right: 20px; height: 50px; padding: 0 16px; font-size: 28px; }
#sub02_section .styling_swiper { width: 100%; height: 100%; }
#sub02_section .styling_prev,
#sub02_section .styling_next { width: 62px; height: 42px; margin-top: -21px; font-size: 42px; }
#sub02_section .styling_prev { left: 10px; color: #8d8d8d; }
#sub02_section .styling_next { right: 10px; color: #000; }

/* event_section */
#event_section { padding: 56px 0 78px; }
#event_section .event_inner { width: calc(100% - 32px); max-width: none; }
#event_section .event_en { font-size: 32px; }
#event_section .event_title { margin-top: 24px; font-size: 46px; word-break: keep-all; }
#event_section .event_desc { margin-top: 18px; font-size: 28px; line-height: 1.7em; white-space: normal; }
#event_section .event_desc_line { display: block; }
#event_section .event_list { grid-template-columns: 1fr; gap: 42px; width: 100%; max-width: none; margin: 42px 0 0; }
#event_section .event_select { cursor: pointer; }
#event_section .event_select:hover .event_thumb_wrap img { transform: none; }
#event_section .event_select:hover .event_overlay { opacity: 0; }
#event_section .event_look_badge { top: 20px; left: 20px; height: 50px; font-size: 28px; padding: 0 16px; }
#event_section .event_thumb_wrap img { aspect-ratio: 2 / 3; }
#event_section .event_select_title { font-size: 42px; }
#event_section .event_select_help { margin-top: 10px; font-size: 30px; }
#event_section .event_product_row { gap: 14px; margin-top: 13px; }
#event_section .event_name { font-size: 26px; }
#event_section .event_view { min-height: 44px; margin: -9px 0; display: flex; align-items: center; font-size: 28px; }
#event_section .event_view_hint { bottom: calc(100% + 14px); padding: 12px 15px; font-size: 22px; }
#event_section .event_view_hint::after { right: 24px; border-top-width: 9px; border-right-width: 8px; border-left-width: 8px; }
#event_section .event_vote_btn { width: 100%; max-width: none; height: 70px; margin: 50px 0 0; font-size: 28px; }
#event_section .event_bottom { flex-direction: row; align-items: baseline; justify-content: space-between; gap: 16px; width: 100%; max-width: none; margin: 22px 0 0; }
#event_section .event_info { flex: 1 1 auto; min-width: 0; font-size: 24px; line-height: 1.7em; }
#event_section .notice_open { flex: 0 0 auto; align-self: auto; font-size: 26px; white-space: nowrap; }

/* notice_layer */
#notice_layer { padding: 16px; }
#notice_layer .notice_content { padding: 40px 24px; max-height: 50vh; }
#notice_layer .notice_title { font-size: 30px; font-weight: 600; text-align: center; }
#notice_layer .notice_list { margin-top: 24px; padding-right: 12px; text-align: left; }
#notice_layer .notice_group { padding-bottom: 26px; text-align: left; }
#notice_layer .notice_group + .notice_group { margin-top: 0; padding-top: 26px; }
#notice_layer .notice_group:last-child { padding-bottom: 0; }
#notice_layer .notice_items { margin-top: 0; text-align: left; }
#notice_layer .notice_item { grid-template-columns: 10px minmax(0, 1fr); gap: 0; margin-top: 9px; align-items: start; text-align: left; }
#notice_layer .notice_text,
#notice_layer .notice_bullet { font-size: 24px; line-height: 1.4em; }
#notice_layer .notice_close { right: 25px; top: 30px; width: 40px; height: 40px; font-size: 50px; font-weight: 500; }
}
