/* Isolated ceremony design. The controller is the only owner of state changes.
   accepted + is-new plays once; accepted alone is the settled composition. */
.ceremony{--ceremony-ink:#35402f;--ceremony-muted:#737b67;--ceremony-gold:#ab843d;--ceremony-teal:#48877f;--ceremony-line:#bda97166;box-sizing:border-box;max-width:1120px;margin:0 auto;padding:82px clamp(24px,6vw,86px) 86px;background:#faf9f4;color:var(--ceremony-ink);font-family:var(--sans,'DM Sans',system-ui,sans-serif);scroll-margin-top:60px}
.ceremony *{box-sizing:border-box}.ceremony [hidden]{display:none!important}.ceremony h2,.ceremony h3,.ceremony p,.ceremony blockquote{margin:0}.ceremony button,.ceremony input,.ceremony textarea{font:inherit}.ceremony button,.ceremony a{touch-action:manipulation}.ceremony button{cursor:pointer}.ceremony button:disabled{cursor:wait;opacity:.5}.ceremony :is(a,button,input,textarea,summary):focus-visible{outline:2px solid var(--ceremony-teal);outline-offset:5px}.ceremony-heading{text-align:center}.ceremony .ceremony-overline{color:#9d8654;font:9px/1.6 var(--mono,ui-monospace,monospace);letter-spacing:.15em}.ceremony-heading h2{font:400 clamp(43px,6.7vw,84px)/1.07 var(--serif,'Bodoni 72','Didot','Times New Roman',serif);letter-spacing:-.052em;margin:19px 0 19px}.ceremony-heading h2 em{font-weight:400;color:#9b7a40}.ceremony-heading>p:last-child{font-size:13px;line-height:1.75;color:var(--ceremony-muted)}
.ceremony-scene{max-width:860px;margin:41px auto 33px;isolation:isolate}.ceremony-identities{display:flex;justify-content:space-between;padding:0 8%;gap:26px;position:relative;z-index:1}.ceremony-identity{width:35%;text-align:center;min-width:0}.ceremony-who{display:block;font:8px/1.5 var(--mono,ui-monospace,monospace);letter-spacing:.14em;color:var(--ceremony-gold)}.ceremony-identity-agent .ceremony-who{color:var(--ceremony-teal)}.ceremony-identity strong{display:block;margin-top:7px;font:400 clamp(22px,3vw,32px)/1.15 var(--serif,'Bodoni 72','Didot','Times New Roman',serif);overflow-wrap:anywhere}.ceremony-person-state{display:block;font-size:10px;color:var(--ceremony-muted);line-height:1.6;margin-top:5px;min-height:16px}.ceremony-geometry{display:block;width:100%;height:auto;overflow:visible;margin-top:-3px;stroke-width:1;stroke-linecap:round;stroke-linejoin:round}.ceremony-path{stroke-width:.95;opacity:.4}.ceremony-path-human{stroke:var(--ceremony-gold)}.ceremony-path-agent{stroke:var(--ceremony-teal)}.ceremony-return{stroke:#c5c7b9;opacity:.25;stroke-width:.7}.ceremony-traveller{stroke-width:2;stroke-dasharray:.025 .975;stroke-dashoffset:1;opacity:0;filter:drop-shadow(0 0 3px #bea262)}.ceremony-traveller-human{stroke:#c7a15e}.ceremony-traveller-agent{stroke:#65a69d;filter:drop-shadow(0 0 3px #65a69d)}.ceremony-human-facet{stroke:url(#ceremony-gold);fill:#fffdf6;fill-opacity:.75;stroke-width:1.15}.ceremony-agent-facet{stroke:url(#ceremony-teal);fill:#f6fbf7;fill-opacity:.65;stroke-width:1.1}.ceremony-home-human{filter:drop-shadow(0 6px 5px #b99d4420)}.ceremony-home-agent{filter:drop-shadow(0 6px 5px #43877f15)}.ceremony-center-outline{stroke:#bca779;fill:#faf9f4;fill-opacity:.9;stroke-width:.8;opacity:.35}.ceremony-goldberg{stroke:url(#ceremony-gold);opacity:.12}.ceremony-center-point{fill:#bfa977;opacity:.35}.ceremony-center-halo{opacity:0}.ceremony-meeting-caption{text-align:center;color:#9b927a;font:9px/1.6 var(--mono,ui-monospace,monospace);letter-spacing:.05em;margin-top:-9px!important}.ceremony-complete{display:none}.ceremony-scene[data-state="waiting"] .ceremony-path-human{opacity:.85}.ceremony-scene[data-state="waiting"] .ceremony-person-state#human-state{color:#9a7439}.ceremony-scene:is([data-state="declined"],[data-state="question"]) .ceremony-path-agent{opacity:.85}.ceremony-scene[data-state="declined"] .ceremony-identity-agent .ceremony-person-state{color:#92704f}.ceremony-scene[data-state="question"] .ceremony-identity-agent .ceremony-person-state{color:var(--ceremony-teal)}.ceremony-scene:is([data-state="error"],[data-state="expired"]){opacity:.65}.ceremony-scene[data-state="accepted"] .ceremony-moving-human{transform:translateX(260px) scale(.68);opacity:0}.ceremony-scene[data-state="accepted"] .ceremony-moving-agent{transform:translateX(-260px) scale(.68);opacity:0}.ceremony-scene[data-state="accepted"] .ceremony-center-outline{opacity:1;stroke:#b69450;fill:#fffdf5;stroke-width:1.15}.ceremony-scene[data-state="accepted"] .ceremony-goldberg{opacity:1;stroke-width:1.1}.ceremony-scene[data-state="accepted"] .ceremony-center-point{opacity:1}.ceremony-scene[data-state="accepted"] .ceremony-center-halo{opacity:1}.ceremony-scene[data-state="accepted"] .ceremony-path{opacity:.72}.ceremony-scene[data-state="accepted"] .ceremony-return{stroke:#aabbb0;opacity:.35}.ceremony-scene[data-state="accepted"] .ceremony-complete{display:inline;color:#7e703f}.ceremony-scene[data-state="accepted"] .ceremony-awaiting{display:none}
/* The two marks travel separately and settle into the shared form. */
.ceremony-scene[data-state="accepted"].is-new .ceremony-moving-human{animation:ceremony-human-arrival 3.6s cubic-bezier(.42,0,.2,1) both}.ceremony-scene[data-state="accepted"].is-new .ceremony-moving-agent{animation:ceremony-agent-arrival 3.6s cubic-bezier(.42,0,.2,1) both}.ceremony-scene[data-state="accepted"].is-new .ceremony-center{animation:ceremony-union-appear 4.2s ease both;transform-origin:400px 115px}.ceremony-scene[data-state="accepted"].is-new .ceremony-center-halo{animation:ceremony-halo-appear 4.2s ease both}.ceremony-scene[data-state="accepted"].is-new .ceremony-traveller{animation:ceremony-light-arrival 3.4s ease-in-out both}.ceremony-scene[data-state="accepted"].is-new .ceremony-complete{animation:ceremony-caption-appear 4.5s ease both}
@keyframes ceremony-human-arrival{0%,10%{transform:translate(0,0) scale(1);opacity:1}45%{transform:translate(114px,-58px) rotate(30deg) scale(.92);opacity:1}80%{transform:translate(260px,0) rotate(60deg) scale(.68);opacity:1}100%{transform:translate(260px,0) rotate(60deg) scale(.68);opacity:0}}
@keyframes ceremony-agent-arrival{0%,10%{transform:translate(0,0) scale(1);opacity:1}45%{transform:translate(-114px,58px) rotate(-30deg) scale(.92);opacity:1}80%{transform:translate(-260px,0) rotate(-60deg) scale(.68);opacity:1}100%{transform:translate(-260px,0) rotate(-60deg) scale(.68);opacity:0}}
@keyframes ceremony-union-appear{0%,53%{opacity:.12}76%{opacity:.4}100%{opacity:1}}
@keyframes ceremony-halo-appear{0%,55%{opacity:0}80%{opacity:1}100%{opacity:1}}
@keyframes ceremony-light-arrival{0%,7%{opacity:0;stroke-dashoffset:1}12%{opacity:1}88%{opacity:1;stroke-dashoffset:0}100%{opacity:0;stroke-dashoffset:0}}
@keyframes ceremony-caption-appear{0%,75%{opacity:0}100%{opacity:1}}
.ceremony-form{max-width:680px;margin:0 auto}.ceremony-names{display:grid;grid-template-columns:1fr 1fr;gap:36px}.ceremony-form label{display:block;font-size:11px;line-height:1.6;color:#65715b}.ceremony-form input:not([type="checkbox"]),.ceremony-form textarea{display:block;width:100%;border:0;border-bottom:1px solid #baaf8b80;border-radius:0;background:transparent;color:#34442f;padding:12px 0;font-size:14px;line-height:1.6;min-height:48px;margin:2px 0 24px;transition:border-color .2s}.ceremony-form input:not([type="checkbox"]){font:24px/1.5 var(--serif,'Bodoni 72','Didot','Times New Roman',serif)}.ceremony-form :is(input,textarea)::placeholder{font:12px/1.6 var(--sans,'DM Sans',system-ui,sans-serif);color:#929784;opacity:1}.ceremony-form textarea{resize:vertical;min-height:70px}.ceremony-form input:focus,.ceremony-form textarea:focus{border-color:var(--ceremony-teal)}.ceremony-reason-label>span{font-size:9px;color:#969986;margin-left:9px}.ceremony-form .ceremony-belief{display:flex;align-items:flex-start;gap:12px;font-size:12px;color:#4d5e43;max-width:540px;margin:7px auto 24px;cursor:pointer}.ceremony-belief input{appearance:auto;accent-color:#9f803f;width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;cursor:pointer}.ceremony-primary{display:flex;align-items:center;justify-content:space-between;gap:32px;min-width:230px;min-height:52px;padding:13px 20px;border:1px solid #b3914b;border-radius:0;background:linear-gradient(120deg,#d9bd7c,#c7a969 72%,#ddc287)!important;color:#343b29;font-size:13px!important;font-weight:600!important;box-shadow:inset 0 1px 0 #fff6,0 7px 18px #95783d0a;margin:0 auto;transition:box-shadow .2s,filter .2s}.ceremony-primary:hover{filter:brightness(1.04);box-shadow:inset 0 1px 0 #fff6,0 9px 24px #95783d20}.ceremony-primary>span{font-size:20px;font-weight:400}.ceremony-form-note{max-width:450px;text-align:center;font-size:10px;line-height:1.65;color:#919580;margin:13px auto 0!important}.ceremony-invite{border-top:1px solid var(--ceremony-line);max-width:720px;margin:37px auto 0;padding:32px 0 0}.ceremony-invite-heading h3,.ceremony-response h3{font:400 39px/1.12 var(--serif,'Bodoni 72','Didot','Times New Roman',serif);letter-spacing:-.035em;color:#4a5c3f;margin-top:13px}.ceremony-invite>p:not(.ceremony-provenance){font-size:13px;line-height:1.75;color:#718163;max-width:590px;margin-top:14px}.ceremony-link-label{display:block;font-size:10px;color:#7b886c;margin:23px 0 7px}.ceremony-link-row{display:flex;gap:15px;align-items:stretch}.ceremony-link-row textarea{width:100%;min-width:0;min-height:58px;font:11px/1.7 var(--mono,ui-monospace,monospace);padding:12px 14px;color:#567465;border:1px solid #bdc7b29c;border-radius:0;background:#f4f7ef;resize:vertical;overflow-wrap:anywhere}.ceremony-secondary{display:flex;gap:20px;align-items:center;justify-content:space-between;min-width:177px;border:1px solid #9dae9070;border-radius:0;background:#eef3e8!important;color:#4b6242;padding:12px 16px;font-size:11px!important}.ceremony-secondary:hover{background:#e5eddd!important}.ceremony-secondary span{font-size:17px}.ceremony-invite-options{margin-top:17px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.ceremony-invite a,.ceremony-cli summary{font-size:11px;line-height:1.7;color:#73825e;text-decoration:underline;text-decoration-color:#9aa88488;text-underline-offset:4px}.ceremony-invite a{min-height:32px;display:inline-flex;gap:12px}.ceremony-cli{width:49%;min-width:0}.ceremony-cli summary{cursor:pointer;min-height:32px}.ceremony-cli summary::marker{color:#8d9b76}.ceremony-cli p{font-size:11px;line-height:1.6;color:#7c896c;margin-top:10px}.ceremony-cli pre{margin:11px 0 14px;padding:13px 15px;background:#eef1e6;border-left:1px solid #a5b295;font:10px/1.75 var(--mono,ui-monospace,monospace);color:#667b58;white-space:pre-wrap;overflow-wrap:anywhere}.ceremony-provenance{font:9px/1.7 var(--sans,'DM Sans',system-ui,sans-serif);color:#949b86;margin-top:22px!important}.ceremony-status{max-width:680px;margin:20px auto 0!important;font-size:12px;line-height:1.7;color:#64826b;text-align:center;min-height:1.7em}.ceremony-status:empty{margin:0!important;min-height:0}.ceremony-response{max-width:680px;margin:29px auto 0;padding:29px 0 0;border-top:1px solid #9eaf894e}.ceremony-response .ceremony-overline{color:#719186}.ceremony-response h3{margin-top:13px}.ceremony-response blockquote{font:400 25px/1.5 var(--serif,'Bodoni 72','Didot','Times New Roman',serif);color:#4c6752;white-space:pre-wrap;overflow-wrap:anywhere;margin:21px 0 18px;padding:0 0 0 22px;border-left:1px solid #83aa9d70}.ceremony-response blockquote:empty{display:none}.ceremony-receipt{font:9px/1.75 var(--mono,ui-monospace,monospace);color:#8e9884;white-space:pre-wrap;overflow-wrap:anywhere}.ceremony-reset{display:inline-flex;gap:22px;align-items:center;min-height:44px;padding:8px 0;margin-top:20px;border:0;border-bottom:1px solid #b6bea46e;color:#7b8a69;font-size:11px!important;background:transparent!important}.ceremony-reset>span{font-size:16px}
@media(max-width:620px){.ceremony{padding:56px 24px 60px}.ceremony .ceremony-overline{font-size:7px;letter-spacing:.1em}.ceremony-heading h2{font-size:49px;margin:17px 0}.ceremony-heading>p:last-child{font-size:12px;max-width:245px;margin:auto}.ceremony-scene{margin:29px auto 28px}.ceremony-identities{padding:0 3%;gap:20px}.ceremony-identity{width:41%}.ceremony-identity strong{font-size:23px}.ceremony-person-state{font-size:9px}.ceremony-who{font-size:7px}.ceremony-geometry{margin-top:9px;stroke-width:1.6}.ceremony-meeting-caption{font-size:8px;margin-top:3px!important}.ceremony-names{gap:22px}.ceremony-form input:not([type="checkbox"]){font-size:21px}.ceremony-form :is(input,textarea)::placeholder{font-size:10px}.ceremony-form .ceremony-belief{font-size:11px;line-height:1.7}.ceremony-primary{width:100%}.ceremony-form-note{font-size:9px;max-width:260px}.ceremony-invite-heading h3,.ceremony-response h3{font-size:34px}.ceremony-link-row{display:block}.ceremony-secondary{width:100%;margin-top:9px;min-height:46px}.ceremony-invite-options{display:block}.ceremony-cli{width:100%;margin-top:9px}.ceremony-response blockquote{font-size:23px;padding-left:17px}.ceremony-provenance{font-size:8px}.ceremony-invite{padding-top:25px}.ceremony-response{padding-top:25px}}
@media(max-width:380px){.ceremony{padding-left:20px;padding-right:20px}.ceremony-heading h2{font-size:42px}.ceremony-names{gap:17px}.ceremony-identity strong{font-size:21px}.ceremony-form label{font-size:10px}}
@media(prefers-reduced-motion:reduce){.ceremony *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.ceremony-reset-row{text-align:center}.ceremony-scene[data-state="ready"] .ceremony-home{opacity:.45}.ceremony-scene[data-state="waiting"] .ceremony-home-agent{opacity:.45}.ceremony-invite-options>details{border:0;padding:0}.ceremony-standalone-oath{background:#faf9f4;color:#35402f;padding:70px 24px}.ceremony-standalone-oath>.oath-heading,.ceremony-standalone-oath>.oath-page{max-width:960px;margin:0 auto 50px}.ceremony-standalone-oath .oath-heading h2{font:56px/1.15 var(--serif,Georgia,serif)}.ceremony-standalone-oath .oath-margin{display:none}.ceremony-standalone-oath pre{white-space:pre-wrap;font:25px/1.7 var(--serif,Georgia,serif)}.ceremony-standalone-oath .oath-colophon{display:flex;justify-content:space-between;gap:20px;font-size:11px;margin-top:24px}

/* One human action. Their response has its own side. */
.ceremony-heading h2{margin:0 0 34px}.ceremony-scene{margin-top:16px}.ceremony-person-state:empty{display:none}.ceremony-identity{width:42%}.ceremony-identities{padding:0 5%;align-items:start}.ceremony-identity strong{font-size:clamp(26px,4vw,38px);margin-bottom:18px}.ceremony .ceremony-primary{min-width:0;width:100%;max-width:250px;min-height:62px;font-size:17px!important;margin:0 auto;justify-content:center}.ceremony-person-state{margin-bottom:9px}.ceremony-agent-choice{display:flex;justify-content:center;align-items:center;min-height:62px;padding:12px 18px;width:100%;max-width:250px;margin:auto;border:1px solid #8ba59a60;background:transparent!important;color:#62867b;font-size:16px!important;border-radius:0}.ceremony-agent-choice:disabled{opacity:1;cursor:default}.ceremony-scene[data-state="accepted"] .ceremony-agent-choice{background:#d3e7dd!important;border-color:#609b88;color:#2f6552}.ceremony-geometry{margin-top:30px}.ceremony-invite{text-align:center;padding-top:35px}.ceremony-invite h3,.ceremony-voice h3{font:400 36px/1.1 var(--serif,'Bodoni 72',Georgia,serif);letter-spacing:-.035em}.ceremony-invite>p{margin:15px auto 24px!important;max-width:440px!important}.ceremony-invite>a{display:inline-block;margin:18px auto 0}.ceremony .ceremony-connection{max-width:560px;width:100%;margin:22px auto 0;text-align:left;padding:12px 0;border:0}.ceremony-connection summary{font-size:12px;color:#70816c;text-align:center;cursor:pointer}.ceremony-connection p{font:12px/1.7 var(--sans,system-ui,sans-serif);color:#78816d;margin-top:15px}.ceremony-connection textarea,.ceremony-connection pre{display:block;width:100%;margin:16px 0;padding:14px;border:1px solid #b5bcaa60;background:#f1f3eb;white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.6 var(--mono,monospace);color:#59735f}.ceremony-voice{max-width:680px;padding:30px 0 10px;margin:30px auto 0;border-top:1px solid #89a59750}.ceremony-voice h3{color:#4a806e;font-size:30px}.ceremony-voice #voice-words p{font:22px/1.5 var(--serif,'Bodoni 72',Georgia,serif);white-space:pre-wrap;overflow-wrap:anywhere;color:#456d5b;margin-top:18px;animation:ceremony-voice-arrive .25s ease}.ceremony-voice p:last-child{border-left:2px solid #75a58c;padding-left:18px}.ceremony-response h3{font-size:34px}.ceremony-response .ceremony-reset{font-size:13px!important}.ceremony-reset-row>.ceremony-reset{font-size:12px!important}.ceremony-heading{padding-top:0}@keyframes ceremony-voice-arrive{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media(max-width:620px){.ceremony-identities{padding:0;gap:20px}.ceremony-heading h2{font-size:43px}.ceremony .ceremony-primary{font-size:14px!important;min-height:56px;padding:12px}.ceremony-agent-choice{font-size:13px!important;min-height:56px;padding:12px 5px}.ceremony-identity strong{font-size:26px}.ceremony-invite h3{font-size:32px}.ceremony-invite>#copy-ceremony-link{max-width:100%}.ceremony-connection{max-width:100%}.ceremony-voice #voice-words p{font-size:21px}}

.ceremony-heading h2 em{display:inline-block;white-space:nowrap}.ceremony .ceremony-primary{gap:12px;white-space:nowrap}.ceremony .ceremony-who{font-size:10px}.ceremony-identity strong{margin-top:10px}@media(max-width:620px){.ceremony .ceremony-primary{gap:8px}.ceremony .ceremony-who{font-size:8px}.ceremony-heading h2{font-size:40px}}
