body:has(.portfolio-scope){background:#161616;background-image:none}body:has(.portfolio-scope)>header{display:none}body:has(.portfolio-scope)>footer{display:none}body:has(.portfolio-scope)>main{padding-bottom:0}.portfolio-scope{--pf-bg:#161616;--pf-surface:#222;--pf-surface-raised:#292929;--pf-surface-soft:#1c1c1c;--pf-text:#fff;--pf-text-soft:#d7d7d7;--pf-text-muted:#a7a7a7;--pf-line:hsla(0,0%,100%,.12);--pf-line-soft:hsla(0,0%,100%,.07);--pf-overlay:hsla(0,0%,7%,.48);--pf-overlay-strong:hsla(0,0%,5%,.72);background-color:var(--pf-bg);color:var(--pf-text);min-height:100vh}.portfolio-scope ::-moz-selection{background:hsla(0,0%,100%,.18)}.portfolio-scope ::selection{background:hsla(0,0%,100%,.18)}.portfolio-scope :focus-visible{outline:2px solid hsla(0,0%,100%,.88);outline-offset:4px}.pf-card{position:relative;cursor:pointer}.pf-card-image{border-radius:12px;overflow:hidden;position:relative;aspect-ratio:16/10}.pf-card-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:saturate(.9);transition:transform .36s cubic-bezier(.16,1,.3,1),filter .36s cubic-bezier(.16,1,.3,1)}.pf-card:focus-within .pf-card-image img,.pf-card:hover .pf-card-image img{transform:scale(1.02);filter:saturate(1)}.pf-card-tooltip{position:absolute;z-index:10;width:300px;max-width:80%;padding:18px 20px;border-radius:14px;background:rgba(34,34,34,.62);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid hsla(0,0%,100%,.16);box-shadow:0 8px 32px rgba(0,0,0,.28);color:var(--pf-text-soft);font-size:14px;line-height:1.55;opacity:0;transition:opacity .18s ease;transform:translate3d(calc(var(--pf-x, 50%) - 50%),calc(var(--pf-y, 50%) - 50%),0);pointer-events:none}.pf-card:hover .pf-card-tooltip{opacity:1}.pf-modal-backdrop{position:fixed;inset:0;z-index:100;background:var(--pf-overlay-strong);display:flex;align-items:center;justify-content:center;padding:20px;animation:pf-fade-in .26s cubic-bezier(.4,0,.2,1) both}.pf-modal{position:relative;max-width:min(100%,1200px);max-height:min(88vh,900px);background:var(--pf-surface);border-radius:24px;overflow:hidden;display:flex;animation:pf-modal-in .34s cubic-bezier(.16,1,.3,1) both;transition:width .32s cubic-bezier(.4,0,.2,1),height .32s cubic-bezier(.4,0,.2,1),max-width .32s cubic-bezier(.4,0,.2,1),max-height .32s cubic-bezier(.4,0,.2,1)}@media (max-width:767px){.pf-modal{flex-direction:column;max-height:90vh;border-radius:20px}}.pf-modal-image-area{position:relative;min-height:0;display:grid;place-items:center;overflow:hidden}.pf-modal-image-slide{grid-area:1/1;transition:opacity .28s cubic-bezier(.4,0,.2,1),transform .28s cubic-bezier(.4,0,.2,1)}.pf-modal-image-slide[data-state=active]{opacity:1;transform:scale(1);z-index:1}.pf-modal-image-slide[data-state=entering]{opacity:0;transform:scale(.97);z-index:1}.pf-modal-image-slide[data-state=exiting]{opacity:0;transform:scale(1.02);z-index:0}.pf-modal-image-slide[data-state=hidden]{opacity:0;transform:scale(.97);z-index:0;pointer-events:none;position:absolute}.pf-modal-image-slide img{display:block;max-height:min(80vh,800px);width:auto;height:auto;-o-object-fit:contain;object-fit:contain;border-radius:4px}@media (max-width:767px){.pf-modal-image-area{width:100%}.pf-modal-image-slide img{width:100%;max-height:50vh}}.pf-modal-text{flex:1;min-width:0;padding:40px 36px;display:flex;flex-direction:column;overflow-y:auto}@media (max-width:767px){.pf-modal-text{padding:24px 20px 32px}}.pf-modal-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:rgba(34,34,34,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid hsla(0,0%,100%,.12);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease;z-index:2}.pf-modal-nav-btn:hover{background:rgba(34,34,34,.85)}.pf-modal-nav-btn[data-dir=prev]{left:12px}.pf-modal-nav-btn[data-dir=next]{right:12px}.pf-modal-close{position:absolute;top:16px;right:16px;width:36px;height:36px;border-radius:50%;background:rgba(34,34,34,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid hsla(0,0%,100%,.12);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease;z-index:3}.pf-modal-close:hover{background:rgba(34,34,34,.85)}@keyframes pf-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pf-modal-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.pf-card-image img,.pf-card-tooltip,.pf-modal,.pf-modal-backdrop,.pf-modal-image-slide,.pf-modal-image-slide img{animation:none!important;transition:none!important}}