.subpage-body{min-height:100vh;background:var(--bg)}
.subpage-header{position:sticky;top:0;z-index:60;height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - var(--max))/2));background:rgba(8,8,10,.88);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.subpage-nav{display:flex;align-items:center;gap:24px;font-size:.69rem;letter-spacing:.14em;text-transform:uppercase}.subpage-nav>a:hover{color:var(--gold)}
.subpage-main{min-height:calc(100vh - 150px)}
.subpage-hero{width:min(var(--max),calc(100% - 48px));margin:auto;padding:150px 0 80px;border-bottom:1px solid var(--line);position:relative}
.subpage-hero:after{content:"";position:absolute;width:480px;height:480px;right:-220px;top:10px;border-radius:50%;background:radial-gradient(circle,rgba(112,51,63,.16),transparent 67%);pointer-events:none}
.subpage-hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(4rem,9vw,8.5rem);line-height:.86;letter-spacing:-.055em;margin:20px 0 24px;max-width:1050px}
.subpage-lead{max-width:760px;color:var(--muted);font-size:1.08rem}
.bio-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}
.bio-aside{position:sticky;top:120px;align-self:start}.bio-aside img{width:min(250px,70%);margin-bottom:26px}.bio-aside p{color:var(--muted)}
.bio-block{padding:0 0 55px;margin-bottom:55px;border-bottom:1px solid var(--line)}.bio-block:last-child{border-bottom:0}
.bio-block h2{font:400 clamp(2.1rem,4vw,4rem)/1 Georgia,"Times New Roman",serif;margin:10px 0 26px}.bio-block p{color:var(--muted);font-size:1.02rem}
.bio-list{list-style:none;margin:0;padding:0;display:grid;gap:0}.bio-list li{display:grid;grid-template-columns:minmax(170px,.7fr) 1.3fr;gap:28px;padding:19px 0;border-bottom:1px solid var(--line)}.bio-list strong{font-weight:400;color:var(--text)}.bio-list span{color:var(--muted)}
.name-cloud{display:flex;flex-wrap:wrap;gap:10px}.name-cloud span{border:1px solid var(--line);padding:10px 14px;color:#c5beb2;font-size:.8rem;letter-spacing:.04em}
.portfolio-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}.filter-list{display:flex;flex-wrap:wrap;gap:9px}.filter-list button{border:1px solid var(--line);background:transparent;color:#aaa49a;padding:9px 13px;cursor:pointer;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.filter-list button.active,.filter-list button:hover{border-color:var(--gold);color:var(--gold)}.portfolio-count{color:#7f7971;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}
.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:70px;gap:14px}.portfolio-item{position:relative;overflow:hidden;border:1px solid var(--line);background:#111;cursor:zoom-in}.portfolio-item:nth-child(6n+1){grid-column:span 7;grid-row:span 8}.portfolio-item:nth-child(6n+2){grid-column:span 5;grid-row:span 6}.portfolio-item:nth-child(6n+3){grid-column:span 5;grid-row:span 7}.portfolio-item:nth-child(6n+4){grid-column:span 7;grid-row:span 7}.portfolio-item:nth-child(6n+5){grid-column:span 5;grid-row:span 7}.portfolio-item:nth-child(6n+6){grid-column:span 7;grid-row:span 8}.portfolio-item img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease),filter .45s}.portfolio-item:hover img{transform:scale(1.045);filter:brightness(.73)}.portfolio-overlay{position:absolute;inset:auto 0 0;padding:70px 22px 20px;background:linear-gradient(transparent,rgba(0,0,0,.9));transform:translateY(20px);opacity:0;transition:.4s var(--ease)}.portfolio-item:hover .portfolio-overlay,.portfolio-item:focus .portfolio-overlay{opacity:1;transform:none}.portfolio-meta{margin:0 0 7px;color:var(--gold);font-size:.63rem;letter-spacing:.14em;text-transform:uppercase}.portfolio-overlay h2{margin:0;font:400 1.45rem/1.05 Georgia,serif}.portfolio-description{margin:8px 0 0;color:#c7c0b5;font-size:.84rem}
.portfolio-empty{padding:60px 25px;border:1px solid var(--line);text-align:center;background:rgba(255,255,255,.02)}.portfolio-empty h2{font:400 clamp(2rem,5vw,4rem)/1 Georgia,serif;margin:0 0 15px}.portfolio-empty p{max-width:650px;margin:auto;color:var(--muted)}
.admin-link{opacity:.45}.admin-link:hover{opacity:1;color:var(--gold)}
@media(max-width:980px){.subpage-nav{gap:14px}.bio-layout{grid-template-columns:1fr}.bio-aside{position:static}.portfolio-grid{grid-auto-rows:55px}.portfolio-item:nth-child(n){grid-column:span 6;grid-row:span 7}.portfolio-item:nth-child(6n+1),.portfolio-item:nth-child(6n+4){grid-column:span 12;grid-row:span 9}}
@media(max-width:720px){.subpage-header{height:auto;min-height:72px;padding:13px 16px;gap:12px}.subpage-nav>a{display:none}.subpage-nav>a:first-child{display:block}.subpage-hero{width:calc(100% - 32px);padding:115px 0 60px}.subpage-hero h1{font-size:clamp(3.6rem,18vw,6rem)}.bio-list li{grid-template-columns:1fr;gap:5px}.portfolio-toolbar{align-items:flex-start;flex-direction:column}.portfolio-grid{display:grid;grid-template-columns:1fr;grid-auto-rows:auto}.portfolio-item:nth-child(n){grid-column:auto;grid-row:auto;aspect-ratio:4/5}.portfolio-overlay{opacity:1;transform:none}.footer{width:calc(100% - 32px)}}
.portfolio-item iframe,.portfolio-item video{width:100%;height:100%;border:0;background:#000;object-fit:cover}.portfolio-item.is-video{cursor:default}.portfolio-item.is-video .portfolio-overlay{pointer-events:none;opacity:1;transform:none;padding-top:55px}.portfolio-item.is-video:hover .portfolio-overlay{opacity:0}.portfolio-item.is-embed .portfolio-overlay{opacity:0}
.portfolio-item.is-video .portfolio-overlay{inset:0 0 auto;padding:18px 20px 58px;background:linear-gradient(rgba(0,0,0,.78),transparent);opacity:1;transform:none}.portfolio-item.is-video:hover .portfolio-overlay{opacity:0}
