/* WO-21: one compact form, with direct phone and email alternatives. */
.ztc-contact-page{background:#f7fafc;color:var(--ztc-text);padding:56px 0 80px}
.contact-wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,7vw,100px);align-items:start}
.contact-intro{padding:24px 0}
.contact-intro .ztc-eyebrow{color:var(--ztc-action)}
.contact-intro h1{font:600 var(--ztc-banner-h1-standard)/1.2 var(--ztc-serif);margin:20px 0 24px;letter-spacing:-.03em}
.contact-intro p{font-size:16px;line-height:1.9;color:#526274;max-width:24em}
.contact-intro .contact-lead{font:500 24px/1.6 var(--ztc-serif);color:var(--ztc-text);margin-bottom:12px}
.contact-direct{border-top:1px solid #d8e3ec;margin-top:44px;padding-top:22px}
.contact-direct>p{font-size:14px;margin:0 0 12px}
.contact-direct>a{display:flex;flex-direction:column;align-items:start;gap:4px;min-height:44px;margin:18px 0;color:var(--ztc-action)}
.contact-direct small{font-size:12px;color:#526274}
.contact-direct strong{font-size:20px;font-weight:600;overflow-wrap:anywhere}
.contact-form-panel{background:white;border:1px solid #dce6ee;border-radius:12px;box-shadow:0 14px 40px rgba(19,57,89,.04);padding:32px 36px;scroll-margin-top:125px}
.contact-form-panel h2{font:600 var(--ztc-fs-h2)/1.4 var(--ztc-serif);margin:0 0 10px}
.contact-form-hint{color:#526274;font-size:14px;line-height:1.8;margin:0 0 22px}
.contact-context{padding:12px 16px;background:#edf5fa;border-left:2px solid var(--ztc-brand-primary);display:flex;align-items:start;gap:16px;margin-bottom:20px}
.contact-context p{font-size:14px;line-height:1.8;margin:0;flex:1}
.contact-context a{font-size:13px;color:var(--ztc-action);min-height:44px;display:flex;align-items:center;flex-shrink:0;margin-block:-8px}
.contact-preview-note{font-size:12px;line-height:1.7;color:#526274;background:#f4f7f9;border-radius:4px;padding:10px 12px;margin-bottom:20px}
.contact-field-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.contact-field{min-width:0;margin-bottom:20px}
.contact-field label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}
.contact-field input,.contact-field textarea{display:block;width:100%;box-sizing:border-box;background:#fff;border:1px solid #b9cad7;border-radius:5px;padding:12px 14px;min-height:48px;font:400 16px/1.5 var(--ztc-sans);color:var(--ztc-text)}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:#647584}
.contact-field textarea{resize:vertical;min-height:112px}
.contact-field input:focus,.contact-field textarea:focus{outline:none;border-color:var(--ztc-action);box-shadow:0 0 0 2px var(--ztc-tint-info-bg)}
@media(forced-colors:active){.contact-field input:focus,.contact-field textarea:focus{outline:2px solid Highlight;outline-offset:2px;box-shadow:none}}
.contact-consent{display:flex;align-items:start;gap:10px;padding:10px 0;min-height:44px;font-size:13px;line-height:1.8;cursor:pointer}
.contact-consent input{width:18px;height:18px;flex-shrink:0;accent-color:var(--ztc-action);margin-top:3px}
.contact-privacy{font-size:13px;line-height:1.8;color:#526274}
.contact-privacy summary{color:var(--ztc-action);padding:8px 0;min-height:44px;cursor:pointer}
.contact-privacy p{margin:0 0 12px}
.contact-privacy a{color:var(--ztc-action);text-decoration:underline}
.contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:32px;padding:13px 24px;margin-top:16px;min-height:48px;min-width:180px;border:1px solid var(--ztc-action);border-radius:6px;background:var(--ztc-action);color:#fff;font:600 16px/1.5 var(--ztc-sans);cursor:pointer}
.contact-submit:hover{background:var(--ztc-action-hover)}
.contact-submit:disabled{opacity:.6;cursor:wait}
.contact-error{border-left:3px solid #a92d2d;padding:12px;color:#912323;background:#fff3f3;font-size:14px;line-height:1.8;margin-top:16px}
.contact-success{border-top:2px solid var(--ztc-brand-primary);padding:24px 0;min-height:180px}
.contact-success h3{font:600 24px/1.5 var(--ztc-serif);color:var(--ztc-action)}
.contact-success p{font-size:16px;line-height:1.9}
.contact-form-panel [hidden]{display:none!important}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.contact-anchor{display:block;position:relative;scroll-margin-top:125px}
.ztc-contact-page a:focus-visible,.ztc-contact-page button:focus-visible,.ztc-contact-page summary:focus-visible{outline:3px solid var(--ztc-action);outline-offset:4px}
@media(max-width:850px){.contact-layout{grid-template-columns:1fr;gap:28px}.contact-intro{padding:0}.contact-direct{display:flex;flex-wrap:wrap;gap:12px 32px;margin-top:24px;padding-top:16px}.contact-direct>p{width:100%}.contact-direct>a{margin:0}.contact-form-panel{padding:28px}}
@media(max-width:520px){.ztc-contact-page{padding:32px 0 48px}.contact-wrap{width:calc(100% - 32px)}.contact-intro h1{margin:14px 0 18px}.contact-intro .contact-lead{font-size:20px}.contact-direct{gap:8px 24px}.contact-direct strong{font-size:18px}.contact-form-panel{padding:24px 20px}.contact-field-pair{grid-template-columns:1fr;gap:0}.contact-submit{width:100%}.contact-form-panel h2{font-size:24px}}
