/* ════════════════════════════════════════════
   about.css — About FLEX 전용
════════════════════════════════════════════ */

/* ── About FLEX ── */

/* ── Philosophy PIN ── */
#philosophy { position:relative; }
.phil-pin-wrap { display:flex; align-items:flex-start; margin-top:0; }

.phil-pin-img {
  width:50%; flex-shrink:0;
  position:sticky;
  top:0;
  height:100vh;
  overflow:hidden;
  border-right:1px solid var(--gb);
  background:var(--dark);
}
.phil-img-inner { position:absolute; inset:0; overflow:hidden; }
.phil-img-real {
  position:absolute; inset:0;
  width:100%; height:100%;
  object-fit:cover; object-position:top center;
  display:block;
  transition:opacity .55s ease;
}

.phil-pin-right { width:50%; flex-shrink:0; }

.phil-panel {
  min-height:100vh;
  padding:0 80px;
  display:flex; flex-direction:column; justify-content:center;
  border-bottom:1px solid var(--gb);
}
.phil-panel:last-child { border-bottom:none; }

.phil-panel-num {
  font-family:'DM Sans',sans-serif; font-size:10px;
  letter-spacing:.24em; color:var(--gold);
  margin-bottom:40px;
  display:flex; align-items:center; gap:20px;
}
.phil-panel-num::before { content:''; width:40px; height:1px; background:var(--gold); opacity:.45; }

.phil-panel-en {
  font-family:'Marcellus','Pretendard',sans-serif;
  font-size:clamp(24px,2.8vw,38px);
  letter-spacing:.02em; line-height:1.2;
  color:var(--dark); text-transform:uppercase;
  margin-bottom:40px;
}
.phil-panel.is-intro .phil-panel-en {
  font-size:clamp(56px,7.5vw,96px);
  line-height:.95; margin-bottom:56px;
}
.phil-panel-ko {
  font-size:clamp(16px,1.3vw,16px);
  font-weight:400; line-height:2.4;
  color:rgba(60,44,28,.65);
  letter-spacing:.02em; max-width:380px;
}

/* ── SPACE 슬라이더 ── */
#space { background:var(--off); border-top:1px solid var(--gb); }
.space-intro {
  display:grid; grid-template-columns:1fr 1fr;
  padding:100px 56px;
  gap:0;
}
.space-intro-h { font-family:'Marcellus','Pretendard',sans-serif; font-size:clamp(40px,5vw,64px); letter-spacing:.04em; line-height:1.1; color:var(--dark); text-transform:uppercase; }
.space-intro-right { padding-left:56px; border-left:1px solid var(--gb); }
.space-intro-txt { font-size:16px; font-weight:400; line-height:2.2; color:rgba(60,44,28,.6); letter-spacing:.01em; }

/* ── sp 슬라이더 (space_long) ── */
.sp-wrap {
  background:var(--cream);
  width:80%; margin:0 auto;
  border-left:1px solid var(--gb);
  border-right:1px solid var(--gb);
}
.sp-outer { position:relative; overflow:hidden; }
.sp-track {
  display:flex;
  transition:transform .8s cubic-bezier(.25,.46,.45,.94);
}
.sp-slide--wide {
  flex:0 0 100%; width:100%;
  background:#ede6da;
  overflow:hidden;
}
.sp-slide--wide img {
  width:100%; height:auto; display:block;
}
.sp-slide--duo {
  flex:0 0 100%; width:100%;
  display:grid; grid-template-columns:1fr 1fr;
  gap:4px;
}
.sp-slide--duo .sp-cell {
  overflow:hidden;
  aspect-ratio:2/3;
}
.sp-slide--duo .sp-cell img {
  width:100%; height:100%; object-fit:cover; display:block;
  transition:transform .5s cubic-bezier(.25,.46,.45,.94);
}
.sp-slide--duo .sp-cell:hover img { transform:scale(1.04); }
.sp-ctrl {
  display:flex; align-items:center; justify-content:space-between;
  width:100%;
  padding:16px 28px;
  border-top:1px solid var(--gb);
  background:var(--cream);
  box-sizing:border-box;
}
.sp-ctrl-left { display:flex; align-items:center; gap:20px; }
.sp-ctrl-btns { display:flex; gap:8px; }
.sp-ctrl-btn {
  width:40px; height:40px;
  border:1px solid var(--gb); background:none;
  cursor:pointer; color:var(--warm); font-size:16px;
  display:flex; align-items:center; justify-content:center;
  transition:border-color .2s, color .2s;
}
.sp-ctrl-btn:hover { border-color:var(--gold); color:var(--gold); }
.sp-count { font-family:'DM Sans',sans-serif; font-size:10px; letter-spacing:.14em; color:var(--warm); }
.sp-progress { flex:1; max-width:240px; height:1px; background:var(--gb); position:relative; overflow:hidden; }
.sp-progress-bar { position:absolute; left:0; top:0; bottom:0; background:var(--gold); transition:width .6s cubic-bezier(.25,.46,.45,.94); width:10%; }

@media(max-width:900px) {
  .space-intro { grid-template-columns:1fr; padding:64px 24px; gap:32px; }
  .space-intro-right { padding-left:0; border-left:none; border-top:1px solid var(--gb); padding-top:32px; }
  .sp-wrap { width:100%; }
  .sp-slide--wide { max-height:240px; }
  .sp-slide--duo { height:280px; gap:2px; }
  .sp-ctrl { padding:14px 16px; }
}

/* ── DOCTORS (서브페이지) ── */
#doctors { background:var(--cream); border-top:1px solid var(--gb); }
.doc-section-header { padding:100px 56px 64px; border-bottom:1px solid var(--gb); }
.doc-section-h { font-family:'Marcellus','Pretendard',sans-serif; font-size:clamp(28px,3.5vw,44px); letter-spacing:.04em; color:var(--dark); text-transform:uppercase; }
.doc-section-desc { margin-top:16px; font-size:16px; font-weight:400; line-height:2; color:rgba(60,44,28,.6); max-width:480px; letter-spacing:.01em; }
.doc-list {
  list-style:none;
  width:80%;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
}
.doc-item {
  display:grid;
  grid-template-columns:40% 1fr;
  align-items:stretch;
  border-right:1px solid var(--gb);
  overflow:hidden;
}
.doc-item:last-child { border-right:none; }
.doc-item:last-child { border-bottom:none; }
.doc-photo {
  overflow:hidden; background:var(--off);
}
.doc-photo img {
  width:100%; height:100%;
  object-fit:cover;
  object-position:bottom center;
  display:block;
  transition:transform .7s cubic-bezier(.25,.46,.45,.94);
}
.doc-item:hover .doc-photo img { transform:scale(1.04); }
.doc-photo-ph {
  width:100%; min-height:320px;
  background:linear-gradient(160deg,var(--off) 0%,#ddd4c4 100%);
  display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px;
}
.doc-photo-ph-icon { width:64px; height:64px; border-radius:50%; background:rgba(140,90,58,.08); display:flex; align-items:center; justify-content:center; color:rgba(140,90,58,.3); font-size:28px; }
.doc-photo-ph-txt  { font-size:9px; letter-spacing:.18em; color:rgba(140,90,58,.3); text-transform:uppercase; }
.doc-detail { padding:40px 32px; display:flex; flex-direction:column; justify-content:center; border-left:1px solid var(--gb); }
.doc-role    { font-size:9px; letter-spacing:.18em; color:var(--gold-h); margin-bottom:8px; text-transform:uppercase; font-family:'DM Sans',sans-serif; }
.doc-name-ko { font-family:'Pretendard',sans-serif; font-size:clamp(22px,2vw,28px); font-weight:400; letter-spacing:.04em; color:var(--dark); margin-bottom:4px; }
.doc-name-en { font-family:'Marcellus','Pretendard',sans-serif; font-size:16px; letter-spacing:.12em; color:var(--warm); margin-bottom:32px; }
.doc-tags    { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:32px; }
.doc-tag     { font-size:10px; font-weight:400; letter-spacing:.1em; color:var(--gold); border:1px solid rgba(140,90,58,.35); padding:4px 12px; }
.doc-divider { width:100%; height:1px; background:var(--gb); margin-bottom:32px; }
.doc-career-label { font-size:9px; letter-spacing:.18em; color:var(--gold); margin-bottom:16px; text-transform:uppercase; font-family:'DM Sans',sans-serif; }
.doc-career { list-style:none; }
.doc-career li {
  font-size:14px; font-weight:400; line-height:1.9;
  color:rgba(60,44,28,.6); letter-spacing:.01em;
  padding:5px 0; border-bottom:1px solid var(--gbs);
  display:flex; align-items:flex-start; gap:10px;
}
.doc-career li::before { content:'·'; color:var(--gold); flex-shrink:0; font-size:16px; line-height:1; }

/* ── ABOUT HERO ── */
#about-hero { padding-top:140px; background:var(--cream); }
.about-hero-inner { padding:0 56px; }
.about-hero-breadcrumb { font-size:9px; letter-spacing:.28em; color:var(--warm); text-transform:uppercase; margin-bottom:32px; display:flex; align-items:center; gap:16px; }
.about-hero-breadcrumb a { color:var(--warm); text-decoration:none; transition:color .2s; }
.about-hero-breadcrumb a:hover { color:var(--gold); }
.about-hero-breadcrumb span { color:rgba(140,90,58,.35); }
.about-hero-title { font-family:'Marcellus','Pretendard',sans-serif; font-size:clamp(40px,6vw,80px); letter-spacing:.04em; line-height:1; color:var(--dark); text-transform:uppercase; margin-bottom:64px; }

/* ABOUT 서브네비 — sticky */
/* PC: sticky → fixed 전환 (JS가 .is-fixed 클래스 부여) */
.about-subnav {
  display:flex;
  border-top:1px solid var(--gb);
  border-bottom:1px solid var(--gb);
  position:sticky;
  top:60px;
  z-index:200;
  background:rgba(245,240,232,.96);
  backdrop-filter:blur(16px);
  transition:top .5s;
}
.about-subnav a { display:flex; align-items:center; padding:18px 32px; font-family:'DM Sans',sans-serif; font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:var(--warm); text-decoration:none; border-right:1px solid var(--gb); transition:color .25s; position:relative; }
.about-subnav a:last-child { border-right:none; }
.about-subnav a::after { content:''; position:absolute; bottom:0; left:0; right:0; height:1px; background:var(--gold); transform:scaleX(0); transition:transform .35s cubic-bezier(.77,0,.175,1); }
.about-subnav a:hover, .about-subnav a.active { color:var(--gold); }
.about-subnav a:hover::after, .about-subnav a.active::after { transform:scaleX(1); }


/* ── 서브페이지 공통 히어로 (programs, board, reservation 등) ── */
.sub-hero { padding-top:140px; background:var(--cream); }
.sub-hero-inner { padding:0 56px; }
.sub-breadcrumb { font-size:9px; letter-spacing:.28em; color:var(--warm); text-transform:uppercase; margin-bottom:32px; display:flex; align-items:center; gap:16px; }
.sub-breadcrumb a { color:var(--warm); text-decoration:none; transition:color .2s; }
.sub-breadcrumb a:hover { color:var(--gold); }
.sub-breadcrumb span { color:rgba(140,90,58,.35); }
.sub-page-title { font-family:'Marcellus','Pretendard',sans-serif; font-size:clamp(40px,6vw,80px); letter-spacing:.04em; line-height:1; color:var(--dark); text-transform:uppercase; margin-bottom:64px; }
.sub-page-border { border-top:1px solid var(--gb); border-bottom:1px solid var(--gb); }

/* 준비중 안내 */
.sub-coming { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:40vh; gap:16px; padding:80px 56px; border-top:1px solid var(--gb); }
.sub-coming-label { font-size:9px; letter-spacing:.28em; color:var(--gold); text-transform:uppercase; }
.sub-coming-txt { font-family:'Marcellus','Pretendard',sans-serif; font-size:clamp(18px,2vw,24px); letter-spacing:.06em; color:var(--warm); }

@media(max-width:900px) {
  /* about hero */
  .about-hero-inner { padding:0 24px; }
  .about-hero-title { margin-bottom:40px; }
  .about-subnav {
    top:58px;
    display:grid;
    grid-template-columns:1fr 1fr;
    overflow:visible;
  }
  .about-subnav a {
    padding:14px 16px;
    border-right:1px solid var(--gb);
    border-bottom:1px solid var(--gb);
    justify-content:center;
    text-align:center;
    white-space:normal;
    font-size:9px;
  }
  .about-subnav a:nth-child(2n) { border-right:none; }
  .about-subnav a:nth-last-child(-n+2) { border-bottom:none; }
  .sub-hero-inner { padding:0 24px; }
  .sub-page-title { margin-bottom:40px; }

  /* philosophy pin */
  .phil-pin-wrap  { flex-direction:column; }
  .phil-pin-img   { display:none; }
  .phil-pin-right { width:100%; }
  .phil-panel     { min-height:auto; padding:48px 24px; display:flex; flex-direction:column; }
  .phil-panel-ko  { line-height:1.6; }

  /* space */
  .space-intro { grid-template-columns:1fr; padding:64px 24px; gap:32px; }
  .space-intro-right { padding-left:0; border-left:none; border-top:1px solid var(--gb); padding-top:32px; }
  .space-tabs { overflow-x:auto; scrollbar-width:none; }
  .space-tabs::-webkit-scrollbar { display:none; }
  .space-tab-btn { padding:16px 24px; white-space:nowrap; }
  .space-ctrl-bar { padding:16px 24px; flex-wrap:wrap; gap:12px; }
  .space-progress { max-width:100%; width:100%; order:3; }

  /* doctors */
  .doc-section-header { padding:64px 24px 48px; }
  .doc-list { width:100%; grid-template-columns:1fr; }
  .doc-item { grid-template-columns:1fr; border-right:none; border-bottom:1px solid var(--gb); }
  .doc-item:last-child { border-bottom:none; }
  .doc-photo { min-height:240px; }
  .doc-detail { padding:32px 24px; border-left:none; border-top:1px solid var(--gb); }
  .ms-col:first-child .ms-card-list { grid-template-columns:1fr; }
}


/* ── phil-panel 도입 애니메이션 ── */
.phil-panel-num,
.phil-panel-en,
.phil-panel-ko {
  opacity:0;
  transform:translateY(20px);
  transition:opacity .7s cubic-bezier(.25,.46,.45,.94),
             transform .7s cubic-bezier(.25,.46,.45,.94);
}
.phil-panel.in-view .phil-panel-num { opacity:1; transform:translateY(0); transition-delay:.0s; }
.phil-panel.in-view .phil-panel-en  { opacity:1; transform:translateY(0); transition-delay:.12s; }
.phil-panel.in-view .phil-panel-ko  { opacity:1; transform:translateY(0); transition-delay:.26s; }

/* ── Space 슬라이더 80% 너비 ── */
.space-slider-section {
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:0 0 0 0;
  background:var(--off);
}
.space-slider-inner {
  width:80%;
  border:1px solid var(--gb);
  border-top:none;
  overflow:hidden;
}
.space-tabs-inner {
  width:80%;
  margin:0 auto;
}

@media(max-width:900px) {
  .space-slider-inner,
  .space-tabs-inner { width:100%; }
}

/* ── MEDICAL SYSTEMS 2열 카드 리스트 ── */
#medical-systems { background:var(--dark); border-top:1px solid rgba(140,90,58,.15); }

.ms-head {
  padding:80px 56px 56px;
  border-bottom:1px solid rgba(140,90,58,.15);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0 80px;
  align-items:end;
}
.ms-head-label {
  font-size:9px; letter-spacing:.28em; text-transform:uppercase;
  color:rgba(140,90,58,.7); margin-bottom:16px; display:block;
  grid-column:1 / -1;
}
.ms-h {
  font-family:'Marcellus','Pretendard',sans-serif;
  font-size:clamp(28px,3.5vw,44px);
  letter-spacing:.04em; line-height:1.15;
  color:var(--cream); text-transform:uppercase;
  text-align:left;
}
.ms-desc {
  font-size:16px; font-weight:400; line-height:2;
  color:rgba(210,195,175,.5); letter-spacing:.01em;
  text-align:right;
  padding-left:40px;
  border-left:1px solid rgba(140,90,58,.18);
}
.ms-desc em { color:rgba(210,195,175,.8); font-style:normal; }

.ms-cols {
  display:grid;
  grid-template-columns:2fr 1fr;
  border-top:1px solid rgba(140,90,58,.15);
}
.ms-col {
  padding:48px 56px 64px;
}
.ms-col:first-child {
  border-right:1px solid rgba(140,90,58,.15);
}
.ms-col:first-child .ms-card-list {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
}
.ms-col-label {
  font-size:9px; letter-spacing:.28em; text-transform:uppercase;
  color:rgba(140,90,58,.65);
  margin-bottom:24px; display:block;
  padding-bottom:16px;
  border-bottom:1px solid rgba(140,90,58,.12);
}

.ms-card-list {
  list-style:none;
  display:flex; flex-direction:column; gap:2px;
}
.ms-card-list li {
  padding:10px 16px;
  font-family:'Pretendard',sans-serif;
  font-size:13.5px; font-weight:400;
  letter-spacing:.02em;
  color:var(--cream);
  border-bottom:1px solid rgba(140,90,58,.08);
  transition:color .2s, background .2s, padding-left .2s;
  cursor:default;
}
.ms-card-list li:last-child { border-bottom:none; }
.ms-card-list li:hover {
  color:#fff;
  background:rgba(140,90,58,.06);
  padding-left:22px;
}

@media(max-width:900px) {
  .ms-head { padding:56px 24px 40px; grid-template-columns:1fr; gap:24px; }
  .ms-head-label { grid-column:1; }
  .ms-desc { padding-left:0; border-left:none; border-top:1px solid rgba(140,90,58,.18); padding-top:24px; }
  .ms-cols { grid-template-columns:1fr; }
  .ms-col { padding:40px 24px 48px; }
  .ms-col:first-child { border-right:none; border-bottom:1px solid rgba(140,90,58,.15); }
}


/* ────────────────────────────────────
   DOCTORS — 약력/논문/갤러리 추가 CSS
──────────────────────────────────── */

/* 약력 더보기 버튼 */
.doc-career-preview { margin-bottom:16px; }
.doc-career-more {
  display:inline-flex; align-items:center; gap:8px;
  font-family:'DM Sans',sans-serif;
  font-size:10px; letter-spacing:.12em; text-transform:uppercase;
  color:var(--warm); background:none; border:none;
  padding:0; cursor:pointer; margin-top:8px;
  transition:color .2s;
}
.doc-career-more:hover { color:var(--gold); }
.doc-career-more i { font-size:16.5px; }

/* 약력 팝업 모달 */
.career-modal {
  position:fixed; inset:0; z-index:500;
  display:flex; align-items:center; justify-content:center;
  opacity:0; pointer-events:none;
  transition:opacity .3s ease;
}
.career-modal.open { opacity:1; pointer-events:all; }
.career-modal-backdrop {
  position:absolute; inset:0;
  background:rgba(30,20,10,.55);
}
.career-modal-box {
  position:relative; z-index:1;
  background:var(--cream);
  width:min(560px, 90vw);
  max-height:80vh; overflow-y:auto;
  padding:56px 48px;
  transform:translateY(24px);
  transition:transform .35s cubic-bezier(.25,.46,.45,.94);
}
.career-modal.open .career-modal-box { transform:translateY(0); }
.career-modal-close {
  position:absolute; top:20px; right:20px;
  width:36px; height:36px;
  background:none; border:1px solid var(--gb);
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; color:var(--warm); font-size:18px;
  transition:border-color .2s, color .2s;
}
.career-modal-close:hover { border-color:var(--dark); color:var(--dark); }
.career-modal-role { font-size:9px; letter-spacing:.18em; color:var(--gold); text-transform:uppercase; margin-bottom:8px; font-family:'DM Sans',sans-serif; }
.career-modal-name { font-family:'Marcellus','Pretendard',sans-serif; font-size:clamp(22px,2.5vw,30px); letter-spacing:.04em; color:var(--dark); margin-bottom:4px; }
.career-modal-en { font-family:'Marcellus','Pretendard',sans-serif; font-size:16.5px; letter-spacing:.1em; color:var(--warm); margin-bottom:32px; }
.career-modal-divider { width:100%; height:1px; background:var(--gb); margin-bottom:24px; }
.career-modal-label { font-size:9px; letter-spacing:.18em; color:var(--gold); text-transform:uppercase; margin-bottom:16px; font-family:'DM Sans',sans-serif; }
.career-modal-list { list-style:none; }
.career-modal-list li {
  font-size:16.5px; font-weight:400; line-height:1.9;
  color:rgba(60,44,28,.7); letter-spacing:.01em;
  padding:8px 0; border-bottom:1px solid var(--gbs);
  display:flex; align-items:flex-start; gap:10px;
}
.career-modal-list li:last-child { border-bottom:none; }
.career-modal-list li::before { content:'·'; color:var(--gold); flex-shrink:0; font-size:16px; }

/* 학술활동 섹션 (원장리스트 하단) */
.doc-academic { border-top:1px solid var(--gb); background:var(--cream); }
.doc-academic-inner {
  width:80%; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr;
  gap:64px; padding:64px 40px 80px;
  border-left:1px solid var(--gb);
  border-right:1px solid var(--gb);
}

/* 논문 목록 */
.doc-publications-wrap {
  max-height:320px; overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:var(--gb) transparent;
}
.doc-publications-wrap::-webkit-scrollbar { width:4px; }
.doc-publications-wrap::-webkit-scrollbar-thumb { background:var(--gb); border-radius:2px; }
.doc-publications { list-style:none; display:flex; flex-direction:column; }
.doc-publications li {
  display:flex; gap:16px; align-items:flex-start;
  font-size:11.5px; font-weight:400; line-height:1.8;
  color:rgba(60,44,28,.65); letter-spacing:.01em;
  padding:12px 0; border-bottom:1px solid var(--gbs);
}
.doc-publications li:last-child { border-bottom:none; }
.pub-num { font-family:'DM Sans',sans-serif; font-size:10px; letter-spacing:.08em; color:var(--gold); flex-shrink:0; padding-top:2px; min-width:20px; }
.pub-body em { font-style:normal; color:var(--gold-h); display:block; font-size:10.5px; margin-top:2px; }

/* 갤러리 슬라이더 */
.doc-gallery { margin-top:4px; overflow:hidden; }
.doc-gallery-track {
  display:flex;
  border:1px solid var(--gb);
  transition:transform .5s cubic-bezier(.25,.46,.45,.94);
  will-change:transform;
}
.doc-gallery-slide { flex-shrink:0; width:100%; }
.doc-gallery-slide img { width:100%; aspect-ratio:16/10; object-fit:cover; display:block; }
.doc-gallery-ctrl { display:flex; align-items:center; justify-content:space-between; padding:12px 0 0; }
.doc-gallery-btn {
  width:32px; height:32px;
  border:1px solid var(--gb); background:none; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  color:var(--warm); font-size:16px;
  transition:border-color .2s, color .2s;
}
.doc-gallery-btn:hover { border-color:var(--gold); color:var(--gold); }
.doc-gallery-count { font-family:'DM Sans',sans-serif; font-size:10px; letter-spacing:.12em; color:var(--warm); }

@media(max-width:900px) {
  .doc-academic-inner { width:100%; grid-template-columns:1fr; gap:40px; padding:48px 24px 64px; border-left:none; border-right:none; }
  .career-modal-box { padding:40px 24px; }
}

/* ════════════════════════════════
   기기 사진 슬라이더 (Medical Systems)
════════════════════════════════ */
.tech-slider-wrap {
  padding:0 56px 64px;
  position:relative;
}
.tech-slider {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:16px;
  transition:none;
}
.tech-slide { display:flex; flex-direction:column; gap:12px; }
.tech-slide-img {
  aspect-ratio:3/4;
  overflow:hidden;
  background:var(--off);
  position:relative;
}
.tech-slide-img img {
  width:100%; height:100%;
  object-fit:cover; display:block;
  transition:transform .5s cubic-bezier(.25,.46,.45,.94);
}
.tech-slide:hover .tech-slide-img img { transform:scale(1.04); }
.tech-slide-name { display:none; }

.tech-slide-overlay {
  position:absolute; bottom:0; left:0; right:0;
  padding:10px 12px 12px;
  background:linear-gradient(to top, rgba(26,17,10,.72) 0%, transparent 100%);
  font-family:'Pretendard',sans-serif;
  font-size:12px; font-weight:400; letter-spacing:.04em;
  color:rgba(245,240,232,.9); text-align:center;
  pointer-events:none;
}

/* 네비게이션 — PC에서는 숨김 (6개 전부 보임) */
.tech-slider-nav { display:none; }

/* ── 모바일 — 슬라이드형으로 전환 ── */
@media(max-width:900px) {
  .tech-slider-wrap { padding:0 24px 48px; overflow:hidden; }
  .tech-slider {
    grid-template-columns:repeat(6, calc(50% - 8px));
    gap:16px;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    transition:scroll .3s;
  }
  .tech-slider::-webkit-scrollbar { display:none; }
  .tech-slide { scroll-snap-align:start; min-width:calc(50% - 8px); }
  .tech-slider-nav {
    display:flex; align-items:center; justify-content:center;
    gap:16px; margin-top:24px;
  }
  .tech-prev, .tech-next {
    width:36px; height:36px;
    border:1px solid var(--gb); background:none; cursor:pointer;
    display:flex; align-items:center; justify-content:center;
    color:var(--warm); transition:border-color .2s, color .2s;
  }
  .tech-prev svg, .tech-next svg { width:16px; height:16px; }
  .tech-prev:hover, .tech-next:hover { border-color:var(--gold); color:var(--gold); }
  .tech-dots { display:flex; gap:6px; }
  .tech-dot {
    width:6px; height:6px; border-radius:50%;
    background:var(--gb); border:none; cursor:pointer;
    transition:background .2s;
  }
  .tech-dot.on { background:var(--gold); }
}