.running-summary-bar{position:fixed;bottom:0;left:0;right:0;background:var(--color-white);border-top:2px solid var(--color-border);padding:10px 20px;display:flex;align-items:center;justify-content:center;gap:16px;font-size:var(--font-size-sm);font-weight:500;z-index:90;box-shadow:0 -2px 10px #0000001a}.running-summary-bar .bar-sqm{color:var(--color-primary);font-weight:700}.running-summary-bar .bar-color{color:var(--color-text)}.running-summary-bar .bar-price{color:var(--color-primary);font-weight:700}.running-summary-bar.hidden{display:none}.breakdown-table tr{border-bottom:1px solid var(--color-border)}.breakdown-table tr:last-child{border-bottom:2px solid var(--color-text);font-weight:700;font-size:var(--font-size-base)}.breakdown-table td{padding:10px 0}.breakdown-table td:last-child{text-align:right;font-weight:600;white-space:nowrap}.summary-price-header[data-astro-cid-dsjtswnx]{text-align:center;padding:var(--spacing-xl) 0 var(--spacing-lg)}.summary-price-label[data-astro-cid-dsjtswnx]{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 4px}.summary-price-value[data-astro-cid-dsjtswnx]{font-size:2.5rem;font-weight:800;color:var(--color-primary);margin:0 0 4px}.summary-price-vat[data-astro-cid-dsjtswnx]{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 4px}.summary-price-validity[data-astro-cid-dsjtswnx]{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:0}.summary-breakdown[data-astro-cid-dsjtswnx]{max-width:500px;margin:0 auto var(--spacing-xl)}.breakdown-table[data-astro-cid-dsjtswnx]{width:100%;border-collapse:collapse}@media(max-width:640px){.summary-price-value[data-astro-cid-dsjtswnx]{font-size:2rem}}.summary-color-card{border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm);text-align:center;cursor:pointer;transition:all .2s}.summary-color-card:hover{border-color:var(--color-primary)}.summary-color-card.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.summary-color-card .color-name{font-size:var(--font-size-xs);font-weight:600;display:block;margin-top:4px}.summary-color-card .color-diff{font-size:var(--font-size-xs);display:block;margin-top:2px;opacity:.8}.summary-color-card.active .color-diff{color:#fffc}.summary-color-grid[data-astro-cid-yucoxb5w]{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm)}@media(max-width:640px){.summary-color-grid[data-astro-cid-yucoxb5w]{grid-template-columns:repeat(2,1fr)}}.sizes-edit-table td{padding:6px 8px}.sizes-edit-table input{width:80px;padding:6px 10px;border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.sizes-edit-table input:focus{outline:none;border-color:var(--color-primary)}.sizes-edit-table .btn-remove-size{background:none;border:none;color:var(--color-error);cursor:pointer;font-size:18px;padding:4px}.sizes-edit-table[data-astro-cid-lu73gvl6]{width:100%;border-collapse:collapse;margin-bottom:var(--spacing-sm)}.sizes-edit-table[data-astro-cid-lu73gvl6] th[data-astro-cid-lu73gvl6]{text-align:left;font-size:var(--font-size-xs);color:var(--color-text-muted);padding:6px 8px;border-bottom:1px solid var(--color-border)}.summary-radio-option{display:flex;align-items:center;gap:var(--spacing-sm);padding:12px 16px;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.summary-radio-option:hover{border-color:var(--color-primary)}.summary-radio-option:has(input:checked){border-color:var(--color-primary);background:#259bd70d}.summary-radio-label{flex:1;font-weight:500}.summary-radio-price{font-weight:700;color:var(--color-primary)}.summary-shipping-options[data-astro-cid-zva4oxac]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.summary-free-shipping-badge[data-astro-cid-zva4oxac]{display:inline-block;background:var(--color-success);color:#fff;padding:4px 12px;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;margin-top:var(--spacing-sm)}.summary-free-shipping-badge[data-astro-cid-zva4oxac].hidden{display:none}.summary-address-form[data-astro-cid-zva4oxac]{margin-top:var(--spacing-md)}.summary-address-form[data-astro-cid-zva4oxac].hidden{display:none}.summary-screw-toggle[data-astro-cid-7jin3ouz]{padding:16px;background:var(--color-bg-light);border-radius:var(--radius-md)}.summary-checkbox-label[data-astro-cid-7jin3ouz]{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-weight:500}.summary-checkbox-label[data-astro-cid-7jin3ouz] input[data-astro-cid-7jin3ouz][type=checkbox]{width:20px;height:20px;accent-color:var(--color-primary)}.btn-success{background:#16a34a;color:#fff;border:none;font-weight:700}.btn-success:hover{background:#15803d}.btn-outline{background:#fff;color:var(--color-primary);border:2px solid var(--color-primary);font-weight:600;padding:12px 24px;border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.btn-outline:hover{background:var(--color-primary);color:#fff}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.summary-email-masked{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 0 var(--spacing-md)!important}.summary-cta-section[data-astro-cid-eqnrd7mr]{margin-top:var(--spacing-xl)}.summary-cta-buttons[data-astro-cid-eqnrd7mr]{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.summary-talk-section[data-astro-cid-eqnrd7mr]{display:flex;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--color-bg-light);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl);align-items:center}.summary-talk-avatar[data-astro-cid-eqnrd7mr]{width:80px;height:80px;border-radius:var(--radius-full);object-fit:cover;flex-shrink:0;border:3px solid var(--color-primary)}.summary-talk-content[data-astro-cid-eqnrd7mr] h4[data-astro-cid-eqnrd7mr]{margin:0 0 4px;font-size:var(--font-size-base)}.summary-talk-content[data-astro-cid-eqnrd7mr] p[data-astro-cid-eqnrd7mr]{margin:0 0 8px;font-size:var(--font-size-sm);color:var(--color-text-light)}.summary-talk-phone[data-astro-cid-eqnrd7mr]{font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary);text-decoration:none}.summary-talk-phone[data-astro-cid-eqnrd7mr]:hover{text-decoration:underline}.summary-send-quote[data-astro-cid-eqnrd7mr]{text-align:center;padding:var(--spacing-lg);background:var(--color-bg-light);border-radius:var(--radius-lg)}.summary-send-quote[data-astro-cid-eqnrd7mr] p[data-astro-cid-eqnrd7mr]:first-child{font-weight:600;margin:0 0 4px}@media(max-width:640px){.summary-cta-buttons[data-astro-cid-eqnrd7mr]{grid-template-columns:1fr 1fr}.summary-talk-section[data-astro-cid-eqnrd7mr]{flex-direction:column;text-align:center}}.calculator-page{--color-primary: #259bd7;--color-primary-dark: #1e7fb3;--color-primary-light: #4db5e8;--color-border: #d1d5db;--color-border-focus: #259bd7;--color-error: #dc2626;--color-error-light: #fef2f2;--color-success: #16a34a;--color-success-light: #f0fdf4;min-height:calc(100vh - 80px);background:var(--color-bg-light);padding:var(--spacing-sm) var(--spacing-md) var(--spacing-xl)}@media(max-width:640px){.calculator-page{padding:var(--spacing-sm) 20px var(--spacing-md);background:var(--color-white)}}.btn-reset-inline{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--color-text-muted);font-size:12px;cursor:pointer;opacity:.6;transition:opacity .2s;padding:4px 8px;white-space:nowrap}.btn-reset-inline:hover{opacity:1;color:var(--color-danger, #e53935)}@media(max-width:768px){.btn-reset-inline{display:none}}.progress-wrapper{width:100%;overflow-x:auto;overflow-y:hidden;margin-bottom:var(--spacing-md);-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.progress-wrapper::-webkit-scrollbar{display:none}.progress-container{display:flex;align-items:center;justify-content:center;min-width:max-content;padding:var(--spacing-sm) var(--spacing-lg);gap:0}.progress-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;cursor:pointer;opacity:.4;transition:all .2s ease;white-space:nowrap;min-width:80px}.progress-step:disabled{cursor:not-allowed}.progress-step:not(:disabled):hover{opacity:.8}.progress-step.completed{opacity:1;cursor:pointer}.progress-step.active{opacity:1}.step-number{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-border);color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-sm);transition:all .2s ease}.progress-step.completed .step-number{background:#a0d4a0;color:var(--color-white)}.progress-step.active .step-number{background:var(--color-primary);color:var(--color-white);box-shadow:0 0 0 4px #259bd740}.step-name{font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-muted);transition:color .2s ease}.progress-step.completed .step-name{color:#a0d4a0;font-weight:600}.progress-step.active .step-name{color:var(--color-primary);font-weight:600}.progress-line{width:40px;height:2px;background:var(--color-border);flex-shrink:0;transition:background .2s ease}.progress-line.completed{background:var(--color-primary)}@media(max-width:640px){.progress-container{justify-content:flex-start;padding:var(--spacing-sm) var(--spacing-md)}.progress-step{min-width:70px;padding:var(--spacing-xs) var(--spacing-sm)}.step-number{width:28px;height:28px}.progress-line{width:24px}}.calculator-form{max-width:800px;margin:0 auto}.step{background:var(--color-white);border-radius:var(--radius-lg);padding:calc(var(--spacing-xl) - 12px) var(--spacing-xl) var(--spacing-xl);box-shadow:var(--shadow-md)}@media(max-width:640px){.step{padding:0;border-radius:0;box-shadow:none;background:transparent}}.step.hidden{display:none}.step h2{text-align:center;margin-bottom:var(--spacing-lg);font-size:var(--font-size-xl)}@media(min-width:769px){.step h2{font-size:1.75rem;padding-left:5px;padding-right:5px}}.step-desc{text-align:center;color:var(--color-text-light);margin-bottom:var(--spacing-lg)}.shipping-info-box{background:var(--color-bg-light);border-left:3px solid var(--color-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);font-size:15px;line-height:1.5;color:#555}.shipping-info-box p{margin:0}.shipping-info-highlight{margin-top:6px!important;color:var(--color-success, #2e7d32)}.radio-grid{display:grid;gap:var(--spacing-md)}.radio-grid.cols-2{grid-template-columns:repeat(2,1fr)}.radio-grid.cols-3{grid-template-columns:repeat(3,1fr)}@media(max-width:640px){.radio-grid.cols-2,.radio-grid.cols-3{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.radio-grid .radio-card{padding:var(--spacing-sm)}}.roof-type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg);max-width:500px;margin:0 auto}.roof-type-card{flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md)}.roof-type-card .card-image{width:100px;height:100px;margin-bottom:var(--spacing-sm)}.roof-type-card .card-label,.roof-type-card .card-desc{text-align:center}@media(max-width:480px){.roof-type-grid{grid-template-columns:1fr;max-width:280px}}.phone-error-message{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);color:var(--color-error);margin-top:4px}.phone-error-message:before{content:"⚠";font-size:14px}.radio-card{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background:var(--color-bg-light);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;text-align:center}.radio-card:hover{border-color:var(--color-primary);background:#259bd70d;transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.radio-card:has(input:checked){border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white);transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.radio-card input{position:absolute;opacity:0;pointer-events:none}.card-image{width:100px;height:100px;border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--spacing-sm)}.card-image img{width:100%;height:100%;object-fit:cover}.card-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-sm);font-size:40px;border-radius:var(--radius-full)}.card-icon-yes{background:#22c55e1a;color:#22c55e}.card-icon-no{background:#ef44441a;color:#ef4444}.radio-card:has(input:checked) .card-icon-yes{background:#fff3;color:var(--color-white)}.radio-card:has(input:checked) .card-icon-no{background:#fff3;color:var(--color-white)}.radio-grid.cols-4{grid-template-columns:repeat(4,1fr)}.screw-options-grid{margin-bottom:var(--spacing-lg)}.screw-options-grid .screw-type-card{padding:var(--spacing-sm)}.screw-options-grid .card-image{width:100%;aspect-ratio:1;height:auto}.shipping-options-grid{margin-bottom:var(--spacing-lg)}.shipping-options-grid .shipping-card{padding:var(--spacing-sm);background:#f5f5f5}.shipping-options-grid .shipping-card:has(input:checked){border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white)}.shipping-options-grid .shipping-card .card-label{font-size:var(--font-size-lg);font-weight:700;white-space:nowrap}.shipping-options-grid .shipping-card .card-desc{font-size:var(--font-size-xs);color:var(--color-text-muted);line-height:1.4}.shipping-options-grid .card-image{width:100%;aspect-ratio:1;height:auto}@media(max-width:768px){.radio-grid.cols-4{grid-template-columns:repeat(2,1fr)}.shipping-options-grid{grid-template-columns:repeat(2,1fr)!important}.shipping-options-grid .shipping-card .card-label{white-space:normal}}.screw-quantity-section{max-width:400px;margin:0 auto}.screw-promo{text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-md);line-height:1.5}.screw-calculation{background:var(--color-bg-light);padding:var(--spacing-lg);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.screw-calc-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.screw-calc-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.screw-calc-value{font-weight:600;color:var(--color-primary)}.screw-quantity-input{margin-bottom:var(--spacing-md);text-align:center}.screw-quantity-input label{display:block;font-weight:500;margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm)}.quantity-controls{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);max-width:200px;margin:0 auto}.qty-btn{width:40px;height:40px;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white);font-size:var(--font-size-lg);font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.qty-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.qty-btn:active{transform:scale(.95);background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.quantity-controls input{width:60px;text-align:center;padding:var(--spacing-sm);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:600;-moz-appearance:textfield;appearance:textfield}.quantity-controls input::-webkit-outer-spin-button,.quantity-controls input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quantity-controls input:focus{outline:none;border-color:var(--color-primary)}.screw-price-row{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.screw-price-label{font-weight:600}.screw-price-value{font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary)}.card-label{font-weight:600;font-size:var(--font-size-sm)}.card-desc{font-size:var(--font-size-xs);opacity:.8;margin-top:var(--spacing-xs)}.card-price{font-size:var(--font-size-sm);font-weight:600;color:var(--color-primary);margin-top:var(--spacing-xs)}.radio-card:has(input:checked) .card-price{color:#fff}.color-card{position:relative;padding:var(--spacing-sm);gap:var(--spacing-xs);display:flex;flex-direction:column}.color-card .color-badge{position:absolute;top:6px;right:6px;background:#e53935;color:#fff;font-size:.65rem;font-weight:700;padding:3px 6px;border-radius:4px;z-index:1;text-transform:uppercase}.colors-disclaimer{text-align:center;font-size:.8rem;color:var(--color-text-muted);margin-top:12px;margin-bottom:0}.color-card .card-image{width:100%!important;height:auto!important;aspect-ratio:4/3;border-radius:var(--radius-md);overflow:hidden;flex-shrink:0}.color-card .card-image picture,.color-card .card-image img{width:100%;height:100%;object-fit:cover;display:block}.color-card .card-label{font-size:var(--font-size-sm);font-weight:600;margin:0;line-height:1.3}.color-card .card-ral{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:0;line-height:1.2}.radio-card:has(input:checked) .card-ral{color:#fffc}.color-card-other .card-icon-question{width:100%;aspect-ratio:4/3;border-radius:var(--radius-md);background:var(--color-bg-light);border:2px dashed var(--color-border);display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;color:var(--color-text-muted);transition:all .2s}.color-card-other:hover .card-icon-question{border-color:var(--color-primary);color:var(--color-primary)}.color-card-other:has(input:checked) .card-icon-question{background:#fff3;border-color:var(--color-white);color:var(--color-white)}.other-color-input{margin-top:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md)}.other-color-input.hidden{display:none}.step[data-step=color] .radio-grid{grid-template-columns:repeat(5,1fr)!important;gap:var(--spacing-md);align-items:stretch}.step[data-step=color] .color-card{height:100%;display:flex;flex-direction:column}.step[data-step=color] .color-card .card-label{margin-top:auto}@media(max-width:768px){.step[data-step=color] .radio-grid{grid-template-columns:repeat(2,1fr)!important}}.info-box{background:#259bd71a;border-left:4px solid var(--color-primary);padding:var(--spacing-md);border-radius:0 var(--radius-md) var(--radius-md) 0;margin-bottom:var(--spacing-lg)}.info-box p{margin:0;font-size:var(--font-size-sm)}.size-inputs{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.size-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md)}.size-row .input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.size-row .input-group label{font-weight:500;font-size:var(--font-size-sm)}.size-row .input-group input{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color .2s;width:100%;box-sizing:border-box}.size-row .input-group input:focus{outline:none;border-color:var(--color-primary)}.input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.input-group label{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text)}.input-group input,.input-group select,.input-group textarea{padding:14px 16px;border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--color-white);color:var(--color-text);transition:border-color .2s,box-shadow .2s,background-color .2s;width:100%}.input-group input::placeholder,.input-group textarea::placeholder{color:var(--color-text-muted)}.input-group input:hover,.input-group select:hover,.input-group textarea:hover{border-color:#9ca3af}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #259bd726}.input-group input.error,.input-group select.error,.input-group textarea.error{border-color:var(--color-error);background-color:var(--color-error-light)}.input-group input.error:focus,.input-group select.error:focus{box-shadow:0 0 0 3px #dc262626}.input-group input.valid,.input-group select.valid{border-color:var(--color-success)}.input-group .error-message{display:flex;align-items:center;gap:6px;font-size:var(--font-size-sm);color:var(--color-error);margin-top:4px}.input-group .error-message:before{content:"⚠";font-size:14px}.input-group input[readonly]{background-color:var(--color-bg-light);cursor:default}.input-group input[readonly]:hover{border-color:var(--color-border)}.input-group input.autofill-flash{animation:greenFlash 1s ease-out}@keyframes greenFlash{0%{background-color:#16a34a33}to{background-color:var(--color-white)}}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media(max-width:480px){.input-row{grid-template-columns:1fr}}.roof-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.roof-diagram{background:var(--color-bg-light);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm)}.roof-type-image{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.roof-type-image img{max-width:200px;width:100%;height:auto;object-fit:contain}.roof-type-label{font-weight:600;color:var(--color-primary);margin:0;font-size:var(--font-size-sm)}.roof-type-image.hidden{display:none}.roofs-container{display:flex;flex-direction:column;gap:var(--spacing-lg)}.roof-entry{border:2px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.roof-entry-header{background:var(--color-bg-light);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.roof-entry-title{font-weight:600;color:var(--color-primary)}.roof-entry-content{padding:var(--spacing-md)}.roof-entry-horizontal{display:grid;grid-template-columns:auto 1fr;gap:var(--spacing-lg);align-items:start}.roof-entry-horizontal .roof-diagram{margin-bottom:0;min-width:150px}.roof-entry-horizontal .roof-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}@media(max-width:640px){.roof-entry-horizontal{grid-template-columns:1fr}}.roof-type-selector{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.roof-type-option{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.roof-type-option:hover{border-color:var(--color-primary)}.roof-type-option:has(input:checked){border-color:var(--color-primary);background:#259bd71a}.roof-type-option input{position:absolute;opacity:0;pointer-events:none}.roof-type-option img{width:40px;height:40px;object-fit:contain}.roof-type-option span{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text)}.roof-cd-input.hidden{display:none}.btn-remove-roof{background:transparent;border:none;color:#dc2626;cursor:pointer;padding:var(--spacing-xs);font-size:var(--font-size-sm)}.btn-remove-roof:hover{color:#b91c1c}.roof-entry .roof-diagram{background:var(--color-bg-light);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm)}.roof-entry .roof-type-image{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.roof-entry .roof-type-image img{max-width:200px;width:100%;height:auto;object-fit:contain}.roof-entry .roof-type-label{font-weight:600;color:var(--color-primary);margin:0;font-size:var(--font-size-sm)}.roof-entry .roof-type-image.hidden{display:none}.roof-entry .roof-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.roof-entry .roof-inputs .input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.roof-entry .roof-inputs .input-group label{font-weight:500;font-size:var(--font-size-sm)}.roof-entry .roof-inputs .input-group input{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);width:100%;box-sizing:border-box}.roof-entry .roof-inputs .input-group input:focus{outline:none;border-color:var(--color-primary)}.fence-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.fence-mode-toggle{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.mode-btn{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;transition:all .2s}.mode-btn:hover{border-color:var(--color-primary)}.mode-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.fence-simple-mode.hidden,.fence-sides-mode.hidden{display:none}.fence-sides-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.fence-side-row{background:var(--color-bg-light);padding:var(--spacing-md);border-radius:var(--radius-md)}.fence-side-inputs{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media(max-width:480px){.fence-side-inputs{grid-template-columns:1fr}}.fence-side-row .input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.fence-side-row .input-group label{font-weight:500;font-size:var(--font-size-sm)}.fence-side-row .input-group input,.fence-side-row input.fence-side-input,.fence-side-row input.fence-height-input{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);width:100%;box-sizing:border-box}.fence-side-row .input-group input:focus,.fence-side-row input.fence-side-input:focus,.fence-side-row input.fence-height-input:focus{outline:none;border-color:var(--color-primary)}.fence-total{background:#259bd71a;padding:var(--spacing-md);border-radius:var(--radius-md);text-align:center;margin-top:var(--spacing-md)}.fence-total span{color:var(--color-primary);font-weight:700;font-size:var(--font-size-lg)}.btn-add-size{width:100%;padding:var(--spacing-sm);background:transparent;border:2px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-light);cursor:pointer;transition:all .2s}.btn-add-size:hover{border-color:var(--color-primary);color:var(--color-primary)}.contact-form{display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:480px;margin:0 auto;padding:var(--spacing-md) 0}.contact-form .input-row{gap:var(--spacing-lg)}.address-inputs{display:grid;grid-template-columns:120px 1fr;gap:var(--spacing-sm)}.address-inputs input:last-child{grid-column:1 / -1}.address-inputs-vertical{display:flex;flex-direction:column;gap:var(--spacing-lg)}.address-inputs-vertical .input-row{display:grid;grid-template-columns:140px 1fr;gap:var(--spacing-lg)}@media(max-width:640px){.address-inputs-vertical .input-row{grid-template-columns:1fr}}.postcode-group input{text-align:center;letter-spacing:.1em;font-weight:600}.city-group input{background:var(--color-bg-light)}.city-group input:not([readonly]){background:var(--color-white)}.checkbox-group{margin-top:var(--spacing-sm)}.checkbox-label{display:flex;align-items:flex-start;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-text-light)}.checkbox-label input[type=checkbox]{width:20px;height:20px;margin-top:2px;flex-shrink:0;accent-color:var(--color-primary);cursor:pointer}.checkbox-label a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.checkbox-label a:hover{color:var(--color-primary-dark)}.form-error-summary{background:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-error-summary h4{color:var(--color-error);font-size:var(--font-size-sm);font-weight:600;margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-xs)}.form-error-summary h4:before{content:"⚠"}.form-error-summary ul{margin:0;padding-left:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-error)}.form-error-summary li{margin-bottom:2px}.input-small{max-width:120px}.step-nav{display:flex;justify-content:space-between;margin-top:var(--spacing-xl);gap:var(--spacing-md)}.step-nav .btn{flex:1;max-width:200px;white-space:nowrap}.step-nav #submit-btn{flex:0 0 auto;max-width:none}@media(max-width:768px){.step-nav{gap:var(--spacing-sm)}.step-nav .btn{flex:1;max-width:none;min-height:48px;font-size:1rem}}.social-proof{text-align:center;margin-top:var(--spacing-xl);color:var(--color-text-muted)}.social-proof-text{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;margin:0;font-size:.9rem}.inline-stars{display:inline-flex;align-items:center;gap:2px;vertical-align:middle}.inline-stars svg{display:inline-block}.help-widget{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:100;opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.help-widget-hidden{opacity:0;transform:translateY(20px);pointer-events:none}.help-widget-btn{display:flex;align-items:center;gap:var(--spacing-sm);background:var(--color-white);padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) var(--spacing-sm);border-radius:var(--radius-full);box-shadow:0 4px 20px #00000026;text-decoration:none;color:var(--color-text);transition:all .2s ease}.help-widget-btn:hover{box-shadow:0 6px 24px #0003;transform:translateY(-2px)}.help-avatar{width:48px;height:48px;border-radius:var(--radius-full);object-fit:cover;border:2px solid var(--color-primary)}.help-text{display:flex;flex-direction:column}.help-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.help-phone{font-weight:700;color:var(--color-primary);font-size:var(--font-size-sm)}@media(max-width:640px){.help-widget{bottom:var(--spacing-md);right:var(--spacing-md)}.help-widget-btn{padding:var(--spacing-xs)}.help-text{display:none}.help-avatar{width:56px;height:56px}}.cm-warning{display:flex;align-items:center;gap:6px;background:#fff3cd;border:1px solid #ffc107;border-radius:var(--radius-md);padding:8px 12px;margin-top:8px;font-size:var(--font-size-sm)}.cm-warning-icon{flex-shrink:0}.cm-warning-text{color:#856404}.roof-entry:first-child .roof-type-selector{display:none}.roof-type-selector.hidden{display:none!important}
