/* portfolio-v2 enhancements: brand identity + project-specific visuals */
.brand-mark{
  width:46px;height:34px;display:inline-block;flex:0 0 auto;
  background:url("assets/partowroshani-logo.png") center/contain no-repeat;
  color:transparent!important;font-size:0!important;
}
.site-footer .brand-mark{width:76px;height:52px}

.hero-brand-lockup{display:inline-flex;align-items:center;gap:14px;margin:0 0 24px}
.hero-logo-mark{
  width:92px;height:62px;display:block;
  background:url("assets/partowroshani-logo.png") center/contain no-repeat;
  filter:drop-shadow(0 10px 24px rgba(34,211,238,.12))
}
.hero-logo-word{font-weight:850;letter-spacing:-.035em;font-size:1.25rem}

.project-visual.has-photo{background:#090c15}
.visual-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.visual-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,10,18,.08),rgba(8,10,18,.82))}
.jet-visual .visual-photo{object-position:center}
.visual-kicker{position:absolute;top:18px;left:18px;font-family:monospace;font-size:.78rem;color:#e4e4e7;background:rgba(8,10,18,.72);padding:7px 10px;border:1px solid rgba(255,255,255,.12);border-radius:999px}
.signal-list{position:absolute;left:18px;bottom:18px;display:flex;gap:7px;flex-wrap:wrap;max-width:70%}
.signal-list span,.image-label{font-size:.72rem;padding:7px 10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(8,10,18,.76);color:#e4e4e7;backdrop-filter:blur(10px)}
.image-visual .visual-photo{object-fit:cover}
.image-overlay{background:linear-gradient(90deg,rgba(8,10,18,.34),rgba(8,10,18,.04) 50%,rgba(8,10,18,.34))}
.image-label{position:absolute;top:18px}.image-label-left{left:18px}.image-label-right{right:18px}
.restore-divider{position:absolute;top:8%;bottom:8%;left:50%;width:1px;background:linear-gradient(transparent,#22d3ee,transparent);box-shadow:0 0 18px #22d3ee}

.work-grid .project-thumb{
  position:relative;height:300px;margin:24px 0;border-radius:22px;overflow:hidden;
  border:1px solid var(--border);background:#090c15
}
.work-grid .project-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.work-grid .project-thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(8,10,18,.72))}
.project-thumb-caption{position:absolute;z-index:2;left:16px;bottom:14px;color:#f4f4f5;font-weight:750;font-size:.78rem}
.telegram-thumb img{object-position:center top}

.case-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:26px}
.case-gallery figure{margin:0;border:1px solid var(--border);border-radius:20px;overflow:hidden;background:var(--surface)}
.case-gallery img{display:block;width:100%;height:100%;max-height:520px;object-fit:cover}
.case-gallery figcaption{padding:12px 14px;color:var(--muted);font-size:.8rem;border-top:1px solid var(--border)}
.architecture-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:28px}
.architecture-flow span{padding:17px 12px;text-align:center;border:1px solid var(--border);border-radius:16px;background:var(--surface);font-size:.82rem}
.case-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}

@media(max-width:900px){
  .hero-brand-lockup{margin-bottom:16px}
  .hero-logo-mark{width:74px;height:50px}
  .case-gallery{grid-template-columns:1fr}
  .architecture-flow{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:580px){
  .hero-logo-word{display:none}
  .architecture-flow{grid-template-columns:1fr}
}