
.vcp-form-shell{
  --vcp-navy:#17324d;
  --vcp-blue:#4ea3e3;
  --vcp-blue-dark:#2f78b7;
  --vcp-soft:#f5fbff;
  --vcp-border:#dcebf6;
  --vcp-text:#586d7e;
  padding:80px 20px;
  background:
    radial-gradient(circle at 90% 5%,rgba(78,163,227,.14),transparent 28%),
    linear-gradient(180deg,#fff,#f5faff);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.vcp-form-shell *{box-sizing:border-box}
.vcp-form-card{
  max-width:880px;margin:0 auto;background:#fff;border:1px solid var(--vcp-border);
  border-radius:28px;padding:52px;box-shadow:0 25px 70px rgba(23,50,77,.09)
}
.vcp-form-heading{text-align:center;max-width:700px;margin:0 auto 38px}
.vcp-form-eyebrow{
  display:inline-block;padding:8px 14px;border-radius:999px;background:#eff8fe;color:#4a86ae;
  font-size:11px;font-weight:800;letter-spacing:1.1px;text-transform:uppercase;margin-bottom:16px
}
.vcp-form-heading h2{margin:0 0 14px;color:var(--vcp-navy);font-size:46px;line-height:1.05;letter-spacing:-1.5px}
.vcp-form-heading p{margin:0;color:var(--vcp-text);font-size:17px;line-height:1.75}
.vcp-section-title{display:flex;align-items:flex-start;gap:14px;margin:34px 0 18px}
.vcp-section-title>span{
  width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;
  background:linear-gradient(135deg,var(--vcp-blue-dark),var(--vcp-blue));color:#fff;font-size:12px;font-weight:800
}
.vcp-section-title strong{display:block;color:var(--vcp-navy);font-size:19px}
.vcp-section-title small{display:block;color:#7a8c99;margin-top:3px}
.vcp-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vcp-choice{position:relative;cursor:pointer}
.vcp-choice input{position:absolute;opacity:0;pointer-events:none}
.vcp-choice span{
  display:block;padding:16px 17px;border:1px solid var(--vcp-border);border-radius:14px;
  color:#405b6f;background:#fafdff;font-weight:700;transition:.2s ease
}
.vcp-choice input:checked+span{
  border-color:#80c5ef;background:#edf8ff;color:#2f78b7;
  box-shadow:0 8px 22px rgba(47,120,183,.10)
}
.vcp-fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.vcp-full{grid-column:1/-1}
.vcp-field-front label{display:block;margin:0 0 7px;color:#35566e;font-size:13px;font-weight:750}
.vcp-field-front input,.vcp-field-front select,.vcp-field-front textarea{
  width:100%;border:1px solid #d5e5ef;background:#fff;border-radius:12px;padding:14px 15px;
  color:#253f53;font-size:15px;outline:none;transition:.2s ease
}
.vcp-field-front input:focus,.vcp-field-front select:focus,.vcp-field-front textarea:focus{
  border-color:#77bde9;box-shadow:0 0 0 4px rgba(78,163,227,.10)
}
.vcp-field-front textarea{resize:vertical}
.vcp-privacy-note{display:block;margin-top:8px;color:#7a8d9a;line-height:1.55}
.vcp-consent{
  display:flex;gap:11px;align-items:flex-start;margin:24px 0;padding:16px;background:#f7fbfe;
  border:1px solid var(--vcp-border);border-radius:12px;color:#5d7180;font-size:13px;line-height:1.6
}
.vcp-consent input{margin-top:4px}
.vcp-submit{
  width:100%;border:0;border-radius:13px;padding:17px 20px;background:linear-gradient(135deg,var(--vcp-blue-dark),var(--vcp-blue));
  color:#fff;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 14px 30px rgba(47,120,183,.20);transition:.2s ease
}
.vcp-submit:hover{transform:translateY(-2px);box-shadow:0 18px 34px rgba(47,120,183,.26)}
.vcp-direct-contact{text-align:center;margin-top:20px;color:#768895;font-size:13px}
.vcp-direct-contact span{display:block;margin-bottom:6px}
.vcp-direct-contact a{color:#2f78b7;text-decoration:none;font-weight:700;margin:0 8px}
.vcp-alert{padding:16px 18px;border-radius:12px;margin:0 0 25px;line-height:1.55}
.vcp-alert strong,.vcp-alert span{display:block}
.vcp-alert-success{background:#eefaf4;border:1px solid #cdebdc;color:#275e44}
.vcp-alert-error{background:#fff4f4;border:1px solid #f1d0d0;color:#7d3c3c}
.vcp-honeypot{position:absolute!important;left:-99999px!important;opacity:0!important;height:0!important;width:0!important;overflow:hidden!important}
@media(max-width:700px){
  .vcp-form-shell{padding:55px 14px}
  .vcp-form-card{padding:30px 20px;border-radius:20px}
  .vcp-form-heading h2{font-size:36px}
  .vcp-service-grid,.vcp-fields{grid-template-columns:1fr}
  .vcp-full{grid-column:auto}
}


.vcp-input-wrap{
  position:relative;
}
.vcp-input-wrap .vcp-field-front input{}
.vcp-input-wrap input{
  padding-left:44px!important;
  padding-right:42px!important;
}
.vcp-input-icon{
  position:absolute;
  left:14px;
  top:50%;
  transform:translateY(-50%);
  width:18px;
  height:18px;
  color:#6f8ba0;
  pointer-events:none;
  z-index:2;
}
.vcp-input-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.vcp-valid-icon{
  position:absolute;
  right:14px;
  top:50%;
  transform:translateY(-50%);
  width:20px;
  height:20px;
  border-radius:50%;
  display:none;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:900;
}
.vcp-input-wrap.is-valid .vcp-valid-icon{
  display:flex;
  background:#eaf8f0;
  color:#2d8b57;
}
.vcp-input-wrap.is-valid .vcp-valid-icon:before{
  content:"✓";
}
.vcp-input-wrap.is-invalid .vcp-valid-icon{
  display:flex;
  background:#fff0f0;
  color:#b44b4b;
}
.vcp-input-wrap.is-invalid .vcp-valid-icon:before{
  content:"!";
}
.vcp-input-wrap.is-valid input{
  border-color:#8bcba8!important;
  box-shadow:0 0 0 4px rgba(68,160,108,.08)!important;
}
.vcp-input-wrap.is-invalid input{
  border-color:#d98c8c!important;
  box-shadow:0 0 0 4px rgba(188,70,70,.07)!important;
}
.vcp-field-help{
  display:block;
  margin-top:7px;
  color:#7a8d9a;
  font-size:12px;
  line-height:1.4;
}
.vcp-field-help.is-error{
  color:#a84444;
}
