:root{--plum:#452c48;--plum2:#3a2540;--plum3:#5c3d61;--plumsoft:#f3eef4;--gold:#a98b5d;--gold2:#c2a06f;--paper:#fff;--ivory:#faf8f6;--ivory2:#f2ecef;--ink:#262029;--mute:#8a7f8c;--rule:#e7e0e6;--ok:#5c8f6b;--warn:#c9963c;--clay:#b5654e}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--ink);font-family:Poppins,sans-serif;font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased}.h{font-family:Cormorant,serif;font-weight:600;letter-spacing:0;line-height:1.1;color:var(--plum)}.mono{font-family:Poppins;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:500}a{color:inherit;text-decoration:none}.top{justify-content:space-between;gap:14px;padding:14px 30px;background:hsla(30,29%,97%,.88);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);border-bottom:1px solid var(--rule);position:-webkit-sticky;position:sticky;top:0;z-index:20}.top,.top .lhold{display:flex;align-items:center}.top .lhold{gap:16px;min-width:0}.top .logo{background:#fff;border-radius:7px;padding:7px 12px;box-shadow:0 1px 2px rgba(69,44,72,.05)}.top .logo img{height:26px;width:auto;display:block}.top .studio{font-family:Cormorant;font-weight:600;font-size:17px;color:var(--plum);border-left:1px solid var(--rule);padding-left:16px;white-space:nowrap}.top .studio span{display:block;font-family:Poppins;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:500;margin-top:1px}.top .right{display:flex;align-items:center;gap:14px;flex-shrink:0}.top .help{font-size:12px;color:var(--mute);font-weight:300}.top .help b{color:var(--plum);font-weight:500}.avatar{width:36px;height:36px;border-radius:50%;background:var(--plum);color:#fff;display:grid;place-items:center;font-family:Cormorant;font-weight:600;font-size:15px;flex-shrink:0}.wrap{max-width:1120px;margin:0 auto;padding:26px 30px 60px}.phead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.phead .ey{color:var(--gold);font-weight:500;letter-spacing:.16em;text-transform:uppercase;font-size:10px}.phead h1{font-family:Cormorant;font-weight:600;font-size:clamp(28px,3.6vw,40px);color:var(--plum);margin-top:6px;line-height:1.05}.phead h1 i{font-style:italic;color:var(--plum3)}.phead .meta{color:var(--mute);font-size:13px;font-weight:300;margin-top:7px}.phead .meta b{color:var(--ink);font-weight:500}.pill{display:inline-flex;align-items:center;gap:7px;background:#f8f1e6;color:#9a7433;border:1px solid #ecdcc2;border-radius:100px;padding:7px 15px;font-size:12px;font-weight:500}.pill .d{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 3px rgba(169,139,93,.2)}.pill.done{background:#eef4f0;color:var(--ok);border-color:#cfe1d5}.pill.done .d{background:var(--ok);box-shadow:0 0 0 3px rgba(92,143,107,.2)}.rail{margin-top:26px;background:var(--paper);border:1px solid var(--rule);border-radius:13px;padding:22px 24px;box-shadow:0 1px 2px rgba(69,44,72,.03),0 16px 34px -26px rgba(69,44,72,.22)}.rail .rtop{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:20px}.rail h2{font-family:Cormorant;font-weight:600;font-size:21px;color:var(--plum)}.rail .pct{font-size:12px;color:var(--mute);font-weight:300}.rail .pct b{color:var(--plum);font-weight:500}.steps{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:0;gap:0}.step,.steps{position:relative}.step{text-align:center;padding-top:34px}.step .ln{position:absolute;top:13px;left:-50%;width:100%;height:2px;background:var(--rule);z-index:0}.step:first-child .ln{display:none}.step .ln.fill{background:var(--gold)}.step .nd{position:absolute;top:5px;left:50%;transform:translateX(-50%);width:18px;height:18px;border-radius:50%;background:var(--paper);border:2px solid var(--rule);z-index:1;display:grid;place-items:center}.step.done .nd{background:var(--ok);border-color:var(--ok)}.step.done .nd:after{content:"";width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translateY(-1px)}.step.now .nd{border-color:var(--gold);background:var(--gold);box-shadow:0 0 0 5px rgba(169,139,93,.18)}.step .nm{font-size:11px;color:var(--mute);font-weight:400;line-height:1.3;padding:0 4px}.step.done .nm{color:var(--ink)}.step.now .nm{color:var(--plum);font-weight:600}.grid{display:grid;grid-template-columns:1.45fr 1fr;grid-gap:20px;gap:20px;margin-top:20px;align-items:start}.card{background:var(--paper);border:1px solid var(--rule);border-radius:13px;overflow:hidden;box-shadow:0 1px 2px rgba(69,44,72,.03),0 16px 34px -26px rgba(69,44,72,.22)}.card .cbody{padding:20px 22px}.ctitle{font-family:Cormorant;font-weight:600;font-size:19px;color:var(--plum);display:flex;align-items:center;gap:9px}.ctitle .src{margin-left:auto;font-family:Poppins;text-transform:uppercase;letter-spacing:.14em;font-size:9px;color:var(--mute);font-weight:500}.vtabs{display:flex;gap:6px;padding:12px 14px;border-bottom:1px solid var(--rule);background:var(--ivory)}.vtabs button{border:1px solid var(--rule);background:var(--paper);border-radius:100px;padding:6px 14px;font-family:Poppins;font-size:11px;font-weight:500;color:var(--mute);cursor:pointer;transition:.18s}.vtabs button.on{background:var(--plum);border-color:var(--plum);color:#fff}.vtabs button:hover:not(.on){border-color:var(--plum3);color:var(--plum)}.viewer{position:relative;aspect-ratio:4/3;background:#efe9f0;overflow:hidden}.viewer img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .55s ease}.viewer img.on{opacity:1}.viewer .tag{left:16px;top:14px;background:rgba(58,37,64,.82);color:#efe3f1;border-radius:100px;padding:5px 13px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.viewer .rot,.viewer .tag{position:absolute;z-index:2;font-weight:500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.viewer .rot{right:14px;bottom:14px;background:hsla(0,0%,100%,.86);border:1px solid var(--rule);border-radius:100px;padding:6px 13px;font-size:11px;color:var(--plum);display:flex;align-items:center;gap:7px}.viewer .empty{position:absolute;inset:0;display:grid;place-items:center;color:var(--mute);font-size:12.5px;font-weight:300;text-align:center;padding:20px}.approve{padding:18px 22px;border-top:1px solid var(--rule);background:linear-gradient(180deg,#fff,#fdfbfc)}.approve .q{font-size:13.5px;font-weight:300;color:var(--ink)}.approve .q b{font-weight:500;color:var(--plum)}.abtns{display:flex;gap:11px;margin-top:14px;flex-wrap:wrap}.btn{border:0;border-radius:9px;padding:12px 20px;font-family:Poppins;font-weight:500;font-size:13px;cursor:pointer;transition:.2s;display:inline-flex;align-items:center;gap:9px}.btn.primary{background:var(--plum);color:#fff;box-shadow:0 10px 22px -12px rgba(69,44,72,.6)}.btn.primary:hover{background:var(--plum2);transform:translateY(-1px)}.btn.primary:disabled{opacity:.55;cursor:default;transform:none}.btn.ghost{background:var(--paper);color:var(--plum);border:1px solid var(--rule)}.btn.ghost:hover{border-color:var(--plum3);background:var(--ivory)}.btn.sm{padding:8px 14px;font-size:12px}.approved-state{display:none;padding:20px 22px;border-top:1px solid #cfe1d5;background:#f2f8f4}.approved-state.show{display:block;animation:rise .5s cubic-bezier(.2,.7,.2,1)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.approved-state .r{display:flex;align-items:center;gap:12px}.approved-state .ck{width:34px;height:34px;border-radius:50%;background:var(--ok);display:grid;place-items:center;flex-shrink:0}.approved-state .ck:after{content:"";width:7px;height:13px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg) translateY(-1px)}.approved-state .tx b{color:#2f6042;font-weight:600;font-size:14px}.approved-state .tx p{font-size:12.5px;color:#4a6b56;font-weight:300;margin-top:2px}.spec{list-style:none}.spec li{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--rule);font-size:13px}.spec li:last-child{border-bottom:0}.spec .k{color:var(--mute);font-weight:300}.spec .v{color:var(--ink);font-weight:500;text-align:right}.money{margin-top:4px;background:var(--plumsoft);border:1px solid #e6dae8;border-radius:10px;padding:14px 16px}.money .row{display:flex;justify-content:space-between;font-size:13px;padding:4px 0}.money .row .k{color:var(--plum);font-weight:300}.money .row .v{font-family:Cormorant;font-weight:600;font-size:17px;color:var(--plum)}.money .row.small .v{font-family:Poppins;font-size:12px;font-weight:500;color:var(--ok)}.prog{list-style:none;margin-top:4px}.prog,.prog li{position:relative}.prog li{display:flex;gap:12px;padding:9px 0}.prog li:not(:last-child):before{content:"";position:absolute;left:5px;top:20px;bottom:-9px;width:1.5px;background:var(--rule)}.prog li.done:not(:last-child):before{background:#cfe1d5}.pdot{width:12px;height:12px;border-radius:50%;border:2px solid var(--rule);background:#fff;flex-shrink:0;margin-top:3px;z-index:1}.prog li.done .pdot{background:var(--ok);border-color:var(--ok)}.prog li.now .pdot{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 4px rgba(169,139,93,.15)}.pmain{flex:1 1;min-width:0}.pt{font-size:12.5px;font-weight:500;color:var(--ink)}.prog li.now .pt{color:var(--plum)}.prog li:not(.done):not(.now) .pt{color:var(--mute);font-weight:400}.pd{font-size:11px;color:var(--mute);font-weight:300;margin-top:1px}.pthumb{margin-top:9px;width:100%;max-width:130px;border-radius:8px;border:1px solid var(--rule);display:block}.signoff{margin-top:12px;padding-top:11px;border-top:1px solid #cfe1d5;font-size:11px;color:#4a6b56;font-weight:300}.signoff b{font-weight:600;color:#2f6042}.lockNote{margin-top:11px;display:inline-flex;align-items:center;gap:7px;font-size:11.5px;color:var(--plum3);background:var(--plumsoft);border:1px solid #e6dae8;border-radius:8px;padding:7px 11px;font-weight:500}.convo{margin-top:20px}.convo .chead{display:flex;align-items:center;gap:10px;padding:18px 22px;border-bottom:1px solid var(--rule)}.convo .chead .ct{font-family:Cormorant;font-weight:600;font-size:20px;color:var(--plum)}.convo .chead .who{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--mute);font-weight:300}.convo .chead .who .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px rgba(92,143,107,.2)}.thread{padding:22px;display:flex;flex-direction:column;gap:16px}.msg{display:flex;gap:11px;align-items:flex-start;max-width:82%}.msg .by{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;font-family:Cormorant;font-weight:600;font-size:13px;color:#fff}.msg.them .by{background:var(--plum)}.msg.you{flex-direction:row-reverse;margin-left:auto}.msg.you .by{background:var(--gold)}.bubble{border-radius:13px;padding:12px 15px;font-size:13px;font-weight:300;line-height:1.55}.msg.them .bubble{background:var(--ivory2);border-top-left-radius:3px}.msg.you .bubble{background:var(--plum);color:#f3eaf4;border-top-right-radius:3px}.bubble .who{font-size:10px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;margin-bottom:4px;opacity:.72}.bubble .t{font-size:9.5px;opacity:.5;margin-top:6px;font-weight:400}.composer{display:flex;gap:9px;align-items:center;padding:15px 22px;border-top:1px solid var(--rule);background:var(--ivory)}.composer input{flex:1 1;border:1px solid var(--rule);border-radius:9px;padding:11px 14px;font-family:Poppins;font-size:13px;color:var(--ink);background:var(--paper)}.composer input::placeholder{color:var(--mute)}.composer input:focus{outline:none;border-color:var(--plum3)}.composer .send{background:var(--plum);color:#fff;border:0;border-radius:9px;padding:0 20px;height:40px;font-weight:500;font-size:13px;cursor:pointer}.composer .send:hover{background:var(--plum2)}.foot{text-align:center;margin-top:44px;color:var(--mute)}.foot .sig{font-family:Cormorant;font-style:italic;font-size:20px;color:var(--plum3)}.foot .by{font-size:11px;margin-top:8px;font-weight:300}.foot .by b{color:var(--plum);font-weight:500}.center{min-height:70vh;display:grid;place-items:center;padding:30px}.center .box{max-width:420px;text-align:center}.center h1{font-family:Cormorant;font-weight:600;font-size:30px;color:var(--plum)}.center p{font-size:13.5px;color:var(--mute);font-weight:300;margin-top:10px}.adm{max-width:1120px;margin:0 auto;padding:26px 30px 60px}.adm h1{font-family:Cormorant;font-weight:600;font-size:32px;color:var(--plum)}.adm .sub{font-size:12.5px;color:var(--mute);font-weight:300;margin-top:4px}.adm table{width:100%;border-collapse:collapse;margin-top:18px;background:var(--paper);border:1px solid var(--rule);border-radius:12px;overflow:hidden}.adm th{font-family:Poppins;text-transform:uppercase;letter-spacing:.12em;font-size:9.5px;color:var(--mute);text-align:left;background:var(--ivory)}.adm td,.adm th{padding:12px 14px;border-bottom:1px solid var(--rule)}.adm td{font-size:13px}.adm tr:last-child td{border-bottom:0}.adm .field{display:flex;flex-direction:column;gap:5px;margin-top:12px}.adm .field label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-weight:500}.adm .field input,.adm .field select,.adm .field textarea{border:1px solid var(--rule);border-radius:9px;padding:10px 13px;font-family:Poppins;font-size:13px;background:var(--paper)}.adm .field input:focus,.adm .field select:focus,.adm .field textarea:focus{outline:none;border-color:var(--plum3)}.adm .panel{background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:20px 22px;margin-top:18px}.adm .panel h2{font-family:Cormorant;font-weight:600;font-size:21px;color:var(--plum)}.adm .note{font-size:11.5px;color:var(--mute);font-weight:300;margin-top:8px}.adm .evt{font-size:12px;padding:8px 0;border-bottom:1px solid var(--rule)}.adm .evt:last-child{border-bottom:0}.adm .evt b{color:var(--plum);font-weight:500}.adm .evt .t{color:var(--mute);font-size:10.5px}.badge-new{display:inline-block;background:#f8f1e6;color:#9a7433;border:1px solid #ecdcc2;border-radius:100px;padding:2px 9px;font-size:10px;font-weight:500}@media(max-width:860px){.grid{grid-template-columns:1fr}.top{padding:12px 18px}.top .help{display:none}.wrap{padding:20px 18px 48px}.steps{grid-template-columns:repeat(3,1fr);row-gap:22px}.step:nth-child(4) .ln{display:none}.step .nm{font-size:10px}.msg{max-width:92%}.adm{padding:20px 18px 48px}.adm table{display:block;overflow-x:auto}}@media(max-width:460px){.top .studio{padding-left:11px;font-size:15px}.steps{grid-template-columns:repeat(2,1fr)}.step:nth-child(3) .ln{display:none}}