/* Hollsteen landing v3 (headline A). Fonts self-hosted from /app/static/fonts. Greys: #222 #555 #767676 (text) · #BBB/#DDD rules only #DDD only. */
@font-face{font-family:'IBM Plex Sans';font-weight:400;font-display:swap;src:url(/app/static/fonts/IBMPlexSans-400.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Sans';font-weight:600;font-display:swap;src:url(/app/static/fonts/IBMPlexSans-600.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:400;font-display:swap;src:url(/app/static/fonts/IBMPlexMono-400.woff2) format('woff2')}
*{box-sizing:border-box}body{margin:0;background:#fff;color:#000;font:16px/1.5 'IBM Plex Sans',system-ui,sans-serif}
a{color:#000}.w{max-width:1200px;margin:0 auto;padding:32px 40px}
.nav{display:flex;justify-content:space-between;align-items:center;font-size:14px}.nav a.cta{text-decoration:none;border-bottom:1px solid #000}
.wm{height:20px;width:auto;display:block}
h1{font-size:72px;line-height:1.02;font-weight:600;letter-spacing:-.03em;margin:120px 0 20px;max-width:900px}
.sub{font-size:20px;line-height:1.45;max-width:640px;margin:0;color:#222}
.fig{margin:96px 0 0}.cap{font-size:13px;color:#555;max-width:640px;margin:28px 0 0}
svg text{font-family:'IBM Plex Sans';fill:#000}svg .m{font-family:'IBM Plex Mono';font-weight:400}
.btn{display:inline-block;background:#000;color:#fff;padding:16px 26px;font-weight:600;text-decoration:none;font-size:16px;margin:72px 0 0}
.aud{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin:160px 0 0;border-top:1px solid #000;padding-top:28px}
.aud h2{font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:400;color:#555;margin:0 0 10px}.aud p{font-size:18px;margin:0;max-width:460px}
.q{margin:120px 0 0;border-top:1px solid #DDD;padding-top:24px;color:#555;font-size:15px}.q b{color:#000;font-weight:600;font-variant-numeric:tabular-nums}
.co{columns:5;column-gap:24px;list-style:none;padding:0;margin:20px 0 0;font-size:14px}.co li{padding:2px 0}.co .nr{color:#767676}
.fine{font-size:13px;margin:16px 0 0}
details{margin:64px 0 0;border-top:1px solid #DDD;padding:14px 0;font-size:14px;color:#555}summary{cursor:pointer;color:#000}
.ft{border-top:1px solid #DDD;padding:14px 0 8px;font-size:13px;color:#767676;display:flex;justify-content:space-between;gap:16px}.ft a{color:#767676}
.mlist{display:none}
.anim .ln{animation:dr 600ms cubic-bezier(.2,0,0,1) both}.anim .ln.l{--c:inset(0 0 0 100%)}.anim .ln.r{--c:inset(0 100% 0 0)}
@keyframes dr{from{clip-path:var(--c)}to{clip-path:inset(0)}}
@media (prefers-reduced-motion:reduce){.anim .ln{animation:none}}
@media(max-width:640px){.w{padding:20px}h1{font-size:44px;margin-top:64px}.sub{font-size:17px}.fig{margin-top:48px}.hero-g{display:none}.mlist{display:block}
.mlist h2{font-size:11px;letter-spacing:.12em;font-weight:400;color:#555;margin:28px 0 6px;border-bottom:.75px solid #000;padding-bottom:6px;display:flex;justify-content:space-between}
.mlist div{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0;font-size:16px}.mlist b{font:400 22px 'IBM Plex Mono'}.mlist .na{color:#767676}
.mc{border-top:3px solid #000;border-bottom:3px solid #000;padding:14px 0;text-align:center}.mc strong{font-size:32px;display:block;letter-spacing:-.5px}.mc span{font:13px 'IBM Plex Mono';color:#555}
.aud{grid-template-columns:1fr;gap:32px;margin-top:96px}.co{columns:2}.btn{display:block;text-align:center;margin-top:48px}.ft{flex-direction:column;gap:6px}}
/* legal pages */
.legal{max-width:760px}.legal h1{font-size:44px;margin:72px 0 8px}.legal h2{font-size:20px;margin:40px 0 8px}.legal p,.legal li{max-width:680px}
.legal .lang{font-size:13px;color:#555}.ph{background:#F2F2F2;border-bottom:1px solid #000;font-family:'IBM Plex Mono';font-size:.92em;padding:0 3px}
.note{border:1px dashed #BBB;padding:12px 16px;color:#555;font-size:14px;margin:24px 0}
.legal main{overflow-wrap:break-word;hyphens:auto}.legal main .ph{overflow-wrap:anywhere}

.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.srch{display:flex;gap:8px;margin:32px 0 12px;max-width:560px}
.srch input{flex:1;min-width:0;font:inherit;font-size:16px;padding:12px 14px;border:1px solid #000;border-radius:0;background:#fff;color:#000}
.srch button{font:inherit;font-size:16px;padding:12px 18px;border:1px solid #000;background:#000;color:#fff;cursor:pointer;white-space:nowrap}
.srch input:focus-visible,.srch button:focus-visible{outline:2px solid #000;outline-offset:2px}
@media (max-width:600px){.srch button{padding:12px 12px}}
.legal .nia{border:2px solid #000;padding:4px 20px;margin:24px 0}.legal .nia h2{margin-top:16px}
