/* Quote form (popup + inline) */
.sj-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:16px}
.sj-modal[hidden]{display:none}
.sj-modal__bg{position:absolute;inset:0;background:rgba(11,27,58,.62);backdrop-filter:blur(4px)}
.sj-modal__box{position:relative;width:min(640px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:28px;box-shadow:0 40px 90px rgba(11,27,58,.45);animation:sjpop .22s ease-out}
.sj-modal__head{background:radial-gradient(420px 200px at 100% 0%,rgba(143,168,255,.35),transparent 60%),linear-gradient(155deg,#132A5C,#0B1B3A);color:#fff;padding:28px 28px 22px;border-radius:28px 28px 0 0}
.sj-modal__head h2{font-family:'Archivo Black',sans-serif;font-weight:400;font-size:clamp(24px,3vw,32px);color:#fff;margin:8px 0 6px;line-height:1.1}
.sj-modal__head p{margin:0;color:#C9D4EE;font-size:16px}
.sj-modal__kicker{display:inline-block;background:#1F4BFF;color:#fff;font:700 12px 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;padding:6px 12px;border-radius:999px}
button.sj-modal__x{position:absolute;right:14px;top:14px;width:44px!important;height:44px!important;border-radius:50%!important;border:0!important;background:rgba(255,255,255,.14)!important;color:#fff!important;font-size:26px;line-height:1;cursor:pointer;padding:0!important;z-index:2}
button.sj-modal__x:hover{background:#fff!important;color:#0B1B3A!important}
body.sj-modal-open{overflow:hidden}
@keyframes sjpop{from{transform:translateY(12px) scale(.98);opacity:0}to{transform:none;opacity:1}}
.sj-qf{padding:22px 28px 26px;font-family:'DM Sans',system-ui,sans-serif}
.sj-qf--inline{padding:0}
.sj-qf__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.sj-qf__f{margin:0;display:flex;flex-direction:column;gap:6px}
.sj-qf__f--wide{grid-column:1/-1}
.sj-qf label{font-weight:700;font-size:15px;color:#0B1B3A}
.sj-qf label span{font-weight:500;color:#4E5A70}
.sj-qf input,.sj-qf select,.sj-qf textarea{width:100%;min-height:50px;border-radius:14px;border:1.5px solid #C5D0E6;background:#F7F9FD;padding:12px 14px;font:16px 'DM Sans',system-ui,sans-serif;color:#0B1B3A;transition:border-color .15s,box-shadow .15s,background .15s;box-sizing:border-box}
.sj-qf textarea{min-height:110px;resize:vertical}
.sj-qf input:focus,.sj-qf select:focus,.sj-qf textarea:focus{outline:0;border-color:#1F4BFF;background:#fff;box-shadow:0 0 0 4px rgba(31,75,255,.15)}
.sj-qf .is-err{border-color:#C62828!important;background:#FFF6F6}
.sj-qf__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.sj-qf__foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-top:16px}
button.sj-qf__btn{min-height:52px;padding:0 28px!important;border-radius:999px!important;border:0!important;background:linear-gradient(135deg,#1F4BFF,#3D66FF)!important;color:#fff!important;font:700 17px 'DM Sans',sans-serif;cursor:pointer;box-shadow:0 14px 30px -12px rgba(31,75,255,.8)}
button.sj-qf__btn:hover,button.sj-qf__btn:focus{background:#0B1B3A!important;color:#fff!important}
button.sj-qf__btn:disabled{opacity:.7;cursor:wait}
.sj-qf__note{font-size:14px;color:#4E5A70}
.sj-qf__msg{margin:12px 0 0;font-weight:700;font-size:15px}
.sj-qf__msg:empty{display:none}
.sj-qf__msg.is-ok{background:#E8F7EF;color:#0B5E36;border-radius:14px;padding:14px 16px}
.sj-qf__msg.is-bad{color:#B3261E}
@media (max-width:560px){.sj-qf__grid{grid-template-columns:1fr}.sj-qf{padding:18px}.sj-modal__head{padding:24px 20px 18px}}
@media (prefers-reduced-motion:reduce){.sj-modal__box{animation:none}}
/* Contact page card around the inline form */
.sj-form{background:radial-gradient(500px 220px at 100% 0%,rgba(143,168,255,.22),transparent 60%),#fff!important;border-radius:28px!important;border:1px solid rgba(31,75,255,.18)!important;box-shadow:0 30px 60px -30px rgba(11,27,58,.35)}

.sj-qf input[type],.sj-qf select,.sj-qf textarea{border:1.5px solid #C5D0E6!important;border-radius:14px!important;background:#F7F9FD!important;min-height:50px;padding:12px 14px!important;box-shadow:none}
.sj-qf input[type]:focus,.sj-qf select:focus,.sj-qf textarea:focus{border-color:#1F4BFF!important;background:#fff!important;box-shadow:0 0 0 4px rgba(31,75,255,.15)!important}
.sj-qf .is-err{border-color:#C62828!important;background:#FFF6F6!important}
.sj-form{padding:clamp(18px,3vw,36px)!important}
.sj-form .elementor-heading-title{font-size:clamp(24px,3vw,34px)}
