/* Contact presentation is loaded only for the selected contact template. */
body.cr-contact-page #content > .ast-container { width:100%; max-width:none; padding:0; display:block; }
body.cr-contact-page #primary.cr-contact-main { float:none; width:100%; margin:0; padding:0; border:0; }
#cr-contact { color:#17263c; background:#fff; font:16px/1.7 -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif; -webkit-font-smoothing:antialiased; }
#cr-contact *, #cr-contact *::before, #cr-contact *::after { box-sizing:border-box; }
#cr-contact .cr-contact-wrap { width:min(1040px,calc(100% - 64px)); margin-inline:auto; }
#cr-contact .cr-contact-hero { padding:80px 0 48px; max-width:780px; }
#cr-contact .cr-contact-eyebrow { color:#3156aa; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; margin:0 0 20px; }
#cr-contact h1 { color:#17263c; font-size:clamp(36px,4.5vw,56px); line-height:1.12; letter-spacing:-.045em; font-weight:650; margin:0 0 24px; }
#cr-contact .cr-contact-intro { color:#526176; font-size:20px; line-height:1.6; max-width:660px; margin:0; }
#cr-contact .cr-contact-options { display:grid; grid-template-columns:1fr 1fr; gap:24px; padding-bottom:56px; }
#cr-contact .cr-contact-option { display:flex; flex-direction:column; align-items:flex-start; padding:32px; background:#f5f8fd; border:1px solid #e3eaf5; border-radius:20px; }
#cr-contact .cr-contact-option-email { background:#fff; }
#cr-contact .cr-contact-icon { width:28px; height:28px; color:#3156aa; margin-bottom:26px; }
#cr-contact h2 { color:#17263c; font-size:25px; line-height:1.3; letter-spacing:-.025em; font-weight:650; margin:0 0 12px; }
#cr-contact .cr-contact-option p { color:#526176; margin:0 0 26px; }
#cr-contact .cr-contact-option .cr-contact-small { font-size:14px; margin:18px 0 0; }
#cr-contact a { text-decoration:none; box-shadow:none; }
#cr-contact .cr-contact-action { display:inline-flex; align-items:center; justify-content:center; gap:14px; min-height:48px; padding:12px 22px; border-radius:50px; background:linear-gradient(115deg,#2563eb,#1d4ed8); color:#fff; font-size:15px; font-weight:650; line-height:1.4; transition:transform 180ms ease,box-shadow 180ms ease; margin-top:auto; }
#cr-contact .cr-contact-action:visited, #cr-contact .cr-contact-action:hover, #cr-contact .cr-contact-action:focus-visible { background-image:linear-gradient(115deg,#2563eb,#1d4ed8); color:#fff; }
#cr-contact .cr-contact-email { display:inline-flex; align-items:center; gap:12px; min-height:48px; margin-top:auto; color:#1d4ed8; font-size:clamp(16px,1.8vw,20px); font-weight:600; overflow-wrap:anywhere; }
#cr-contact .cr-contact-email:hover { text-decoration:underline; text-underline-offset:5px; }
#cr-contact a:focus-visible { outline:3px solid #2563eb; outline-offset:5px; border-radius:4px; }
#cr-contact .cr-contact-notes { display:grid; grid-template-columns:1fr 1fr; gap:48px; border-top:1px solid #e2e8f0; padding:32px 0 64px; }
#cr-contact .cr-contact-notes h2 { font-size:18px; margin-bottom:10px; }
#cr-contact .cr-contact-notes p { color:#526176; font-size:15px; margin:0; }
#cr-contact .cr-contact-text-link { color:#1d4ed8; display:inline-flex; align-items:center; gap:8px; min-height:44px; font-size:15px; font-weight:600; }
#cr-contact .cr-contact-text-link:hover { text-decoration:underline; text-underline-offset:4px; }
#cr-contact [data-cr-chat-status] { color:#526176; font-size:14px; margin-top:14px; }
#cr-contact [data-cr-chat-status]:empty { display:none; }
@media (hover:hover) and (pointer:fine) { #cr-contact .cr-contact-action:hover { transform:translateY(-1px); box-shadow:0 6px 16px rgba(29,78,216,.18); } }
@media (max-width:760px) {
  #cr-contact .cr-contact-wrap { width:calc(100% - 40px); }
  #cr-contact .cr-contact-hero { padding:48px 0 32px; }
  #cr-contact .cr-contact-intro { font-size:18px; }
  #cr-contact .cr-contact-options { grid-template-columns:1fr; gap:16px; padding-bottom:36px; }
  #cr-contact .cr-contact-option { padding:26px; }
  #cr-contact .cr-contact-icon { margin-bottom:20px; }
  #cr-contact .cr-contact-notes { grid-template-columns:1fr; gap:24px; padding:28px 0 44px; }
}
@media (max-width:360px) { #cr-contact .cr-contact-wrap { width:calc(100% - 32px); } #cr-contact .cr-contact-option { padding:22px; } }
@media (prefers-reduced-motion:reduce) { #cr-contact *, #cr-contact *::before, #cr-contact *::after { transition:none !important; } }
