:root{--bg:#120c11;--ink:#f6e7e4;--mut:#b9a5a8;--gold:#d9b982;--rose:#eba9b7;--line:rgba(217,185,130,.32);color-scheme:dark;box-sizing:border-box;padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}
html{scroll-padding-top:env(safe-area-inset-top,0);scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.6 Jost,system-ui,sans-serif;overflow-x:clip}h1,h2{font:500 clamp(40px,9vw,88px)/.98 'Cormorant Garamond',Georgia,serif;margin:0}h2{font-size:clamp(34px,7vw,56px)}em{font-style:italic;color:var(--rose)}.eb{margin:0 0 14px;font-size:13px;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--gold)}
.bg{position:fixed;inset:0;z-index:0;pointer-events:none;perspective:900px;overflow:hidden}.bg i{position:absolute;border-radius:50%;filter:blur(70px);opacity:.45;transform:translate3d(0,calc(var(--s,0)*var(--k)*1px),0)}.bg b{position:absolute;left:50%;top:50%;width:min(90vw,820px);aspect-ratio:1;border:1px solid var(--line);border-radius:50%;transform:translate(-50%,-50%) rotateX(var(--a)) rotateZ(calc(var(--s,0)*var(--d)*1deg))}.pg{position:fixed;top:env(safe-area-inset-top,0);left:0;height:2px;width:0;background:var(--gold);z-index:5}main{position:relative;z-index:1}.tall{height:240vh;position:relative}.stick{position:sticky;top:0;height:100vh;height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:24px;perspective:1300px;text-align:center;overflow:hidden}.tx{transform:translateZ(calc(var(--e,0)*-260px));opacity:calc(1 - var(--e,0)*.9)}.lk{display:inline-flex;align-items:center;min-height:48px;margin-top:22px;padding:0 26px;border:1px solid var(--gold);border-radius:999px;color:var(--gold);text-decoration:none;font-size:14px;letter-spacing:.22em}.lk:focus-visible,.btn:focus-visible,.rec:focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.tk{position:relative;width:min(58vw,290px);aspect-ratio:5/7;transform-style:preserve-3d;transform:rotateX(calc(var(--my,0)*-8deg)) rotateY(calc(var(--e,0)*180deg + var(--mx,0)*10deg)) rotateZ(calc((1 - var(--e,0))*-5deg))}.fc{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:22px;overflow:hidden;padding:26px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;background:linear-gradient(150deg,#341a28,#170e15 70%);border:1px solid var(--gold);box-shadow:0 30px 80px rgba(0,0,0,.55),inset 0 0 60px rgba(217,185,130,.08)}.fc::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.14) 50%,transparent 65%);transform:translateX(calc(var(--mx,0)*45% + var(--e,0)*-60%))}.bk{transform:rotateY(180deg)}.big{font:500 clamp(60px,18vw,100px)/1 'Cormorant Garamond',serif;font-style:italic}.sm{font-size:13px;font-weight:500;letter-spacing:.28em;color:var(--gold)}.cue{position:absolute;bottom:22px;font-size:13px;letter-spacing:.3em;color:var(--mut);opacity:calc(1 - var(--p,0)*8)}
.cy{--w:clamp(150px,40vw,220px);--r:calc(var(--w)*1.35);position:relative;width:var(--w);height:calc(var(--w)*1.4);margin-top:36px;transform-style:preserve-3d;transform:translateZ(calc(var(--r)*-1)) rotateX(-7deg) rotateY(calc(var(--p,0)*-315deg))}.pn{position:absolute;inset:0;transform:rotateY(calc(var(--i)*45deg)) translateZ(var(--r));backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid var(--line);border-radius:18px;padding:18px;display:flex;flex-direction:column;justify-content:space-between;text-align:left;background:linear-gradient(165deg,hsl(calc(335 + var(--i)*7) 45% 26%),#1a0f17 88%);box-shadow:0 20px 50px rgba(0,0,0,.5)}.pn b{font:500 clamp(24px,6vw,34px)/1 'Cormorant Garamond',serif}.pn u{text-decoration:none;font-size:13px;letter-spacing:.2em;color:var(--gold)}
.sec{padding:14vh 20px;display:flex}.rv{width:100%;max-width:560px;margin:0 auto;padding:clamp(24px,5vw,44px);background:linear-gradient(160deg,rgba(255,235,230,.09),rgba(255,235,230,.02));border:1px solid var(--line);border-radius:28px;backdrop-filter:blur(8px);transform-origin:50% 100%;transform:perspective(1100px) rotateX(calc((1 - var(--v,1))*38deg)) translateZ(calc((1 - var(--v,1))*-160px));opacity:calc(.15 + var(--v,1)*.85)}.mut{color:var(--mut)}.field-label{display:block;margin:0 0 6px;font-size:14px;color:var(--mut)}
.dz{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:22px;padding:34px 18px;border:1.5px dashed var(--gold);border-radius:20px;text-align:center;cursor:pointer;color:var(--gold);transition:background .2s,transform .2s}.dz:hover,.dz.hv{background:rgba(217,185,130,.1);transform:scale(1.015)}.dz:focus-within{outline:2px solid var(--gold);outline-offset:3px}.dz b{color:var(--ink);font-weight:500}.dz span{color:var(--mut);font-size:15px}.sr{position:absolute;opacity:0;width:1px;height:1px}.th{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;margin:14px 0}.preview{position:relative}.th img,.th video{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}.remove{position:absolute;right:4px;top:4px;width:28px;height:28px;border:0;border-radius:50%;background:#120c11d9;color:#fff;font-size:20px;line-height:1;cursor:pointer}
input,textarea{width:100%;margin:0 0 14px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.04);color:var(--ink);font:inherit}input:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:2px}::placeholder{color:var(--mut)}.btn,.rec{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:56px;border-radius:999px;font:500 14px Jost,sans-serif;letter-spacing:.2em;cursor:pointer}.btn{margin-top:10px;border:0;background:linear-gradient(135deg,#e6c996,#c79a58);color:#2a141f}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:not(:disabled):hover{filter:brightness(1.08)}.rec{border:1px solid var(--gold);background:none;color:var(--gold)}.rec i{width:12px;height:12px;border-radius:50%;background:var(--rose)}.rec.on i{animation:p 1s infinite}@keyframes p{50%{opacity:.25}}audio{width:100%;margin-top:12px}small{display:block;margin:10px 0 16px;color:var(--mut);text-align:center}.msg{min-height:1.6em;margin:12px 0 0;color:var(--rose);text-align:center}.msg.error{color:#ffb5c1}.msg.success{color:#ccebb9}footer{position:relative;z-index:1;padding:6vh 24px 12vh;text-align:center;color:var(--mut);font-size:15px}
@media(min-width:900px){.hr{flex-direction:row;gap:9vw;text-align:left}.tk{width:min(24vw,330px)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.rv{transform:none!important;opacity:1!important}html{scroll-behavior:auto}.bg{display:none}}
