/* Shared styles for password.html + legal pages (matches index.html tokens) */
:root{
  --bg:#050505;--card:#101010;--line:rgba(255,255,255,.1);--line-2:rgba(255,255,255,.2);
  --txt:#f3f3ef;--mute:#a6a6a0;--dim:#80807a;--accent:#d6d6d1;
  --ease:cubic-bezier(.22,1,.36,1);
  --grotesk:'Space Grotesk',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
  --sans:'Inter',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;
  --logo:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0NjUuMzcgMjAwIiBmaWxsPSJjdXJyZW50Q29sb3IiIHJvbGU9ImltZyIgYXJpYS1sYWJlbD0iRU1SIFN0dWRpb3MiPgo8dGl0bGU+RU1SIFN0dWRpb3M8L3RpdGxlPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTIyLjE4LDEuNzUgMTUuOTUsMi45MiAxMS42Nyw0Ljg2IDguOTUsNi44MSA0LjQ3LDExLjY3IDIuOTIsMTQuNzkgMS4zNiwyMC42MiAxLjM2LDEyMS43OSAyLjkyLDEyNy4yNCA1LjI1LDEzMS4xMyA4LjE3LDEzNC4wNSAxMy42MiwxMzcuMTYgMTYuNzMsMTM3Ljk0IDE5Mi4yMiwxMzcuOTQgMTkzLjM5LDEzNy41NSAxOTYuMywxMzUuMDIgMTk3LjA4LDEzMy4wNyAxOTcuMDgsNzEuOTggMTk3LjY3LDcxLjc5IDIzNi43NywxMjEuNzkgMjM4LjkxLDEyMy4xNSAyNDEuMjUsMTIzLjE1IDI0NC4xNiwxMjEuMDEgMjU4LjU2LDEwMS41NiAyNzIuOTYsODMuMjcgMjgwLjM1LDcyLjc2IDI4MS4zMiw3Mi4xOCAyODEuOTEsNzIuNzYgMjgxLjkxLDg0LjA1IDI4MS41Miw4NC40NCAyODEuNTIsMTMxLjkxIDI4Mi4zLDEzNS4wMiAyODQuNDQsMTM3LjE2IDI4Ni4zOCwxMzcuOTQgMzI4LjQsMTM3Ljk0IDMzMS43MSwxMzUuOCAzMzIuODgsMTMyLjY4IDMzMi44OCwzOC4xMyAzMzMuODUsMzcuNTUgNDAzLjg5LDM3LjU1IDQwNy4zOSwzOS4xMSA0MDkuMTQsNDAuODYgNDA5LjkyLDQyLjQxIDQxMC4zMSw0Ny40NyA0MDkuMTQsNDkuODEgNDA3LjAsNTEuOTUgNDA0LjI4LDUzLjExIDM0Ny40Nyw1My4xMSAzNDYuMyw1My41IDM0NC41NSw1NS4yNSAzNDMuMzksNTguNzUgMzQzLjM5LDcxLjIxIDM0NC45NCw3NS40OSAzNzguNCwxMTUuMTggMzg2LjE5LDEyMy43NCAzODcuNzQsMTI2LjA3IDM5NS45MSwxMzUuNDEgMzk3LjY3LDEzNi43NyA0MDAuNzgsMTM3Ljk0IDQ1OS45MiwxMzcuOTQgNDYxLjQ4LDEzNy4xNiA0NjMuMjMsMTM1LjAyIDQ2My4yMywxMzIuNjggNDYyLjQ1LDEzMS4xMyA0MjUuMSw4OC4zMyA0MjUuNjgsODcuNzQgNDI4Ljc5LDg3LjM1IDQzMy44NSw4NS44IDQ0MC4wOCw4Mi42OCA0NDMuOTcsNzkuOTYgNDUxLjE3LDcyLjc2IDQ1NC4yOCw2OC4wOSA0NTcuMzksNjEuNDggNDU4Ljk1LDU2LjQyIDQ1OS4zNCw1Mi41MyA0NTkuNzMsNTIuMTQgNDU5LjczLDQ4LjY0IDQ2MC4xMiw0OC4yNSA0NTkuNzMsMzkuNjkgNDU4LjE3LDMyLjMgNDU2LjIzLDI3LjI0IDQ1MS45NSwxOS44NCA0NDkuNjEsMTYuNzMgNDQyLjAyLDkuNTMgNDMzLjA3LDQuNDcgNDI4LjQsMi45MiA0MjQuNTEsMi4xNCA0MjEuMDEsMi4xNCA0MjAuNjIsMS43NSA0MTYuMzQsMS43NSA0MTUuOTUsMi4xNCA0MTQuMDEsMi4xNCA0MTMuNjIsMS43NSA0MTMuMjMsMi4xNCA0MTIuODQsMS43NSAyNzguMjEsMS43NSAyNzcuODIsMi4xNCAyNzUuODgsMi4xNCAyNzMuMzUsNC4yOCAyNjUuOTUsMTQuMDEgMjQwLjI3LDQ5LjgxIDIzOC4xMyw1MS4xNyAyMzYuMzgsNDkuNDIgMjI5LjM4LDM5LjMgMjI3LjgyLDM3Ljc0IDIyNi4yNiwzNS4wMiAyMTguNDgsMjQuOSAyMDQuNDcsNS4wNiAyMDEuOTUsMi41MyAxOTkuNjEsMS43NSAyMi4xOCwxLjc1Wk01MS45NSwzNy43NCAxNDguNjQsMzcuNTUgMTQ5LjQyLDM3Ljk0IDE1MC4wLDM5LjMgMTUwLjAsNDIuNDEgMTQ5LjYxLDQyLjggMTQ5LjYxLDk0LjU1IDE1MC4wLDk0Ljk0IDE1MC4wLDk3LjY3IDE0OS4wMyw5OC42NCA1MS4zNiw5OC42NCA0OC42NCw5Ny40NyA0Ni44OSw5Ni4xMSA0NS43Miw5NC4xNiA0NS4zMyw4OS44OCA0Ni41LDg3LjE2IDQ4LjY0LDg1LjAyIDUwLjU4LDg0LjI0IDEzMS41Miw4NC4yNCAxMzQuMjQsODMuMDcgMTM1LjYsODEuNzEgMTM2Ljc3LDc4LjIxIDEzNi43Nyw1OC43NSAxMzUuNiw1NS42NCAxMzMuMDcsNTMuNSAxMzEuOTEsNTMuMTEgNTEuMzYsNTMuMTEgNDguNjQsNTEuOTUgNDYuNSw0OS44MSA0NS4zMyw0Ny4wOCA0NS4zMyw0My41OCA0Ni41LDQwLjg2IDQ4LjI1LDM5LjExIDQ5LjQyLDM4LjMzIDUxLjk1LDM3Ljc0Wk01LjQ1LDE1MC4wIDMuNSwxNTAuNzggMi4xNCwxNTIuMTQgMS4zNiwxNTQuNDcgMi4xNCwxNTcuMiA0LjI4LDE1OC45NSAzOS4zLDE1OC45NSAzOS42OSwxNTkuMzQgNzIuNzYsMTU5LjM0IDczLjE1LDE1OC45NSA4Ny45NCwxNTguOTUgODguMzMsMTU5LjM0IDE0MC40NywxNTkuMzQgMTQwLjg2LDE1OC45NSAxNTQuODYsMTU4Ljk1IDE1NS4yNSwxNTkuMzQgMjcwLjgyLDE1OS4zNCAyNzEuMjEsMTU4Ljk1IDI3Mi4zNywxNTkuMzQgMjg2Ljc3LDE1OS4zNCAyODcuMTYsMTU4Ljk1IDI5MS4wNSwxNTguOTUgMjkxLjQ0LDE1OS4zNCAzMTMuNjIsMTU5LjM0IDMxNC4wMSwxNTguOTUgMzc3LjQzLDE1OS4zNCAzNzcuODIsMTU4Ljk1IDM5OC4wNSwxNTguOTUgMzk4LjQ0LDE1OS4zNCA0MTAuODksMTU5LjM0IDQxMS4yOCwxNTguOTUgNDEzLjIzLDE1OC45NSA0MTMuNjIsMTU5LjM0IDQzOS42OSwxNTkuMzQgNDQwLjA4LDE1OC45NSA0NjAuMzEsMTU4Ljk1IDQ2My4yMywxNTYuMDMgNDYzLjIzLDE1Mi45MiA0NjEuNDgsMTUwLjc4IDQ1OS41MywxNTAuMCA1LjQ1LDE1MC4wWk0zOC4xMywxNzAuNjIgMzcuNzQsMTcxLjAxIDM1LjgsMTcxLjAxIDMzLjA3LDE3Mi4xOCAzMC41NCwxNzQuNzEgMjkuNzcsMTc2LjY1IDI5Ljc3LDE4MS4zMiAzMC41NCwxODMuMjcgMzMuMDcsMTg1LjggMzYuMTksMTg2Ljk2IDM5LjMsMTg2Ljk2IDM5LjY5LDE4Ny4zNSA1NC4wOSwxODcuMzUgNTUuMDYsMTg4LjMzIDU1LjQ1LDE4OS44OCA1NC4wOSwxOTEuNjMgNTIuOTIsMTkyLjAyIDUwLjU4LDE5Mi4wMiA1MC4xOSwxOTEuNjMgNDAuODYsMTkyLjAyIDM5LjMsMTkxLjYzIDM4LjMzLDE5MC42NiAzOC4zMywxODkuNDkgMzcuNzQsMTg4LjkxIDMwLjc0LDE4OC45MSAyOS43NywxODkuNDkgMjkuNzcsMTkxLjgzIDMwLjkzLDE5NC41NSAzMi42OCwxOTYuMyAzNS4wMiwxOTcuNDcgMzYuOTYsMTk3LjQ3IDM3LjM1LDE5Ny44NiA0My45NywxOTcuODYgNDQuMzYsMTk3LjQ3IDU1LjI1LDE5Ny44NiA1NS42NCwxOTcuNDcgNTguNzUsMTk3LjQ3IDYxLjA5LDE5Ni4zIDYyLjg0LDE5NC41NSA2NC4wMSwxOTEuNDQgNjQuMDEsMTg2Ljc3IDYxLjg3LDE4My4wNyA1Ny45OCwxODEuNTIgNDAuODYsMTgxLjUyIDM5LjY5LDE4MS4xMyAzOC4zMywxNzkuNzcgMzguMzMsMTc4LjIxIDQwLjA4LDE3Ni44NSA1My4zMSwxNzYuODUgNTUuMjUsMTc4Ljc5IDYzLjA0LDE3OC43OSA2My42MiwxNzguMjEgNjMuNjIsMTc2LjI2IDYyLjQ1LDE3My41NCA1OS45MiwxNzEuNCA1Ni40MiwxNzAuNjIgMzguMTMsMTcwLjYyWk05NS43MiwxNzAuNjIgOTQuNzUsMTcxLjIxIDk0LjM2LDE3Mi43NiA5NC4zNiwxNzcuNDMgOTQuOTQsMTc4LjAyIDk1LjcyLDE3OC40IDEwNS4wNiwxNzguMDIgMTA2LjAzLDE3OS4zOCAxMDYuMDMsMTk3LjI4IDEwNi42MSwxOTcuODYgMTEyLjg0LDE5Ny44NiAxMTQuMDEsMTk3LjQ3IDExNC41OSwxOTYuODkgMTE0LjU5LDE3OC42IDExNS41NiwxNzguMDIgMTI2LjQ2LDE3OC4wMiAxMjYuNjUsMTcxLjIxIDEyNS42OCwxNzAuNjIgOTUuNzIsMTcwLjYyWk0xNTkuMTQsMTcwLjYyIDE1Ny43OCwxNzEuOTggMTU3Ljc4LDE5MC4yNyAxNTguOTUsMTkzLjc3IDE2MS40OCwxOTYuMyAxNjQuMiwxOTcuNDcgMTY2LjkzLDE5Ny40NyAxNjcuMzIsMTk3Ljg2IDE4My42NiwxOTcuODYgMTg0LjA1LDE5Ny40NyAxODcuOTQsMTk3LjA4IDE5MC42NiwxOTUuNTMgMTkyLjAyLDE5My43NyAxOTMuMTksMTkwLjI3IDE5My4xOSwxNzEuNiAxOTIuNjEsMTcxLjAxIDE5MS44MywxNzAuNjIgMTg1LjIxLDE3MC42MiAxODQuMjQsMTcxLjk4IDE4NC4yNCwxODguNzIgMTgzLjI3LDE5MC4wOCAxODEuNzEsMTkwLjg2IDE2OC44NywxOTAuODYgMTY3LjEyLDE4OS40OSAxNjYuMzQsMTg2LjM4IDE2Ni4zNCwxNzQuMzIgMTY2LjczLDE3My45MyAxNjYuNzMsMTcxLjk4IDE2NS4zNywxNzAuNjIgMTU5LjE0LDE3MC42MlpNMjI2LjQ2LDE3MC42MiAyMjUuNDksMTcxLjIxIDIyNS42OCwxOTcuNDcgMjI2LjQ2LDE5Ny44NiAyMzguOTEsMTk3Ljg2IDIzOS4zLDE5Ny40NyAyNTEuNzUsMTk3Ljg2IDI1NS42NCwxOTcuMDggMjU3LjIsMTk2LjMgMjU5LjM0LDE5NC4xNiAyNjAuNTEsMTkxLjA1IDI2MC41MSwxNzcuMDQgMjU5LjM0LDE3NC4zMiAyNTcuMiwxNzIuMTggMjUyLjUzLDE3MC42MiAyMjYuNDYsMTcwLjYyWk0yOTMuMzksMTcwLjYyIDI5Mi4wMiwxNzEuOTggMjkyLjAyLDE5Ni44OSAyOTMuMCwxOTcuODYgMjk5LjIyLDE5Ny44NiAzMDAuNTgsMTk3LjI4IDMwMC41OCwxNzEuMjEgMjk5LjYxLDE3MC42MiAyOTMuMzksMTcwLjYyWk0zNDMuMTksMTcwLjYyIDM0Mi44LDE3MS4wMSAzNDAuNDcsMTcxLjAxIDMzNy4zNSwxNzIuNTcgMzM1LjYsMTc0LjcxIDMzNC44MiwxNzcuMDQgMzM0LjQ0LDE3OC45OSAzMzQuNDQsMTg5Ljg4IDMzNS42LDE5My43NyAzMzcuNzQsMTk2LjMgMzQwLjQ3LDE5Ny40NyAzNDMuMTksMTk3LjQ3IDM0My41OCwxOTcuODYgMzY0Ljk4LDE5Ny40NyAzNjguNjgsMTk1LjMzIDM3MC4yMywxOTMuMCAzNzEuMDEsMTg5Ljg4IDM3MS4wMSwxNzguNiAzNzAuMjMsMTc1LjQ5IDM2OC40OCwxNzIuOTYgMzY2LjkzLDE3MS43OSAzNjIuMjYsMTcwLjYyIDM1OC4zNywxNzAuNjIgMzU3Ljk4LDE3MS4wMSAzNDMuMTksMTcwLjYyWk00MTEuMjgsMTcwLjYyIDQwNi42MSwxNzEuNzkgNDAzLjcsMTc0LjMyIDQwMi41MywxNzcuNDMgNDAyLjUzLDE4MC45MyA0MDMuNywxODMuNjYgNDA1LjQ1LDE4NS40MSA0MDkuMzQsMTg2Ljk2IDQxMS42NywxODYuOTYgNDEyLjA2LDE4Ny4zNSA0MjUuMjksMTg2Ljk2IDQyNy40MywxODcuOTQgNDI3LjgyLDE5MC42NiA0MjUuNjgsMTkyLjAyIDQxMy4yMywxOTIuMDIgNDEyLjA2LDE5MS42MyA0MTAuMTIsMTg4LjkxIDQwMy41LDE4OC45MSA0MDIuNTMsMTg5LjQ5IDQwMi41MywxOTEuODMgNDAzLjcsMTk0LjU1IDQwNi42MSwxOTcuMDggNDEwLjUxLDE5Ny40NyA0MTAuODksMTk3Ljg2IDQzMS4xMywxOTcuNDcgNDMzLjA3LDE5Ni42OSA0MzUuNiwxOTQuMTYgNDM2LjM4LDE5Mi4yMiA0MzYuMzgsMTg2LjM4IDQzNC42MywxODMuMDcgNDMxLjEzLDE4MS41MiA0MTMuNjIsMTgxLjUyIDQxMS40OCwxODAuNTQgNDExLjA5LDE3OC4yMSA0MTMuMjMsMTc2Ljg1IDQyNi4wNywxNzYuODUgNDI4LjAyLDE3OC43OSA0MzUuOCwxNzguNzkgNDM1Ljk5LDE3NS44OCA0MzUuMjEsMTczLjkzIDQzMi4zLDE3MS40IDQyOC40LDE3MC42MiA0MjIuOTYsMTcwLjYyIDQyMi41NywxNzEuMDEgNDExLjI4LDE3MC42MlpNMjM0LjQ0LDE3Ny44MiAyNDkuNDIsMTc3LjYzIDI1MC41OCwxNzguMDIgMjUxLjk1LDE3OS43NyAyNTEuOTUsMTgyLjg4IDI1Mi4zMywxODMuMjcgMjUxLjU2LDE4OS40OSAyNDkuODEsMTkwLjg2IDIzNC42MywxOTAuODYgMjM0LjA1LDE5MC4yNyAyMzQuMDUsMTc4LjIxIDIzNC40NCwxNzcuODJaTTM0NC45NCwxNzcuODIgMzU5LjkyLDE3Ny42MyAzNjEuNDgsMTc4LjQgMzYyLjQ1LDE4MC41NCAzNjIuMDYsMTg5LjExIDM1OS45MiwxOTAuODYgMzQ1LjUzLDE5MC44NiAzNDQuNzUsMTkwLjQ3IDM0My4zOSwxODkuMTEgMzQzLjAsMTg3Ljk0IDM0My4wLDE4MC41NCAzNDMuMzksMTc4Ljk5IDM0NC45NCwxNzcuODJaIi8+Cjwvc3ZnPgo=");
  --pad:clamp(20px,4vw,56px);
}
*{margin:0;padding:0;box-sizing:border-box}
html{background:var(--bg);color-scheme:dark}
body{background:var(--bg);color:var(--txt);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;min-height:100vh}
a{color:inherit}
::selection{background:var(--accent);color:#050505}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
h1,h2,h3{font-family:var(--grotesk);font-weight:600;letter-spacing:-.04em;line-height:1.02}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:8px;background:var(--accent);color:#050505;padding:10px 16px;border-radius:8px;z-index:100;font-family:var(--grotesk);font-weight:600}
.skip:focus{left:8px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:var(--grotesk);font-weight:600;font-size:16px;border-radius:100px;padding:16px 30px;background:var(--accent);color:#050505;transition:background .3s,opacity .3s}
.btn:hover{background:#fff}
.btn:disabled{opacity:.5;cursor:default}

/* ============ PASSWORD PAGE ============ */
.pw{position:relative;min-height:100svh;display:flex;flex-direction:column;isolation:isolate;overflow:hidden}
#topo{position:absolute;inset:0;width:100%;height:100%;z-index:-1;display:block;-webkit-mask-image:radial-gradient(ellipse 88% 78% at 50% 48%,#000 22%,transparent 86%);mask-image:radial-gradient(ellipse 88% 78% at 50% 48%,#000 22%,transparent 86%)}
.pw-top,.pw-bot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:24px var(--pad);font-family:var(--grotesk);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.pw-bot{margin-top:auto;letter-spacing:.06em;text-transform:none;font-size:13px}
.pw-bot a{text-decoration:none;margin-left:18px}
.pw-bot a:first-child{margin-left:0}
.pw-bot a:hover{color:var(--txt)}
.pw-main{flex:1;display:flex;align-items:center;justify-content:center;padding:20px var(--pad)}
.pw-in{width:min(860px,100%);text-align:center;display:flex;flex-direction:column;align-items:center}
.logo{width:min(380px,68vw,calc(30vh*2.327));aspect-ratio:465.37/200;-webkit-mask-image:var(--logo);mask-image:var(--logo);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;background:linear-gradient(180deg,#fff 0%,#cfcfc9 100%)}
.pw h1{margin-top:clamp(22px,4vh,40px);font-size:clamp(32px,5vw,58px)}
.pw h1 em{font-style:normal;color:var(--dim)}
.pw-in>p{margin-top:14px;color:var(--mute);max-width:40ch}
.msg{min-height:22px;margin-top:12px;font-size:14px;color:var(--mute);text-align:center}
.msg.err{color:#e4e4df;text-decoration:underline;text-underline-offset:3px}

/* ============ LEGAL PAGES ============ */
.lg-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px var(--pad);border-bottom:1px solid var(--line)}
.lg-top .logo{width:78px}
.lg-top a.back{font-family:var(--grotesk);font-size:14px;color:var(--mute);text-decoration:none}
.lg-top a.back:hover{color:var(--txt)}
.lg{width:min(760px,100% - var(--pad)*2);margin:clamp(40px,7vw,90px) auto clamp(60px,9vw,120px)}
.lg .eyebrow{font-family:var(--grotesk);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--dim);margin-bottom:14px}
.lg h1{font-size:clamp(40px,7vw,84px);margin-bottom:clamp(24px,4vw,44px)}
.draft{border:1px dashed var(--line-2);border-radius:12px;padding:14px 16px;font-size:13px;color:var(--mute);margin-bottom:34px}
.lg .updated{margin:-18px 0 34px;font-family:var(--grotesk);font-size:14px;color:var(--dim)}
.lg h2{font-size:clamp(20px,2.4vw,26px);margin:36px 0 10px;letter-spacing:-.03em}
.lg p,.lg li{color:var(--mute);font-size:16px}
.lg p+p{margin-top:12px}
.lg ul{margin:8px 0 0 20px}
.lg li{margin-top:6px}
.lg b{color:var(--txt);font-weight:500}
.lg a{color:var(--txt);text-underline-offset:3px}
.lg-bot{border-top:1px solid var(--line);padding:24px var(--pad);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-family:var(--grotesk);font-size:13px;color:var(--dim)}
.lg-bot a{text-decoration:none;margin-left:18px}
.lg-bot a:first-child{margin-left:0}
.lg-bot a:hover{color:var(--txt)}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001s!important;transition-duration:.001s!important}}

/* typeform inside the password page */
.pw .tf{width:100%;text-align:left;margin-top:clamp(22px,4vh,36px);min-height:min(520px,70svh);background:rgba(10,10,10,.82)}
.pw .tf-stage{padding:clamp(22px,4vw,48px) clamp(18px,4vw,56px)}
.pw .tf-step.out{left:clamp(18px,4vw,56px);right:clamp(18px,4vw,56px)}
.pw .tf-q h3{font-size:clamp(22px,3.2vw,38px)}
.pw .tf-welcome h3{font-size:clamp(30px,4.6vw,56px)}
.pw .tf-input{font-size:clamp(20px,2.6vw,30px)}
.pw .tf-choice{font-size:clamp(15px,1.4vw,18px);padding:10px 14px}
.pw .tf-hint{font-size:14px}

/* ============ CASE STUDIES ============ */
.frame{background:var(--card);border:1px solid var(--line-2);border-radius:18px;overflow:hidden}
.frame-bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid var(--line);background:#171717}
.frame-bar i{width:10px;height:10px;border-radius:50%;background:#434341}
.frame-bar em{margin-left:12px;font-style:normal;font-family:var(--grotesk);font-size:12px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.frame img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top}
.cs{width:min(1200px,100% - var(--pad)*2);margin:clamp(40px,6vw,80px) auto clamp(60px,8vw,110px)}
.cs-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:clamp(18px,2.4vw,28px)}
.cs-tags span{font-family:var(--grotesk);font-size:11px;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line-2);border-radius:100px;padding:6px 13px;color:var(--mute)}
.cs h1{font-size:clamp(44px,8.4vw,128px);letter-spacing:-.055em;line-height:.95}
.cs-lead{margin-top:clamp(20px,3vw,34px);max-width:46ch;color:var(--mute);font-size:clamp(17px,1.7vw,22px);line-height:1.5}
.cs-meta{margin-top:clamp(30px,4vw,54px);display:grid;grid-template-columns:repeat(4,1fr);gap:20px;border-top:1px solid var(--line-2);padding-top:22px}
.cs-meta dt{font-family:var(--grotesk);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin-bottom:6px}
.cs-meta dd{font-size:15px;color:var(--txt)}
.cs-live{display:inline-flex;gap:8px;margin-top:clamp(22px,3vw,34px);font-family:var(--grotesk);font-weight:600;color:var(--accent);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.cs-live:hover{color:#fff}
.cs-hero{margin-top:clamp(36px,5vw,64px)}
.cs-row{margin-top:clamp(60px,9vw,130px);display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,5vw,90px)}
.cs-row h2{font-size:clamp(30px,4vw,56px);letter-spacing:-.045em}
.cs-list{list-style:none}
.cs-list li{padding:clamp(18px,2.2vw,28px) 0;border-top:1px solid var(--line-2);color:var(--mute);font-size:clamp(15px,1.2vw,18px)}
.cs-list li:last-child{border-bottom:1px solid var(--line-2)}
.cs-list b{display:block;font-family:var(--grotesk);font-weight:500;color:var(--txt);font-size:clamp(19px,1.8vw,26px);letter-spacing:-.03em;margin-bottom:6px}
.cs-detail{max-width:58ch;color:var(--mute);font-size:clamp(16px,1.3vw,19px)}
.cs-shots{margin-top:clamp(50px,7vw,100px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,2.4vw,32px)}
.cs-shots figure.wide{grid-column:1/-1}
.cs-shots figcaption{margin-top:10px;font-family:var(--grotesk);font-size:13px;color:var(--dim)}
.cs-cta{margin-top:clamp(70px,10vw,150px);border-top:1px solid var(--line-2);padding-top:clamp(36px,5vw,64px);display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap}
.cs-cta h2{font-size:clamp(34px,5.4vw,84px);letter-spacing:-.05em}
.cs-cta h2 em{font-style:normal;color:var(--dim)}
.cs-next{margin-top:clamp(40px,5vw,70px);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-family:var(--grotesk);font-size:15px}
.cs-next a{color:var(--mute);text-decoration:none}
.cs-next a:hover{color:var(--txt)}
@media(max-width:860px){.cs-meta{grid-template-columns:1fr 1fr}.cs-row{grid-template-columns:1fr}.cs-shots{grid-template-columns:1fr}}

/* previous work (password page) */
.prev{width:min(1200px,100% - var(--pad)*2);margin:clamp(40px,7vw,90px) auto clamp(40px,6vw,80px)}
.prev h2{font-size:clamp(30px,4.4vw,60px);letter-spacing:-.05em;margin-bottom:clamp(22px,3vw,40px)}
.prev h2 em{font-style:normal;color:var(--dim)}
.prev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.4vw,32px)}
.prev-card{display:block;text-decoration:none;color:inherit}
.prev-card .frame{transition:border-color .3s}
.prev-card:hover .frame,.prev-card:focus-visible .frame{border-color:var(--txt)}
.prev-meta{padding:14px 4px 0}
.prev-meta h3{font-size:clamp(20px,1.9vw,26px);letter-spacing:-.035em;margin-bottom:4px}
.prev-meta p{color:var(--mute);font-size:14px}
.prev-go{display:inline-flex;gap:6px;margin-top:10px;font-family:var(--grotesk);font-weight:600;font-size:14px;color:var(--accent)}
.prev-card:hover .prev-go{text-decoration:underline;text-underline-offset:4px}
@media(max-width:860px){.prev-grid{grid-template-columns:1fr}}

/* phone layout for the password page */
@media(max-width:860px){
  .pw-top{padding:18px var(--pad)}
  .pw-main{padding:4px var(--pad) 0}
  .logo{width:min(300px,64vw)}
  .pw h1{margin-top:20px;font-size:clamp(30px,8.4vw,44px)}
  .pw-in>p{margin-top:10px;font-size:15px}
  .pw .tf{min-height:0;margin-top:22px;border-radius:24px}
  .pw .tf-stage{min-height:330px;padding:24px 20px}
  .pw .tf-step.out{left:20px;right:20px}
  .pw .tf-q h3{font-size:clamp(22px,6.2vw,28px)}
  .pw .tf-welcome h3{font-size:clamp(30px,8.8vw,42px)}
  .pw .tf-foot{padding:12px 16px}
  .prev{margin-top:48px;margin-bottom:32px}
  .prev h2{margin-bottom:20px}
  .prev-grid{gap:26px}
  .prev-meta{padding-top:10px}
  .pw-bot{padding:20px var(--pad)}
}
