/* Rate calculator — page-specific styles (loaded only on rate-calculator.html).
   Scoped under .rate-calc so it can't affect the rest of the site. */

.rc-placeholder-banner{
  max-width:760px;margin:0 auto 18px;padding:12px 18px;border-radius:8px;
  background-color:rgba(255,193,7,.16);border:1px solid rgba(255,193,7,.5);
  color:#ffe08a;font-size:13.5px;line-height:1.5;text-align:center;
}

.rate-calc{max-width:900px;margin:0 auto;text-align:left}
.rate-calc .rc-grid{display:flex;flex-wrap:wrap;gap:20px}
.rate-calc .rc-col{flex:1 1 320px;min-width:0}

/* transaction-type toggle */
.rc-toggle{display:flex;gap:8px;margin-bottom:18px}
.rc-toggle label{flex:1;cursor:pointer}
.rc-toggle input{position:absolute;opacity:0;pointer-events:none}
.rc-toggle span{
  display:block;text-align:center;padding:12px;border-radius:8px;
  background-color:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
  color:#fff;font-weight:bold;transition:background-color .15s ease,border-color .15s ease;
}
.rc-toggle input:checked + span{background-color:#3f9191;border-color:#54aaaa}
.rc-toggle input:focus-visible + span{outline:2px solid #8fd4d4;outline-offset:2px}

/* money inputs */
.rc-field{margin-bottom:16px}

/* reissue-credit checkbox */
.rc-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;color:#d9e8e8;font-size:13.5px;line-height:1.45}
.rc-check input{margin-top:1px;width:18px;height:18px;flex:0 0 auto;accent-color:#3f9191;cursor:pointer}

/* fine print under results (e.g. over-$500k note) */
.rc-fine{margin:12px 0 0;color:#9fbcbc;font-size:12px;line-height:1.5}

/* optional-service checkboxes */
.rc-addons-wrap{margin-top:4px}
.rc-addons-h{margin:0 0 8px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#8fd4d4}
.rc-addon{display:flex;align-items:center;gap:9px;padding:5px 0;color:#d9e8e8;font-size:13.5px}
.rc-addon input[type=checkbox]{width:17px;height:17px;flex:0 0 auto;accent-color:#3f9191;cursor:pointer}
.rc-addon-label{flex:1;cursor:pointer;line-height:1.35}
.rc-addon-hint{color:#9fbcbc;font-style:italic;font-size:12px}
.rc-addon-qty{width:58px;flex:0 0 auto;border:0;border-radius:6px;padding:6px 8px;font-size:14px;color:#123434;background:#fff}
.rc-addon-qty:disabled{opacity:.4}

/* underwriter dropdown */
.rc-select{position:relative;background:#fff;border-radius:8px}
.rc-select::after{content:"";position:absolute;right:16px;top:50%;width:9px;height:9px;
  border-right:2px solid #6b7c7c;border-bottom:2px solid #6b7c7c;
  transform:translateY(-70%) rotate(45deg);pointer-events:none}
.rc-select select{
  width:100%;-webkit-appearance:none;appearance:none;border:0;outline:0;background:transparent;
  padding:13px 38px 13px 12px;font-size:16px;color:#123434;border-radius:8px;cursor:pointer;
}
.rc-select select:focus-visible{outline:2px solid #8fd4d4;outline-offset:2px}
.rc-field label{display:block;margin-bottom:6px;color:#d9e8e8;font-size:14px;font-weight:bold}
.rc-input{display:flex;align-items:center;background:#fff;border-radius:8px;overflow:hidden}
.rc-input .rc-dollar{padding:0 10px;color:#6b7c7c;font-weight:bold}
.rc-input input{
  flex:1;border:0;outline:0;padding:13px 12px 13px 0;font-size:17px;
  color:#123434;background:transparent;width:100%;
}

/* results */
.rc-results{background-color:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  border-radius:10px;padding:18px 20px}
.rc-empty{color:#bcd4d4;text-align:center;padding:30px 10px;font-style:italic}
.rc-group{margin-bottom:14px}
.rc-group-h{margin:0 0 6px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#8fd4d4}
.rc-row{position:relative;display:flex;justify-content:space-between;gap:14px;padding:5px 0;color:#eaf4f4;font-size:14.5px}
/* reserve a right gutter on every line so the amount column stays aligned with
   the ✕ remove control that appears on optional-service rows */
.rc-row,.rc-total{padding-right:26px}
.rc-remove{position:absolute;right:0;top:50%;transform:translateY(-50%);
  width:20px;height:20px;padding:0;border:0;border-radius:50%;line-height:1;
  background:transparent;color:#9fbcbc;font-size:18px;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:background-color .15s ease,color .15s ease}
.rc-remove:hover,.rc-remove:focus{background-color:rgba(255,255,255,.14);color:#fff;outline:none}
.rc-remove:focus-visible{outline:2px solid #8fd4d4;outline-offset:1px}
.rc-note{color:#9fbcbc;font-style:italic;font-size:12.5px}
.rc-amt{white-space:nowrap;font-variant-numeric:tabular-nums}
.rc-total{display:flex;justify-content:space-between;gap:14px;margin-top:10px;padding-top:12px;
  border-top:2px solid rgba(255,255,255,.22);color:#fff;font-weight:bold;font-size:18px;
  font-variant-numeric:tabular-nums}

.rc-disclaimer{max-width:760px;margin:20px auto 0;color:#bcd4d4;font-size:12.5px;line-height:1.55;text-align:center}

@media (max-width:640px){
  .rate-calc .rc-grid{flex-direction:column}
}

/* print quote button */
.rc-print-btn{margin-top:14px;width:100%;padding:11px 12px;border:0;border-radius:8px;background-color:#3f9191;color:#fff;font-family:inherit;font-weight:bold;font-size:15px;cursor:pointer;transition:background-color .2s ease}
.rc-print-btn:hover,.rc-print-btn:focus{background-color:#54aaaa}

/* print-only elements (hidden on screen) */
.rc-print-only{display:none}

/* clean, black-on-white printout of just the estimate */
@media print{
  .navbar,.footer,.help-band,.overlay,.rc-placeholder-banner,.card-outline-secondary,
  .header-intro,.main-body br,.rc-print-btn,.rc-remove,#rc-empty{display:none !important}
  body,.main-wrapper{background:#fff !important}
  .site-title-wrap .header-dark,#t-s,.header,.header-intro,.header-intro a,.tel-link{color:#000 !important}
  /* keep the company name on a single line on paper */
  .header-dark{font-size:34px !important;white-space:nowrap;margin-bottom:14px !important}
  #sc{display:none !important}
  #t-s{left:0 !important;margin-left:.28em}
  .rate-calc{max-width:none}
  .rate-calc .rc-grid{display:block}
  .rate-calc .rc-col:first-child{display:none !important}
  .rc-results{background:#fff !important;border:1px solid #999 !important}
  .rc-print-only{display:block;margin:0 0 10px;color:#000;font-size:13px}
  .rc-group-h{color:#333 !important}
  .rc-row,.rc-label,.rc-amt,.rc-total{color:#000 !important}
  .rc-total{border-top-color:#000 !important}
  .rc-note,.rc-fine,.rc-disclaimer,.rc-addon-hint{color:#333 !important}
  a{text-decoration:none !important}
  /* tighten spacing so the quote fits one page even with every option selected */
  .header{font-size:26px !important;margin:0 0 8px !important}
  .rc-results{padding:12px 14px !important}
  .rc-group{margin-bottom:8px !important}
  .rc-row{padding:3px 0 !important}
  .rc-total{margin-top:7px !important;padding-top:8px !important;padding-right:0 !important;font-size:17px}
  .rc-disclaimer{margin-top:10px !important}
}
