.desktop-nav a[aria-current="page"]::after{transform:scaleX(1)}
.portfolio-hero{padding:clamp(88px,12vw,160px) 0 clamp(92px,12vw,150px)}
.portfolio-hero h1{max-width:1100px;margin:28px 0 52px;font:400 clamp(4rem,9vw,8.8rem)/.9 Georgia,serif;letter-spacing:-.065em}
.portfolio-hero h1 em{color:var(--clay);font-weight:400}
.portfolio-intro{display:grid;grid-template-columns:1fr auto;gap:48px;align-items:end;margin-left:auto;max-width:780px}
.portfolio-intro p{max-width:52ch;margin:0;color:var(--soft);font-size:1.08rem;line-height:1.7}
.portfolio-intro span{color:var(--clay);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.featured-project{padding-bottom:clamp(100px,14vw,180px)}
.featured-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:clamp(32px,8vw,110px);align-items:end;padding:36px 0;border-top:1px solid var(--thread)}
.featured-heading h2{margin:20px 0 0;font:400 clamp(3rem,6.5vw,6.8rem)/.92 Georgia,serif;letter-spacing:-.055em}
.featured-deck{max-width:38ch;margin:0;color:var(--soft);font:italic clamp(1.2rem,2vw,1.55rem)/1.5 Georgia,serif}
.project-image figcaption{margin-top:18px;color:var(--soft);font-size:.78rem;letter-spacing:.04em}
.project-facts{display:grid;grid-template-columns:repeat(3,1fr);margin:0;padding:32px 0 42px;border-top:1px solid var(--thread);border-bottom:1px solid var(--thread)}
.project-facts div{padding-right:24px}.project-facts div+div{padding-left:clamp(24px,4vw,56px);border-left:1px solid var(--thread)}
.project-facts dt{margin-bottom:10px;font-size:.75rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase}.project-facts dd{margin:0;color:var(--soft);line-height:1.5}
.project-story{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(320px,1.15fr);gap:clamp(42px,9vw,140px);padding:clamp(72px,9vw,120px) 0}
.project-story--bordered{border-top:1px solid var(--thread)}
.section-kicker{margin:0 0 22px;color:var(--clay);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.project-story h3{margin:0;font:400 clamp(2.4rem,4.5vw,4.7rem)/.98 Georgia,serif;letter-spacing:-.045em}
.project-story>p{max-width:55ch;margin:40px 0 0;color:var(--soft);font-size:1.05rem;line-height:1.8}
.project-image{margin:0 0 clamp(74px,10vw,130px)}
.project-image img{display:block;width:100%;height:auto;border:1px solid var(--thread);box-shadow:0 22px 55px rgb(33 30 26/10%)}
.project-result{padding:clamp(70px,10vw,130px);background:var(--parchment)}
.project-result blockquote{max-width:900px;margin:22px 0 36px;font:400 clamp(2.8rem,5.6vw,5.8rem)/.98 Georgia,serif;letter-spacing:-.05em}
.project-result>p:last-child{max-width:55ch;margin:0 0 0 auto;color:var(--soft);font-size:1.05rem;line-height:1.75}
.project-image--result{margin-top:clamp(38px,6vw,72px)}
.project-pagination{display:flex;justify-content:flex-end;padding-top:36px;border-top:1px solid var(--thread)}
.project-pagination a{display:inline-flex;align-items:center;gap:22px;color:var(--ink);font:400 clamp(1.5rem,2.8vw,2.5rem)/1.1 Georgia,serif;text-decoration:none}
.project-pagination a span{transition:transform 200ms ease}.project-pagination a:hover span{transform:translateX(7px)}
.practice-strip{padding:clamp(85px,11vw,145px) 0;background:var(--clay);color:var(--paper)}
.practice-strip .eyebrow{color:#f1c9be}.practice-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 50px;margin-top:42px}
.practice-list span{padding:24px 0;border-top:1px solid rgb(252 250 245/.34);font:400 clamp(2.3rem,5vw,5.2rem)/1 Georgia,serif;letter-spacing:-.045em}
.portfolio-closing{background:var(--ink);color:var(--paper)}
.portfolio-closing>div{min-height:650px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding-block:90px}
.portfolio-closing .eyebrow{color:#e9a394}.portfolio-closing h2{max-width:1000px;margin:28px 0 44px;font:400 clamp(3.3rem,7vw,7rem)/.94 Georgia,serif;letter-spacing:-.05em}
.portfolio-closing .story-button{background:var(--paper);color:var(--ink)}.portfolio-closing .story-button:hover{background:#e9a394}
@media(max-width:800px){.portfolio-hero h1{font-size:clamp(3.5rem,15vw,6rem)}.portfolio-intro,.featured-heading,.project-story{grid-template-columns:1fr}.portfolio-intro{gap:28px}.featured-heading{align-items:start}.project-facts{grid-template-columns:1fr}.project-facts div,.project-facts div+div{padding:18px 0;border-left:0;border-top:1px solid var(--thread)}.project-facts div:first-child{border-top:0}.project-story>p{margin-top:0}.project-result{padding:54px 24px}.practice-list{grid-template-columns:1fr}.portfolio-closing>div{min-height:560px}}

/* Compact project index and preserved project detail. */
.portfolio-hero:has(+.project-gallery){padding-block:clamp(64px,8vw,100px) 56px}
.portfolio-hero:has(+.project-gallery) h1{font-size:clamp(3rem,6vw,5.5rem);margin-bottom:32px}
.portfolio-hero:has(+.project-gallery) .portfolio-intro{display:block;max-width:600px;margin-left:0}
.project-gallery{padding-bottom:clamp(80px,10vw,140px)}
.project-card{display:block;width:100%;max-width:440px;text-decoration:none;color:var(--ink)}
.project-card-image{background:var(--parchment);padding:24px;margin-bottom:24px;overflow:hidden}
.project-card-image img{display:block;width:100%;height:auto;transition:transform 200ms ease}
.project-card:hover .project-card-image img{transform:scale(1.025)}
.project-card:focus-visible,.project-back:focus-visible{outline:3px solid var(--clay);outline-offset:8px}
.project-card .eyebrow{font-size:.875rem}
.project-card h2{margin:14px 0 16px;font:400 clamp(1.8rem,3vw,2.4rem)/1.1 Georgia,serif;letter-spacing:-.035em}
.project-card-label,.project-back{font-size:1rem;color:var(--clay);text-underline-offset:5px}
.project-card-label{text-decoration:underline}
.project-detail-hero{padding-bottom:64px}
.project-back{display:inline-block;margin-bottom:12px}
@media(prefers-reduced-motion:reduce){.project-card-image img{transition:none}}
