/* 연구원 소개 - 인사말 */
.block-head{display:flex;flex-direction:row;gap:.75rem;align-items:center}
.block-dots{display:flex;flex:none;width:.375rem;height:1.25rem;border-radius:.25rem;background:#0B318F}
.block-head h3{margin:0;font-size:1.75rem;font-weight:700;color:#292a2d;letter-spacing:-.01em;line-height:1.29}

.page-greet .greet-head{margin-top:1.25rem}
.page-greet .greet-head p{margin:0;font-size:1.5rem;font-weight:700;color:#2e2f33;letter-spacing: -0.015rem;line-height:1.33;word-break:keep-all}
.page-greet .greet-head p + p{margin-top:.25rem}
.page-greet .greet-head strong{color:#0B318F; font-weight: 700;}

.page-greet .greet{display:flex;gap:2.5rem;align-items:flex-start;margin-top:2.5rem}
.page-greet .greet-photo{flex:none;width:22.5rem;height:28.125rem;border-radius:1.5rem;overflow:hidden;background:#f2f4f7}
.page-greet .greet-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
.page-greet .greet-body{flex:1;min-width:0}
.page-greet .greet-body p{margin:0 0 1.25rem;font-size:1.125rem;font-weight:400;color:#878a93;line-height:1.5;word-break:keep-all}
.page-greet .greet-body p.greet-thanks{color:#2e2f33;font-weight:500;margin-bottom:1.75rem}
.page-greet .greet-sign{display:flex;align-items:baseline;gap:.75rem;margin:0;color:#000}
.page-greet .sign-role{font-size:1.125rem;font-weight:700;color:#000}
.page-greet .sign-name{font-size:1.5rem;font-weight:700;color:#0B318F;letter-spacing:-.01em;line-height:1.33}
.page-greet .sign-suffix{font-size:1rem;font-weight:400;color:#5a5c63}

.page-greet .directors{margin-top:3.25rem}
.page-greet .dir-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1.75rem}
.page-greet .dir-desc{margin:.75rem 0 0;font-size:1rem;color:#5a5c63;line-height:1.5}
.page-greet .dir-arrows{display:flex;align-items:center;gap:.4375rem;flex-shrink:0}
.page-greet .dir-arrows button{width:2.75rem;height:2.75rem;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s; cursor: pointer; background:#fff;border:1px solid #6d6d6d;}
.page-greet .dir-arrows button img{width:1.1875rem;height:1.1875rem;transition:all .2s;}
.page-greet .dir-arrows button:hover{background:#0B318F;border:1px solid #0B318F}
.page-greet .dir-arrows button:hover img{filter:brightness(0) invert(1)}
.page-greet .dir-prev img{transform:rotate(-90deg);width:1.1875rem;height:1.1875rem}
.page-greet .dir-next img{transform:rotate(90deg);width:1.1875rem;height:1.1875rem;}
.page-greet .dir-prev.swiper-button-disabled,
.page-greet .dir-next.swiper-button-disabled{opacity:.35;cursor:default}

html:has(.page-greet){overflow-x:clip}
.page-greet .dir-swiper{width:100%; overflow: visible; position: relative;}
.page-greet .dir-swiper::before{content: ''; display: block; width: 100%; height: 110%; background: #FFF; position: absolute; left: calc(-100% - 1rem); top: 0; z-index: 2;}
.page-greet .dir-swiper .swiper-slide{width:27.125rem;height:auto}
.page-greet .dir-card{display:flex;align-items:center;gap:1.5rem;padding:1.25rem;background:#fff;border:1px solid #e1e2e4;border-radius:1.25rem;box-sizing:border-box;height:18.1875rem;transition:border-color .25s,box-shadow .25s}
.page-greet .dir-card .item-img{flex:none;width:12.5rem;height:15.6875rem;overflow:hidden;background:#fff}
.page-greet .dir-card .item-img img{width:100%;height:100%;object-fit:cover;object-position:center top}
.page-greet .dir-card .item-txt{display:flex;flex-direction:column;align-items:flex-start;gap:.625rem;padding:1.25rem 1.375rem 1.5rem 0;min-width:0}
.page-greet .dir-card .badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:999px;background:#aeb0b6;color:#fff;font-size:.875rem;font-weight:700;line-height:1.43;transition:background .25s}
.page-greet .dir-card .name{font-size:1.375rem;font-weight:700;color:#171719;letter-spacing:-.005em;line-height:1.45;word-break:keep-all}
.page-greet .dir-card .period{font-size:1rem;font-weight:400;color:#5a5c63;line-height:1.5}
.page-greet .dir-card:hover{border-color:#0B318F;box-shadow:0 .625rem 1.75rem rgba(11,49,143,.12)}
.page-greet .dir-card:hover .badge{background:#0B318F}

@media(max-width:1200px){
  .page-greet .dir-swiper .swiper-slide{width:23.75rem}
  .page-greet .dir-card{height:auto;min-height:16.25rem}
  .page-greet .dir-card .item-img{width:10rem;height:13.125rem}
}
@media(max-width:1024px){
  .page-greet .greet-head p{font-size:1.25rem}
  .page-greet .greet-body p{font-size:1rem}
  .page-greet .directors{margin-top:2.5rem;overflow:hidden}
  .page-greet .dir-swiper{overflow:hidden}
  .page-greet .dir-swiper::before{display:none}
  .page-greet .dir-swiper .swiper-slide{width:min(18.75rem,100%)}
  .page-greet .dir-card{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem;height:auto}
  .page-greet .dir-card .item-img{width:100%;height:13.75rem}
  .page-greet .dir-card .item-txt{padding:.5rem .25rem .5rem}
  .page-greet .dir-card .name{font-size:1.125rem}
  .block-head h3{font-size: 1.45rem;}
  .page-greet .greet-photo{width: 35%; height: auto;}
}
@media(max-width:768px){
  .page-greet .greet{flex-direction:column;gap:1.5rem;margin-top:1.5rem;}
  .page-greet .greet-photo{width:100%;max-width:32.5rem;margin:0 auto;aspect-ratio:360/450}
}

/* 연구원 소개 - 비전과 목표 */
.page-vision{display:flex;flex-direction:column;gap:3.25rem}
.page-vision p{margin:0}
.page-vision .vision-badge{display:inline-flex;align-items:center;padding:.4375rem 1.125rem;border-radius:999px;background:#0B318F;color:#fff;font-size:.875rem;font-weight:700;line-height:1.43}
.page-vision .vision-badge.badge-goals{background:#1a4b8f}

.page-vision .vision-banner{display:flex;flex-direction:column;align-items:center;gap:1.25rem;padding:2rem 3rem;background:#f9f9f9;border:1px solid #e1e2e4;border-radius:200px;text-align:center;box-sizing:border-box}
.page-vision .vision-banner p{font-size:1.5rem;font-weight:700;color:#292a2d;letter-spacing:-.01em;line-height:1.33;word-break:keep-all}

.page-vision .goals{display:flex;flex-direction:column;align-items:center;gap:3rem}
.page-vision .goals-lead{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.625rem;width:100%;padding:2rem;background:#fff;border:1px solid #0B318F;border-radius:100px;text-align:center;box-sizing:border-box}
.page-vision .goals-lead p{font-size:1.5rem;font-weight:700;color:#0B318F;letter-spacing:-.01em;line-height:1.33;word-break:keep-all}

.page-vision .goals-flow{display:flex;align-items:flex-start;width:100%}
.page-vision .hub-item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:1.5rem}
.page-vision .hub-circle{flex:none;width:10.625rem;height:10.625rem;border-radius:50%;background:#f2f7fc;border:1px solid #dce4ef;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.page-vision .hub-circle img{width:4.25rem;height:4.25rem}
.page-vision .hub-txt{display:flex;flex-direction:column;align-items:center;gap:.375rem;width:100%;text-align:center}
.page-vision .hub-txt strong{font-size:1.125rem;font-weight:700;color:#0B318F;line-height:1.5;word-break:keep-all}
.page-vision .hub-txt span{font-size:.875rem;font-weight:400;color:#878a93;line-height:1.43;word-break:keep-all}
.page-vision .hub-conn{flex:none;width:3.25rem;height:10.625rem;display:flex;align-items:center;justify-content:center;overflow:hidden}
.page-vision .hub-conn img{width:3.25rem;height:10.625rem}

.page-vision .goals-grid-wrap{position:relative;display:flex;align-items:center;justify-content:center;width:100%}
.page-vision .goals-line{position:absolute;left:50%;top:calc(50% + .4375rem);transform:translate(-50%,-50%);width:100%;height:23.375rem;border:2px dashed #6eb0ff;border-radius:2.5rem;pointer-events:none;box-sizing:border-box}
.page-vision .goals-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:1.625rem;width:calc(100% - 3.375rem);max-width:74.125rem}
.page-vision .goals-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.625rem;padding:2rem 2.5rem;background:#fff;border:1px solid #0B318F;border-radius:1.25rem;text-align:center;box-sizing:border-box}
.page-vision .item-head{display:flex;flex-direction:column;align-items:center;gap:.5rem}
.page-vision .item-ic{display:block;width:6rem;height:6rem;overflow:hidden}
.page-vision .item-ic img{width:6rem;height:6rem}
.page-vision .goals-item h3{margin:0;font-size:1.375rem;font-weight:500;color:#000;letter-spacing:-.005em;line-height:1.45;word-break:keep-all}
.page-vision .goals-item p{font-size:1.125rem;font-weight:400;color:#5a5c63;line-height:1.5;word-break:keep-all;max-width:26.875rem}

@media(max-width:1200px){
  .page-vision .hub-conn{display:none}
  .page-vision .goals-flow{flex-wrap:wrap;justify-content:center;gap:1.75rem .75rem}
  .page-vision .hub-item{flex:none;width:calc(50% - .5rem)}
  .page-vision .hub-circle{width:8.75rem;height:8.75rem}
  .page-vision .hub-circle img{width:3.5rem;height:3.5rem}
  .page-vision .goals-grid{width:calc(100% - 2.5rem);gap:1rem}
  .page-vision .goals-item{padding:1.75rem 1.5rem}
  .page-vision .goals-line{height:70%;border-radius:1.75rem}
}
@media(max-width:1024px){
  .page-vision{gap:2rem}
  .page-vision .vision-banner{padding:1.5rem 1.25rem;border-radius:5rem;gap:.75rem}
  .page-vision .vision-banner p{font-size:1.125rem}
  .page-vision .hub-item{flex: 1; width: auto;}
  .page-vision .goals{gap:1.75rem}
  .page-vision .goals-lead{padding:1.5rem 1.25rem;border-radius:5rem}
  .page-vision .goals-lead p{font-size:1.125rem}
  .page-vision .hub-circle{width:7.5rem;height:7.5rem}
  .page-vision .hub-circle img{width:3rem;height:3rem}
  .page-vision .hub-txt strong{font-size:1rem}
  .page-vision .hub-txt span{font-size:.75rem}
  .page-vision .goals-line{display:none}
  .page-vision .goals-grid{grid-template-columns:1fr;width:100%;gap:.75rem}
  .page-vision .goals-item{padding:1.5rem 1.25rem}
  .page-vision .item-ic,.page-vision .item-ic img{width:4.5rem;height:4.5rem}
  .page-vision .goals-item h3{font-size:1.125rem}
  .page-vision .goals-item p{font-size:1rem}
}
@media(max-width:768px){
  .page-vision .hub-item{flex:none;width:calc(50% - .5rem)}
  .page-vision .hub-txt strong{font-size:1.125rem}
  .page-vision .hub-txt span{font-size:0.875rem}
}
@media(max-width:500px){
  .page-vision .hub-item{width:100%}
}

/* 연구원 소개 - 실습·참관(참관안내) / Figma 8108:393 */
.page-practice{display:flex;flex-direction:column;gap:3.25rem}
.page-practice p{margin:0;word-break:keep-all}
.page-practice .practice-process,
.page-practice .practice-notice{display:flex;flex-direction:column;gap:1.5rem}

.page-practice .step-flow{display:flex;align-items:stretch;list-style:none;margin:0;padding:0}
.page-practice .step-item{display:flex;align-items:stretch;flex:1;min-width:0}
.page-practice .step-item:last-child{flex:none;width:calc((100% - 6.75rem) / 4)}
.page-practice .step-card{flex:1;min-width:0;display:flex;flex-direction:column;gap:.875rem;padding:1.5rem;background:#fff;border:1px solid #e1e2e4;border-radius:1.375rem;box-sizing:border-box}
.page-practice .step-head{display:flex;align-items:center;gap:.75rem}
.page-practice .step-ic{flex:none;display:flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;background:#fff}
.page-practice .step-ic img{width:2.5rem;height:2.5rem}
.page-practice .step-num{flex:1;min-width:0;font-size:.875rem;font-weight:700;color:#0B318F;line-height:1.43}
.page-practice .step-title{display:block;font-size:1.375rem;font-weight:700;color:#292a2d;letter-spacing:-.005em;line-height:1.45;word-break:keep-all}
.page-practice .step-desc{font-size:1.125rem;font-weight:400;color:#878a93;line-height:1.5}
.page-practice .step-conn{flex:none;display:flex;align-items:center;justify-content:center;width:2.25rem}
.page-practice .step-conn img{width:1.25rem;height:1.25rem}

.page-practice .notice-list{display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}
.page-practice .notice-row{display:flex;align-items:center;gap:.875rem;padding:1.125rem 2rem 1.125rem 1.125rem;background:#f4f4f5;border-radius:999px;box-sizing:border-box}
.page-practice .notice-num{flex:none;display:flex;align-items:center;justify-content:center;width:1.6875rem;height:1.6875rem;border-radius:50%;background:#0B318F;color:#fff;font-size:.8125rem;font-weight:700;line-height:1.38}
.page-practice .notice-row p{flex:1;min-width:0;font-size:1.125rem;font-weight:400;color:#878a93;line-height:1.5}

@media(max-width:1200px){
  .page-practice .step-flow{flex-wrap:wrap;gap:1rem}
  .page-practice .step-item,
  .page-practice .step-item:last-child{flex:none;width:calc(50% - .5rem)}
  .page-practice .step-conn{display:none}
}
@media(max-width:1024px){
  .page-practice{gap:2.5rem}
  .page-practice .step-card{padding:1.25rem;gap:.625rem}
  .page-practice .step-title{font-size:1.125rem}
  .page-practice .step-desc{font-size:1rem}
  .page-practice .notice-row{align-items:flex-start;padding:1rem 1.25rem 1rem 1rem;border-radius:1.5rem}
  .page-practice .notice-row p{font-size:1rem}
}
@media(max-width:768px){
  .page-practice .step-flow{gap:.75rem}
  .page-practice .step-item,
  .page-practice .step-item:last-child{width:100%}
}

/* 연구원 소개 - 연혁 / Figma 8066:11 */
.page-history{display:flex;flex-direction:column;gap:3rem}
.page-history p{margin:0;word-break:keep-all}
/* .era 는 박스를 없애(display:contents) 모든 .era-head 가 .page-history 기준으로 sticky 되도록 함 → 다음 시대 헤더가 이전 헤더 위로 겹쳐 올라옴 */
.page-history .era{display:contents}
.page-history .year-list{margin-bottom:1.5rem}
.page-history .era:last-child .year-list{margin-bottom:0}
/* 하늘색 카드는 ::after, 상단 흰 여백(모서리 틈 가림)은 ::before, 하단 흰 페이드는 box-shadow 로 처리
   (음수 z-index 자식은 요소 자체 배경 위에 그려지므로 카드색을 ::after 로 분리) */
.page-history .era-head{position:sticky;top:9.75rem;z-index:5;display:flex;flex-direction:column;gap:.875rem;padding:2.5rem;background:transparent;border-radius:1.25rem;box-sizing:border-box;box-shadow:0 1.5rem 1.5rem -.5rem #fff}
.page-history .era-head::before{content:"";position:absolute;z-index:-2;left:0;right:0;top:-1rem;bottom:0;background:#fff;pointer-events:none}
.page-history .era-head::after{content:"";position:absolute;z-index:-1;inset:0;background:#f2f7fc;border-radius:inherit;pointer-events:none}
.page-history .era-top{display:flex;align-items:center;gap:.875rem}
.page-history .era-range{font-size:1.75rem;font-weight:700;color:#0B318F;letter-spacing:-.01em;line-height:1.29}
.page-history .era-title{margin:0;font-size:1.375rem;font-weight:700;color:#292a2d;letter-spacing:-.005em;line-height:1.45;word-break:keep-all}
.page-history .era-desc{font-size:1.125rem;font-weight:400;color:#878a93;line-height:1.5}

.page-history .year-list{position:relative;display:flex;flex-direction:column}
.page-history .year-rail{position:absolute;left:10.8125rem;top:2.5rem;bottom:2.5rem;width:2px;border-radius:1px;background:#e1e2e4;overflow:hidden}
.page-history .rail-fill{position:absolute;left:-.5px;top:0;width:3px;height:0;border-radius:1.5px;transition:height .25s ease-out;background:linear-gradient(180deg,rgba(11,49,143,.12) 0%,#0B318F 40%,#0B318F 100%)}
.page-history .year-item{display:flex;align-items:flex-start;gap:1.25rem;padding:1.75rem 0}
.page-history .year-item:first-child{padding-top:0}
.page-history .year-num{flex:none;width:8.25rem;font-size:1.5rem;font-weight:700;color:#0B318F;letter-spacing:-.01em;line-height:1.33}
.page-history .year-marker{flex:none;display:flex;justify-content:center;width:2.75rem;padding-top:.5rem}
.page-history .year-dot{position:relative;z-index:1;display:block;width:1rem;height:1rem;border-radius:50%;background:transparent;transition:background .3s}
.page-history .year-dot::after{content:"";position:absolute;left:50%;top:50%;width:.5rem;height:.5rem;border-radius:50%;background:#c2c4c8;transform:translate(-50%,-50%);transition:background .3s}
.page-history .year-dot.on{background:#0B318F}
.page-history .year-dot.on::after{background:#0B318F;box-shadow:0 0 0 2px #0B318F}
.page-history .year-desc{flex:1;min-width:0;display:flex;flex-direction:column;gap:.75rem;list-style:none;margin:0;padding:0}
.page-history .year-desc li{position:relative;padding-left:1rem;font-size:1.125rem;font-weight:400;color:#878a93;line-height:1.5;word-break:keep-all}
.page-history .year-desc li::before{content:"·";position:absolute;left:0;top:0;font-weight:700;color:#878a93; line-height: 1.4;}

@media(max-width:1024px){
  .page-history{gap:2rem}
  .page-history .year-list{margin-bottom:1rem}
  .page-history .era:last-child .year-list{margin-bottom:0}
  .page-history .era-head{top:5.75rem;padding:1.5rem 1.25rem;gap:.625rem;border-radius:1rem;box-shadow:0 1rem 1rem -.375rem #fff; min-height: 13.75rem}
  .page-history .era-head::before{top:-.75rem}
  .page-history .era-range{font-size:1.375rem}
  .page-history .era-title{font-size:1.125rem}
  .page-history .era-desc{font-size:1rem}
  .page-history .year-rail{left:.4375rem;top:2rem; bottom: 2rem;}
  .page-history .year-item{flex-wrap:wrap;gap:.75rem;padding:1.25rem 0}
  .page-history .year-marker{order:0;width:1rem;padding-top:.375rem}
  .page-history .year-num{order:1;width:auto;font-size:1.25rem}
  .page-history .year-desc{order:2;flex:none;width:100%;padding-left:1.75rem;box-sizing:border-box;gap: 0.5rem;}
  .page-history .year-desc li{font-size:1rem; padding-left: 0.875rem;}
}
@media(max-width:768px){
  .page-history .era-head{position: initial; min-height: initial; box-shadow: none; z-index: auto; background: #f2f7fc;}
  .page-history .era-head::before,
  .page-history .era-head::after{display: none;}
}

/* 연구원 소개 - 조직도 / Figma 8069:11 */
.page-org{width:100%}

/* 참관프로그램 - 프로그램 구성 (pc-2025 .pc-dots 확장 : 제목 + 설명) */
.page-practice .comp-list{gap:1rem}
.page-practice .comp-list li::before{margin-top:.75rem}
.page-practice .comp-txt{display:flex;flex-direction:column;gap:.125rem;min-width:0}
.page-practice .comp-txt strong{font-size:1.25rem;font-weight:700;color:var(--navy);letter-spacing:-.005em;line-height:1.45}
.page-practice .comp-txt span{font-size:1.125rem;font-weight:400;color:#878a93;letter-spacing:0;line-height:1.5}
@media(max-width:1024px){
  .page-practice .comp-txt strong{font-size:1.0625rem}
  .page-practice .comp-txt span{font-size:1rem}
}

/* 연구원 소개 - 설립목적 */
.page-purpose .tc-lead .pc-desc{margin-top:-.25rem}
.page-purpose .purpose-foot{display:flex;flex-direction:column;align-items:center;gap:2rem}
.page-purpose .purpose-foot > img{width:100%;max-width:20rem;height:auto}
@media(max-width:1024px){
  .page-purpose .purpose-foot{gap:1.5rem}
  .page-purpose .purpose-foot > img{max-width:15rem}
}

/* 연구원 소개 - 찾아오시는 길 */
.page-location .loc-map{gap:1.25rem}
.page-location .map-area{width:100%;aspect-ratio:1240/520;border-radius:1.75rem;overflow:hidden;background:#f2f4f7;border:1px solid #e1e2e4;box-sizing:border-box}
.page-location .map-area[hidden]{display:none}
.page-location .map-area iframe{display:block;width:100%;height:100%;border:0}
/* 카카오(다음) 지도 : 컨테이너 크기에 맞춤 */
.page-location .root_daum_roughmap{width:100%!important;height:100%!important;margin:0}
.page-location .root_daum_roughmap .wrap_map{height:100%!important}
.page-location .root_daum_roughmap .wrap_controllers,
.page-location .root_daum_roughmap .map_border{display:none}
/* 연세대 내부(캠퍼스맵) : PC는 다른 탭(520px)보다 4.5rem(72px) 더 높게 */
.page-location .map-campus{aspect-ratio:1240/592}
/* 이미지 안내도 탭 : 지도 탭과 동일한 높이 */
.page-location .map-img{display:flex;align-items:center;justify-content:center;padding:2rem;background:#fff}
.page-location .map-img img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:1024px){
  .page-location .map-area{aspect-ratio:auto; height: 26rem; border-radius:1rem}
  .page-location .map-img{padding:1rem}
}
@media(max-width:600px){
  .page-location .map-area{height: 17rem;}
}
/* 연세대 내부(캠퍼스맵 iframe) : 860px 이하에선 연세대 헤더가 위로 쌓여 지도가 작아지므로 높이만 키운다 */
@media(max-width:860px){
  .page-location .map-campus{height:33rem}
}

/* 연구원 소개 - 실습 및 참관현황 */
.page-pstatus .stat-wrap{display:flex;flex-direction:column;gap:1.75rem}
.page-pstatus .stat-body{display:flex;flex-direction:column;gap:1.5rem;padding:2rem;background:#fff;border:1px solid #e1e2e4;border-radius:1.375rem;box-sizing:border-box}
.page-pstatus .year-rail{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}
.page-pstatus .year-rail button{display:inline-flex;align-items:center;padding:.5rem 1rem;background:#f4f4f5;border:1px solid #e1e2e4;border-radius:999px;color:#5a5c63;font-size:1rem;font-weight:700;line-height:1.5;font-family:inherit;cursor:pointer;transition:.2s}
.page-pstatus .year-rail button:hover{border-color:#0B318F;color:#0B318F}
.page-pstatus .year-rail button.on{background:#0B318F;border-color:#0B318F;color:#fff}
.page-pstatus .stat-summary{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.page-pstatus .stat-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.75rem 1.5rem;background:#f9f9f9;border:1px solid #e1e2e4;border-radius:1.25rem;text-align:center;box-sizing:border-box}
.page-pstatus .stat-card.accent{background:#f2f7fc;border-color:#dce4ef}
.page-pstatus .stat-label{font-size:1rem;font-weight:500;color:#878a93;line-height:1.5}
.page-pstatus .stat-card strong{display:flex;align-items:baseline;gap:.25rem;font-size:2.25rem;font-weight:700;color:#0B318F;letter-spacing:-.02em;line-height:1.2;font-variant-numeric:tabular-nums}
.page-pstatus .stat-card small{font-size:1.125rem;font-weight:500;color:#5a5c63}
.page-pstatus .stat-table{transition:opacity .18s}
.page-pstatus .stat-table.swap{opacity:0}
.page-pstatus .stat-tbl{min-width:40rem}
.page-pstatus .stat-tbl .c-a{width:34%}
.page-pstatus .stat-tbl .c-b{width:16%}
.page-pstatus .stat-tbl .c-c{width:50%}
@media(max-width:1024px){
  .page-pstatus .stat-wrap{gap:1.25rem}
  .page-pstatus .stat-body{gap:1.25rem;padding:1.25rem}
  .page-pstatus .year-rail button{padding:.375rem .75rem;font-size:.875rem}
  .page-pstatus .stat-card{padding:1.25rem 1rem}
  .page-pstatus .stat-card strong{font-size:1.75rem}
  .page-pstatus .stat-card small{font-size:1rem}
}
@media(max-width:768px){
  .page-pstatus .stat-summary{grid-template-columns:1fr;gap:.75rem}
  .page-pstatus .pc-tbl-wrap.stat-table{overflow-x:auto}
  .page-pstatus .stat-tbl{display:table}
}

/* 연구원 소개 - 기관환경 */
.page-facility .env-map{width:100%;border-radius:1.75rem;overflow:hidden;background:#fff;border:1px solid #e1e2e4;box-sizing:border-box}
.page-facility .env-map picture,.page-facility .env-map img{display:block;width:100%;height:auto}
.page-facility .env-gallery{gap:1.5rem}
.page-facility .env-gallery .pc-slide-wrap[hidden]{display:none}
.page-facility .pc-slide-img{position:relative}
.page-facility .pc-slide-img .slide-cap{position:absolute;left:1.25rem;bottom:1.25rem;z-index:2;display:inline-flex;align-items:center;padding:.5rem 1rem;border-radius:999px;background:#0B318F;color:#fff;font-size:.875rem;font-weight:500;line-height:1.43;white-space:nowrap}
@media(max-width:1024px){
  .page-facility .env-map{border-radius:1rem}
  .page-facility .env-gallery{gap:1.25rem}
}
@media(max-width:768px){
  .page-facility .pc-slide-img .slide-cap{left:.75rem;bottom:.75rem;padding:.375rem .75rem;font-size:.75rem}
}

/* 연구원 소개 - 기관환경 : 소개 문구 (교육환경 제목 삭제 → 리드 문구) */
.page-facility .fac-intro{gap:1.25rem}
.page-facility .fac-lead{margin:0;font-size:1.5rem;font-weight:700;color:#292a2d;letter-spacing:-.01em;line-height:1.33;word-break:keep-all}
.page-facility .fac-intro .env-map{margin-top:1rem}
@media(max-width:1024px){
  .page-facility .fac-lead{font-size:1.25rem}
}
/* 실습 및 참관현황 : 누적 인원만 표기 */
.page-pstatus .stat-summary{grid-template-columns:1fr}


/* 연구원 소개 - 조직도 : 센터 3열(교육연구센터·아동가족상담센터 + 하위레벨 유진어린이집), 팀장 표기 */
.page-org .org-grid{grid-template-columns:repeat(3,1fr)}
.page-org .org-grid::before{left:calc((100% - 2 * var(--org-gap)) / 6);right:calc((100% - 2 * var(--org-gap)) / 6)}
.page-org .org-team li{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}
.page-org .org-team li em{flex:none;font-style:normal;font-size:1rem;font-weight:500;color:#0B318F;line-height:1.7}
.page-org .org-center.sub{width:82%;justify-self:center;align-self:flex-start}
.page-org .org-center.sub .org-head{padding:.625rem;background:#989ba2}
.page-org .org-center.sub .org-head strong{font-size:1.0625rem;line-height:1.4}
.page-org .org-center.sub .org-head span{font-size:.8125rem;font-weight:400;opacity:.9}
.page-org .org-center.sub .org-team{padding:1.125rem 1.25rem;gap:.625rem}
.page-org .org-center.sub .org-team li{font-size:1rem}
@media(max-width:1024px){
  .page-org .org-team li em{font-size:.875rem;line-height:1.75}
  .page-org .org-center.sub{width:90%}
}
@media(max-width:768px){
  .page-org .org-grid{grid-template-columns:1fr 1fr}
  .page-org .org-grid::before{left:calc((100% - var(--org-gap)) / 4);right:calc((100% - var(--org-gap)) / 4)}
  .page-org .org-team li{flex-direction:column;gap:.125rem}
  .page-org .org-team li em{font-size:.8125rem;line-height:1.5}
  .page-org .org-center.sub{grid-column:1 / -1;width:70%}
  .page-org .org-center.sub .org-head strong{font-size:.875rem;line-height:1.43}
  .page-org .org-center.sub .org-head span{font-size:.8125rem}
  .page-org .org-center.sub::before{display:none}
}
