/* Vaultary: one native pattern-unlock demonstration, with manual replay. */
.site-header{min-height:88px;max-width:1400px;display:grid;grid-template-columns:1fr auto 1fr;border-bottom:1px solid #ffffff12;gap:40px;position:relative;z-index:10}
.site-header .brand{font-size:27px;gap:10px;letter-spacing:-.04em}.site-header .brand img{width:26px;height:31px}
.site-header .desktop-nav{gap:32px;font-size:14px}.site-header nav a,.site-header nav a:last-child{border:0;padding:8px 0;min-height:44px;color:#bdc5cd}
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.nav-action{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--blue);color:var(--deep);font-size:13px;font-weight:600;padding:11px 18px;text-decoration:none;border-radius:4px}.nav-action:hover{color:var(--deep);background:#c0eaff}.nav-action span{font-size:18px}.mobile-nav{display:none}
.opening-hero{grid-template-columns:1.15fr 1fr;gap:8%;padding:66px 0 72px;align-items:center;min-height:670px}.opening-hero .hero-copy h1{font-size:clamp(78px,7.7vw,96px);line-height:.94;margin-bottom:30px}.opening-hero .hero-sub{font-size:19px;line-height:1.65;max-width:35ch;margin-bottom:30px;color:#bcc5cf}.opening-hero .hero-actions{gap:20px;margin-bottom:24px}.opening-hero .button{min-height:56px;padding:14px 25px;background:var(--blue);font-size:15px;gap:22px;border-radius:4px;box-shadow:0 4px 14px #0002}.opening-hero .button:hover{background:#c0eaff}.hero-assurance{font-size:13px;color:var(--muted);max-width:42ch;line-height:1.8;margin:0}

.unlock-demo{margin:0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:15px}
.unlock-phone{position:relative;display:grid;width:270px;max-width:100%;background:#090c10;border:6px solid #2b3541;border-radius:34px;overflow:hidden;box-shadow:0 28px 60px #0006;isolation:isolate}
.unlock-screen{display:block;grid-area:1/1;width:100%;height:auto;border-radius:27px}.unlock-lock{opacity:1}.unlock-library{opacity:0;transform:scale(.985);transition:opacity 450ms cubic-bezier(.22,1,.36,1),transform 450ms cubic-bezier(.22,1,.36,1);pointer-events:none}
.unlock-pattern{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.unlock-pattern path{stroke:var(--blue);stroke-width:10;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}.unlock-pattern circle{fill:var(--blue);opacity:0}
[data-phase="drawing"] .unlock-pattern path{animation:pattern-draw 1450ms linear forwards}[data-phase="drawing"] .unlock-pattern circle{animation:pattern-dot 100ms ease-out forwards}
[data-phase="opening"] .unlock-pattern path{stroke-dashoffset:0}[data-phase="opening"] .unlock-pattern circle{opacity:1}
.unlock-processing{position:absolute;inset:0;display:flex;flex-direction:column;gap:20px;justify-content:center;align-items:center;opacity:0;background:#0b1018e8;transition:opacity 200ms ease;pointer-events:none}.unlock-processing span{font-size:15px;color:var(--text)}[data-phase="opening"] .unlock-processing{opacity:1}
[data-phase="open"] .unlock-library{opacity:1;transform:scale(1)}[data-phase="open"] .unlock-pattern{opacity:0}
[data-phase="locked"] .unlock-library{transition:none}
.unlock-demo-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;max-width:370px}.unlock-demo-controls>span{font-size:12px;max-width:22ch;line-height:1.5;color:var(--muted)}.unlock-demo-controls button{min-height:44px;display:flex;align-items:center;gap:8px;white-space:nowrap;background:none;border:0;color:var(--blue);font-size:13px;padding:8px}.unlock-demo-controls svg{width:16px}.unlock-demo figcaption{font-size:12px;line-height:1.6;color:var(--muted);max-width:360px;text-align:center}
@keyframes pattern-draw{to{stroke-dashoffset:0}}@keyframes pattern-dot{to{opacity:1}}
.opening-hero{padding-top:40px;padding-bottom:50px;min-height:650px}.opening-hero .hero-copy h1{font-size:clamp(76px,7.5vw,96px)}
body:has([data-opening-vault]) .assist.is-collapsed{position:static;display:flex;justify-content:flex-end;margin:0 auto;padding:0 4.5vw 24px;max-width:1400px}
@media(max-width:1050px){.site-header{gap:20px}.site-header .desktop-nav{gap:20px}.opening-hero{gap:5%}.opening-hero .hero-copy h1{font-size:78px}.opening-hero .hero-sub{font-size:17px}.unlock-phone{width:245px}}
@media(max-width:767px){.site-header{display:flex;justify-content:space-between;min-height:76px;gap:12px}.site-header .brand{font-size:23px;gap:8px}.site-header .brand img{width:23px;height:28px}.site-header .desktop-nav{display:none}.header-actions{gap:10px}.nav-action{font-size:12px;padding:10px 12px;gap:10px}.mobile-nav{display:block}.mobile-nav summary{font-size:12px;cursor:pointer;list-style:none;min-height:44px;display:flex;align-items:center;padding:8px}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary::after{content:'+';margin-left:7px;font-size:17px}.mobile-nav[open] summary::after{content:'−'}.mobile-nav nav{display:flex;position:absolute;top:68px;left:22px;right:22px;padding:17px 22px;background:#19232e;border:1px solid #46596c;border-radius:8px;flex-direction:column;align-items:stretch;gap:2px;box-shadow:0 18px 28px #0006}.site-header .mobile-nav nav a{display:flex!important;min-height:44px;font-size:15px}.opening-hero{grid-template-columns:1fr;gap:35px;min-height:0;padding:36px 0 50px}.opening-hero .hero-copy h1{font-size:clamp(64px,15vw,84px);margin-bottom:24px}.opening-hero .hero-sub{font-size:17px;line-height:1.65;max-width:39ch;margin-bottom:24px}.opening-hero .hero-actions{gap:16px}.opening-hero .button{font-size:14px;padding:12px 20px;min-height:52px}.opening-hero .text-action{font-size:13px}.hero-assurance{font-size:12px;max-width:40ch}.unlock-phone{width:270px}.unlock-demo-controls{max-width:340px}}
@media(max-width:360px){.site-header .brand{font-size:21px}.header-actions{gap:2px}.site-header .nav-action{display:none}.mobile-nav summary{font-size:12px;padding:8px}.opening-hero .hero-copy h1{font-size:62px}.unlock-phone{width:245px}.unlock-demo-controls{gap:8px}.unlock-demo-controls button{font-size:12px}}
@media(prefers-reduced-motion:reduce){.unlock-library,.unlock-processing{transition:none}[data-phase="drawing"] .unlock-pattern path,[data-phase="drawing"] .unlock-pattern circle{animation:none}}



[data-phase="drawing"] .unlock-pattern circle:nth-of-type(1){animation-delay:0ms}[data-phase="drawing"] .unlock-pattern circle:nth-of-type(2){animation-delay:208ms}[data-phase="drawing"] .unlock-pattern circle:nth-of-type(3){animation-delay:416ms}[data-phase="drawing"] .unlock-pattern circle:nth-of-type(4){animation-delay:623ms}[data-phase="drawing"] .unlock-pattern circle:nth-of-type(5){animation-delay:831ms}[data-phase="drawing"] .unlock-pattern circle:nth-of-type(6){animation-delay:1039ms}[data-phase="drawing"] .unlock-pattern circle:nth-of-type(7){animation-delay:1246ms}[data-phase="drawing"] .unlock-pattern circle:nth-of-type(8){animation-delay:1450ms}
