/* Portfolio-specific styles; original site CSS remains unchanged. */
.portfolio-page { background: #060609; }
.portfolio-page .site-header { z-index: 100; }
.portfolio-page .nav-links [aria-current="page"] { color: #fff; }
.portfolio-page .portfolio-hero { position: relative; min-height: 64vh; display:flex; align-items:center; padding-top:180px; padding-bottom:90px; background: radial-gradient(ellipse at 79% 15%,rgba(154,98,255,.17),transparent 42%), radial-gradient(ellipse at 10% 70%,rgba(255,56,209,.09),transparent 45%); }
.portfolio-page .portfolio-hero h1 { max-width: 900px; font-size:clamp(3.4rem,8vw,8rem); line-height:.98; letter-spacing:-.065em; padding:0 0 .12em; }
.portfolio-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }
.portfolio-gallery-section { padding-top:96px; }
.portfolio-filters { display:flex; flex-wrap:wrap; gap:9px; margin:32px 0 34px; }
.portfolio-filter { font:inherit; cursor:pointer; text-transform:uppercase; letter-spacing:.12em; font-size:.64rem; font-weight:700; color:rgba(255,255,255,.56); padding:12px 15px; background:rgba(255,255,255,.025); border:1px solid rgba(255,255,255,.1); transition:background .2s,color .2s,border-color .2s; }
.portfolio-filter:hover,.portfolio-filter:focus-visible {color:#fff;border-color:rgba(255,255,255,.3);}
.portfolio-filter.is-active { color:#fff; border-color:rgba(189,126,255,.6); background:rgba(154,98,255,.13);}
.portfolio-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.portfolio-card { display:block; min-width:0; padding:0 0 26px; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.1); color:#fff; }
.portfolio-card[hidden] { display:none!important; }
.portfolio-image { aspect-ratio:1.5; width:100%; overflow:hidden; background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.06); margin-bottom:20px; }
.portfolio-image img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .5s ease,filter .5s ease; }
.portfolio-card:hover img { transform:scale(1.045); }
.portfolio-card-meta { font-size:.62rem; font-weight:700; letter-spacing:.15em; color:var(--violet,#a87bff); margin-bottom:11px; text-transform:uppercase; }
.portfolio-card h3 {font-size:clamp(1.3rem,2.8vw,2.2rem);letter-spacing:-.04em;margin:0 0 10px;line-height:1.12;}
.portfolio-card p {color:var(--muted,rgba(255,255,255,.55)); font-size:.87rem; line-height:1.65; max-width:50ch; margin:0 0 15px;}
.portfolio-arrow { font-size:.68rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; color:#eee; }
.portfolio-artstation-art { display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 80% 20%,rgba(154,98,255,.28),transparent 48%),linear-gradient(120deg,#13121e,#090a10); }
.portfolio-artstation-art>span { font-size:clamp(2rem,6vw,5rem); line-height:.78; letter-spacing:-.07em; font-weight:900; color:#f6f1ff; }
.portfolio-dot {color:var(--magenta,#ff38d1);}
.portfolio-outro {padding-top:110px;padding-bottom:120px;}
.portfolio-outro .button {margin-top:25px;}
.portfolio-footer { border-top:1px solid rgba(255,255,255,.08); padding:25px 0 36px; }
.portfolio-footer .section-inner {display:flex;gap:15px;justify-content:space-between;flex-wrap:wrap;font-size:.7rem;color:rgba(255,255,255,.45);}
.portfolio-footer a {color:rgba(255,255,255,.75);}
.portfolio-empty {padding:25px;border:1px solid rgba(255,255,255,.1);color:var(--muted);}
@media(max-width:767px) {
.portfolio-page .portfolio-hero {padding-top:155px;min-height:auto;padding-bottom:65px;}
.portfolio-page .portfolio-hero h1 {font-size:clamp(2.65rem,11vw,4.8rem);}
.portfolio-grid {grid-template-columns:1fr;gap:30px;}
.portfolio-filters {gap:7px;}
.portfolio-filter {padding:11px;font-size:.59rem;}
.portfolio-page .nav-links { gap:10px; }
.portfolio-page .brand {max-width:105px;line-height:1.3;}
.portfolio-page .nav-links a {font-size:.58rem;}
.portfolio-page .nav-links a:nth-child(2) {display:inline;}
}
@media(prefers-reduced-motion:reduce){.portfolio-image img{transition:none;}}
