.contact-page{color:#0a0a0a;min-height:100vh;font-size:14px;line-height:1.5}.contact-hero{background:#e8f0ec;padding:96px 48px 112px;position:relative;overflow:hidden}.contact-hero-inner{max-width:1280px;margin:0 auto;position:relative}.contact-eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#5bb85f;margin-bottom:28px;font-size:12px;font-weight:600}.contact-title{letter-spacing:-.025em;color:#0a0a0a;margin-bottom:24px;font-size:72px;font-weight:700;line-height:1}.contact-title em{color:#1b5e63;font-style:italic}.contact-sub{color:#0a0a0ab3;max-width:640px;margin:0;font-size:19px;line-height:1.55}.contact-hero-dot{background:#5bb85f;border-radius:50%;width:14px;height:14px;position:absolute;bottom:-20px;right:40px}.contact-content{background:#fff}.contact-grid{grid-template-columns:1.3fr 1fr;align-items:flex-start;gap:80px;max-width:1280px;margin:0 auto;padding:80px 48px 96px;display:grid}.contact-form-row{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}.contact-field{flex-direction:column;margin-bottom:24px;display:flex}.contact-field:last-of-type{margin-bottom:0}.contact-label{color:#0a0a0a;margin-bottom:8px;font-size:14px;font-weight:600}.contact-label-opt{color:#0a0a0a80;margin-left:4px;font-size:13px;font-weight:400}.contact-asterisk{color:#b85b7a}.contact-input,.contact-textarea{color:#0a0a0a;box-sizing:border-box;background:#fff;border:1px solid #1b5e632e;border-radius:8px;outline:none;width:100%;padding:14px 16px;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.contact-input::placeholder,.contact-textarea::placeholder{color:#0a0a0a66}.contact-input:focus,.contact-textarea:focus{border-color:#1b5e63;box-shadow:0 0 0 3px #1b5e631a}.contact-textarea{resize:vertical;min-height:140px;margin-bottom:32px;line-height:1.6}.contact-submit{color:#fff;cursor:pointer;background:#1b5e63;border:none;border-radius:10px;align-items:center;gap:8px;padding:16px 32px;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s;display:inline-flex}.contact-submit:hover:not(:disabled){background:#0f1f1f}.contact-submit:disabled{opacity:.65;cursor:default}.contact-error{color:#b85b7a;margin-bottom:16px;font-size:13px}.contact-success{background:#f0f5f2;border:1px solid #d8e2dc;border-radius:14px;flex-direction:column;justify-content:center;align-items:flex-start;min-height:320px;padding:48px 40px;display:flex}.contact-success-icon{background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:20px;display:flex}.contact-success-title{color:#0a0a0a;letter-spacing:-.01em;margin-bottom:8px;font-size:20px;font-weight:700}.contact-success-sub{color:#6b7570;font-size:15px;line-height:1.6}.contact-apply-card{background:#e8f0ec;border-radius:16px;margin-bottom:32px;padding:36px}.contact-apply-heading{letter-spacing:-.01em;color:#0a0a0a;margin-bottom:16px;font-size:22px;font-weight:700}.contact-apply-body{color:#0a0a0ab3;margin-bottom:24px;font-size:15px;line-height:1.6}.contact-apply-btn{color:#1b5e63;background:#fff;border:1px solid #1b5e6333;border-radius:8px;align-items:center;gap:6px;padding:14px 24px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.contact-apply-btn:hover{color:#fff;background:#1b5e63}.contact-details{border-top:1px solid #1b5e631f;padding-top:32px}.contact-detail-row{align-items:flex-start;gap:16px;margin-bottom:28px;display:flex}.contact-detail-row:last-child{margin-bottom:0}.contact-detail-icon{background:#e8f0ec;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.contact-detail-label{color:#1b5e63;letter-spacing:.04em;margin-bottom:6px;font-size:13px;font-weight:600}.contact-detail-primary{color:#0a0a0a;margin-bottom:2px;font-size:15px;font-weight:600}.contact-detail-secondary{color:#0a0a0a99;font-size:14px}.contact-detail-link{color:#0a0a0a;margin-bottom:2px;font-size:15px;font-weight:600;text-decoration:none;display:block}.contact-detail-link:hover{color:#1b5e63}@media (max-width:900px){.contact-hero{padding:80px 20px 72px}.contact-title{font-size:48px}.contact-sub{font-size:16px}.contact-grid{grid-template-columns:1fr;gap:48px;padding:48px 20px 64px}.contact-form-row{grid-template-columns:1fr}}