/* Project stories share the site's type, colors and spacing. */
.portfolio-hero{padding-top:44px;padding-bottom:48px}
.portfolio-hero h1{font-size:clamp(2.5rem,4.7vw,4.25rem);line-height:1.12;max-width:1000px;margin:20px 0 24px}
.portfolio-hero .lead{max-width:850px}
.portfolio-intro-note{font-size:1rem;max-width:800px}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.project-card{min-width:0;border-top:3px solid #a9cff7;padding:24px 0 0;display:flex;flex-direction:column;align-items:start}
.project-category{font-size:.75rem;letter-spacing:.09em;color:#405675}
.project-card h3{font-size:1.5rem;line-height:1.35;letter-spacing:-.035em;margin:14px 0 12px}
.project-card h3 a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:5px}
.project-card .project-client{font-size:.9375rem;font-weight:600;color:#263b59;margin:0 0 18px}
.project-card>p:not(.project-client){font-size:1.0625rem;line-height:1.75;margin-bottom:18px}
.project-card .text-link{color:#0645ce;margin-top:auto;padding-top:4px}
.portfolio-projects{padding-bottom:72px}
.portfolio-page .contact>div:first-child{max-width:670px}
.portfolio-page .contact h2{margin-top:0}
.portfolio-hero>.project-client{font-size:1.125rem;font-weight:600;color:#263b59}
.project-story{max-width:940px;padding-bottom:64px}
.project-story section{padding-top:36px;padding-bottom:12px;border-top:1px solid var(--line)}
.project-story h2{font-size:clamp(1.875rem,3vw,2.5rem);margin-bottom:24px}
.project-story h3{font-size:1.375rem;line-height:1.45;letter-spacing:-.025em;margin:30px 0 14px}
.project-story p{font-size:1.125rem;line-height:1.85}
.project-story .project-technology h2,.project-story .project-services h2{font-size:1.5rem;letter-spacing:-.025em;margin-bottom:14px}
.project-back{padding-top:24px}
.service-project-proof{padding-top:20px;padding-bottom:44px}
.service-project-proof h2{margin:16px 0 24px}
.service-project-proof p{max-width:950px}
.header .portfolio-nav-link[aria-current]{color:var(--blue);text-decoration:underline;text-underline-offset:7px}
@media(max-width:1000px){.project-grid{grid-template-columns:1fr}.project-card{max-width:760px;width:100%}.project-card .text-link{margin-top:0}.portfolio-hero{padding-top:32px}}
@media(max-width:600px){.portfolio-hero h1{font-size:clamp(2.125rem,8vw,3rem)}.portfolio-hero{padding-bottom:28px}.project-story section{padding-top:28px}.project-story p{line-height:1.75}.portfolio-projects{padding-bottom:48px}.project-grid{gap:32px}.portfolio-page .contact h2{font-size:2rem}}
