.portfolio-page-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.portfolio-header .portfolio-nav{position:static;flex-shrink:0}.portfolio-header .portfolio-nav a{min-height:40px;padding:9px 19px;font-size:13px;box-shadow:0 3px 10px #16386b14}.portfolio-shell{padding-bottom:48px}.portfolio-hero{padding:32px 0 0}.portfolio-banner{margin:0}.portfolio-banner img{width:100%;aspect-ratio:3.8;object-fit:cover;border:1px solid var(--line)}
.portfolio-about{display:grid;grid-template-columns:260px minmax(0,1fr);gap:44px;padding:36px 0 42px;align-items:start}.profile-photos{display:grid;gap:12px}.profile-photos img{width:100%;border:1px solid var(--line)}.profile-photos img:first-child{aspect-ratio:4/5;object-fit:cover;object-position:center 24%}.profile-photos img:last-child{aspect-ratio:16/9;object-fit:cover}.portfolio-bio>p{margin-bottom:20px}.portfolio-bio .bio-intro{font:400 21px/1.5 Georgia,serif}.portfolio-facts{display:grid;grid-template-columns:100px minmax(0,1fr);gap:9px 18px;margin:0 0 22px;font-size:14px}.portfolio-facts dt{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-top:2px}.portfolio-facts dd{margin:0}.portfolio-bio h2{font:650 13px/1.5 system-ui,sans-serif;margin:0 0 10px}.portfolio-skills{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:8px;font-size:14px;line-height:1.7}.portfolio-summary{font-size:14px;line-height:1.75;color:var(--muted)}.portfolio-summary strong{color:var(--ink)}
.portfolio-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:24px 0;border-block:1px solid var(--line)}.portfolio-section-heading h2{font:400 32px/1.2 Georgia,serif;letter-spacing:-.025em;max-width:600px}.portfolio-section-heading .eyebrow{margin-bottom:8px}.portfolio-section-heading>a{font-size:13px;white-space:nowrap}.portfolio-project{display:grid;grid-template-columns:310px minmax(0,1fr);column-gap:44px;row-gap:24px;padding:30px 0;border-bottom:1px solid var(--line);scroll-margin-top:24px}.project-primary{min-width:0}.project-primary h3{font:400 25px/1.2 Georgia,serif;letter-spacing:-.02em;margin:9px 0 18px}.project-primary>img{width:100%;height:auto;border:1px solid var(--line)}.portfolio-copy{font:15px/1.75 system-ui,-apple-system,"Segoe UI",sans-serif;padding-top:34px;min-width:0;overflow-wrap:break-word}.portfolio-copy p{margin:0}.portfolio-copy a{color:var(--accent);overflow-wrap:anywhere}.portfolio-copy b,.portfolio-copy strong{font-weight:650}.portfolio-copy u{text-decoration:none}.portfolio-gallery{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 18px}.portfolio-video{margin:0;min-width:0}.video-frame{aspect-ratio:16/9;background:#e9ebe5;border:1px solid var(--line)}.video-frame iframe{display:block;width:100%;height:100%;border:0}.portfolio-video figcaption{display:grid;gap:5px;padding-top:9px;font-size:12px;line-height:1.6;color:var(--muted)}.portfolio-video figcaption a{font-size:11px;color:var(--accent);justify-self:start}.portfolio-video figcaption a:hover{color:var(--ink)}
.press-links{list-style:none;padding:0;margin:0;display:grid;gap:0}.press-links li{border-bottom:1px solid var(--line);padding:13px 0}.press-links li:first-child{padding-top:0}.press-links li:last-child{border-bottom:0;padding-bottom:0}.press-links a{display:block;color:var(--ink);font:400 19px/1.45 Georgia,serif;text-decoration:none;overflow-wrap:normal}.press-links a:hover{color:var(--accent)}.press-links span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.portfolio-contact{display:grid;grid-template-columns:310px minmax(0,1fr);gap:44px;padding:38px 0 0;scroll-margin-top:24px}.portfolio-contact h2{font:400 32px/1.2 Georgia,serif;letter-spacing:-.025em;margin-top:8px}.portfolio-contact p{font-size:14px;color:var(--muted);margin:0 0 10px}.portfolio-contact .contact-address{font:400 clamp(17px,2vw,23px)/1.5 Georgia,serif;color:var(--ink);overflow-wrap:anywhere}.portfolio-contact .contact-address a{color:inherit}.portfolio-footer .footer-links{flex-wrap:wrap}
@media(max-width:900px){.portfolio-about{grid-template-columns:220px minmax(0,1fr);gap:28px}.portfolio-project,.portfolio-contact{grid-template-columns:250px minmax(0,1fr);column-gap:28px}.portfolio-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-copy{padding-top:32px;font-size:14px}}
@media(max-width:650px){.portfolio-header .brand{font-size:19px}.portfolio-header .portfolio-nav{gap:7px}.portfolio-header .portfolio-nav a{min-height:38px;padding:8px 12px;font-size:12px;border-radius:10px}.portfolio-shell{padding-bottom:32px}.portfolio-hero{padding-top:26px}.portfolio-banner img{aspect-ratio:3}.portfolio-about{grid-template-columns:1fr;padding:28px 0;gap:22px}.profile-photos{grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}.profile-photos img:first-child,.profile-photos img:last-child{aspect-ratio:4/5;height:100%;object-fit:cover}.profile-photos img:last-child{object-position:center}.portfolio-bio .bio-intro{font-size:20px}.portfolio-facts{grid-template-columns:90px minmax(0,1fr);gap:8px 12px;font-size:13px}.portfolio-skills,.portfolio-summary{font-size:13px}.portfolio-section-heading{display:block;padding:20px 0}.portfolio-section-heading h2{font-size:28px}.portfolio-section-heading>a{display:inline-block;margin-top:12px}.portfolio-project{grid-template-columns:1fr;gap:20px;padding:26px 0}.project-primary h3{font-size:25px;margin-bottom:15px}.project-primary>img{max-height:300px;object-fit:contain;background:var(--wash)}.portfolio-copy{padding-top:0;font-size:14px}.portfolio-gallery{grid-template-columns:1fr;gap:20px}.portfolio-video figcaption{font-size:12px}.portfolio-contact{grid-template-columns:1fr;gap:16px;padding-top:28px}.portfolio-contact h2{font-size:28px}.press-links a{font-size:18px}}
@media print{.portfolio-header,.portfolio-footer,.portfolio-section-heading>a{display:none}.portfolio-shell{max-width:none;padding:0}.portfolio-hero{padding:0}.portfolio-banner img{max-height:160px}.portfolio-about{grid-template-columns:150px 1fr;gap:24px}.portfolio-project{grid-template-columns:180px 1fr;gap:24px;break-inside:avoid}.portfolio-copy{font-size:10pt;padding-top:0}.video-frame{display:none}.portfolio-gallery{gap:10px}.portfolio-video figcaption a{font-size:9pt}.portfolio-contact{grid-template-columns:180px 1fr;gap:24px}}
