
/* LDHope contact page — scoped to avoid affecting WooCommerce forms. */
.ldhope-contact-wrap{--ld-navy:#17324b;--ld-teal:#287f82;--ld-mint:#eaf3f0;--ld-cream:#f7f6f1;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,5vw,72px);max-width:1200px;margin:clamp(36px,6vw,88px) auto;padding:0 24px;color:var(--ld-navy);font-family:"DM Sans",sans-serif}
.ldhope-contact-wrap *{box-sizing:border-box}
.ldhope-contact-kicker{font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ld-teal)}
.ldhope-contact-intro h2{font-family:Manrope,sans-serif;font-weight:800;font-size:clamp(31px,3.6vw,49px);line-height:1.16;letter-spacing:-.035em;margin:16px 0 23px;color:var(--ld-navy)}
.ldhope-contact-intro>p{font-size:17px;line-height:1.8;color:#506577}
.ldhope-contact-aside{background:var(--ld-mint);border-radius:17px;padding:28px;margin-top:36px}
.ldhope-contact-aside h3{font-family:Manrope,sans-serif;font-size:21px;color:var(--ld-navy);margin:0 0 10px}
.ldhope-contact-aside p{color:#506577;line-height:1.7;margin:0 0 12px}
.ldhope-contact-aside a{color:#176c70;font-weight:700}
.ldhope-contact-form-panel{background:white;border:1px solid #dce6e4;border-radius:19px;padding:clamp(22px,3vw,40px);box-shadow:0 18px 45px rgba(23,50,75,.08)}
.ldhope-contact-form-panel h3{font-family:Manrope,sans-serif;color:var(--ld-navy);font-size:27px;margin:0 0 5px}
.ldhope-contact-subtitle{font-size:13px;color:#637686;margin:0 0 27px}
.ldhope-contact-form{display:grid;gap:19px}
.ldhope-field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ldhope-field{display:flex;flex-direction:column;gap:8px}
.ldhope-field label{font-size:14px;font-weight:700;color:var(--ld-navy)}
.ldhope-field input,.ldhope-field textarea{display:block;width:100%;font-family:inherit;font-size:16px;color:var(--ld-navy);background:#fff;border:1px solid #b9c9d0;border-radius:9px;padding:13px 14px;line-height:1.45;box-shadow:none}
.ldhope-field textarea{min-height:160px;resize:vertical}
.ldhope-field input:focus,.ldhope-field textarea:focus{outline:3px solid rgba(40,127,130,.22);border-color:var(--ld-teal)}
.ldhope-callback-option{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.5;color:var(--ld-navy);cursor:pointer}
.ldhope-callback-option input{width:20px;height:20px;flex:0 0 20px;accent-color:var(--ld-teal);margin:1px 0 0}
.ldhope-contact-privacy{font-size:12px;color:#607383;line-height:1.65;margin:0}
.ldhope-contact-submit{display:inline-flex;align-items:center;justify-content:center;gap:12px;background:var(--ld-teal);border:0;border-radius:9px;color:#fff;font-family:Manrope,sans-serif;font-weight:800;font-size:15px;padding:16px 23px;min-height:52px;cursor:pointer;transition:background .2s}
.ldhope-contact-submit:hover,.ldhope-contact-submit:focus{background:#176b70;color:#fff}
.ldhope-contact-submit:focus-visible{outline:3px solid #e6b64d;outline-offset:3px}
.ldhope-form-alert{padding:13px 15px;border-radius:9px;margin:0 0 20px;font-size:14px}
.ldhope-form-success{background:#e7f5ee;color:#175d3c}
.ldhope-form-error{background:#fff0ed;color:#8e2c25}
.ldhope-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:850px){.ldhope-contact-wrap{grid-template-columns:1fr}.ldhope-contact-aside{margin-top:24px}}
@media(max-width:560px){.ldhope-field-row{grid-template-columns:1fr}.ldhope-contact-wrap{padding:0 16px}.ldhope-contact-form-panel{padding:22px 18px}}
@media(prefers-reduced-motion:reduce){.ldhope-contact-submit{transition:none}}
