.projects{padding-block:clamp(40px,4vw,56px)}.projects__head{justify-content:space-between;align-items:end;gap:20px 48px;margin-bottom:28px;display:flex}.projects__head h2{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,3.6vw,3.25rem);font-weight:650;line-height:1.05}.projects__head p{color:var(--muted-paper);margin:0;font-size:.9rem}.projects__head--link{flex-wrap:wrap;align-items:center;margin-bottom:0}.projects__head--link>p{flex:240px;max-width:28rem}.projects__head--link .btn{flex:none}.portfolio-toolbar{border-block:1px solid var(--line-ink);justify-content:space-between;align-items:center;gap:20px;padding-block:16px;display:flex}.portfolio-categories{scrollbar-width:thin;scrollbar-color:var(--red) var(--ink-3);align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.portfolio-toolbar__label{font-size:.87rem;font-weight:600}.portfolio-categories button,.portfolio-layout button{color:var(--muted-ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;gap:9px;padding:9px 13px;font-size:.77rem;line-height:1.3;display:inline-flex}.portfolio-categories button span{opacity:.7;font-size:.65rem}.portfolio-categories button[aria-pressed=true]{background:var(--paper);color:var(--ink)}.portfolio-layout{flex-shrink:0;gap:4px;display:flex}.portfolio-layout button[aria-pressed=true]{border-color:var(--red);color:var(--paper)}.portfolio-categories button:focus-visible{outline-offset:-2px}.portfolio-layout svg{width:16px;height:16px}.portfolio-meta{color:var(--muted-ink);justify-content:space-between;align-items:center;gap:16px;padding-block:16px 22px;font-size:.74rem;display:flex}.portfolio-meta p{margin:0}.portfolio-search{border-bottom:1px solid var(--line-ink);align-items:center;gap:10px;width:min(320px,55%);display:flex}.portfolio-search svg{flex-shrink:0;width:17px;height:17px}.portfolio-search input{width:100%;min-width:0;color:var(--paper);font:inherit;background:0 0;border:0;padding:8px 0;font-size:.78rem}.portfolio-search input::placeholder{color:var(--muted-ink)}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:40px 24px;display:grid}.portfolio-grid--single{grid-template-columns:minmax(0,1fr)}.portfolio-project{outline:1px solid var(--line-ink);background:var(--ink);grid-template-areas:"visual""meta";min-width:0;transition:outline-color .22s;display:grid;position:relative}.portfolio-project__cover{aspect-ratio:4/3;background:var(--ink-2);grid-area:visual;min-width:0;position:relative;overflow:hidden}.portfolio-grid--single .portfolio-project__cover{aspect-ratio:3.1;min-height:380px;max-height:480px}.portfolio-grid--single{margin-top:24px}.portfolio-project__photo{object-fit:cover;object-position:center;transition:transform .8s var(--ease)}.portfolio-project__cover:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#0d0c0b29,#0000 30%,#0d0c0b52 54%,#0d0c0bf2);position:absolute;inset:0}.portfolio-project__live{z-index:3;color:var(--paper);background:#0d0c0bb3;border:1px solid #f2ede44d;align-items:center;gap:7px;padding:6px 10px;font-size:.69rem;display:inline-flex;position:absolute;top:22px;left:24px}.portfolio-project__live>span{background:var(--green);border-radius:50%;width:6px;height:6px}.portfolio-project__info{z-index:3;pointer-events:none;grid-area:visual;align-self:end;max-width:82%;padding:clamp(22px,2.5vw,36px);position:relative}.portfolio-project__kind{color:var(--paper);margin:0 0 8px;font-size:.76rem}.portfolio-project h3{letter-spacing:-.055em;overflow-wrap:anywhere;margin:0;font-size:clamp(2.4rem,4.2vw,4.25rem);font-weight:700;line-height:.98}.portfolio-grid--single .portfolio-project h3{font-size:clamp(3.25rem,6.4vw,6rem)}.portfolio-project__summary{color:#f2ede4d6;max-width:42ch;margin:14px 0 0;font-size:.87rem;line-height:1.5}.portfolio-grid--single .portfolio-project__summary{max-width:48ch;font-size:.95rem}.portfolio-project__meta{grid-area:meta;justify-content:space-between;align-items:center;gap:14px;padding:14px 24px;font-size:.7rem;display:flex}.portfolio-project__meta ul{color:var(--muted-ink);flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;list-style:none;display:flex}.portfolio-project__invitation{color:var(--paper);flex-shrink:0}.portfolio-project__open{z-index:4;color:var(--paper);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0}.portfolio-project__open:focus-visible{outline:2px solid var(--red);outline-offset:4px}.portfolio-project__arrow{width:46px;height:46px;transition:color .2s, background .2s, transform .4s var(--ease);background:#0d0c0b5c;border:1px solid #f2ede466;place-items:center;display:grid;position:absolute;top:22px;right:24px}.portfolio-project__arrow svg{width:22px;height:22px}.portfolio-project__peek{z-index:2;opacity:0;border-top:4px solid var(--red);background:var(--paper);width:52%;max-width:310px;color:var(--ink);transition:transform .65s var(--ease), opacity .4s ease;pointer-events:none;padding:18px 20px 8px;position:absolute;top:19%;right:9%;transform:translate(24px,15px)rotate(8deg);box-shadow:0 20px 50px #00000080}.portfolio-project__peek-label{color:var(--red-deep);margin:0 0 12px;font-size:.76rem;font-weight:650}.portfolio-project__highlights{margin:0;padding:0;list-style:none}.portfolio-project__highlights li{border-top:1px solid var(--line-paper);padding:12px 0 12px 14px;position:relative}.portfolio-project__highlights li:before{content:"";background:var(--red);width:5px;height:5px;position:absolute;top:18px;left:0}.portfolio-project__highlights strong{font-size:.8rem;font-weight:650;line-height:1.3;display:block}.portfolio-project__highlights span{color:var(--muted-paper);margin-top:4px;font-size:.7rem;line-height:1.45;display:block}.portfolio-project:focus-within .portfolio-project__peek{opacity:1;transform:translateY(-8px)rotate(-4deg)}.portfolio-project:focus-within .portfolio-project__arrow{background:var(--red);color:var(--ink);border-color:var(--red)}.portfolio-list{margin-top:24px;display:grid}.portfolio-list .portfolio-project{--portfolio-list-arrow-y:-50%;border-bottom:1px solid var(--line-ink);outline:0;grid-template:"visual info"1fr"visual meta"/clamp(240px,24vw,340px) minmax(0,1fr);gap:18px clamp(24px,3vw,48px);padding:24px 84px 24px 0;transition:background .22s,border-color .22s}.portfolio-list .portfolio-project__cover{aspect-ratio:3/2;align-self:stretch;width:100%;min-height:210px}.portfolio-list .portfolio-project__cover:after,.portfolio-list .portfolio-project__peek{display:none}.portfolio-list .portfolio-project__live{font-size:.67rem;top:14px;left:14px}.portfolio-list .portfolio-project__info{grid-area:info;align-self:center;max-width:none;padding:0}.portfolio-list .portfolio-project__kind{color:var(--muted-ink);margin-bottom:10px;font-size:.8rem}.portfolio-list .portfolio-project h3{font-size:clamp(2.2rem,3.2vw,3.25rem)}.portfolio-list .portfolio-project__summary{max-width:68ch;margin-top:16px;font-size:.95rem;line-height:1.6;display:block}.portfolio-list .portfolio-project__meta{flex-wrap:wrap;grid-area:meta;justify-content:space-between;padding:0;font-size:.77rem}.portfolio-list .portfolio-project__meta ul{gap:6px 8px}.portfolio-list .portfolio-project__meta li{border:1px solid var(--line-ink);color:var(--paper);padding:4px 9px}.portfolio-list .portfolio-project__invitation{border-bottom:1px solid var(--red);padding-block:4px;font-size:.8rem;font-weight:600;display:inline}.portfolio-list .portfolio-project__arrow{transform:translateY(var(--portfolio-list-arrow-y));top:50%;right:16px}.portfolio-list .portfolio-project:focus-within{background:var(--ink-2);border-color:var(--red)}.portfolio-empty{justify-items:start;gap:8px;padding-block:40px;display:grid}.portfolio-empty p{color:var(--muted-ink)}.work-dialog{overscroll-behavior:contain;border:1px solid var(--line-ink);background:var(--ink-2);width:min(1180px,100% - 64px);max-height:calc(100dvh - 48px);color:var(--paper);margin:auto;padding:0;overflow-y:auto;box-shadow:0 24px 80px #00000080}.work-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0d0c0bcc}.work-dialog__header{z-index:5;border-bottom:1px solid var(--line-ink);background:var(--ink-2);justify-content:space-between;align-items:center;gap:24px;padding:24px 32px;display:flex;position:sticky;top:0}.work-dialog__header p{color:var(--muted-ink);margin:0 0 6px;font-size:.76rem}.work-dialog__header h2{letter-spacing:-.05em;margin:0;font-size:clamp(2.5rem,4vw,4rem);font-weight:700;line-height:.95}.work-dialog__close{border:1px solid var(--line-ink);width:46px;height:46px;color:inherit;font:inherit;cursor:pointer;background:0 0;flex:none;place-items:center;padding:0;font-size:1.8rem;display:grid}.work-dialog__close:hover{background:var(--red);color:var(--ink)}.work-dialog__content{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:32px;padding:28px 32px;display:grid}.work-dialog__views{gap:4px;margin-bottom:16px;display:flex}.work-dialog__views button{color:var(--muted-ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;padding:8px 12px;font-size:.76rem}.work-dialog__views button[aria-pressed=true]{border-color:var(--red);color:var(--paper)}.work-dialog figure{margin:0}.work-dialog figure img{width:100%;height:auto;display:block}.work-dialog figcaption{color:var(--muted-ink);margin-top:10px;font-size:.7rem}.work-dialog__credits{border-top:1px solid var(--line-ink);margin-top:24px;padding-top:18px}.work-dialog__credits h3{margin:0 0 8px;font-size:.9rem}.work-dialog__credits p{color:var(--muted-ink);margin:0;font-size:.8rem}.work-dialog__credits ul{flex-wrap:wrap;gap:8px 14px;margin:16px 0 0;padding:0;font-size:.68rem;list-style:none;display:flex}.work-dialog__details{border-left:4px solid var(--red);background:var(--paper);color:var(--ink);align-self:start;padding:28px}.work-dialog__description{margin:0 0 24px;font-size:1rem;font-weight:550;line-height:1.5}.work-dialog__details dl{margin:0}.work-dialog__details dl>div{border-top:1px solid var(--line-paper);padding:15px 0}.work-dialog__details dl>div:last-child{padding-bottom:0}.work-dialog__details dt{margin-bottom:6px;font-size:.86rem;font-weight:650}.work-dialog__details dd{color:var(--muted-paper);margin:0;font-size:.8rem;line-height:1.5}.work-dialog__footer{border-top:1px solid var(--line-ink);justify-content:space-between;align-items:center;gap:20px;padding:22px 32px;display:flex}.work-status{color:var(--muted-ink);align-items:center;gap:8px;font-size:.73rem;display:inline-flex}.work-status:before{content:"";background:var(--green);border-radius:50%;flex-shrink:0;width:6px;height:6px}.work-dialog__footer>div{flex-wrap:wrap;gap:10px;display:flex}.work-dialog__footer a{border:1px solid var(--line-ink);align-items:center;gap:20px;padding:10px 16px;font-size:.8rem;font-weight:600;display:inline-flex}.work-dialog__footer a:first-child{border-color:var(--red);background:var(--red);color:var(--ink)}.work-dialog__footer a:hover{border-color:var(--paper)}@media (hover:hover) and (pointer:fine){.portfolio-project:hover{outline-color:var(--red)}.portfolio-project:hover .portfolio-project__photo{transform:scale(1.035)}.portfolio-project:hover .portfolio-project__peek{opacity:1;transform:translateY(-8px)rotate(-4deg)}.portfolio-project:hover .portfolio-project__arrow{border-color:var(--red);background:var(--red);color:var(--ink);transform:translate(3px,-3px)}.portfolio-list .portfolio-project:hover{background:var(--ink-2);border-color:var(--red)}.portfolio-list .portfolio-project:hover .portfolio-project__arrow{transform:translate(3px, var(--portfolio-list-arrow-y))}.portfolio-categories button:hover,.portfolio-layout button:hover{color:var(--paper);border-color:var(--line-ink)}.portfolio-categories button[aria-pressed=true]:hover{color:var(--ink)}}@media (max-width:900px){.portfolio-project__info{max-width:100%;padding:24px}.portfolio-project__summary{font-size:.8rem}.portfolio-project__meta{padding:12px 18px}.portfolio-project__invitation,.portfolio-project__peek{display:none}.portfolio-project__cover{aspect-ratio:1}.portfolio-list .portfolio-project{grid-template-columns:200px minmax(0,1fr);gap:16px 24px;padding-right:68px}.portfolio-list .portfolio-project__cover{min-height:180px}.work-dialog__content{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.work-dialog__details{padding:22px}}@media (max-width:720px){.projects__head{flex-direction:column;align-items:start;gap:12px;margin-bottom:22px}.projects__head--link>p{flex:0 auto}.portfolio-toolbar{flex-wrap:wrap;gap:12px;padding-block:12px}.portfolio-categories{max-width:100%}.portfolio-toolbar__label{font-size:.73rem}.portfolio-layout button{gap:7px;padding:8px 10px;font-size:.7rem}.portfolio-meta{align-items:start;padding-block:16px 20px;font-size:.7rem}.portfolio-meta__hint{text-align:right;max-width:23ch}.portfolio-grid{grid-template-columns:minmax(0,1fr);gap:28px}.portfolio-project__cover,.portfolio-grid--single .portfolio-project__cover{aspect-ratio:4/5;min-height:320px;max-height:none}.portfolio-project__photo{object-position:42% center}.portfolio-project__info{padding:22px}.portfolio-project h3,.portfolio-grid--single .portfolio-project h3{font-size:clamp(2.6rem,10vw,3.5rem)}.portfolio-project__kind{font-size:.7rem}.portfolio-project__summary,.portfolio-grid--single .portfolio-project__summary{margin-top:12px;font-size:.82rem}.portfolio-project__live{font-size:.63rem;top:18px;left:18px}.portfolio-project__arrow{width:40px;height:40px;top:18px;right:18px}.portfolio-project__meta{padding:14px 18px;font-size:.67rem}.portfolio-project__meta ul{gap:6px 13px}.portfolio-list .portfolio-project{--portfolio-list-arrow-y:0px;grid-template:"visual kind""visual title""summary summary""meta meta"/112px minmax(0,1fr);gap:6px 18px;padding:22px 0}.portfolio-list .portfolio-project__cover{aspect-ratio:3/2;align-self:center;min-height:0}.portfolio-list .portfolio-project__live{display:none}.portfolio-list .portfolio-project__info{display:contents}.portfolio-list .portfolio-project__kind{grid-area:kind;align-self:end;margin:0;padding-right:50px;font-size:.72rem}.portfolio-list .portfolio-project h3{grid-area:title;align-self:start;padding-right:50px;font-size:1.85rem;line-height:1.05}.portfolio-list .portfolio-project__summary{grid-area:summary;margin:14px 0 0;font-size:.9rem}.portfolio-list .portfolio-project__meta{gap:12px;padding-top:14px;font-size:.72rem}.portfolio-list .portfolio-project__arrow{width:40px;height:40px;top:22px;right:0}.work-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 32px)}.work-dialog__header{gap:16px;padding:18px}.work-dialog__header h2{font-size:2.35rem}.work-dialog__content{grid-template-columns:minmax(0,1fr);gap:24px;padding:18px}.work-dialog__details{padding:20px}.work-dialog__footer{flex-direction:column;align-items:start;padding:18px}}@media (max-width:380px){.portfolio-list .portfolio-project{grid-template-columns:88px minmax(0,1fr);gap:6px 14px}.portfolio-list .portfolio-project h3{font-size:1.7rem}}html.motion-paused .portfolio-project,html.motion-paused .portfolio-project__photo,html.motion-paused .portfolio-project__peek,html.motion-paused .portfolio-project__arrow{transition:none!important;transform:none!important}html.motion-paused .portfolio-list .portfolio-project__arrow{transform:translateY(var(--portfolio-list-arrow-y))!important}@media (prefers-reduced-motion:reduce){.portfolio-project,.portfolio-project__photo,.portfolio-project__peek,.portfolio-project__arrow{transition:none;transform:none!important}.portfolio-list .portfolio-project__arrow{transform:translateY(var(--portfolio-list-arrow-y))!important}}
