.ballpark-section{padding:88px 0;background:var(--off-white)}.ballpark-section.ballpark-section--compact{padding-top:24px;padding-bottom:72px}.ballpark-header.ballpark-header{margin-bottom:28px}.ballpark-header.ballpark-header--compact{margin-bottom:20px}.ballpark-section .ballpark-calc{background:var(--white);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);overflow:hidden}.ballpark-calc .ballpark-controls{display:grid;gap:24px;padding:32px 32px 28px}.ballpark-calc .ballpark-config-row{display:grid;grid-template-columns:1fr 220px;gap:24px;align-items:end}.ballpark-calc .ballpark-field{display:flex;flex-direction:column;gap:10px}.ballpark-calc .ballpark-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--slate)}.ballpark-calc .ballpark-tier-switcher{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--off-white);border:1.5px solid var(--border);border-radius:10px;padding:4px}.ballpark-calc .ballpark-tier-option{display:contents}.ballpark-calc .ballpark-tier-radio{position:absolute;opacity:0;pointer-events:none}.ballpark-calc .ballpark-tier-btn{display:flex;align-items:center;justify-content:center;padding:11px 8px;font-family:var(--font);font-size:14px;font-weight:600;color:var(--slate);border-radius:7px;cursor:pointer;transition:all .2s ease;text-align:center;user-select:none}.ballpark-calc .ballpark-tier-btn:hover{color:var(--near-black)}.ballpark-calc .ballpark-tier-radio:checked+.ballpark-tier-btn{background:var(--white);color:var(--forest);font-weight:700;box-shadow:0 1px 4px #0d3d2d1a,0 0 0 1px #0d3d2d0f}.ballpark-calc .ballpark-tier-radio:focus-visible+.ballpark-tier-btn{outline:2px solid var(--action);outline-offset:-2px}.ballpark-calc .ballpark-locked-tier{padding:11px 16px;background:var(--off-white);border:1.5px solid var(--border);border-radius:10px;font-size:15px;font-weight:700;color:var(--forest);letter-spacing:-.01em}.ballpark-calc .ballpark-stepper{display:grid;grid-template-columns:42px 1fr 42px;gap:8px;align-items:center}.ballpark-calc .ballpark-stepper-btn{width:42px;height:42px;border-radius:50%;border:1.5px solid var(--border);background:var(--white);color:var(--near-black);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .18s ease;padding:0}.ballpark-calc .ballpark-stepper-btn:hover:not(:disabled){border-color:var(--action);color:var(--action);box-shadow:0 2px 8px #0099661f}.ballpark-calc .ballpark-stepper-btn:disabled{opacity:.35;cursor:not-allowed}.ballpark-calc .ballpark-stepper-value{display:flex;align-items:baseline;justify-content:center;gap:6px}.ballpark-calc .ballpark-stepper-value strong{font-size:22px;font-weight:800;color:var(--near-black);letter-spacing:-.02em}.ballpark-calc .ballpark-stepper-value span{font-size:13px;color:var(--slate);font-weight:500}.ballpark-calc .ballpark-guidance{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border-radius:8px;background:#0099660a;border:1px solid rgba(0,153,102,.12)}.ballpark-calc .ballpark-guidance-icon{flex-shrink:0;margin-top:2px;color:var(--action)}.ballpark-calc .ballpark-guidance p{margin:0;font-size:13px;line-height:1.65;color:var(--slate)}.ballpark-calc .bed-area-list{display:grid;gap:12px}.ballpark-calc .bed-area-card{border:1px solid var(--border);border-left:3px solid var(--action);border-radius:10px;padding:20px 22px;background:var(--white);transition:border-color .18s ease,box-shadow .18s ease}.ballpark-calc .bed-area-card:hover{border-color:#0099664d;border-left-color:var(--action);box-shadow:0 2px 12px #0d3d2d0f}.ballpark-calc .bed-area-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.ballpark-calc .bed-area-number{width:28px;height:28px;border-radius:50%;background:var(--forest);color:var(--white);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}.ballpark-calc .bed-area-title{font-size:15px;font-weight:700;color:var(--near-black);flex:1}.ballpark-calc .bed-area-size-pill{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--action);background:#00996612;padding:5px 10px;border-radius:999px;white-space:nowrap}.ballpark-calc .bed-area-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.ballpark-calc .bed-area-field{display:flex;flex-direction:column;gap:6px}.ballpark-calc .bed-area-label{font-size:12px;font-weight:600;color:var(--slate)}.ballpark-calc .bed-area-help{font-size:12px;line-height:1.5;color:var(--slate);opacity:.8}.ballpark-calc .ballpark-divider{height:1px;background:var(--border)}.ballpark-calc .ballpark-results{display:grid;gap:20px;padding:28px 32px 32px}.ballpark-calc .ballpark-hero-card{border-radius:14px;overflow:hidden;background:linear-gradient(145deg,var(--forest) 0%,var(--forest-dk) 100%);box-shadow:0 8px 32px #0d3d2d2e}.ballpark-calc .ballpark-hero-inner{padding:32px 32px 24px}.ballpark-calc .ballpark-hero-kicker{margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffffff8c}.ballpark-calc .ballpark-hero-price{margin:0 0 12px;font-size:clamp(28px,4vw,42px);line-height:1.05;color:var(--white);letter-spacing:-.02em}.ballpark-calc .ballpark-hero-price strong{font-weight:800}.ballpark-calc .ballpark-hero-scope{margin:0;font-size:14px;line-height:1.6;color:#ffffffa6}.ballpark-calc .ballpark-hero-footer{padding:16px 32px;background:#0000001f;display:grid;gap:4px}.ballpark-calc .ballpark-hero-note{margin:0;font-size:13px;line-height:1.55;color:#fff9}.ballpark-calc .ballpark-hero-disclaimer{margin:0;font-size:13px;line-height:1.55;color:#ffffff73}.ballpark-calc .ballpark-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.ballpark-calc .ballpark-detail-card{background:var(--off-white);border:1px solid var(--border);border-radius:12px;padding:22px;transition:box-shadow .18s ease}.ballpark-calc .ballpark-detail-card:hover{box-shadow:0 2px 12px #0d3d2d0f}.ballpark-calc .ballpark-detail-card--action{display:flex;flex-direction:column;gap:14px}.ballpark-calc .ballpark-detail-title{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--slate);margin:0 0 14px}.ballpark-calc .ballpark-dl{display:grid;gap:10px;margin:0}.ballpark-calc .ballpark-dl-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.05)}.ballpark-calc .ballpark-dl-row:last-child{padding-bottom:0;border-bottom:none}.ballpark-calc .ballpark-dl-row dt{color:var(--slate);font-weight:400}.ballpark-calc .ballpark-dl-row dd{margin:0;text-align:right;font-weight:700;color:var(--near-black)}.ballpark-calc .ballpark-cta-text{margin:0;font-size:14px;line-height:1.7;color:var(--slate);flex:1}.ballpark-calc .bp-dropdown{position:relative}.ballpark-calc .bp-dd-native{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.ballpark-calc .bp-dd-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:8px;background:var(--white);font-family:var(--font);font-size:14px;color:var(--near-black);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;text-align:left;line-height:1.4}.ballpark-calc .bp-dd-trigger:hover{border-color:#c5cad1}.ballpark-calc .bp-dd--open .bp-dd-trigger{border-color:var(--action);box-shadow:0 0 0 3px #0099661a}.ballpark-calc .bp-dd-trigger-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ballpark-calc .bp-dd-chevron{flex-shrink:0;width:10px;height:6px;color:var(--slate);transition:transform .2s ease}.ballpark-calc .bp-dd--open .bp-dd-chevron{transform:rotate(180deg)}.ballpark-calc .bp-dd-menu{display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:var(--white);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 30px #0d3d2d24,0 0 0 1px #00000008;padding:4px;max-height:240px;overflow-y:auto;overscroll-behavior:contain}.ballpark-calc .bp-dd--open .bp-dd-menu{display:block;animation:bpDdFadeIn .15s ease}@keyframes bpDdFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ballpark-calc .bp-dd-option{display:block;width:100%;padding:10px 12px;border:none;border-radius:7px;background:transparent;font-family:var(--font);font-size:14px;color:var(--near-black);text-align:left;cursor:pointer;transition:background .12s ease;line-height:1.4}.ballpark-calc .bp-dd-option:hover,.ballpark-calc .bp-dd-option:focus{background:var(--off-white);outline:none}.ballpark-calc .bp-dd-option--active{background:#0099660f;color:var(--forest);font-weight:600}.ballpark-calc .bp-dd-option--active:hover,.ballpark-calc .bp-dd-option--active:focus{background:#0099661a}.ballpark-calc .ballpark-footnote{margin:0;font-size:12px;line-height:1.7;color:var(--slate);opacity:.7}@media(max-width:1024px){.ballpark-calc .ballpark-config-row,.ballpark-calc .ballpark-detail-grid,.ballpark-calc .bed-area-fields{grid-template-columns:1fr}}@media(max-width:640px){.ballpark-calc .ballpark-controls{padding:24px 20px 20px}.ballpark-calc .ballpark-results{padding:20px}.ballpark-calc .ballpark-hero-inner{padding:24px 20px 20px}.ballpark-calc .ballpark-hero-footer{padding:14px 20px}.ballpark-calc .bed-area-card{padding:16px 18px}.ballpark-calc .bed-area-header{flex-wrap:wrap}.ballpark-calc .ballpark-stepper{grid-template-columns:38px 1fr 38px}.ballpark-calc .ballpark-stepper-btn{width:38px;height:38px}}
