.portfolio-single-gate.portfolio-3d-home.portfolio-choice-flow{height:500svh!important;min-height:3400px!important;position:relative!important;padding:0!important;overflow:visible!important;background:transparent!important}.portfolio-choice-flow .portfolio-3d-frame{position:sticky;top:0;height:100svh;pointer-events:none}.portfolio-choice-flow.choice-ready .portfolio-3d-frame{pointer-events:auto}.portfolio-choice-layer{position:absolute;inset:0 0 auto;height:100svh;z-index:70;display:grid;grid-template-columns:repeat(2,minmax(0,270px));justify-content:space-between;align-items:center;padding:0 7vw;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s}.portfolio-choice-layer.visible{opacity:1;visibility:visible}.portfolio-choice-panel{pointer-events:auto;min-height:132px;padding:20px;border:1px solid rgba(255,255,255,.42);background:rgba(26,25,24,.28);color:#fff;backdrop-filter:blur(18px) saturate(1.18);box-shadow:0 18px 54px rgba(0,0,0,.17);cursor:pointer;text-align:left}.portfolio-choice-panel:last-child{text-align:right}.portfolio-choice-panel span{display:block;font-size:7px;letter-spacing:.14em;opacity:.68}.portfolio-choice-panel strong{display:block;margin-top:30px;font:400 21px Georgia,"Songti SC",serif}.portfolio-choice-panel small{display:block;margin-top:8px;font-size:8px;opacity:.72}.portfolio-blink{position:fixed;inset:0;z-index:120;pointer-events:none}.portfolio-blink::before,.portfolio-blink::after{content:"";position:absolute;left:0;width:100%;height:51%;background:#050505;transform:scaleY(0)}.portfolio-blink::before{top:0;transform-origin:top}.portfolio-blink::after{bottom:0;transform-origin:bottom}.portfolio-blink.active::before,.portfolio-blink.active::after{animation:portfolio-blink-lid .82s ease-in-out forwards}@keyframes portfolio-blink-lid{0%{transform:scaleY(0)}45%,58%{transform:scaleY(1)}100%{transform:scaleY(0)}}@media(max-width:700px){.portfolio-choice-layer{grid-template-columns:1fr;align-content:center;gap:16px;padding:0 10vw}.portfolio-choice-panel{min-height:116px}.portfolio-choice-panel:last-child{text-align:left}.portfolio-choice-panel strong{margin-top:24px;font-size:19px}}
.portfolio-choice-panel{position:relative;transition:border-color .35s ease,box-shadow .35s ease,background-color .35s ease}
.portfolio-choice-layer.gate-resist .portfolio-choice-panel{animation:portfolio-gate-resist .34s cubic-bezier(.2,.8,.2,1)}
@keyframes portfolio-gate-resist{0%{translate:0 0}42%{translate:0 -7px}100%{translate:0 0}}
.portfolio-load-state{position:fixed;z-index:58;inset:0;display:grid;place-content:center;justify-items:center;gap:10px;padding:24px;background:rgba(22,20,18,.9);color:#f5f1eb;text-align:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s ease,visibility .28s}.portfolio-load-state.visible{opacity:1;visibility:visible}.portfolio-load-state>span{font:700 8px/1 Arial,sans-serif;letter-spacing:.14em;opacity:.58}.portfolio-load-state>strong{font:400 clamp(25px,3vw,42px)/1.1 Georgia,"Songti SC",serif}.portfolio-load-state>small{font:400 8px/1.4 Arial,sans-serif;letter-spacing:.12em;opacity:.62}.portfolio-load-actions{display:none;gap:10px;margin-top:14px}.portfolio-load-state[data-state="error"]{pointer-events:auto}.portfolio-load-state[data-state="error"] .portfolio-load-actions{display:flex}.portfolio-load-actions button,.portfolio-load-actions a{padding:10px 14px;border:1px solid rgba(255,255,255,.4);background:transparent;color:inherit;font:400 10px/1 Arial,sans-serif;text-decoration:none;cursor:pointer}
.portfolio-leaving .portfolio-choice-layer{opacity:0!important;visibility:hidden!important}
.portfolio-detail-open{overflow:hidden!important}
.portfolio-detail-frame{position:fixed;inset:0;z-index:140;width:100%;height:100%;border:0;background:#f2eee7}
.portfolio-detail-open .portfolio-3d-frame{visibility:hidden}
.portfolio-choice-flow.hall-unlocked.choice-ready .portfolio-3d-frame{pointer-events:auto!important}
.portfolio-single-gate.portfolio-3d-home.portfolio-choice-flow.hall-unlocked{height:100svh!important;min-height:100svh!important;overflow:hidden!important}
