.cpn-form{display:flex;flex-direction:column;gap:18px;padding:48px 56px;border:1px solid var(--cp-line,#2C1C24);background:var(--cp-bg2,#1B1116);border-radius:4px}
.cpn-form--compact{padding:0;border:0;background:transparent}
.cpn-form__title{margin:0}
.cpn-form__form{display:grid;grid-template-columns:1fr 1.4fr auto;gap:12px;align-items:end;margin-top:8px}
.cpn-form__field{display:flex;flex-direction:column;gap:6px}
.cpn-form__field input{padding:14px 16px;background:var(--cp-bg,#140D11);border:1px solid var(--cp-line2,#3E2A34);color:var(--cp-text,#F3E3EA);font:inherit;font-size:15px;border-radius:2px}
.cpn-form__field input:focus{outline:none;border-color:var(--cp-gold,#E48AA6)}
.cpn-form .cp-btn{padding:15px 24px}
.cpn-form__msg{grid-column:1/-1;margin:0;font-size:14px;color:var(--cp-gold,#E48AA6);min-height:1em}
.cpn-form__msg.is-err{color:#E07A9E}
.cpn-form .cp-note{grid-column:1/-1;margin:0}
.cpn-hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.cpn-banner{margin:24px 0 0;padding:16px 24px;border:1px solid var(--cp-gold,#E48AA6);border-radius:4px;font-family:var(--cp-quote,serif);font-style:italic;font-size:20px;text-align:center}
.cpn-sec{padding-top:0}
@media (max-width:820px){.cpn-form{padding:24px}.cpn-form__form{grid-template-columns:1fr}.cpn-form .cp-btn{width:100%}}
