.dv{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:start}
.dv-main{display:grid;gap:18px;min-width:0}
.dv-card{border:1px solid var(--line);border-radius:var(--radius);background:rgba(26,16,48,.45);padding:22px}
.dv-card h3{font-size:1.15rem;color:var(--gold-2);margin:0 0 14px}
.dv-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dv-field{display:grid;gap:7px;font-size:.85rem;color:var(--muted);min-width:0}
.dv-field select,.dv-field input,.dv-field textarea{width:100%;font:inherit;font-size:.95rem;color:var(--text);background:rgba(11,7,20,.75);border:1px solid var(--line-strong);border-radius:10px;padding:12px 14px;transition:border-color .2s,box-shadow .2s}
.dv-field select{-webkit-appearance:none;appearance:none;padding-right:40px;cursor:pointer;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23d4af37' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}
.dv-field select option{background:#140c24;color:var(--text)}
.dv-field textarea{resize:vertical;min-height:110px}
.dv-field select:focus,.dv-field input:focus,.dv-field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(212,175,55,.15)}
.dv-field input::placeholder,.dv-field textarea::placeholder{color:#6f6388}
.dv-more{margin-top:16px;background:rgba(11,7,20,.45)}
.dv-more summary{font-size:.95rem}
.dv-more summary em{font-style:normal;font-weight:400;font-size:.8rem;color:var(--muted);margin-left:auto;margin-right:10px;white-space:nowrap}
.dv-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-bottom:18px}
.dv-check{display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid var(--line);border-radius:10px;cursor:pointer;font-size:.9rem;transition:border-color .2s,background .2s}
.dv-check:hover{border-color:var(--line-strong)}
.dv-check input{accent-color:#d4af37;width:16px;height:16px;flex:none;margin:0}
.dv-check em{font-style:normal;color:var(--gold-2);font-size:.8rem;margin-left:auto;white-space:nowrap}
.dv-check:has(input:checked){border-color:var(--gold);background:rgba(212,175,55,.08)}
.dv-contact{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dv-full{grid-column:1/-1}
.dv-summary{position:sticky;top:90px;border:1px solid var(--line-strong);border-radius:18px;padding:26px;background:radial-gradient(300px 200px at 100% 0%,rgba(123,63,228,.3),transparent 70%),linear-gradient(160deg,var(--surface-2),var(--bg-2));display:grid;gap:12px}
.dv-price{font-family:var(--display);font-size:2rem;line-height:1.1;color:var(--gold-2)}
.dv-monthly{color:#a77bff;font-size:.9rem;margin-top:-6px}
.dv-monthly:empty{display:none}
.dv-recap{list-style:none;margin:0;padding:12px 0 0;border-top:1px solid var(--line);display:grid;gap:6px;font-size:.88rem}
.dv-recap li{padding-left:16px;position:relative}
.dv-recap li::before{content:"◆";position:absolute;left:0;top:1px;color:var(--gold);font-size:.55rem}
.dv-note{font-size:.78rem;color:var(--muted);line-height:1.5}
.dv-summary .btn{justify-content:center;width:100%;font-family:inherit;border:0}
.dv-after{font-size:.85rem;color:var(--muted)}
a.price:hover{text-decoration:none;color:var(--gold)}
@media (max-width:980px){.dv{grid-template-columns:1fr}.dv-summary{position:static}}
@media (max-width:700px){.dv-grid,.dv-opts,.dv-contact{grid-template-columns:1fr}.dv-card{padding:16px}}
.dv-req{color:var(--gold)}
.dv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.dv-actions{display:grid;gap:10px}
.dv-summary .btn-ghost{justify-content:center;width:100%;font-family:inherit}
.dv-summary .btn[disabled]{opacity:.75;cursor:default;transform:none}
.dv-status{font-size:.88rem;line-height:1.5;padding:10px 12px;border-radius:10px}
.dv-status.is-ok{color:#9be7b0;background:rgba(80,200,120,.1);border:1px solid rgba(80,200,120,.35)}
.dv-status.is-error{color:#ffb4c2;background:rgba(255,61,107,.08);border:1px solid rgba(255,61,107,.35)}
