/* HK Studio base / page shell
   v0.2.1 grey-section-theme
   화면 바깥, 페이지 판, 섹션, 카드까지 같은 계열 그레이 톤으로 정리한다.
*/

body.hk-studio-page-active,
body.hk-studio-page-active #page,
body.hk-studio-page-active .site,
body.hk-studio-page-active .site-content,
body.hk-studio-page-active .content-area,
body.hk-studio-page-active .entry-content,
body.hk-studio-page-active .wp-site-blocks,
body.hk-studio-page-active main,
body.hk-studio-page-active article{
  background:#e3e3e1 !important;
}

body.hk-studio-page-active .entry-title,
body.hk-studio-page-active .page-title,
body.hk-studio-page-active h1.entry-title,
body.hk-studio-page-active h1.page-title,
body.hk-studio-page-active .wp-block-post-title,
body.hk-studio-page-active main > h1,
body.hk-studio-page-active article > h1{
  display:none !important;
}

body.hk-studio-page-active .entry-content,
body.hk-studio-page-active .wp-block-post-content{
  margin-top:0 !important;
  padding-top:0 !important;
}

#hk-studio-root,
#hk-studio-root *{box-sizing:border-box;}

#hk-studio-root{
  width:100%;
  min-height:100vh;
  background:#e3e3e1;
  color:#161616;
  font-family:-apple-system,BlinkMacSystemFont,"Inter","Pretendard","Noto Sans KR","Segoe UI",sans-serif;
  line-height:1.55;
  letter-spacing:-0.01em;
}

#hk-studio-root a{color:inherit;text-decoration:none;}
#hk-studio-root button,
#hk-studio-root input,
#hk-studio-root select,
#hk-studio-root textarea{font:inherit;}

.hk-studio-page{
  --hk-bg:#e3e3e1;
  --hk-surface:#ededeb;
  --hk-surface-2:#f4f4f2;
  --hk-panel:#f7f7f5;
  --hk-line:#d2d2ce;
  --hk-line-strong:#c2c2bd;
  --hk-text:#171717;
  --hk-muted:#62625e;
  --hk-deep:#111;
  --hk-accent:#111;
  width:100%;
  max-width:1120px;
  margin:0 auto;
  background:var(--hk-surface);
  color:var(--hk-text);
  min-height:100vh;
}

/* TopLogo: 상단 메뉴 위 중앙 로고 */
.hk-studio-top-logo{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px 24px 18px;
  background:var(--hk-surface);
}

.hk-studio-top-logo img{
  display:block;
  width:118px;
  max-width:32vw;
  height:auto;
}

.hk-studio-local-nav{
  position:sticky;
  top:0;
  z-index:50;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:30px;
  min-height:38px;
  padding:0 24px;
  background:rgba(237,237,235,.96);
  border-bottom:1px solid var(--hk-line);
  backdrop-filter:saturate(140%) blur(12px);
  overflow:hidden;
  overflow-x:hidden;
  overflow-y:hidden;
  white-space:nowrap;
}
.hk-studio-local-nav a{color:#2f2f2d;font-size:14px;font-weight:650;line-height:1;white-space:nowrap;}
.hk-studio-local-nav a:hover{text-decoration:underline;text-underline-offset:6px;}


/* LocalNav v0.3.1 — six-item fixed row + iOS Safari top-gap guard */
@media(max-width:767px){
  body.hk-studio-page-active #hk-studio-root{
    padding-top:40px !important;
  }

  #hk-studio-root .hk-studio-local-nav{
    position:fixed !important;
    top:0 !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    z-index:9999 !important;
    display:grid !important;
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    align-items:center !important;
    justify-items:center !important;
    gap:0 !important;
    width:100% !important;
    max-width:1120px !important;
    min-height:34px !important;
    padding:3px 8px !important;
    background:#ededeb !important;
    border-bottom:1px solid var(--hk-line) !important;
    overflow:hidden !important;
    overflow-x:hidden !important;
    overflow-y:hidden !important;
    white-space:nowrap !important;
    -webkit-overflow-scrolling:auto !important;
    overscroll-behavior-x:none !important;
    transform-style:flat !important;
  }

  #hk-studio-root .hk-studio-local-nav a{
    display:block !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:clip !important;
    white-space:nowrap !important;
    color:#2f2f2d !important;
    font-size:9.5px !important;
    font-weight:650 !important;
    line-height:1 !important;
    letter-spacing:-0.055em !important;
    text-align:center !important;
  }
}

@media(max-width:374px){
  body.hk-studio-page-active #hk-studio-root{
    padding-top:40px !important;
  }

  #hk-studio-root .hk-studio-local-nav{
    padding:3px 6px !important;
  }

  #hk-studio-root .hk-studio-local-nav a{
    font-size:8.8px !important;
    letter-spacing:-0.065em !important;
  }
}


.hk-studio-section{
  padding:34px 0;
  background:var(--hk-surface);
  color:var(--hk-text);
  border-top:1px solid var(--hk-line);
}
.hk-studio-section:first-child{border-top:0;}
.hk-studio-section__head{margin-bottom:18px;}
.hk-studio-section__head h2{
  margin:0 0 8px;
  font-size:clamp(22px,2.4vw,30px);
  line-height:1.18;
  letter-spacing:-0.03em;
  font-weight:760;
  color:#161616;
}
.hk-studio-section__head p,
.hk-studio-muted,
.hk-studio-booking-help{margin:0;color:var(--hk-muted);font-size:15px;}
.hk-studio-section p{color:#323230;}
.hk-studio-page [data-hk-section]{scroll-margin-top:86px;}

.hk-studio-page label{display:flex;flex-direction:column;gap:7px;color:#2a2a28;font-size:13px;font-weight:700;}
.hk-studio-page input,
.hk-studio-page select,
.hk-studio-page textarea{
  width:100%;
  border:1px solid var(--hk-line-strong);
  border-radius:10px;
  background:#fafaf8;
  color:#111;
  padding:12px 13px;
  outline:none;
}
.hk-studio-page input:focus,
.hk-studio-page select:focus,
.hk-studio-page textarea:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.08);}

@media(max-width:640px){
  .hk-studio-top-logo{
    padding:18px 16px 14px;
  }

  .hk-studio-top-logo img{
    width:96px;
    max-width:38vw;
  }
}


/* =========================================================
   TopLogo final size/position override v0.2.6
   - 현재 보이는 로고 기준 약 1/5 크기
   - LocalNav 위 화면 중앙 고정
   ========================================================= */
#hk-studio-root .hk-studio-page .hk-studio-top-logo{
  width:100% !important;
  max-width:1120px !important;
  margin:0 auto !important;
  padding:4px 24px 4px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  background:var(--hk-surface) !important;
}

#hk-studio-root .hk-studio-page .hk-studio-top-logo img{
  display:block !important;
  width:130px !important;
  max-width:130px !important;
  height:auto !important;
  margin:0 auto !important;
  transform:translateY(-32px) !important;
}

@media(max-width:640px){
  #hk-studio-root .hk-studio-page .hk-studio-top-logo{
    padding:0 16px 8px !important;
  }

  #hk-studio-root .hk-studio-page .hk-studio-top-logo img{
    width:96px !important;
    max-width:96px !important;
  transform:translateY(-22px) !important;
  }
}
/* =========================================================
   TopLogo upper gap half-cut guard v0.2.7
   - 사용자가 조정한 130px 로고 크기 유지
   - 상단 빈 공간을 현재 기준 약 절반 줄임
   ========================================================= */
#hk-studio-root .hk-studio-page .hk-studio-top-logo{
  padding-top:0 !important;
  padding-bottom:8px !important;
  min-height:0 !important;
  line-height:0 !important;
}

#hk-studio-root .hk-studio-page .hk-studio-top-logo img{
  width:130px !important;
  max-width:130px !important;
  transform:translateY(-32px) !important;
}

@media(max-width:640px){
  #hk-studio-root .hk-studio-page .hk-studio-top-logo{
    padding-top:0 !important;
    padding-bottom:8px !important;
  }

  #hk-studio-root .hk-studio-page .hk-studio-top-logo img{
    width:96px !important;
    max-width:96px !important;
    transform:translateY(-22px) !important;
  }
}
/* =========================================================
   TopLogo mobile crop fix v0.3.4
   - 실제 모바일에서 로고가 잘리는 문제 수정
   - 모바일에서는 translateY로 위로 당기지 않고 padding으로 위치 조정
   - desktop TopLogo 값은 유지
   ========================================================= */
@media screen and (max-width:767px){
  #hk-studio-root .hk-studio-top-logo,
  #hk-studio-root .hk-studio-page .hk-studio-top-logo{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:6px 16px 6px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    min-height:0 !important;
    line-height:0 !important;
    overflow:visible !important;
    background:var(--hk-surface) !important;
  }

  #hk-studio-root .hk-studio-top-logo img,
  #hk-studio-root .hk-studio-page .hk-studio-top-logo img,
  #hk-studio-root img[src*="logo01"],
  #hk-studio-root img[src*="logo02"]{
    display:block !important;
    width:130px !important;
    max-width:130px !important;
    height:auto !important;
    max-height:none !important;
    margin:0 auto !important;
    transform:none !important;
    object-fit:contain !important;
  }
}
