@charset "utf-8";

/* font-size 반응형 (1rem = 10px) */
html {
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

/* 2. 기본 변수 설정 (PC ~ Tablet) */
:root{
	--fs-72: clamp(4rem, 4rem + 2vw, 8rem);
	 --fs-64: clamp(4rem, 3.6rem + 1.5vw, 6.4rem);   /* 32px ~ 56px */
	 --fs-56: clamp(3.2rem, 3rem + 1.25vw, 5.6rem);   /* 32px ~ 56px */
	 --fs-48: clamp(3rem, 2.8rem + 1.25vw, 4.8rem);   /* 24px ~ 44px */
	 --fs-44: clamp(2.8rem, 2.5rem + 3vw, 4.4rem);   /* 24px ~ 44px */
	 --fs-40: clamp(2.7rem, 1.95rem + 1.4vw, 4rem);   /* 22px ~ 40px */
	 --fs-36: clamp(2.35rem, 1.9rem + 1.4vw, 3.6rem);   /* 20px ~ 36px */
	 --fs-34: clamp(2.3rem, 1.9rem + 1.3vw, 3.4rem); /* 19px ~ 34px */
	 --fs-32: clamp(2.25rem, 1.85rem + 1.3vw, 3.2rem); /* 18px ~ 32px */
	 --fs-30: clamp(2rem, 1.8rem + 1.2vw, 3rem);   /* 17px ~ 30px */
	 --fs-28: clamp(1.5rem, 1.5rem + 1.2vw, 2.8rem); /* 16px ~ 28px */
	 --fs-26: clamp(1.45rem, 1.5rem + 1.1vw, 2.6rem); /* 15px ~ 26px */
	 --fs-24: clamp(1.4rem, 1.5rem + 1.1vw, 2.4rem);   /* 14px ~ 24px */
	 --fs-22: clamp(1.4rem, 1.4rem + 1.1vw, 2.2rem); /* 13px ~ 22px */
	 --fs-20: clamp(1.35rem, 1.25rem + 1.1vw, 2rem);   /* 12px ~ 20px */
	 --fs-18: clamp(1.3rem, 1.2rem + 1vw, 1.8rem); /* 11px ~ 18px */
	 --fs-16: clamp(1.2rem, 1.1rem + 1vw, 1.6rem);   /* 10px ~ 16px */
	 --fs-14: clamp(1.1rem, 1rem + 1vw, 1.4rem); /* 9px ~ 14px */
	 --primary:#0399F3;
   	--paper:"Paperlogy", sans-serif;
}
@media (max-width: 1400px) {
	html {font-size:60%;}
}
@media (max-width: 1024px) {
	html {font-size:58%;}
}
@media (max-width: 700px) { 
	html {font-size:52%;}
	:root{
		 --fs-64: clamp(3rem, 3rem + 2.5vw, 4.5rem);
		 --fs-56: clamp(2.6rem, 2.5rem + 2.5vw, 3.8rem);
		 --fs-48: clamp(2.5rem, 2rem + 2.5vw, 3.6rem); 
		 --fs-44: clamp(2.4rem, 1.85rem + 2.5vw, 3.4rem);   
		 --fs-40: clamp(2.2rem, 1.8rem + 2.5vw, 3.2rem);   
		 --fs-36: clamp(2.1rem, 1.75rem + 1.4vw, 3rem);  
		 --fs-34: clamp(2rem, 1.7rem + 1.3vw, 2.9rem); 
		 --fs-32: clamp(1.8rem, 1.65rem + 1.3vw, 2.8rem);
		 --fs-30: clamp(1.6rem, 1.6rem + 1.2vw, 2.7rem);  
		 --fs-28: clamp(1.45rem, 1.5rem + 1.2vw, 2.6rem); 
		 --fs-26: clamp(1.4rem, 1.5rem + 1.1vw, 2.5rem); 
	}
	
}
/* =========================
          commom
========================= */

/*swiper js 로딩전 첫번째 이미지만 크게 보이는 오류 수정 */
.swiper:not(.swiper-initialized) { opacity: 0;}
.swiper {transition: opacity 0.3s;}
.swiper:not(.swiper-initialized) {position: relative; min-height: 200px; opacity: 0;}
.swiper:not(.swiper-initialized)::after { content: ''; position: absolute; top: 50%; left: 50%; width: 30px; height: 30px; margin: -15px 0 0 -15px; border: 3px solid #ddd; border-top-color: #333; border-radius: 50%; animation: spin 0.8s linear infinite;}
@keyframes spin { to { transform: rotate(360deg); } }

/* ══════════════════════════════════
   퀵메뉴 
══════════════════════════════════ */
/* ── Keyframes ── */
@keyframes rotate360 {from {transform: translate(-50%,-50%) rotate(0deg);} to {transform: translate(-50%,-50%) rotate(360deg);}}
@keyframes sway {0%,100% {transform: translateX(-5px);} 50% {transform: translateX(5px);}}
@keyframes quick-enter {from {width: 0;} to {width: 120px;}}
@keyframes float {0%, 100% { transform: translateY(0); } 50% { transform: translateY(-12px); }}

/* ── Quick Menu ── */
.quick-menu {position: fixed; right: 25px; top: 52%; transform: translateY(-50%); display: flex; flex-direction: column; align-items: flex-end; gap: 2px; z-index: 10;transition:all 0.2s ease}
.quick-item {
  position: relative; width: 120px; height: 120px;
  border-radius:60px; overflow: hidden; display: block;
  transition: width 0.4s cubic-bezier(0.34,1.56,0.64,1);
  animation: quick-enter 0.6s cubic-bezier(0.34,1.56,0.64,1) backwards;
}
.quick-item:nth-child(1) {animation-delay: 0.1s;}
.quick-item:nth-child(2) {animation-delay: 0.2s;}
.quick-item:nth-child(3) {animation-delay: 0.3s;}
.quick-item:hover {width: 152px;}

.quick-label {position: absolute; top: 21px; left:39px; font-family: 'Paperlogy','Noto Sans KR',sans-serif; font-weight: 900; font-size: 2.2rem; line-height: 1em; color: #fff; z-index: 5;}
.quick-sub {text-align: center;position: absolute;top: 68px;left: 25px;font-family: 'Paperlogy','Noto Sans KR',sans-serif;font-weight: 600;font-size: 1.4rem;line-height: 1.1em;color: #fff;z-index: 5;white-space: nowrap;}

.quick-apply {background: url('../img/content/main/quick3_bg.jpg') center/cover;}
.quick-apply .quick-label {text-shadow: 2px 2px 0 rgba(106,0,177,.4);}
.quick-apply::before {content: ''; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 35%, rgba(255,255,255,.22) 50%, transparent 65%); transform: translateX(-200%); transition: transform 0.55s ease; z-index: 4;}
.quick-apply:hover::before {transform: translateX(200%);}

.quick-festival {background: linear-gradient(180deg, #8153D2 0%, #2FB1EE 100%);}
.quick-festival .quick-label {left:40px; text-shadow: 2px 2px 0 rgba(0,0,0,.25);}
.quick-ring {position: absolute; top: 50%; left: 50%; width: 110px; height: 110px; z-index: 2; animation: rotate360 12s linear infinite;}
.quick-robot {position: absolute;top: 47%;left: 22%;width: 70px;z-index: 3;object-fit: contain;animation: sway 2s ease-in-out infinite;}

.quick-space {background: url('../img/content/main/quick3_bg.jpg') center/cover; border: none; padding: 0; text-align: left;}
.quick-space .quick-label {text-shadow: 2px 2px 0 #5e9fff;}
.quick-space .quick-sub {left:24px; text-shadow: 2px 2px 0 #5e9fff;}
/*.quick-space::before {content: ''; position: absolute; inset: 0; background: rgba(8,42,80,.35); transition: background 0.3s; z-index: 1;}*/
.quick-space:hover::before {background: rgba(8,42,80,.15);}

.quick-performance{background: url('../img/content/main/quick1_bg.jpg') center/cover;}
.quick-performance::before {content: ''; position: absolute; inset: 0; background:linear-gradient(180deg, #af2fff24 20%, rgb(255 219 219 / 49%) 50%, #ba3ec869 70%); transition: transform 0.55s ease; z-index: 4;}
.quick-performance .quick-label, 
.quick-performance .quick-sub {text-shadow: 2px 2px 0 rgba(106,0,177,.4);}
.quick-heart{position: absolute;top: 63%;left: 27%;width: 61px;transform: translate(-50%, -50%);z-index: 3;animation: float 2.5s ease-in-out infinite;}

/* ── Lottie ── */
.quick-lottie {position: absolute; pointer-events: none;}
.quick-apply .quick-lottie {width: 78px;height: 65px;right: 21px;bottom: -9px;opacity: 0.85;z-index: 4;}
.quick-space .quick-lottie {width: 70px;height: 80px;right: 23px;top: 49%;/* transform: translateY(-50%); */opacity: 0.7;z-index: 2;}

/* ── Space Overlay ── */
.space-overlay {
	  position: fixed; inset: 0; z-index: 200;
	  background: linear-gradient(140deg, #100728 0%, #0b1d3d 55%, #082650 100%);
	  display: flex; align-items: center; justify-content: center;
	  clip-path: circle(0px at calc(100% - 65px) calc(50% + 131px));
	  pointer-events: none;
	  overflow-y:auto;
}
.space-overlay.active {pointer-events: all;}
.overlay-body {opacity: 0; transition: opacity 0.35s 0.2s, transform 0.35s 0.2s; padding:3vw ; max-width:95%; width: 100%;}
.space-overlay.active .overlay-body {opacity: 1; transform: none;}
.overlay-head {display: flex; align-items: flex-end; justify-content: space-between; margin:10rem 0 3.2rem; padding-bottom: 2.4rem; border-bottom: 1px solid rgba(255,255,255,.15);}
.overlay-head h2 {font:700 var(--fs-48) 'Paperlogy','Noto Sans KR',sans-serif; color: #fff; letter-spacing: -0.03em; line-height: 1;}
.overlay-close {aspect-ratio:1/1; background: none; border: 1px solid rgba(255,255,255,.3); color: #fff; padding: 0.9rem 2rem; font-family: 'Paperlogy','Noto Sans KR',sans-serif; font-size: 1.3rem; font-weight: 700; border-radius: 3px; letter-spacing: 0.05em; transition: background 0.2s, border-color 0.2s;}
.overlay-close:hover {background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.6);}
.space-overlay .culspaces-grid{grid-template-columns:repeat(5, 1fr); gap: 20px; }
.space-overlay .culspace-card{border:none}
@media (max-width:1600px){
	.space-overlay .culspaces-grid{display: grid; grid-template-columns:repeat(4, 1fr);}
}
@media (max-width:1400px){
	.quick-menu{right:10px;}
	.space-overlay .culspaces-grid {grid-template-columns:repeat(3, 1fr); gap: 12px;}
	.space-overlay{align-items:flex-start;}
}
@media (max-width:1024px){
	.space-overlay .culspace-body .space-desc{display:none;}
	.space-overlay .culspace-actions{flex-flow:column wrap; }
	.space-overlay .culspace-body h3{font-size:var(--fs-22)}
	.space-overlay .culspace-body{gap:0;  text-align:center; align-items:center}
	.space-overlay .culspace-url-btn{margin-left:0;}
	.quick-menu{transform:translateY(0); top:auto; bottom:4%;}
	.quick-item{width:80px;height:80px;border-radius:10px;}
	.quick-label{top:18px; left:24px;}
	.quick-sub{display:none;}
	.quick-festival .quick-label{left:24px;}
	.quick-robot{display:none;}
	.quick-space .quick-lottie {left:2px;}
	.quick-apply .quick-lottie{right:0;bottom:-19px;}
	.space-overlay  .culspace-sns{gap:0}
}
@media (max-width: 768px) {
	.overlay-head{margin:2vmin 0;}
	.space-overlay .culspaces-grid {grid-template-columns:repeat(2, 1fr); gap: 12px;}
	.overlay-close{width:50px}
}

/* ── Quick Toggle Button ── */
@keyframes qt-pulse {
  0%   {box-shadow: 0 4px 16px rgba(129,83,210,.5), 0 0 0 0 rgba(129,83,210,.38);}
  70%  {box-shadow: 0 4px 16px rgba(129,83,210,.5), 0 0 0 11px rgba(129,83,210,0);}
  100% {box-shadow: 0 4px 16px rgba(129,83,210,.5), 0 0 0 0 rgba(129,83,210,0);}
}
.quick-toggle {display: none; align-items: center; justify-content: center; gap: 7px; width: 75px; aspect-ratio:1/1; right:4px; background: linear-gradient(135deg, #8153D2 0%, #2db4ed 100%); border: none; border-radius: 50px; color: #fff; font-weight: 900; font-size: var(--fs-18); position: relative; overflow: hidden; transition: all 0.22s, filter 0.22s; animation: qt-pulse 2.6s ease-in-out infinite;}
.quick-toggle::before {content: ''; position: absolute; inset: 0; background: linear-gradient(105deg, transparent 30%, rgba(255,255,255,.28) 50%, transparent 70%); transform: translateX(-200%); transition: transform 0.5s ease; pointer-events: none;}
.quick-toggle:hover {transform: scale(1.07); filter: brightness(1.12);}
.quick-toggle:hover::before {transform: translateX(200%);}
.quick-toggle:active {transform: scale(0.94);}
.quick-menu.open .quick-toggle {animation: none; background: linear-gradient(135deg, #7d4de2 0%, #1e8ab5 100%); box-shadow: 0 4px 16px rgba(129,83,210,.4);}

.qt-icon {position: relative; width: 14px; height: 14px; flex-shrink: 0;}
.qt-icon::before, .qt-icon::after {content: ''; position: absolute; left: 50%; top: 50%; width: 13px; height: 1.5px; background: rgba(255,255,255,.95); border-radius: 2px; transition: transform 0.38s cubic-bezier(0.34,1.56,0.64,1);}
.qt-icon::before {transform: translate(-50%, calc(-50% - 3.5px));}
.qt-icon::after {transform: translate(-50%, calc(-50% + 3.5px));}
.quick-menu.open .qt-icon::before {transform: translate(-50%, -50%) rotate(45deg);}
.quick-menu.open .qt-icon::after {transform: translate(-50%, -50%) rotate(-45deg);}

/* ── Mobile Quick Menu (≤780px) ── */
@media (min-width: 781px) {
	.quick-menu.is-footer{top:500px}
}
@media (max-width: 780px) {
  .quick-toggle {display: flex;flex-flow:column; right:8px;}
  .quick-menu {pointer-events: none;}
   .quick-menu .quick-toggle {pointer-events: auto;}
  .quick-item {animation: none; right:8px; opacity: 0; pointer-events: none; transform: translateY(28px) scale(0.72); transition: opacity 0.3s ease, transform 0.4s cubic-bezier(0.34,1.56,0.64,1); width: 80px !important;}
  .quick-menu.open .quick-item {pointer-events: auto; opacity: 1; pointer-events: auto; transform: translateY(0) scale(1);}
  .quick-menu.open .quick-item:nth-child(4) {transition-delay: 0s;}
  .quick-menu.open .quick-item:nth-child(3) {transition-delay: 0.07s;}
  .quick-menu.open .quick-item:nth-child(2) {transition-delay: 0.14s;}
  .quick-menu.open .quick-item:nth-child(1) {transition-delay: 0.21s;}
}

/* =========================
            sub
========================= */
.swiper{overflow:hidden;}

/* SNB 2차 메뉴 */
.second-menu ul{display:flex; justify-content:center}
.second-menu ul li+li:before{display:inline-block;content:"";height: 23px;vertical-align: -4px;width:1px;background:#ddd;margin: 0 2vmin;}
.second-menu ul li > a {font-size:var(--fs-20); color:#a1a1a1; display:inline-block; line-height:2.9; align-content:center; border-bottom:3px solid transparent;}
.second-menu ul li.active > a{color:#222; font-weight:800; border-bottom:3px solid var(--primary); }
.second-menu ul li ul{display:none;}
.subcontent{padding-bottom: 0.1vmin;border-bottom:1px solid #f2f2f2;position:relative;}
.printw, .hiddenoverw{display:none;}
@media (min-width:1025px){
	.subnav-in{position:absolute;top: -38%;left: 1.1%;}
	.subnav-in, #lnb, #lnb>.lnb_area>a{display:flex;}
	.subnav-in{gap:20px;}
	#lnb{gap:14px;}
	#lnb>.lnb_area, #lnb>.lnb_area>a{height:45px; line-height:45px;}
	#lnb>.lnb_area{min-width:auto; }
	#lnb>.lnb_area>a{padding:0; align-items:center;}
	#lnb>.lnb_area>a:after{top:17px; position:static; margin-left:22px;}
	#lnb>.lnb_area:after{display:none;}
	#lnb>.lnb_area:first-child>a{border-left:none;}
}
@media (max-width:1024px){
	.subhome{display:none;}
	#lnb>.lnb_area:after{display:none;}
}
@media (max-width:1200px){
	.second-menu ul li+li:before{margin:0 8px;}
}

/* MARGIN */
.mt6{margin-top:6vmin!important;}
.mb6{margin-bottom:6vmin!important;}

/* sub grid */
.sub-2box{display:grid; grid-template-columns:repeat(2, 1fr);}
.sub-3box{display:grid; grid-template-columns:repeat(3, 1fr);}
.sub-4box{display:grid; grid-template-columns:repeat(4, 1fr);}
.sub-5box{display:grid; grid-template-columns:repeat(5, 1fr);}
@media (max-width:1024px){
	.sub-4box, .sub-5box{grid-template-columns:repeat(3, 1fr);}
	.sub-3box{grid-template-columns:repeat(2, 1fr);}
}
@media (max-width:768px){
	.sub-3box, .sub-4box, .sub-5box{grid-template-columns:repeat(2, 1fr);}
}
@media (max-width:500px){
	.sub-2box, .sub-3box, .sub-4box, .sub-5box{grid-template-columns:repeat(1, 1fr);}
}

/*sub title & text */
.sub-con-wrap{margin:7vmin auto;}
.sub-text-wrap{margin:3vmin 0;}
.sub-h3{ font:700 var(--fs-40) var(--paper);}
.sub-h4{ font:600 var(--fs-32) var(--paper); }
.sub-h4-bullet { font:600 var(--fs-32) var(--paper); display: flex; line-height: 1.1;gap: 10px;align-items: center;}
.sub-h4-bullet:before {display:inline-block;content:"";width: 4px;height: 32px;background:var(--primary);}
.sub-h5 { font:600 var(--fs-24) var(--paper); line-height: 1.1; }
.sub-h5-bullet { font:600 var(--fs-24) var(--paper); display: flex;line-height: 1.1;gap: 10px;align-items: center;}
.sub-h5-bullet:before {display:inline-block;content:"";width: 4px;height: 27px;background:var(--primary);}
.sub-h6{font:600 var(--fs-22) var(--paper);  margin:1vmin 0 0.5vmin; }
.sub-description { font-size: var(--fs-20); font-weight: 500; line-height: 1.6; color: #9ba2ac; margin: 0.6vmin 0; }
.text-gradient{background: linear-gradient(135deg, #2196F3, #9C27B0); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}
@media(max-width:768px){
	.sub-h4-bullet:before{height:22px;}
}

/* Sub box */
.sub-step-box {margin:1.5vmin 0; gap: 24px; width: 100%;}
.sub-step-box .process-card {border: 1px solid #e8e8e8; border-radius: 16px; padding: 3vmin; position: relative;}
.sub-step-box .process-badge {width:fit-content; display: inline-flex; padding: 8px 16px; background: #f0f6ff; border-radius: 20px; font-size: 14px; font-weight: 700; color: var(--primary); margin-bottom: 1vmin; }
.sub-step-box .process-title {font:600 var(--fs-22) var(--paper); line-height: 32px; color: #101828; }
.sub-step-box .process-desc {font-size: var(--fs-18); font-weight: 400; line-height: 26px; color: #6a7282; }
.sub-step-box .process-footer {border-top:1px solid #efefef; padding-top:1.5vmin; margin-top:1.5vmin; }
.sub-step-box .process-info {font-size: var(--fs-16); font-weight: 700; line-height: 20px; color: #000; }

/* Sub box */
.sub-color-box {margin:1.5vmin 0;  gap: 24px; width: 100%;}
.sub-color-box .process-card {border: 1px solid #c9c9c9;border-radius: 16px;padding: 27px 32px 20px;position: relative;display: flex;flex-direction: column;}
.sub-color-box .process-card.bg-blue {background:var(--primary); color:#fff;} 
.sub-color-box .process-card.bg-deep {background:#0F172B; color:#fff;}
.sub-color-box .process-card.bg-blueG {background:#74b2d8; color:#fff;}
.sub-color-box .process-card.bg-deepB {background:#305dcd; color:#fff;}
.sub-color-box .process-card.bg-white{color:#222;background: #fff;box-shadow: 0 0 10px rgba(0,0,0,0.04);}
.sub-color-box .process-card ul li{word-break:keep-all;padding-left: 20px;text-indent: -15px;font-size:var(--fs-18);font-weight: 500;line-height: 1.6;color:rgba(255,255,255,0.8);}
.sub-color-box .process-card ul li:before {display:inline-block;content:"";width: 6px;height: 6px;border-radius:50%;background-color: var(--primary);vertical-align:4px;margin-right: 10px;}
.sub-color-box .process-card.bg-white ul li{color:#929292;}
.sub-color-box .process-badge {font-size: 14px;font-weight: 700;margin-bottom: 19px;opacity:0.8;background: #d3d3d357;width: fit-content;padding: 6px 20px;border-radius: 30px;}
.sub-color-box .process-title {font:600 var(--fs-22) var(--paper); line-height: 32px;  margin: 0 0 19px 0; word-break:keep-all;}
.sub-color-box .process-desc {font-size: var(--fs-18); font-weight: 400; line-height: 26px; opacity:0.8;  }
.sub-color-box .process-info {margin-top: 0.5vmin;font-size: var(--fs-16);font-weight: 700;line-height: 20px;}
.sub-color-box .process-ul li{font-size:var(--fs-18);}
.sub-color-box .process-ul li:before{display:inline-block; content:""; width:5px; height:5px; border-radius:50%; background:#dddddd70;vertical-align:4px; margin-right:10px; }


/* Sub Table Section */
.sub-table {margin:1.5vmin 0; width: 100%; border-collapse: collapse; }
.sub-table thead {border-bottom: 2px solid var(--primary);background: #f0f6ff;}
.sub-table thead th {color:#30a6ee; text-align: left; padding: 20px; font-size: 14px; font-weight: 600; }
.sub-table .thbl{border-left:1px solid #cde1ff;}
.sub-table .thbb{border-bottom:1px solid #cde1ff;}
.sub-table tbody tr {border-bottom: 1px solid #e4e4e4;}
.sub-table tbody th{padding: 20px; text-align: left; font-size:var(--fs-18); font-weight: 700; color: #2b2b2b; }
.sub-table td {padding: 20px; font-size:var(--fs-18); font-weight: 600; color: #8b96a4; }
@media (max-width: 768px) {
    .sub-table {display: block; overflow-x: auto; margin:3vmin 0; }
    .sub-table th, .sub-table td {font-size: 12px; padding: 12px 8px; white-space: nowrap; }
}

/* Sub ul - Auto Number */
.sub-ul-num {margin:1.5vmin 0; counter-reset: item; }
.sub-ul-num li {padding: 4px 0;font-size:var(--fs-18);font-weight: 600;line-height: 1.65;color: #374151;position: relative;counter-increment: item;align-items: flex-start;display: flex;gap: 1vmin;}
.sub-ul-num li::before {content: counter(item);width: 28px;height: 28px;background: #e0f2fe;border-radius: 50%;display: flex;align-items: center;justify-content: center;font-weight: 700;color: var(--primary);font-size: 16px;margin-top: 2px;}
@media (max-width: 768px) {
    .sub-ul-num {margin: 40px 20px; }
    .sub-ul-num li {font-size: 16px; padding: 12px 0 12px 45px; }
    .sub-ul-num li::before {width: 28px; height: 28px; font-size: 14px; }
}

/* Sub ul - Marker */
.sub-ul-marker {margin:1.5vmin 0;}
.sub-ul-marker li {padding-left: 20px;text-indent: -15px;font-size:var(--fs-18);font-weight: 500;line-height: 1.8;color: #797979;}
.sub-ul-marker li:before {display:inline-block;content:"";width: 6px;height: 6px;border-radius:50%;background-color: var(--primary);vertical-align:4px;margin-right: 10px;}
@media (max-width: 768px) {
    .sub-ul-marker li {font-size: 16px; }
}

/* scroll animation */
.visual_scroll{-webkit-transform:translateX(-50%);transform:translateX(-50%);width:70px;z-index:1;margin:10vmin auto 0;position:relative;left:40px;}
.visual_scroll .scroll_wrap{position:relative;margin:0 auto;width:1px;height:100px;}
.scroll_wrap .bar_bg{position:absolute;top:0;left:0;width:1px;height:100%;background:#fff;opacity:0.3;}
.scroll_wrap .bar{position:absolute;top:0;left:0;width:1px;height:0;background:#fff;-webkit-animation:scroll 1.5s infinite ease-out;animation:scroll 1.5s infinite ease-out;}
.scroll_txt{color:#fff;font-size:13px;text-align:center;opacity:0.9;/* font-weight:500;*/margin:10px 0 15px;/* font-family:'Futura-Medium';*/text-transform:uppercase;letter-spacing:0;}
@-webkit-keyframes scroll{
	0%{height:0%;}
	100%{height:100%;}
}
@keyframes scroll{
	0%{height:0%;}
	100%{height:100%;}
}
@media (max-width:720px){
	.visual_scroll .scroll_wrap{height:50px;}
}


/* sub 43 완주문화선도산단*/
.contWrap:has(.wmss-main-container){margin-bottom:0;}
.wmss-result-top-txt{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:100%;z-index:5;text-align:center;font-family:'Pretendard', sans-serif;opacity:0;pointer-events:none;}
.wmss-result-top-txt h4{font:500 var(--fs-56) var(--paper);line-height:1.2;margin-bottom:20px;color:#fff;}
.wmss-result-top-txt p{font-size:2rem;color:#ffffff70;line-height:1.6;}
.wmss-main-container{position:relative;z-index:1;width:100%;height:100vh;overflow:hidden;}
.wmss-main-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;}
.svg-mask-overlay{font-family:'Montserrat', sans-serif;font-weight:900;position:absolute;top:0;left:0;width:100%;height:100%;z-index:10;pointer-events:none;}
.split-panels-container{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;z-index:20;pointer-events:none;opacity:0;visibility:hidden;}
.split-panel{flex:1;height:100%;background-color:#ffffff;transform:translateY(100%);border-right:1px solid rgba(0, 0, 0, 0.05);}
.split-panel:last-child{border-right:none;}
.wmss-text-content{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;z-index:30;pointer-events:none;max-width:1200px;margin:0 auto;word-break:keep-all;}
.wmss-text-content h2{font-size:var(--fs-40);font-weight:400;line-height:1.2;margin-bottom:20px;opacity:0;}
.wmss-text-content p{font-size:1.2rem;line-height:1.6;}
.wmss-text-content p+p{margin-top:20px;}
.wmss-result-sign{margin-top:60px;display:flex;flex-direction:column;align-items:center;opacity:0;width:100%;}
.wmss-result-sign dt{font-size:1rem;color:#888;margin-bottom:8px;font-weight:500;}
.wmss-result-sign dd{font-size:1.8rem;font-weight:800;color:#000;letter-spacing:-0.5px;}
.wmss-logo-wrap{display:flex;align-items:center;justify-content:center;position:absolute;inset:0;z-index:35;pointer-events:none;opacity:0;}
.wmss-logo-svg-container{flex-shrink:0;width:380px;display:flex;justify-content:center;align-items:center;}
.wmss-logo-svg-container svg{width:100%;height:auto;display:block;overflow:visible;}
.wmss-logo-title-area{overflow:hidden;white-space:nowrap;width:0;opacity:0;}
.wmss-logo-title{font-size:48px;font-weight:700;color:#1b2d75;letter-spacing:-0.02em;padding-left:24px;white-space:nowrap;display:inline-block;}
.wmss-logo-svg-elem{stroke-linecap:round;stroke-linejoin:round;}
.wmss-logo-svg-elem-1{stroke:#f6af29;fill:#f6af29;}
.wmss-logo-svg-elem-2{stroke:#e74229;fill:#e74229;}
.wmss-logo-svg-elem-3{stroke:#1b2d75;fill:#1b2d75;}
.wmss-logo-svg-elem-4{stroke:#1b2d75;fill:#1b2d75;}
.wmss-logo-svg-elem-5{stroke:#f6af29;fill:#f6af29;}
@media (max-width: 1200px){
	.wmss-logo-svg-container { width:200px;}
	.wmss-logo-title{font-size:40px;padding-left:20px;}
}
@media (max-width: 768px){
	.wmss-logo-svg-container { width:140px;}
	.wmss-main-container{height:100dvh;}
	.wmss-logo-title{font-size:28px;padding-left:14px;}
	.wmss-logo-title img{max-height:30px;width:auto;}          /* ✅ 추가: 로고 이미지 크기 제어 */
	.wmss-result-top-txt{padding:0 20px;word-break:keep-all;}  /* ✅ 추가: 상단 텍스트 잘림 방지 */
	.wmss-text-content{padding:0 24px;}                        /* ✅ 추가: h2 텍스트 엣지 방지 */
}
.wmss-text-content h2{font:400 var(--fs-48) var(--paper); color:#1b2d75;}
.wmss-text-content h2+h2{margin-top:0.5vmin;}
.wmss-text-content h2 b{font-weight:600; }
.wmss-circle-bg{position:absolute;left:0;top:0;z-index:32;width:100%;height:100%;display:block;clip-path:circle(0% at 50% 50%);}
.wmss-circle-bg-overlay{display:inline-block; content:""; width:100%; height:100%; background:#00000030; backdrop-filter:blur(5px); opacity:0; position:absolute; inset:0; z-index:1;}
.wmss-circle-bg img{width:100%;height:100%;object-fit:cover;position:relative;}
.wmss-intro-value-wrap{position:absolute;left:50%;top:0;z-index:36;padding:0 20px;max-width:1560px;width:100%;display:flex;align-items:center;height:100%;transform:translateX(-50%);box-sizing:border-box;}
.wmss-intro-value-wrap .wmss-left-txt{width:50%;text-align:left;}
.wmss-intro-value-wrap .wmss-left-txt .wmss-txt-5{overflow:hidden;}
.wmss-intro-value-wrap .wmss-left-txt .wmss-txt-5 span{transform:translateY(110%);display:block;font-size:max(calc(22/1920*100vw), 15px);color:#fff;}
.wmss-intro-value-wrap .wmss-left-txt .wmss-txt-6{margin-top:1.8vmin;font:700 var(--fs-72) var(--paper);line-height:1.1;color:#fff;}
.wmss-intro-value-wrap .wmss-left-txt .wmss-txt-6>div{overflow:hidden;}
.wmss-intro-value-wrap .wmss-left-txt .wmss-txt-6 span{display:block;transform:translateY(110%);}
.wmss-intro-value-wrap .wmss-right-list{width:50%;}
.wmss-intro-value-wrap .wmss-value-list{transform:translateY(50%);opacity:0;}
.wmss-intro-value-wrap .wmss-value-list ul{display:flex;gap:42px;flex-wrap:wrap;align-items:flex-start;list-style:none;padding:0;margin:0;}
.wmss-intro-value-wrap .wmss-value-list ul li{padding:50px;width:calc((100% - 42px)/2);min-height:400px;box-sizing:border-box;border-radius:24px;background:linear-gradient(45deg, #2f387c, #33979c);display:flex;flex-direction:column;justify-content:space-between;text-align:left;}
.wmss-intro-value-wrap .wmss-value-list ul li:nth-child(1){margin-top:-50px;}
.wmss-intro-value-wrap .wmss-value-list ul li:nth-child(2n){margin-left:auto;margin-top:50px;}
.wmss-intro-value-wrap .wmss-value-list ul li:nth-child(2n+1){margin-top:-50px;}
.wmss-intro-value-wrap .wmss-value-list ul li .wmss-num{font:600 var(--fs-16) var(--paper);color:#f6af29;}
.wmss-intro-value-wrap .wmss-value-list ul li .wmss-title{margin-top:12px;font:600 var(--fs-28) var(--paper);color:#fff;line-height:1.4;}
.wmss-intro-value-wrap .wmss-value-list ul li .wmss-txt{position:relative;padding-top:20px;font-size:var(--fs-18);color:#ffffff98;line-height:1.6;}
@media (max-width: 1200px){
	.wmss-intro-value-wrap {flex-direction:column;justify-content:center;gap:40px;}
    .wmss-intro-value-wrap .wmss-left-txt{width:100%;max-width:600px;}
    .wmss-intro-value-wrap .wmss-right-list{width:100%;}
    .wmss-intro-value-wrap .wmss-value-list ul li{min-height:auto;}
}
@media (max-width: 768px){
	.wmss-intro-value-wrap .wmss-value-list ul { gap:10px;}
	.wmss-intro-value-wrap .wmss-value-list ul li:nth-child(2n+1){margin-top:0;}
	.wmss-intro-value-wrap .wmss-value-list ul li:nth-child(2n){margin-top:0;}
	.wmss-intro-value-wrap .wmss-value-list ul li{width:100%;min-height:auto;padding:2vmin;gap:10px;border-radius:10px;}
	.wmss-intro-value-wrap .wmss-value-list ul li .wmss-title{font-size:var(--fs-22);}
	.wmss-intro-value-wrap .wmss-value-list ul li .wmss-txt{padding-top:0;}
}
.wmss-result-card-section{position:relative;z-index:2;max-width:1600px;margin:0 auto;padding:80px 40px;display:flex;flex-direction:column;gap:60px;}
.wmss-rcard{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:#fff;color:#222;border-radius:16px;}
.wmss-rcard.is-reverse .wmss-rcard-img{order:2;}
.wmss-rcard.is-reverse .wmss-rcard-body{order:1;}
.wmss-rcard-img{position:relative;overflow:hidden;min-height:420px;border-radius:16px;}
.wmss-rcard-img .swiper{width:100%;height:100%;position:absolute;inset:0;}
.wmss-rcard-img .swiper-slide img{width:100%;height:100%;object-fit:cover;}
.wmss-rcard:not(.is-reverse) .wmss-rcard-img{clip-path:inset(0 100% 0 0);}
.wmss-rcard.is-reverse .wmss-rcard-img{clip-path:inset(0 0 0 100%);}
.wmss-rcard-img .swiper-pagination{bottom:24px !important;}
.wmss-rcard-img .swiper-pagination-bullet{width:28px;height:3px;border-radius:2px;background:rgba(0, 0, 0, 0.2);opacity:1;transition:background 0.3s, width 0.3s;}
.wmss-rcard-img .swiper-pagination-bullet-active{background:#333;width:40px;}
.wmss-rcard-body{display:flex;flex-direction:column;justify-content:center;padding:60px 80px;}
.wmss-rcard-label{font-size: 14px;font-weight:500;letter-spacing:0;margin-bottom:16px;color: #3561c2;border: 1px solid #4862c9;display: inline;width: fit-content;padding: 6px 14px;/* background: #354795; */border-radius: 20px;}
.wmss-rcard-title{font:600 var(--fs-44) var(--paper);line-height:1.3;letter-spacing:-1px;}
.wmss-rcard-sub{font:600 var(--fs-24) var(--paper);line-height:1.6;margin-bottom:40px;color: #1d3dbc;}
.wmss-rcard-info{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;}
.wmss-rcard-info li{align-items:baseline;gap:12px;line-height:1.6;}
.wmss-rcard-info li dt{flex-shrink:0;font-weight:700;position:relative;padding-left:14px; font-size:var(--fs-20);}
.wmss-rcard-info li dt::before{content:'';position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:#104B8C;}
.wmss-rcard-info li dd{padding-left:14px;margin:0;color:#555; font-size:var(--fs-20);}
@media (max-width: 1200px){
	.wmss-rcard-body { padding:5vmin 4vmin;}
	.wmss-rcard-title{font-size:var(--fs-32);}
}
@media (max-width: 768px){
	.wmss-result-card-section { padding:40px 16px;gap:4vmin;}
	.wmss-rcard{grid-template-columns:1fr;min-height:auto;border-radius:12px;overflow:visible;}
	.wmss-rcard.is-reverse .wmss-rcard-img{order:0;}
	.wmss-rcard.is-reverse .wmss-rcard-body{order:0;}
	.wmss-rcard-img{min-height:260px;border-radius:12px;}
	.wmss-rcard-sub{margin-bottom:2.5vmin;}
}
.scroll-hint{position:fixed;bottom:50px;left:50%;transform:translateX(-50%);z-index:100;display:flex;flex-direction:column;align-items:center;opacity:0.5;pointer-events:none;}
.scroll-hint-bar{background:#918f8f;width:0.5px;height:60px; opacity:1; margin-bottom:12px;animation:pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;}
@keyframes pulse{
	50% {opacity:0.5;}
}
.scroll-hint-txt{font-size:12px; letter-spacing:0.5px;}
.wmss-video-reveal-section{position:relative;width:100%;height:100vh;height:100dvh;background:#fff;overflow:hidden;}
.wmss-video-reveal-container{position:relative;width:100%;height:100%;}
.wmss-reveal-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:1;}
.wmss-video-overlay{position:absolute;inset:0;background:#00000060;z-index:2;pointer-events:none;}
.wmss-video-panels{position:absolute;inset:0;z-index:2;pointer-events:none;display:grid;grid-template-columns:repeat(4,1fr);}
.wmss-panel{height:100%;background:#fff;will-change:transform;}
.wmss-reveal-txt-wrap{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:3;color:#fff;text-align:center;}
.wmss-reveal-line{font:700 var(--fs-56) var(--paper);line-height:1.4;opacity:0;transform:translateY(30px);text-shadow:0 4px 20px rgba(0, 0, 0, 0.5);}
.wmss-reveal-line.highlight{color:#f6af29;}
.wmss-sns-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:5;pointer-events:none;flex-flow:column wrap;gap:3vmin;}
.wmss-sns-title{font-size:max(calc(52/1920*100vw), 32px);font-weight:800;line-height:1.4;opacity:0;transform:translateY(30px);text-shadow:0 4px 20px rgba(0, 0, 0, 0.5);text-align:center;color:#fff;}
.wmss-sns-group{display:flex;gap:20px;flex-wrap:wrap;justify-content:center;opacity:0;transform:translateY(30px);}
.wmss-sns-capsule{display:flex;align-items:center;gap:20px;padding:10px 15px 10px 35px;background:rgba(255, 255, 255, 0.1);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:60px;border:1px solid rgba(255, 11255, 255, 0.2);box-shadow:0 10px 30px rgba(0, 0, 0, 0.1);pointer-events:auto;}
.wmss-sns-label{font-size:24px;font-weight:700;color:#fff;letter-spacing:-0.02em;}
.wmss-sns-icons{display:flex;gap:10px;}
.wmss-sns-link{display:flex;align-items:center;justify-content:center;}
@media (max-width: 768px){.wmss-sns-group { gap:10px;}
	.wmss-sns-capsule{padding:8px 10px 8px 20px;gap:12px;}
	.wmss-sns-label{font-size:16px;}
	.wmss-sns-link{width:40px;height:40px;}
	.wmss-sns-link img{width:22px;height:22px;}
}

/*  sub 44, 86 이미지 레이어 팝업 버튼*/
@keyframes btn-gradient-shift {0%,100%{background-position:0% 50%;}50%{background-position:100% 50%;}}
@keyframes btn-float {0%,100%{transform:translateX(-50%) translateY(0);}50%{transform:translateX(-50%) translateY(-7px);}}
.goverlay{background:#1b2d75 url(../img/content/sub/sub43_layer_bg.png) no-repeat right bottom / cover!important}
.goverlay.goverlay-light{background:#e5d584 url(../img/content/sub/sub86_layer_bg.png) no-repeat center bottom / 90% !important}
.glightbox-clean .gslide-media {-webkit-box-shadow:none!important;  box-shadow:none!important; }
.layer-btn-wrap{opacity:0; position:fixed;bottom:36px;left:50%;transform:translateX(-50%);z-index:3;animation:btn-float 3.2s ease-in-out infinite;}
.layer-btn{font:700 var(--fs-24) var(--paper);position:relative;display:flex;align-items:center;gap:10px;padding:14px 30px;border-radius:30px;background:rgba(8,12,28,0.52);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#fff;font-size:15px;font-weight:700;letter-spacing:0.05em;cursor:pointer;border:none;outline:none;white-space:nowrap;transition:background 0.25s;}
.layer-btn::before{content:'';position:absolute;inset:-2px;border-radius:32px;background:linear-gradient(135deg, #ff8131, #803dc5, #2925cf, #00ceff);background-size:300% 300%;animation:btn-gradient-shift 3s ease infinite;z-index:-1;}
.layer-btn:hover{background:rgba(8,12,28,0.75);}
.layer-btn svg{flex-shrink:0;opacity:0.9;}
.glightbox-container .gslide-image{max-height:90vh;overflow-y:auto;}
.glightbox-container .gslide-image img{width:1000px;max-width:100%;height:auto;max-height:fit-content;display:block;}
.glightbox-container .gslide-image::-webkit-scrollbar{width:10px;}
.glightbox-container .gslide-image::-webkit-scrollbar-track{background:transparent;}
.glightbox-container .gslide-image::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.3);border-radius:4px;}
.glightbox-container .gslide-image::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.5);}

@media(max-width:1000px){
	.glightbox-container .gslide-image img{width:100%;}
}

/* sub 44 완주문화선도산단 ci */
.wnss-ci-block .ci-main-logo img{max-width:450px!important;}
.wnss-ci-block .ci-name-cell img{max-height:80px!important;}
.wnss-ci-block .ci-combo-box img{max-height:120px!important;}
.ci-color-usage h5{margin-bottom:16px;}
.ci-color-usage + .ci-color-usage{margin-top:3vmin;}

/* sub 183 완주문화선도산단 영상 */
.contWrap:has(.wmss-video-section){margin-bottom:0;}
.contsBox:has(.wmss-video-section){margin-top:0;}
.wmss-video-section{margin-bottom:-2px;position:relative;}
.wmss-video-title{position:absolute; z-index:1; text-align:center; font-weight:700; margin-bottom:4vmin; opacity:0; inset:0; top:20%;}
.wmss-video-title p{font:500 var(--fs-48) var(--paper); line-height:1.5;}
.wmss-video-title img{margin-bottom:3vmin;}
.wmss-video-section video{width:100%; height:auto; object-fit:cover; aspect-ratio: 16 / 9;clip-path: inset(0 50% 0 50%); will-change:transform, opacity, clip-path;}
.wmss-video-title .scroll-title-wrap{overflow:hidden; display:block;}
.wmss-video-title .scroll-title-item{display:inline-block; will-change:transform, opacity;}
@media (max-width:768px){
	.wmss-video-title{top:0;}
	.wmss-video-title img{width:200px;}
	.wmss-video-title p{font-size:var(--fs-34);}
}

/* sub 101 문화사업  */
.busi-hero-section {position:relative; padding:10vmin 0;}
.busi-hero-con{position:relative; z-index:1}
.busi-hero-title{text-align:center;margin-bottom:1vmin}
.busi-hero-title h2{font-size:var(--fs-48); font-weight: 700; line-height: 1.1; color: white; text-align:center; display:inline-block; position:relative;}
.busi-hero-title h2:after{display:inline-block;content:"";background: #0e68f6;width: 100%;height: 20px;position: absolute;left: 0;bottom: -5px;mix-blend-mode: color;}
.busiHeroSwiper {position:relative; border-radius: 30px;overflow: hidden; margin:4vmin auto; }
.busiHeroSwiper .swiper-slide {display: flex; align-items: center; justify-content: center; overflow: hidden; }
.busiHeroSwiper img {width: 100%; height: 100%; object-fit: cover; transform: scale(1); transition: transform 6500ms ease-out; }
.busiHeroSwiper .swiper-pagination {bottom: 20px; }
.busiHeroSwiper .swiper-pagination-bullet {background: white; opacity: 0.5; width: 10px; height: 10px; }
.busiHeroSwiper .swiper-pagination-bullet-active {opacity: 1; }
.busi-hero-info {display: flex; flex-wrap:wrap; gap:16px; justify-content: space-between; padding: 5vmin 0 0; }
.busi-hero-info-item {flex: 1; display:flex; gap:2vmin; justify-content:space-between; align-items:center; flex-flow:column wrap; border: 1px solid #0bb7ff90; padding:3vmin; text-align:center;}
.busi-hero-info-label {font-size:var(--fs-18); font-weight: 700; color: #ffffff99; margin-bottom: 8px; }
.busi-hero-info-heading {font-size:var(--fs-24); font-weight: 700;  color: white; margin-bottom: 8px; word-break:keep-all;}
.busi-hero-info-desc {font-size:var(--fs-16); line-height: 20px; color: #ffffff80; }
.busi-hero-bg {position: absolute; width:100%; height:100%; inset:0; z-index:0;overflow:hidden;}
.busi-hero-bg-img{width:100%; height:100%; object-fit:cover; animation:scale 0.8s cubic-bezier(0.45, 0.05, 0.55, 0.95)  forwards;}
.busi-hero-bg-overlay {position: absolute; inset: 0; background:rgba(0,0,0,0.65); z-index:1;}
@keyframes scale{
	0%{transform:scale(1.15)}
	100%{transform:scale(1)}
}
@media (max-width: 1920px) {
    .busi-hero-info-card {left: 50%; transform: translateX(-50%); }
}
@media (max-width: 1400px) {
    .busi-hero-info-card {width: 90%; max-width: 1200px; top: auto; bottom: 50px; }
}
@media (max-width: 1200px){
	.busi-hero-info-item img{width:80px;}
} 
@media (max-width: 1024px){
	.busi-hero-info-item{flex:1 0 calc((100% - 16px) / 2);}
}
@media (max-width: 768px) {
	.busi-hero-info-card {position: relative; left: 0; top: 0; bottom: auto; transform: none; width: 100%; padding: 30px 20px; }
    .busi-hero-info-container {flex-direction: column; height: auto; gap: 30px; }
}
.busi-call {background: #f8fafc; border: 1px solid #f8fafc; border-radius: 16px; display:grid; grid-template-columns:375px auto; padding: 6vmin 7vmin; margin:6vmin auto; align-items: center; overflow: hidden;}
.busi-call-left {border-right: 1px solid #d9d9d9; padding-right:3vmin; margin-right:3vmin; }
.busi-call-title {font-size:var(--fs-34); font-weight: 700; line-height: 1.1; color: #373737; }
.busi-call-subtitle {font-size:var(--fs-18); font-weight: 600;  color: #a3b0c2; }
.busi-call-right {display: flex; gap:2vmin; align-items:center; height: 50px; flex: 1; }
.busi-call-icon {width: 48px; height: 48px; flex-shrink: 0; }
.busi-call-icon img {width: 100%; height: 100%; display: block; }
.busi-call-content {display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.busi-call-number {font-size: var(--fs-34); font-weight: 700; color: #373737; }
.busi-call-info {display: flex; gap: 6px; align-items: center; }
.busi-call-badge {display: inline-flex; background: var(--primary); color: white; padding: 6px 15px; border-radius: 20px; font-size:var(--fs-18); font-weight: 600; }
.busi-call-ext {font-size: var(--fs-18); font-weight: 700; line-height: 1.65; color: var(--primary);}
@media (max-width: 768px) {
    .busi-call {display:flex;flex-direction: column; gap:10px; padding:5vmin; align-items:flex-start;}
    .busi-call-left {width: 100%; border-right: none; border-bottom: 1px solid #d9d9d9; padding-right: 0; padding-bottom:4vmin; }
    .busi-call-right {height: auto; gap: 20px; }
    .busi-call-icon{display:none;}
    .busi-call-badge{padding:6px 1.5vmin;}
}

/* sub 103 문화사업 - 창작예술인지원 - 완주 예술인 작품 소장 */
.sub103-tit { display: flex; justify-content: space-between; align-items: center;}
.sub103-tit h2 { font-size: 28px; font-weight: 800; margin: 0; }

.sub103-tit .btn-collection {display: flex; align-items: center; padding: 1.2vmin 2vmin; background: #fff; border: 1px solid #0399F3; border-radius: 30px; text-decoration: none; color: #0399F3; font-size:var(--fs-20); transition: all 0.2s; }
.sub103-tit .btn-collection svg { width: 20px; height:20px; margin-left: 8px; }
.sub103-tit .btn-collection:hover { background: #0399F3; color: #fff; border-color: #0399F3; }


/* sub 42 완주문화공간 */
/*  CULTURE MAP */
.sec-culture-map {position: relative; padding: 100px 0 80px; background:#0F1729; overflow: hidden;}
.sec-culture-map .culmap-inner {max-width: 1600px; margin: 0 auto;position: relative; z-index: 2;}

.culmap-bg-wrap {position: absolute; inset: 0; z-index: 0; pointer-events: none;}
.culmap-bg {position: absolute; inset: 0; opacity: 0; transition: opacity 1s cubic-bezier(.4,0,.2,1);}
.culmap-bg.active {opacity: 1;}
.culmap-veil {position: absolute; inset: 0; z-index: 1; background: rgba(15,23,41,0.60); transition: background 0.6s ease; pointer-events: none;}
.sec-culture-map.has-hover .culmap-veil {background: rgba(15,23,41,0.70);}

.culmap-head {text-align: center; margin-bottom: 64px;}
.culmap-head .section-label {display: inline-flex; align-items: center; gap: 10px; font-size: var(--fs-16); font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; color: #0C7EFF; margin-bottom: 16px;}
.culmap-head h2 {font:700 var(--fs-64) var(--paper); color: #f0ece4; letter-spacing: -0.02em; line-height: 1.2;}
.culmap-head h2 em {color: #0C7EFF; font-style: normal;}
.culmap-head p {margin-top:6px; font-size: var(--fs-24); color: #888; font-weight: 300;}

.culmap-stage {position: relative; display: grid; grid-template-columns: 1fr 35% 1fr; grid-template-areas: "left map right"; align-items: center; gap: 0;}
.connector-svg {position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 4; overflow: visible;}
.culmap-frame {grid-area: map; position: relative; z-index: 3; perspective: 800px;}
.culmap-frame img {width: 100%; height: auto; display: block; border-radius: 4px; filter: brightness(0.92) contrast(1.05); transition: transform 0.15s ease-out; will-change: transform;}

.culmap-pin {position: absolute; transform: translate(-50%, -50%); z-index: 10; cursor: pointer; isolation: isolate;}
.culmap-pin-dot {width:28px; height:28px; background: #0C7EFF; border-radius: 50%; border: 2px solid #fff; display: flex; align-items: center; justify-content: center; font-size:var(--fs-16); font-weight: 900; color: #fff; transition: transform 0.35s cubic-bezier(.4,0,.2,1), box-shadow 0.35s ease, background 0.35s ease, color 0.35s ease; box-shadow: 0 0 0 0 rgba(12,126,255,0.4);}
.culmap-pin:hover .culmap-pin-dot {transform: scale(1.3); box-shadow: 0 0 0 6px rgba(12,126,255,0.3);}
.culmap-pin.active .culmap-pin-dot {background: #fff; color: #0C7EFF; transform: scale(1.3); box-shadow: 0 0 0 8px rgba(12,126,255,0.35);}

.culmap-thumbs-left {grid-area: left; display: flex; flex-direction: column; gap: 8px; padding-right:5vmin; z-index: 4;}
.culmap-thumbs-right {grid-area: right; display: flex; flex-direction: column; gap: 8px; padding-left: 5vmin; z-index: 4;}

.culmap-thumb {display: flex; overflow: hidden; background: linear-gradient(90deg, #028A99 0%, #4A52AA 100%); border: 1px solid rgba(255,255,255,0.08); border-radius: 6px; cursor: pointer; transition: border-color 0.4s ease, background 0.5s ease, box-shadow 0.4s ease; text-decoration: none; flex: 1; gap:3%; align-items:center; box-shadow: 0 0 0 0 rgba(12,126,255,0);}
.culmap-thumbs-left .culmap-thumb:nth-of-type(-n+3){background:linear-gradient(90deg, #673AB7 0%, #4A52AA 100%);}
.culmap-thumb:hover {border-color: #0C7EFF;background: linear-gradient(90deg, #023499 0%, #4371CF 100%);}
.culmap-thumb.active {border-color: #0C7EFF; background: linear-gradient(90deg, #023499 0%, #4371CF 100%); box-shadow: 0 0 12px 0 rgba(12,126,255,0.15);}
.culmap-thumbs-left .culmap-thumb:nth-of-type(-n+3):hover,
.culmap-thumbs-left .culmap-thumb:nth-of-type(-n+3).active{background:linear-gradient(90deg, #673AB7 0%, #5f7ada 100%)}
.culmap-thumb-img {width: 100%; flex: 0 0 50%; min-height: 120px; position: relative; overflow: hidden; background-size: cover; background-position: center;}
.culmap-thumb-img .thumb-badge {position: absolute; top: 6px; left: 6px; z-index: 2; width: 20px; height: 20px; border-radius: 50%; background: #0C7EFF; border: 1.5px solid rgba(255,255,255,0.5); display: flex; align-items: center; justify-content: center; font-size: var(--fs-14); font-weight: 900; color: #fff;}
.culmap-thumb-info {padding: 8px 10px 10px; flex-shrink: 0;}
.culmap-thumb-info strong {display: block; font-size: var(--fs-24); font-weight: 700; color: #f0ece4; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: 1.3;}
.culmap-thumb-info span {display: block; font-size: var(--fs-16); color:#ffffff5c; margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}

/* SPACES LIST */
.cul-spaces-list {padding: 80px 0 120px;}
.cul-spaces-list .culspaces-inner {max-width: 1600px; margin: 0 auto;}

.culspaces-list-head {display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 48px; padding-bottom: 24px; border-bottom: 1px solid #eee;}
.culspaces-list-head h2 {color:#444;}
.culspaces-list-head p {font-size: var(--fs-14); color: #888;}

.culspaces-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }

.culspace-card {display: flex; flex-flow:column; overflow: hidden; gap: 0; background:#fff;  transition: all 0.25s; border-radius: 16px; border: 1px solid #eee;}
.culspace-card:hover {box-shadow: 0 0 15px rgba(0,0,0,0.05);}
.culspace-card.highlight {border: 1px solid #0C7EFF; box-shadow: 0 0 15px rgb(0, 119, 255,0.3);}

.culspace-thumb-wrap {width: 100%; flex-shrink: 0; position: relative; overflow: hidden; aspect-ratio: 4/2; align-self: stretch;}
.culspace-thumb-wrap::after {content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, rgba(0,0,0,0.3), rgba(0,0,0,0.05));}
.culspace-thumb-wrap .culthumb-num {position: absolute; top: 14px; left: 14px; z-index: 2; font-size: var(--fs-32); font-weight: 900; color: rgba(255,255,255,0.18); line-height: 1; letter-spacing: -0.04em;}
.culspace-thumb-wrap img {width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease;}
.culspace-card:hover .culspace-thumb-wrap img {transform: scale(1.05);}

.culspace-body {flex: 1; padding:2.5vmin; display: flex; flex-direction: column; gap: 10px; min-width: 0;}
.culspace-body .space-category {font-size: var(--fs-14); font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; color: #0C7EFF;}
.culspace-body h3 {font-size: var(--fs-26); font-weight: 600; color:#444; letter-spacing: -0.01em; line-height: 1.35;}
.culspace-body .space-desc {font-size: var(--fs-18); color: #888; line-height: 1.5; word-break: keep-all; flex: 1;}
.culspace-actions {display: flex; align-items: center; gap: 12px; margin-top: 6px;}
.culspace-sns {display: flex; gap: 8px;}
.culsns-btn {width: 32px; height: 32px; border-radius: 50%; border: 1px solid rgba(255,255,255,0.08); background: transparent; display: flex; align-items: center; justify-content: center; color: #888; transition: border-color 0.2s, color 0.2s; cursor: pointer;}
.culsns-btn:hover {border-color: #0C7EFF; color: #0C7EFF;}
.culspace-url-btn {margin-left: auto; display: inline-flex; align-items: center; gap: 6px; padding: 7px 16px; background:#f5f5f5; border-radius: 100px; font-size: var(--fs-14); font-weight: 500; color:#a5a5a5; transition: background 0.2s, border-color 0.2s, color 0.2s; white-space: nowrap;}
.culspace-url-btn:hover {background: #0C7EFF; border-color: #0C7EFF; color: #fff;}
.culspace-url-btn svg {transition: transform 0.2s;}
.culspace-url-btn:hover svg {transform: translate(2px, -2px);}
.culspace-url-btn.disabled {opacity: 0.3; pointer-events: none;}

@media (max-width: 1200px) {
  .culmap-stage {grid-template-columns: 1fr 1fr; grid-template-areas: "map map" "left right"; gap: 16px 0;}
  .culmap-frame {max-width: 440px; justify-self: center;}
  .culmap-thumbs-left {padding-right: 8px; gap: 6px;}
  .culmap-thumbs-right {padding-left: 8px; gap: 6px;}
  .culmap-thumb {flex-direction: row; align-items: center;}
  .culmap-thumb-img {width: 56px; min-height: 56px; flex-shrink: 0; flex: unset;}
  .connector-svg {display: none;}
}
@media (max-width: 768px) {
  .sec-culture-map {padding: 64px 0 48px;}
  .sec-culture-map .culmap-inner, .cul-spaces-list .culspaces-inner {padding: 0 20px;}
  .culmap-head {margin-bottom: 40px;}
  .culmap-stage {gap: 12px 0;}
  .culmap-thumb-img {width: 48px; min-height: 48px;}
  .culmap-thumb-info strong {font-size: var(--fs-16);}
  .culspaces-grid {display: flex; flex-direction: column; gap: 12px;}
  .culspace-card {flex-direction: column;}
  .culspace-thumb-wrap {width: 100%;}
  .culspace-body {padding: 18px 16px;}
  .culspace-body h3 {font-size: var(--fs-18);}
}


/* sub 129 누에 소개 */
.nue-link-btn{display:inline-block;font-size:var(--fs-16); border:1px solid #fff; border-radius:30px; padding:12px 4vmin; margin-top:2vmin; }
.nue-goal-list{color:#fff; display:flex; gap:5%; margin-top:4vmin;}
.nue-goal-list dl{flex:1 1 33%; word-break:keep-all;}
.nue-goal-list dt{font-size:var(--fs-24); font-weight:600; margin-bottom:1vmin;}
.nue-goal-list dt i{display:inline-block;margin-bottom:1vmin;}
.nue-goal-list dd{font-size:var(--fs-20); opacity:0.8; line-height:1.6;}
.nue-mission-wrap{text-align:center; margin:6vmin 0 0;}
.nue-ci-wrap{margin:6vmin auto;}
@media (max-width:768px){
	.nue-goal-list dt i{width:32px}
	.nue-goal-list dd{display:none;}
}

/* sub 161 누에 대관안내 */
.nue-file-down{gap:16px;}
.nue-file-down li{border:1px solid #ddd; border-radius:10px; padding:3vmin; text-align:center;}
.nue-file-down li h5 span{color:var(--primary);}
.nue-file-down li a{display:inline-block; font-size:var(--fs-16); margin-top:3vmin; padding:10px 4vmin; border-radius:30px; border:1px solid #ddd;}
.nue-file-down li a:after{display:inline-block; content:""; margin-left:6px; background:url(../img/content/sub/icon_down_blue.png) no-repeat center / contain; width:16px; height:13px;}
.nue-rental-wrap .sub-text-wrap{margin:4vmin 0;}
.nue-rental-wrap .sub-h4-bullet{margin:1vmin 0;}

/* sub 132 누에 건물배치도 */
.planview-wrap {max-width: 1400px; margin:2vmin auto 0; }
.planview-map {position: relative; width: 100%; aspect-ratio: 1365/770;}
.planview-map-bg {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 10px;}
.pv-building {position: absolute; cursor: pointer;}
.pv-building img {opacity:0; position: absolute; inset: 0; width: 100%; height: 100%; object-fit: fill; transition: filter 0.25s; border-radius: 2px;}
.pv-building-num {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2; background: #007bff; color: #fff; font-size: var(--fs-14); font-weight: 700; line-height: 1; width:30px; text-align:center; aspect-ratio:1/1; align-content:center; border-radius: 20px; white-space: nowrap; pointer-events: none;}
.pv-building::after {content: attr(data-name); position: absolute; bottom: calc(50% + 15px); left: 50%; transform: translateX(-50%); background: rgba(0,0,0,0.85); color: #fff; font-size:var(--fs-16); font-weight: 600; padding: 4px 10px; border-radius: 5px; white-space: nowrap; pointer-events: none; opacity: 0; transition: opacity 0.2s; z-index: 100;}
.pv-building:hover::after, .pv-building.active::after  {opacity: 1;}
.pv-building:hover img, .pv-building.active img{opacity:0.7;}
.pv-building[data-type="cyan"]:hover img, .pv-building[data-type="cyan"].active img {filter: drop-shadow(0 0 6px #00EEFF) drop-shadow(0 0 14px rgba(0,238,255,0.55));}
.pv-building[data-type="green"]:hover img, .pv-building[data-type="green"].active img {filter: drop-shadow(0 0 6px #47DF8B) drop-shadow(0 0 14px rgba(71,223,139,0.55));}
.pv-building[data-type="blue"]:hover img, .pv-building[data-type="blue"].active img {filter: drop-shadow(0 0 6px #26ACFF) drop-shadow(0 0 14px rgba(26,172,255,0.55));}
.pv-building[data-type="orange"]:hover img, .pv-building[data-type="orange"].active img {filter: drop-shadow(0 0 6px #FFBB00) drop-shadow(0 0 14px rgba(255,187,0,0.55));}

.bldg-list-section {max-width: 1400px;/* margin:3vmin auto; */padding: 3vmin;background: #f8f9fb;border-radius: 20px;}
.bldg-list {list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px 24px;}
.bldg-list li {display: flex; align-items: center; gap: 8px; font-size: var(--fs-18); color: #333; padding: 9px 0; border-bottom: 1px solid #eee;}
.bldg-list li .bldg-list-num {display: inline-flex; align-items: center; justify-content: center; min-width: 24px; height: 24px; background: #2d92ff; color: #fff; font-size: 1.1rem; font-weight: 700; border-radius: 20px; padding: 0 5px; flex-shrink: 0;}
.pv-building-num.gray,
.bldg-list li .bldg-list-num.gray{background:#666;}
.pv-building-num.yellow,
.bldg-list li .bldg-list-num.yellow{background:#f8880c;}
.bldg-list li {cursor: pointer; transition: color 0.2s;}
.bldg-list li:hover {color: #1a3fd1;}
@media (max-width: 1200px) {
  .planview-wrap, .bldg-list-section {padding-left: 24px; padding-right: 24px;}
  .bldg-list {grid-template-columns: repeat(3, 1fr);}
}
@media (max-width: 768px) {
  .planview-wrap {padding-left:0; padding-right:0; padding-top: 0px;}
  .bldg-list-section{padding:0 4vmin;}
  .bldg-list {grid-template-columns: repeat(2, 1fr); gap: 8px 16px;}
  .bldg-list li {font-size: var(--fs-14);}
  .pv-building-num {width:20px}
}

/* sub 132 누에 공간별 운영시간 */
.nue-guide-section{margin:6vmin 0}
.nue-guide-section .sub-3box{gap:20px; margin-top:2vmin;}


/* sub 133 향토문화예술회관 소개*/
.contWrap:has(.space-hero){margin-bottom:0;}
/*.space-hero .scroll-title-item{font-size:clamp(4rem, 4rem + 2vw, 8rem)!important;}*/
.space-head {display: grid; grid-template-columns:48% 48%; gap: 4%; align-items: flex-start; max-width: 1200px; margin:10vmin auto; }
.space-head-left {display: flex; flex-direction: column; gap: 25px; text-transform: uppercase; }
.space-head-label {font-size:var(--fs-16); font-weight: 500; line-height: 1.7; color: #bdc7d3; letter-spacing: 5px; }
.space-head-title {font-family: 'Paperlogy', sans-serif; font-size:clamp(4rem, 4rem + 2vw, 8rem); font-weight: 800; line-height: 1.1; background: radial-gradient(circle at 95% 96%, rgba(153,170,194,1) 0%, rgba(118,133,156,1) 25%, rgba(84,96,118,1) 50%, rgba(49,60,80,1) 75%, rgba(32,41,61,1) 87.5%, rgba(15,23,42,1) 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.space-head-title p {margin: 0; }
.space-head-right {width: 610px; }
.space-head-desc {font-size:var(--fs-22); font-weight: 500; line-height: 1.65; color: #9ba2ac; letter-spacing: -0.88px; margin: 0;}
.space-head-desc p{margin-top: 5vmin; }
.space-head-desc .highlight {font-weight: 700; color: #2a3546; }
@media (max-width: 1200px) {
    .space-head {gap: 100px; padding: 100px 40px; max-width: 100%; }
    .space-head-left {width: 400px; }
    .space-head-right {width: 500px; }
}
@media (max-width: 768px) {
    .space-head {grid-template-columns: 1fr; gap: 50px; padding: 60px 20px; }
    .space-head-left {width: 100%; }
    .space-head-label {letter-spacing: 4px; }
    .space-head-right {width: 100%; }
    .space-head-desc p {margin-bottom: 30px; }
}
.space-swiper-container {position: relative; width: 100%; height: 600px; overflow: hidden; }
.space-swiper{width: 100%; height: 100%; }
.space-swiper .swiper-slide {width: 1200px; height: 600px; display: flex; align-items: center; justify-content: center; border-radius: 20px; overflow: hidden; transition: all 0.5s ease; opacity: 0.5; }
.space-swiper .swiper-slide-active {opacity: 1; }
.space-swiper .swiper-slide img {width: 100%; height: 100%; object-fit: cover; border-radius: 20px; }
.space-swiper .swiper-button-next, .space-swiper .swiper-button-prev {color: #ffffff; background: rgba(0, 0, 0, 0.3); width: 50px; height: 50px; border-radius: 50%; }
.space-swiper .swiper-button-next:after, .space-swiper .swiper-button-prev:after {font-size: var(--fs-20); }
.space-swiper .swiper-pagination {bottom: 20px; }
.space-swiper .swiper-pagination-bullet {background: #ffffff; opacity: 0.5; width: 10px; height: 10px; }
.space-swiper .swiper-pagination-bullet-active {opacity: 1; }
.space-facility {max-width: 1200px; margin: 0 auto; padding: 120px 0 0 0; }
.space-subtit {display: flex; flex-direction: column; align-items: center; gap: 14px; margin-bottom: 4vmin; }
.space-subtit-label {font-size:var(--fs-16); color: #bdc7d3; letter-spacing: 3px; font-weight: 500; text-transform: uppercase; text-align: center; }
.space-subtit-h4 {letter-spacing:-2px; font-family: 'Paperlogy', sans-serif; font-size:var(--fs-44); font-weight: 800; background: radial-gradient(circle at 95% 96%, #99aac2 0%, #76859c 5%,  #313c50 25%, #20293d 87.5%, #0f172a 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; text-align: center; line-height: 1.1; }
.space-floor-wrap {display: flex; flex-direction: column; gap: 46px; }
.space-floor-row {display: flex; gap: 67px; justify-content: space-between; align-items:center;}

.space-floor-thumb {width: 573px; height: 382px; position: relative; border-radius: 20px; box-shadow: 0px 4px 30px 5px rgba(0,0,0,0.15); overflow: hidden; }
.space-thumb-bg {position: absolute; inset: 0; background: #edeff5; border-radius: 20px; }
.space-thumb-bg img{width:100%; height:100%; object-fit:cover; transition:all 0.3s ease;}
.space-thumb-bg:hover img{transform:scale(1.05);}
.space-floor-detail {width: 528px; display: flex; flex-direction: column; gap: 10px;}
.space-floor-head {display: flex; align-items: center; gap: 3px; margin-bottom: 10px; }
.space-floor-badge {background: #f1f5f9; color: #6d7c92;font-size:var(--fs-16); font-weight: 500; border-radius: 20px; padding: 8px 16px; text-transform: uppercase; }
.space-floor-line {display: inline-block; width: 475px; height: 2px; background: #F1F5F9; background-size: cover; margin: 0 8px; }
.space-floor-name {flex-shrink:0; font-family: 'Paperlogy', sans-serif; font-size:var(--fs-32); font-weight: 800; background: radial-gradient(circle at 95% 96%, #99aac2 0%, #76859c 25%, #54607a 50%, #313c50 75%, #20293d 87.5%, #0f172a 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; text-transform: uppercase; }
.space-floor-desc {font-size:var(--fs-24); color: #a9b3c2; font-weight: 500; margin-bottom: 10px; }
.space-floor-dl {background: #f8fafc; border: 1px solid #f5f8fb; border-radius: 10px; padding: 19px 20px; display: flex; flex-direction: column; gap: 6px; }
.space-floor-dl dl+dl{margin-top:8px;}
.space-floor-dl dt {color: #374151; font-size: var(--fs-20);font-weight: 600; word-break:keep-all; line-height:1.4;}
.space-floor-dl dd {color: #9dabbe; font-size: var(--fs-18);}
.space-floor-dl dd+dd{margin-top:4px;}
@media (max-width: 1200px) {
    .space-facility {padding:7vmin 0 0 0; width:95%; }
    .space-floor-row, .space-floor-row.reverse {gap: 24px; align-items: stretch; }
    .space-floor-row{flex-direction: column !important;}
    .space-floor-row.reverse{flex-direction: column-reverse !important;}
    .space-floor-thumb, .space-floor-detail {width: 100%; max-width: 100%; }
}
@media (max-width: 768px) {
	.space-subtit{gap:4px;}
	.space-swiper-container,
	.space-swiper .swiper-slide{height:auto;}
	.space-swiper .swiper-button-next svg, 
	.space-swiper .swiper-button-prev svg{width:30px; height:30px;}
	.space-floor-head, .space-floor-desc{margin-bottom:0;}
	.space-swiper .swiper-slide,
	.space-swiper .swiper-slide img{border-radius:0;}
    .space-floor-thumb {height: 200px; }
    .space-floor-detail {padding-top:0px; }
}

.space-info-section {position: relative; width: 100%; padding:6vmin 0; margin:6vmin 0; overflow: hidden; background: #10182a; }
.space-info-bg {position: absolute; inset: 0; z-index: 0; } 
.space-info-bg img {width: 100vw; height:100%; object-fit: cover; display: block; }
.space-info-bg-gradient {position: absolute; inset: 0; background: linear-gradient(90deg, rgba(16,24,42,0.85) 0%, rgba(16,24,42,0.3) 100%); z-index: 1; }
.space-info-container {position: relative; z-index: 2; display: flex; align-items: center; justify-content: space-between; max-width: 1200px; margin: 0 auto; }
.space-info-detail {display: flex; flex-direction: column; gap: 32px; }
.space-info-label {font-size:var(--fs-16); color: rgba(255,255,255,0.6); letter-spacing: 3.3px; text-transform: uppercase; margin-bottom: 8px; }
.space-info-title {font-family: 'Paperlogy', sans-serif; font-size:var(--fs-48); font-weight: 900; color: #fff; margin-bottom: 16px; }
.space-info-feature {background: rgba(255,255,255,0.2); border-radius: 100px; display: inline-block; padding: 4px 18px; font-size: 14px; font-weight: 500; color: #fff; margin-bottom: 8px; }
.space-info-room {font-size:var(--fs-28); font-weight: 700; color: #fff; }
.space-info-desc {font-size:var(--fs-22); color: rgba(255,255,255,0.6); margin-bottom: 32px; }
.space-info-spec-label {font-size: 14px; color: rgba(255,255,255,0.4); letter-spacing: 2px; text-transform: uppercase; margin-bottom: 4px; }
.space-info-spec {font-size:var(--fs-18); font-weight: 700; color: #fff; }
.space-info-list {width: 500px; display:grid; grid-template-columns:repeat(2, 1fr); gap: 8px; }
.space-info-list-item {display: flex; align-items: center; justify-content: space-between; background: rgba(255,255,255,0.15); border-radius: 10px; padding: 30px 24px; transition: background 0.2s; }
.space-info-list-item:hover,
.space-info-list-item.active {background: #fff; box-shadow: 0 10px 15px 0 rgba(0,0,0,0.1), 0 4px 6px 0 rgba(0,0,0,0.1); }
.space-info-list-item .item-label {font-size:var(--fs-20); font-weight: 700; color: #fff; }
.space-info-list-item .item-floor {font-size:var(--fs-16); color: rgba(255,255,255,0.6); }
.space-info-list-item:hover .item-label,
.space-info-list-item.active .item-label {color: #101828; }
.space-info-list-item:hover .item-floor,
.space-info-list-item.active .item-floor {color: #6a7282; }
.space-info-list-item .item-icon {width: 18px; height: 18px; }
.space-info-list-item:hover .item-icon,
.space-info-list-item.active .item-icon {width: 14px; height: 14px; }
@media (max-width: 1600px) {
	.space-info-container {padding: 0 60px; }
}
@media (max-width: 1200px) {
	.space-info-container {flex-direction: column; height: auto; padding: 40px 20px; gap: 40px; }
	.space-info-detail, .space-info-list {width: 100%; max-width: 700px; }
	.space-info-bg img {height: 500px; }
}
@media (max-width: 768px) {
	.space-info-container {padding: 20px 5vw; }
	.space-info-bg img {height: 320px; }
}

.space-guide-grid {gap: 2vmin; width: 100%; max-width: 1200px; margin:3vmin auto;}
.space-guide-card {color:#222; border-radius: 16px; padding:3vmin; display: flex; flex-direction: column; background: #fff; border: 1px solid #e8eaed; }
.space-guide-card-dark {color:#fff; background: #1a2540; border: 1px solid rgba(255,255,255,0.1); color: #fff; position: relative; }
.space-guide-card .space-guide-card-head, 
.space-guide-card-dark .space-guide-card-head {display: flex; align-items: center; gap: 12px; margin-bottom: 0; }
.space-guide-card-header{margin-bottom:6px;}
.space-guide-icon {width: 40px; height: 40px; border-radius: 14px; background: #0f1729; display: flex; align-items: center; justify-content: center; }
.space-guide-card-dark .space-guide-icon {background: rgba(255,255,255,0.1); }
.space-guide-icon img {width: 18px; height: 18px; }
.space-guide-title {display:block; margin-top:8px; font-size:var(--fs-22); font-weight: bold; }
.space-guide-row {font-size:var(--fs-18); display: flex; justify-content: space-between; align-items: center; border-bottom:1px solid #b9b9b947; padding: 8px 0; }
.space-guide-label {font-size: 14px; opacity:0.8; font-weight: 500; }
.space-guide-desc {opacity: 0.7; font-size:var(--fs-16); margin-top: 8px; }
.space-guide-value {font-size: 15px; font-weight: 600; opacity:0.8; }
.space-guide-card-dark .card-label {opacity: 0.7; }
.space-guide-card-dark .space-guide-title {font-size:var(--fs-20); }
.space-guide-card-dark .space-guide-desc {opacity: 0.7; font-size:var(--fs-16); margin-top: 8px; }
.space-guide-card h5{font-size:var(--fs-28);}
.space-guide-table-title {font-size:var(--fs-28); font-weight:600; color: #111827; margin-bottom: 24px; }
.space-guide-table {width: 100%; border-collapse: collapse; margin-top:1vmin;}
.space-guide-table thead th {background: #1a2540;color: #fff;font-size: var(--fs-16);font-weight: bold;padding: 16px 24px;border-right: 1px solid #ffffff59;text-align: left;}
.space-guide-table tbody th {border-bottom: 1px solid #e5e7eb; border-right: 1px solid #e5e7eb; background: #f9fafb; font-size:var(--fs-18); color: #111827; font-weight: 600; padding: 20px 24px; text-align: left; }
.space-guide-table td {border-right: 1px solid #e5e7eb; font-size: 14px; color: #505050;font-size:var(--fs-18); padding: 20px 24px; border-bottom: 1px solid #e5e7eb; text-align: left; }
.space-guide-table td:last-child {border-right: none; }
.space-guide-table td.tdbr{border-right: 1px solid #e5e7eb;}
.space-guide-table td.text-center {text-align: center; }
.space-guide-table-note {font-size: 14px; color: #9ca3af; text-align: right; margin-top: 8px; }

@media (max-width: 900px) {
	.space-guide-grid {grid-template-columns: 1fr; min-height: auto; }
	.space-guide-table th, .space-guide-table td {padding: 10px 8px; font-size: 12px; }
}
@media (max-width:800px){
	.space-guide-table-note{text-align:left;}
}
@media (max-width: 600px) {
	.space-guide-table-wrap{overflow-x:auto;}
	.space-guide-table{width:800px;}
	.space-guide-section {padding:3vmin 0; width:95%; margin:0 auto;}
	
}

.space-organ-section {background: #f9fbfc; position: relative; width: 100%; padding:6vmin 0; margin-top:6vmin;}
.space-organ-contact {margin-top:3vmin;}
.space-organ-contact-list {display: flex; justify-content:center; gap: 23px; font-size:var(--fs-18); font-weight: bold; color: #2a3546; letter-spacing: -0.64px; }
.space-organ-contact-list span {font-weight: normal; color: #9ba2ac; margin-left: 4px; }
.space-organ-cards {display: flex; gap: 20px; justify-content: center; align-items: center; flex-wrap: wrap; position: relative; z-index: 2; }
.orgcard {position:relative; flex:1; height:-webkit-fill-available; background: #fff; border-radius: 16px; box-shadow: 0 2px 8px rgba(30,41,57,0.04); padding: 3vmin;}
.orgcard-icon {background:#1e2939; width: 44px; height: 44px; border-radius: 14px; display: flex; align-items: center; justify-content: center; margin-bottom: 0; }
.orgcard-icon img {width: 20px; height: 20px; }
.orgcard-title {font-size:var(--fs-22); font-weight: bold; color: #111827; margin:16px 0 6px ; }
.orgcard-desc {font-size:var(--fs-18); color: #6b7280; line-height: 1.7; }
.orgcard ul{font-size:var(--fs-16); line-height:1.4; margin-top:8px;}
@media (max-width: 1200px) {
	.space-organ-cards {flex-wrap: wrap;}
	.orgcard {width: 90vw; min-width: 0;}
}
@media (max-width: 900px) {
	.space-organ-contact { left: 50%; width: 90vw; min-width: 0; max-width: 98vw; }
	.space-organ-header, .space-organ-contact { left: 50%; width: 90vw; min-width: 0; max-width: 98vw; }
	.space-organ-cards { margin-top: 120px; }
}
@media (max-width: 600px) {
	.space-organ-contact { top: 320px; width: 98vw; }
	.space-organ-bgimg { top: 120px; height: 120px; }
	.space-organ-cards { margin-top:0; gap: 12px; flex-direction:column;}
	.orgcard { padding: 20px 10px; }
	.orgcard-icon{position:absolute; right:3%; top:5%;}
	.orgcard-title{margin:0}
}

/* sub 135 향토문화예술회관  공연장 안내 */
.venue-section{max-width: 1400px; margin: 6vmin auto;}
.venue-info-container{display: flex; gap: 60px; align-items: center; width: 100%;}
.venue-detail{flex: 1; display: flex; flex-direction: column; gap: 1.2vmin; padding-top: 50px; min-width: 0;}
.venue-desc{font-size:var(--fs-22); color: #9ba2ac; font-weight: 500; line-height: 1.65; }
.venue-specs{margin: 0; padding: 0; font-size: 14px; line-height: 1.65;}
.venue-specs dt{display: inline; color: #374151; font-weight: 600; margin-left: 21px;}
.venue-specs dt::before{content: '• '; margin-left: -21px;}
.venue-specs dd{display: inline; color: #a3b0c2; font-weight: 400; margin: 0 0 0 4px;}
.venue-specs dd::after{content: ''; display: block; height: 0;}
.venue-feature-cards{width: 294px; display: flex; flex-direction: column; gap: 1vmin;}
.venue-feature-card{border: 1px solid #e6e6e6; border-radius: 16px; padding: 3vmin 4vmin; background: #fff;}
.venue-feature-card.blue{background: #173766;}
.venue-feature-card .feature-title{font-family: 'Paperlogy', sans-serif; font-size:var(--fs-32); font-weight: 800; text-transform: uppercase; color: #373737; margin: 0 0 10px 0;}
.venue-feature-card.blue .feature-title{color: #fff;}
.venue-feature-card .feature-desc{font-size: 14px; color: #a3b0c2; font-weight: 600; letter-spacing: -0.56px; margin: 0;}
.venue-map-wrap{background: #fbfcfe; border: 1px solid #e7edf3; border-radius: 20px; margin-top:2vmin; padding:5vmin; text-align:center; align-content:center; width: 100%; position: relative; overflow: hidden; margin-bottom:3vmin;}
.venue-link-btns{display:flex; justify-content:center; align-items:center; gap:2%; max-width:90%; margin:0 auto;}
.venue-link-btn{flex:1; display:flex; gap:10px; padding:2.5vmin 4vmin; background:#F0F2F5; border-radius:5rem; border:1px solid #E6E6E6;}
.venue-link-btn.blue{background:#173766; color:#fff;}
.venue-link-btn p{font-size:var(--fs-18); margin-top:6px;opacity:0.7;}
.venue-gallery-section{max-width: 1400px; margin: 6vmin auto;}
.venue-gallery-header{margin-bottom:2vmin; }
.venue-gallery-main{width: 100%; height: 600px; margin-bottom: 20px; border-radius: 20px; overflow: hidden;}
.venue-gallery-main .swiper-slide{position:relative;display: flex; align-items: center; justify-content: center; background: #fff;}
.venue-gallery-main .swiper-slide img{width: 100%; height: 100%; object-fit: cover;}
.venue-slide-tag{position:absolute;bottom:0;right:0;padding:10px 3vmin; font-size:var(--fs-20); background:#00000080; color:#fff; border-radius:10px 0 0 0 ;}
.venue-gallery-thumbs{width: 100%; height: 120px;}
.venue-gallery-thumbs .swiper-slide{opacity: 0.5; cursor: pointer; border-radius: 12px; overflow: hidden; transition: opacity 0.3s;}
.venue-gallery-thumbs .swiper-slide-thumb-active{opacity: 1;}
.venue-gallery-thumbs .swiper-slide:hover{opacity: 0.8;}
.venue-gallery-thumbs .swiper-slide img{width: 100%; height: 100%; object-fit: cover;}
@media (max-width:1200px){
  .venue-map-img{width: 90%; height: auto;}
}
@media (max-width:900px){
	.venue-section{margin:3vmin auto;}
  .venue-info-container{flex-direction: column; gap: 32px;}
  .venue-feature-cards{width: 100%; flex-direction: row; gap: 12px;}
  .venue-gallery-main{height: 400px;}
}
@media (max-width:600px){
  .venue-gallery-section{padding: 24px 0;}
  .venue-gallery-header{padding: 0 16px 2vmin;}
  .venue-gallery-container{padding: 0 ;}
  .venue-feature-card{padding: 16px 10px;flex:1;}
  .venue-map-wrap{height: 300px;}
  .venue-link-btns{flex-flow:column;gap:4px;}
  .venue-link-btn{width:100%;padding:4vmin;}
  .venue-link-btn p{margin-top:0}
  .venue-gallery-main{height: 280px; margin-bottom:10px;}
  .venue-gallery-thumbs{height: 80px;}
}

/* sub 137 향토문화예술회관 대관안내 */
.space-rental-section{max-width:1400px;margin:6vmin auto;}
.space-rental-section .sub-ul-marker{margin-bottom:6vmin;}
.space-rental-section .sub-ul-marker b{color:#222;}
.space-process-steps{display:flex;gap:16px;padding:2vmin 0 0;position:relative;}
.space-process-step{flex:1;background:#f8f9fb;border-radius:16px;padding:32px 24px;position:relative;display:flex;flex-direction:column;align-items:flex-start;height:-webkit-fill-available;}
.space-process-step:not(:last-child)::after{content:'';position:absolute;right:-11px;top:50%;transform:translateY(-50%) rotate(-45deg);width:10px;height:10px;border-right:2px solid #e5e7eb;border-bottom:2px solid #e5e7eb;z-index:1;}
.space-step-number{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;background:#003766;color:#fff;border-radius:20px;font-size:13px;font-weight:700;margin-bottom:1vmin;}
.space-step-title{font-size:var(--fs-18);font-weight:700;color:#111;margin:0 0 8px 0;letter-spacing:-0.5px;}
.space-step-desc{font-size:var(--fs-16);color:#6b7280;margin:0;line-height:1.5;font-weight:400;}
.space-step--ul{font-size:var(--fs-16);}
.space-step--ul li:before{display:inline-block; content:"•"; color:#b2b2b2;}
.space-step--ul li{padding-left:10px; text-indent:-4px;margin-top:0.8vmin; word-break:keep-all;}
.space-rental-table-wrap{overflow-x:auto;border-top:2px solid #111827;}
@media (max-width:1200px){
	.space-process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
	.space-process-step:not(:last-child)::after{display:none;}
}
@media (max-width:768px){
	.space-rental-section{padding:0 ;}
	.space-process-steps{grid-template-columns:repeat(2,1fr);gap:12px;}
	.space-process-step{padding:24px 16px;}
}
@media (max-width:480px){
	.space-process-steps{flex-flow:column wrap;}
}

/* sub 138 향토문화예술회관  찾아오시는 길 */
.space-location-section{max-width:1400px;margin:0 auto;padding:7vmin 24px;}
.space-location-top{display:flex;justify-content:space-between;gap:60px;margin-bottom:80px;}
.space-location-info{flex:0 0 400px;padding-top:20px;}
.space-location-info h3{margin-bottom:3vmin;}
.space-info-group{margin-bottom:40px;}
.space-info-label{font-size:14px;font-weight:700;color:#bdc7d3;letter-spacing:2px;text-transform:uppercase;}
.space-info-text{font-size:var(--fs-20);font-weight:500;color:#505050;line-height:1.4;word-break:keep-all;}
.space-info-text b{font-weight:700;}
.space-info-sub{display:block;font-size:14px;color:#6b7280;margin-top:8px;font-weight:400;}
.space-map-buttons{display:flex;flex-direction:column;gap:12px;margin-top:40px;}
.space-btn-map{display:flex;align-items:center;justify-content:center;height:56px;border-radius:30px;font-size:var(--fs-16);font-weight:700;text-decoration:none;transition:all 0.2s;}
.space-btn-kakao{background:#003766;color:#fff;border:1px solid #0f172a;}
.space-btn-naver{background:#fff;color:#1f2937;border:1px solid #e5e7eb;}
.space-location-map{flex:1;height:530px;background:#f3f4f6;border-radius:24px;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,0.05);}
.root_daum_roughmap .cont .section.lst{display:none;}
.space-transport-info{background:#f8f9fb;border-radius:24px;padding:60px;display:flex;gap:60px;}
.space-transport-item{flex:1;}
.space-transport-icon{width:48px;height:48px;background:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:20px;font-size:var(--fs-24);color:#1f2937;box-shadow:0 4px 6px rgba(0,0,0,0.02);}
.space-transport-title{font-size:var(--fs-20);font-weight:800;color:#1f2937;margin:0 0 16px 0;}
.space-transport-desc{font-size:var(--fs-16);color:#6b7280;line-height:1.6;margin:0;word-break:keep-all;}
@media (max-width:1024px){
	.space-location-top{flex-direction:column;gap:40px;}
	.space-location-info{flex:none;width:100%;}
	.space-info-group{padding-bottom:1.5vmin; margin-bottom:1.5vmin; border-bottom:1px solid #e8e8e8;}
	.space-transport-info{padding:4vmin;flex-direction:column;gap:4vmin;}
	.space-location-map{height:400px}
	.space-location-map .root_daum_roughmap{height:300px!important;}
	.space-location-top{margin-bottom:4vmin;}
}
@media (max-width:480px){
	.space-location-section{padding:0 2vmin 6vmin;}
	.space-location-map{height:300px;}
	.space-transport-info{padding:24px;}
}

/* sub 140 완주휴시네마 상영관안내 */
.hue-seat-wrap .sub-2box{gap:24px;}

/* sub 142 완주휴시네마 대관안내 */
.hue-rental-wrap{display:grid; grid-template-columns:repeat(2, 49%); column-gap:2%;}
.hue-rental-item{width:100%; aspect-ratio:1/0.5;}
.hueSwiper .swiper-slide{border-radius:1.6rem 1.6rem 0 0; overflow:hidden;}
.hueSwiper-detail{padding-top: 1vmin;background: #f8f9fb;padding: 3vmin;border-radius: 0 0 1.6rem 1.6rem;}
.hueSwiper-detail p{margin-top:6px;font-size:var(--fs-20);}
@media (max-width:1024px){
	.hue-rental-wrap{display:flex; flex-flow:column wrap; gap:3vmin;}
}


/* sub 146 예술곳간 시설현황 */
.gotgan-slide .hueSwiper{width:100%; aspect-ratio:1/0.7;}
.gotgan-contact{ display:flex; gap:14px; align-items: center;}
.gotgan-contact .sub-h6{margin:0;}
.gotgan-contact i{width:32px; height:32px;}
.gotgan-call-badge{background: var(--primary); color: white; padding: 6px 15px; border-radius: 20px; font-size:var(--fs-16); font-weight: 600;}
.gotganSwiper .swiper-slide{max-height:600px; overflow:hidden;}
.gotganSwiper .swiper-slide img{width:100%; height:100%; object-fit:cover; object-position:center;}

/* sub 165, 166, 167, 168 공간 3D스캔 VR */
.contWrap:has(.vr-scan-wrap){margin-bottom:0;}
.vr-scan-wrap {position: relative; width: 100%; height: 100vh; min-height: 600px; display: flex; align-items: center; overflow: hidden;}
.vr-hero-bg {position: absolute; inset: 0; z-index: 0; will-change: transform;}
.vr-hero-bg img {width: 100%; height: 100%; object-fit: cover; display: block;}
.vr-hero-bg::after {content: ''; position: absolute; inset: 0; background:linear-gradient(359deg, rgb(10 16 30 / 90%) 0%, rgba(10, 16, 30, 0.55) 55%, rgb(10 16 30 / 42%) 100%);}
.vr-hero-inner {position: relative; z-index: 2; width: 100%; max-width: 1400px; margin: 0 auto;display:grid; grid-template-columns:repeat(3, 1fr); align-items: center; justify-content: space-between; gap: 40px;}
.vr-content {flex: 0 0 auto;color:#fff;}
.vr-title{line-height:1.1;}
.vr-desc {font-size: var(--fs-22); color: rgba(255, 255, 255, 0.6); line-height: 1.6; word-break: keep-all; margin:10px 0 4vmin; opacity: 0; will-change: opacity;}
.vr-btn {display: inline-flex; align-items: center; justify-content:space-between; min-width:240px; gap: 14px; padding: 14px 20px 14px 28px; border: 1.5px solid rgba(255, 255, 255, 0.2); border-radius: 100px; color: #fff; font-size: var(--fs-18); font-weight: 500; text-decoration: none; cursor: pointer; background: rgba(255, 255, 255, 0.06); backdrop-filter: blur(8px); transition: border-color 0.25s, ; opacity: 0; will-change: opacity;}
.vr-btn:hover {border-color: rgba(255, 255, 255, 0.7);}
.vr-btn-icon {width: 36px; height: 36px; border-radius: 50%; background:var(--primary); display: flex; align-items: center; justify-content: center; flex-shrink: 0; transition: transform 0.25s;}
.vr-btn:hover .vr-btn-icon {transform: rotate(-45deg);}
.vr-btn-icon svg {width: 16px; height: 16px; fill: none; stroke: #fff; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round;}
/* 폰 목업 */
.vr-phone-wrap {flex: 0 0 auto; position: relative; will-change: transform, opacity; opacity: 0;}
.vr-phone {position: relative; margin:0 auto; width: 340px; height: 720px; will-change: transform;}
.vr-phone-body {position: absolute; inset: 0; border-radius: 36px; background: linear-gradient(145deg, #1e2740 0%, #111827 100%); border: 2px solid rgba(255, 255, 255, 0.12); box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.1);}
.vr-phone-notch {position: absolute; top: 12px; left: 50%; transform: translateX(-50%); width: 80px; height: 20px; background: #0d1520; border-radius: 100px; z-index: 2;}
.vr-phone-screen {position: absolute; top: 8px; left: 8px; right: 8px; bottom: 8px; border-radius: 28px; overflow: hidden; background: #0a0f1e;}
.vr-screen-dot {position: absolute; bottom: 5%; right: 20px; width: 55px; height: 55px; border-radius: 50%; background: radial-gradient(circle, #64b5f6 0%, #3b82f6 50%, #1d4ed8 100%); box-shadow: 0 0 20px rgba(100, 181, 246, 0.6); display: flex; align-items: center; justify-content: center; z-index: 2;}
.vr-screen-dot svg {width: 18px; height: 18px; fill: none; stroke: #fff; stroke-width: 2;}
.vr-screen-img-wrap {position: absolute; inset: 0; will-change: transform;}
.vr-screen-img-wrap img {width: 115%; height: 115%; object-fit: cover; object-position: center; display: block; will-change: transform;}
/* 화면 위 하단 그라데이션 오버레이 */
.vr-screen-img-wrap::after {content: ''; position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.1) 50%, transparent 100%); pointer-events: none;}
/* 폰 그림자/반사 */
.vr-phone-shadow {position: absolute; bottom: -30px; left: 50%; transform: translateX(-50%); width: 180px; height: 20px; background: radial-gradient(ellipse, rgba(100, 181, 246, 0.25) 0%, transparent 70%); filter: blur(8px);}
/* 폰 배경 글로우 */
.vr-phone-glow {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 300px; height: 400px; background: radial-gradient(ellipse, rgba(100, 181, 246, 0.12) 0%, transparent 70%); pointer-events: none; z-index: -1;}
.vr-feature-section {padding: 80px 40px; max-width: 1200px; margin: 0 auto;}
.vr-feature-grid {display:flex; flex-direction:column; gap: 24px;}
.vr-feature-card {background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 20px; padding:3vmin; display: flex; flex-direction: column; gap: 16px; transition: border-color 0.25s, background 0.25s;}
.vr-feature-icon {width: 48px; height: 48px; border-radius: 50px; background: rgba(100, 181, 246, 0.1); display: flex; align-items: center; justify-content: center;}
.vr-feature-icon svg {width: 22px; height: 22px; fill: none; stroke: #64b5f6; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;}
.vr-feature-card h3 {word-break:keep-all;font-size: var(--fs-22); font-weight: 700; color: #fff;  display:flex; align-items:center; gap:8px;}
.vr-feature-card p {font-size: var(--fs-16); color: rgba(255, 255, 255, 0.5); line-height: 1.6; word-break: keep-all;}
@media (max-width: 1200px) {
    .vr-hero-inner {padding: 0 30px;}
    .vr-phone {width: 210px; height: 420px;}
}
@media (max-width:1024px){
	.vr-hero-inner{display:flex; flex-flow:column wrap;}
	.vr-feature-grid{flex-direction:row;gap:4px;}
	.vr-content{text-align:center;}
	.vr-desc{margin:10px 0;}
	.vr-btn{padding:8px 14px 8px 20px }
	.vr-feature-card {padding:2vmin;}
}
@media (max-width: 960px) {
    .vr-hero-inner {flex-direction: column; justify-content: center; padding: 0 32px; text-align: center;}
    .vr-content {max-width: 600px;}
    .vr-btn {margin: 0 auto;}
    .vr-phone-wrap {order: -1; margin-bottom: 8px;}
    .vr-phone {width: 160px; height: 320px;}
    .vr-phone-body {border-radius: 28px;}
    .vr-phone-screen {border-radius: 22px;}
    .vr-feature-card p{display:none;}
    .vr-feature-card h3{flex-flow:column wrap; }
}
@media (max-width: 768px) {
    .vr-hero {height: auto; min-height: 100svh; padding: 80px 0 60px;}
    .vr-hero-inner {padding: 0 24px; gap: 32px;}
    .vr-feature-section {padding: 60px 24px;}
    .vr-feature-grid{display:none;}
}

/* sub 152 후원안내 */
.dona-info-wrap{max-width:1200px; margin: 0 auto; padding: 60px 24px 100px;}
.dona-info-item{display: grid; grid-template-columns: 1fr 1fr; gap: 40px 60px; align-items: center; padding: 70px 0; border-bottom: 1px solid #eee;}
.dona-info-item:last-child{border-bottom: none;}
.dona-info-item.reverse{direction: rtl;}
.dona-info-item.reverse > *{direction: ltr;}
.dona-img-wrap{position: relative; display: flex; justify-content: center; align-items: center;}
.dona-img-wrap::before{content: ''; position: absolute; width: 220px; height: 220px; border-radius: 50%; background: rgba(26,60,110,.07);}
.dona-img-wrap img{position: relative; z-index: 1; width: 100%; max-width: 280px; height: auto; object-fit: contain; filter: drop-shadow(0 12px 28px rgba(0,0,0,.1)); will-change: transform; transition: transform .4s ease;}
.dona-info-item.reverse .dona-img-wrap img {max-width:360px;}
.dona-img-wrap:hover img{transform: translateY(-6px) scale(1.02);}
.dona-heading{display: flex; align-items: baseline; gap: 8px; margin-bottom: 18px; flex-wrap: wrap;}
.dona-num{font-size: var(--fs-48); font-weight: 900; color:#e5e5e5; letter-spacing: -1px; line-height: 1;}
.dona-num span{color:var(--primary);}
.dona-content h2{font:700 var(--fs-36) var(--paper); line-height: 1.3; word-break: keep-all;}
.dona-content > p{font-size: var(--fs-20); color: #444; line-height: 1.4; word-break: keep-all; margin-bottom: 20px;}
.dona-list{list-style: none; display: flex; flex-direction: column; gap: 18px;}
.dona-list-title{font-size: var(--fs-20); font-weight: 700; color: #111; margin-bottom: 6px; display: flex; align-items: center; gap: 8px;}
.dona-list-title::before{content: ''; display: inline-block; width: 22px; height: 22px; border-radius: 50%; background: var(--primary); color: #fff; font-size: 1.2rem; font-weight: 900; text-align: center; line-height: 22px; flex-shrink: 0;}
.dona-list li:nth-child(1) .dona-list-title::before{content: '1';}
.dona-list li:nth-child(2) .dona-list-title::before{content: '2';}
.dona-list-desc{font-size: var(--fs-18); color: #555; line-height: 1.8; padding-left: 30px; word-break: keep-all;}
.dona-simple-list{list-style: none; display: flex; flex-direction: column; gap: 10px;}
.dona-simple-list li{font-size: var(--fs-18); color: #444; line-height: 1.7; padding-left: 20px; position: relative; word-break: keep-all;}
.dona-simple-list li::before{content: '▸'; position: absolute; left: 0; color: var(--color-accent);}
.dona-simple-note{font-size: var(--fs-18)!important; color: #888; margin-top: 14px; padding: 12px 16px; background:rgb(245 251 255); border-left: 3px solid var(--primary); border-radius: 0 6px 6px 0; line-height: 1.7;}
.dona-tags{display: flex; flex-wrap: wrap; gap: 10px; margin-top: 10px;}
.dona-tag{font-size: var(--fs-18);color: #28aeff;background: rgb(245 251 255);border: 1px solid rgb(182 223 255 / 70%);border-radius: 100px;padding: 13px 16px;/* font-weight: 600; */white-space: nowrap;transition: background .25s, color .25s;}
.dona-contact{margin-top: 10px;}
.dona-contact p{font-size: var(--fs-20); color: #555; line-height: 1.7;}
.dona-contact .tel-label{color:var(--primary); font-weight: 600; margin: 10px 0 4px;}
.dona-contact .tel{font-size: var(--fs-40); font-weight: 900; color: var(--color-primary); letter-spacing: -1px; line-height: 1.2;}
@media (max-width: 768px){
  .page-wrap{padding: 40px 20px 80px;}
  .dona-info-item{grid-template-columns: 1fr; gap: 30px; padding: 50px 0;}
  .dona-info-item.reverse{direction: ltr;}
  .dona-img-wrap img {max-width: 200px;}
  .dona-info-item.reverse .dona-img-wrap img{max-width: 250px;}
  .dona-contact .tel{font-size: var(--fs-30);}
}


/* sub 85 인사말 */
.sub-hero-img-wrap video{width: 100%; height: 100%; object-fit: cover;}
.greeting-section{background: #fff; padding: 15vmin 40px 8vmin; min-height: 100vh;}
.greeting-inner{display: flex; gap: 80px; max-width: 1100px; margin: 0 auto; align-items: flex-start;}
.greeting-photo{flex-shrink: 0; width: 400px; clip-path: inset( 100%  0% 0% 0% ); overflow: hidden;}
.greeting-photo-img{ transform: scale(1.2); width: 100%;  overflow: hidden; border-radius: 12px; background:#f8f8f8; border-radius:20px; padding:2vmin 2vmin 0 2vmin;}
.greeting-photo-img img{width: 100%; height: 100%; object-fit: cover;}
.greeting-photo-caption{text-align: center; margin-top: 20px; font-family:var(--paper); font-size: var(--fs-24); color: #666; opacity: 0; transform: translateY(20px);}
.greeting-photo-caption strong{color: #222; font-weight: 700;}
.greeting-text{flex: 1;}
.greeting-text h3{font-size: var(--fs-48); font-weight: 800; color: #222; line-height: 1.4; margin-bottom: 40px; opacity: 0; transform: translateY(20px);}
.greeting-text p{font-size: var(--fs-24); color: #555; line-height: 1.9; margin-bottom: 24px; word-break: keep-all; opacity: 0; transform: translateY(20px);}
.greeting-text p strong{color: #222; font-weight: 700;}
.greeting-text p em{font-style: normal; color: #2196F3; font-weight: 700;}
@media(max-width:1200px){
	.greeting-inner{gap: 60px;}
	.greeting-photo{width: 280px;}
}
@media(max-width:768px){
	.greeting-section{padding: 60px 20px;}
	.greeting-inner{flex-direction: column; align-items: center; gap: 40px;}
	.greeting-photo{width: 240px;}
	.greeting-text h3{font-size: var(--fs-26); margin-bottom: 24px;}
}

/* sub 86 미션비전 */
.contWrap:has(.mission-hero-section){margin-bottom:0;}
.contsBox:has(.mission-hero-section){margin-top:0;}
.mission-hero-section { position: relative; height: 100vh; min-height: 700px; display: flex; align-items: center; justify-content: center; overflow: hidden; border-bottom: 1px solid #f0f0f0; }
.mission-hero-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; }
.mission-hero-bg-1 { background-image: url('../img/content/sub/mission_hero_bg1.jpg'); }
.mission-hero-bg-2 { background-image: url('../img/content/sub/mission_hero_bg2.jpg'); opacity: 0; }
.mission-hero-bg-3 { background-image: url('../img/content/sub/mission_hero_bg3.jpg'); opacity: 0; }
.mission-hero-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.2); z-index: 1; }
.mission-hero-content {font-family:'Paperlogy'; visibility: hidden;opacity: 0;position: absolute;top: 50%;left: 50%;z-index: 2;color: white;padding: 40px 20px;max-width: 1300px;width: 100%;display: flex;align-items: center;justify-content: space-between;gap: 4vmin;}
.mission-hero-content-1 {z-index:-1; visibility: hidden; opacity: 0;}
.mission-hero-content-2, .mission-hero-content-3 {visibility: hidden; opacity: 0;}
.mission-hero-number {/*font-size: clamp(10rem, 8vw, 19rem);*/font-weight: 800;line-height: 1.1;letter-spacing: -0.09em;text-transform: uppercase;flex-shrink: 0;}
.mission-hero-divider {width: clamp(150px, 18vw, 250px);height: 3px;background: #ffffff50;flex-shrink: 0;}
.mission-hero-text-wrapper { display: flex; flex-direction: column; gap: 4px; flex-shrink: 0; position: relative; }
.mission-hero-title {background:linear-gradient(119deg, #00ceff 30%, #8921ff);background-clip:text;color:transparent; font-size: clamp(5rem, 6vw, 18rem);font-weight: 800;line-height: 1.2;letter-spacing: 0;text-transform: uppercase;white-space: nowrap;}
.mission-hero-title-small {color:#fff;font-size: clamp(3rem, 4vw, 7rem); font-weight:700; position:relative; anchor-name:--mission-tit}
.mission-hero-subtitle {position: absolute;top:anchor(-45% --mission-tit);left: 10px;font-size: clamp(1.5rem, 2vw, 2.2vmin);font-weight: 600;letter-spacing: 0;text-transform: uppercase;opacity: 0.6;}
@media (max-width: 768px) {
    .mission-hero-section { min-height: 500px; }
    .mission-hero-content { flex-direction: column; align-items: center; text-align: center; gap: 30px; padding: 60px 20px; }
    .mission-hero-divider { width: 100px; }
    .mission-hero-text-wrapper { align-items: center; }
    .mission-hero-title { white-space: normal; text-align: center; }
    .mission-hero-subtitle { position: static; margin-top: 10px; }
    .mission-section { min-height: auto; padding: 60px 20px; }
    .mission-container { grid-template-columns: 1fr; gap: 40px; text-align: center; }
    .mission-left-text { grid-column: 1; padding-left: 0; order: 1; }
    .mission-label { font-size: var(--fs-36); }
    .mission-image-wrapper { grid-column: 1; order: 2; }
    .mission-image-inner { transform: none; width: 100%!important; height: 300px!important; }
    .mission-image { width: 100%; max-width: auto; height:100%!important; margin: 0 auto; }
    .mission-right-text { grid-column: 1; padding-right: 0; order: 3; }
}

/* Mission Section - Grid Layout */
.mission-section { position: relative; min-height: 300vh; background: linear-gradient(180deg, rgba(255,255,255,0.85) 28.994%, rgba(255,255,255,0.9) 88.113%); border-bottom: 1px solid #f0f0f0; overflow: hidden; }
.mission-container { width: 100%; max-width: 1920px; margin: 0 auto; display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; align-items: center; padding: 80px 40px; min-height: 100vh; }
.mission-left-text {padding-left: 40px; position: relative; }
.mission-label { font-size: clamp(32px, 5vw, 60px); font-weight: 400; line-height: 0.8; text-transform: uppercase; color: #000; margin: 0; position: absolute; top: 50%; transform: translateY(-50%); }
.mission-label[data-slide="1"], .mission-label[data-slide="2"] { opacity: 0; }
.mission-label b{font-size: clamp(40px, 5vw, 80px); font-weight: 600; display: block; margin-top:10px;}
.mission-image-wrapper { position: relative; }
.mission-image-inner { width: 568px; height: 650px; display: flex; align-items: center; justify-content: center; position: relative; }
.mission-image { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; max-width: 683px; height: 650px; border-radius: 30px; overflow: hidden; }
.mission-image[data-slide="1"], .mission-image[data-slide="2"] { clip-path: inset(100% 0% 0% 0%); }
.mission-image img { width: 100%; height: 100%; object-fit: cover; }
.mission-right-text { padding-right: 40px; position: relative; }
.mission-description { font-size: clamp(32px, 4vw, 48px); margin-top:-65px; line-height: 1.1; color: #000; position: absolute; word-break: keep-all; }
.mission-description .regular { font-weight: 400; }
.mission-description .bold { font-weight: 800; display: block; }
.mission-description[data-slide="1"], .mission-description[data-slide="2"] { opacity: 0; }
.mission-center-text{text-align:center; font-size: clamp(32px, 5vw, 60px); grid-column:1 /4; position:absolute; right:0; left:0;}
.mission-center-text p{font-size:clamp(18px, 3vw, 32px); margin-top:3vmin; line-height:1.3;}
@media (max-width: 1024px) {
    .mission-container { grid-template-columns: 1fr; gap: 2vmin; text-align: center; align-content:center; padding:0;}
    .mission-left-text, .mission-image-wrapper, .mission-right-text { padding: 0; width:100%; justify-items:center}
    .mission-left-text{margin-top:-100px;}
    .mission-description { font-size: var(--fs-28); text-align: center; margin-top:0;}
}


/* Vision Section - Full Screen */
.vision-section { position: relative; min-height: 400vh; background: url('../img/content/sub/vision_bg2.jpg') center/cover; background-attachment: fixed;  overflow: hidden; }
.vision-container { min-height: 100vh; margin: 0 auto; }
/*.vision-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity:0; background: linear-gradient(135deg, rgba(0, 51, 153, 0.85) 0%, rgba(46, 204, 113, 0.7) 100%); }*/
.vision-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity:0; background: linear-gradient(135deg, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0.4) 100%); }
.vision-content { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 2; text-align: center; color: white; padding: 60px 40px; max-width: 1200px; width: 100%; }
.vision-label { font-size:var(--fs-16); font-weight: 700; letter-spacing: 3px; margin-bottom: 30px; text-transform: uppercase; opacity: 0; }
.vision-main { font-size: clamp(40px, 6vw, 64px); font-weight: 700; margin-bottom: 40px; line-height: 1.3; letter-spacing: -1px; opacity: 0; transform: scale(0.8); }
.vision-sub { font-size: clamp(20px, 3vw, 28px); font-weight: 300; opacity: 0; }
.vision-floating-image { position: absolute; z-index: 2; width: 200px; height: 200px; border-radius: 16px; overflow: hidden; opacity: 0; box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3); }
.vision-floating-image img { width: 100%; height: 100%; object-fit: cover; }
.vision-floating-image:nth-child(1) {top: 10%;left: 5%;width: 350px;height: 400px;/* aspect-ratio: 1/ 1; */}
.vision-floating-image:nth-child(2) {top: 15%; right: 8%; width: 150px; height: 150px; }
.vision-floating-image:nth-child(3) {bottom: 20%; left: 10%; width: 160px; height: 160px; }
.vision-floating-image:nth-child(4) {bottom: 35%; right: 20%; width: 200px; height: 200px; }
.vision-floating-image:nth-child(5) {bottom: 50%; left: 20%; width: 200px; height: 200px; }
.vision-floating-image:nth-child(6) {bottom: 3%;right: 5%;width: 320px;height: 400px;/* aspect-ratio: 1/ 7.5; */}

@media (max-width: 1024px) {
    .vision-floating-image:nth-of-type(3), .vision-floating-image:nth-of-type(4) { display: none; }
}
@media (max-width: 768px) {
    .vision-section { height: 70vh; min-height: 500px; }
    .vision-content{padding:0 2vmin ;}
}

/* Values Section - Minimal Grid */
.values-section { min-height: 200vh; background: #FFFFFF; }
.values-container { max-width: 1600px; margin: 0 auto; padding: 120px 20px; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; }
.values-header { text-align: center; margin-bottom: 80px; }
.values-label { font-size: var(--fs-16); font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color:#bfbfbf;}
.values-title { font-size: clamp(36px, 5vw, 52px); font-weight: 700; color: #222; margin-bottom: 20px; }
.values-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: center; justify-items: center; }
.core-value-center { width: 100%; height: 100%; aspect-ratio: 1/1; border-radius: 50%; background: linear-gradient(135deg, #3767c5 0%, #2196F3 25%, #15b6ff 50%, #47caf1 75%, #3cd5dd 100%); display: flex; align-items: center; justify-content: center; opacity: 1; z-index: 10; grid-column: 3; grid-row: 1; }
.core-value-text { color: white; font-size:var(--fs-32); font-weight: 700; text-transform: uppercase; letter-spacing: 2px; }
.value-card { position: relative; width: 100%; height: 100%; aspect-ratio: 1/1; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; opacity: 0; will-change: transform, opacity; grid-row: 1; }
.value-card-bg { position: absolute; inset: 0; border-radius: 50%; mix-blend-mode: soft-light; z-index: 1; }
.value-card:nth-child(1) .value-card-bg { background: #3767c5; }
.value-card:nth-child(2) .value-card-bg { background: #2196F3; }
.value-card:nth-child(3) .value-card-bg { background: linear-gradient(135deg, #3767c5 0%, #2196F3 25%, #15b6ff 50%, #47caf1 75%, #3cd5dd 100%); mix-blend-mode: normal; }
.value-card:nth-child(4) .value-card-bg { background: #47caf1; }
.value-card:nth-child(5) .value-card-bg { background: #3cd5dd; }
.value-card-text { position: absolute; inset: 0; z-index: 2; padding: 30px; color: white; display: flex; flex-direction: column; align-items: center; justify-content: center; }
.core-value-bg { opacity: 1; }
.core-value-text-wrapper { opacity: 1; }
.core-value-text { font-size:var(--fs-32); font-weight: 700; text-transform: uppercase; letter-spacing: 2px; }
.value-card-content { opacity: 0; }
.value-number { font-size: var(--fs-36); font-weight: 700; color: white; opacity: 0.3; margin-bottom: 10px; display:none;}
.value-title { font-size: var(--fs-32); font-weight: 700; color: white; margin-bottom: 12px; }
.value-desc { font-size: var(--fs-20); color: white; line-height: 1.5; opacity: 0.8; word-break:keep-all; }
@media (max-width: 1100px) {
    .values-grid { grid-template-columns:repeat(5, 1fr); gap:0;}
}
@media (max-width: 768px) {
    .values-section { min-height: auto;  padding:50px 2vmin; }
    .values-container { min-height: auto;}
    .values-grid { display:flex; flex-flow:column wrap; gap: 1vmin; }
    .core-value-center{display:none;}
    .value-card{height:130px; aspect-ratio: unset; opacity:1}
    .value-card-bg{ border-radius: 20px;}
    .values-section { padding:0; }
    .values-header{ margin-bottom: 0px; }
    .value-title{font-size:var(--fs-24);}
    .value-desc{font-size:var(--fs-16);}
}

/* Strategy Section - Image Cards */
.strategy-section { padding: 12vmin 20px 15vmin; background: #f8f9fa; }
.strategy-container { max-width: 1400px; margin: 0 auto; }
.strategy-header { text-align: center;}
.strategy-label  { font-size: var(--fs-16); font-weight: 700; letter-spacing: 3px; text-transform: uppercase; color:#bfbfbf;}
.strategy-title { font-size: clamp(36px, 5vw, 52px); font-weight: 700; color: #222; }
.strategy-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 30px; }
.strategy-card { position: relative; height: 400px; border-radius: 16px; overflow: hidden; cursor: pointer; transition: transform 0.4s ease; }
.strategy-card:hover { transform: scale(1.02); }
.strategy-bg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; transition: transform 0.4s ease; }
.strategy-card:hover .strategy-bg { transform: scale(1.1); }
.strategy-card:nth-child(1) .strategy-bg { background-image: url('../img/content/sub/strategy_img1.jpg'); }
.strategy-card:nth-child(2) .strategy-bg { background-image: url('../img/content/sub/strategy_img2.jpg'); }
.strategy-card:nth-child(3) .strategy-bg { background-image: url('../img/content/sub/strategy_img3.jpg'); }
.strategy-card:nth-child(4) .strategy-bg { background-image: url('../img/content/sub/strategy_img4.jpg'); }
.strategy-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: linear-gradient(to top, rgb(0 0 0 / 95%) 0%, rgb(0 0 0 / 10%) 100%); display: flex; flex-direction: column; justify-content: flex-end; padding: 40px; color: white; }
.strategy-number { font-size: 14px; font-weight: 700; margin-bottom: 16px; opacity: 0.9; }
.strategy-card-title { font-size: var(--fs-26); font-weight: 700; margin-bottom: 12px; }
.strategy-card-desc { font-size: 14px; line-height: 1.6; opacity: 0.5; }
@media (max-width: 768px) {
    .strategy-grid { grid-template-columns: 1fr; gap:8px;}
    .strategy-card{height:200px;}
    .strategy-section { padding:50px 2vmin; }
    .strategy-header { margin-bottom: 20px; }
}
@media (min-width: 1200px) {
    .strategy-grid { grid-template-columns: repeat(2, 1fr); }
}

/* sub 87 연혁 */
.story-clock{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 4; pointer-events: none;}
.story-clock svg{display: block;}
.clock-tick{stroke: #fff; opacity: 0;}

.tl-section{background: #fff;}
.tl-wrap{position: relative; display: flex; max-width: 1400px; margin: 0 auto;}

.tl-left{width: 45%; height: 100vh; flex-shrink: 0;}
.tl-left-cont{position: absolute; left: 0; top: 0; width: 100%; height: 100%; padding-top: 15vh; opacity: 0; transition: opacity 0.6s ease;}
.tl-left-cont.is-active{opacity: 1;}
.tl-left-desc{overflow: hidden; margin-bottom: 8px; }
.tl-left-desc span{display: inline-block; transform: translateY(100%); transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);}
.tl-left-cont.is-active .tl-left-desc span{transform: translateY(0);}
.tl-left-era{font-size:var(--fs-18); font-weight: 700; color: var(--primary);}
.tl-left-range{font-size:var(--fs-18); font-weight: 700; color: #333; margin-left: 16px;}
.tl-left-num{overflow: hidden; line-height: 1; margin-bottom: 24px;}
.tl-left-num span{display: inline-block; font-size: 9rem; font-weight: 900; color: #111; font-family: 'Pretendard', sans-serif; transform: translateY(100%); transition: transform 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.15s;}
.tl-left-cont.is-active .tl-left-num span{transform: translateY(0);}
.tl-left-img{position: relative; /*width: 85%;*/ padding-top: 56%; overflow: hidden;}
.tl-left-img::before{content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: #fff; z-index: 4; transition: height 0.8s cubic-bezier(0.16, 1, 0.3, 1) 0.2s;}
.tl-left-cont.is-active .tl-left-img::before{height: 0;}
.tl-left-img img{position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 0.4s ease;}
.tl-left-img img.is-show{opacity: 1;}

.tl-right{width: 55%; padding-left: 80px; padding-top: 100vh;}
.tl-right-era{position: relative; width: 100%; padding-top: 80px;}
.tl-right-era:last-child{margin-bottom: 7vh;}
.tl-right-era + .tl-right-era{margin-top: 100vh;}
.tl-entry{display: flex; align-items: flex-start; gap: 40px;}
.tl-entry + .tl-entry{margin-top: 48px;}
.tl-entry-year{flex-shrink: 0; font-size:var(--fs-32); font-weight: 800; color: #111; min-width: 80px; }
.tl-entry ul{list-style: none; padding: 0; border-top: 1px solid #ddd; padding-top: 16px; margin-top:16px; flex: 1;}
.tl-entry li{font-size: 1rem; color: #555; padding: 4px 0 4px 16px; position: relative; line-height: 1.7; font-size:var(--fs-20);}
.tl-entry li::before{content: '·'; position: absolute; left: 0; color: #999; font-weight: bold;}

/* sub 88 CI */
.ci-hero{text-align:center; margin-top:4vmin;}
.ci-desc{line-height:1.6; margin-top:2vmin;font-size:var(--fs-24);font-weight:500;}
.ci-section{background: #fff; margin-top:3vmin;}
.ci-inner{max-width: 1400px; margin: 0 auto;}
.ci-block{margin-bottom: 100px;}
.ci-header{text-align: center; margin-bottom: 60px;}
.ci-header h3{font-size: var(--fs-36); font-weight: 800; color: #222; line-height: 1.4; margin-bottom: 12px;}
.ci-header p{font-size: var(--fs-16); color: #888; line-height: 1.7; word-break: keep-all;}
.ci-main-logo{border: 1px solid #e5e5e5; border-radius: 16px; padding:8vmin; display: flex; align-items: center; justify-content: center; margin-bottom:16px;}
.ci-main-logo img{max-width: 280px; width: 100%; height: auto;}
.ci-name-row{display: flex; border: 1px solid #e5e5e5; border-radius: 12px; margin-bottom: 24px;}
.ci-name-cell{flex:1; display: flex; align-items: center; justify-content: center; padding:3vmin 0;}
.ci-name-cell + .ci-name-cell{border-left: 1px solid #e5e5e5;}
.ci-name-cell img{max-height: 40px; height: auto; width: auto;}
.ci-down-wrap{display: flex; justify-content: center; gap: 16px; margin:2vmin 0 6vmin;}
.ci-down-btn{display: inline-flex; align-items: center; gap: 8px; border: 1px solid #2c2c2c; border-radius: 100px; padding:2vmin 20px; font-size: var(--fs-18); color: #2c2c2c; text-decoration: none;}
.ci-label{font-size: var(--fs-14); font-weight: 500; color: #999; text-transform: uppercase; letter-spacing: 0.1em; text-align: center; margin-bottom: 8px;}
.ci-con-tit{text-align:center; margin-bottom:3vmin;}
.ci-combo-grid{display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px; margin-bottom: 24px;}
.ci-combo-box{border: 1px solid #e5e5e5; border-radius: 12px; padding: 32px 24px; display: flex; align-items: center; justify-content: center; gap: 24px;}
.ci-combo-box img{max-height: 80px; height: auto; width: auto;}
.ci-combo-box.ci4 img{width:300px;}
.ci-color-grid{ gap: 16px;}
.ci-color-card{border-radius: 12px; overflow: hidden;border: 1px solid #ddd;}
.ci-color-swatch{height: 180px; text-align:center; align-content:center; border-radius: 12px 12px 0 0;}
.ci-color-info{padding: 16px;border-top: none;border-radius: 0 0 16px 16px; border-top: 1px solid #ddd;}
.ci-color-name{font-size: var(--fs-18); font-weight: 700; color: #222; margin-bottom: 8px;}
.ci-color-code{font-size: var(--fs-16); color: #999; line-height: 1.5;}
@media (max-width:1400px){
	.ci-inner{width:95%;}
}
@media(max-width:768px){
	.ci-main-logo{padding: 40px 20px;}
	.ci-name-row{padding:0 20px;}
	.ci-desc{line-height:1.4}
	.ci-desc p{display:inline;}
	.ci-down-wrap{gap:0}
	.ci-color-grid{grid-template-columns: 1fr;gap:4px;}
	.ci-color-card{display:flex;}
	.ci-color-swatch{height:100%; width:100%; flex:0 0 50%;border:1px solid #ececec;}
	.ci-color-swatch>img{width:80%;}
	.ci-color-info p span{display:block}
	.ci-name-row{grid-template-columns: 1fr;}
	.ci-name-cell + .ci-name-cell{border-left: none; border-top: 1px solid #e5e5e5;}
	.ci-combo-grid{grid-template-columns: 1fr;}
	
}

/* sub 89 조직도 */
.org-chart-section{text-align:center; margin-top:4vmin;}
.gray-bg{background: #fbfcfe; border: 1px solid #e7edf3; border-radius: 20px; margin:2vmin 0 3vmin; padding:5vmin; text-align:center; align-content:center; width: 100%; position: relative; overflow: hidden;}
.org-chart-section .gray-bg{margin:3vmin 0;}
.org-chart-section~.content_box .content_sbox h5{font:600 var(--fs-28) var(--paper); margin-bottom:16px}
.org-chart-section~.content_box+.content_box{margin-top:4vmin}

/* sub 91 찾아오시는 길 */
.location-section{background: #fff; padding:3vmin 0;}
.location-inner{max-width: 1400px; margin: 0 auto;}
.location-header{text-align: center; margin-bottom: 60px;}
.location-header h3{font-size: var(--fs-36); font-weight: 800; color: #222; line-height: 1.4; margin-bottom: 12px;}
.location-header p{font-size: var(--fs-16); color: #888; line-height: 1.7; word-break: keep-all;}
.location-map{width: 100%; height: 450px; border-radius: 16px; overflow: hidden; border: 1px solid #e5e5e5; margin-bottom: 48px;}
.location-map iframe{width: 100%; height: 100%; border: 0;}
.location-info{display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px;}
.location-info-item{padding: 32px; background: #f8f9fa; border-radius: 12px;}
.location-info-item h5{font-size: var(--fs-20); font-weight: 700; color: #222; margin-bottom: 16px;}
.location-info-item p{font-size: var(--fs-18); color: #666; line-height: 1.4; word-break: keep-all;}

.traffic-wrap{margin-top:4vmin;}
@media(max-width:768px){
	.location-section{padding:5vmin 20px;}
	.location-map{height: 300px;}
	.location-info{grid-template-columns: 1fr; gap: 16px;}
	.location-info-item{padding: 24px;}
}


/* 스크롤 트리거 공통 */
/* 타이틀 슬라이드업 */
.ani-title{margin-bottom:3vmin;}
.scroll-title-wrap {overflow: hidden; display: block; }
.scroll-title-item {display: block; transform: translateY(110%); will-change: transform; font-weight:400; font-family:var(--paper); line-height: 1.35;}
.scroll-title-item.fs44{font-size:var(--fs-44);}
.scroll-title-item.fs64{font-size:var(--fs-64);}
.scroll-title-item.fs72{font-size:var(--fs-72);}
.scroll-title-item em{font-style: 700; color: #2196F3;}

/* 텍스트 색상 변경 */
.scroll-color-wrap {/*display: inline-block;*/ -webkit-background-clip: text !important; -webkit-text-fill-color: transparent; background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(161, 160, 160, 1) 0%); will-change: background; }

/* 텍스트 Skew */
.skew-title-wrap {overflow: hidden; display: block;}
.skew-stagger-item {display: inline-block; will-change: transform, opacity;}

/* sub hero */
.sub-hero{position: relative;}
.sub-hero-pin{position: relative; height: 100vh; overflow: hidden;}
.sub-hero-content{position: absolute; top: 0; left: 0; width: 100%; z-index: 2; padding: 8vmin 0 4vmin; max-width: 1200px; margin: 0 auto; right: 0; text-align:center;}
.sub-hero-label{font-size:var(--fs-20); text-transform: uppercase; color: #2196F3; font-weight: 600; margin-bottom: 16px;}
.sub-hero-title{color: #222; word-break: keep-all; margin-bottom: 24px;}
.sub-hero-title .scroll-title-item {line-height:1.1;}
/*.sub-hero-title .gradient{background: linear-gradient(135deg, #2196F3, #9C27B0); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}*/
.sub-hero-desc{font-size: var(--fs-26); color: rgba(255,255,255,0.75); line-height: 1.6; margin-top: 24px; opacity: 0; transform: translateY(20px);}
.sub-hero-desc b{color:#fff;}
.sub-hero-img-wrap{position: absolute; left: 50%; transform: translateX(-50%); overflow: hidden; height: 500px;}
.sub-hero-img-wrap img{width: 100%; height: 100%; object-fit: cover;}
.sub-hero-img2{position:absolute; inset:0; clip-path:inset(100% 0 0 0); z-index:1;}
.sub-hero-img2 img{width:100%; height:100%; object-fit:cover;}
.sub-hero-overlay{position: absolute; inset: 0; z-index:1; background: rgba(0,0,0,0); pointer-events: none;}
.sub-hero-text2{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 3; text-align: center; opacity: 0; pointer-events: none;}
.sub-hero-text2 h2{font:400 var(--fs-64) var(--paper); line-height: 1.35; color: #fff; word-break: keep-all;}
.sub-hero-text2 p{font-size: var(--fs-28); color: rgba(255,255,255,0.7); margin-top: 16px; line-height: 1.6;}
.sub-hero-text2 p b{color:#fff;}
.sub-hero-next{position: relative; z-index: 10; margin-top: -40vh; clip-path: inset(100% 0 0 0);}
.sub-hero .visual_scroll{position:absolute; left:50%; bottom:10%;}
@media (max-width:1024px){
	.sub-hero-text2{width:98%;}
}