.contact{max-width:var(--maxw);padding:calc(var(--nav-h) + 9vh) var(--gutter) 14vh;background:var(--paper);grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);column-gap:clamp(32px,5vw,96px);margin:0 auto;display:grid}.contact__intro{grid-column:1}.contact__intro .chapter{font-size:clamp(2.2rem,6vw,6.2rem)}.contact__intro .lede{margin-top:26px}.contact__intro .lede a{color:var(--ink);text-underline-offset:3px;font-weight:650}.contact__stage{grid-area:1/2/span 2}.stage-panel{top:calc(var(--nav-h) + 3vh);background:radial-gradient(125% 90% at 50% 22%, var(--studio-hi) 0%, var(--studio) 55%, var(--studio-lo) 100%);border-radius:32px;height:min(74vh,660px);position:sticky;overflow:hidden}.stage-panel .stage__poster{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.story,.sent{grid-column:1}.story{gap:clamp(44px,7vh,72px);margin-top:9vh;display:grid}.beat-field{border:0;min-width:0;margin:0;padding:0}.beat-field legend{padding:0}.beat-field .narrator{font-size:clamp(1.35rem,2.1vw,1.9rem)}.sentence{letter-spacing:-.03em;margin:0;font-size:clamp(1.4rem,3vw,2.8rem);font-weight:800;line-height:1.3}.beat-field legend .sentence{display:inline}.sentence--small{color:var(--ink-2);margin-top:18px;font-size:clamp(1.15rem,1.6vw,1.4rem);font-weight:700}.beat-field--turn .sentence{display:inline}.blank-wrap{align-items:baseline;max-width:100%;margin-left:.26em;display:inline-flex}.blank{min-width:4ch;max-width:100%;color:var(--ink);font:inherit;letter-spacing:inherit;transition:border-color .2s var(--ease), background-size .3s var(--ease);background:linear-gradient(#f2a51647,#f2a51647) 0 100%/100% 0 no-repeat;border:0;border-bottom:3px solid #10192033;border-radius:0;margin:0;padding:0 .08em}.blank::placeholder{color:#10192042}.blank:hover{border-bottom-color:#10192073}.blank:focus{border-bottom-color:var(--ink);background-size:100% 38%;outline:none}.blank--area{resize:none;letter-spacing:-.03em;width:100%;margin-top:8px;font-size:clamp(1.4rem,3vw,2.8rem);font-weight:800;line-height:1.3;display:block;overflow:hidden}.sentence--small .blank{min-width:8ch;margin-left:.3em}.chips{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.chip{display:inline-flex;position:relative}.chip input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.chip span{border:1.5px solid var(--line);letter-spacing:-.005em;min-height:46px;transition:background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease), transform .45s var(--spring);background:#fff;border-radius:999px;align-items:center;padding:0 18px;font-size:1rem;font-weight:650;display:inline-flex}.chip:hover span{border-color:var(--link-hover);color:var(--link-hover)}.chip input:checked+span{border-color:var(--ink);background:var(--ink);color:#fff}.chip input:active+span{transition-duration:80ms;transform:scale(1.04,.92)}.chip input:focus-visible+span{outline:2px solid var(--ink);outline-offset:3px}.fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 36px;margin-top:24px;display:grid}.field label{color:var(--ink-2);margin-bottom:4px;font-size:.9rem;font-weight:650;display:block}.field .opt{color:var(--ink-3);font-weight:500}.field input{width:100%;color:var(--ink);font:inherit;transition:border-color .2s var(--ease);background:0 0;border:0;border-bottom:2px solid #10192033;border-radius:0;padding:10px 0 8px;font-size:1.2rem;font-weight:650}.field input::placeholder{color:#10192047;font-weight:500}.field input:hover{border-bottom-color:#10192073}.field input:focus{border-bottom-color:var(--ink);outline:none}.story [aria-invalid=true]{border-bottom-color:var(--ugly)}.field-error{color:var(--ugly-deep);margin:8px 0 0;font-size:.9rem;font-weight:650}.beat-field>.field-error{font-size:1rem}.send{flex-wrap:wrap;align-items:center;gap:16px 28px;display:flex}.send__note{max-width:24em;color:var(--ink-3);margin:0;font-size:.9rem}.send__note a{color:var(--ink-2);text-underline-offset:3px}.send .btn[aria-busy=true]{opacity:.6;pointer-events:none}.form-status{color:var(--ink-2);margin:-24px 0 0;font-weight:650}.form-status:empty{display:none}.form-status.is-error{color:var(--ugly-deep)}.sent{margin-top:9vh}.sent:focus{outline:none}.sent .lede{margin-top:24px}.sent__actions{flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:34px;display:flex}.talk{padding:16vh var(--gutter) 14vh;background:var(--night);color:#f4f1ea;position:relative;overflow:hidden}.talk>*{max-width:var(--maxw);margin-left:auto;margin-right:auto;position:relative}.talk__sign{right:max(var(--gutter), calc((100% - var(--maxw)) / 2));color:#ff5b3d;filter:drop-shadow(0 0 2px #ffb2a1)drop-shadow(0 0 14px #ff4628bf)drop-shadow(0 0 48px #ff321473);width:min(22vw,300px);margin:0;position:absolute;top:12vh}.talk .statement{max-width:11em}.talk__grid{border-top:1px solid #f4f1ea2e;grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr));gap:40px 32px;margin-top:10vh;padding:32px 0 0;list-style:none;display:grid}.talk .label{color:#f4f1eaa8;margin:0 0 12px}.talk__big{letter-spacing:-.02em;overflow-wrap:break-word;font-size:clamp(1.2rem,1.7vw,1.6rem);font-weight:800;text-decoration:none}.talk__big:hover{color:var(--link-hover)}.talk address{font-size:1.1rem;font-style:normal;line-height:1.5}.talk__link{text-underline-offset:4px;width:fit-content;margin-top:10px;font-weight:650;display:block}@media (width<=960px){.contact{padding-top:calc(var(--nav-h) + 5vh);grid-template-rows:none;grid-template-columns:minmax(0,1fr)}.contact__stage{grid-area:auto/1;margin-top:5vh}.stage-panel{border-radius:24px;height:clamp(260px,42vh,420px);position:relative;top:auto}.story{margin-top:7vh}.talk__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.talk__sign{width:150px;margin:0 0 5vh;position:relative;top:auto;right:auto}}@media (width<=560px){.fields,.talk__grid{grid-template-columns:minmax(0,1fr)}.chip span{min-height:42px;padding:0 15px;font-size:.95rem}}.motion .talk__sign:not(.is-lit){color:#33231f;filter:none}.motion .talk__sign.is-lit{animation:1.2s step-end both neon-flicker}@keyframes neon-flicker{0%{opacity:.2}12%{opacity:1}18%{opacity:.3}26%{opacity:1}32%{opacity:.55}40%,to{opacity:1}}.motion .sent:not([hidden])>*{animation:sent-in .8s var(--ease) both}.motion .sent:not([hidden])>:nth-child(2){animation-delay:.1s}.motion .sent:not([hidden])>:nth-child(3){animation-delay:.2s}@keyframes sent-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
