@charset "utf-8";

/* =========================
RESET
========================= */

html,
body{
margin:0 !important;
padding:0 !important; 
color:#111 !important;
font-family:"Pretendard" !important;
overflow-x:hidden !important;
}

body.pu_no_scroll{
overflow:hidden !important;
}

*,
*::before,
*::after{
box-sizing:border-box !important;
}

ul,
ol,
li{
list-style:none !important;
margin:0 !important;
padding:0 !important;
}

a{
text-decoration:none !important;
color:inherit !important;
}

img{
display:block !important;
max-width:100% !important;
height:auto !important;
border:0 !important;
}


/* =========================
그누 고정폭 제거
========================= */

#hd,
#wrapper,
#ft{
min-width:0 !important;
width:100% !important;
}

#container_wr,
#ft_wr,
#hd_wrapper,
#gnb .gnb_wrap{
width:100% !important;
max-width:none !important;
}



/* =========================
HEADER
========================= */

.pu_hd{

border:0 !important;

}


.pu_header_inner{

position:relative !important;

max-width:1400px !important;

margin:0 auto !important;

padding:28px 20px 18px !important;

text-align:center !important;

}


/* 로고 */

.pu_logo{

margin:0 !important;
padding:0 !important;

}


.pu_logo a{

display:inline-block !important;

}


.pu_logo img{

height:180px !important;
width:auto !important;
margin:0 auto !important;

}



/* =========================
모바일 버튼
========================= */

.pu_m_menu_btn,
.pu_m_search_btn{

position:absolute !important;

top:30px !important;

width:40px !important;
height:40px !important;

border:0 !important;

background:transparent !important;

cursor:pointer !important;

z-index:10 !important;

}


.pu_m_menu_btn{

left:18px !important;

}


.pu_m_search_btn{

right:18px !important;

}


.pu_m_menu_btn span{

display:block !important;

width:26px !important;
height:2px !important;

margin:6px auto !important;

background:#222 !important;

}


.pu_m_search_btn svg{

width:22px !important;
height:22px !important;

fill:none !important;

stroke:#222 !important;
stroke-width:2 !important;

stroke-linecap:round !important;
stroke-linejoin:round !important;

}



/* =========================
PC MENU
========================= */

.pu_pc_nav{

margin-top:18px !important;

}


.pu_pc_menu_list{

display:flex !important;

justify-content:center !important;

align-items:center !important;

gap:0 !important;

}


.pu_pc_menu_list > li{

position:relative !important;

}


.pu_pc_menu_list > li > a{

padding:0 14px !important;

font-size:13px !important;

color:#666 !important;

}


.pu_pc_menu_list > li:not(:last-child)::after{

content:"|" !important;

position:absolute !important;

right:-4px !important;

top:50% !important;

transform:translateY(-50%) !important;

color:#bbb !important;

font-size:11px !important;

}



/* =========================
MOBILE DRAWER
========================= */

.pu_mobile_dim{

position:fixed !important;

top:0 !important;
left:0 !important;

width:100% !important;
height:100% !important;

background:rgba(0,0,0,.35) !important;

opacity:0 !important;

visibility:hidden !important;

transition:.25s !important;

z-index:10 !important;

}


.pu_mobile_dim.is-open{

opacity:1 !important;

visibility:visible !important;

}


.pu_mobile_drawer{

position:fixed !important;

top:0 !important;
left:0 !important;

width:80% !important;
max-width:360px !important;

height:100vh !important;

background:#fff !important;

transform:translateX(-100%) !important;

transition:.25s !important;

z-index:99999 !important;

padding-top:70px !important;

}


.pu_mobile_drawer.is-open{

transform:translateX(0) !important;

}


/* 닫기 */

.pu_mobile_close{

position:absolute !important;

left:18px !important;
top:20px !important;

width:32px !important;
height:32px !important;

cursor:pointer !important;

background:none !important;
border:none !important;
box-shadow:none !important;

padding:0 !important;

}


/* X 선 */

.pu_mobile_close span{

position:absolute !important;

top:15px !important;
left:5px !important;

width:22px !important;
height:2px !important;

background:#222 !important;

}


.pu_mobile_close span:first-child{

transform:rotate(45deg);

}

.pu_mobile_close span:last-child{

transform:rotate(-45deg);

}



/* 모바일 메뉴 */

.pu_mobile_menu_list{

padding:0 !important;

margin:0 !important;

}


.pu_mobile_menu_item{

border-bottom:1px solid #eee !important;

}


.pu_mobile_menu_link{

display:block !important;

padding:20px 24px !important;

font-size:16px !important;

color:#333 !important;

}



/* =========================
CONTENT
========================= */

#wrapper{

width:92% !important;

margin-left:auto !important;

margin-right:auto !important;

}


#container_wr{

width:100% !important;

margin:0 auto !important;

padding:10px 0 60px !important;

}


#container{

width:100% !important;

margin:0 !important;

padding:0 !important;

}



/* =========================
GALLERY
========================= */

.pu_gallery_grid{

display:grid !important;

grid-template-columns:repeat(3, 1fr) !important;

gap:4px !important;

}

.pu_gallery_grid img{

width:100% !important;

height:100% !important;

object-fit:cover !important;

display:block !important;

}

.pf_footer{

width:100%;

background:#fff;

border-top:1px solid #eee;

margin-top:40px;

}


.pf_footer_inner{

max-width:1400px;

margin:0 auto;

padding:26px 20px;

text-align:center;

box-sizing:border-box;

}


.pf_footer_line{

font-size:14px;

color:#333;

line-height:1.8;

word-break:keep-all;

}


/* =========================
RESPONSIVE
========================= */

@media(min-width:1600px){

#wrapper{

width:85% !important;

}

}


/* 태블릿 */

@media(max-width:1200px){

#wrapper{

width:94% !important;

}
.pf_footer_inner{

padding:28px 18px;

}

.pf_footer_text{

font-size:14px;

}

}


@media(max-width:768px){


.pu_header_inner{

height:64px !important;

padding:0 !important;

display:flex !important;

align-items:center !important;

justify-content:center !important;

}
.pf_footer_line{

font-size:12.5px;

line-height:1.7;

}

.pf_footer_inner{

padding:24px 16px;

}

.pf_footer_text{

font-size:13px;

line-height:1.8;

}


/* 로고 가운데 */

.pu_logo{

position:absolute !important;

left:50% !important;

top:50% !important;

transform:translate(-50%,-50%) !important;

}


.pu_logo img{

height:60px !important;

}


/* PC메뉴 숨김 */

.pu_pc_nav{

display:none !important;

}


/* 모바일 버튼 위치 */

.pu_m_menu_btn{

left:14px !important;

top:50% !important;

transform:translateY(-50%) !important;

}


.pu_m_search_btn{

right:14px !important;

top:50% !important;

transform:translateY(-50%) !important;

}


/* masonry */

.pu_gallery_grid{

grid-template-columns:repeat(3, 1fr) !important;

gap:2px !important;

}

#wrapper{

width:100% !important;

}

}


/* PC에서는 모바일 숨김 */

@media(min-width:769px){

.pu_m_menu_btn,
.pu_m_search_btn,
.pu_mobile_drawer,
.pu_mobile_dim{

display:none !important;

}

}