/* Contact forms (rendered in place of <div data-form="…"> in page bodies) */
.cform{--cf-err:var(--err,#b42318);--cf-err-bg:var(--err-bg,#fef3f2);--cf-ok:var(--green,#1f7a4d);--cf-ok-bg:var(--ok-bg,#eefaf3);
  margin:2.2em 0 1.4em;background:var(--soft,#f4f6f9);border:1px solid var(--line,#e1e6ed);border-top:4px solid var(--gold,#c8a24a);
  border-radius:var(--r,10px);padding:28px 32px 30px;font-size:16px;line-height:1.5;color:var(--text,#2b3746);scroll-margin-top:100px}
.cform .sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.cform h2{font:600 24px/1.25 var(--serif);color:var(--head,#0b2a4a);margin:0}
.cf-head{margin-bottom:18px}
.cf-note{margin:6px 0 0;font-size:14px;color:var(--muted,#566377)}
.cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px}
.cf-field,.cf-sec{grid-column:1/-1;min-width:0}
.cf-half{grid-column:auto}
.prose .cform .cf-sec{font:600 18px/1.3 var(--serif);color:var(--head,#0b2a4a);margin:12px 0 -4px;padding-top:16px;border-top:1px solid var(--line-2,#cfd7e1)}
.prose .cform .cf-sec:first-child{border-top:0;padding-top:0;margin-top:0}
.cf-field>label,.cf-choices legend{display:block;font-weight:600;font-size:15px;color:var(--ink,#142030);margin:0 0 6px;line-height:1.4}
.req{color:var(--cf-err);margin-left:3px;font-weight:700}
.cform input[type=text],.cform input[type=email],.cform input[type=tel],.cform input[type=url],.cform input[type=number],.cform input[type=date],
.cform select,.cform textarea{display:block;width:100%;font:inherit;font-size:16px;color:var(--ink,#142030);background:var(--card,#fff);
  border:1px solid var(--line-2,#cfd7e1);border-radius:8px;padding:11px 13px;min-height:46px;transition:border-color .15s,box-shadow .15s;appearance:none}
.cform textarea{resize:vertical;min-height:150px;line-height:1.55}
.cform select{padding-right:40px;cursor:pointer;text-overflow:ellipsis;
  background:var(--card,#fff) var(--chev) no-repeat right 12px center/18px}
.cform input:hover,.cform select:hover,.cform textarea:hover{border-color:#9fb0c4}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:0;border-color:var(--blue,#14518f);box-shadow:0 0 0 4px var(--ring)}
.cform input:focus-visible,.cform select:focus-visible,.cform textarea:focus-visible{outline:2px solid var(--gold,#c8a24a);outline-offset:1px}
.cform .has-err input,.cform .has-err select,.cform .has-err textarea,.cform [aria-invalid=true]:not(fieldset){border-color:var(--cf-err);background-color:var(--cf-err-bg)}
.cform .has-err input:focus,.cform .has-err select:focus,.cform .has-err textarea:focus{box-shadow:0 0 0 4px rgba(180,35,24,.14)}
.cf-err{display:flex;gap:6px;align-items:flex-start;margin:6px 0 0;font-size:14px;font-weight:500;color:var(--cf-err)}
.cf-err::before{content:"!";flex:none;display:grid;place-items:center;width:17px;height:17px;margin-top:1px;border-radius:50%;background:var(--cf-err);color:#fff;font:700 11px/1 var(--sans)}
.cf-err[hidden]{display:none}
.cf-choices{border:0;padding:0;margin:0}
.cf-check{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:16px;padding:5px 0;cursor:pointer}
.cf-check input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--fill,#0b2a4a)}
.cf-hp{position:absolute!important;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.cf-foot{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line-2,#cfd7e1)}
.cf-submit{display:inline-flex;align-items:center;gap:10px;border:0;border-radius:999px;background:var(--fill,#0b2a4a);color:#fff;
  font:600 16px/1 var(--sans);padding:15px 26px;min-height:48px;cursor:pointer;transition:background .15s,transform .15s}
.cf-submit:hover{background:var(--fill-h,#14518f)}
.cf-submit:active{transform:translateY(1px)}
.cf-submit[disabled]{opacity:.7;cursor:progress}
.cf-submit svg{transition:transform .15s}.cf-submit:hover svg{transform:translateX(3px)}
.cf-privacy{flex:1 1 260px;margin:0;font-size:13.5px;color:var(--muted,#566377)}
.cf-summary{margin:0 0 20px;padding:14px 18px;border:1px solid var(--err-line,#f4c7c2);border-left:4px solid var(--cf-err);border-radius:8px;background:var(--cf-err-bg);color:var(--err-ink,#5c1a14);font-size:15px}
.cf-summary:focus{outline:2px solid var(--cf-err);outline-offset:2px}
.prose .cf-summary p{margin:0 0 4px;font-weight:600}
.prose .cf-summary ul{margin:6px 0 0;padding-left:20px}
.prose .cf-summary li{margin:2px 0}
.prose .cf-summary a{color:var(--cf-err)}
.cf-sent{display:flex;gap:18px;align-items:flex-start;padding:4px 0}
.cf-sent:focus{outline:0}
.cf-ok{flex:none;color:var(--cf-ok);background:var(--cf-ok-bg);border-radius:50%;padding:6px;width:52px;height:52px}
.prose .cf-sent p{margin:6px 0 12px}
.cf-again{font-weight:600}
@media (max-width:640px){
  .cform{padding:20px 16px 22px;margin-left:-4px;margin-right:-4px}
  .cf-grid{grid-template-columns:1fr;gap:16px}
  .cf-submit{width:100%;justify-content:center}
  .cform h2{font-size:21px}
}
@media print{.cform{display:none}}
