.portfolio-hero{padding-bottom:clamp(85px,11vh,135px)}
.portfolio-section{padding-top:92px;padding-bottom:125px;border-top:1px solid var(--line)}
.portfolio-section-heading{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start;margin-bottom:45px}
.portfolio-section-heading>p{color:var(--muted);line-height:1.75;font-size:15px;max-width:390px;margin:0}
.campaign-card{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(28px,6vw,90px);align-items:center;border:1px solid var(--line);border-radius:20px;padding:14px;background:rgba(255,255,255,.035)}
.campaign-video{aspect-ratio:16/9;overflow:hidden;border-radius:13px;background:#050507}
.campaign-video iframe{display:block;width:100%;height:100%;border:0}
.campaign-copy{padding:28px 28px 28px 0}
.campaign-copy h2{font-size:clamp(1.75rem,3.4vw,3.3rem);line-height:.98;letter-spacing:-.065em;margin:24px 0 20px;overflow-wrap:anywhere}
.campaign-copy p{color:var(--muted);font-size:14px;line-height:1.7;margin:0;max-width:300px}
.campaign-copy .text-link{margin-top:28px}
.portfolio-websites{padding-top:105px;padding-bottom:155px}
.website-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.website-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:rgba(255,255,255,.035);display:flex;flex-direction:column;min-width:0}
.website-image{aspect-ratio:16/9;overflow:hidden;background:#151115;border-bottom:1px solid var(--line)}
.website-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .45s ease}
.website-card:hover .website-image img{transform:scale(1.035)}
.website-copy{padding:25px;display:flex;flex:1;flex-direction:column;align-items:flex-start}
.website-copy h2{font-size:clamp(1.35rem,2vw,2rem);line-height:1.02;letter-spacing:-.06em;margin:18px 0 14px;overflow-wrap:anywhere}
.website-copy p{color:var(--muted);font-size:13px;line-height:1.65;margin:0 0 24px}
.website-button{display:inline-flex;align-items:center;gap:24px;margin-top:auto;padding:12px 16px;border:1px solid var(--line);border-radius:100px;color:var(--text);font:500 11px 'DM Mono',monospace;text-decoration:none;transition:.25s}
.website-button span{font-size:17px;color:var(--pink);line-height:10px}
.website-button:hover{background:var(--text);border-color:var(--text);color:var(--bg)}
@media(max-width:980px) and (min-width:761px){
  .website-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .website-card:last-child{grid-column:1/-1;max-width:calc(50% - 7px)}
}
@media(max-width:760px){
  .portfolio-section{padding-top:75px;padding-bottom:90px}
  .portfolio-section-heading{display:block;margin-bottom:32px}
  .portfolio-section-heading>p{margin-top:25px;font-size:14px}
  .campaign-card{display:block;padding:10px}
  .campaign-copy{padding:27px 12px 20px}
  .campaign-copy h2{font-size:2rem;margin-top:20px}
  .portfolio-websites{padding-top:80px;padding-bottom:100px}
  .website-grid{grid-template-columns:1fr;gap:12px}
  .website-card:last-child{grid-column:auto;max-width:none}
  .website-copy{padding:22px}
}
