/* rto.css — rent-to-own planner tool, scoped to .rto2 */
.rto2{
  --navy: #0A2540;
  --navy-deep: #061829;
  --navy-mid: #143256;
  --gold: #FFB800;
  --gold-soft: #FFC733;
  --blue: #2B7FFF;
  --white: #FFFFFF;
  --gray-400: #94A3B8;
  --green: #10B981;
  --red: #C8102E;
  font-family:'Inter',system-ui,-apple-system,sans-serif;max-width:649px;margin:0 auto;color:#1a1a2e;line-height:1.45;font-size:14px}
.rto2 *,.rto2 *::before,.rto2 *::after{box-sizing:border-box}

/* Divi theme resets — scoped to .rto2 */
.rto2 h3{margin:0;padding:0;line-height:1.3}
.rto2 label{margin:0;padding:0;line-height:1.3}
.rto2 input[type="text"],.rto2 input[type="email"],.rto2 input[type="tel"]{line-height:1.2;height:auto}
.rto2 button{line-height:1.3}
.rto2 p{margin:0;padding:0}
.rto2 table{margin:0}

/* header */
.rto2-head{background:linear-gradient(180deg, var(--navy) 0%, var(--navy-deep) 100%);color:var(--white);padding:10px 18px;border-radius:8px 8px 0 0}
.rto2-head h3{font-size:17px;font-weight:700;letter-spacing:.02em;color:var(--white)}
.rto2-head p{margin:2px 0 0;font-size:12.5px;opacity:.65;color:var(--white)}

/* form grid */
.rto2-form{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;padding:12px 18px;background:#f5f7fa;border-left:1px solid #dde3ea;border-right:1px solid #dde3ea}
.rto2-field{display:flex;flex-direction:column}
.rto2-field label{font-size:12px;font-weight:600;color:#3a4a5c;margin-bottom:3px}
.rto2-field input{border:1px solid #c5cdd8;border-radius:5px;padding:5px 10px;font-size:14px;width:100%;background:#fff}
.rto2-field input:focus{outline:2px solid var(--blue);border-color:var(--blue)}

/* results panel */
.rto2-results{padding:10px 18px;background:#fff;border:1px solid #dde3ea;border-top:none}
.rto2-row{display:flex;justify-content:space-between;align-items:baseline;padding:3px 0;border-bottom:1px solid #eef1f5}
.rto2-row:last-child{border-bottom:none}
.rto2-rlabel{font-size:13px;color:#3a4a5c}
.rto2-rvalue{font-size:14px;font-weight:700;color:var(--navy)}
.rto2-rvalue.rto2-warn{color:var(--red)}

/* outcomes table */
.rto2-outcomes{margin:10px 0 0;border-collapse:collapse;width:100%;font-size:12.5px}
.rto2-outcomes th{background:var(--navy);color:var(--white);padding:6px 8px;text-align:left;font-weight:600;font-size:11.5px}
.rto2-outcomes td{padding:6px 8px;border-bottom:1px solid #eef1f5;vertical-align:top}
.rto2-outcomes tr:nth-child(even){background:#f9fafb}
.rto2-outcomes .rto2-money{font-weight:700;white-space:nowrap}

/* lead form toggle */
.rto2-toggle{display:block;width:100%;padding:10px;background:var(--navy-mid);color:var(--white);border:none;border-radius:0;font-size:13px;font-weight:600;cursor:pointer;text-align:center}
.rto2-toggle:hover{background:var(--navy)}
.rto2-lead{padding:14px 18px;background:#f5f7fa;border:1px solid #dde3ea;border-top:none;display:none}
.rto2-lead.rto2-open{display:block}
.rto2-lead label{font-size:12px;font-weight:600;color:#3a4a5c;display:block;margin:6px 0 2px}
.rto2-lead input{border:1px solid #c5cdd8;border-radius:5px;padding:7px 10px;font-size:14px;width:100%;background:#fff;margin-bottom:2px}
.rto2-lead input:focus{outline:2px solid #2E86C1;border-color:#2E86C1}
.rto2-submit{display:block;width:100%;padding:10px;margin-top:10px;background:var(--navy);color:var(--white);border:none;border-radius:5px;font-size:14px;font-weight:600;cursor:pointer}
.rto2-submit:hover{background:var(--navy-deep)}
.rto2-msg{font-size:12px;margin-top:6px;padding:6px;border-radius:4px}
.rto2-msg.rto2-ok{background:#d4edda;color:#155724}
.rto2-msg.rto2-err{background:#f8d7da;color:#721c24}
.rto2-hp{position:absolute;left:-9999px}

/* detail toggle */
.rto2-detail{margin:8px 0 0}
.rto2-detail-toggle{font-size:12.5px;color:var(--blue);cursor:pointer;font-weight:600;list-style:none;padding:2px 0}
.rto2-detail-toggle::-webkit-details-marker{display:none}
.rto2-detail-toggle::before{content:'+ '}
.rto2-detail[open] .rto2-detail-toggle::before{content:'- '}

/* note */
.rto2-note{font-size:11px;color:#6c7a8a;padding:8px 18px;background:#fff;border:1px solid #dde3ea;border-top:none;border-radius:0 0 8px 8px}

/* fee page link */
.rto2-fee-link{font-size:12px;text-align:center;padding:6px 0 0;color:#6c7a8a}
.rto2-fee-link a{color:var(--blue)}

/* responsive */
@media(max-width:480px){
  .rto2-form{grid-template-columns:1fr;gap:8px}
  .rto2-outcomes th,.rto2-outcomes td{padding:5px 5px;font-size:11.5px}
}
