/* akcs-cc-forms — deliberately plain so the Beaver Builder theme's fonts and colours show through. */
.akcs-form { max-width: 760px; margin: 0 auto; text-align: left; }
.akcs-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; }
.akcs-field { display: flex; flex-direction: column; min-width: 0; }
.akcs-field.akcs-wide { grid-column: 1 / -1; }
.akcs-field label, .akcs-field legend { font-weight: 600; font-size: 0.95em; margin-bottom: 4px; }
.akcs-field input, .akcs-field select, .akcs-field textarea {
    width: 100%; box-sizing: border-box; padding: 9px 11px; font: inherit;
    border: 1px solid #b9c0c8; border-radius: 4px; background: #fff; color: #222;
}
.akcs-field input:focus, .akcs-field select:focus, .akcs-field textarea:focus { outline: 2px solid #2b6fd1; outline-offset: 1px; border-color: #2b6fd1; }
.akcs-field fieldset { border: 0; margin: 0; padding: 0; min-width: 0; }
.akcs-check { display: flex !important; align-items: center; gap: 8px; font-weight: 400 !important; margin: 4px 0; }
.akcs-check input { width: auto; }
.akcs-req { color: #c8102e; }
.akcs-err { color: #c8102e; font-size: 0.85em; min-height: 1em; margin-top: 3px; }
.akcs-invalid input, .akcs-invalid select, .akcs-invalid textarea { border-color: #c8102e; }
.akcs-price { font-weight: 400; opacity: 0.75; white-space: nowrap; }
.akcs-total { margin: 16px 0 0; font-size: 1.1em; }
.akcs-submit { margin-top: 18px; padding: 12px 28px; font: inherit; font-weight: 600; cursor: pointer; border: 0; border-radius: 4px; background: #c8102e; color: #fff; }
.akcs-submit[disabled] { opacity: 0.6; cursor: wait; }
.akcs-msg { padding: 12px 14px; border-radius: 4px; margin-bottom: 16px; }
.akcs-ok { background: #e6f4ea; color: #1e5631; border: 1px solid #a8d5b5; }
.akcs-bad { background: #fde8eb; color: #8a0d20; border: 1px solid #f2b3bd; }
.akcs-hp { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 640px) { .akcs-grid { grid-template-columns: 1fr; } }
