.contact-installation-page{background:radial-gradient(130% 90% at 60% -5%,#131009 0%,#0b0908 55%,#060402 100%) fixed,#0b0908}.contact-installation{--ground:#0b0908;--panel:#0d0b08;--field:#0a0806;--ink:#ece2cf;--ink-dim:#a99a80;--ink-faint:#6f6046;--rule:#292015;--warm:#f5b642;--signal:#ff6a3d;--bloom:#f7efe0;--room-1:#c9d8b4;--room-2:#8fb6c9;--room-3:#ff6a3d;--room-4:#8a97ab;--room-5:#a98fd6;--room-6:#f5b642;--room-7:#f7c85a;--accent:var(--warm);--human:var(--serif-display);--machine:var(--mono);z-index:1;color:var(--ink);padding-top:clamp(48px,6vw,84px);position:relative}.contact-atmosphere{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.contact-grain{z-index:3;pointer-events:none;position:fixed;inset:0;box-shadow:inset 0 0 240px 50px #0000009e}.contact-installation .crumb{color:var(--ink-faint);font-family:var(--machine);letter-spacing:.3em;text-transform:uppercase;margin:0;font-size:.68rem}.contact-installation .crumb b{color:var(--ink-dim);font-weight:400}.install-hero{padding:26px 0 34px;position:relative}.install-hero h1{font-family:var(--human);letter-spacing:-.02em;text-wrap:balance;margin:10px 0 16px;font-size:clamp(2.9rem,7vw,5.4rem);font-weight:300;line-height:1}.install-hero h1 em{color:var(--warm);font-style:italic}.install-hero .lede{max-width:46ch;color:var(--ink-dim);font-family:var(--serif-body);margin:0;font-size:clamp(1rem,1.7vw,1.15rem)}.install-hero .lede b{color:var(--ink);font-weight:400}.install-hero .gapline{color:var(--ink);font-family:var(--human);margin:10px 0 0;font-size:clamp(1.2rem,2.4vw,1.6rem)}.install-door{opacity:.9;pointer-events:none;width:min(220px,24vw);height:300px;position:absolute;top:0;right:0}.install-door span{position:absolute}.install-door .slab{filter:blur(1px);background:linear-gradient(#f7e2ae 0%,#e8b45f 45%,#8a5a22 100%);width:34%;height:64%;top:8%;right:18%;box-shadow:0 0 60px 14px #e8b45f47}.install-door .frame{border:1px solid #ece2cf24;width:42%;height:70%;top:5%;right:14%}.install-door .spill{background:radial-gradient(60% 100% at 60% 0,#e8b45f4d,#0000 70%);width:76%;height:26%;top:66%;right:2%;transform:skew(-24deg)}@media (width<=900px){.install-door{display:none}}.lens-row{justify-content:flex-end;margin:0 0 14px;display:flex}.lens{border:1px solid var(--rule);background:#0000004d;border-radius:999px;padding:3px;display:inline-flex}.lens button{color:var(--ink-dim);font-family:var(--machine);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:8px 16px;font-size:.68rem;transition:color .3s,background-color .3s}.lens button[aria-pressed=true]{background:var(--warm);color:#1a1206}.lens button:not([aria-pressed=true]):hover{color:var(--ink)}.stage{border:1px solid var(--rule);background:linear-gradient(180deg, #f5b64208, #0000 45%), var(--panel);border-radius:3px}.stage__head{border-bottom:1px solid var(--rule);color:var(--ink-faint);font-family:var(--machine);letter-spacing:.22em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;font-size:.66rem;display:flex}.stage__head b{color:var(--accent);font-weight:500}.stage__pager{align-items:center;gap:10px;display:flex}.stage__pager button{border:1px solid var(--rule);width:30px;height:30px;color:var(--ink-dim);font-family:var(--machine);cursor:pointer;background:0 0;border-radius:999px;line-height:1}.stage__pager button:hover{border-color:var(--ink-faint);color:var(--ink)}.stage__body{grid-template-columns:.92fr 1.08fr;min-height:340px;display:grid}.stage__lines{border-right:1px solid var(--rule);flex-direction:column;justify-content:center;gap:14px;padding:clamp(18px,3vw,32px);display:flex}.stage__lines p{color:var(--ink);font-family:var(--human);text-wrap:pretty;margin:0;font-size:clamp(1.05rem,1.9vw,1.4rem);font-weight:300;line-height:1.35;transition:color .5s,opacity .5s}[data-lens=machine] .stage__lines p{color:var(--ink-faint)}.contact-field{background:var(--field);cursor:pointer;touch-action:pan-y;-webkit-user-select:none;user-select:none;border:0;padding:0;position:relative;overflow:hidden}.contact-field canvas{width:100%;height:100%;display:block}.contact-field:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 70px 8px #00000080}.contact-field__hint{color:var(--ink-faint);font-family:var(--machine);letter-spacing:.14em;text-transform:uppercase;opacity:0;pointer-events:none;font-size:.64rem;transition:opacity .5s;position:absolute;top:12px;left:14px}.contact-field:hover .contact-field__hint,.contact-field:focus-visible .contact-field__hint{opacity:.85}.stage__caption{border-top:1px solid var(--rule);flex-wrap:wrap;align-items:baseline;gap:6px 18px;padding:14px 18px;display:flex}.stage__caption .human{color:var(--ink);font-family:var(--human);font-size:1.1rem;font-weight:300}.stage__caption .machine{color:var(--accent);font-family:var(--machine);font-size:.82rem}.stage__foot{border-top:1px solid var(--rule);flex-wrap:wrap;align-items:center;gap:12px 20px;padding:14px 18px;display:flex}.contact-installation .pill{border:1px solid var(--accent);color:var(--ink);font-family:var(--machine);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:999px;padding:10px 20px;font-size:.7rem;line-height:1.2;text-decoration:none;transition:background-color .3s,color .3s,box-shadow .3s;display:inline-block}.contact-installation .pill:hover,.contact-installation .pill:focus-visible{background:var(--accent);box-shadow:0 0 24px -6px var(--accent);color:#141009}.stage__meta{color:var(--ink-faint);font-family:var(--machine);font-size:.68rem}.stage__ritual{width:100%;min-height:1.5em;color:var(--accent);font-family:var(--machine);opacity:0;margin:0;font-size:.7rem;transition:opacity .5s}.stage__ritual.is-shown{opacity:1}.verdict{border:1px solid #f5b64233;border-left:4px solid var(--warm);width:100%;max-width:none;color:var(--ink);font-family:var(--human);text-wrap:pretty;background:linear-gradient(100deg,#f5b64214,#f5b64205 48%,#0000 78%),#0000002e;border-radius:3px;grid-template-columns:minmax(132px,.2fr) minmax(0,1fr);gap:clamp(18px,2.5vw,36px);margin:clamp(26px,4vw,46px) 0 0;padding:clamp(22px,3vw,36px) clamp(20px,3vw,38px);font-size:clamp(1.55rem,3.2vw,2.35rem);font-weight:300;line-height:1.22;transition:border-color .4s,color .4s,background .4s;display:grid}.verdict__label{color:var(--warm);font-family:var(--machine);letter-spacing:.18em;text-transform:uppercase;margin:0;padding-top:.35em;font-size:clamp(.68rem,1vw,.82rem);font-style:normal;line-height:1.5;display:block}.verdict__text{max-width:none;display:block}[data-lens=machine] .verdict{border-color:#ff6a3d38;border-left-color:var(--signal);color:#c2d0dd;font-family:var(--machine);background:linear-gradient(100deg,#ff6a3d14,#8fb6c908 48%,#0000 78%),#0000002e;font-size:clamp(1.1rem,2.2vw,1.55rem);line-height:1.42}[data-lens=machine] .verdict__label{color:var(--signal)}@media (width<=700px){.verdict{grid-template-columns:1fr;gap:12px;padding:22px 20px 26px}.verdict__label{padding-top:0}.verdict__text{max-width:none}}.scrollcue{color:var(--ink-faint);font-family:var(--machine);letter-spacing:.26em;text-transform:uppercase;align-items:center;gap:12px;margin:40px 0 18px;font-size:.66rem;display:flex}.scrollcue span:last-child{background:var(--ink-faint);width:44px;height:1px;position:relative;overflow:hidden}.scrollcue span:last-child:after{background:var(--warm);content:"";width:40%;animation:2.6s ease-in-out infinite contact-sweep;position:absolute;inset:0}@keyframes contact-sweep{0%{transform:translate(-120%)}60%,to{transform:translate(320%)}}.rooms{border-top:1px solid var(--rule)}.room-row{border-bottom:1px solid var(--rule);grid-template-columns:64px 56px minmax(0,1fr) auto 220px;align-items:center;gap:12px 20px;padding:18px 0;display:grid}.room-row[data-active=true]{background:linear-gradient(90deg,#ffffff08,#0000 55%)}.room-row__vignette{border:1px solid var(--rule);background:var(--field);border-radius:2px;width:64px;height:80px;overflow:hidden}.room-row__vignette canvas{width:100%;height:100%;display:block}.room-row__numeral{color:var(--accent);font-family:var(--human);text-align:center;opacity:.55;font-size:2.4rem;font-style:italic;font-weight:300;line-height:1}.room-row__kicker{color:var(--ink-faint);font-family:var(--machine);letter-spacing:.26em;text-transform:uppercase;font-size:.62rem}.room-row__kicker b{color:var(--accent);font-weight:500}.room-row__title{color:var(--ink);font-family:var(--human);margin:4px 0 2px;font-size:1.4rem;font-weight:400;line-height:1.15;text-decoration:none;display:inline-block}.room-row__title:hover,.room-row__title:focus-visible{color:var(--accent)}.room-row__tags{color:var(--ink-dim);font-family:var(--human);font-size:.95rem;font-style:italic}.room-row__desc{max-width:46ch;color:var(--ink-dim);font-family:var(--serif-body);margin:6px 0 0;font-size:.82rem}.room-row__act{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.room-row__meta{color:var(--ink-faint);font-family:var(--machine);font-size:.62rem}.room-row__read{color:var(--ink-faint);font-family:var(--machine);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem}.room-row__field{height:96px}[data-hydrated=false] .needs-script{display:none}@media (width<=1150px){.room-row{grid-template-columns:64px 56px minmax(0,1fr) auto}.room-row__field{grid-column:1/-1;height:84px}}@media (width<=900px){.stage__body{grid-template-columns:1fr}.stage__lines{border-right:0;border-bottom:1px solid var(--rule);padding:18px}.stage .contact-field{min-height:280px}}@media (width<=760px){.room-row{grid-template-columns:52px minmax(0,1fr)}.room-row__vignette{width:52px;height:66px}.room-row__numeral{display:none}.room-row__act{grid-column:2}}.echoes{border:1px solid var(--rule);background:linear-gradient(90deg,#f5b6420a,#0000 60%);border-radius:3px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;margin-top:44px;padding:clamp(20px,3.5vw,32px);display:flex}.echoes .kicker{color:var(--ink-faint);font-family:var(--machine);letter-spacing:.3em;text-transform:uppercase;margin:0 0 8px;font-size:.64rem}.echoes .headline{font-family:var(--human);text-wrap:balance;margin:0;font-size:clamp(1.3rem,3vw,1.8rem);font-weight:300}.echoes .sub{max-width:52ch;color:var(--ink-dim);font-family:var(--serif-body);margin:8px 0 0;font-size:.86rem}.carry-note{border-left:1px solid var(--warm);max-width:62ch;color:var(--ink-dim);font-family:var(--serif-body);margin:34px 0 0;padding:16px 20px;font-size:.86rem}.contact-installation .finale-mount{margin-top:44px;scroll-margin-top:90px}@media (prefers-reduced-motion:reduce){.scrollcue span:last-child:after{animation:none}.contact-field__hint{display:none}}
