:root{--ink:#050609;--ink-2:#090b10;--panel:#0d1016;--panel-2:#131722;--neon:#ff4a3d;--neon-deep:#b3261e;--neon-glow:#ff4a3d80;--pine:#2e5d46;--sage:#8fb89d;--sage-glow:#8fb89d6b;--gold:#d9a85c;--ice:#9db8d2;--line:#ffffff1f;--line-soft:#ffffff0f;--text:#f0ece4;--text-dim:#b6b0a4;--text-faint:#7c766b;--serif:"Cormorant Garamond", Georgia, "Times New Roman", serif;--smallcaps:"Cormorant SC", "Cormorant Garamond", Georgia, serif;--body:"EB Garamond", Georgia, serif;--script:"Great Vibes", cursive;--fatface:"Abril Fatface", serif;--collegiate:"Graduate", serif;--whimsy:"Young Serif", serif;--sans:"Inter", system-ui, -apple-system, sans-serif;--maxw:1080px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px;font-size:125%}body{background:var(--ink);color:var(--text);font-family:var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-weight:400;line-height:1.6}h1,h2,h3{font-family:var(--serif);margin:0;font-weight:600;line-height:1.05}a{color:inherit;text-decoration:none}::selection{background:var(--neon);color:var(--ink)}.reveal{opacity:0;will-change:opacity, transform;transition:opacity .9s,transform .9s;transform:translateY(26px)}.reveal.in{opacity:1;transform:none}.nav{z-index:60;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1.4rem;transition:background .4s,border-color .4s;display:flex;position:fixed;inset:0 0 auto}.nav.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom-color:var(--line-soft);background:#050609db}.nav__brand{font-family:var(--smallcaps);letter-spacing:.14em;white-space:nowrap;align-items:baseline;gap:.55rem;font-size:.78rem;display:flex}.nav__studio{color:var(--text-dim)}.nav__studio:hover{color:var(--text)}.nav__ext{opacity:.7;font-size:.65em}.nav__sep{color:var(--text-faint)}.nav__show{color:var(--neon);letter-spacing:.16em}.nav__links{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:1.05rem;font-size:.66rem;display:flex}.nav__links a{color:var(--text-dim);transition:color .25s}.nav__links a:hover,.nav__links a.active{color:var(--text)}.nav__contact{border:1px solid var(--line);border-radius:2px;padding:.3rem .75rem;transition:border-color .25s,color .25s,box-shadow .25s}.nav__contact:hover{border-color:var(--neon);box-shadow:0 0 14px #ff4a3d40;color:var(--neon)!important}.slide{background-position:50%;background-repeat:no-repeat;background-size:cover;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.slide--dark{background:var(--ink)}.slide__center{z-index:2;text-align:center;width:min(880px,92vw);margin:0 auto;padding:5.5rem 0;position:relative}.slide__studio{font-family:var(--smallcaps);letter-spacing:.42em;text-transform:uppercase;color:var(--text-dim);margin-bottom:2.2rem;font-size:.85rem}.slide__scroll{font-family:var(--sans);letter-spacing:.4em;text-transform:uppercase;color:var(--text-faint);margin-top:3.2rem;font-size:.6rem;animation:2.6s ease-in-out infinite bob}@keyframes bob{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(7px)}}.panel__label{font-family:var(--smallcaps);letter-spacing:.4em;text-transform:uppercase;color:var(--neon);margin-bottom:1.3rem;font-size:.8rem}.panel__label.center{text-align:center}.big-head{letter-spacing:.02em;font-size:clamp(2rem,5vw,3.3rem);font-weight:500}.title__rule{background:linear-gradient(90deg, transparent, var(--neon), transparent);width:78px;height:1px;box-shadow:0 0 12px var(--neon-glow);margin:2rem auto}.slide--title{isolation:isolate}.title__bg{filter:saturate(.94);background-position:50% 30%;background-size:cover;position:absolute;inset:0}.title__center{padding-top:7rem}.title__logo{filter:drop-shadow(0 0 26px #ff4a3d61)drop-shadow(0 0 70px #ff4a3d38);width:min(680px,86vw);height:auto;animation:5.5s ease-in-out infinite neon-breathe}@keyframes neon-breathe{0%,to{filter:drop-shadow(0 0 26px #ff4a3d61)drop-shadow(0 0 70px #ff4a3d38)}50%{filter:drop-shadow(0 0 32px #ff4a3d80)drop-shadow(0 0 86px #ff4a3d4d)}}.snow{z-index:1;pointer-events:none;opacity:.6;background-image:radial-gradient(2px 2px at 22px 36px,#fffc,#0000),radial-gradient(1.6px 1.6px at 120px 90px,#ffffff8c,#0000),radial-gradient(2.4px 2.4px at 210px 150px,#ffffffb3,#0000),radial-gradient(1.4px 1.4px at 300px 50px,#ffffff80,#0000),radial-gradient(2px 2px at 380px 200px,#ffffffa6,#0000),radial-gradient(1.5px 1.5px at 460px 120px,#ffffff73,#0000);background-size:520px 260px;animation:14s linear infinite snowfall;position:absolute;inset:-120px 0 0}@keyframes snowfall{0%{background-position:0 -260px}to{background-position:90px 780px}}.logline__center{width:min(980px,94vw)}.genre{flex-direction:column;align-items:center;margin-bottom:2.6rem;line-height:.92;display:flex}.genre__dark{font-family:var(--fatface);letter-spacing:.06em;text-transform:uppercase;color:#d8453a;-webkit-text-fill-color:transparent;text-shadow:3px 4px #0506098c;background-image:linear-gradient(#d8453a99,#d8453a99),url(/img/dark-texture.jpg);background-position:50%;background-size:cover;-webkit-background-clip:text;background-clip:text;font-size:clamp(3.4rem,11vw,7rem)}.genre__fantasy{font-family:var(--collegiate);letter-spacing:.22em;color:#0000;-webkit-text-stroke:1.6px var(--sage);text-shadow:0 0 22px var(--sage-glow);margin:.5rem 0 .2rem .2em;font-size:clamp(2rem,6.4vw,4.1rem)}.genre__romance{font-family:var(--script);color:#f6f1e8;text-shadow:0 0 24px #f6f1e866;margin-top:.4rem;font-size:clamp(2.6rem,7.6vw,4.8rem);transform:rotate(-3deg)}.logline__line{font-family:var(--serif);text-wrap:balance;max-width:46ch;margin:0 auto;font-size:clamp(1.15rem,2.5vw,1.55rem);font-weight:500;line-height:1.55}.slide--tone{grid-template-columns:repeat(3,1fr);align-items:stretch;min-height:100vh;display:grid}.tone__col{background-position:50%;background-size:cover;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100vh;padding-top:16vh;display:flex;position:relative}.tone__scrim{background:linear-gradient(#0506096b 0%,#0506091a 40%,#050609c7 100%);position:absolute;inset:0}.tone__col+.tone__col{border-left:1px solid #050609cc}.tone__wordwrap{z-index:2;position:relative}.tone__word{display:inline-block}.tone__word--whimsical{font-family:var(--whimsy);color:#c0392e;text-shadow:0 2px 18px #050609b3;letter-spacing:.04em;font-size:clamp(1.6rem,3.6vw,2.7rem)}.tone__word--funny{font-family:var(--collegiate);letter-spacing:.3em;color:#0000;-webkit-text-stroke:1.3px var(--sage);text-shadow:0 0 26px var(--sage-glow);font-size:clamp(1.5rem,3.2vw,2.4rem)}.tone__word--sentimental{font-family:var(--script);color:#f6f1e8;text-shadow:0 0 22px #f6f1e873,0 2px 16px #050609cc;font-size:clamp(2.2rem,4.6vw,3.6rem);transform:rotate(-4deg)}.tone__comps{z-index:2;width:84%;position:absolute;bottom:12vh}.tone__comps p{font-family:var(--serif);color:var(--text);text-shadow:0 2px 14px #050609e6;margin:0;font-size:clamp(.95rem,1.7vw,1.2rem);font-weight:500;line-height:1.7}.moodgrid{background:var(--ink);gap:6px;padding:6px;display:grid}.moodgrid--c2{grid-template-columns:repeat(2,1fr)}.moodgrid__cell{aspect-ratio:16/8.6;background-position:50%;background-size:cover;margin:0}.masonry{background:var(--ink);grid-template-columns:1fr 1.35fr 1fr;gap:6px;padding:0 6px 6px;display:grid}.masonry__col{flex-direction:column;gap:6px;display:flex}.masonry__cell{background-position:50%;background-size:cover;flex:1;min-height:252px;margin:0}.masonry__cell--wide{min-height:220px}.slide--tragic{justify-content:flex-end;align-items:flex-end}.tragic__center{text-align:right;flex-direction:column;align-items:flex-end;width:auto;margin:0;padding:0 7vw 11vh 0;display:flex}.tragic__wherethe{filter:drop-shadow(0 2px 12px #050609cc);width:min(220px,34vw);margin:0 4.5rem .6rem 0}.tragic__script{filter:drop-shadow(0 0 22px #f6f1e859)drop-shadow(0 0 60px #9db8d240);width:min(620px,78vw)}.setting__center{width:min(820px,90vw)}.setting__line{font-family:var(--serif);text-wrap:balance;margin:0;font-size:clamp(1.2rem,2.6vw,1.6rem);font-weight:500;line-height:1.65}.slide--charhead{min-height:62vh}.slide--char{isolation:isolate}.panel{z-index:2;width:min(460px,88vw);padding:2rem 0;position:relative}.panel--right{margin-left:auto;margin-right:7vw}.panel--left{margin-left:7vw;margin-right:auto}.char__name{font-family:var(--smallcaps);letter-spacing:.24em;color:#f6f1e8;text-shadow:0 2px 18px #050609cc;font-size:clamp(1.7rem,3.6vw,2.5rem);font-weight:500}.char__rule{background:linear-gradient(90deg, var(--neon), transparent);width:64px;height:1px;margin:1.1rem 0 1.2rem}.panel--left .char__rule,.panel--right .char__rule{margin-left:0}.char__desc{font-family:var(--body);color:var(--text);text-shadow:0 1px 12px #050609e6;margin:0;font-size:1rem;line-height:1.75}.charstrip{background:var(--ink);grid-template-columns:1fr 1.6fr;gap:6px;padding:6px;display:grid}.charstrip__tall{background-position:50% 24%;background-size:cover;min-height:380px;margin:0}.charstrip__rest{gap:6px;display:grid}.charstrip__rest--grid{grid-template-columns:repeat(2,1fr)}.charstrip__cell{background-position:50%;background-size:cover;min-height:187px;margin:0}.slide--nicholas{grid-template-columns:minmax(280px,.9fr) 1.4fr;align-items:stretch;min-height:92vh;display:grid}.nicholas__icon{background-position:top;background-size:cover;border-right:1px solid #050609e6}.nicholas__right{background-position:50%;background-size:cover;justify-content:flex-start;align-items:flex-end;padding:9vh 7vw;display:flex}.nicholas__panel{width:min(520px,88vw)}.char__name--nicholas{letter-spacing:.3em}.slide--themes{background:var(--ink);padding:10vh 0}.themes__wrap{text-align:center;width:min(1080px,94vw);margin:0 auto}.themes__head{flex-direction:column;align-items:center;display:flex}.themes__script{filter:drop-shadow(0 0 26px #f6f1e84d);width:min(440px,72vw)}.themes__from{opacity:.92;width:min(340px,60vw);margin-top:1.2rem}.themes__body{font-family:var(--serif);text-wrap:balance;max-width:58ch;margin:2.8rem auto 3.4rem;font-size:clamp(1.1rem,2.2vw,1.4rem);font-weight:500;line-height:1.7}.themes__strip{border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(3,1fr);gap:6px;padding:6px 0;display:grid}.themes__cell{aspect-ratio:16/7.5;background-position:50%;background-size:cover;margin:0}.closing__center{width:min(820px,92vw)}.closing__line{font-family:var(--serif);text-wrap:balance;margin:0 0 3rem;font-size:clamp(1.15rem,2.4vw,1.5rem);font-weight:500;line-height:1.7}.closing__thanks{filter:drop-shadow(0 0 24px #f6f1e852);width:min(420px,70vw)}.closing__wfp{opacity:.92;width:min(300px,56vw);margin:1.6rem auto 0;display:block}.closing__contact{flex-direction:column;gap:.4rem;display:flex}.closing__contact-label{font-family:var(--body);color:var(--text-dim);font-size:.92rem}.closing__contact-email{font-family:var(--smallcaps);letter-spacing:.18em;color:var(--neon);font-size:1.15rem;transition:text-shadow .3s}.closing__contact-email:hover{text-shadow:0 0 18px var(--neon-glow)}.footer{border-top:1px solid var(--line-soft);background:var(--ink-2);padding:2.6rem 1.4rem 3rem}.footer__inner{max-width:var(--maxw);text-align:center;margin:0 auto}.footer__copy{font-family:var(--body);color:var(--text-faint);max-width:72ch;margin:0 auto 1.2rem;font-size:.78rem;line-height:1.7}.footer__by{font-family:var(--smallcaps);letter-spacing:.22em;color:var(--text-dim);margin-bottom:.5rem;font-size:.8rem}.footer__link{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);font-size:.68rem}.footer__link:hover{color:var(--neon)}@media (width<=900px){.nav__links{display:none}.slide--tone{grid-template-columns:1fr}.tone__col{min-height:64vh;padding-top:10vh}.tone__comps{bottom:7vh}.masonry{grid-template-columns:1fr 1fr}.masonry__col--tall:last-child{flex-direction:row;grid-column:1/-1}.masonry__col--tall:last-child .masonry__cell{min-height:200px}.slide--nicholas{grid-template-columns:1fr}.nicholas__icon{border-bottom:1px solid #050609e6;border-right:0;min-height:58vh}}@media (width<=680px){html{font-size:112%}.nav__studio,.nav__sep{display:none}.nav__show{font-size:.72rem}.moodgrid--c2{grid-template-columns:1fr}.moodgrid__cell{aspect-ratio:16/9.6}.masonry{grid-template-columns:1fr}.masonry__cell{min-height:210px}.charstrip{grid-template-columns:1fr}.charstrip__tall{min-height:300px}.charstrip__rest--grid{grid-template-columns:1fr 1fr}.slide--char{align-items:flex-end}.panel--right,.panel--left{margin:0 auto;padding:0 1.2rem 3.4rem}.themes__strip{grid-template-columns:1fr 1fr}.tragic__center{padding-right:5vw}}.gate{background:radial-gradient(120% 90% at 50% 0%, #ff4a3d12, transparent 55%), var(--ink);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.gate__card{text-align:center;border:1px solid var(--line-soft);background:#0d1016b3;width:min(460px,94vw);padding:3rem 2.2rem 2.6rem}.gate__mark{color:var(--neon);text-shadow:0 0 18px var(--neon-glow);margin-bottom:1.1rem;font-size:1.6rem}.gate__eyebrow{font-family:var(--smallcaps);letter-spacing:.4em;text-transform:uppercase;color:var(--text-dim);margin-bottom:.9rem;font-size:.72rem}.gate__title{font-family:var(--serif);letter-spacing:.06em;margin-bottom:1rem;font-size:1.7rem;font-weight:500}.gate__sub{font-family:var(--body);color:var(--text-dim);margin:0 0 1.8rem;font-size:.9rem;line-height:1.65}.gate__form{gap:.5rem;margin-bottom:1.6rem;display:flex}.gate__form.is-error{animation:.45s shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-7px)}50%{transform:translate(6px)}75%{transform:translate(-4px)}}.gate__input{background:var(--ink);border:1px solid var(--line);color:var(--text);font-family:var(--sans);outline:none;flex:1;padding:.65rem .9rem;font-size:.85rem;transition:border-color .25s}.gate__input:focus{border-color:var(--neon)}.gate__button{border:1px solid var(--neon);color:var(--neon);font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;background:0 0;padding:.65rem 1.1rem;font-size:.7rem;transition:background .25s,color .25s,box-shadow .25s}.gate__button:hover{background:var(--neon);color:var(--ink);box-shadow:0 0 22px var(--neon-glow)}.gate__foot{font-family:var(--body);color:var(--text-faint);font-size:.8rem;line-height:1.6}.gate__link{color:var(--text-dim)}.gate__link:hover{color:var(--neon)}
