.contact-page{width:100%;min-height:100vh;color:#222;display:flex;flex-direction:column}.container{width:95%;max-width:1250px;margin:0 auto;padding:60px 0}.page-header{text-align:center;margin-bottom:50px}.page-header h1{font-size:2.5rem;font-weight:700;color:#333}.page-header p{font-size:1.125rem;color:#333;margin-top:10px}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));grid-gap:40px;gap:40px}.contact-form{background:#fff;padding:1rem;border-radius:10px}.contact-form h2{font-size:1.5rem;font-weight:500;line-height:1.25rem;margin-bottom:1.5rem;letter-spacing:-.025em}.contact-form form{display:flex;flex-direction:column;gap:20px}.contact-form .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:20px;gap:20px}.contact-form label{display:inline-block;font-weight:500;font-size:.875rem;line-height:1.25rem;padding-bottom:.5rem;color:#444}.contact-form input,.contact-form textarea{width:100%;padding:12px 15px;font-size:1rem;line-height:1.5rem;font-weight:400;border:1px solid #e5e7eb;border-radius:6px;outline:none;transition:all .3s ease;background-color:#f9f9f9}.contact-form input:focus,.contact-form textarea:focus{border-color:#007bff;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.contact-form textarea{min-height:120px;resize:vertical}.contact-form button{width:100%;padding:14px 0;background:#007bff;color:#fff;border:none;border-radius:6px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:all .3s ease}.contact-form button:hover{background:#0056b3}.contact-info{display:flex;flex-direction:column;gap:30px}.contact-info .map-box{width:100%;height:320px;border-radius:10px;overflow:hidden;box-shadow:0 3px 10px rgba(0,0,0,.1)}.contact-info .map-box img{width:100%;height:100%;object-fit:cover}.contact-info .info-blocks{display:flex;flex-direction:column;gap:20px}.contact-info .info-blocks .info-item{display:flex;align-items:flex-start;gap:15px}.contact-info .info-blocks .info-item .icon{width:45px;height:45px;display:flex;align-items:center;justify-content:center;background:#e7f0ff;border-radius:8px}.contact-info .info-blocks .info-item h3{font-size:1rem;font-weight:500;margin-bottom:5px}.contact-info .info-blocks .info-item p{font-size:.95rem;color:#666}@media(max-width:768px){.contact-form{padding:25px}.page-header h1{font-size:2rem}}