/* CGS Core Capture: form styles (spec 2026-09-27 section 4.3). Every rule is
   scoped under .cgs-cap-form. Divi forces 2px padding on inputs and a theme
   input rule zeroes their margins, so padding and margin carry !important;
   Divi's global anchor colour beats a class rule, so link and button colours
   carry !important too. Targets are at least 44px, the focus ring is 3px
   navy, and the submit button runs full width at 600px and below. */
.cgs-cap-form{max-width:680px;margin:0 auto;font-family:"Roboto Flex",Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;color:#1D2B47}
.cgs-cap-form [hidden]{display:none !important}
.cgs-cap-form p{padding:0 !important}
.cgs-cap-form .cgs-cap-row{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.cgs-cap-form .cgs-cap-lab{display:block;margin:16px 0 6px !important;font-size:15px;font-weight:600;color:#1D2B47}
.cgs-cap-form .cgs-cap-in{display:block;width:100%;box-sizing:border-box;min-height:48px;padding:12px 14px !important;margin:0 !important;border:1px solid #646B78;border-radius:10px;background:#fff;color:#1D2B47;font-family:inherit;font-size:16px;line-height:1.4}
.cgs-cap-form textarea.cgs-cap-in{min-height:96px;resize:vertical}
.cgs-cap-form .cgs-cap-in[aria-invalid="true"]{border:2px solid #b32d2e}
.cgs-cap-form .cgs-cap-fs{min-width:0;margin:22px 0 0 !important;padding:0 !important;border:0}
.cgs-cap-form .cgs-cap-leg{float:left;width:100%;margin:0 0 4px !important;padding:0 !important;font-size:15px;font-weight:600;color:#1D2B47}
.cgs-cap-form .cgs-cap-leg~*{clear:both}
.cgs-cap-form .cgs-cap-ck{display:flex;align-items:center;min-height:44px;margin:0 !important}
.cgs-cap-form .cgs-cap-ck input{flex:0 0 auto;width:22px;height:22px;margin:0 !important;accent-color:#27318B}
.cgs-cap-form .cgs-cap-ck label{display:flex;flex:1 1 auto;align-items:center;min-height:44px;margin:0 !important;padding:0 0 0 12px !important;font-size:15.5px;color:#333;cursor:pointer}
.cgs-cap-form .cgs-cap-news{margin:18px 0 0 !important}
.cgs-cap-form .cgs-cap-more{margin:0 !important}
.cgs-cap-form .cgs-cap-more>summary{display:list-item;min-height:44px;box-sizing:border-box;padding:10px 0 !important;color:#27318B;font-size:15.5px;font-weight:600;text-decoration:underline;cursor:pointer}
.cgs-cap-form .cgs-cap-more>summary:focus-visible{outline:3px solid #27318B !important;outline-offset:2px}
.cgs-cap-form .cgs-cap-err{margin:6px 0 0 !important;font-size:14px;font-weight:600;color:#b32d2e}
.cgs-cap-form .cgs-cap-consent{margin:10px 0 0 !important;font-size:13.5px;color:#646B78}
.cgs-cap-form a{color:#27318B !important;text-decoration:underline}
.cgs-cap-form .cgs-cap-btn{display:inline-block;min-height:48px;margin:22px 0 0 !important;padding:12px 30px !important;border:2px solid #27318B !important;border-radius:50px;background:#27318B !important;color:#fff !important;font-family:inherit;font-size:16px;font-weight:700;letter-spacing:.5px;cursor:pointer}
.cgs-cap-form .cgs-cap-btn:hover{border-color:#1f2870 !important;background:#1f2870 !important}
.cgs-cap-form .cgs-cap-btn:disabled{opacity:.65;cursor:default}
.cgs-cap-form .cgs-cap-btn2,.cgs-cap-form .cgs-cap-share{display:inline-flex;align-items:center;min-height:44px;margin:10px 0 0 !important;padding:10px 24px !important;border:2px solid #27318B !important;border-radius:50px;background:transparent !important;color:#27318B !important;font-family:inherit;font-size:16px;font-weight:700;text-decoration:none !important;cursor:pointer}
.cgs-cap-form .cgs-cap-btn2:hover,.cgs-cap-form .cgs-cap-share:hover{background:#27318B !important;color:#fff !important}
.cgs-cap-form input:focus-visible,.cgs-cap-form select:focus-visible,.cgs-cap-form textarea:focus-visible,.cgs-cap-form button:focus-visible,.cgs-cap-form a:focus-visible{outline:3px solid #27318B !important;outline-offset:2px}
.cgs-cap-form .cgs-cap-thanks{margin:0 !important;padding:24px 22px !important;border:1px solid #e6e8ef;border-radius:12px;background:#fff}
.cgs-cap-form .cgs-cap-thanks-h{margin:0 0 10px !important;padding:0 !important;font-size:26px;line-height:1.3;color:#27318B}
.cgs-cap-form .cgs-cap-thanks-h:focus{outline:none}
.cgs-cap-form .cgs-cap-next-lead{margin:12px 0 4px !important;font-weight:700}
.cgs-cap-form .cgs-cap-next p,.cgs-cap-form .cgs-cap-p{margin:0 0 10px !important}
.cgs-cap-form .cgs-cap-done{margin:12px 0 0 !important;font-weight:600}
.cgs-cap-form .cgs-cap-step2{margin:20px 0 0 !important;padding:22px !important;border:1px solid #e6e8ef;border-radius:12px;background:#fff}
.cgs-cap-form .cgs-cap-s2h{margin:0 0 4px !important;padding:0 !important;font-size:22px;line-height:1.3;color:#1D2B47}
.cgs-cap-form .cgs-cap-s2p{margin:0 !important;color:#555}
.cgs-cap-form .cgs-cap-status{min-height:1px;margin:14px 0 0 !important;font-size:15px;color:#1D2B47}
.cgs-cap-form .cgs-cap-status.is-error{font-weight:600;color:#b32d2e}
.cgs-cap-form .cgs-cap-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
.cgs-cap-form .cgs-cap-sr{position:absolute !important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:600px){.cgs-cap-form .cgs-cap-row{grid-template-columns:1fr}.cgs-cap-form .cgs-cap-btn{display:block;width:100%}}
@media (min-width:741px){.cgs-cap-form .cgs-cap-cks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px}}
/* Floating labels (unified contact form spec 3.4; the registration form's
   pattern, 2026-10-13, shared here for any form with the class
   cgs-cap-fl-form). The label is a real <label> sitting in the box like a
   placeholder; once the box has a value it moves up onto the border, small
   and navy. :placeholder-shown covers typing (every typed box carries a
   one-space placeholder), .has-val (set by capture.js) covers selects, and
   the autofill rules cover a browser filling the box in. pointer-events:none,
   so a tap on the label reaches the box. With the label inside the box the
   border is what shows there is a box at all, so it is #868b9c, 3.4:1 on
   white (WCAG 1.4.11); the resting label grey #5f6474 is 5.9:1. */
.cgs-cap-form.cgs-cap-fl-form .cgs-cap-in{min-height:52px;padding:15px 16px !important;border:1px solid #868b9c;border-radius:8px;font-size:16px}
.cgs-cap-form.cgs-cap-fl-form textarea.cgs-cap-in{min-height:140px;padding-top:18px !important}
.cgs-cap-form.cgs-cap-fl-form .cgs-cap-in:focus{border-color:#27318B}
.cgs-cap-form.cgs-cap-fl-form .cgs-cap-in[aria-invalid="true"]{border:1px solid #b32d2e;box-shadow:0 0 0 1px #b32d2e}
.cgs-cap-form.cgs-cap-fl-form .cgs-cap-field{margin:16px 0 0 !important}
.cgs-cap-form .cgs-cap-fl{position:relative}
.cgs-cap-form .cgs-cap-fl>.cgs-cap-lab{position:absolute !important;left:13px !important;top:16px !important;display:block !important;max-width:calc(100% - 40px);margin:0 !important;padding:0 4px !important;background:#fff;color:#5f6474 !important;font-size:16px !important;font-weight:400 !important;line-height:1.2 !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;transition:top .15s ease,font-size .15s ease,color .15s ease}
.cgs-cap-form .cgs-cap-fl>input.cgs-cap-in:not(:placeholder-shown)+.cgs-cap-lab,.cgs-cap-form .cgs-cap-fl>textarea.cgs-cap-in:not(:placeholder-shown)+.cgs-cap-lab,.cgs-cap-form .cgs-cap-fl.has-val>.cgs-cap-lab,.cgs-cap-form .cgs-cap-fl>.cgs-cap-in:focus+.cgs-cap-lab{top:-8px !important;font-size:12.5px !important;color:#27318B !important}
.cgs-cap-form .cgs-cap-fl>.cgs-cap-in:-webkit-autofill+.cgs-cap-lab{top:-8px !important;font-size:12.5px !important;color:#27318B !important}
.cgs-cap-form .cgs-cap-fl>.cgs-cap-in:autofill+.cgs-cap-lab{top:-8px !important;font-size:12.5px !important;color:#27318B !important}
.cgs-cap-form .cgs-cap-fl>select:focus~.cgs-cap-lab{color:#27318B !important}
@media (prefers-reduced-motion:reduce){.cgs-cap-form .cgs-cap-fl>.cgs-cap-lab{transition:none}}
.cgs-cap-form .cgs-cap-err:empty{margin:0 !important}
.cgs-cap-form .cgs-cap-hint{margin:6px 0 0 !important;font-size:14px;color:#1D2B47}
.cgs-cap-form .cgs-cap-hint-use{min-height:32px;padding:0 4px !important;border:0 !important;background:none !important;color:#27318B !important;font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.cgs-cap-form .cgs-cap-count{margin:6px 0 0 !important;font-size:13.5px;color:#5f6474}
.cgs-cap-form.cgs-cap-fl-form .cgs-cap-btn{display:block;width:100%}
