.gate-shell{position:relative;width:100vw;height:100vh;height:100dvh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--color-cream)}.gate-bends-bg{position:absolute;inset:0;z-index:0}.gate-logo{position:absolute;top:1.75rem;left:2rem;z-index:20;display:flex;align-items:baseline;font-size:1.35rem;font-weight:700;letter-spacing:-.05em}.gate-logo .mark{color:var(--color-ink)}.gate-logo .dot,.gate-logo .mark{text-shadow:0 4px 16px rgba(14,11,8,.15)}.gate-logo .dot{color:var(--color-orange);margin-left:1px}@media (max-width:768px){.gate-logo{top:1.25rem;left:1.25rem;font-size:1.15rem}}.gate-center{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center}.gate-brand-text{font-size:clamp(2.75rem,12vw,10rem);font-weight:700;letter-spacing:-.05em;line-height:1;color:var(--color-orange);text-shadow:0 2px 2px rgba(14,11,8,.3),0 12px 40px rgba(14,11,8,.35);padding:0 1rem;text-align:center;white-space:nowrap;display:flex;align-items:baseline;justify-content:center}@media (max-width:768px){.gate-brand-text{font-size:13vw;white-space:normal}}.gate-dot,.gate-dot-wrapper{position:relative;display:inline-block}.gate-dot{vertical-align:baseline;width:.15em;height:.15em;border-radius:999px;background-color:var(--color-orange);box-shadow:0 4px 16px rgba(255,106,26,.4);margin-left:.06em;cursor:pointer;transform:translateZ(0);transition:background-color .3s ease,box-shadow .3s ease,transform .3s ease}.gate-dot.magnetized{transform:translateZ(0) scale(1.15)}.gate-dot.open{background-color:var(--color-ink)}@media (max-width:768px){.gate-dot{width:.25em;height:.25em}}.gate-dot:not(.open):before{content:"";position:absolute;inset:0;border-radius:inherit;background-color:var(--color-orange);z-index:-1;animation:gateDotRipple 2s cubic-bezier(.21,.53,.56,.8) infinite}@keyframes gateDotRipple{0%{transform:scale(1);opacity:.5}to{transform:scale(2.8);opacity:0}}.gate-hit-area{position:absolute;top:50%;left:50%;width:280px;height:280px;transform:translate(-50%,-50%);border-radius:50%;cursor:pointer;z-index:5}.gate-panel{margin-top:1.75rem;width:min(340px,88vw);border-radius:20px;background-color:var(--gate-panel-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(14,11,8,.08);box-shadow:0 24px 60px rgba(14,11,8,.25);overflow:hidden;opacity:0;transform:translateY(-10px);max-height:0;pointer-events:none;transition:opacity .35s ease,transform .35s ease,max-height .35s ease}.gate-panel.open{opacity:1;transform:translateY(0);max-height:540px;pointer-events:auto}.gate-form{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}.gate-form-title{font-size:.95rem;font-weight:600;color:var(--color-ink);margin-bottom:.1rem}.gate-form input{width:100%;background:var(--color-white);border:1px solid var(--color-grey-200);border-radius:10px;color:var(--color-ink);font-size:1rem;font-family:inherit;padding:.65rem .9rem;outline:none;transition:border-color .2s ease}.gate-form input:focus{border-color:var(--color-orange)}.gate-form input::placeholder{color:var(--color-grey-400)}.gate-form-error{font-size:.85rem;color:#c0392b;font-weight:500}.gate-submit-row{display:flex;align-items:center;justify-content:flex-end;margin-top:.25rem}.gate-submit-btn{width:2.75rem;height:2.75rem;border-radius:999px;background-color:var(--color-orange);border:none;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease,transform .15s ease,opacity .2s ease}.gate-submit-btn:hover{background-color:var(--color-orange-600)}.gate-passkey-btn{display:flex;align-items:center;justify-content:center;gap:.45rem;width:calc(100% - 3rem);margin:0 1.5rem 1.5rem;padding:.6rem .8rem;background:none;border:1px solid var(--color-grey-200);border-radius:10px;color:var(--color-grey-700);font-size:.85rem;font-weight:500;font-family:inherit;cursor:pointer}.gate-passkey-btn:hover:not(:disabled){background:var(--color-grey-50)}.gate-passkey-btn:disabled,.gate-submit-btn:disabled{opacity:.6;cursor:default}