:root{--primary: #0ea5e9;--primary-dark: #0284c7;--bg: #f1f5f9;--card-bg: #ffffff;--text-main: #0f172a;--text-muted: #64748b;--border: #e2e8f0;--success: #22c55e;--error: #ef4444;--shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1)}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{background-color:var(--bg);color:var(--text-main);line-height:1.5;padding:20px;min-height:100vh}.container{max-width:600px;margin:0 auto;padding-bottom:100px}header{text-align:center;margin-bottom:32px}header h1{font-size:1.875rem;font-weight:800;color:var(--text-main);letter-spacing:-.025em}header p{color:var(--text-muted);margin-top:8px}.card{background:var(--card-bg);border-radius:16px;padding:24px;box-shadow:var(--shadow);border:1px solid var(--border)}.example-box{background:#0ea5e90d;border:1px dashed var(--primary);border-radius:12px;padding:16px;margin-bottom:24px;font-size:.875rem;color:var(--text-main);text-align:center}.example-box p{margin:0}.example-box strong{color:var(--primary)}.step{margin-bottom:32px}.step:last-child{margin-bottom:0}.step-title{display:flex;align-items:center;font-size:1rem;font-weight:700;margin-bottom:16px;color:var(--text-main)}.step-number{background:var(--primary);color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;margin-right:12px}label{display:block;margin-bottom:8px;font-size:.875rem;font-weight:500}select,input[type=text]{width:100%;padding:12px 16px;border-radius:8px;border:1px solid var(--border);background-color:#fff;font-size:1rem;transition:all .2s;outline:none;cursor:pointer}select{border-color:var(--primary);background-color:#0ea5e905;font-weight:500}select:hover{border-color:var(--primary-dark);background-color:#0ea5e90d}select:focus,input[type=text]:focus{border-color:var(--primary);box-shadow:0 0 0 3px #0ea5e91a}.segmented-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.segmented-card-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 12px;background:#fff;border:2px solid var(--border);border-radius:10px;font-size:.95rem;font-weight:600;color:var(--text-main);cursor:pointer;transition:all .2s ease;text-align:center;gap:4px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.segmented-card-btn:hover{border-color:var(--primary);background:#0ea5e90a}.segmented-card-btn.active{border-color:var(--primary);background:#0ea5e914;color:var(--primary-dark);box-shadow:0 0 0 2px #0ea5e933}.segmented-card-icon{font-size:1.25rem}.pill-group{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pill-btn{display:flex;align-items:center;justify-content:center;padding:12px 8px;background:#fff;border:2px solid var(--border);border-radius:10px;font-size:.9375rem;font-weight:600;color:var(--text-main);cursor:pointer;transition:all .2s ease;text-align:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.pill-btn:hover{border-color:var(--primary);background:#0ea5e90a}.pill-btn.active{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 4px 6px -1px #0ea5e940}.quick-presets-container{margin-top:10px;display:flex;flex-direction:column;gap:8px}.quick-presets-label{font-size:.8rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.quick-preset-chips{display:flex;flex-wrap:wrap;gap:8px}.chip-btn{padding:6px 12px;background:#fff;border:1px solid var(--border);border-radius:20px;font-size:.8125rem;font-weight:600;color:var(--text-main);cursor:pointer;transition:all .15s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.chip-btn:hover{border-color:var(--primary);color:var(--primary-dark)}.chip-btn.active{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff}.bifold-quick-add{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap}.bifold-add-btn{padding:6px 10px;background:#0ea5e914;border:1px solid rgba(14,165,233,.3);border-radius:6px;font-size:.78rem;font-weight:600;color:var(--primary-dark);cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.bifold-add-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.bifold-add-btn:active{transform:scale(.96)}.radio-group{display:grid;grid-template-columns:1fr 1fr;gap:12px}.radio-option{position:relative}.radio-option input{position:absolute;opacity:0;cursor:pointer}.radio-label{display:block;padding:12px;text-align:center;border:1px solid var(--border);border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.radio-option input:checked+.radio-label{border-color:var(--primary);background-color:#0ea5e90d;color:var(--primary)}.checkbox-group{display:flex;flex-direction:column;gap:12px}.checkbox-option{display:flex;align-items:center;padding:12px;border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all .2s}.checkbox-option:hover{border-color:var(--primary);background-color:#0ea5e905}.checkbox-option:has(input:checked){border-color:var(--primary);background-color:#0ea5e90d}.checkbox-option input{width:20px;height:20px;margin-right:12px;cursor:pointer}.checkbox-text{flex:1;font-weight:500}.checkbox-content{flex:1;display:flex;flex-direction:column}.checkbox-subtext{font-size:.75rem;color:var(--text-muted);font-weight:400}.specialist-controls{margin-top:4px}.specialist-frequency{padding:4px 8px;font-size:.75rem;border-radius:6px;border:1px solid var(--border);background:#fff;color:var(--text-muted);cursor:pointer;width:auto}.specialist-frequency:focus{border-color:var(--primary);outline:none}.info-tooltip-wrapper{position:relative;display:inline-flex;align-items:center;margin-right:8px;cursor:help}.info-icon{color:var(--text-muted);transition:color .2s}.info-tooltip-wrapper:hover .info-icon{color:var(--primary)}.tooltip-text{visibility:hidden;width:200px;background-color:var(--text-main);color:#fff;text-align:center;border-radius:6px;padding:8px;position:absolute;z-index:10;bottom:125%;left:50%;margin-left:-100px;opacity:0;transition:opacity .3s;font-size:.75rem;font-weight:400;line-height:1.4;pointer-events:none;box-shadow:var(--shadow-lg)}.tooltip-text:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:var(--text-main) transparent transparent transparent}.info-tooltip-wrapper:hover .tooltip-text{visibility:visible;opacity:1}.specialist-pricing-display{display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:2px}.checkbox-price,.specialist-price{font-size:.875rem;color:var(--text-muted);font-weight:600}.specialist-price{color:var(--primary);font-weight:700;font-size:.9375rem}.specialist-subsequent-price{font-size:.72rem;color:var(--text-muted);font-weight:500}.stepper-wrapper{display:flex;flex-direction:column;gap:8px}.stepper-label{font-size:.875rem;font-weight:500;color:var(--text-main);margin-bottom:0}.stepper-control{display:inline-flex;align-items:center;background:#fff;border:1px solid var(--border);border-radius:10px;padding:4px;width:100%;max-width:220px;box-shadow:0 1px 2px #0000000d}.stepper-btn{width:44px;height:44px;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:1.35rem;font-weight:700;color:var(--text-main);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.stepper-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.stepper-btn:active{transform:scale(.95)}.stepper-input{flex:1;border:none!important;text-align:center;font-size:1.25rem;font-weight:700;color:var(--primary-dark);padding:4px!important;outline:none;-moz-appearance:textfield}.stepper-input::-webkit-outer-spin-button,.stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.windows-info-note{margin-top:10px;padding:10px 14px;background:#f8fafc;border:1px solid var(--border);border-radius:8px;font-size:.8125rem;color:var(--text-muted);line-height:1.45}.windows-info-note strong{color:var(--text-main)}.windows-surcharge-alert{display:inline-block;margin-top:4px;font-weight:600;color:#0284c7}.discount-info-box{margin-top:20px;padding:16px;background:#f8fafc;border:1px solid var(--border);border-radius:12px}.discount-title{display:flex;align-items:center;font-size:.875rem;font-weight:700;color:var(--primary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.025em}.discount-list{list-style:none;padding:0;margin:0 0 12px}.discount-list li{font-size:.8125rem;color:var(--text-main);padding:4px 0;display:flex;justify-content:space-between;border-bottom:1px solid rgba(0,0,0,.03)}.discount-list li:last-child{border-bottom:none}.discount-note{font-size:.75rem;color:var(--text-muted);font-style:italic;margin:0}.postcode-input-wrapper{position:relative}.postcode-status{margin-top:8px;font-size:.875rem;min-height:1.25rem}.status-error{color:var(--error)}.status-success{color:var(--success)}.referral-section{margin-top:24px;text-align:center;padding:0 8px}.service-notes{margin-top:24px;padding:16px;background:#f0f9ff;border:1px solid #e0f2fe;border-radius:12px;font-size:.8125rem;color:#0369a1;text-align:center;box-shadow:var(--shadow)}.service-notes p{margin-bottom:8px}.service-notes p:last-child{margin-bottom:0}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;background:#fff;color:var(--primary);border:1px solid var(--primary);padding:12px 20px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s;width:100%;box-shadow:var(--shadow)}.btn-secondary:hover{background:#0ea5e90d;transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-primary{background:var(--primary);color:#fff;padding:12px 20px;border-radius:10px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow);font-size:.875rem;white-space:nowrap}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-large{width:100%;padding:16px;font-size:1.125rem;margin-top:16px}.btn-back{display:flex;align-items:center;gap:8px;background:none;border:none;color:var(--text-muted);font-size:.875rem;font-weight:500;cursor:pointer;padding:0;margin-bottom:16px;transition:color .2s}.btn-back:hover{color:var(--primary)}.form-header h2{font-size:1.75rem;margin-bottom:12px;color:var(--text-main)}.form-header p{color:var(--text-muted);font-size:.9375rem;line-height:1.5}.form-divider{margin:32px 0 20px;padding-bottom:8px;border-bottom:2px solid var(--border);font-size:1rem;font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:.05em}.info-banner{background:#f0f9ff;border:1px solid #e0f2fe;border-radius:12px;padding:16px;margin:24px 0}.info-banner p{font-size:.875rem;color:#0369a1;margin-bottom:8px}.info-banner p:last-child{margin-bottom:0}.form-grid{display:grid;grid-template-columns:1fr;gap:20px;margin-bottom:24px}@media(min-width:640px){.form-grid{grid-template-columns:1fr 1fr}}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-main)}.form-group input,.form-group select,.form-group textarea{padding:12px;border:1px solid var(--border);border-radius:8px;font-size:.9375rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary);outline:none}.char-counter{font-size:.75rem;color:var(--text-muted);text-align:right;margin-top:4px}.quote-summary{background:#f8fafc;border:1px solid var(--border);border-radius:12px;padding:20px;margin:32px 0}.quote-summary h3{font-size:1.125rem;margin-bottom:16px;color:var(--text-main)}.summary-section{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid var(--border)}.summary-section:last-of-type{border-bottom:none;margin-bottom:8px;padding-bottom:0}.summary-section-title{font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--primary);margin-bottom:10px}.summary-item{display:flex;justify-content:space-between;font-size:.9375rem;margin-bottom:8px;color:var(--text-muted)}.summary-item.highlight{font-weight:600;color:var(--text-main)}.summary-subtext{font-size:.78rem;color:var(--text-muted);margin-top:2px}.summary-total{margin-top:16px;padding-top:16px;border-top:2px solid var(--border);display:flex;flex-direction:column;gap:8px;font-weight:800;font-size:1.25rem;color:var(--primary)}.summary-total-row{display:flex;justify-content:space-between;align-items:center}.summary-total-subrow{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-weight:600;color:var(--text-muted)}.form-footer{margin-top:32px}.terms-checkbox{margin-bottom:24px;align-items:flex-start}.terms-checkbox .checkbox-text{font-size:.875rem}.form-disclaimer{font-size:.8125rem;color:var(--text-muted);line-height:1.5;margin-bottom:12px}.referral-link-container{margin-top:16px;animation:fadeIn .3s ease-out}.referral-text{font-size:.875rem;color:var(--text-muted);margin-bottom:12px}.copy-wrapper{display:flex;gap:8px}.copy-wrapper input{flex:1;background:var(--bg);border:1px solid var(--border);font-size:.875rem;color:var(--text-muted)}.btn-copy{background:var(--primary);color:#fff;border:none;padding:0 16px;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.btn-copy:hover{background:var(--primary-dark)}.copy-success{margin-top:8px;font-size:.75rem;color:var(--success);font-weight:600}.hidden{display:none!important}.price-box{margin-top:24px;background:var(--card-bg);padding:20px 24px;box-shadow:var(--shadow-lg);border:2px solid var(--primary);border-radius:16px;display:flex;flex-direction:column;gap:16px;z-index:100;transition:opacity .3s ease-in-out,transform .3s ease-in-out}.price-box-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--border)}.price-box-title{display:flex;align-items:center;gap:8px;font-size:1rem;font-weight:700;color:var(--text-main)}.price-breakdown-list{display:flex;flex-direction:column;gap:12px}.breakdown-card{background:#f8fafc;border:1px solid var(--border);border-radius:10px;padding:12px 14px}.breakdown-card-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--primary);margin-bottom:8px}.breakdown-line{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--text-main);padding:3px 0}.breakdown-line.extra{padding-left:12px;color:var(--text-muted);font-size:.8125rem}.breakdown-line.subtotal{margin-top:6px;padding-top:6px;border-top:1px dashed var(--border);font-weight:700;color:var(--text-main)}.breakdown-line .item-price{font-weight:600;color:var(--text-main)}.breakdown-badge{display:inline-block;background:#e0f2fe;color:#0369a1;font-size:.7rem;font-weight:700;padding:2px 6px;border-radius:4px;margin-left:6px}.breakdown-desc{font-size:.75rem;color:var(--text-muted);margin-top:2px;padding-left:12px}.price-box-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:12px;border-top:1px solid var(--border)}@media(max-width:580px){.price-box-footer{flex-direction:column;text-align:center}.price-box-footer .btn-primary{width:100%}}.price-box.hidden{opacity:0;transform:translateY(10px);pointer-events:none}.price-label{font-size:.875rem;color:var(--text-muted);font-weight:500}.price-value{font-size:1.5rem;font-weight:800;color:var(--primary);line-height:1.2}.price-subvalue{font-size:.8125rem;font-weight:500;color:var(--text-muted);margin-top:2px}@media(min-width:640px){body{padding:40px 20px}.price-box{margin-top:32px}.container{padding-bottom:40px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.card{animation:fadeIn .5s ease-out}
