.dtw{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#111}
.dtwGrid{display:grid;grid-template-columns:1.7fr 1fr;gap:22px;align-items:start}
@media(max-width:980px){.dtwGrid{grid-template-columns:1fr}}

.dtwCard{border:2px solid #2f6fed;border-radius:14px;padding:18px;box-shadow:0 10px 26px rgba(0,0,0,.06);background:#fff}
.dtwCardTop{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.dtwCardH{margin:0;font-size:28px;font-weight:900;letter-spacing:-.01em}
.dtwQty{font-weight:900;font-size:22px}
.dtwPrice{margin:14px 0 4px;font-size:22px;font-weight:900}
.dtwSmall{margin:10px 0 0;color:#6b7280;font-size:15px;line-height:1.45}
.dtwDesc{margin:16px 0 0;color:#6b7280;font-size:15px;line-height:1.55}
.dtwRowRight{display:flex;justify-content:flex-end;margin-top:18px}
.dtwRowLeft{justify-content:flex-start}
.dtwRegister{background:#6ec1ea;border:0;border-radius:12px;color:#fff;padding:16px 28px;font-weight:900;cursor:pointer;min-width:220px;font-size:22px}
.dtwRegister:disabled{opacity:.6;cursor:not-allowed}

.dtwFormCard{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;box-shadow:0 10px 26px rgba(0,0,0,.06)}
.dtwFormTop{display:flex;justify-content:space-between;gap:10px;align-items:flex-end;margin-bottom:12px}
.dtwFormH{margin:0;font-size:28px;font-weight:900}
.dtwReq{color:#b91c1c;font-size:13px;font-weight:700}
.dtwLogin{margin:0 0 14px;color:#374151;font-size:14px}
.dtw2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:700px){.dtw2{grid-template-columns:1fr}}
.dtwIn{border:1px solid #cbd5e1;border-radius:4px;padding:16px 14px;font-size:16px;background:#fff;width:100%}
.dtwIn:focus{outline:none;border-color:#2f6fed;box-shadow:0 0 0 3px rgba(47,111,237,.15)}

.dtwCB{display:flex;gap:14px;align-items:flex-start;margin:18px 0 0}
.dtwCB input{width:20px;height:20px;margin-top:2px}
.dtwCB label{font-size:15px;color:#111;line-height:1.35}
.dtwTA{min-height:120px;resize:vertical}
.dtwTerms{margin:18px 0 0;color:#374151;font-size:14px}
.dtwTerms a{color:#2563eb;text-decoration:underline}
.dtwErr{margin-top:12px;color:#b00020;font-size:13px;font-weight:700}

.dtwSum{border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 10px 26px rgba(0,0,0,.06);position:sticky;top:12px}

/* HERO — match old behavior: NO will-change, NO shimmer animation */
.dtwHero{
  height:160px;
  background:#0f172a;
  background-size:cover;
  background-position:center;
  position:relative;
}

.dtwX{position:absolute;right:12px;top:12px;width:44px;height:44px;border-radius:999px;border:0;background:rgba(110,193,234,.9);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;cursor:pointer;color:#0f172a}
.dtwSumBody{padding:18px;background:#f8fafc}
.dtwSumH{margin:0 0 14px;font-size:22px;font-weight:900}
.dtwLine{display:flex;justify-content:space-between;gap:12px;color:#111;font-size:16px}
.dtwHr{height:1px;background:#e5e7eb;margin:14px 0}
.dtwTotal{display:flex;justify-content:space-between;font-size:28px;font-weight:950}
.dtwMuted{color:#6b7280;font-size:14px;margin-top:6px}

.dtwOk{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:18px;box-shadow:0 10px 26px rgba(0,0,0,.06)}
.dtwSuccessH{margin:0 0 10px}
.dtwSuccessP{color:#374151;font-size:15px;line-height:1.5}
.dtwJobsH{font-size:22px;font-weight:900;letter-spacing:-.01em;margin-bottom:10px}
.dtwReqStar{color:#b91c1c}
.dtwMT18{margin-top:18px}
.dtwMT22{margin-top:22px}

/* CRITICAL MOBILE FIX (old behavior effectively avoided the overflow by not having 2 buttons):
   ensure padding doesn't cause width overflow */
.dtw, .dtw * { box-sizing:border-box; }