.portfolio-page{--surface:#191919;--ease-enter:cubic-bezier(.25,.46,.45,.94);height:100svh;padding:0 32px;overflow:hidden}.portfolio-layout{grid-template-rows:minmax(0,1fr);grid-template-columns:400px minmax(0,1fr);gap:48px;max-width:1200px;height:100%;min-height:0;margin:auto;display:grid}.portfolio-intro{overscroll-behavior:contain;scrollbar-width:thin;align-self:start;max-height:100%;padding:48px 4px 48px 0;overflow:auto}.portfolio-intro .portrait{box-shadow:none;transition:none;transform:none}.portfolio-intro .role{font-size:14px;line-height:22px}.portfolio-intro .portfolio-headline{letter-spacing:-.045em;text-wrap:balance;margin:32px 0 24px;font-size:40px;font-weight:500;line-height:1.1}.portfolio-intro p{color:var(--muted)}.portfolio-intro p+p{margin-top:16px}.portfolio-intro .record-icon-entity{border:0;border-radius:6px;margin-left:2px}.portfolio-intro p a.inline-record{white-space:normal;padding:0}.portfolio-intro .intro-socials{margin-top:32px}.portfolio-intro .footer-socials{gap:4px;margin-left:-12px}.portfolio-intro .footer-socials a{opacity:.65;justify-content:center;align-items:center;width:44px;height:44px;transition:opacity .12s;display:flex}.portfolio-intro .footer-socials a:hover{opacity:1}.portfolio-work{overscroll-behavior:contain;scrollbar-width:thin;--edge-top:0px;--edge-bottom:0px;min-width:0;height:100%;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 var(--edge-top),#000 calc(100% - var(--edge-bottom)),transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 var(--edge-top),#000 calc(100% - var(--edge-bottom)),transparent 100%);padding:48px 12px 144px 0;scroll-padding-top:64px;overflow:auto}.portfolio-work.has-before{--edge-top:64px}.portfolio-work.has-more{--edge-bottom:96px}.project-gallery{flex-direction:column;gap:48px;display:flex}.gallery-project{min-width:0}.project-media{aspect-ratio:16/9;background:var(--surface);border-radius:16px;display:block;overflow:hidden}.project-media img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.brand-media{justify-content:center;align-items:center;display:flex}.brand-media img{object-fit:cover;border-radius:20px;width:120px;height:120px}.project-caption{margin-top:12px}.project-caption h2{margin:0 0 4px;font-size:16px;line-height:26px}.project-caption h2 a:hover{text-underline-offset:3px;text-decoration:underline;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted)}.project-caption p{color:var(--muted);overflow-wrap:anywhere;font-size:14px;line-height:23px}.portfolio-page .portfolio-footer{border:0;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:24px;min-height:44px;margin-top:48px;padding:0;font-size:13px;display:flex}.portfolio-footer>a:hover{text-underline-offset:3px;text-decoration:underline}.portfolio-page .signature-trigger{color:var(--muted);cursor:pointer;background:0 0;border:0;min-height:44px;padding:8px 0;font-size:13px}.signature-trigger svg{width:120px;height:45px;display:block;overflow:visible}.signature-dialog{border:1px solid var(--border);background:var(--background);width:min(520px,100vw - 32px);max-height:calc(100svh - 32px);color:var(--text);border-radius:16px;padding:24px;overflow:auto}.signature-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0008}.signature-dialog h2{margin-bottom:8px;font-size:20px}.signature-dialog p{color:var(--muted);font-size:14px}.signature-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;font-size:13px;display:flex}.signature-dialog button,.signature-controls select{font:inherit;border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text);cursor:pointer;border-radius:6px;padding:8px 12px}.signature-controls button[aria-pressed=true]{border-color:var(--text)}.signature-controls label{color:var(--muted);align-items:center;gap:8px;display:flex}.signature-dialog .record-status{min-height:20px;margin-top:12px;font-size:12px;line-height:20px}.signature-pad{background:var(--surface);touch-action:none;cursor:crosshair;border-radius:10px;width:100%;margin:24px 0;display:block}.signature-pad.is-recording{outline:1px solid var(--muted);outline-offset:3px}.signature-pad circle{pointer-events:none}.signature-actions{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.signature-actions button{font-size:14px}.signature-actions button:disabled{opacity:.4;cursor:default}.portfolio-page button:focus-visible,.portfolio-page select:focus-visible,.portfolio-work:focus-visible,.signature-pad:focus-visible{outline:2px solid var(--muted);outline-offset:4px}.platform-word{display:inline-block}@keyframes portfolio-hero-enter{0%{opacity:0;transform:translateY(8px)}}@keyframes portfolio-hero-blur{0%{filter:blur(8px)}}@media (prefers-reduced-motion:no-preference){.portfolio-page .platform-enter{animation:portfolio-hero-enter .68s var(--ease-enter) backwards,portfolio-hero-blur .68s var(--ease-enter);animation-delay:var(--t,0s)}.portfolio-page .first-project .project-media,.portfolio-page .gallery-project.is-visible .project-media{animation:portfolio-hero-enter .68s var(--ease-enter) backwards;animation-delay:var(--t,0s)}.portfolio-page .first-project .project-media{--t:.595s}.portfolio-page .first-project .project-caption,.portfolio-page .gallery-project.is-visible .project-caption{animation:portfolio-hero-enter .68s var(--ease-enter) backwards,portfolio-hero-blur .68s var(--ease-enter);animation-delay:var(--t,.255s)}.portfolio-page .first-project .project-caption{--t:.85s}}@media (max-width:1000px) and (min-width:825px){.portfolio-layout{grid-template-columns:320px minmax(0,1fr);gap:32px}}@media (max-width:824px){.portfolio-page{height:auto;min-height:100svh;padding:32px 20px 64px;overflow:visible}.portfolio-layout{height:auto;display:block}.portfolio-intro{max-height:none;margin-bottom:40px;padding:0;overflow:visible}.portfolio-intro .portfolio-headline{max-width:300px;margin-top:24px;font-size:32px}.portfolio-intro .intro-socials{margin-top:20px}.portfolio-work{height:auto;padding:0;overflow:visible;-webkit-mask-image:none;mask-image:none}.project-gallery{gap:40px}}@media (prefers-reduced-motion:reduce){.signature-trigger path{stroke-dashoffset:0!important}}.portfolio-intro .privacy-link{min-height:44px;color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:4px;align-items:center;font-size:12px;display:inline-flex}.portfolio-intro .privacy-link:hover{-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text)}@media (min-width:825px){:is(html:has(.portfolio-page),body:has(.portfolio-page)){height:100%;overflow:hidden}}
