.portfolio-gallery{background:var(--background);color:var(--foreground)}@keyframes portfolioHeroFadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes portfolioRuleExpand{0%{width:0}to{width:80px}}.portfolio-hero{position:relative;min-height:45vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#0c0c0c,#18130d 35%,#0d1717 65%,#0c0c0c);overflow:hidden;padding:3rem 1.5rem}.portfolio-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(201,169,110,.07) 0,transparent 55%),radial-gradient(ellipse at 80% 30%,rgba(14,116,144,.04) 0,transparent 45%)}.portfolio-hero-content{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:680px;padding:2rem;animation:portfolioHeroFadeUp 1s ease-out both}.portfolio-hero-eyebrow{font-family:Georgia,Times New Roman,serif;font-size:.8125rem;font-style:italic;letter-spacing:.4em;text-transform:uppercase;color:var(--primary);margin-bottom:1.5rem;opacity:.9}.portfolio-hero-title{font-size:clamp(2.5rem,7vw,5rem);font-weight:300;line-height:1.05;letter-spacing:-.02em;margin:0}.portfolio-hero-rule{width:80px;height:1px;background:linear-gradient(90deg,transparent,var(--primary),transparent);margin:2rem auto;animation:portfolioRuleExpand .8s ease-out .5s both}.portfolio-hero-subtitle{font-family:Georgia,Times New Roman,serif;font-size:1.0625rem;line-height:1.9;color:var(--muted);max-width:540px;margin:0 auto;letter-spacing:.01em}.portfolio-section{padding:5rem 2rem}.portfolio-section-header{text-align:center;max-width:600px;margin:0 auto 3.5rem}.portfolio-section-title{font-size:clamp(2rem,5vw,3rem);font-weight:300;letter-spacing:-.01em;margin:0 0 1rem}.portfolio-section-title:after{content:"";display:block;width:60px;height:1px;background:linear-gradient(90deg,transparent,var(--primary),transparent);margin:1.25rem auto 0}.portfolio-section-desc{color:var(--muted);font-size:1rem;line-height:1.7;margin:0}.portfolio-masonry{max-width:1400px;margin:0 auto;column-count:3;column-gap:1.5rem}@media (max-width:1024px){.portfolio-masonry{column-count:2}}@media (max-width:640px){.portfolio-masonry{column-count:1;column-gap:.75rem}}.portfolio-item{break-inside:avoid;margin-bottom:2rem}@media (max-width:640px){.portfolio-item{margin-bottom:1.5rem}}.portfolio-item-frame{position:relative;overflow:hidden;background:var(--border);border:1px solid rgba(255,255,255,.04)}.portfolio-item--large .portfolio-item-frame{aspect-ratio:4/3}.portfolio-item--tall .portfolio-item-frame{aspect-ratio:3/4}.portfolio-item--medium .portfolio-item-frame{aspect-ratio:1/1}.portfolio-item-img{object-fit:contain;padding:1rem;transition:transform .6s cubic-bezier(.16,1,.3,1)}.portfolio-item-frame:hover .portfolio-item-img{transform:scale(1.05)}.portfolio-item-meta{padding:1rem .25rem 0;text-align:center}.portfolio-item-title{font-size:1.125rem;font-weight:400;margin:0 0 .25rem}.portfolio-item-medium{font-family:Georgia,Times New Roman,serif;font-style:italic;font-size:.875rem;color:var(--muted);margin:0 0 .75rem;letter-spacing:.03em}.portfolio-item-status{display:inline-block;padding:.3rem .9rem;font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase}.portfolio-item-status--print{color:var(--primary);border:1px solid var(--primary)}.portfolio-item-status--original{color:var(--background);background:var(--primary);border:1px solid var(--primary)}.portfolio-item-status--sold{color:var(--muted);border:1px solid var(--border)}.portfolio-cta{padding:7rem 2rem;text-align:center;background:linear-gradient(to bottom,var(--background),#16120c);border-top:1px solid rgba(201,169,110,.08)}.portfolio-cta-title{font-size:clamp(2rem,5vw,3.5rem);font-weight:300;margin:0 0 1rem;letter-spacing:-.01em}.portfolio-cta-desc{font-family:Georgia,Times New Roman,serif;color:var(--muted);font-size:1.0625rem;line-height:1.7;margin:0 0 3rem;font-style:italic}.portfolio-cta-button{display:inline-block;padding:1.125rem 3.5rem;font-size:.8125rem;letter-spacing:.25em;text-transform:uppercase;color:var(--background);background:var(--primary);text-decoration:none;border:1px solid transparent;transition:all .4s ease}.portfolio-cta-button:hover{background:transparent;color:var(--primary);border-color:var(--primary);transform:translateY(-2px)}