/* Only the anonymous browser homepage uses this layout. App and deep-link gates retain their layout. */
.public-home-content{display:none}
.public-home-grid{display:contents}
.web-public-home #gate{display:block;overflow-y:auto;overflow-x:hidden;padding:0 max(24px,env(safe-area-inset-right)) calc(max(24px,env(safe-area-inset-bottom)) + var(--public-consent-space,0px)) max(24px,env(safe-area-inset-left));background:radial-gradient(ellipse at 90% 12%,rgba(157,80,255,.12),transparent 42%),#0d0d12;scroll-behavior:smooth;scroll-padding-top:24px}
.web-public-home #gate::before,.web-public-home #gateVideo{display:none}
.web-public-home #gate.hidden{display:none!important}
.web-public-home #gate .public-home-content{display:flex;position:relative;z-index:2}
.web-public-home .public-home-mast,.web-public-home .public-home-grid,.web-public-home .public-home-details,.web-public-home .public-home-guides,.web-public-home .public-home-footer{width:100%;max-width:1180px;margin-left:auto;margin-right:auto}
.web-public-home .public-home-mast{align-items:center;justify-content:space-between;gap:24px;padding:28px 0;border-bottom:1px solid rgba(255,255,255,.09)}
.web-public-home .public-home-brand{color:#f5effa;font-size:27px;font-weight:850;letter-spacing:-1px;text-decoration:none}
.web-public-home .public-home-brand span{display:block;margin-top:5px;color:#a89bb5;font-size:11px;font-weight:500;letter-spacing:.02em}
.web-public-home .public-home-mast nav,.web-public-home .public-home-footer nav{display:flex;gap:8px 25px;flex-wrap:wrap}
.web-public-home .public-home-mast nav a,.web-public-home .public-home-footer a{display:inline-flex;align-items:center;min-height:40px;color:#d4c8df;text-decoration:none;font-size:14px}
.web-public-home .public-home-grid{display:grid;grid-template-columns:minmax(0,1fr) 358px;gap:72px;align-items:center;padding:54px 0 48px}
.web-public-home #gate .public-home-intro{display:block;min-width:0}
.web-public-home .public-home-eyebrow{color:#c7a1f2;font-size:11px;font-weight:750;letter-spacing:.12em;text-transform:uppercase;line-height:1.5;margin-bottom:16px}
.web-public-home .public-home-intro h1{max-width:720px;font-size:clamp(35px,4.2vw,56px);line-height:1.06;letter-spacing:-.045em;font-weight:800;color:#f6f1fa;margin:0 0 20px;text-wrap:balance}
.web-public-home .public-home-lead{max-width:610px;font-size:16px;line-height:1.65;color:#bfb2cc}
.web-public-home .public-home-actions{display:flex;align-items:center;gap:12px 24px;flex-wrap:wrap;margin:25px 0 28px}
.web-public-home .public-home-actions a{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:46px;color:#e7daef;font-size:14px;font-weight:650;text-decoration:none}
.web-public-home .public-home-actions .public-home-primary{padding:0 20px;background:#9d50ff;border:1px solid #ab6aff;border-radius:12px;color:#fff}
.web-public-home .public-home-characters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:610px}
.web-public-home .public-home-characters>a{position:relative;display:block;overflow:hidden;aspect-ratio:4/4.8;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#201c29;color:white;text-decoration:none}
.web-public-home .public-home-characters img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform .25s ease}
.web-public-home .public-home-characters>a:hover img{transform:scale(1.035)}
.web-public-home .public-home-characters>a>span{position:absolute;inset:auto 0 0;padding:30px 12px 13px;background:linear-gradient(transparent,rgba(10,7,16,.94))}
.web-public-home .public-home-characters strong{display:block;font-size:17px;line-height:1.3}
.web-public-home .public-home-characters small{display:block;margin-top:3px;font-size:11px;color:#ddd0e9;line-height:1.3}
.web-public-home #gate .gate-card{width:100%;padding:28px 25px;border-radius:20px;scroll-margin-top:24px;background:linear-gradient(155deg,rgba(157,80,255,.1),rgba(255,255,255,.025) 65%),#18141f;box-shadow:0 24px 65px rgba(0,0,0,.22)}
.web-public-home #gate .gate-logo{font-size:29px}
.web-public-home #gate .gate-icon{font-size:31px;margin:17px 0}
.web-public-home #gate .gate-title{font-size:20px}
.web-public-home #gate .gate-text{font-size:13px;margin-bottom:21px}
.web-public-home #gate .gate-buttons{display:grid;grid-template-columns:1fr 1fr}
.web-public-home #gate .gate-btn{min-height:46px;padding:11px 12px;font-size:14px;border-radius:12px}
.web-public-home #gate .gate-note{margin-top:16px}
.web-public-home #gate .gate-public-links{display:none}
.web-public-home #gate .public-home-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding:33px 0 36px;border-top:1px solid rgba(255,255,255,.09)}
.web-public-home .public-home-details>a{display:block;color:inherit;text-decoration:none;min-width:0}
.web-public-home .public-home-step{font-size:10px;font-weight:700;color:#aa8ac8;letter-spacing:.1em;text-transform:uppercase}
.web-public-home .public-home-details h2{font-size:19px;line-height:1.35;letter-spacing:-.02em;margin:12px 0 10px;max-width:300px}
.web-public-home .public-home-details p{font-size:13px;line-height:1.65;color:#a99bb7;max-width:320px}
.web-public-home .public-home-text-link{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;font-size:12px;color:#d6b6fa;font-weight:650}
.web-public-home #gate .public-home-guides{align-items:start;justify-content:space-between;gap:32px;padding:28px 0;border-top:1px solid rgba(255,255,255,.09)}
.web-public-home .public-home-guides .public-home-eyebrow{margin-bottom:8px}
.web-public-home .public-home-guides h2{font-size:22px;line-height:1.3;font-weight:700;letter-spacing:-.02em}
.web-public-home .public-home-guides nav{display:flex;flex-direction:column;min-width:290px}
.web-public-home .public-home-guides a{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:43px;color:#d5c8df;font-size:13px;text-decoration:none}
.web-public-home #gate .public-home-footer{justify-content:space-between;align-items:center;gap:16px;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.09);color:#887c96;font-size:11px}
.web-public-home .public-home-footer a{font-size:11px;min-height:36px}
.web-public-home #gate a:focus-visible,.web-public-home #gate button:focus-visible,.web-public-home #gate input:focus-visible{outline:2px solid #c99bff;outline-offset:4px}
.web-public-home #gate a:hover{color:#fff}
@media(min-width:1600px){.web-public-home .public-home-grid{gap:100px}}
@media(max-width:1050px){.web-public-home .public-home-grid{gap:32px;grid-template-columns:minmax(0,1fr) 330px}.web-public-home .public-home-intro h1{font-size:43px}}
@media(max-width:760px){
 .web-public-home #gate{padding-left:20px;padding-right:20px;align-items:initial}
 .web-public-home .public-home-mast{align-items:flex-start;gap:15px;padding:21px 0;flex-direction:column}
 .web-public-home .public-home-brand{font-size:25px}.web-public-home .public-home-brand span{font-size:10px}
 .web-public-home .public-home-mast nav{width:100%;justify-content:space-between;gap:8px}
 .web-public-home .public-home-mast nav a{font-size:12px;min-height:32px}
 .web-public-home .public-home-grid{grid-template-columns:minmax(0,1fr);gap:28px;padding:32px 0}
 .web-public-home .public-home-intro h1{font-size:38px;max-width:520px;line-height:1.08;margin-bottom:17px}
 .web-public-home .public-home-lead{font-size:14px;line-height:1.65}
 .web-public-home .public-home-eyebrow{font-size:10px;margin-bottom:12px}
 .web-public-home .public-home-actions{gap:8px 18px;margin:21px 0 23px}
 .web-public-home .public-home-actions a{font-size:12px;min-height:44px}
 .web-public-home .public-home-actions .public-home-primary{padding:0 15px}
 .web-public-home .public-home-characters{gap:8px}.web-public-home .public-home-characters>a{aspect-ratio:3/4;border-radius:10px}
 .web-public-home .public-home-characters>a>span{padding:24px 8px 10px}
 .web-public-home .public-home-characters strong{font-size:15px}.web-public-home .public-home-characters small{font-size:9px}
 .web-public-home #gate .gate-card{max-width:460px;margin:auto;padding:27px 23px;border-radius:18px}
 .web-public-home #gate .public-home-details{grid-template-columns:minmax(0,1fr);gap:22px;padding:28px 0}
 .web-public-home .public-home-details h2{max-width:none;font-size:19px;margin:8px 0}.web-public-home .public-home-details p{max-width:none}
 .web-public-home #gate .public-home-guides{flex-direction:column;gap:15px;padding:26px 0}
 .web-public-home .public-home-guides h2{font-size:21px}.web-public-home .public-home-guides nav{width:100%;min-width:0}
 .web-public-home #gate .public-home-footer{align-items:flex-start;flex-direction:column;gap:7px}
 .web-public-home .public-home-footer nav{width:100%;justify-content:space-between;gap:10px}
}
@media(prefers-reduced-motion:reduce){.web-public-home #gate{scroll-behavior:auto}.web-public-home .public-home-characters img{transition:none}}
