/* Mortgage Payment & Buydown Calculator — premium, iPhone-first */
.mc-page{min-width:0;background:#fff;color:#132B52}

/* Mobile overflow: site .btn is nowrap; keep calculator buttons wrapping. */
.mc-page{overflow-x:clip;min-width:0}
.mc-page .wrap{min-width:0;max-width:100%}
.mc-page .btn,.mc-actions .btn,.mc-bar .btn,.mc-simple-bar .btn,.mc-units button{
  white-space:normal;min-width:0;max-width:100%;height:auto;
}
.mc-layout,.mc-layout > *,.mc-card,.mc-fields,.mc-f,.mc-summary,.mc-table,.mc-breakdown,.mc-offer,.mc-offer-card{
  min-width:0;max-width:100%;
}
.mc-tabs{max-width:100%}
.mc-table,.mc-breakdown{display:block;overflow-x:auto}
.mc-hero-brand{min-width:0;flex-wrap:wrap}
@media (max-width:959px){
  .mc-bar{flex-wrap:wrap}
  .mc-bar .btn{flex:1 1 160px}
}

.mc-page h1{overflow-wrap:normal;white-space:normal;max-width:18em}
.mc-hero{padding-bottom:8px}
.mc-hero-brand{display:flex;align-items:center;gap:14px;margin:0 0 10px}
.mc-hero-brand img.hs{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid #AFD5EF}
.mc-hero-brand img.logo{height:36px;width:auto}
.mc-hero .lede,.mc-note,.mc-assume{overflow-wrap:break-word}
.mc-kicker{letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:700;color:#3a5a7a}

.mc-tabs{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:8px 0 12px;scrollbar-width:thin}
.mc-tabs[role=tablist]{border-bottom:1px solid #d5deea}
.mc-tabs button{
  flex:0 0 auto;border:1px solid #d5deea;background:#fff;color:#132B52;
  border-radius:999px;padding:8px 14px;font:inherit;font-size:13.5px;font-weight:650;cursor:pointer;
  white-space:nowrap;
}
.mc-tabs button[aria-selected=true]{background:#132B52;color:#fff;border-color:#132B52}
.mc-tabs button:disabled,.mc-tabs button[aria-disabled=true]{opacity:.55;cursor:not-allowed}
.mc-panel[hidden]{display:none}

.mc-layout{display:grid;gap:20px;grid-template-columns:1fr;align-items:start}
@media (min-width:960px){
  .mc-layout{grid-template-columns:minmax(0,1fr) minmax(280px,380px)}
  .mc-summary{position:sticky;top:96px}
}
.mc-card{background:#fff;border:1px solid #d7e6f2;border-radius:16px;padding:16px 18px;min-width:0}
.mc-card h2,.mc-card h3{margin:0 0 8px;color:#132B52}
.mc-simple-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 14px}
.mc-simple-bar button{border-radius:999px}

.mc-fields{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:700px){.mc-fields-2{grid-template-columns:1fr 1fr}}
.mc-f{min-width:0}
.mc-f label{display:block;font-weight:650;font-size:13.5px;margin:0 0 4px}
.mc-f input[type=text],.mc-f input[type=number],.mc-f input[type=email],.mc-f input[type=tel],.mc-f select, .mc-f textarea{
  width:100%;max-width:100%;box-sizing:border-box;border:1px solid #d5deea;border-radius:10px;
  padding:10px 12px;font:inherit;background:#fff;
}
.mc-f input[type=checkbox],.mc-f input[type=radio]{width:auto;accent-color:#132B52}
.mc-units{display:flex;gap:4px;margin:0 0 4px}
.mc-units button{border:1px solid #d5deea;background:#f4f8fb;border-radius:8px;padding:4px 8px;font-size:12px;cursor:pointer}
.mc-units button[aria-pressed=true]{background:#132B52;color:#fff;border-color:#132B52}
.mc-hint{display:block;font-size:12.5px;color:#4a5a70;margin:4px 0 0}
.mc-err{display:block;color:#8a2b2b;font-size:13px;min-height:1em}
.mc-f input[aria-invalid=true],.mc-f select[aria-invalid=true]{border-color:#8a2b2b}

.mc-warn{background:#fff8f0;border:1px solid #e6d0b3;border-radius:12px;padding:10px 12px;margin:8px 0;font-size:14px}
.mc-note{background:#f4f8fb;border:1px solid #d5deea;border-radius:12px;padding:10px 12px;margin:8px 0;font-size:14px}
.mc-assume{font-size:13px;color:#33445c;margin:8px 0 0;line-height:1.45}
.mc-ref{border:1px dashed #8aa3bb;background:#f7fafc}

.mc-summary{background:#132B52;color:#fff;border-radius:18px;padding:18px 18px 16px}
.mc-summary h2{color:#AFD5EF;font-size:13px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px}
.mc-total{font-family:Fraunces,Georgia,serif;font-size:clamp(36px,5vw,52px);line-height:1;font-weight:400;margin:0 0 4px}
.mc-total-label{font-size:13px;color:#AFD5EF;margin:0 0 12px}
.mc-breakdown{width:100%;border-collapse:collapse;font-size:14px}
.mc-breakdown th,.mc-breakdown td{padding:6px 0;border-bottom:1px solid rgba(175,213,239,.25);text-align:left}
.mc-breakdown td:last-child,.mc-breakdown th:last-child{text-align:right}
.mc-summary .mc-assume{color:rgba(255,255,255,.82)}
.mc-donut{width:100%;max-width:220px;margin:10px auto;display:block}
.mc-legend{display:flex;flex-wrap:wrap;gap:8px 12px;font-size:12px;margin:6px 0 0}
.mc-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}

.mc-bar{display:none}
@media (max-width:959px){
  .mc-bar{
    display:flex;align-items:center;justify-content:space-between;gap:10px;
    position:sticky;bottom:0;z-index:25;
    background:#132B52;color:#fff;padding:10px 14px;
    border-top:1px solid rgba(175,213,239,.3);
  }
  .mc-bar .amt{font-family:Fraunces,Georgia,serif;font-size:22px;line-height:1}
  .mc-bar .btn{white-space:normal;min-width:0}
}

.mc-offer{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:900px){.mc-offer{grid-template-columns:1fr 1fr 1fr}}
.mc-offer-card{border:1px solid #d7e6f2;border-radius:16px;padding:14px 16px;background:#fff;min-width:0}
.mc-offer-card h3{margin:0 0 8px}
.mc-offer-scroll{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
@media (max-width:899px){
  .mc-offer{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px}
  .mc-offer-card{flex:0 0 85%;scroll-snap-align:start}
}

.mc-table{width:100%;border-collapse:collapse;font-size:14px}
.mc-table th,.mc-table td{border:1px solid #d5deea;padding:6px 8px;text-align:left;vertical-align:top}
.mc-table th{background:#132B52;color:#fff}
.mc-coming{opacity:.9}
.mc-tip{position:relative;display:inline}
.mc-tip button{border:0;background:#AFD5EF;color:#132B52;border-radius:50%;width:18px;height:18px;font-size:11px;font-weight:700;cursor:pointer;line-height:1;padding:0}
.mc-tip .mc-tip-pop{
  display:none;position:absolute;left:0;top:22px;z-index:8;width:min(260px,70vw);
  background:#fff;color:#132B52;border:1px solid #d5deea;border-radius:10px;padding:8px 10px;
  box-shadow:0 8px 24px -12px rgba(19,43,82,.5);font-size:13px;font-weight:400;
}
.mc-tip.is-open .mc-tip-pop,.mc-tip:focus-within .mc-tip-pop{display:block}

.mc-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.mc-actions .btn{white-space:normal;min-width:0}
.ed-cta .btn{white-space:normal;min-width:0}

#print-summary{display:none}
@media print{
  .site-header,.ed-jump,.mc-tabs,.mc-bar,.mc-actions,form.mc-form,.mc-hero .actions,footer .site-footer nav{display:none !important}
  .mc-panel{display:block !important}
  .mc-summary{background:#fff;color:#132B52;border:1px solid #132B52}
  .mc-summary h2,.mc-total-label{color:#132B52}
  .mc-total{color:#132B52}
  #print-summary{display:block !important}
}

/* Phase 2: Mode B builder */
.lb-layout{display:grid;gap:16px;grid-template-columns:1fr;align-items:start}
@media (min-width:960px){
  .lb-layout{grid-template-columns:minmax(0,1fr) minmax(280px,380px)}
  .lb-preview-col{position:sticky;top:96px}
}
.lb-preview-col iframe{
  width:100%;height:720px;border:1px solid #d7e6f2;border-radius:16px;background:#fff;
}
.lb-qr-wrap{display:flex;justify-content:center;padding:12px;background:#fff;border-radius:12px}
.lb-qr-wrap canvas,.lb-qr-wrap img,.lb-qr-wrap svg{max-width:260px;height:auto}

/* Phase 2: buyer listing page */
.lp-page{background:#f4f8fb;color:#132B52;min-width:0;overflow-x:clip}
.lp-sample{background:#AFD5EF;color:#132B52;text-align:center;font-weight:700;padding:8px 12px;font-size:13px}
.lp-hero{background:#132B52;color:#fff}
.lp-hero .wrap{padding-top:16px;padding-bottom:20px}
.lp-photo{width:100%;max-height:52vw;object-fit:cover;border-radius:16px;background:#0c1d36;display:block}
@media (min-width:700px){.lp-photo{max-height:360px}}
.lp-photo-fallback{display:flex;align-items:center;justify-content:center;min-height:180px;border-radius:16px;background:#0c1d36;color:#AFD5EF;text-align:center;padding:24px}
.lp-price{font-family:Fraunces,Georgia,serif;font-size:clamp(36px,8vw,56px);line-height:1;margin:12px 0 4px}
.lp-addr{font-size:18px;margin:0 0 8px}
.lp-card{background:#fff;border:1px solid #d7e6f2;border-radius:16px;padding:16px 18px;margin:0 0 14px;min-width:0}
.lp-chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.lp-chips button{border:1px solid #d5deea;background:#f4f8fb;border-radius:999px;padding:8px 14px;font:inherit;font-weight:650;cursor:pointer}
.lp-chips button[aria-pressed=true]{background:#132B52;color:#fff;border-color:#132B52}
.lp-total{font-family:Fraunces,Georgia,serif;font-size:clamp(32px,6vw,48px);margin:0}
.lp-assume{font-size:13px;color:#33445c;line-height:1.45}
.lp-realtor{display:flex;gap:12px;align-items:center}
.lp-realtor img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid #AFD5EF}
.lp-err{padding:40px 20px;text-align:center}
.lp-bar{display:none}
@media (max-width:959px){
  .lp-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;
    position:sticky;bottom:0;z-index:25;background:#132B52;color:#fff;padding:10px 14px}
  .lp-bar .amt{font-family:Fraunces,Georgia,serif;font-size:22px}
  .lp-bar .btn{white-space:normal;min-width:0;flex:1 1 160px}
}
.lp-page .btn{white-space:normal;min-width:0;max-width:100%}

#mc-logo-color{display:none!important;width:0;height:0;position:absolute}
