.perspective-project-carousel{position:relative;width:100%;max-width:1240px;margin-inline:auto;padding-bottom:78px;outline:none}.perspective-project-viewport{--deck-drag:0px;position:relative;height:clamp(520px,48vw,650px);overflow:hidden;cursor:grab;perspective:1450px;touch-action:pan-y;transform-style:preserve-3d}.perspective-project-viewport:active{cursor:grabbing}.perspective-project-card{position:absolute;inset:clamp(18px,2.5vw,34px) 0 48px;display:grid;width:min(74%,820px);max-height:570px;margin:auto;overflow:hidden;border:1px solid rgba(23,23,23,.14);border-radius:27px;color:var(--charcoal);background:#e9e2d6;box-shadow:0 34px 80px rgba(23,23,23,.16);transform-origin:center center;transform-style:preserve-3d;transform:translate3d(calc(var(--card-x, 0%) + var(--deck-drag, 0px)),0,var(--card-z,0)) rotateY(var(--card-rotate,0deg)) scale(var(--card-scale,1));transition:opacity .36s ease,transform .86s var(--ease-premium);grid-template-rows:minmax(0,1fr) auto}.perspective-project-viewport.is-dragging .perspective-project-card{transition:none}.perspective-project-card.project-tone-charcoal{background:#242321}.perspective-project-card.project-tone-olive{background:#dce0d2}.perspective-project-card.project-tone-orange{background:#ead6c7}.perspective-project-card:not(.is-active){filter:saturate(.72) brightness(.82)}.perspective-project-image{position:relative;display:block;width:100%;min-height:0;overflow:hidden;border:0;color:inherit;background:inherit;cursor:pointer}.perspective-project-card.is-active .perspective-project-image{cursor:default}.perspective-project-image img{object-fit:cover}.perspective-project-card.is-app .perspective-project-image img{object-fit:contain}.perspective-project-copy{position:relative;z-index:2;display:grid;min-height:132px;align-items:end;gap:clamp(20px,3vw,42px);padding:clamp(20px,2.7vw,32px);border-top:1px solid rgba(23,23,23,.11);background:var(--ivory);grid-template-columns:minmax(170px,.65fr) minmax(220px,1fr) auto}.perspective-project-copy>div>p{margin:0 0 7px;color:#9d4b22;font-size:8px;font-weight:650;letter-spacing:.1em;text-transform:uppercase}.perspective-project-copy h3{margin:0;font-size:clamp(28px,3.2vw,44px);font-weight:570;letter-spacing:-.048em;line-height:.94}.perspective-project-copy>p{max-width:430px;margin:0;color:#625d56;font-size:11px;line-height:1.55}.perspective-project-copy>a{display:inline-flex;align-items:center;gap:7px;padding-bottom:4px;border-bottom:1px solid rgba(23,23,23,.24);font-size:10px;font-weight:600;white-space:nowrap}.perspective-project-card:not(.is-active) .perspective-project-copy{visibility:hidden}.perspective-project-meta{position:absolute;bottom:16px;left:0;display:flex;align-items:center;gap:15px;color:#6e6961;font-size:9px;letter-spacing:.07em;text-transform:uppercase}.perspective-project-meta strong{color:var(--charcoal);font-weight:590}.perspective-project-controls{position:absolute;right:0;bottom:0;display:flex;align-items:center;gap:14px}.perspective-project-controls>button{display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--charcoal);background:var(--white);cursor:pointer;transition:color .18s ease,background .18s ease,transform .18s var(--ease-premium)}.perspective-project-controls>button:first-child svg{transform:rotate(180deg)}.perspective-project-controls>button:hover{color:var(--white);background:var(--charcoal);transform:translateY(-2px)}.perspective-project-controls>div{display:flex;align-items:center;gap:0}.perspective-project-controls>div button{position:relative;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}.perspective-project-controls>div button:before{position:absolute;top:50%;left:50%;width:8px;height:8px;border-radius:999px;background:#a49c91;content:"";transform:translate(-50%,-50%);transition:width .22s var(--ease-premium),background .18s ease}.perspective-project-controls>div button[aria-current=true]:before{width:28px;background:var(--orange)}.perspective-project-carousel:focus-visible{outline:2px solid var(--orange);outline-offset:8px;border-radius:8px}.perspective-project-controls button:focus-visible,.perspective-project-copy a:focus-visible,.perspective-project-image:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.connected-symbol{--symbol-size:340px;--endpoint-width:146px;position:relative;display:grid;width:100%;min-height:410px;place-items:center;isolation:isolate;opacity:0;transform:scale(.965);transition:opacity .7s ease,transform .7s var(--ease-premium)}.connected-symbol.is-visible{opacity:1;transform:scale(1)}.connected-symbol-medium{--symbol-size:286px;--endpoint-width:132px;min-height:350px}.connected-symbol-compact{--symbol-size:224px;--endpoint-width:118px;min-height:285px}.connected-symbol-graphic{position:relative;width:min(var(--symbol-size),52%);aspect-ratio:256/237;overflow:visible}.connected-symbol-mark{position:absolute;z-index:1;inset:0;width:100%;height:100%;pointer-events:none}.connected-symbol-endpoint-position{position:absolute;z-index:3;top:var(--endpoint-y);left:var(--endpoint-x);width:var(--endpoint-width)}.connected-symbol-endpoint-position.is-left{transform:translate(calc(-100% + 24px),-50%)}.connected-symbol-endpoint-position.is-right{transform:translate(-24px,-50%)}.connected-symbol-endpoint{position:relative;display:grid;width:100%;min-height:56px;align-items:center;overflow:hidden;padding:7px 10px;border:1px solid rgba(23,23,23,.13);border-radius:13px;color:var(--charcoal);background:#fffdf9;box-shadow:0 13px 28px rgba(23,23,23,.1);text-align:left;opacity:0;transform:scaleX(.12);transform-origin:left center;transition:opacity .46s var(--endpoint-delay) ease,transform .46s var(--endpoint-delay) var(--ease-premium)}.connected-symbol.is-visible .connected-symbol-endpoint{opacity:1;transform:scaleX(1)}button.connected-symbol-endpoint{cursor:pointer}.connected-symbol.is-visible button.connected-symbol-endpoint:hover{transform:translateY(-2px) scaleX(1)}.connected-symbol-endpoint.is-left{transform-origin:right center}.connected-symbol-endpoint.is-right{transform-origin:left center}.connected-symbol-endpoint.is-active{border-color:rgba(217,108,44,.6);box-shadow:0 15px 32px rgba(23,23,23,.14)}.connected-symbol-endpoint.is-olive.is-active{border-color:rgba(107,116,86,.68)}.connected-symbol-endpoint-content{position:relative;z-index:1;display:grid;min-width:0;align-items:center;gap:8px;grid-template-columns:31px minmax(0,1fr);animation:connected-symbol-content-enter .32s ease .1s both}@keyframes connected-symbol-content-enter{0%{opacity:0}to{opacity:1}}.connected-symbol-endpoint-icon{display:grid;width:31px;height:31px;place-items:center;border-radius:9px;color:var(--orange-dark);background:rgba(217,108,44,.1)}.connected-symbol-endpoint.is-olive .connected-symbol-endpoint-icon{color:var(--olive);background:rgba(107,116,86,.12)}.connected-symbol-endpoint strong{overflow:hidden;font-size:10px;font-weight:620;letter-spacing:-.012em;line-height:1.22;text-overflow:ellipsis}.connected-symbol-card-pulse{position:absolute;z-index:2;inset:0;border:1px solid rgba(217,108,44,.84);border-radius:inherit;pointer-events:none;animation:connected-symbol-card-pulse .72s ease-out both}@keyframes connected-symbol-card-pulse{0%{opacity:0;transform:scale(.985)}46%{opacity:.78;transform:scale(1.012)}to{opacity:0;transform:scale(1)}}.connected-symbol-endpoint.is-olive .connected-symbol-card-pulse{border-color:rgba(135,145,111,.9)}.connected-symbol-dark .connected-symbol-endpoint{color:var(--ivory);border-color:rgba(247,243,234,.16);background:#1b1b1a;box-shadow:0 15px 32px rgba(0,0,0,.22)}.connected-symbol-dark .connected-symbol-endpoint.is-active{border-color:rgba(217,108,44,.72);background:#26221f}.connected-symbol-dark .connected-symbol-endpoint.is-olive.is-active{border-color:rgba(142,153,116,.76)}@media (max-width:1080px){.perspective-project-card{width:min(80%,760px)}.connected-symbol{--symbol-size:292px;--endpoint-width:126px;min-height:360px}.connected-symbol-compact{--symbol-size:214px;--endpoint-width:110px;min-height:280px}}@media (max-width:820px){.perspective-project-viewport{height:580px}.perspective-project-card{width:82%}.perspective-project-copy{gap:18px;grid-template-columns:minmax(150px,.7fr) 1fr}.perspective-project-copy>a{grid-column:1/-1;justify-self:start}}@media (max-width:650px){.perspective-project-carousel{padding-bottom:72px}.perspective-project-viewport{height:525px;margin-inline:-14px}.perspective-project-card{inset:8px 0 58px;width:88%;border-radius:20px}.perspective-project-copy{min-height:168px;align-items:start;gap:12px 16px;padding:18px;grid-template-columns:1fr auto}.perspective-project-copy>div>p{margin-bottom:5px}.perspective-project-copy h3{font-size:clamp(29px,9vw,40px)}.perspective-project-copy>p{grid-column:1/-1;grid-row:2;font-size:10px}.perspective-project-copy>a{align-self:end;grid-column:2;grid-row:1}.perspective-project-controls{gap:0}.perspective-project-controls>button{width:44px;height:44px}.perspective-project-controls>div{gap:0}.perspective-project-controls>div button{width:44px;height:44px}.perspective-project-controls>div button:before{width:6px;height:6px}.perspective-project-controls>div button[aria-current=true]:before{width:20px}.perspective-project-meta{bottom:13px;max-width:108px;align-items:flex-start;gap:3px;flex-direction:column}.perspective-project-meta strong{overflow:hidden;max-width:108px;text-overflow:ellipsis;white-space:nowrap}.connected-symbol,.connected-symbol-compact,.connected-symbol-medium{--symbol-size:146px;--endpoint-width:96px;min-height:274px}.connected-symbol-graphic{width:min(var(--symbol-size),46%)}.connected-symbol-endpoint-position.is-left{transform:translate(calc(-100% + 11px),-50%)}.connected-symbol-endpoint-position.is-right{transform:translate(-11px,-50%)}.connected-symbol-endpoint{min-height:48px;padding:5px 7px;border-radius:11px}.connected-symbol-endpoint-content{gap:5px;grid-template-columns:25px minmax(0,1fr)}.connected-symbol-endpoint-icon{width:25px;height:25px;border-radius:7px}.connected-symbol-endpoint-icon svg{width:14px;height:14px}.connected-symbol-endpoint strong{font-size:8px}}@media (prefers-reduced-motion:reduce){.perspective-project-card{transform:none!important}.connected-symbol,.connected-symbol-endpoint,button.connected-symbol-endpoint{transition:none!important}.connected-symbol-card-pulse{display:none}.connected-symbol,.connected-symbol-endpoint{opacity:1;transform:none}.connected-symbol-endpoint-content{animation:none}}