:root{--dals-blue:#274f6f;--dals-blue-deep:#183b56;--dals-ink:#17364c;--dals-cream:#f8f4ec;--dals-sand:#e8dccb;--dals-green:#4b7d6a;--dals-line:#e5ecef}
.dals-cp-overlay{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(12,29,42,.62);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .28s ease,visibility .28s ease}
.dals-cp-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.dals-cp-modal{position:relative;width:min(700px,100%);overflow:hidden;border-radius:28px;background:#fff;box-shadow:0 30px 100px rgba(5,25,39,.34),0 4px 18px rgba(5,25,39,.08);transform:translateY(22px) scale(.975);opacity:0;transition:transform .42s cubic-bezier(.16,1,.3,1),opacity .3s ease}
.dals-cp-overlay.is-open .dals-cp-modal{transform:translateY(0) scale(1);opacity:1}
.dals-cp-accent{height:7px;background:linear-gradient(90deg,var(--dals-blue-deep),var(--dals-blue) 50%,#7ea99a)}
.dals-cp-content{position:relative;padding:48px 52px 44px;text-align:center;background:radial-gradient(circle at 100% 0,rgba(39,79,111,.11),transparent 31%),radial-gradient(circle at 0 100%,rgba(126,169,154,.11),transparent 31%),linear-gradient(180deg,#fff 0,#fff 72%,#fcfaf6 100%)}
.dals-cp-content:before{content:"";position:absolute;top:24px;left:30px;width:72px;height:72px;border:1px solid rgba(39,79,111,.08);border-radius:50%;pointer-events:none}
.dals-cp-kicker{display:inline-flex;align-items:center;gap:10px;margin-bottom:15px;padding:7px 12px;border:1px solid rgba(39,79,111,.12);border-radius:999px;background:rgba(255,255,255,.72);font-size:11px;line-height:1.2;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--dals-blue)}
.dals-cp-kicker:before{content:"✦";font-size:10px;color:#7ea99a}
.dals-cp-content h2{margin:0;color:var(--dals-ink);font-size:clamp(31px,5vw,48px);line-height:1.07;font-weight:680;letter-spacing:-.032em}
.dals-cp-content h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:500;color:var(--dals-blue)}
.dals-cp-content>p{max-width:555px;margin:18px auto 29px;color:#586c79;font-size:16px;line-height:1.7}
#dals-cp-form{max-width:590px;margin:0 auto;text-align:left}
.dals-cp-form-intro{transition:opacity .22s ease,transform .22s ease}
#dals-cp-form label{display:block;margin:0 0 9px 4px;color:var(--dals-blue-deep);font-size:13px;font-weight:800}
.dals-cp-field-row{display:grid;grid-template-columns:1fr auto;gap:9px;padding:7px;border:1px solid var(--dals-line);border-radius:18px;background:#fff;box-shadow:0 12px 34px rgba(39,79,111,.09);transition:border-color .18s ease,box-shadow .18s ease}
.dals-cp-field-row:focus-within{border-color:rgba(39,79,111,.35)!important;box-shadow:0 14px 36px rgba(39,79,111,.13),0 0 0 4px rgba(39,79,111,.06)}
.dals-cp-field-row input{min-width:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:14px 15px!important;color:var(--dals-ink)!important;font-size:16px!important;line-height:1.3!important}
.dals-cp-field-row input::placeholder{color:#9aa8b1}
.dals-cp-field-row button{position:relative;min-width:190px;border:0!important;outline:0!important;box-shadow:none;border-radius:12px;padding:14px 20px;background:linear-gradient(135deg,var(--dals-blue-deep),var(--dals-blue));color:#fff;font-size:14px;font-weight:800;line-height:1.2;white-space:nowrap;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}
.dals-cp-field-row button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 9px 24px rgba(39,79,111,.24)}
.dals-cp-field-row button:disabled{cursor:wait;opacity:.92;transform:none}
.dals-cp-btn-inner{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.dals-cp-spinner{display:none;width:15px;height:15px;border:2px solid rgba(255,255,255,.38);border-top-color:#fff;border-radius:50%;animation:dalsSpin .7s linear infinite}
.dals-cp-field-row button.is-loading .dals-cp-spinner{display:inline-block}
.dals-cp-close{position:absolute;z-index:3;right:15px;top:17px;display:grid;place-items:center;width:39px;height:39px;padding:0;border:1px solid rgba(39,79,111,.10)!important;border-radius:50%;background:rgba(255,255,255,.92);color:var(--dals-blue);font-size:25px;line-height:1;cursor:pointer;box-shadow:0 6px 20px rgba(39,79,111,.10);transition:transform .18s ease,background .18s ease}
.dals-cp-close:hover{transform:rotate(4deg) scale(1.04);background:#fff}
.dals-cp-status{min-height:20px;margin-top:10px;padding-left:4px;font-size:13px;line-height:1.45;color:var(--dals-blue)}
.dals-cp-status.is-error{color:#a43e3e}
.dals-cp-note{margin-top:9px;text-align:center;color:#87949c;font-size:11px;line-height:1.5}
.dals-cp-success[hidden]{display:none!important}
.dals-cp-success{display:none;padding:12px 6px 4px;text-align:center;animation:dalsSuccessIn .35s ease}
#dals-cp-form.is-success .dals-cp-form-intro{display:none}
#dals-cp-form.is-success .dals-cp-success:not([hidden]){display:block}
.dals-cp-success-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 12px;border-radius:50%;background:#f0f7f3;color:var(--dals-green);font-size:22px;font-weight:800}
.dals-cp-success-message{margin:0 auto;color:var(--dals-ink);font-size:16px;font-weight:700;line-height:1.5}
body.dals-cp-modal-open{overflow:hidden}
@keyframes dalsSpin{to{transform:rotate(360deg)}}
@keyframes dalsSuccessIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:640px){.dals-cp-overlay{padding:12px;align-items:flex-end}.dals-cp-modal{border-radius:24px 24px 16px 16px}.dals-cp-content{padding:39px 20px 27px}.dals-cp-content:before{display:none}.dals-cp-kicker{font-size:10px;letter-spacing:.1em}.dals-cp-content h2{font-size:32px}.dals-cp-content>p{margin:15px auto 23px;font-size:15px;line-height:1.6}.dals-cp-field-row{grid-template-columns:1fr;padding:7px}.dals-cp-field-row button{width:100%;min-width:0;padding:15px}.dals-cp-close{right:10px;top:12px}.dals-cp-success{padding:6px 2px 4px}.dals-cp-success-icon{width:64px;height:64px;font-size:28px}.dals-cp-success h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){.dals-cp-overlay,.dals-cp-modal,.dals-cp-field-row button,.dals-cp-success{transition:none!important;animation:none!important}}
.dals-cp-modal,.dals-cp-modal:focus,.dals-cp-field-row,.dals-cp-field-row:focus-within,#dals-cp-email,#dals-cp-email:focus,.dals-cp-close,.dals-cp-close:focus{outline:0!important}

/* v1.4.7: compact centered success state */
.dals-cp-success { text-align:center !important; }
.dals-cp-success-message {
  text-align:center !important;
  font-weight:800 !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
