/* V4: genuine portfolio pages, detail photography, before/after */
.v4-all-work-link{display:inline-flex;margin:5px 0 65px;color:#e5d2ac;border-bottom:1px solid rgba(229,210,172,.6);padding-bottom:7px;font-size:13px}
.v4-portfolio-page,.v4-detail-page{max-width:1340px;margin:auto;padding:0 32px 110px}
.v4-list-hero{padding:105px 0 58px;border-bottom:1px solid #d9dcd3}.v4-list-hero small,.v4-detail-intro small,.v4-detail-label{color:#a98761;letter-spacing:.22em;font-size:11px}
.v4-list-hero h1,.v4-detail-intro h1,.v4-story h2,.v4-compare h2,.v4-list-cta h2,.v4-detail-footer h2{font-family:'Noto Serif KR',serif;font-weight:500;letter-spacing:-.055em;line-height:1.34}
.v4-list-hero h1{font-size:clamp(39px,5vw,76px);margin:24px 0}.v4-list-hero h1 em{font-style:normal;color:#a98761}.v4-list-hero p,.v4-detail-intro p{color:#728178;line-height:1.8}
.v4-filter-row{display:flex;gap:9px;flex-wrap:wrap;padding:34px 0}.v4-filter{background:transparent;border:1px solid #c8cfc6;color:#234133;padding:10px 18px;cursor:pointer;font-size:12px}
.v4-filter.active{color:#fff;background:#10392d;border-color:#10392d}.v4-portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.v4-filtered-card[hidden]{display:none!important}.v4-work-card{display:block;text-decoration:none;color:inherit;background:#fff;height:100%;transition:transform .2s,box-shadow .2s}.v4-work-card:hover{transform:translateY(-5px);box-shadow:0 16px 45px rgba(5,25,15,.12)}
.v4-work-cover{position:relative;aspect-ratio:4/3;overflow:hidden}.v4-work-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.v4-work-card:hover img{transform:scale(1.05)}.v4-featured{position:absolute;left:15px;top:15px;background:#a98761;color:#fff;font-size:11px;padding:7px 10px}
.v4-work-card-body{padding:25px}.v4-work-card-body span{font-size:11px;color:#a98761}.v4-work-card-body h3{font-size:21px;line-height:1.5;margin:13px 0}.v4-work-card-body p{font-size:13px;color:#6d7b70;line-height:1.75;min-height:45px}.v4-work-card-body b{font-size:12px;color:#18503d}.v4-list-cta{background:#12392e;color:#fff;text-align:center;padding:60px 20px;margin-top:80px}.v4-list-cta h2{font-size:32px}.v4-list-cta a{background:#ad8b66;margin-top:15px}
.v4-detail-page{max-width:1180px}.v4-detail-intro{text-align:center;padding:77px 0 40px}.v4-detail-intro .v4-back{display:block;text-align:left;font:11px Georgia,serif;letter-spacing:.2em;color:#75867b;margin-bottom:55px}.v4-detail-intro h1{font-size:clamp(32px,4vw,57px);margin:20px 0 10px}.v4-detail-intro p{font-size:14px;max-width:780px;margin:20px auto;line-height:1.9}
.v4-main-gallery{max-width:1060px;margin:auto}.v4-main-gallery>img{display:block;width:100%;height:auto;max-height:760px;aspect-ratio:16/10;object-fit:contain;background:#e9e8e2}.v4-thumbnails{display:flex;gap:9px;margin-top:13px;overflow-x:auto;padding-bottom:10px}.v4-thumb{padding:0;flex:0 0 98px;height:80px;border:3px solid transparent;cursor:pointer;background:#e9ece5}.v4-thumb img{width:100%;height:100%;object-fit:cover}.v4-thumb.active{border-color:#af8a59}
.v4-story{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;margin:95px 0;padding:65px 0;border-block:1px solid #d1d8d0}.v4-story h2{font-size:clamp(27px,3vw,42px)}.v4-story p{white-space:pre-wrap;line-height:2;color:#4c5f52;font-size:15px}.v4-story dl{margin:30px 0;display:grid;gap:12px}.v4-story dl>div{display:grid;grid-template-columns:100px 1fr;gap:14px;border-bottom:1px solid #d8ded6;padding:13px 0}.v4-story dt{color:#8d958f;font-size:12px}.v4-story dd{margin:0;color:#344c3e;font-size:13px}
.v4-compare{max-width:1000px;margin:75px auto;text-align:center}.v4-compare h2{font-size:33px}.v4-compare-stage{position:relative;aspect-ratio:16/10;overflow:hidden;background:#e0e4da}.v4-compare-stage>img,.v4-before-wrap img{display:block;width:100%;height:100%;object-fit:cover}.v4-before-wrap{position:absolute;inset:0 auto 0 0;width:50%;overflow:hidden}.v4-before-wrap img{width:1000px;max-width:none;height:100%;object-fit:cover;object-position:left center}.v4-compare-line{position:absolute;left:50%;top:0;bottom:0;border-left:3px solid #fff;pointer-events:none}.v4-compare-tag{position:absolute;top:14px;background:rgba(9,31,21,.82);color:#fff;font-size:10px;padding:9px}.v4-compare-tag.before{left:15px}.v4-compare-tag.after{right:15px}.v4-range-label{display:block;font-size:12px;margin-top:24px;color:#5e7165}.v4-compare input[type=range]{width:min(700px,90%);margin-top:12px;accent-color:#10392d}
.v4-detail-footer{text-align:center;background:#ebece5;padding:60px 20px}.v4-detail-footer p{font-size:12px;color:#758076}.v4-detail-footer h2{font-size:34px}.v4-detail-footer .v3-solid{margin-top:14px}.v4-empty{padding:80px 15px;color:#748078}
body.theme-dark .v4-work-card{background:#26362e}body.theme-dark .v4-work-card-body h3,body.theme-dark .v4-story h2,body.theme-dark .v4-compare h2{color:#f4f3eb}body.theme-dark .v4-work-card-body p,body.theme-dark .v4-story p,body.theme-dark .v4-story dd{color:#d5ddd4}body.theme-dark .v4-filter{border-color:#607366;color:#e2e6dd}body.theme-dark .v4-filter.active{background:#a98761;color:#151f19}body.theme-dark .v4-list-hero,body.theme-dark .v4-story{border-color:#435548}body.theme-dark .v4-detail-footer{background:#2c3c33}body.theme-dark .v4-detail-footer p{color:#c5cec5}
@media(max-width:950px){.v4-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v4-story{gap:30px}}
@media(max-width:640px){.v4-portfolio-page,.v4-detail-page{padding:0 17px 70px}.v4-list-hero{padding:65px 0 28px}.v4-portfolio-grid{grid-template-columns:1fr;gap:17px}.v4-work-card-body{padding:20px}.v4-story{grid-template-columns:1fr;gap:12px;margin:55px 0;padding:35px 0}.v4-detail-intro{padding-top:40px}.v4-detail-intro .v4-back{margin-bottom:30px}.v4-main-gallery>img{aspect-ratio:4/3}.v4-thumb{flex-basis:72px;height:65px}.v4-story h2{font-size:29px}.v4-compare h2{font-size:26px}.v4-list-cta h2,.v4-detail-footer h2{font-size:27px}}

.v4-home-work-container{padding:0 0 10px}


/* V21.1 legible portfolio typography and better dark-mode contrast */
.v4-list-hero{padding:88px 0 45px}
.v4-list-hero h1,.v4-detail-intro h1,.v4-story h2,.v4-compare h2,.v4-list-cta h2,.v4-detail-footer h2{font-family:var(--juan-ui-font,'Noto Sans KR',sans-serif);font-weight:750;letter-spacing:-.052em;line-height:1.26}
.v4-list-hero h1{font-size:clamp(40px,4.9vw,66px);margin:22px 0 28px}
.v4-list-hero h1 em{font-style:normal;color:#9c6637}
.v4-list-hero small,.v4-detail-intro small{color:#ae8957;font-weight:700;letter-spacing:.12em}
.v4-list-hero p,.v4-detail-intro p{color:#4f6459;font-size:16px;line-height:1.75}
.v4-empty{max-width:620px;border:1px solid #ced9cd;padding:42px 40px;margin:18px 0 24px;border-radius:12px;background:#f1f4ed;color:#3d5147;line-height:1.8}
.v4-empty strong{display:block;color:#173b2d;font-size:21px;margin-bottom:10px;font-weight:750}
.v4-empty p{margin:0 0 22px;font-size:15px;color:#4c6456}
.v4-empty a,.v4-empty a:visited{display:inline-flex;align-items:center;justify-content:center;background:#173f31;color:#fff!important;font-weight:700;font-size:14px;padding:13px 20px;border-radius:6px}
.v4-empty a:hover{background:#265842}
body.theme-dark .v4-list-hero h1,body.theme-dark .v4-detail-intro h1{color:#f5f7f0}
body.theme-dark .v4-list-hero h1 em{color:#e1c196}
body.theme-dark .v4-list-hero small,body.theme-dark .v4-detail-intro small{color:#e0bd87}
body.theme-dark .v4-list-hero p,body.theme-dark .v4-detail-intro p,body.theme-dark .v4-empty{color:#cad8cb}
body.theme-dark .v4-empty{background:#1b2e25;border-color:#47604f}
body.theme-dark .v4-empty strong{color:#f4f5ee}
body.theme-dark .v4-empty p{color:#cbd7cb}
body.theme-dark .v4-empty a,body.theme-dark .v4-empty a:visited{background:#dfbd8c;color:#153324!important}
body.theme-dark .v4-filter{color:#e9f1e8;border-color:#849e8a}
body.theme-dark .v4-filter.active{background:#dfbd8c;color:#132a20}
@media(max-width:640px){
 .v4-list-hero{padding:55px 0 30px}
 .v4-list-hero h1{font-size:clamp(32px,8.1vw,45px);line-height:1.28;letter-spacing:-.055em;margin:15px 0 22px}
 .v4-list-hero p{font-size:14px}
 .v4-empty{padding:28px 22px}
 .v4-empty strong{font-size:18px}
}
