
:root{--blue:#2563EB;--ink:#0f172a;--muted:#64748b;--line:#d8e1ec}
*{box-sizing:border-box}
body{margin:0;font-family:Pretendard,"Noto Sans KR",Apple SD Gothic Neo,sans-serif;color:var(--ink);background:#fff;line-height:1.82}
main{width:min(calc(100% - 36px),900px);margin:0 auto;padding:64px 0 90px}
.breadcrumb{font-size:13px;color:#94a3b8;margin-bottom:24px}.breadcrumb a{color:inherit;text-decoration:none}
.tag{display:inline-flex;padding:7px 11px;border-radius:999px;background:#eef4ff;color:#2555a6;font-size:12px;font-weight:800}
h1{font-size:clamp(34px,5vw,48px);line-height:1.22;letter-spacing:-.05em;margin:15px 0 16px}
.lead{font-size:17px;line-height:1.8;color:#52637b;margin:0 0 26px}
.hero{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:24px;border:1px solid var(--line);display:block;margin:28px 0 48px}
article h2{font-size:25px;line-height:1.42;letter-spacing:-.035em;margin:42px 0 11px}
article p{font-size:16px;color:#34445a;margin:0}
.sourcebox,.linksbox{margin-top:44px;padding:20px 22px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0}
.sourcebox strong,.linksbox strong{display:block;margin-bottom:9px}
.sourcebox a,.linksbox a{color:var(--blue);font-weight:700;text-decoration:none}
.sourcebox ul{margin:0;padding-left:20px}.sourcebox li{margin:6px 0}
.notice{margin-top:26px;padding:13px 15px;border-radius:12px;background:#fff8e9;color:#7a5415;font-size:13px}
@media(max-width:700px){main{padding-top:38px}h1{font-size:30px}.lead{font-size:15.5px}.hero{border-radius:18px;margin-bottom:36px}article h2{font-size:21px}article p{font-size:15px}}

/* ===== GALLERY TICKET SHARED FOOTER ===== */
.gt-footer{
  margin-top:0;
  background:#101827;
  color:#dce5f3;
  border-top:1px solid #243247;
}
.gt-footer-top{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
  gap:64px;
  padding-top:54px;
  padding-bottom:38px;
}
.gt-footer-logo{
  display:inline-block;
  color:#fff;
  font-size:23px;
  font-weight:900;
  letter-spacing:-.045em;
  text-decoration:none;
}
.gt-footer-brand p{
  max-width:560px;
  margin:14px 0 20px;
  color:#91a2b8;
  font-size:13px;
  line-height:1.75;
}
.gt-footer-contact{
  display:flex;
  gap:9px;
  flex-wrap:wrap;
}
.gt-footer-contact a{
  text-decoration:none;
  color:#eaf2ff;
  font-size:12px;
  font-weight:800;
  padding:9px 12px;
  border:1px solid #33455f;
  border-radius:10px;
  background:#172235;
}
.gt-footer-links{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:26px;
}
.gt-footer-links strong{
  display:block;
  color:#fff;
  font-size:12px;
  margin-bottom:13px;
}
.gt-footer-links a{
  display:block;
  color:#8fa1b8;
  text-decoration:none;
  font-size:12px;
  margin:9px 0;
}
.gt-footer-links a:hover,
.gt-footer-contact a:hover{color:#fff}
.gt-footer-business{
  border-top:1px solid #223046;
  padding-top:18px;
  padding-bottom:18px;
}
.gt-footer-business p{
  margin:0;
  color:#71849d;
  font-size:11px;
  line-height:1.65;
}
.gt-footer-business strong{color:#9db0c7}
.gt-footer-bottom{
  border-top:1px solid #223046;
  color:#64758c;
  font-size:10.5px;
}
.gt-footer-bottom .wrap{
  padding-top:17px;
  padding-bottom:19px;
}
@media(max-width:800px){
  .gt-footer-top{
    grid-template-columns:1fr;
    gap:34px;
    padding-top:42px;
  }
  .gt-footer-links{
    grid-template-columns:repeat(2,1fr);
    row-gap:26px;
  }
}
@media(max-width:520px){
  .gt-footer-links{grid-template-columns:1fr 1fr}
  .gt-footer-brand p{font-size:12px}
}

.wrap{width:min(calc(100% - 36px),1180px);margin:0 auto;}
/* ===== BUSINESS INFO FOOTER ===== */
.gt-footer-business-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px 28px;
}
.gt-footer-business-item{
  display:flex;
  gap:8px;
  align-items:flex-start;
  min-width:0;
}
.gt-footer-business-item strong{
  flex:0 0 auto;
  color:#9db0c7;
  font-size:11px;
  line-height:1.6;
}
.gt-footer-business-item span,
.gt-footer-business-item a{
  color:#71849d;
  font-size:11px;
  line-height:1.6;
  text-decoration:none;
  word-break:keep-all;
}
.gt-footer-business-item a:hover{color:#fff}
@media(max-width:900px){
  .gt-footer-business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .gt-footer-business-grid{grid-template-columns:1fr}
}

/* ===== QUICK KAKAO CTA ===== */
.header-actions .quick-kakao-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-right:6px;
  font-size:15px;
  line-height:1;
  transform:translateY(-1px);
}
.header-actions a.btn.primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  white-space:nowrap;
}

/* old custom floating consultation button removed after ChannelTalk integration */
.floating, .float-btn{display:none !important;}

/* ===== BRAND LOGO V7 ===== */
header a.brand{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}
.site-brand-logo{
  display:block;
  width:auto;
  height:42px;
  max-width:220px;
  object-fit:contain;
}
.header-actions a.btn.primary{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
}
.kakao-official-icon{
  width:22px !important;
  height:22px !important;
  min-width:22px;
  object-fit:contain;
  border-radius:5px;
}
@media(max-width:700px){
  .site-brand-logo{
    height:34px;
    max-width:176px;
  }
  .kakao-official-icon{
    width:20px !important;
    height:20px !important;
    min-width:20px;
  }
}


/* ===== V19 BREADCRUMB CONSISTENCY ===== */
.breadcrumb{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  line-height:1.55;
}
.breadcrumb a{
  flex:0 0 auto;
}
.breadcrumb-sep{
  color:#cbd5e1;
  flex:0 0 auto;
}
.breadcrumb [aria-current="page"]{
  color:#64748b;
  min-width:0;
  word-break:keep-all;
}
@media(max-width:700px){
  .breadcrumb{
    gap:5px;
    font-size:12px;
    margin-bottom:20px;
  }
}
