.custom-bundle-builder{max-width:900px;margin:0 auto;padding:0 20px}.builder-header{text-align:center;margin-bottom:48px}.bundle-builder-title{font-size:clamp(28px,5vw,40px);font-weight:700;margin-bottom:12px;line-height:1.2}.bundle-builder-subheading{font-size:clamp(16px,3vw,20px);color:#666;margin-bottom:32px;line-height:1.5}.stats-row{display:flex;justify-content:center;gap:32px;flex-wrap:wrap;margin-top:32px}.stat{text-align:center;min-width:120px}.stat-number{display:block;font-size:clamp(32px,5vw,48px);font-weight:700;color:#000;line-height:1}.stat-label{display:block;font-size:14px;color:#666;margin-top:8px;line-height:1.3}.bundle-form{background:#f9f9f9;padding:clamp(20px,4vw,40px);border-radius:12px;margin-bottom:48px}.form-section{margin-bottom:28px}.form-label{display:block;font-weight:600;margin-bottom:12px;font-size:16px;color:#333}.required{color:#d32f2f;font-weight:700}.radio-group{display:flex;gap:20px;flex-wrap:wrap}.radio-option{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:16px}.radio-option input[type="radio"]{width:20px;height:20px;cursor:pointer}.radio-option span{font-weight:500}.product-selector{position:relative;margin-bottom:20px;background:white;padding:20px;border-radius:8px;border:2px solid #e0e0e0;transition:border-color .3s}.product-selector:focus-within{border-color:#000}.selector-label{display:block;font-weight:600;margin-bottom:10px;color:#333;font-size:15px}.product-search{width:100%;padding:14px;border:1px solid #ccc;border-radius:6px;font-size:16px;transition:border-color .3s,box-shadow .3s}.product-search:focus{outline:0;border-color:#000;box-shadow:0 0 0 3px rgba(0,0,0,0.1)}.product-search::placeholder{color:#999}.product-dropdown{position:absolute;top:calc(100% - 20px);left:20px;right:20px;background:white;border:1px solid #ccc;border-top:0;border-radius:0 0 6px 6px;max-height:320px;overflow-y:auto;z-index:1000;box-shadow:0 4px 12px rgba(0,0,0,0.15)}.dropdown-item{padding:14px 16px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f0f0f0;transition:background-color .2s}.dropdown-item:hover{background:#f5f5f5}.dropdown-item:last-child{border-bottom:0}.dropdown-item.no-results{cursor:default;color:#999;font-style:italic}.dropdown-item.no-results:hover{background:white}.product-name{flex:1;font-size:15px;color:#333;padding-right:12px}.product-price{font-weight:600;color:#000;font-size:16px;white-space:nowrap}.selected-product-display{margin-top:12px}.selected-product-badge{display:inline-flex;align-items:center;gap:8px;background:#e8f5e9;color:#2e7d32;padding:8px 12px;border-radius:6px;font-size:14px;font-weight:500}.clear-selection{background:transparent;border:0;color:#2e7d32;font-size:24px;font-weight:700;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.clear-selection:hover{background:rgba(46,125,50,0.1)}.price-summary{background:#e8f5e9;padding:24px;border-radius:8px;border:2px solid #4caf50;margin-top:24px}.price-summary h3{margin-top:0;margin-bottom:16px;font-size:20px;color:#2e7d32}.selected-product-line{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #c8e6c9;font-size:15px}.selected-product-line:last-child{border-bottom:0}.price-breakdown{margin-top:20px;padding-top:16px;border-top:2px solid #4caf50}.price-line{display:flex;justify-content:space-between;padding:10px 0;font-size:16px}.price-line.bundle-price{font-size:24px;font-weight:700;color:#2e7d32;padding:12px 0}.price-line.savings{color:#d32f2f;font-weight:600;font-size:18px}.price-warning{margin-top:16px;padding:16px;background:#fff3cd;border:2px solid #d32f2f;border-radius:6px;color:#721c24;font-weight:600;font-size:15px;text-align:center}.field__input{width:100%;padding:14px;border:1px solid #ccc;border-radius:6px;font-size:16px;font-family:inherit;transition:border-color .3s,box-shadow .3s}.field__input:focus{outline:0;border-color:#000;box-shadow:0 0 0 3px rgba(0,0,0,0.1)}textarea.field__input{resize:vertical;min-height:80px}.checkbox-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:15px;line-height:1.5}.checkbox-label input[type="checkbox"]{margin-top:3px;width:20px;height:20px;cursor:pointer;flex-shrink:0}.submit-button{width:100%;padding:18px;background:#000;color:white;border:0;border-radius:8px;font-size:18px;font-weight:600;cursor:pointer;transition:background .3s,transform .1s;margin-top:24px}.submit-button:hover:not(:disabled){background:#333;transform:translateY(-2px)}.submit-button:active:not(:disabled){transform:translateY(0)}.submit-button:disabled{background:#ccc;cursor:not-allowed;transform:none}.form-footer{text-align:center;margin-top:20px;color:#666;font-size:14px;line-height:1.5}.success-message{background:#e8f5e9;padding:40px;border-radius:12px;text-align:center;border:2px solid #4caf50}.success-message h2{color:#2e7d32;margin-top:0;margin-bottom:20px;font-size:28px}.success-message p{font-size:16px;line-height:1.6;margin-bottom:16px}.success-steps{text-align:left;display:inline-block;margin:24px 0;padding-left:24px}.success-steps li{margin-bottom:12px;font-size:16px;line-height:1.5}.success-note{font-weight:600;color:#2e7d32;margin-top:20px}.how-it-works-section{margin:64px 0;padding:48px 24px;background:#fafafa;border-radius:12px}.how-it-works-section h2{text-align:center;font-size:32px;margin-bottom:48px;color:#000}.steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:32px;max-width:1000px;margin:0 auto}.step{text-align:center;padding:24px}.step-number{width:64px;height:64px;background:#000;color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;margin:0 auto 20px}.step h3{font-size:20px;margin-bottom:12px;color:#000}.step p{font-size:15px;line-height:1.6;color:#666}.faq-section{margin:48px 0;max-width:800px;margin-left:auto;margin-right:auto}.faq-section h2{text-align:center;font-size:32px;margin-bottom:32px;color:#000}.faq-section details{background:white;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:16px;padding:20px;cursor:pointer}.faq-section details[open]{border-color:#000}.faq-section summary{font-weight:600;font-size:17px;cursor:pointer;user-select:none;color:#000}.faq-section summary:hover{color:#333}.faq-section details p{margin-top:16px;margin-bottom:0;line-height:1.6;color:#666;font-size:15px}@media(max-width:768px){.custom-bundle-builder{padding:0 16px}.builder-header{margin-bottom:32px}.stats-row{gap:20px}.stat{min-width:100px}.bundle-form{padding:20px}.radio-group{flex-direction:column;gap:12px}.product-selector{padding:16px}.price-summary{padding:20px}.price-line.bundle-price{font-size:20px}.steps-grid{grid-template-columns:1fr;gap:24px}.how-it-works-section{padding:32px 20px;margin:48px 0}.how-it-works-section h2{font-size:28px;margin-bottom:32px}.faq-section h2{font-size:28px}.submit-button{font-size:16px;padding:16px}}@media(max-width:480px){.bundle-builder-title{font-size:24px}.bundle-builder-subheading{font-size:16px}.stats-row{flex-direction:column;gap:16px}.stat-number{font-size:36px}.product-dropdown{max-height:240px}.step-number{width:56px;height:56px;font-size:28px}}@media print{.product-dropdown{display:none !important}.submit-button{display:none}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}*:focus-visible{outline:2px solid #000;outline-offset:2px}@media(prefers-contrast:high){.product-selector{border-width:3px}.submit-button:disabled{opacity:.5}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}