.contact-page{background:var(--bg);min-height:100vh}.contact-section{max-width:1100px;margin:0 auto;padding:7rem 2rem 4rem}.contact-inner{grid-template-columns:1fr 1.2fr;align-items:start;gap:3rem;display:grid}.contact-h1{font-family:var(--font-display);color:var(--navy);letter-spacing:-.03em;margin-bottom:1rem;font-size:clamp(2rem,4vw,2.75rem);font-weight:800;line-height:1.1}.contact-h1-accent{color:var(--teal)}.contact-desc{color:var(--text-muted);margin-bottom:2rem;font-size:1rem;line-height:1.7}.contact-cards{flex-direction:column;gap:1rem;display:flex}.info-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow);align-items:flex-start;gap:1rem;padding:1.25rem;transition:all .2s;display:flex}.info-card:hover{border-color:var(--teal);transform:translate(4px)}.info-card-icon{flex-shrink:0;font-size:1.5rem}.info-card h3{color:var(--navy);margin-bottom:.2rem;font-size:.95rem;font-weight:700}.info-link{color:var(--teal);font-size:.88rem;transition:color .2s}.info-link:hover{color:var(--teal-hover);text-decoration:underline}.info-detail{color:var(--text-dim);font-size:.85rem;line-height:1.5}.contact-form-wrapper{min-height:400px}.contact-form{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:2rem}.form-heading{color:var(--navy);margin-bottom:1.5rem;font-size:1.3rem;font-weight:800}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.contact-field{margin-bottom:1.15rem}.contact-field label{color:var(--text-muted);margin-bottom:.35rem;font-size:.8rem;font-weight:600;display:block}.contact-field input,.contact-field select,.contact-field textarea{width:100%;font-size:.9rem;font-family:var(--font-body);color:var(--text);background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius-sm);outline:none;min-height:48px;padding:.7rem 1rem;transition:all .2s}.contact-field input::placeholder,.contact-field textarea::placeholder{color:var(--text-dim)}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #00c2a81f}.contact-field select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748B' d='M6 8.825L1.175 4 2.238 2.938 6 6.7l3.763-3.763L10.825 4z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;padding-right:2.5rem}.contact-field textarea{resize:vertical;min-height:100px}.contact-submit{border-radius:var(--radius-md);background:var(--teal);width:100%;color:var(--white);font-size:1rem;font-weight:700;font-family:var(--font-body);cursor:pointer;border:none;justify-content:center;align-items:center;gap:.5rem;min-height:48px;margin-top:.5rem;padding:.85rem;transition:all .2s;display:flex;box-shadow:0 4px 16px #00c2a840}.contact-submit:hover{background:var(--teal-hover);transform:translateY(-1px)}.contact-submit:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.contact-success-card{text-align:center;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:3rem 2rem;animation:.4s fadeUp}.success-icon{margin-bottom:1rem;font-size:3rem}.contact-success-card h2{color:var(--navy);margin-bottom:.75rem;font-size:1.5rem;font-weight:800}.contact-success-card p{color:var(--text-muted);margin-bottom:.5rem;font-size:.95rem;line-height:1.6}.success-email{margin-top:1rem}.success-email a{color:var(--teal);font-weight:600}.success-email a:hover{text-decoration:underline}.contact-btn-back{border-radius:var(--radius-sm);border:1.5px solid var(--border);color:var(--navy);margin-top:1.5rem;padding:.65rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-block}.contact-btn-back:hover{border-color:var(--navy);background:var(--bg-alt)}.ent-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin;display:inline-block}@media (max-width:768px){.contact-inner{grid-template-columns:1fr;gap:2rem}.form-row{grid-template-columns:1fr}.contact-section{padding:6rem 1.5rem 3rem}}
