/* DF 포트폴리오 소개글 — 작업 상세 아래 제작 이야기 */
.dfps{max-width:1440px;margin:0 auto;padding:10px 30px 90px;color:#fff;box-sizing:border-box}
.dfps *{box-sizing:border-box}
.dfps-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.1fr);gap:0 80px;padding-top:56px;border-top:1px solid rgba(255,255,255,.12)}
.dfps-side small{display:block;margin:0 0 12px;font-size:12px;letter-spacing:.16em;color:rgba(255,255,255,.45)}
.dfps-side h2{margin:0 0 26px;font-size:24px;line-height:1.45;font-weight:300;letter-spacing:-.02em;color:#fff}
.dfps-side h2 b{font-weight:700}
.dfps-meta{margin:0 0 24px;padding:0;list-style:none;font-size:13.5px}
.dfps-meta li{display:flex;gap:14px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.dfps-meta li span{flex:none;width:64px;color:rgba(255,255,255,.4)}
.dfps-meta li b{font-weight:500;color:rgba(255,255,255,.85);word-break:break-all}
.dfps-meta a{color:inherit;text-decoration:none}
.dfps-meta a:hover{text-decoration:underline}
.dfps-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.dfps-chips li{padding:5px 12px;border:1px solid rgba(255,255,255,.18);border-radius:20px;font-size:12px;color:rgba(255,255,255,.7)}
.dfps-steps{display:grid;gap:0}
.dfps-step{display:grid;grid-template-columns:92px minmax(0,1fr);gap:0 24px;padding:0 0 34px;margin:0 0 34px;border-bottom:1px solid rgba(255,255,255,.08)}
.dfps-step:last-child{margin-bottom:0;border-bottom:0;padding-bottom:0}
.dfps-step h3{margin:2px 0 0;font-size:14px;line-height:1.5;font-weight:600;color:#fff}
.dfps-step h3 i{display:block;margin:0 0 6px;font-style:normal;font-size:12px;font-weight:400;letter-spacing:.1em;color:rgba(255,255,255,.4)}
.dfps-step p{margin:0 0 .8em;font-size:15px;line-height:1.9;color:rgba(255,255,255,.72);word-break:keep-all}
.dfps-step p:last-child{margin-bottom:0}
.dfps-review{margin:40px 0 0;padding:26px 30px;border-radius:14px;background:rgba(255,255,255,.05)}
.dfps-review p{margin:0;font-size:15px;line-height:1.85;color:rgba(255,255,255,.85);word-break:keep-all}
.dfps-review cite{display:block;margin-top:10px;font-style:normal;font-size:12.5px;color:rgba(255,255,255,.45)}
.dfps-js .dfps-in{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
.dfps-js .dfps-in.is-in{opacity:1;transform:none}
@media (max-width:1024px){
	.dfps-in{grid-template-columns:1fr;gap:40px 0}
}
@media (max-width:640px){
	.dfps{padding:0 20px 60px}
	.dfps-in{padding-top:40px}
	.dfps-side h2{font-size:20px;margin-bottom:20px}
	.dfps-step{grid-template-columns:1fr;gap:10px 0;padding-bottom:26px;margin-bottom:26px}
	.dfps-step h3 i{display:inline;margin:0 8px 0 0}
	.dfps-step p{font-size:14px;line-height:1.85}
	.dfps-review{padding:20px 22px}
}
