body.project-modal-open{overflow:hidden}.project-card{--project-card-outline: #d1d5db;position:relative;display:flex;flex-direction:column;gap:16px;width:100%;padding:12px 12px 18px;box-sizing:border-box;border:1px solid var(--project-card-outline);border-radius:45px;background:#f9fafb}.project-card--unlocked{padding:10px}.project-card:not(.project-card--unlocked){padding:10px}.project-card__image-wrap{position:relative;width:100%;aspect-ratio:3 / 2;box-sizing:border-box;border:1px solid var(--project-card-outline);border-radius:35px;overflow:hidden}.project-card--unlocked .project-card__image-wrap,.project-card--public .project-card__image-wrap{aspect-ratio:3 / 2}.project-card__image{width:100%!important;height:100%!important;object-fit:cover;object-position:center center;display:block;transform:none}.project-card--unlocked .project-card__image{transform:scale(1);transform-origin:center center}.project-card__protected-badge{position:absolute;top:16px;right:16px;z-index:3;width:40px;height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#ffffff24;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);border:1px solid var(--project-card-outline);color:#fff}.project-card__protected-icon{width:20px;height:20px;display:block;color:#fff;opacity:.95}.project-card__info{display:flex;flex-direction:column;gap:16px;width:100%;padding:0 8px;box-sizing:border-box}.project-card:not(.project-card--unlocked) .project-card__info{padding:10px;gap:10px;justify-content:flex-end}.project-card--unlocked .project-card__info{padding:10px;gap:10px;justify-content:flex-end}.project-card.project-card--public .project-card__info{padding:10px;gap:14px;justify-content:space-between}.project-card__tags{width:100%;display:flex;flex-wrap:wrap;column-gap:6px;row-gap:6px}.project-card__tags[hidden]{display:none!important}.project-card__public-content{width:100%;display:flex;flex-direction:column;gap:12px}.project-card__tag{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:24px;padding:0 10px;border-radius:999px;border:1px solid #bfc5cf;background:transparent;color:#545454;font-family:"Inter",var(--font-sans);font-size:12px;font-weight:600;line-height:1;letter-spacing:0;white-space:nowrap}.project-card__title{margin:0;width:100%;max-width:none;color:#0a0a0a;font-family:"Inter",var(--font-sans);font-size:24px;font-weight:700;line-height:32px;letter-spacing:-.033em}.project-card__actions{--project-public-cta-collapsed: 50px;--project-public-cta-gap: 8px;width:100%;display:flex;flex-direction:column;gap:10px}.project-card__actions[hidden]{display:none!important}.project-card__actions--unlocked{margin-top:2px}.project-card__actions--split{--project-public-cta-expanded: calc(100% - var(--project-public-cta-collapsed) - var(--project-public-cta-gap));--project-cta-layout: .28s cubic-bezier(.22, 1, .36, 1);--project-cta-label-duration: var(--header-label-reveal-duration, .42s);--project-cta-label-ease: var(--header-label-reveal-ease, cubic-bezier(.18, 1, .32, 1));--project-cta-background: .26s cubic-bezier(.2, .8, .2, 1);--project-cta-border: .36s cubic-bezier(.2, .8, .2, 1);--project-cta-color: .26s cubic-bezier(.2, .8, .2, 1);display:flex;flex-direction:row;gap:var(--project-public-cta-gap);align-items:center}.project-card--unlocked .project-card__actions--unlocked{margin-top:0}.project-card__cta{width:100%;min-height:50px;border-radius:999px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 18px;box-sizing:border-box;font-family:"Inter",var(--font-sans);font-size:15px;font-weight:600;line-height:1.2;transition:background-color .3s cubic-bezier(.22,1,.36,1),border-color .3s cubic-bezier(.22,1,.36,1),color .3s cubic-bezier(.22,1,.36,1),opacity .3s cubic-bezier(.22,1,.36,1)}.project-card__cta--primary,.project-card__cta--secondary{appearance:none;cursor:pointer}.project-card__actions--split .project-card__cta{width:var(--project-public-cta-expanded);flex:0 0 var(--project-public-cta-expanded);height:50px;min-height:50px;min-width:0;white-space:nowrap;overflow:hidden;gap:8px;padding-left:18px;padding-right:18px;transition:width var(--project-cta-layout),flex-basis var(--project-cta-layout),gap var(--project-cta-layout),padding-left var(--project-cta-layout),padding-right var(--project-cta-layout),background-color var(--project-cta-background),border-color var(--project-cta-border),color var(--project-cta-color),opacity var(--project-cta-color)}.project-card__actions--split .project-card__cta--primary{color:#f9fafb}.project-card__actions--split .project-card__cta--secondary{width:50px;flex-basis:var(--project-public-cta-collapsed);gap:0;padding-left:0;padding-right:0;border-color:var(--project-card-outline)}.project-card__actions--split:has(.project-card__cta--secondary:is(:hover,:focus-visible)) .project-card__cta--primary{width:var(--project-public-cta-collapsed);flex-basis:var(--project-public-cta-collapsed);gap:0;padding-left:0;padding-right:0}.project-card__actions--split:has(.project-card__cta--secondary:is(:hover,:focus-visible)) .project-card__cta--secondary{width:var(--project-public-cta-expanded);flex-basis:var(--project-public-cta-expanded);gap:8px;padding-left:18px;padding-right:18px}.project-card__actions--split .project-card__cta-label{display:inline-flex;align-items:center;max-width:180px;opacity:1;overflow:hidden;transform:translate(0);pointer-events:none;white-space:nowrap;line-height:1.2;filter:blur(0);will-change:opacity,transform,filter,max-width;transition:max-width var(--project-cta-label-duration) var(--project-cta-label-ease),opacity var(--project-cta-label-duration) var(--project-cta-label-ease),transform var(--project-cta-label-duration) var(--project-cta-label-ease),filter var(--project-cta-label-duration) var(--project-cta-label-ease)}.project-card__actions--split .project-card__cta--secondary .project-card__cta-label,.project-card__actions--split:has(.project-card__cta--secondary:is(:hover,:focus-visible)) .project-card__cta--primary .project-card__cta-label{max-width:0;opacity:0;transform:translate(6px);filter:blur(6px)}.project-card__actions--split:has(.project-card__cta--secondary:is(:hover,:focus-visible)) .project-card__cta--secondary .project-card__cta-label{max-width:132px;opacity:1;transform:translate(0);filter:blur(0)}.project-card__cta--primary{border:1px solid transparent;background:#0a0a0a;color:#f9fafb}.project-card__cta--secondary{border:1px solid var(--project-card-outline);color:#171717;background:#f9fafbb3;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.project-card__cta--secondary:hover,.project-card__cta--secondary:focus-visible{background:#f3f4f6;border-color:var(--project-card-outline);color:#171717}.project-card:not(.project-card--public) .project-card__cta--secondary:hover,.project-card:not(.project-card--public) .project-card__cta--secondary:focus-visible{background:#f3f4f6}.project-card--public .project-card__cta--secondary:hover,.project-card--public .project-card__cta--secondary:focus-visible{background:#f3f4f6;border-color:var(--project-card-outline);color:#171717}.project-card__cta--open{width:100%;height:50px;min-height:50px;border:1px solid transparent;background:#0a0a0a;color:#f9fafb;font-size:15px;font-weight:600;gap:8px}.project-card__cta--primary:hover,.project-card__cta--primary:focus-visible,.project-card__cta--open:hover,.project-card__cta--open:focus-visible{background:#2a2a2a;border-color:transparent}.project-card__cta:active{opacity:.92}.project-card__cta-icon{width:20px;height:20px;display:block;flex:0 0 auto;color:currentColor;transition:color .3s cubic-bezier(.22,1,.36,1)}.project-card__cta-arrow{width:24px;height:24px;display:block;flex:0 0 auto}.project-card__modal-wrap{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:clamp(16px,4vw,40px);box-sizing:border-box}.project-card__modal-wrap[hidden]{display:none!important}.project-card__modal-backdrop{position:absolute;inset:0;border-radius:0;background:#0a0a0a38;opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);transition:opacity .52s cubic-bezier(.22,1,.36,1),backdrop-filter .52s cubic-bezier(.22,1,.36,1),-webkit-backdrop-filter .52s cubic-bezier(.22,1,.36,1)}.project-card__modal{position:relative;width:min(100%,420px);max-width:100%;max-height:min(680px,calc(100dvh - 32px));overflow-y:auto;background:#fafafa;border:1px solid #d1d5db;border-radius:50px;padding:40px 24px 24px;box-sizing:border-box;display:grid;gap:14px;box-shadow:none;opacity:0;transform:translate3d(var(--modal-enter-x, 0px),var(--modal-enter-y, 0px),0) scale(var(--modal-enter-scale, .88));transform-origin:center;border-radius:var(--modal-enter-radius, 26px);transition:transform .52s cubic-bezier(.22,1,.36,1),opacity .52s cubic-bezier(.22,1,.36,1),border-radius .52s cubic-bezier(.22,1,.36,1);will-change:transform,opacity,border-radius}.project-card__modal-wrap.is-open .project-card__modal-backdrop{opacity:1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.project-card__modal-wrap.is-open .project-card__modal{opacity:1;transform:translateZ(0) scale(1);border-radius:50px}@media(prefers-reduced-motion:reduce){.project-card__modal-backdrop,.project-card__modal{transition:none}.project-card__modal{transform:none;opacity:1;border-radius:50px}}.project-card__modal-title{margin:0;font-size:28px;line-height:1.05;font-weight:700;letter-spacing:-.03em;color:#0a0a0a;font-family:"Inter",var(--font-sans)}.project-card__modal-text{margin:0;font-size:16px;line-height:1.5;color:#404040;font-family:"Inter",var(--font-sans)}.project-card__modal-form{display:grid;gap:14px}.project-card__modal-label{margin:0;font-size:12px;line-height:1.2;font-weight:600;color:#262626;font-family:"Inter",var(--font-sans)}.project-card__modal-input-wrap{position:relative;display:grid;align-items:center;width:100%}.project-card__modal-input{grid-area:1 / 1;width:100%;min-height:52px;border-radius:16px;border:1px solid #c5c5c5;padding:12px 46px 12px 14px;font-size:16px;line-height:1.2;font-family:"Inter",var(--font-sans);color:#171717;background:#fafafa}.project-card__modal-input:focus{outline:2px solid rgba(10,10,10,.12);outline-offset:1px}.project-card__modal-visibility{grid-area:1 / 1;justify-self:end;align-self:center;z-index:2;width:20px;height:20px;border:0;background:transparent;padding:0;margin:0 14px 0 0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.project-card__modal-visibility-icon{width:20px;height:20px;display:block;flex:0 0 20px}.project-card__modal-visibility:focus-visible{outline:2px solid rgba(10,10,10,.2);outline-offset:2px;border-radius:6px}.project-card__modal-error{display:none;margin:0;color:#b91c1c;font-size:12px;line-height:1.3;font-weight:600;font-family:"Inter",var(--font-sans)}.project-card__modal-error.is-visible{display:block}.project-card__modal-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:28px}.project-card__modal-btn{appearance:none;border-radius:999px;min-height:52px;border:1px solid transparent;font-size:15px;line-height:1.2;font-weight:600;font-family:"Inter",var(--font-sans);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color .3s cubic-bezier(.22,1,.36,1),border-color .3s cubic-bezier(.22,1,.36,1),color .3s cubic-bezier(.22,1,.36,1),opacity .3s cubic-bezier(.22,1,.36,1)}.project-card__modal-btn-icon{width:20px;height:20px;display:block;flex:0 0 20px;color:currentColor;transition:color .3s cubic-bezier(.22,1,.36,1)}.project-card__modal-btn--primary{background:#0a0a0a;color:#f9fafb}.project-card__modal-btn--ghost{background:#fafafa;color:#171717;border-color:#c5c5c5}.project-card__modal-btn--primary:hover,.project-card__modal-btn--primary:focus-visible{background:#2a2a2a;border-color:transparent;color:#f9fafb}.project-card__modal-btn--ghost:hover,.project-card__modal-btn--ghost:focus-visible{background:#0a0a0a;border-color:#0a0a0a;color:#f9fafb}.project-card__modal-btn:disabled{cursor:not-allowed;opacity:.7}@media(max-width:420px){.project-card{border-radius:38px}.project-card__image-wrap{border-radius:30px}.project-card__modal-backdrop{border-radius:0}.project-card__modal-wrap{padding:16px}.project-card__modal{width:100%;max-height:calc(100dvh - 32px);border-radius:42px;padding:40px 18px 18px;gap:12px}.project-card__modal-title{font-size:22px;line-height:1.08}.project-card__modal-text{font-size:15px}.project-card__modal-form{gap:12px}.project-card__modal-input,.project-card__modal-btn{min-height:48px}}@media(min-width:640px){.project-card__modal-wrap{padding:24px}.project-card__modal{width:min(460px,calc(100vw - 48px));max-height:min(720px,calc(100dvh - 48px));padding:40px 28px 28px;gap:16px;border-radius:54px}.project-card__modal-form{gap:16px}.project-card__modal-actions{grid-template-columns:1fr 1fr}}@media(min-width:960px){.project-card__modal{width:min(480px,calc(100vw - 80px));max-height:min(760px,calc(100dvh - 64px))}}@container project-list (min-width: 672px){.project-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"info media";align-items:stretch;gap:14px;padding:14px;border-radius:45px}.project-card--media-left{grid-template-areas:"media info"}.project-card--unlocked{padding:10px}.project-card:not(.project-card--unlocked){padding:10px}.project-card__image-wrap{grid-area:media;width:100%;height:100%;min-height:0;min-width:0;aspect-ratio:3 / 2;justify-self:stretch;align-self:stretch;border-radius:35px}.project-card--unlocked .project-card__image-wrap{aspect-ratio:3 / 2;align-self:start}.project-card--public .project-card__image-wrap{height:100%;align-self:stretch}.project-card__info{grid-area:info;width:100%;max-width:none;min-width:0;min-height:100%;padding:4px 2px 4px 4px;gap:14px;align-self:stretch;justify-content:space-between}.project-card:not(.project-card--unlocked) .project-card__info{padding:10px;gap:10px;justify-content:flex-end}.project-card--unlocked .project-card__info{padding:10px;gap:10px;justify-content:flex-end}.project-card.project-card--public .project-card__info{padding:10px;gap:14px;justify-content:space-between}.project-card__tags{column-gap:6px;row-gap:6px}.project-card__title{max-width:none}.project-card__tag{min-height:24px;padding:0 10px;border-color:var(--project-card-outline);font-size:12px;letter-spacing:0}.project-card__cta--open{min-height:50px;font-size:15px;font-weight:600;gap:8px}.project-card--public .project-card__cta{min-height:50px;font-size:15px;font-weight:600}.project-card__cta-arrow{width:20px;height:20px}}
