@font-face{font-family:Inter;src:url('public/fonts/inter-variable.ttf');font-display:swap}
*{box-sizing:border-box}
html,body{margin:0;background:var(--color-page-bg);color:var(--color-text);font-family:var(--font-body)}
a{color:inherit;text-decoration:none}
.portfolio-page .page{min-height:100dvh;padding-top:122px;background:var(--color-page-bg)!important}
.nav{position:absolute;z-index:100;top:0;left:0;right:0;padding:18px 32px;display:flex;align-items:center;justify-content:space-between}
.brand{display:block;width:165px;height:auto}
.pill{position:absolute;left:50%;transform:translateX(-50%);display:flex;gap:4px;padding:6px;border:var(--border-width-default) solid var(--color-nav-border);border-radius:40px;background:var(--color-header-bg);box-shadow:var(--shadow-sm);backdrop-filter:blur(14px)}
.pill a{font-size:9px;font-weight:600;letter-spacing:.14em;padding:9px 15px;border-radius:30px}
.pill a:hover,.pill a.active{background:var(--color-brand);color:var(--color-text-inverse)}
.portfolio-grid{width:min(calc(100% - 64px),1400px);margin:24px auto 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:18px;row-gap:42px}
.project-card{display:block;min-width:0}
.project-cover{position:relative;overflow:hidden;aspect-ratio:2048/1448;background:var(--color-surface-subtle)}
.project-cover img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform var(--duration-slow) var(--ease-out),filter .4s var(--ease-standard)}
.project-card.cover-center .project-cover img{object-position:center center}
.project-card.cover-property .project-cover img{object-position:center 15%}
.project-card:hover .project-cover img{transform:scale(1.025);filter:saturate(1.04)}
.project-card h2{margin:15px 0 4px;font-size:18px;font-weight:600;line-height:1.2;letter-spacing:-.025em}
.project-card p{margin:0;font-size:14px;font-style:italic;line-height:1.35;color:var(--color-text-secondary)}
.videos{width:min(calc(100% - 64px),1400px);margin:130px auto 100px}
.video-head{text-align:center;margin-bottom:36px}
.video-head h2{margin:0;font-size:clamp(42px,5vw,72px);font-weight:520;line-height:.95;letter-spacing:-.055em}
.video-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:18px;row-gap:42px}
.animation-card .project-cover{border-radius:0}
.animation-card iframe{display:block;width:100%;height:100%;border:0;background:var(--color-media-bg);transition:transform var(--duration-slow) var(--ease-out)}
.animation-card:hover iframe{transform:scale(1.025)}
@media(max-width:900px){
  .portfolio-grid,.video-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .portfolio-page .page{padding-top:94px}
  .nav{padding:14px 16px}
  .brand{width:145px}
  .portfolio-grid{width:calc(100% - 14px);margin-top:12px;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:6px;row-gap:23px}
  .project-cover{aspect-ratio:2048/1448}
  .project-card h2{margin:8px 0 2px;font-size:10px;line-height:1.12;overflow-wrap:anywhere}
  .project-card p{font-size:9px}
  .videos{width:calc(100% - 28px);margin:75px auto 65px}
  .video-head{margin-bottom:24px}
  .video-row{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:6px;row-gap:23px}
}
