/* =========================
   STUDIO CORE
========================= */

.studio-core{
  padding:90px 0;
  background:#0f1115;
  color:#fff;
  margin-bottom:100px;
}

.studio-core-inner{
  display:grid;
  grid-template-columns:1.2fr 1fr;
  gap:60px;
  align-items:center;
}

.core-title{
  font-size:48px;
  font-weight:800;
  line-height:1.2;
}

.core-title span{ color:#00a67e; }

.core-desc{
  margin-top:20px;
  font-size:18px;
  color:#aaa;
}

/* =========================
   HERO SPLIT (GRAPH)
========================= */

.wk-hero--split{
  height:auto !important;
  display:block !important;
  padding:80px 0;
  background:linear-gradient(135deg,#2d3e6b,#3b4f8a);
  color:#fff;
}

.wk-hero-inner{
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:60px;
}

.wk-hero-graph{
  display:flex;
  flex-direction:column;
  gap:20px;
}

.hero-stat{
  position:relative;
  height:36px;
  background:rgba(255,255,255,.08);
  border-radius:30px;
  overflow:hidden;
}

.hero-bar{
  position:absolute;
  inset:0 auto 0 0;
  width:0;
  background:linear-gradient(90deg,#5A67FF,#00a67e);
  transition:width 1.6s cubic-bezier(.2,.8,.2,1);
}

.hero-label,
.hero-number{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
}

.hero-label{ left:20px; font-size:14px; }
.hero-number{ right:20px; font-weight:700; }

/* =========================
   FEATURED
========================= */

.featured-img{
  position:relative;
  overflow:hidden;
}

.featured-img img{
  width:100%;
  height:280px;   /* 🔥 220~280px 추천 */
  object-fit:cover;
}

.wk-pf-card{
  position:relative;
  overflow:hidden;
  border-radius:20px;
}

.wk-pf-card .overlay-half{
  bottom:-50%;
}

.wk-pf-card:hover .overlay-half{
  bottom:0;
} 
/* =========================
   PORTFOLIO 카드 그리드
========================= */

.pf-section{
padding:90px 20px;
background:#f4f6fb;
}

.pf-wrap{
max-width:1200px;
margin:0 auto;
}

/* grid */

.pf-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:24px;
}

/* card */

.pf-card{
position:relative;
border-radius:18px;
overflow:hidden;
background:#000;
transition:.35s;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

.pf-card:hover{
transform:translateY(-8px);
box-shadow:0 20px 45px rgba(0,0,0,0.18);
}

/* image */

.pf-img{
position:relative;
height:240px;
overflow:hidden;
}

.pf-img img{
width:100%;
height:100%;
object-fit:cover;
transition:transform .6s ease;
}

.pf-card:hover img{
transform:scale(1.1);
}

/* overlay */

.pf-overlay{
position:absolute;
inset:0;

display:flex;
flex-direction:column;
align-items:center;
justify-content:center;

background:rgba(0,0,0,0.45);
backdrop-filter:blur(4px);

opacity:0;
transition:.35s;
}

.pf-card:hover .pf-overlay{
opacity:1;
}

/* title */

.pf-overlay h3{
color:#fff;
font-size:18px;
margin-bottom:14px;
text-align:center;
}

/* button */

.pf-btn{
display:inline-block;
padding:10px 22px;
border-radius:30px;
background:linear-gradient(135deg,#6b7cff,#8b6bff);
color:#fff;
text-decoration:none;
font-weight:600;
font-size:14px;
transition:.3s;
}

.pf-btn:hover{
transform:scale(1.08);
box-shadow:0 10px 25px rgba(0,0,0,0.25);
}

/* mobile */

@media(max-width:900px){

.pf-grid{
grid-template-columns:repeat(2,1fr);
gap:18px;
}

.pf-img{
height:180px;
}

.pf-overlay{
opacity:1;
background:rgba(0,0,0,0.35);
}

}

/* =========================
   STATS
========================= */

.wk-stats{
  position:relative;
  background:url('/main/img/stocksnap-girl.jpg') center/cover no-repeat;
  padding:120px 0;
  color:#fff;
}

.wk-stats-overlay{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.65);
}

.wk-stats-inner{
  position:relative;
  z-index:2;
  text-align:center;
}

.wk-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:40px;
  margin-top:60px;
}

.wk-stat-number{
  font-size:48px;
  font-weight:700;
  color:#1dbf73;
}

/* =========================
   MAINTENANCE
========================= */

.maintenance-inquiry{
  position:relative;
  overflow:hidden;
  padding:140px 0;
}

.bg-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

.maintenance-inquiry::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.55);
}

.maintenance-inquiry .wk-wrap{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:60px;
}

.maintenance-inquiry .inquiry-box p{
  margin-bottom:35px;   /* 🔥 30~40px 추천 */
}

/* =========================
   FINAL CTA
========================= */

.final-cta{
  padding:100px 0 100px 0;
  text-align:center;
}

.final-cta__title{
  font-size:42px;
  font-weight:300;
}

.final-cta__title strong{
  font-weight:700;
  color:#2563EB;
}

.final-cta__sub{
  font-size:18px;
  opacity:.8;
  margin-bottom:35px;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:1024px){
  .studio-core-inner,
  .wk-hero-inner{
    grid-template-columns:1fr;
    text-align:center;
  }
}

@media(max-width:768px){

  .wk-pf-track{ gap:0; }
  .wk-pf-card{ flex:0 0 100%; }

  .maintenance-inquiry .wk-wrap{
    grid-template-columns:1fr;
  }
}
/* capability 카드 */
.studio-core-right{
  display:grid;
  gap:20px;
}

.core-capability{
  display:flex;
  align-items:center;
  gap:15px;
  padding:20px 25px;
  border-radius:14px;
  background:rgba(255,255,255,0.05);
  border:1px solid rgba(255,255,255,0.08);
  font-weight:600;
  transition:.3s;
  color:#fff;
}

.core-capability:hover{
  background:#00a67e;
  transform:translateY(-5px);
}

.cap-icon{
  font-size:24px;
}

.wk-pf-img{
  width:100%;
  height:320px;
  object-fit:cover;
  display:block;
  border-radius:16px;
}

.title-box{
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:16px 36px;
  border-radius:5px;
  background:rgba(255,255,255,0.15);
  backdrop-filter:blur(6px);
  color:#fff;
  text-decoration:none;
  font-weight:600;
  font-size:20px;
  transition:.3s;
}

.title-box:hover{
  background:rgba(255,255,255,0.25);
  transform:translateY(-3px);
}

.wk-stat-icon{
  width:90px;
  height:90px;
  color:#b3b3b4;
  transition:.3s ease;
}

.wk-stat-item{
  display:flex;
  flex-direction:column;
  align-items:center;
}

.wk-stat-item:hover .wk-stat-icon{
  color:#3eaffe;
}

.inquiry-box{
  background:rgba(255,255,255,0.12);
  backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,0.2);
  border-radius:18px;
  padding:60px 40px;
  text-align:center;
  transition:.4s;
  color:#fff;
}

.inquiry-box:hover{
  transform:translateY(-10px);
}

.wk-hero__content h2{
  margin-bottom:30px;   /* 🔥 20~40px 사이 조절 */
}
.statement-desc{
  margin-bottom:30px;   /* 🔥 20~40px 사이에서 조절 */
}