*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:#333;background:#f8f9fa;padding:20px;max-width:800px;margin:0 auto;min-height:100vh}.container{background:#fff;padding:40px;border-radius:12px;box-shadow:0 2px 20px rgba(0,0,0,.08);margin-top:30px;animation:fadeIn .3s ease-in}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}h1{color:#2c3e50;margin-bottom:30px;font-size:2.2em;font-weight:600;text-align:center;border-bottom:2px solid #e9ecef;padding-bottom:15px}h2{color:#34495e;margin:25px 0 15px;font-size:1.4em;font-weight:500}h3{color:#2c3e50;margin:20px 0 10px;font-size:1.2em;font-weight:500}p{margin-bottom:15px;color:#555}ul,ol{margin-bottom:15px;padding-left:20px}li{margin-bottom:8px;color:#555}a{color:#2980b9;text-decoration:none;transition:color .3s}a:hover{color:#1e5f8e;text-decoration:underline}.form-group{margin-bottom:20px}label{display:block;margin-bottom:8px;font-weight:500;color:#34495e}input[type="text"],input[type="email"],input[type="tel"],textarea{width:100%;padding:12px;border:2px solid #e9ecef;border-radius:6px;font-size:16px;transition:border-color .3s,box-shadow .3s;font-family:inherit}input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus,textarea:focus{outline:0;border-color:#3498db;box-shadow:0 0 0 3px rgba(52,152,219,.1)}input.error,textarea.error{border-color:#e74c3c}textarea{min-height:120px;resize:vertical}.char-counter{display:block;text-align:right;font-size:.85em;color:#7f8c8d;margin-top:5px}.required{color:#e74c3c}.error-message{display:block;color:#e74c3c;font-size:.85em;margin-top:5px;min-height:20px}.checkbox-group{display:flex;align-items:flex-start;margin:25px 0}.checkbox-group input[type="checkbox"]{margin-right:12px;margin-top:3px;cursor:pointer}.checkbox-group label{font-weight:400;line-height:1.4;cursor:pointer}.captcha-container{background:#f8f9fa;padding:20px;border-radius:8px;margin:20px 0;border-left:4px solid #e74c3c}.btn{background:#3498db;color:#fff;padding:15px 30px;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s;display:inline-block;text-align:center;position:relative;overflow:hidden}.btn:hover{background:#2980b9;transform:translateY(-1px);box-shadow:0 4px 12px rgba(52,152,219,.3)}.btn:active{transform:translateY(0)}.btn:disabled{background:#95a5a6;cursor:not-allowed;transform:none}.btn-primary{background:#3498db}.btn-loading{display:inline-flex;align-items:center;gap:10px}.spinner{animation:rotate 1s linear infinite;height:20px;width:20px}.spinner .path{stroke:#fff;stroke-linecap:round;animation:dash 1.5s ease-in-out infinite}@keyframes rotate{100%{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}100%{stroke-dasharray:90,150;stroke-dashoffset:-124}}.alert{padding:15px 20px;border-radius:6px;margin-bottom:20px;font-weight:500;animation:slideDown .3s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb;border-left:4px solid #28a745}.alert-error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-left:4px solid #dc3545}.contact-info{background:#f8f9fa;padding:20px;border-radius:8px;margin:20px 0;border-left:4px solid #3498db}.contact-info p{margin-bottom:8px}.legal-section{margin-top:25px;padding-top:25px;border-top:1px solid #e9ecef}.date{text-align:right;color:#7f8c8d;font-style:italic;margin-top:30px;font-size:.9em}.back-link-container{margin-top:30px;text-align:center}.back-link{display:inline-block;color:#2980b9;font-weight:500;padding:10px 20px;border:1px solid #3498db;border-radius:6px;transition:all .3s}.back-link:hover{background:#3498db;color:#fff;text-decoration:none;transform:translateY(-1px);box-shadow:0 4px 12px rgba(52,152,219,.3)}@media (max-width:600px){body{padding:15px}.container{padding:25px}h1{font-size:1.8em}.btn{width:100%}}