@charset "utf-8";
.root_daum_roughmap,
.root_daum_roughmap .wrap_map {overflow:hidden; height:clamp(300px, calc( 500 / var(--inner) * 100vw ), 500px) !important; width:100% !important;}
.root_daum_roughmap .cont {display:none !important;}

.about {display:flex; flex-direction:column; align-items:center; gap:clamp(130px, calc(260 / var(--inner) * 100vw), 260px); width:100%; max-width:100%; margin:0 auto; box-sizing:border-box;}
.about .sec1, .about .sec2, .about .sec3 {display:flex; flex-direction:column; align-items:center; width:100%; gap:var(--space-55);}
.about .cont-tit {display:flex; flex-direction:column; align-items:center; gap:8px; text-align:center;}
.about .cont-tit .tit {font-family:'S-CoreDream', 'Pretendard', sans-serif; font-size:var(--font-size-24); font-weight:500; color:#242424; letter-spacing:.04em; line-height:1.4167em;}
.about .cont-tit .sub {font-family:'century-gothic', 'Noto Sans', sans-serif; font-size:var(--font-size-13); color:var(--color-primary); letter-spacing:0.48em; line-height:1.8462em;}
.about .sec1 .cont {display:flex; flex-direction:column; align-items:center; width:100%; gap:24px; text-align:center;}
.about .sec1 .catch {font-family:'century-gothic', 'Noto Sans', sans-serif; font-size:var(--font-size-22); font-weight:600; color:#242424; line-height:1.3636em;}
.about .sec1 .block {display:flex; flex-direction:column; gap:var(--space-15); width:100%;}
.about .sec1 .lead {font-family:'S-CoreDream', 'Pretendard', sans-serif; font-size:var(--font-size-18); font-weight:500; color:#242424; line-height:1.5556em;}
.about .sec1 .desc {display:flex; flex-direction:column; line-height:2.5em;}
.about .sec1 .desc .txt {font-family:'S-CoreDream', 'Pretendard', sans-serif;}
.about .sec1 .desc .brand {color:var(--color-primary);}

.about .sec2 .svc {width:100%;}
.about .sec2 .svc ul {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-20) 0;}
.about .sec2 .item {display:flex; flex-direction:column; align-items:center; gap:var(--space-40); padding:var(--space-20) 0; text-align:center; background:#fff;}
.about .sec2 .item .ico {width:clamp(32px, calc( 48 / var(--inner) * 100vw ), 48px); height:clamp(32px, calc( 48 / var(--inner) * 100vw ), 48px); display:flex; align-items:center; justify-content:center; box-sizing:border-box; background:#fff;}
.about .sec2 .item .box {display:flex; flex-direction:column; gap:var(--space-25); align-items:center; width:100%;}
.about .sec2 .item .box .tit {font-family:'S-CoreDream', 'Pretendard', sans-serif; font-size:var(--font-size-20); font-weight:500; color:#242424; line-height:1.5em;}
.about .sec2 .item .box .txt {font-family:'S-CoreDream', 'Pretendard', sans-serif; line-height:1.625;}

.about .sec3 .plogo {width:100%;}
.about .sec3 .plogo ul {grid-template-columns:repeat(7, 1fr); display:grid; gap:var(--space-40); width:100%;}

/* .about .sec3 .plogo ul li:nth-child(2n) {transition-delay:0.2s;}
.about .sec3 .plogo ul li:nth-child(3n) {transition-delay:0.3s;}
.about .sec3 .plogo ul li:nth-child(5n) {transition-delay:0.4s;} */


.pftaps {width:100%; max-width:100%; margin-bottom:var(--space-40); box-sizing:border-box;}
.pftaps .list {display:flex; flex-wrap:wrap; align-items:flex-start; gap:var(--space-30);}
.pftaps .item {flex-shrink:0;}
.pftaps .btn {display:inline-block; font-family:'century-gothic',sans-serif; font-size:var(--font-size-24); font-weight:600; color:#c0c0c0; letter-spacing:0.04em; line-height:1.5em; text-decoration:none; white-space:nowrap;}
.pftaps .btn.on,
.pftaps .btn:hover {color:#242424;}

.pflist {width:100%; max-width:100%; box-sizing:border-box;}
.pflist .list {display:grid; grid-template-columns:repeat(3, 1fr); justify-content:space-between; gap:var(--space-40); width:100%;}
.pflist .item {min-width:0;}
.pflist .card {display:flex; flex-direction:column; align-items:flex-start; gap:12px; color:inherit; text-decoration:none;}
.pflist .img {width:100%; margin:0; overflow:hidden;}
.pflist .img img {display:block; width:100%; aspect-ratio:480 / 321; object-fit:cover; transition:transform 0.35s ease;}
.pflist .item:hover .img img {transform:scale(1.06);}
.pflist .box .tit {font-family:'S-CoreDream','Pretendard',sans-serif; font-size:var(--font-size-20); font-weight:500; color:#242424; line-height:1.1em;}
.pflist .box .txt {font-family:'century-gothic',sans-serif; line-height:1.25em;}
.pflist + .paginate {margin-top:var(--space-60);}

.pf-view-wrap {display:flex; gap:var(--space-20); padding:0 clamp(30px, calc(160 / var(--inner) * 100vw), 160px);}
.pfview {display:flex; flex-direction:column; gap:var(--space-30); flex:1; top:calc(var(--header-height) + var(--space-50)); position:-webkit-sticky; position:sticky; left:0; block-size:fit-content;}
.pfview .head {display:flex; flex-direction:column; gap:2px; line-height:1.222;}
.pfview .head .tit {font-family:'century-gothic','Pretendard',sans-serif; font-size:var(--font-size-20); font-weight:500; color:#242424; letter-spacing:0.04em;}
.pfview .head .sub {font-family:'century-gothic',sans-serif; font-size:var(--font-size-18); line-height:inherit;}
.pfview .cont {font-family:'century-gothic','S-CoreDream',sans-serif;  display:flex; flex-direction:column; gap:12px; line-height:1.538;}
.pfview .date {color:#242424; font-size:var(--font-size-13); font-weight:500; line-height:1.538;}
.pfview .row {display:flex; flex-direction:column; align-items:flex-start; width:100%;}
.pfview .row .lbl {width:100px; font-size:var(--font-size-13); color:#242424;}
.pfview .row .txt {font-size:var(--font-size-13); line-height:inherit; width:100%; box-sizing:border-box; color:#989898;}
.pf-imgs {display:grid; gap:var(--space-25); width:100%; max-width:83%;}
.pf-imgs img {width:100%;}

.contact {margin-top:var(--space-40); display:flex; flex-direction:column; gap:var(--space-20); max-width:100%;}
.contact .cont {display:flex; flex-direction:column; gap:var(--space-20);}
.contact .name {font-family:'S-CoreDream', 'Pretendard', sans-serif; font-weight:500; color:var(--color-primary); letter-spacing:0.04em; line-height:1.5em;}
.contact .addr {display:flex; flex-direction:column;}
.contact .addr .tit {font-family:'S-CoreDream', 'Pretendard', sans-serif; font-size:var(--font-size-18); font-weight:500; color:#242424; letter-spacing:0.04em; line-height:1.91em;}
.contact .addr .txt {font-family:'century-gothic', 'Noto Sans', sans-serif; font-size:var(--font-size-14); line-height:1.5em; letter-spacing:-0.02em;}
.contact .list {display:flex; flex-direction:column;}
.contact .item {display:flex; flex-wrap:wrap; align-items:center; padding:6px 0; gap:0 var(--space-15);}
.contact .item .lbl {width:100px; display:flex; align-items:center; gap:var(--space-15); flex-shrink:0; box-sizing:border-box;}
.contact .item .img {display:flex; width:16px; height:16px; margin:0; flex-shrink:0; align-items:center; justify-content:center;}
.contact .item .img img {display:block; width:100%; height:100%; object-fit:contain;}
.contact .item .lbl .tit {font-family:'century-gothic', sans-serif; font-size:var(--font-size-14); font-weight:600; color:#242424; letter-spacing:0.04em; line-height:1.5em;}
.contact .item .txt {font-family:'century-gothic', 'Noto Sans', sans-serif; font-size:var(--font-size-14); line-height:1.5em; font-weight:300;}

/* 무한스크롤 로딩 인디케이터 */
.infinite-loading {display:flex; justify-content:center; align-items:center; gap:8px; padding:40px 0;}
.infinite-loading .loading-dot {display:block; width:10px; height:10px; border-radius:50%; background:#242424; opacity:0.3; animation:dotPulse 1.2s ease-in-out infinite;}
.infinite-loading .loading-dot:nth-child(2) {animation-delay:0.2s;}
.infinite-loading .loading-dot:nth-child(3) {animation-delay:0.4s;}
@keyframes dotPulse {0%,80%,100%{opacity:0.3;transform:scale(0.8);} 40%{opacity:1;transform:scale(1);}}
/* 무한스크롤 감지용(항상 레이아웃 유지 — display:none 요소는 IntersectionObserver가 교차하지 않음) */
.pf-infinite-sentinel {width:100%;height:2px;margin:0;padding:0;pointer-events:none;flex-shrink:0;}