.project-estimator{max-width:1600px;padding:128px var(--gs-padding-inline) var(--gs-space-9);margin:0 auto}.pe-header{text-align:center;max-width:720px;margin:0 auto var(--gs-space-8)}.pe-header-tag{font-size:var(--gs-text-xs);letter-spacing:var(--gs-tracking-eyebrow);text-transform:uppercase;color:var(--gs-accent);background:var(--gs-lavender);border-radius:var(--gs-radius-pill);margin-bottom:var(--gs-space-4);padding:6px 16px;display:inline-block}.pe-header h1{margin-bottom:var(--gs-space-4)}.pe-header p{color:var(--gs-fg-2)}.pe-shell{gap:var(--gs-space-7);align-items:flex-start;display:flex}.pe-sidebar{top:var(--gs-space-6);flex:0 0 260px;position:sticky}.pe-sidebar ol{gap:var(--gs-space-2);flex-direction:column;display:flex}.pe-sidebar li{align-items:center;gap:var(--gs-space-3);border-radius:var(--gs-radius-pill);color:var(--gs-graphite);transition:background var(--gs-dur-base) var(--gs-ease-std);padding:9px 14px;font-size:13px;display:flex}.pe-sidebar li.is-active{background:var(--gs-lavender);color:var(--gs-accent);font-weight:var(--gs-weight-medium)}.pe-sidebar li.is-done{color:var(--gs-accent)}.pe-sidebar-num{border:1px solid var(--gs-stroke-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;display:inline-flex}.pe-sidebar li.is-active .pe-sidebar-num{background:var(--gs-accent);color:var(--gs-white);border-color:var(--gs-accent)}.pe-sidebar li.is-done .pe-sidebar-num{border-color:var(--gs-accent)}.pe-main{background:var(--gs-white);border-radius:var(--gs-radius-lg);min-width:0;padding:var(--gs-space-7);box-shadow:var(--gs-shadow-soft);flex:auto;scroll-margin-top:128px}.pe-progress{background:#7874f42e;border-radius:999px;width:100%;height:4px;margin-bottom:8px;overflow:hidden}.pe-progress-fill{background:var(--gs-purple);height:100%;transition:width .36s var(--gs-ease-out);border-radius:999px}.pe-step-of{font-size:var(--gs-text-xs);color:var(--gs-graphite);margin-bottom:var(--gs-space-6)}.pe-step{gap:var(--gs-space-7);flex-direction:column;display:flex}.pe-field h3{text-transform:uppercase;letter-spacing:.02em;font-size:20px;font-weight:var(--gs-weight-medium);margin-bottom:6px}.pe-eyebrow{text-transform:uppercase;letter-spacing:.02em;font-size:20px;font-weight:var(--gs-weight-medium);margin-bottom:var(--gs-space-3)}.pe-help{color:var(--gs-graphite);font-size:var(--gs-text-sm);margin-bottom:var(--gs-space-4)}.pe-error{color:var(--gs-error);font-size:var(--gs-text-xs);margin-top:6px}.pe-notice{background:var(--gs-mist);border-radius:var(--gs-radius-md);padding:var(--gs-space-4) var(--gs-space-5)}.pe-textarea,.pe-input,textarea.pe-textarea{border:1px solid var(--gs-stroke-soft);border-radius:var(--gs-radius-md);width:100%;font-size:var(--gs-text-sm);background:var(--gs-mist);padding:14px 16px;font-family:inherit}.pe-textarea{resize:vertical;min-height:140px}.pe-textarea.has-error,.pe-input.has-error{border-color:var(--gs-error)}.pe-counter{text-align:right;font-size:var(--gs-text-xs);color:var(--gs-graphite);margin-top:4px;display:block}.pe-input{margin-top:var(--gs-space-3)}.gs-chip-row{flex-wrap:wrap;gap:10px;display:flex}.gs-chip{color:var(--gs-ink);border:.5px solid var(--gs-ink);cursor:pointer;transition:all var(--gs-dur-base) var(--gs-ease-std);background:0 0;border-radius:78px;padding:9px 20px;font-size:15px;line-height:1.3}.gs-chip.is-active{background:var(--gs-purple);border-color:var(--gs-purple);color:var(--gs-white)}.gs-chip:disabled{opacity:.4;cursor:not-allowed}.gs-card-select{gap:var(--gs-space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.gs-card-option{text-align:left;border:1px solid var(--gs-stroke-soft);border-radius:var(--gs-radius-md);padding:var(--gs-space-4);background:var(--gs-white);cursor:pointer;transition:all var(--gs-dur-base) var(--gs-ease-std);flex-direction:column;gap:6px;display:flex}.gs-card-option-title{font-weight:var(--gs-weight-medium);color:var(--gs-ink)}.gs-card-option-desc{font-size:var(--gs-text-xs);color:var(--gs-graphite)}.gs-card-option.is-active{border-color:var(--gs-purple);background:var(--gs-lavender)}.gs-card-option.is-active .gs-card-option-title{color:var(--gs-purple-dark)}.gs-numeric-stepper{background:var(--gs-mist);border-radius:var(--gs-radius-pill);align-items:center;gap:10px;padding:6px 10px;display:inline-flex}.gs-numeric-stepper input{width:90px;font-size:var(--gs-text-base);font-weight:var(--gs-weight-medium);text-align:center;background:0 0;border:none}.gs-numeric-stepper-suffix{color:var(--gs-graphite);font-size:var(--gs-text-xs)}.gs-numeric-stepper button{background:var(--gs-lavender);width:32px;height:32px;color:var(--gs-purple-dark);cursor:pointer;border:none;border-radius:50%;font-size:18px}.gs-tag-input{border:1px solid var(--gs-stroke-soft);border-radius:var(--gs-radius-md);background:var(--gs-mist);flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex}.gs-tag-input-tags{flex-wrap:wrap;gap:8px;display:flex}.gs-tag{background:var(--gs-lavender);color:var(--gs-purple-dark);border-radius:var(--gs-radius-pill);font-size:var(--gs-text-xs);align-items:center;gap:6px;padding:4px 10px;display:inline-flex}.gs-tag button{cursor:pointer;color:var(--gs-purple-dark);background:0 0;border:none;font-size:14px}.gs-tag-input input{font-size:var(--gs-text-sm);background:0 0;border:none;flex:160px}.pe-tabs{background:var(--gs-mist);border-radius:var(--gs-radius-pill);margin-bottom:var(--gs-space-5);gap:4px;padding:4px;display:inline-flex}.pe-tabs button{border-radius:var(--gs-radius-pill);cursor:pointer;font-size:var(--gs-text-sm);color:var(--gs-graphite);background:0 0;border:none;padding:8px 18px}.pe-tabs button.is-active{background:var(--gs-white);color:var(--gs-ink);box-shadow:var(--gs-shadow-card)}.pe-timeline-field{justify-content:space-between;align-items:center;gap:var(--gs-space-4);padding:var(--gs-space-3) 0;border-bottom:1px solid var(--gs-divider);display:flex}.project-estimator .btn,.project-estimator .btn-secondary{border-radius:var(--gs-radius-pill);font-size:var(--gs-text-sm);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:opacity var(--gs-dur-base) var(--gs-ease-std);border:none;padding:12px 28px}.project-estimator .btn{background:var(--gs-purple);color:var(--gs-white)}.project-estimator .btn:disabled{opacity:.5;cursor:not-allowed}.project-estimator .btn-secondary{border:1px solid var(--gs-ink);color:var(--gs-ink);background:0 0}.project-estimator .btn:hover:not(:disabled),.project-estimator .btn-secondary:hover{opacity:.85}.project-estimator .btn.is-wide{text-align:center;width:100%}.pe-step-nav{justify-content:space-between;align-items:center;gap:var(--gs-space-4);margin-top:var(--gs-space-4);display:flex}.pe-generating{text-align:center;padding:var(--gs-space-8) 0;align-items:center}.pe-spinner{border:4px solid var(--gs-lavender);border-top-color:var(--gs-purple);width:44px;height:44px;margin:0 auto var(--gs-space-5);border-radius:50%;animation:.9s linear infinite pe-spin}@keyframes pe-spin{to{transform:rotate(360deg)}}.pe-generating ul{margin-top:var(--gs-space-5);flex-direction:column;gap:6px;display:flex}.pe-generating li{color:var(--gs-graphite);font-size:var(--gs-text-sm);opacity:.4;transition:opacity var(--gs-dur-slow) var(--gs-ease-std)}.pe-generating li.is-active{opacity:1;color:var(--gs-purple-dark);font-weight:var(--gs-weight-medium)}.pe-feature-list{gap:var(--gs-space-4);flex-direction:column;display:flex}.pe-feature-card{gap:var(--gs-space-5);border:1px solid var(--gs-divider);border-radius:var(--gs-radius-md);padding:var(--gs-space-5);background:var(--gs-mist);grid-template-columns:2fr 1.4fr auto;display:grid;position:relative}.pe-feature-actions{gap:6px;display:flex;position:absolute;top:12px;right:12px}.pe-feature-actions button{background:var(--gs-ink);width:30px;height:30px;color:var(--gs-white);cursor:pointer;border:none;border-radius:50%}.pe-feature-eyebrow{text-transform:uppercase;letter-spacing:.05em;color:var(--gs-graphite);margin-bottom:4px;font-size:11px;display:block}.pe-feature-main h4{margin-bottom:var(--gs-space-3);font-size:16px}.pe-feature-main ol{color:var(--gs-fg-2);flex-direction:column;gap:4px;padding-left:18px;font-size:13px;display:flex}.pe-feature-side p{margin-bottom:var(--gs-space-3);font-size:13px}.pe-feature-hours{flex-direction:column;gap:8px;min-width:90px;display:flex}.pe-feature-hours div{flex-direction:column;align-items:center;display:flex}.pe-feature-hours span{color:var(--gs-graphite);text-transform:uppercase;font-size:10px}.pe-feature-hours strong{color:var(--gs-purple-dark);font-size:16px}@media (max-width:900px){.pe-shell{flex-direction:column}.pe-sidebar{flex:none;width:100%;position:static}.pe-sidebar ol{flex-direction:row;overflow-x:auto}.pe-feature-card{grid-template-columns:1fr}}.pe-team-grid{gap:var(--gs-space-4);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));display:grid}.pe-team-card{background:var(--gs-mist);border-radius:var(--gs-radius-md);padding:var(--gs-space-4);text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.pe-team-card strong{color:var(--gs-purple);font-size:24px}.pe-gantt{flex-direction:column;gap:10px;display:flex}.pe-gantt-row{align-items:center;gap:var(--gs-space-3);grid-template-columns:160px 1fr;display:grid}.pe-gantt-role{font-size:var(--gs-text-xs);text-transform:uppercase;color:var(--gs-graphite)}.pe-gantt-track{background:var(--gs-mist);border-radius:var(--gs-radius-pill);height:14px;position:relative;overflow:hidden}.pe-gantt-bar{background:var(--gs-purple);border-radius:var(--gs-radius-pill);position:absolute;top:0;bottom:0}.pe-final-estimate{background:var(--gs-lavender);border-radius:var(--gs-radius-lg);padding:var(--gs-space-6)}.pe-totals{gap:var(--gs-space-7);margin:var(--gs-space-4) 0 var(--gs-space-5);display:flex}.pe-totals span{font-size:var(--gs-text-xs);color:var(--gs-graphite);text-transform:uppercase;margin-bottom:4px;display:block}.pe-totals strong{color:var(--gs-ink);font-size:28px}.pe-totals strong.is-blurred{filter:blur(4px);-webkit-user-select:none;user-select:none}.pe-success h4{margin-bottom:6px}.pe-success p{color:var(--gs-fg-2);margin-bottom:var(--gs-space-4)}.pe-book-call-wrapper{background:var(--gs-bg-1,#fff);border-radius:var(--gs-radius-lg);padding:var(--gs-space-5);margin:var(--gs-space-5) 0}.pe-book-call{margin-top:var(--gs-space-3);border-radius:var(--gs-radius-md,12px);min-height:480px;overflow:hidden}.feature-modal,.lead-modal{padding:var(--gs-space-5);gap:var(--gs-space-4);flex-direction:column;display:flex}.feature-modal-field,.lead-modal-field{font-size:var(--gs-text-sm);flex-direction:column;gap:6px;display:flex}.feature-modal-field input,.feature-modal-field textarea,.lead-modal-field input{border:1px solid var(--gs-stroke-soft);border-radius:var(--gs-radius-md);font-family:inherit;font-size:var(--gs-text-sm);padding:10px 14px}.feature-modal-hours{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.feature-modal-hours label{text-align:center;flex-direction:column;gap:4px;font-size:11px;display:flex}.feature-modal-hours input{border:1px solid var(--gs-stroke-soft);text-align:center;border-radius:8px;padding:6px}.feature-modal-actions{justify-content:flex-end;gap:var(--gs-space-3);display:flex}.lead-modal{position:relative}.lead-modal-close{cursor:pointer;color:var(--gs-graphite);background:0 0;border:none;font-size:22px;position:absolute;top:0;right:0}.lead-modal-checkbox{font-size:var(--gs-text-xs);align-items:center;gap:8px;display:flex}.lead-modal-error{color:var(--gs-error);font-size:var(--gs-text-xs)}
