.cc-cta { background: var(--page-bg, #fbfdff); padding: 48px 4%; color: var(--brand-navy, #0f3860); font-family: inherit; }
.cc-cta .wrap { max-width:1200px; margin:0 auto; display:grid; grid-template-columns: 1fr 420px; gap:34px; align-items:start; }
.cc-cta h2 { font-size:32px; margin:0 0 10px; color:var(--brand-navy); font-weight:700; line-height:1.05; }
.cc-cta p.lead { margin:0 0 20px; color:var(--muted,#666); font-size:16px; line-height:1.6; max-width:640px; }
.cc-cta .buttons { display:flex; gap:14px; margin-top:6px; }
.btn-primary { background:var(--brand-blue,#0b61d9); color:#fff; padding:12px 18px; border-radius:10px; text-decoration:none; font-weight:700; box-shadow:0 8px 28px rgba(11,97,217,0.12); }
.btn-secondary { background:transparent; color:var(--brand-navy); padding:12px 18px; border-radius:10px; text-decoration:none; border:1px solid rgba(15,56,96,0.08); font-weight:700; }
.cc-cta .card { background:var(--card-bg,#fff); padding:20px; border-radius:var(--radius,12px); box-shadow:0 14px 40px rgba(12,35,60,0.06); border:1px solid rgba(15,56,96,0.03); }
.cc-cta .card h3 { color:var(--brand-navy); margin:0 0 12px; font-size:20px; }
.wcn-field { display:block; margin-bottom:12px; }
.wcn-label { display:block; margin-bottom:6px; font-size:13px; color:#203244; font-weight:600; }
.wcn-required { color:#d0342c; margin-left:6px; }
.cc-cta input[type="text"], .cc-cta input[type="email"], .cc-cta input[type="tel"], .cc-cta textarea { width:100%; padding:12px 14px; border-radius:10px; border:1px solid #e6ecf3; box-sizing:border-box; font-size:14px; background:#fff; }
.cc-cta textarea { min-height:90px; resize:vertical; }
.cc-cta .submit { display:block; width:100%; padding:14px; border-radius:10px; border:none; background:var(--brand-blue,#0b61d9); color:#fff; font-size:16px; font-weight:800; cursor:pointer; margin-top:6px; }
.cc-cta .submit:disabled { opacity:0.6; cursor:not-allowed; }
.cc-cta .form-note { font-size:13px; color:#7b8790; margin-top:8px; }
.wecan-quote-success{background:#eaf6ff;padding:10px;border-radius:8px;color:#045a9a;border:1px solid rgba(11,97,217,0.08);font-weight:600;}
.wecan-quote-error{background:#fff2f2;padding:10px;border-radius:8px;color:#8a1f1f;border:1px solid rgba(138,31,31,0.08);font-weight:600;}
@media (max-width: 1024px){ .cc-cta .wrap{ grid-template-columns:1fr 380px; } }
@media (max-width: 820px){ .cc-cta .wrap{ grid-template-columns:1fr; padding:36px 4%; } .cc-cta .card{ order:2; margin-top:18px; } .cc-cta h2{ font-size:24px; } }