
.portfolio{max-width:1440px;padding:64px clamp(24px,5vw,80px) 72px;margin:auto}
.portfolio-intro{display:flex;justify-content:space-between;align-items:end;gap:32px;padding-bottom:44px}
.portfolio-intro h1{font-size:clamp(38px,4.2vw,60px);font-weight:500;line-height:1.06;letter-spacing:-.045em;margin:0}
.portfolio-intro>p{font-size:15px;line-height:1.6;margin:0;color:#5b574e}
.project-row{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.6fr);gap:clamp(30px,6vw,90px);padding:40px 0;border-top:1px solid #29272130;align-items:center}
.project-info h2{font-size:clamp(26px,3vw,40px);letter-spacing:-.035em;line-height:1.12;margin:12px 0 18px;font-weight:500}
.project-category{font-size:13px;line-height:1.5;color:#666157;margin:0}
.project-description{font-size:16px;line-height:1.6;max-width:32ch;margin:0 0 25px}
.project-image{display:block;aspect-ratio:16/10;background:#e1ded5;overflow:hidden}
.project-image img,.project-image video{display:block;width:100%;height:100%;object-fit:cover;margin:0}
.project-image:focus-visible{outline:3px solid #778629;outline-offset:5px}
@media(max-width:700px){.portfolio{padding:36px 24px}.portfolio-intro{display:block;padding-bottom:30px}.portfolio-intro>p{margin-top:18px}.project-row{grid-template-columns:1fr;gap:24px;padding:30px 0}.project-image{grid-row:1}.project-description{max-width:42ch}.project-info h2{font-size:30px}.project-category{font-size:14px}}
