.casting{flex-direction:column;min-height:100svh;display:flex}.cast-top{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#130e0ad1;position:fixed;top:0;left:0;right:0}.cast-top-inner{justify-content:space-between;align-items:baseline;gap:12px;max-width:720px;margin:0 auto;padding:14px 22px 12px;display:flex}.cast-brand{font-family:var(--font-display);letter-spacing:.02em;font-size:1.02rem}.cast-brand i{color:var(--clay);font-style:normal}.cast-brand span{font-family:var(--font-sans);letter-spacing:.3em;text-transform:uppercase;color:var(--cream-faint);margin-top:4px;font-size:.56rem;display:block}.cast-step{font-family:var(--font-display);color:var(--gold);white-space:nowrap;font-size:.9rem;font-style:italic}.cast-progress{background:#f0e6d914;height:2px}.cast-progress i{background:linear-gradient(90deg, var(--gold), var(--clay));height:100%;transition:width .5s var(--ease);display:block}.cast-main{flex-direction:column;flex:1;width:100%;max-width:720px;margin:0 auto;padding:108px 22px 46px;display:flex}.cast-screen{flex-direction:column;flex:1;display:flex}.cast-eyebrow{letter-spacing:.32em;text-transform:uppercase;color:var(--gold);align-items:center;gap:12px;margin-bottom:18px;font-size:.64rem;font-weight:500;display:inline-flex}.cast-eyebrow:before{content:"";background:var(--gold);width:26px;height:1px}.cast-h{font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin-bottom:18px;font-size:clamp(1.7rem,6vw,2.6rem);font-weight:340;line-height:1.06}.cast-intro{color:var(--cream-soft);max-width:56ch;margin-bottom:26px;font-size:.98rem;line-height:1.65}.q{margin-bottom:30px}.q-label{margin-bottom:8px;font-size:1.06rem;font-weight:500;line-height:1.45;display:block}.q-label .opt{letter-spacing:.14em;text-transform:uppercase;color:var(--cream-faint);margin-left:8px;font-size:.68rem;font-weight:400}.q-help{color:var(--cream-soft);max-width:58ch;margin-bottom:14px;font-size:.88rem;line-height:1.6}.q-example{font-family:var(--font-display);color:var(--blush);border-left:2px solid var(--wine);max-width:54ch;margin:12px 0 14px;padding:4px 0 4px 16px;font-size:.95rem;font-style:italic;line-height:1.6}.q input[type=text],.q input[type=email],.q textarea{width:100%;font-family:var(--font-sans);color:var(--cream);border:1px solid var(--line);background:#f0e6d90b;border-radius:14px;outline:none;padding:15px 16px;font-size:1rem;transition:border-color .25s,background .25s}.q input::placeholder,.q textarea::placeholder{color:var(--cream-faint)}.q input:focus,.q textarea:focus{border-color:var(--gold);background:#f0e6d912}.q textarea{resize:vertical;min-height:120px;line-height:1.6}.q textarea.short{min-height:84px}.opts{flex-direction:column;gap:10px;display:flex}.opt-card{text-align:left;font-family:var(--font-sans);color:var(--cream);border:1px solid var(--line);cursor:pointer;transition:border-color .25s, background .25s, transform .25s var(--ease);background:#f0e6d908;border-radius:14px;align-items:flex-start;gap:13px;padding:15px 18px;font-size:.96rem;line-height:1.45;display:flex}.opt-card:hover{border-color:var(--line-2);background:#f0e6d90e}.opt-card .dot{border:1.5px solid var(--line-2);border-radius:50%;flex:none;place-items:center;width:18px;height:18px;margin-top:2px;transition:border-color .25s;display:grid}.opt-card .dot:after{content:"";background:var(--gold);width:8px;height:8px;transition:transform .25s var(--ease);border-radius:50%;transform:scale(0)}.opt-card.multi .dot{border-radius:6px}.opt-card.multi .dot:after{border-radius:2px}.opt-card.on{border-color:var(--gold);background:#cba47117}.opt-card.on .dot{border-color:var(--gold)}.opt-card.on .dot:after{transform:scale(1)}.opt-card .tag{letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:7px;font-size:.62rem;display:block}.opt-card b{font-weight:500}.opt-card .body{flex:1}.opt-card.candidate{padding:19px 20px}.opt-card.candidate .body{font-family:var(--font-display);font-size:1.12rem;font-weight:350;line-height:1.35}.pills{flex-wrap:wrap;gap:9px;display:flex}.pill{font-family:var(--font-sans);color:var(--cream-soft);border:1px solid var(--line-2);cursor:pointer;background:0 0;border-radius:999px;padding:10px 18px;font-size:.88rem;transition:border-color .25s,background .25s,color .25s}.pill:hover{border-color:var(--gold);color:var(--cream)}.pill.on{border-color:var(--gold);color:var(--cream);background:#cba47121}.pill:disabled{opacity:.35;cursor:default}.drop{border:1.5px dashed var(--line-2);text-align:center;cursor:pointer;color:var(--cream-soft);border-radius:16px;padding:26px 18px;font-size:.92rem;line-height:1.55;transition:border-color .25s,background .25s}.drop:hover,.drop.over{border-color:var(--gold);background:#cba4710f}.drop .big{color:var(--gold);margin-bottom:6px;font-size:1.5rem;display:block}.drop input{display:none}.thumbs{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;display:grid}.thumb{aspect-ratio:1;border:1px solid var(--line);border-radius:12px;position:relative;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.thumb button{width:24px;height:24px;color:var(--cream);cursor:pointer;background:#0c0906c7;border:none;border-radius:50%;place-items:center;font-size:.85rem;line-height:1;display:grid;position:absolute;top:6px;right:6px}.thumb button:hover{background:var(--wine)}.upload-count{color:var(--cream-faint);margin-top:10px;font-size:.8rem}.confirm-list{flex-direction:column;gap:10px;display:flex}.callout{border:1px solid var(--line);border-left:2px solid var(--gold);color:var(--cream-soft);background:#cba4710d;border-radius:12px;max-width:58ch;margin:14px 0;padding:16px 18px;font-size:.9rem;line-height:1.6}.callout.warn{border-left-color:var(--wine);background:#8a3e4814}.row-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.cast-nav{align-items:center;gap:12px;margin-top:auto;padding-top:30px;display:flex}.cast-nav .btn{flex:none}.cast-nav .btn-primary{margin-left:auto}.cast-err{color:var(--rose);margin-top:14px;font-size:.85rem;line-height:1.5}.cast-cover{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:60px 24px;display:flex;position:relative;overflow:hidden}.cast-cover:before{content:"";pointer-events:none;background:radial-gradient(circle,#c98a5e29,#0000 60%);width:130vw;max-width:900px;height:130vw;max-height:900px;position:absolute;top:-30%;right:-25%}.cast-cover:after{content:"";pointer-events:none;background:radial-gradient(circle,#8a3e482e,#0000 60%);width:100vw;max-width:700px;height:100vw;max-height:700px;position:absolute;bottom:-35%;left:-25%}.cast-cover>*{z-index:1;position:relative}.cover-brand{letter-spacing:.42em;text-transform:uppercase;color:var(--cream-soft);margin-bottom:22px;font-size:.72rem}.cover-title{font-family:var(--font-display);letter-spacing:-.02em;max-width:12ch;margin:0 auto 30px;font-size:clamp(2.6rem,10vw,5.2rem);font-weight:320;line-height:.98}.cover-title em{color:var(--blush);font-style:italic}.cover-copy{flex-direction:column;gap:14px;max-width:54ch;margin:0 auto 36px;display:flex}.cover-copy p{color:var(--cream-soft);font-size:.97rem;line-height:1.7}.cover-copy p.first{color:var(--cream);font-size:1.06rem}.cover-note{letter-spacing:.2em;text-transform:uppercase;color:var(--cream-faint);margin-top:22px;font-size:.72rem}.cast-final{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:60px 24px;display:flex}.final-mark{color:var(--gold);margin-bottom:18px;font-size:2rem}.final-title{font-family:var(--font-display);letter-spacing:-.015em;margin-bottom:28px;font-size:clamp(2.1rem,8vw,3.6rem);font-weight:320}.final-copy{flex-direction:column;gap:13px;max-width:52ch;margin-bottom:26px;display:flex}.final-copy p{color:var(--cream-soft);font-size:.97rem;line-height:1.7}.final-sign{font-family:var(--font-display);color:var(--cream);margin-bottom:40px;font-size:1.3rem;font-style:italic}.final-tagline{letter-spacing:.26em;text-transform:uppercase;color:var(--gold);border-top:1px solid var(--line);max-width:420px;padding-top:26px;font-size:.72rem;line-height:2}@media (width<=520px){.cast-main{padding:96px 18px 34px}.thumbs{grid-template-columns:repeat(3,1fr)}.row-2{grid-template-columns:1fr}.cast-nav{flex-direction:column-reverse}.cast-nav .btn{justify-content:center;width:100%}.cast-nav .btn-primary{margin-left:0}}
