html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}.h0-style{font-family:var(--font-family--accent);font-size:var(--h0--size);line-height:var(--line-height--xs);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--accent--xl)}.h1-style{font-family:var(--font-family--main);font-size:var(--h1--size);line-height:var(--line-height--xs);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--main--xl)}.h1-accent-style{font-family:var(--font-family--accent);font-size:var(--h1-accent--size);line-height:var(--line-height--s);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--accent--l)}.h2-style{font-family:var(--font-family--main);font-size:var(--h2--size);line-height:var(--line-height--s);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--main--l)}.h2_accent-style{font-family:var(--font-family--accent);font-size:var(--h2-accent--size);line-height:var(--line-height--s-m);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--accent--l)}.h3-accent-style{font-family:var(--font-family--accent);font-size:var(--h3-accent--size);line-height:var(--line-height--l);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--accent--m)}.h4-style{font-family:var(--font-family--main);font-size:var(--h4--size);line-height:var(--line-height--m);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--main--s)}.h4-accent-style{font-family:var(--font-family--accent);font-size:var(--h4-accent--size);line-height:var(--line-height--l);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--accent--s)}.body-accent{font-family:var(--font-family--accent);font-size:var(--body-accent--size);line-height:var(--line-height--xl);font-weight:var(--font-weight--regular);letter-spacing:var(--letter-spacing--accent--xs)}.u-trim-accent{display:flow-root}.u-trim-accent:before{content:"";display:table;margin-bottom:calc(-.5lh + .51em)}.u-trim-accent:after{content:"";display:table;margin-bottom:calc(-.5lh + .28em)}.u-trim-text{display:flow-root}.u-trim-text:before{content:"";display:table;margin-bottom:calc(-.5lh + .18em)}.u-trim-text:after{content:"";display:table;margin-bottom:calc(-.5lh + .37em)}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;margin:0;padding:0;background:#0a0a0a}body{min-height:100vh;overflow-x:hidden;overflow-y:auto}#threejs-container{width:100%;height:100vh;position:fixed;top:0;left:0;z-index:10}body.phase2 #threejs-container{z-index:100}#threejs-container canvas{display:block;width:100%;height:auto}#scroll-spacer{height:1300vh;width:100%;position:relative;pointer-events:none}#debug-overlay{position:fixed;bottom:20px;left:20px;background:#000c;color:#0f0;font-family:Courier New,monospace;font-size:12px;padding:10px 15px;border-radius:4px;z-index:9999;border:1px solid rgba(0,255,0,.3)}#debug-overlay div{margin:4px 0}#text-overlay{position:fixed;top:0;left:3vw;right:3vw;width:auto;height:100vh;display:flex;justify-content:center;align-items:center;pointer-events:none;z-index:100;opacity:0;transition:opacity .1s ease-out}.name-text{display:flex;align-items:baseline;gap:.5em;margin:0;padding:0;max-width:100%}.name-neal{font-family:var(--font-family--main);font-weight:var(--font-weight--regular);font-size:clamp(3rem,10vw,180px);color:var(--color--light);letter-spacing:var(--letter-spacing--main--xl);line-height:var(--line-height--xs);text-shadow:0 0 40px rgba(0,0,0,.5),0 0 80px rgba(0,0,0,.3);transition:transform .05s ease-out;flex-shrink:0}.name-baer{font-family:var(--font-family--accent);font-weight:var(--font-weight--regular);font-style:italic;font-size:clamp(3rem,10vw,180px);color:var(--color--light);letter-spacing:var(--letter-spacing--accent--l);line-height:var(--line-height--xs);text-shadow:0 0 40px rgba(0,0,0,.5),0 0 80px rgba(0,0,0,.3);transition:transform .05s ease-out;flex-shrink:0}@media(max-width:768px){.name-neal,.name-baer{font-size:clamp(2rem,10vw,120px)}}@media(max-width:480px){.name-neal,.name-baer{font-size:clamp(1.5rem,9vw,60px)}}#decorative-line{position:fixed;left:3vw;right:3vw;height:0;border-top:1px solid var(--color--light);bottom:6vh;z-index:90;opacity:0;pointer-events:none}#professions-overlay{position:fixed;bottom:8vh;left:3vw;display:flex;flex-direction:column;gap:.3em;pointer-events:none;z-index:100}.profession-physician,.profession-screenwriter,.profession-advocate{font-family:var(--font-family--main);font-weight:var(--font-weight--regular);font-size:clamp(1.2rem,2.5vw,40px);color:var(--color--light);letter-spacing:var(--letter-spacing--main--m);line-height:1;opacity:0;transition:opacity .1s ease-out;text-shadow:0 0 20px rgba(0,0,0,.5),0 0 40px rgba(0,0,0,.3)}#photo-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;display:flex;justify-content:center;align-items:center;pointer-events:none;z-index:50}.neal-photo{width:auto;height:60vh;max-width:55vw;object-fit:cover;opacity:0;transform:translateY(100vh);transition:none;box-shadow:0 20px 60px #00000080,0 10px 30px #0000004d}#bio-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;pointer-events:none;z-index:80;opacity:0;overflow:hidden}.bio-gradient{position:absolute;top:0;left:0;width:65%;height:100%;background:linear-gradient(to right,rgba(40,85,100,.95) 0%,rgba(30,65,80,.9) 30%,rgba(20,45,60,.85) 60%,rgba(10,25,35,.6) 80%,transparent 100%);opacity:0;transform:translate(-100%);transform-origin:center center;transition:none}.bio-content{position:absolute;top:20%;left:3vw;transform:none;max-width:40vw;opacity:0}.bio-text-1,.bio-text-2{font-family:var(--font-family--main);font-weight:var(--font-weight--regular);font-size:clamp(1.2rem,2.5vw,40px);color:var(--color--light);line-height:var(--line-height--m);margin:0 0 1.5em;letter-spacing:var(--letter-spacing--main--m);text-shadow:0 2px 10px rgba(0,0,0,.3)}.see-work-btn{position:absolute;left:50%;top:82%;transform:translate(-50%,-50%) translateY(30px);display:inline-flex;align-items:center;justify-content:center;width:140px;height:140px;border-radius:50%;background:#e8ddd0;border:none;cursor:pointer;font-family:var(--font-family--accent);font-weight:var(--font-weight--regular);font-style:italic;font-size:24px;color:var(--color--black);letter-spacing:var(--letter-spacing--accent--xs);line-height:var(--line-height--l);box-shadow:0 8px 30px #0000004d,0 4px 15px #0003;transition:transform .3s ease,box-shadow .3s ease,background .3s ease,border .3s ease,color .3s ease;pointer-events:auto;opacity:0}.see-work-btn:hover{transform:translate(-50%,-50%) scale(1.05);box-shadow:0 12px 40px #0006,0 6px 20px #00000040}.see-work-btn.visible{opacity:1;transform:translate(-50%,-50%)}.skip-intro-btn{position:fixed;top:48px;right:32px;width:123px;height:47px;border-radius:4px;border:.5px solid #0037ff;background:#0037ff;color:#fff;font-family:var(--font-family--main);font-weight:var(--font-weight--regular);font-size:12px;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;z-index:110;opacity:1;transition:opacity .2s ease,transform .2s ease}.skip-intro-btn:hover{transform:translateY(-1px)}.skip-intro-btn.is-hidden{opacity:0;pointer-events:none}@media(max-width:768px){.skip-intro-btn{top:24px;right:16px;width:110px;height:40px;font-size:11px}}.phase2-flash{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at center,rgba(100,180,200,.8) 0%,rgba(60,140,160,.5) 40%,transparent 70%);pointer-events:none;z-index:200;opacity:0}body.phase2 .bio-content{display:none}.phase2-gradient-overlay{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5;opacity:0;background:conic-gradient(from 0deg at 50% 50%,#50b45066,#28786480,#143c5099,#000000b3,#50b45066 360deg);transition:opacity .5s ease}#intro.intro-container{display:flex;flex-direction:column}
