.form-antispam { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.cv-page { max-width: 1180px; margin: 0 auto; padding: 35px 20px; }
.cv-page h1 { font-size: 32px; }
.cv-page [data-cv-standalone] { margin-top: 25px; }
.cv-dialog { position: fixed; inset: 0; width: min(700px,calc(100% - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 28px; border: 0; border-radius: 6px; overflow-y: auto; color: #222; background: #fff; }
.cv-dialog::backdrop { background: rgba(0,0,0,.75); }
.cv-dialog-close { position: absolute; right: 12px; top: 12px; width: 40px; height: 40px; font-size: 26px; display: grid; place-items: center; padding: 0; border: 1px solid #ccc; border-radius: 4px; background: #fff; color: #222; cursor: pointer; }
.cv-dialog-close:hover,.cv-dialog-close:focus-visible { border-color: #ef7100; outline: 2px solid #ef7100; }
.cv-form-shell { text-align: left; }
.cv-form-shell h2 { font-size: 24px; line-height: 1.2; margin: 0 40px 22px 0; }
.cv-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.cv-form-grid label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; min-width: 0; }
.cv-form-grid input,.cv-form-grid select,.cv-form-grid textarea { width: 100%; min-width: 0; max-width: 100%; font-size: 16px; }
.cv-form-grid .cv-full-row { grid-column: 1/-1; }
.cv-form-grid .cv-consent { flex-direction: row; align-items: flex-start; gap: 10px; line-height: 1.5; }
.cv-consent input[type="checkbox"] { width: 20px; height: 20px; min-height: 20px; flex: 0 0 20px; accent-color: #ef7100; }
.cv-form-status { font-size: 14px; line-height: 1.5; overflow-wrap: anywhere; }
.cv-form-status:empty { display: none; }
.cv-form-status.is-error { color: #a82020; }
body.cv-popup-open { overflow: hidden; }
@media(max-width:540px) { .cv-form-grid { grid-template-columns: minmax(0,1fr); } .cv-dialog { padding: 22px 16px; } }
