.pg-portfolio{.hero{padding:96px 0 70px;text-align:center}.hero .container{max-width:760px}.hero .eyebrow{justify-content:center}.hero h1{font-size:clamp(2.3rem,4.2vw,3.3rem);font-weight:300;margin-bottom:20px}.hero h1 em{font-style:italic;font-weight:400;color:var(--terracotta)}.hero-sub{font-size:1.04rem;color:var(--muted);max-width:52ch;margin:0 auto}.hero-anim .hero-copy>*{opacity:0;animation:fadeup 1s ease forwards}.hero-anim .hero-copy>:first-child{animation-delay:.15s}.hero-anim .hero-copy>:nth-child(2){animation-delay:.3s}.hero-anim .hero-copy>:nth-child(3){animation-delay:.48s}.arch-draw{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.featured{padding:60px 0 104px}.feat-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);grid-gap:64px;gap:64px;align-items:center}.feat-ring{position:relative;padding:12px;max-width:480px}.feat-ring .arch-frame{aspect-ratio:4/5}.feat-ring .arch-frame img{transition:transform 1.6s ease}.feat-card:hover .arch-frame img{transform:scale(1.05)}.feat-copy h2{font-size:clamp(1.8rem,3vw,2.4rem);font-weight:300;margin-bottom:18px;transition:color .3s}.feat-card:hover .feat-copy h2{color:var(--terracotta)}.feat-copy .cat{font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);font-weight:500;display:block;margin-bottom:14px}.feat-copy p{color:var(--muted);max-width:52ch;margin-bottom:24px}.works{background:var(--sand)}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:56px 32px;gap:56px 32px}.work-grid>a:nth-child(3n+2){transform:translateY(44px)}.work{display:block}.work .arch-frame{aspect-ratio:4/5;margin-bottom:18px;transition:transform .5s ease,box-shadow .5s ease}.work .arch-frame img{transition:transform 1.6s ease}.work:hover .arch-frame{transform:translateY(-4px);box-shadow:0 22px 42px rgba(30,23,17,.16)}.work:hover .arch-frame img{transform:scale(1.055)}.feat-ring .arch-frame img.img-alt,.img-alt,.work .arch-frame img.img-alt{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease,transform 1.6s ease}.feat-card:hover .img-alt,.work:hover .img-alt{opacity:1}.arc-run{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none}.arc-run path{fill:none;stroke:var(--oak);stroke-width:2.5;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:1;opacity:0;transition:stroke-dashoffset 1.5s cubic-bezier(.4,0,.2,1),opacity .35s ease}.feat-card:hover .arc-run path,.work:hover .arc-run path{stroke-dashoffset:0;opacity:.9}@media (prefers-reduced-motion:reduce){.arc-run path{transition:opacity .35s}.img-alt{transition:none}}.work .cat{font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bronze);font-weight:500;display:block;margin-bottom:6px}.work h3{font-size:1.08rem;font-weight:400;transition:color .3s}.work:hover h3{color:var(--terracotta)}.works-head{max-width:680px;margin-bottom:70px}.works-head h2{font-size:clamp(1.9rem,3.2vw,2.5rem);font-weight:300}@media (max-width:960px){.feat-grid{grid-template-columns:1fr;gap:44px}.feat-ring{margin:0 auto}.work-grid{grid-template-columns:repeat(2,1fr)}.work-grid>a:nth-child(3n+2){transform:none}.work-grid>a:nth-child(2n){transform:translateY(40px)}}@media (max-width:600px){.work-grid{grid-template-columns:1fr}.work-grid>a:nth-child(2n){transform:none}.work{max-width:320px;margin:0 auto}}}@keyframes fadeup{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}