.page-hero--contact{background:linear-gradient(135deg,#ecfdf5,#d1fae5)}.contact__main{padding:4rem 2rem}.contact__grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;grid-gap:4rem;gap:4rem;align-items:flex-start}.contact__info h2{font-size:1.6rem;font-weight:700;color:var(--color-text);margin-bottom:2rem}.contact__info-items{display:flex;flex-direction:column;gap:1.5rem}.contact__info-item{display:flex;gap:1rem;align-items:flex-start}.contact__info-icon{font-size:1.4rem;color:var(--color-primary);margin-top:.15rem;flex-shrink:0}.contact__info-label{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-light);margin-bottom:.25rem}.contact__info-value{font-size:1rem;color:var(--color-text);text-decoration:none;line-height:1.5}a.contact__info-value:hover{color:var(--color-primary)}.contact__hours{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #eee}.contact__hours h3{font-size:1.05rem;font-weight:700;color:var(--color-text);margin-bottom:.5rem}.contact__hours p{font-size:.95rem;color:var(--color-text-light);line-height:1.6}.contact__form-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:2.5rem;box-shadow:0 4px 20px rgba(0,0,0,.06)}.contact__form-title{font-size:1.4rem;font-weight:700;color:var(--color-text);margin-bottom:1.5rem}.contact__form{display:flex;flex-direction:column;gap:1.25rem}.contact__form-group label{display:block;font-size:.9rem;font-weight:600;color:var(--color-text);margin-bottom:.4rem}.contact__form-group input,.contact__form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;font-family:inherit;transition:border-color .2s;box-sizing:border-box;resize:vertical}.contact__form-group input:focus,.contact__form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(30,64,175,.08)}.contact__submit-btn{background:var(--color-primary);color:#fff;padding:.85rem;border:none;border-radius:10px;font-weight:600;font-size:1.05rem;cursor:pointer;transition:background .2s}.contact__submit-btn:hover{background:var(--color-primary-light)}.contact__submit-btn:disabled{opacity:.7;cursor:not-allowed}.contact__success{background:#ecfdf5;color:var(--color-secondary-green)}.contact__error,.contact__success{padding:.75rem 1rem;border-radius:8px;font-weight:600;text-align:center}.contact__error{background:#fef2f2;color:#dc2626}@media (max-width:900px){.contact__grid{grid-template-columns:1fr;gap:2rem}}