/* Update 102 — Contact page */
.contact-hero{padding:52px 0 42px;background:linear-gradient(180deg,#f8fbff 0%,#edf5ff 100%);border-bottom:1px solid #dce7f5}
.contact-hero-inner{max-width:980px}
.contact-hero .breadcrumb{margin:0 0 22px}
.contact-hero .eyebrow{margin:0 0 10px;letter-spacing:.13em}
.contact-hero h1{margin:0 0 14px;color:#17284b;font-size:clamp(2.4rem,5vw,4.2rem);letter-spacing:-.045em;line-height:1.02}
.contact-hero p:last-child{max-width:760px;margin:0;color:#536b8c;font-size:1.08rem;line-height:1.7}
.contact-section{padding:46px 0 66px;background:#fff}
.contact-layout{max-width:1080px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}
.contact-form-card,.contact-side-card{border:1px solid #d7e4f3;border-radius:18px;background:#fff;box-shadow:0 12px 32px rgba(27,61,113,.07)}
.contact-form-card{padding:30px}
.contact-form-card h2,.contact-side-card h2{margin:0 0 8px;color:#17335f}
.contact-intro{margin:0 0 24px;color:#637998;line-height:1.55}
.contact-field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-field{margin-bottom:18px}
.contact-field label{display:block;margin:0 0 7px;color:#17335f;font-weight:800;font-size:.94rem}
.contact-field input,.contact-field textarea{width:100%;box-sizing:border-box;border:1px solid #bfcfe2;border-radius:9px;background:#fff;color:#17284b;font:inherit;line-height:1.45;outline:none;transition:border-color .14s ease,box-shadow .14s ease}
.contact-field input{height:48px;padding:0 13px}
.contact-field textarea{min-height:190px;padding:12px 13px;resize:vertical}
.contact-field input:focus,.contact-field textarea:focus{border-color:#2f6ff4;box-shadow:0 0 0 3px rgba(47,111,244,.12)}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#8a9bb3}
.contact-form-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:2px}
.contact-send{min-width:154px;border:0;cursor:pointer;font:inherit;font-weight:850}
.contact-form-actions span{color:#647b99;font-size:.88rem}
.contact-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important}
.contact-side-card{padding:26px}
.contact-side-card .eyebrow{margin:0 0 7px}
.contact-method{padding:17px 0;border-top:1px solid #e2eaf5}
.contact-method:first-of-type{margin-top:18px}
.contact-method strong{display:block;margin-bottom:5px;color:#17335f}
.contact-method a{font-weight:750}
.contact-method p{margin:0;color:#617795;line-height:1.55;font-size:.93rem}
.contact-note{margin-top:8px;padding:15px 16px;border-radius:12px;background:#eef5ff;color:#496584;font-size:.91rem;line-height:1.5}
.contact-alert{margin:0 0 22px;padding:14px 16px;border-radius:11px;line-height:1.5}
.contact-alert--success{border:1px solid #b9dfcf;background:#edf9f4;color:#17664f}
.contact-alert--error{border:1px solid #efc7c7;background:#fff3f3;color:#8a2b2b}
@media(max-width:860px){.contact-layout{grid-template-columns:1fr}.contact-side-card{max-width:none}.contact-hero{padding:38px 0 34px}}
@media(max-width:600px){.contact-field-row{grid-template-columns:1fr}.contact-form-card,.contact-side-card{padding:22px}.contact-section{padding:30px 0 48px}.contact-form-actions{align-items:flex-start;flex-direction:column}.contact-send{width:100%}}
