:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f8fafe;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%}body{background:radial-gradient(circle at 50% 0,#2f80ff29,#0000 32rem),linear-gradient(#eef3fa 0%,#f8fafe 100%);min-width:320px;min-height:100dvh;margin:0}.button,input{font:inherit}button{cursor:pointer}.simulator-page{color:#172033;min-height:100dvh}.phone-frame{background:#fff;width:100%;min-height:100dvh;position:relative;overflow:hidden}.phone-frame:before{content:none}.top-gradient{background:radial-gradient(circle at 88% 8%,#22b8f024,#0000 22rem),linear-gradient(#f7fbff 0%,#fff 100%);height:min(42vh,360px);position:absolute;inset:0 0 auto}.phone-content{z-index:10;width:min(100%,1180px);min-height:100dvh;margin:0 auto;padding:clamp(22px,4vw,48px) clamp(16px,4vw,40px);position:relative}.app-header{justify-content:flex-end;align-items:center;margin-bottom:32px;display:flex}.brand-pill{color:#2f80ff;background:#f4f8ff;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:700}.hero-copy{margin-bottom:28px}.hero-copy p{color:#2f80ff;margin:0 0 8px;font-size:12px;font-weight:800}.hero-copy h1{color:#172033;letter-spacing:0;margin:0;font-size:26px;font-weight:900;line-height:1.2}.hero-copy span{color:#7b8798;max-width:290px;margin-top:12px;font-size:13px;line-height:1.55;display:block}.search-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffe0;border:1px solid #e7eef8;border-radius:1.7rem;margin-bottom:20px;padding:12px;box-shadow:0 12px 30px #2d5bad1a}.search-card label{color:#172033;margin-bottom:8px;padding:0 4px;font-size:12px;font-weight:800;display:block}.search-row{gap:8px;display:flex}.search-row input{color:#172033;background:#fff;border:1px solid #e7eef8;border-radius:16px;outline:none;flex:1;min-width:0;padding:12px 16px;font-size:14px;font-weight:700;transition:border-color .16s,box-shadow .16s}.search-row input::placeholder{color:#b8c3d2}.search-row input:focus{border-color:#2f80ff;box-shadow:0 0 0 4px #2f80ff1a}.search-button{color:#fff;background:#2f80ff;border:0;border-radius:16px;flex-shrink:0;place-items:center;width:54px;height:46px;transition:background-color .16s,box-shadow .16s;display:grid;box-shadow:0 12px 22px #2f80ff47}.search-button:hover,.start-button:hover{background:#176dfa}.search-button:disabled,.start-button:disabled{cursor:wait;opacity:.62}.search-button:focus-visible,.start-button:focus-visible{outline:none;box-shadow:0 0 0 4px #2f80ff33}.search-message{color:#7b8798;margin:10px 4px 0;font-size:12px;font-weight:700}.sample-chip-row{align-items:center;gap:8px;margin-top:12px;display:flex}.sample-scroll{scrollbar-width:none;flex:1;gap:8px;min-width:0;padding-bottom:4px;display:flex;overflow-x:auto}.sample-scroll::-webkit-scrollbar{display:none}.sample-btn{color:#7b8798;white-space:nowrap;background:#f7f9fc;border:0;border-radius:999px;flex-shrink:0;padding:8px 12px;font-size:12px;font-weight:800}.sample-btn.active{color:#2f80ff;background:#f4f8ff}.refresh-recommendations-button{color:#2f80ff;background:#f4f8ff;border:1px solid #e7eef8;border-radius:999px;flex-shrink:0;place-items:center;width:34px;height:34px;transition:background-color .16s,color .16s,transform .16s,box-shadow .16s;display:grid}.refresh-recommendations-button:hover{color:#fff;background:#2f80ff;box-shadow:0 10px 18px #2f80ff2b}.refresh-recommendations-button:active{transform:rotate(18deg)scale(.96)}.refresh-recommendations-button:disabled{cursor:wait;opacity:.48;box-shadow:none}.map-card{margin-bottom:20px}.map-shell{background:#fff;border:1px solid #e7eef8;border-radius:1.8rem;padding:8px;box-shadow:0 12px 30px #2d5bad1a}#map{border-radius:24px;width:100%;height:clamp(220px,38vh,440px);min-height:220px;overflow:hidden}.map-loading,.map-empty{width:100%;height:100%;min-height:inherit;color:#7b8798;text-align:center;background:#f4f8ff;place-items:center;padding:20px;font-size:13px;font-weight:800;display:grid}.map-price-overlay{color:#fff;background:radial-gradient(circle at 90% 8%,#22b8f0b3,#0000 46px),linear-gradient(135deg,#176dfa 0%,#22b8f0 100%);border:1px solid #ffffffc7;border-radius:22px;width:192px;padding:12px 14px 14px;position:relative;transform:translateY(-8px);box-shadow:0 18px 34px #2f80ff5c,inset 0 1px #ffffff6b}.map-price-overlay:before{content:"";-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff2e;border-radius:14px;width:34px;height:34px;position:absolute;top:13px;right:13px}.map-price-overlay strong,.map-price-overlay span{display:block}.overlay-badge{color:#eaf7ff;letter-spacing:-.01em;background:#ffffff29;border-radius:999px;margin-bottom:6px;padding:4px 8px;font-size:10px;font-weight:900;display:inline-flex}.map-price-overlay strong{letter-spacing:-.04em;max-width:130px;font-size:24px;font-weight:950;line-height:1}.map-price-overlay span{color:#ffffffd1;margin-top:7px;font-size:12px;font-weight:800}.map-price-overlay i{background:#1f9df5;border-bottom:1px solid #ffffffc7;border-right:1px solid #ffffffc7;width:20px;height:20px;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)rotate(45deg);box-shadow:8px 8px 18px #2f80ff2e}.result-section{display:block}.result-head{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.result-head p{color:#7b8798;margin:0;font-size:12px;font-weight:800}.result-head h2{color:#172033;margin:4px 0 0;font-size:20px;font-weight:900}.result-head em{color:#7b8798;max-width:560px;margin-top:4px;font-size:12px;font-style:normal;font-weight:700;line-height:1.4;display:block}.result-head span{color:#0c9b65;background:#eaf8f2;border-radius:999px;padding:4px 12px;font-size:11px;font-weight:900}.result-stack{gap:12px;display:grid}.budget-card{background:#f4f8ff;border:1px solid #e7eef8;border-radius:1.45rem;align-items:center;gap:12px;padding:12px;display:flex}.metric-icon{background:linear-gradient(135deg,#e9f9ff 0%,#eaf2ff 100%);border-radius:16px;flex-shrink:0;place-items:center;width:48px;height:48px;display:grid}.budget-card p{color:#7b8798;margin:0;font-size:11px;font-weight:800}.budget-card strong{color:#2f80ff;margin-top:2px;font-size:25px;font-weight:900;line-height:1;display:block}.budget-card strong span{color:#7b8798;margin-left:4px;font-size:13px}.share-card{background:#fff;border:1px solid #e7eef8;border-radius:1.45rem;padding:12px;box-shadow:0 12px 30px #2d5bad1a}.share-title{align-items:flex-start;gap:8px;margin-bottom:8px;padding:0 4px;display:flex}.share-title>div:first-child{background:#eaf2ff;border-radius:12px;flex-shrink:0;place-items:center;width:32px;height:32px;display:grid}.share-title-content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.share-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.share-title p{color:#172033;margin:0;font-size:12px;font-weight:900}.share-title span{color:#7b8798;font-size:10px;font-weight:700}.result-body{border-top:0}.result-row{border-top:1px solid #e7eef8;justify-content:space-between;align-items:center;gap:12px;padding:12px 4px;display:flex}.result-row:first-child{border-top:0}.result-row p{color:#172033;margin:0;font-size:14px;font-weight:900}.result-row span{color:#7b8798;margin-top:2px;font-size:11px;font-weight:700;display:block}.result-row strong{color:#2f80ff;flex-shrink:0;font-size:17px;font-weight:900}.action-buttons{gap:10px;margin-top:24px;display:grid}.start-button,.faq-open-button{border:0;border-radius:16px;width:100%;padding:16px;font-size:14px;font-weight:900;transition:background-color .16s,box-shadow .16s}.start-button{color:#fff;background:#2f80ff;box-shadow:0 14px 25px #2f80ff47}.faq-open-button{color:#2f80ff;background:#f4f8ff;border:1px solid #dce9fb;box-shadow:0 10px 22px #2d5bad14}.faq-open-button:hover{background:#eaf2ff}.faq-open-button:focus-visible{outline:none;box-shadow:0 0 0 4px #2f80ff26}@media (width>=760px){.phone-content{grid-template-columns:minmax(320px,.72fr) minmax(380px,1.28fr);grid-template-areas:"header header""hero map""search map""cta results"".results";align-content:start;gap:20px 28px;display:grid}.app-header{grid-area:header;margin-bottom:8px}.hero-copy{grid-area:hero;align-self:end;margin-bottom:0}.hero-copy h1{letter-spacing:-.04em;font-size:clamp(34px,4vw,54px)}.hero-copy span{max-width:420px;font-size:15px}.search-card{grid-area:search;align-self:start;margin-bottom:0}.map-card{grid-area:map;min-height:100%;margin-bottom:0}.map-shell,#map{height:100%;min-height:clamp(420px,62vh,680px)}.result-section{grid-area:results}.action-buttons{grid-area:cta;align-self:start;margin-top:0}.result-stack{grid-template-columns:minmax(240px,.85fr) minmax(320px,1.15fr);align-items:stretch}.budget-card,.share-card{min-height:100%}}@media (width>=1180px){.phone-content{grid-template-columns:minmax(360px,430px) minmax(560px,1fr);padding-top:56px;padding-bottom:56px}.result-row strong{font-size:18px}}.modal-backdrop{z-index:1000;background:#17203380;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.nationwide-modal{color:#172033;aspect-ratio:1.15;background:#fff;border:1px solid #e7eef8;border-radius:28px;flex-direction:column;gap:18px;width:min(92vw,860px);padding:28px;display:flex;position:relative;box-shadow:0 24px 70px #17203340}.modal-title-row{justify-content:space-between;align-items:flex-end;gap:16px;padding-right:42px;display:flex}.modal-title-row p{color:#2f80ff;margin:0 0 4px;font-size:12px;font-weight:900}.nationwide-modal h2{letter-spacing:-.03em;margin:0;font-size:24px;font-weight:900}.modal-title-row span{color:#0c9b65;background:#eaf8f2;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:900}.modal-close{color:#7b8798;background:#f4f8ff;border:0;border-radius:999px;width:36px;height:36px;font-size:24px;line-height:1;position:absolute;top:18px;right:18px}.modal-close:hover{color:#172033;background:#eaf2ff}.nationwide-browser{flex:1;grid-template-columns:20% 1fr;gap:14px;min-height:0;display:grid}.area-picker{background:#f7f9fc;border:1px solid #e7eef8;border-radius:22px;grid-template-columns:1fr 1fr;gap:6px;min-width:0;padding:8px;display:grid;overflow:hidden}.picker-column{scrollbar-width:none;flex-direction:column;gap:5px;min-width:0;display:flex;overflow-y:auto}.picker-column::-webkit-scrollbar{display:none}.complex-list::-webkit-scrollbar{display:none}.picker-item{color:#7b8798;text-align:left;word-break:keep-all;background:#fff0;border:0;border-radius:12px;width:100%;padding:10px 8px;font-size:11px;font-weight:900;line-height:1.2}.picker-item:hover{background:#fff}.picker-item.active{color:#2f80ff;background:#fff;box-shadow:0 8px 18px #2d5bad14}.city-column{border-left:1px solid #e7eef8;padding-left:6px}.picker-empty{color:#b8c3d2;margin:10px 4px;font-size:11px;font-weight:900}.complex-list-panel{background:#fff;border:1px solid #e7eef8;border-radius:22px;min-width:0;padding:10px;overflow:hidden;box-shadow:0 12px 30px #2d5bad12}.complex-list{scrollbar-width:none;flex-direction:column;gap:8px;height:100%;display:flex;overflow-y:auto}.complex-list-item{text-align:left;background:#f8fbff;border:1px solid #e7eef8;border-radius:16px;gap:4px;padding:14px 16px;display:grid}.complex-list-item:hover{border-color:#2f80ff;box-shadow:0 10px 22px #2f80ff1a}.complex-list-item strong{color:#172033;font-size:15px;font-weight:900}.complex-list-item span{color:#7b8798;font-size:12px;font-weight:700;line-height:1.35}.complex-list-item em{color:#2f80ff;font-size:11px;font-style:normal;font-weight:900}.modal-state{color:#7b8798;text-align:center;background:#f8fbff;border-radius:16px;place-items:center;height:100%;padding:20px;font-size:13px;font-weight:800;display:grid}.faq-modal{color:#172033;background:#fff;border:1px solid #e7eef8;border-radius:28px;flex-direction:column;gap:18px;width:min(92vw,720px);height:min(82dvh,620px);padding:28px;display:flex;position:relative;box-shadow:0 24px 70px #17203340}.faq-split-panel{flex:1;grid-template-rows:1fr 1fr;gap:14px;min-height:0;display:grid}.faq-question-list{scrollbar-width:none;background:#f7f9fc;border:1px solid #e7eef8;border-radius:22px;flex-direction:column;gap:8px;min-height:0;padding:10px;display:flex;overflow-y:auto}.faq-question-list::-webkit-scrollbar{display:none}.faq-question-item{color:#506071;text-align:left;background:#fff;border:1px solid #e7eef8;border-radius:15px;align-items:center;gap:10px;padding:12px 14px;font-size:13px;font-weight:900;line-height:1.35;display:flex}.faq-question-item span{color:#2f80ff;background:#f4f8ff;border-radius:999px;flex-shrink:0;padding:4px 8px;font-size:10px;font-weight:950}.faq-question-item:hover,.faq-question-item.active{border-color:#2f80ff;box-shadow:0 10px 22px #2f80ff17}.faq-question-item.active{color:#172033;background:#eef6ff}.faq-answer-panel{background:linear-gradient(135deg,#f8fbff 0%,#fff 100%);border:1px solid #e7eef8;border-radius:22px;min-height:0;padding:18px;overflow-y:auto}.faq-answer-panel p{color:#2f80ff;margin:0 0 8px;font-size:12px;font-weight:950}.faq-answer-panel h3{letter-spacing:-.02em;margin:0 0 10px;font-size:19px;font-weight:950}.faq-answer-panel span{color:#506071;font-size:14px;font-weight:700;line-height:1.7}@media (width<=620px){.modal-backdrop{padding:12px}.nationwide-modal{aspect-ratio:auto;border-radius:24px;width:100%;height:min(86dvh,680px);padding:20px}.modal-title-row{flex-direction:column;align-items:flex-start;gap:8px}.nationwide-browser{grid-template-rows:35% 1fr;grid-template-columns:1fr}.area-picker{grid-template-columns:1fr 1fr}.nationwide-modal h2{font-size:21px}}@media (width<=420px){.phone-content{padding-inline:14px}.hero-copy h1{font-size:24px}.budget-card strong{font-size:22px}.result-row{flex-direction:column;align-items:flex-start;gap:6px}}.result-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.contribution-chip-button,.contribution-mini-button{color:#2f80ff;background:#f4f8ff;border:1px solid #dce9fb;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:11px;font-weight:900;transition:background-color .16s,color .16s,box-shadow .16s,opacity .16s}.contribution-chip-button:hover,.contribution-mini-button:hover{background:#eaf2ff}.contribution-chip-button:disabled,.contribution-mini-button:disabled{cursor:not-allowed;opacity:.45}.contribution-card{background:#fff;border:1px solid #e7eef8;border-radius:1.45rem;padding:12px;box-shadow:0 12px 30px #2d5bad1a}.contribution-card-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.contribution-card-head p{color:#172033;margin:0;font-size:12px;font-weight:900}.contribution-card-head span{color:#7b8798;font-size:10px;font-weight:700;line-height:1.4}.contribution-list{gap:8px;display:grid}.contribution-list-item{background:#f8fbff;border:1px solid #e7eef8;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.contribution-list-item strong{color:#172033;font-size:13px;font-weight:900;display:block}.contribution-list-item span{color:#2f80ff;margin-top:2px;font-size:12px;font-weight:900;display:block}.contribution-status{border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:10px;font-weight:900}.contribution-status.pending{color:#8a5b00;background:#fff6df}.contribution-status.approved{color:#0c9b65;background:#eaf8f2}.contribution-status.rejected{color:#d64545;background:#feecec}.contribution-empty{color:#7b8798;text-align:center;background:#f8fbff;border:1px dashed #dce9fb;border-radius:14px;padding:14px;font-size:12px;font-weight:800}.contribution-modal{color:#172033;background:#fff;border:1px solid #e7eef8;border-radius:28px;flex-direction:column;gap:18px;width:min(92vw,760px);max-height:min(88dvh,760px);padding:28px;display:flex;position:relative;box-shadow:0 24px 70px #17203340}.contribution-summary-card{background:linear-gradient(135deg,#eef6ff 0%,#f8fbff 100%);border:1px solid #dbeafe;border-radius:20px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.contribution-summary-card span{color:#7b8798;font-size:11px;font-weight:800}.contribution-summary-card strong{color:#2f80ff;letter-spacing:-.03em;font-size:24px;font-weight:950}.contribution-modal-body{flex:1;gap:14px;min-height:0;display:grid;overflow:hidden}.panel-head{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.panel-head p{color:#172033;margin:0;font-size:12px;font-weight:900}.panel-head span{color:#7b8798;font-size:10px;font-weight:700;line-height:1.4}.contribution-type-panel,.contribution-input-panel{background:#f7f9fc;border:1px solid #e7eef8;border-radius:22px;gap:10px;padding:12px;display:grid;overflow:hidden}.type-chip-grid{flex-wrap:wrap;gap:8px;display:flex}.type-chip{color:#506071;background:#fff;border:1px solid #e7eef8;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;transition:background-color .16s,color .16s,border-color .16s,box-shadow .16s}.type-chip:hover{border-color:#2f80ff}.type-chip.active{color:#2f80ff;background:#eef6ff;border-color:#2f80ff;box-shadow:0 10px 18px #2f80ff14}.contribution-input-list{gap:10px;display:grid}.contribution-input-row{background:#fff;border:1px solid #e7eef8;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.contribution-input-row strong{color:#172033;font-size:13px;font-weight:900;display:block}.contribution-input-row span{color:#7b8798;font-size:10px;font-weight:700;display:block}.contribution-input-row input{color:#172033;text-align:right;background:#fff;border:1px solid #dce9fb;border-radius:12px;outline:none;max-width:180px;padding:10px 12px;font-size:14px;font-weight:800}.contribution-input-row input:focus{border-color:#2f80ff;box-shadow:0 0 0 4px #2f80ff1a}.contribution-modal-message{color:#2f80ff;background:#eef6ff;border:1px solid #dbeafe;border-radius:14px;margin:0;padding:10px 12px;font-size:12px;font-weight:800}.contribution-submit-button{color:#fff;background:#2f80ff;border:0;border-radius:16px;width:100%;padding:14px;font-size:14px;font-weight:900;transition:background-color .16s,box-shadow .16s,opacity .16s;box-shadow:0 14px 25px #2f80ff47}.contribution-submit-button:hover{background:#176dfa}.contribution-submit-button:disabled{cursor:not-allowed;opacity:.6;box-shadow:none}.contribution-submit-button:focus-visible{outline:none;box-shadow:0 0 0 4px #2f80ff33}@media (width<=620px){.contribution-modal{border-radius:24px;width:100%;max-height:min(88dvh,760px);padding:20px}.contribution-summary-card,.contribution-card-head,.panel-head,.contribution-input-row{flex-direction:column;align-items:flex-start}.contribution-input-row input{text-align:left;width:100%;max-width:none}}.waitlist-gate-backdrop{z-index:1200;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#172033b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.waitlist-gate-modal{background:#fff;border:1px solid #e7eef8;border-radius:28px;gap:16px;width:min(92vw,520px);padding:28px;display:grid;box-shadow:0 24px 70px #17203352}.waitlist-eyebrow{color:#2f80ff;font-size:12px;font-weight:900}.waitlist-gate-modal h2{color:#172033;letter-spacing:-.03em;margin:0;font-size:28px;font-weight:950;line-height:1.2}.waitlist-description{color:#506071;margin:0;font-size:14px;font-weight:700;line-height:1.65}.waitlist-benefits{gap:8px;display:grid}.waitlist-benefit{color:#172033;background:#f7f9fc;border:1px solid #e7eef8;border-radius:14px;padding:12px 14px;font-size:13px;font-weight:800}.waitlist-input-wrap{gap:8px;display:grid}.waitlist-input-wrap span{color:#172033;font-size:12px;font-weight:900}.waitlist-input-wrap input{color:#172033;background:#fff;border:1px solid #dce9fb;border-radius:14px;outline:none;padding:14px 16px;font-size:14px;font-weight:800}.waitlist-input-wrap input:focus{border-color:#2f80ff;box-shadow:0 0 0 4px #2f80ff1a}.waitlist-message{color:#2f80ff;background:#eef6ff;border:1px solid #dbeafe;border-radius:14px;margin:0;padding:10px 12px;font-size:12px;font-weight:800}.waitlist-action-row{gap:10px;display:grid}.waitlist-submit-button,.waitlist-dismiss-button{border-radius:16px;width:100%;padding:14px;font-size:14px;font-weight:900;transition:background-color .16s,box-shadow .16s,opacity .16s}.waitlist-submit-button{color:#fff;background:#2f80ff;border:0;box-shadow:0 14px 25px #2f80ff47}.waitlist-submit-button:hover{background:#176dfa}.waitlist-submit-button:disabled{cursor:not-allowed;opacity:.6;box-shadow:none}.waitlist-dismiss-button{color:#506071;background:#f4f8ff;border:1px solid #dce9fb}.waitlist-dismiss-button:hover{background:#eaf2ff}.waitlist-submit-button:focus-visible,.waitlist-dismiss-button:focus-visible{outline:none;box-shadow:0 0 0 4px #2f80ff26}@media (width<=620px){.waitlist-gate-modal{border-radius:24px;width:100%;padding:22px}.waitlist-gate-modal h2{font-size:24px}}
