.contact-header{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}.contact-header h1{font-size:2.5rem;margin-bottom:1rem}.contact-header p{font-size:1.2rem;opacity:.9}.contact-container{max-width:1200px;margin:0 auto;padding:2rem;display:grid;grid-template-columns:1fr 2fr;gap:3rem}.form-group,.info-item{margin-bottom:1.5rem}.contact-form,.contact-info{background:#fff;padding:2rem;border-radius:10px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.contact-form h2,.contact-info h2{color:var(--primary-color);margin-bottom:2rem;padding-bottom:.5rem;border-bottom:2px solid var(--secondary-color)}.info-item{display:flex;align-items:flex-start}.info-item i{font-size:1.5rem;color:var(--secondary-color);margin-right:1rem;margin-top:.3rem}.info-item h3{color:var(--primary-color);margin-bottom:.3rem}.info-item p{color:#666}.form-group label{display:block;margin-bottom:.5rem;color:var(--primary-color);font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.8rem;border:1px solid #ddd;border-radius:5px;font-size:1rem;color:var(--text-color);transition:border-color .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--secondary-color);outline:0;outline:3px solid var(--accent-color);outline-offset:2px}.error-message{color:#e74c3c;font-size:.9rem;margin-top:.3rem;display:none}.submit-btn{background-color:var(--accent-color);color:#fff;border:none;padding:1rem 2rem;border-radius:5px;font-size:1.1rem;font-weight:500;cursor:pointer;transition:background-color .3s;width:100%}.submit-btn:hover{background-color:#e67e22}.form-group input:invalid,.form-group select:invalid,.form-group textarea:invalid{border-color:var(--primary-color)}.form-group input:valid,.form-group select:valid,.form-group textarea:valid{border-color:#2ecc71}@media (max-width:768px){.contact-header h1{font-size:2rem}.contact-header p{font-size:1rem}.contact-container{grid-template-columns:1fr;padding:1rem;gap:2rem}.contact-form,.contact-info{padding:1.5rem}}@media print{.contact-form,.contact-info{box-shadow:none;border:1px solid #ddd}.submit-btn{display:none}}