*{margin:0;padding:0;box-sizing:border-box}html.preload *,html.preload *:before,html.preload *:after{animation-duration:0s!important;animation-delay:0s!important;transition-duration:0s!important;transition-delay:0s!important}body{font-family:Vazirmatn,sans-serif;min-height:100vh;color:#333;line-height:1.6;background:linear-gradient(-45deg,#667eea,#764ba2,#6366f1,#8b5cf6);background-size:400% 400%;animation:gradientShift 15s ease infinite;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.15) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(120,119,198,.15) 0%,transparent 50%);pointer-events:none;z-index:-1}body:after{content:"";position:fixed;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 70% 30%,rgba(102,126,234,.1) 0%,transparent 40%),radial-gradient(circle at 30% 70%,rgba(139,92,246,.1) 0%,transparent 40%);animation:float 20s ease-in-out infinite;pointer-events:none;z-index:-1}@keyframes float{0%,to{transform:rotate(0)}50%{transform:rotate(180deg)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.container{max-width:1200px;margin:0 auto;padding:20px;display:grid;grid-template-columns:1fr 2fr 1fr;gap:30px;align-items:start}.header{text-align:center;margin-bottom:30px;color:#fff;padding:40px 20px;position:relative;z-index:10;grid-column:1 / -1}.header:before{content:"";position:absolute;inset:0;background:#ffffff1a;backdrop-filter:blur(10px);border-radius:0 0 30px 30px;z-index:-1}.header h1{font-size:2.5rem;font-weight:700;margin-bottom:10px;color:#fff;text-shadow:2px 2px 8px rgba(0,0,0,.5),0 0 20px rgba(255,255,255,.3);position:relative;z-index:2}.header p{font-size:1.1rem;color:#fff;opacity:.95;text-shadow:1px 1px 4px rgba(0,0,0,.3)}.price-display{position:sticky;top:20px;z-index:100;grid-column:1;align-self:start}.price-card{background:#fffffff2;backdrop-filter:blur(15px);border-radius:20px;padding:25px;box-shadow:0 15px 40px #00000026,0 5px 15px #0000001a;text-align:center;border:1px solid rgba(255,255,255,.3)}.price-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px #0003,0 10px 25px #00000026}.price-card h3{color:#667eea;margin-bottom:15px;font-size:1.3rem}.total-price{font-size:2.5rem;font-weight:700;color:#2c3e50;margin-bottom:15px}.price-breakdown{font-size:.9rem;color:#666;text-align:right}.order-form{background:#fffffff2;backdrop-filter:blur(15px);border-radius:25px;padding:40px;box-shadow:0 20px 50px #0000001a,0 10px 25px #0000000d;margin-bottom:30px;grid-column:2;border:1px solid rgba(255,255,255,.3)}.order-form:hover{box-shadow:0 25px 60px #00000026,0 15px 35px #0000001a}.form-section{margin-bottom:40px;padding-bottom:30px;border-bottom:2px solid #f8f9fa}.form-section:last-of-type{border-bottom:none}.form-section h2{color:#2c3e50;font-size:1.5rem;margin-bottom:25px;padding-bottom:10px;border-bottom:3px solid #667eea;display:inline-block}.form-group{margin-bottom:25px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50}.form-group input[type=text],.form-group input[type=tel],.form-group textarea{width:100%;padding:12px 15px;border:2px solid #e1e8ed;border-radius:8px;font-size:1rem;font-family:inherit;transition:all .3s ease}.form-group input[type=text]:focus,.form-group input[type=tel]:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:15px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:15px}.checkbox-item,.radio-item{display:flex;align-items:flex-start;padding:15px;border:2px solid #e1e8ed;border-radius:10px;cursor:pointer;transition:all .3s ease;position:relative}.checkbox-item:hover,.radio-item:hover{border-color:#667eea;background-color:#f8f9ff}.checkbox-item input[type=checkbox],.radio-item input[type=radio]{display:none}.checkmark,.radiomark{width:28px;height:28px;border:2px solid #ddd;border-radius:50%;margin-left:12px;margin-top:2px;position:relative;flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(145deg,#fff,#f8f9fa);box-shadow:0 3px 6px #0000001a,inset 0 2px 4px #fffc;transform-origin:center;cursor:pointer}.checkbox-item input[type=checkbox]:checked+.checkmark,.radio-item input[type=radio]:checked+.radiomark{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;transform:rotate(360deg);box-shadow:0 5px 15px #667eeab3,inset 0 -3px 6px #0000004d;animation:checkSpin .6s cubic-bezier(.4,0,.2,1)}.checkbox-item input[type=checkbox]:checked+.checkmark:after,.radio-item input[type=radio]:checked+.radiomark:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:14px;height:14px;background-color:#fff;border-radius:50%;box-shadow:0 2px 4px #0006;animation:pulseCheck .4s cubic-bezier(.4,0,.2,1)}@keyframes pulseCheck{0%{transform:translate(-50%,-50%) rotate(0);opacity:0}60%{transform:translate(-50%,-50%) rotate(180deg);opacity:.9}to{transform:translate(-50%,-50%) rotate(360deg);opacity:1}}@keyframes checkSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.checkbox-item:hover .checkmark,.radio-item:hover .radiomark{border-color:#667eea;box-shadow:0 3px 8px #667eea4d,inset 0 1px 3px #fffc;background:linear-gradient(135deg,#f8f9fa,#fff)}.radio-content,.feature-content{flex:1}.radio-content strong,.feature-content strong{display:block;margin-bottom:5px;color:#2c3e50}.price-tag{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:20px;font-size:.85rem;font-weight:600;margin-top:5px}.radio-group-inline{display:flex;gap:20px;flex-wrap:wrap}.radio-item-inline{display:flex;align-items:center;cursor:pointer;padding:10px 15px;border:2px solid #e1e8ed;border-radius:8px;transition:all .3s ease}.radio-item-inline:hover{border-color:#667eea;background-color:#f8f9ff}.radio-item-inline input[type=radio]{display:none}.radio-item-inline .radiomark{margin-left:8px;margin-top:0}.form-actions{text-align:center;margin-top:40px;padding-top:30px;border-top:2px solid #f8f9fa}.submit-btn{background:linear-gradient(135deg,#667eea,#764ba2,#8b5cf6);color:#fff;border:none;padding:18px 45px;font-size:1.1rem;font-weight:600;border-radius:50px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 25px #667eea66,0 4px 15px #0000001a;position:relative;overflow:hidden;transform:translateZ(0)}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.submit-btn:hover:before{left:100%}.submit-btn:hover{transform:translateY(-3px);box-shadow:0 12px 35px #667eea80,0 8px 20px #00000026}.submit-btn:active{transform:translateY(0)}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080;backdrop-filter:blur(5px)}.modal-content{background:#fffffff2;backdrop-filter:blur(20px);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:0;border-radius:25px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 70px #00000040,0 10px 30px #00000026;border:1px solid rgba(255,255,255,.3);animation:modalSlideIn .4s cubic-bezier(.4,0,.2,1);scrollbar-width:thin;scrollbar-color:rgba(102,126,234,.5) transparent}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:transparent;border-radius:3px}.modal-content::-webkit-scrollbar-thumb{background:#667eea80;border-radius:3px}.modal-content::-webkit-scrollbar-thumb:hover{background:#667eeab3}@keyframes modalSlideIn{0%{opacity:0;transform:translate(-50%,-60%)}to{opacity:1;transform:translate(-50%,-50%)}}.modal-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:25px 30px;border-radius:20px 20px 0 0;text-align:center}.modal-header h3{margin:0;font-size:1.5rem}.modal-body{padding:30px}.modal-body p{font-size:1.1rem;margin-bottom:25px;color:#2c3e50;text-align:center}.order-summary{background:#f8f9fa;border-radius:10px;padding:20px;margin-top:20px}.order-summary h4{color:#2c3e50;margin-bottom:15px;border-bottom:2px solid #667eea;padding-bottom:8px}.modal-footer{padding:20px 30px 30px;text-align:center}.close-btn{background:#667eea;color:#fff;border:none;padding:12px 30px;font-size:1rem;border-radius:25px;cursor:pointer;transition:all .3s ease}.close-btn:hover{background:#5a6fd8;transform:translateY(-1px)}.disabled{opacity:.5;pointer-events:none}@media (max-width: 768px){.container{padding:15px;display:flex;flex-direction:column;grid-template-columns:none;gap:20px}.price-display{position:fixed;top:auto;bottom:0;left:0;width:100%;padding:10px;background:#fffffffa;backdrop-filter:blur(15px);box-shadow:0 -8px 25px #00000026;grid-column:auto;order:2;z-index:1000;max-height:45vh;overflow-y:auto;transition:all .3s ease;border-top:2px solid rgba(102,126,234,.2)}.order-form{grid-column:auto;order:1;margin-bottom:0;padding-bottom:250px}.header{grid-column:auto;order:0}.price-card{margin:0;border-radius:10px;max-height:none;padding:15px}.header h1{font-size:2rem}.order-form{padding:25px 20px}.features-grid{grid-template-columns:1fr}.radio-group-inline{flex-direction:column;gap:10px}.total-price{font-size:2rem}.modal-content{width:95%;max-width:95vw;max-height:95vh;top:50%;left:50%;transform:translate(-50%,-50%)}.modal-header,.modal-body,.modal-footer{padding:20px}}@media (max-width: 480px){.header h1{font-size:1.5rem}.header p{font-size:1rem}.order-form{padding:20px 15px}.form-section h2{font-size:1.3rem}.checkbox-item,.radio-item{padding:12px}.submit-btn{padding:12px 30px;font-size:1rem}}.text-center{text-align:center}.mb-20{margin-bottom:20px}.mt-20{margin-top:20px}.error-modal{border:3px solid #e74c3c}.error-content{text-align:center;padding:30px}.error-icon{font-size:3rem;margin-bottom:20px}.error-content h3{color:#e74c3c;margin-bottom:15px;font-size:1.3rem}.error-content p{color:#2c3e50;margin-bottom:25px;font-size:1rem;line-height:1.5}.retry-btn{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;border:none;padding:12px 30px;font-size:1rem;font-weight:600;border-radius:25px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #e74c3c4d}.retry-btn:hover{background:linear-gradient(135deg,#c0392b,#a93226);transform:translateY(-1px);box-shadow:0 6px 20px #e74c3c66}.error-modal .close-btn{position:absolute;top:15px;left:20px;background:none;border:none;font-size:1.5rem;color:#999;cursor:pointer;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.error-modal .close-btn:hover{background:#f1f1f1;color:#666}.price-update{animation:pricePulse .5s ease}@keyframes pricePulse{0%{opacity:1}50%{opacity:.9}to{opacity:1}}.field-error{border-color:#e74c3c!important;box-shadow:0 0 0 3px #e74c3c1a!important;animation:fieldError .3s ease}.valid{border-color:#28a745!important;box-shadow:0 0 0 3px #28a7451a!important}.invalid{border-color:#dc3545!important;box-shadow:0 0 0 3px #dc35451a!important}@keyframes fieldError{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.error-message{color:#e74c3c;font-size:.85rem;margin-top:5px;padding:5px 10px;background:#e74c3c1a;border-radius:4px;border-left:3px solid #e74c3c;animation:errorSlide .3s ease}@keyframes errorSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.radio-group-error{border:2px solid #e74c3c;border-radius:8px;padding:10px;background:#e74c3c0d}.radio-error{margin-top:10px;text-align:center}.loading{position:relative;color:transparent!important;pointer-events:none;overflow:hidden}.loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.breakdown-empty{text-align:center;padding:20px;color:#999;font-style:italic}.breakdown-group{margin-bottom:20px;border-radius:8px;background:#667eea0d;padding:15px}.breakdown-group-title{color:#667eea;font-size:.9rem;font-weight:600;margin-bottom:10px;padding-bottom:5px;border-bottom:1px solid rgba(102,126,234,.2)}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:.85rem;transition:all .2s ease}.breakdown-item:hover{background:#667eea1a;border-radius:4px;padding-left:8px;padding-right:8px}.breakdown-total{margin-top:15px;padding-top:15px;border-top:2px solid #667eea}.total-item{font-weight:700;font-size:1rem;color:#2c3e50}.total-item .item-price{color:#667eea;font-size:1.1rem}.confetti{position:fixed;width:10px;height:10px;background:#667eea;z-index:1000;border-radius:50%;animation:confetti-fall 3s linear infinite;pointer-events:none}@keyframes confetti-fall{0%{transform:translateY(-100vh) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(360deg);opacity:0}}.modal-show{animation:modalFadeIn .4s cubic-bezier(.4,0,.2,1)}.modal-hide{animation:modalFadeOut .3s cubic-bezier(.4,0,.2,1)}@keyframes modalFadeIn{0%{opacity:0;transform:translate(-50%,-55%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes modalFadeOut{0%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-55%)}}.error-header{background:linear-gradient(135deg,#dc3545,#c82333)!important}.error-actions{display:flex;gap:15px;justify-content:center;margin-top:20px}.contact-btn{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:12px 24px;border-radius:25px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block}.contact-btn:hover{transform:translateY(-1px);box-shadow:0 4px 15px #28a7454d}.contact-info .info-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:10px}.info-item{background:#f8f9fa;padding:10px;border-radius:8px;border-left:3px solid #667eea}.project-details{background:#f8f9fa;padding:15px;border-radius:8px;margin-top:10px}.pricing-info{text-align:center}.final-price-display{font-size:2rem;font-weight:700;color:#667eea;margin:15px 0;padding:20px;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:15px;border:2px solid rgba(102,126,234,.2)}.price-note{font-size:.85rem;color:#666;font-style:italic}.features-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.feature-tag{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:4px 12px;border-radius:15px;font-size:.8rem;font-weight:500}.form-section,.section-visible{opacity:1;transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}input:focus-visible,textarea:focus-visible,button:focus-visible,.radio-item:focus-within,.checkbox-item:focus-within{outline:2px solid #667eea;outline-offset:2px}@media (max-width: 768px){.contact-info .info-grid{grid-template-columns:1fr}.error-actions{flex-direction:column;align-items:center}.final-price-display{font-size:1.5rem;padding:15px}.price-display{scrollbar-width:thin;scrollbar-color:rgba(102,126,234,.5) transparent}.price-display::-webkit-scrollbar{width:4px}.price-display::-webkit-scrollbar-track{background:transparent}.price-display::-webkit-scrollbar-thumb{background:#667eea80;border-radius:2px}.price-display::-webkit-scrollbar-thumb:hover{background:#667eeab3}.price-breakdown{font-size:.8rem;max-height:25vh;overflow-y:auto}}
