.cpn-cw,.cpn-cw *{box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.cpn-cw{width:100%;max-width:1320px;margin:0 auto;padding:18px;color:var(--cpn-primary);position:relative}.cpn-cw-grid{display:grid;grid-template-columns:minmax(280px,36%) 1fr;gap:34px;align-items:start}.cpn-cw-info-card,.cpn-cw-form-card{background:rgba(255,255,255,.82);border:1px solid rgba(7,16,74,.12);box-shadow:0 22px 60px rgba(7,16,74,.08);border-radius:22px;padding:24px;backdrop-filter:blur(16px)}.cpn-cw-kicker{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(36,107,254,.1);color:var(--cpn-accent);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.cpn-cw h2{font-size:25px;line-height:1.18;margin:0 0 12px;font-weight:800;color:var(--cpn-primary)}.cpn-cw p{font-size:14px;line-height:1.75;margin:0 0 18px}.cpn-cw-hero{width:100%;display:block;border-radius:18px;object-fit:cover;aspect-ratio:16/10;box-shadow:0 14px 30px rgba(7,16,74,.12);margin:16px 0}.cpn-cw h3{font-size:20px;line-height:1.15;margin:14px 0 14px;font-weight:800}.cpn-cw-points{display:grid;gap:12px}.cpn-cw-point{display:flex;gap:10px;align-items:flex-start}.cpn-cw-point span{width:22px;height:22px;border-radius:50%;display:inline-grid;place-items:center;border:2px solid var(--cpn-primary);font-weight:800;font-size:12px;flex:0 0 22px}.cpn-cw-point em{font-size:13px;font-weight:600;line-height:1.5}.cpn-cw-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:20px}.cpn-cw-progress span{position:relative;text-align:center;font-size:11px;font-weight:700;padding:11px 8px;border-radius:999px;background:#f2f5fb;color:#6c748c;transition:.25s}.cpn-cw-progress span.is-active{background:var(--cpn-primary);color:#fff;box-shadow:0 10px 20px rgba(36,107,254,.2)}.cpn-cw-step{display:none;animation:cpnFade .24s ease}.cpn-cw-step.is-active{display:block}@keyframes cpnFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.cpn-cw-row{display:grid;gap:14px;margin-bottom:12px}.cpn-cw-row.two{grid-template-columns:1fr 240px}.cpn-cw-row.two.wide-left{grid-template-columns:1fr 260px}.cpn-cw-row.three{grid-template-columns:repeat(3,1fr)}.cpn-cw label{display:block;font-size:11px;font-weight:700;color:var(--cpn-primary);margin-bottom:10px}.cpn-cw label b{color:#f04b5f}.cpn-cw input[type=text],.cpn-cw input[type=email],.cpn-cw input[type=tel],.cpn-cw textarea{width:100%;border:1px solid rgba(7,16,74,.28);border-radius:13px;padding:14px 15px;font-size:14px;color:var(--cpn-primary);outline:none;background:#fff;transition:.2s;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)}.cpn-cw input:focus,.cpn-cw textarea:focus{border-color:var(--cpn-accent);box-shadow:0 0 0 4px rgba(36,107,254,.12)}.cpn-cw textarea{resize:vertical;min-height:120px}.cpn-cw-select{position:relative}.cpn-cw-select-btn{width:100%;height:48px;border:1px solid rgba(7,16,74,.28);border-radius:13px;background:#fff;color:var(--cpn-primary);display:flex;align-items:center;justify-content:space-between;padding:0 14px;cursor:pointer;font-size:14px;font-weight:600;transition:.2s}.cpn-cw-select-btn:hover,.cpn-cw-select.open .cpn-cw-select-btn{border-color:var(--cpn-accent);box-shadow:0 0 0 4px rgba(36,107,254,.1)}.cpn-cw-select-btn i{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid var(--cpn-primary);transition:.2s}.cpn-cw-select.open i{transform:rotate(180deg)}.cpn-cw-select-menu{position:absolute;z-index:50;top:calc(100% + 7px);left:0;right:0;max-height:270px;overflow:auto;border:1px solid rgba(7,16,74,.18);border-radius:16px;background:#fff;padding:6px;box-shadow:0 20px 45px rgba(7,16,74,.18);display:none}.cpn-cw-select.open .cpn-cw-select-menu{display:block}.cpn-cw-select-menu::-webkit-scrollbar{width:10px}.cpn-cw-select-menu::-webkit-scrollbar-track{background:#f1f4fb;border-radius:999px}.cpn-cw-select-menu::-webkit-scrollbar-thumb{background:var(--cpn-primary);border-radius:999px;border:2px solid #f1f4fb}.cpn-cw-select-menu button{display:block;width:100%;text-align:left;border:0;background:transparent;color:var(--cpn-primary);font-size:13px;font-weight:600;border-radius:10px;padding:10px 12px;cursor:pointer}.cpn-cw-select-menu button:hover,.cpn-cw-select-menu button.is-selected{background:var(--cpn-accent);color:#fff}.cpn-cw-check{display:flex!important;gap:10px;align-items:flex-start;font-size:13px!important;line-height:1.5;font-weight:500!important}.cpn-cw-check input{width:18px;height:18px;margin-top:2px;accent-color:var(--cpn-accent);flex:0 0 18px}.cpn-cw-legal{border:1px solid rgba(7,16,74,.15);border-radius:16px;overflow:hidden;margin-top:16px;background:#fff}.cpn-cw-legal summary{font-weight:800;cursor:pointer;padding:14px 16px;background:#f7f9fe}.cpn-cw-legal div{padding:16px}.cpn-cw-legal p{font-size:13px;margin:0 0 12px}.cpn-cw-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:18px}.cpn-cw-btn{border:0;border-radius:999px;background:var(--cpn-primary);color:#fff;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.02em;padding:14px 28px;cursor:pointer;min-width:150px;transition:.2s;box-shadow:0 12px 24px rgba(7,16,74,.18)}.cpn-cw-btn:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(7,16,74,.24)}.cpn-cw-btn.ghost{background:#eef2fb;color:var(--cpn-primary);box-shadow:none}.cpn-cw-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.cpn-cw-links a{font-size:11px;color:var(--cpn-primary);font-weight:800;text-decoration:none}.cpn-cw-review{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.cpn-cw-review div{border:1px solid rgba(7,16,74,.12);border-radius:14px;padding:12px;background:#f9fbff}.cpn-cw-review strong{display:block;font-size:11px;text-transform:uppercase;color:#6c748c;margin-bottom:5px}.cpn-cw-review span{font-size:14px;font-weight:700}.cpn-cw-toast{position:fixed;right:22px;bottom:22px;z-index:99999;display:none;max-width:360px;padding:15px 18px;border-radius:18px;background:#061044;color:#fff;box-shadow:0 20px 50px rgba(7,16,74,.28);font-size:13px;font-weight:700}.cpn-cw-toast.show{display:block;animation:cpnFade .2s ease}.cpn-cw-locked{position:fixed;inset:0;background:rgba(2,7,44,.86);z-index:100000;display:grid;place-items:center;color:#fff;text-align:center;padding:20px}.cpn-cw-locked>div{max-width:460px;border-radius:26px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);padding:30px;backdrop-filter:blur(12px)}@media(max-width:980px){.cpn-cw-grid{grid-template-columns:1fr}.cpn-cw-row.two,.cpn-cw-row.two.wide-left,.cpn-cw-row.three{grid-template-columns:1fr}.cpn-cw-review{grid-template-columns:1fr}}@media(max-width:560px){.cpn-cw{padding:10px}.cpn-cw-info-card,.cpn-cw-form-card{padding:18px;border-radius:18px}.cpn-cw-progress{grid-template-columns:1fr 1fr}.cpn-cw-actions{flex-direction:column}.cpn-cw-btn{width:100%}}

/* CPN HARD PALETTE ISOLATION v1.0.1
   Prevents WordPress themes, Elementor, Gutenberg, Divi, Astra and global button styles
   from injecting template colors into the wizard controls. */
.cpn-cw.cpn-cw{
  --cpn-primary:#07104a;
  --cpn-primary-2:#02072c;
  --cpn-accent:#246bfe;
  --cpn-accent-2:#1d5be0;
  --cpn-soft:#f2f5fb;
  --cpn-soft-2:#eef2fb;
  --cpn-white:#ffffff;
  --cpn-muted:#6c748c;
  --cpn-border:rgba(7,16,74,.22);
  --cpn-focus:rgba(36,107,254,.14);
  --cpn-danger:#f04b5f;
  --cpn-success:#18a058;
}

.cpn-cw.cpn-cw,
.cpn-cw.cpn-cw *{
  font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}

.cpn-cw.cpn-cw button,
.cpn-cw.cpn-cw input,
.cpn-cw.cpn-cw textarea,
.cpn-cw.cpn-cw select{
  appearance:none !important;
  -webkit-appearance:none !important;
  outline:none !important;
}

.cpn-cw.cpn-cw .cpn-cw-select-btn,
.cpn-cw.cpn-cw .cpn-cw-select-btn:focus,
.cpn-cw.cpn-cw .cpn-cw-select-btn:active{
  background:var(--cpn-white) !important;
  background-color:var(--cpn-white) !important;
  color:var(--cpn-primary) !important;
  border:1px solid var(--cpn-border) !important;
  box-shadow:none !important;
  text-shadow:none !important;
}

.cpn-cw.cpn-cw .cpn-cw-select-btn:hover,
.cpn-cw.cpn-cw .cpn-cw-select.open .cpn-cw-select-btn{
  background:var(--cpn-white) !important;
  background-color:var(--cpn-white) !important;
  border-color:var(--cpn-accent) !important;
  box-shadow:0 0 0 4px var(--cpn-focus) !important;
  color:var(--cpn-primary) !important;
}

.cpn-cw.cpn-cw .cpn-cw-select-menu{
  background:var(--cpn-white) !important;
  border:1px solid rgba(7,16,74,.18) !important;
  box-shadow:0 20px 45px rgba(7,16,74,.18) !important;
}

.cpn-cw.cpn-cw .cpn-cw-select-menu button,
.cpn-cw.cpn-cw .cpn-cw-select-menu button:focus,
.cpn-cw.cpn-cw .cpn-cw-select-menu button:active{
  background:transparent !important;
  background-color:transparent !important;
  color:var(--cpn-primary) !important;
  border:0 !important;
  box-shadow:none !important;
  outline:none !important;
}

.cpn-cw.cpn-cw .cpn-cw-select-menu button:hover,
.cpn-cw.cpn-cw .cpn-cw-select-menu button.is-selected,
.cpn-cw.cpn-cw .cpn-cw-select-menu button.is-selected:focus,
.cpn-cw.cpn-cw .cpn-cw-select-menu button.is-selected:active{
  background:var(--cpn-accent) !important;
  background-color:var(--cpn-accent) !important;
  color:#fff !important;
  border:0 !important;
}

.cpn-cw.cpn-cw .cpn-cw-btn,
.cpn-cw.cpn-cw .cpn-cw-btn:focus,
.cpn-cw.cpn-cw .cpn-cw-btn:active{
  background:var(--cpn-primary) !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 12px 24px rgba(7,16,74,.18) !important;
}

.cpn-cw.cpn-cw .cpn-cw-btn:hover{
  background:var(--cpn-primary) !important;
  color:#fff !important;
  box-shadow:0 16px 30px rgba(7,16,74,.24) !important;
}

.cpn-cw.cpn-cw .cpn-cw-btn.ghost,
.cpn-cw.cpn-cw .cpn-cw-btn.ghost:focus,
.cpn-cw.cpn-cw .cpn-cw-btn.ghost:active,
.cpn-cw.cpn-cw .cpn-cw-btn.ghost:hover{
  background:var(--cpn-soft-2) !important;
  color:var(--cpn-primary) !important;
  box-shadow:none !important;
}

.cpn-cw.cpn-cw input[type=text],
.cpn-cw.cpn-cw input[type=email],
.cpn-cw.cpn-cw input[type=tel],
.cpn-cw.cpn-cw textarea{
  background:var(--cpn-white) !important;
  background-color:var(--cpn-white) !important;
  color:var(--cpn-primary) !important;
  border:1px solid var(--cpn-border) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7) !important;
}

.cpn-cw.cpn-cw input[type=text]:focus,
.cpn-cw.cpn-cw input[type=email]:focus,
.cpn-cw.cpn-cw input[type=tel]:focus,
.cpn-cw.cpn-cw textarea:focus{
  border-color:var(--cpn-accent) !important;
  box-shadow:0 0 0 4px var(--cpn-focus) !important;
}

.cpn-cw.cpn-cw input:-webkit-autofill,
.cpn-cw.cpn-cw input:-webkit-autofill:hover,
.cpn-cw.cpn-cw input:-webkit-autofill:focus,
.cpn-cw.cpn-cw textarea:-webkit-autofill,
.cpn-cw.cpn-cw textarea:-webkit-autofill:hover,
.cpn-cw.cpn-cw textarea:-webkit-autofill:focus{
  -webkit-text-fill-color:var(--cpn-primary) !important;
  box-shadow:0 0 0 1000px var(--cpn-white) inset !important;
  transition:background-color 9999s ease-in-out 0s !important;
}

.cpn-cw.cpn-cw .cpn-cw-progress span.is-active,
.cpn-cw.cpn-cw .cpn-cw-kicker,
.cpn-cw.cpn-cw .cpn-cw-select-menu::-webkit-scrollbar-thumb{
  background:var(--cpn-primary) !important;
}

.cpn-cw.cpn-cw .cpn-cw-kicker{
  color:#fff !important;
}

/* CPN v1.0.2 refinements */
.cpn-cw.cpn-cw .cpn-cw-toast{
  left:22px !important;
  right:auto !important;
  bottom:22px !important;
}
.cpn-cw.cpn-cw .cpn-cw-legal-static{
  border:1px solid rgba(7,16,74,.15) !important;
  border-radius:16px !important;
  overflow:hidden !important;
  margin-top:16px !important;
  background:#fff !important;
}
.cpn-cw.cpn-cw .cpn-cw-legal-static h4{
  margin:0 !important;
  padding:14px 16px !important;
  background:#f7f9fe !important;
  color:var(--cpn-primary) !important;
  font-size:13px !important;
  font-weight:800 !important;
  text-transform:uppercase !important;
  letter-spacing:.02em !important;
}
.cpn-cw.cpn-cw .cpn-cw-legal-static div{
  padding:16px !important;
}
.cpn-cw.cpn-cw .cpn-cw-legal-static p{
  font-size:13px !important;
  margin:0 0 12px !important;
  line-height:1.7 !important;
}
.cpn-cw.cpn-cw .cpn-error input[name="phone"]{
  border-color:var(--cpn-danger) !important;
  box-shadow:0 0 0 4px rgba(240,75,95,.12) !important;
}

/* CPN v1.0.3 multilingual + responsive refinements */
.cpn-cw.cpn-cw .cpn-cw-lang-switch{display:flex;justify-content:flex-end;gap:8px;margin:0 0 12px!important}
.cpn-cw.cpn-cw .cpn-cw-lang-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:34px;border-radius:999px;background:#eef2fb!important;color:var(--cpn-primary)!important;text-decoration:none!important;font-size:12px;font-weight:800!important;border:1px solid rgba(7,16,74,.12)!important;box-shadow:none!important}
.cpn-cw.cpn-cw .cpn-cw-lang-switch a.is-active{background:var(--cpn-primary)!important;color:#fff!important}
@media(max-width:1180px){.cpn-cw.cpn-cw{max-width:100%!important}.cpn-cw.cpn-cw .cpn-cw-grid{gap:22px!important}.cpn-cw.cpn-cw .cpn-cw-row.two,.cpn-cw.cpn-cw .cpn-cw-row.two.wide-left{grid-template-columns:1fr 220px!important}}
@media(max-width:980px){.cpn-cw.cpn-cw .cpn-cw-grid{grid-template-columns:1fr!important}.cpn-cw.cpn-cw .cpn-cw-row.two,.cpn-cw.cpn-cw .cpn-cw-row.two.wide-left,.cpn-cw.cpn-cw .cpn-cw-row.three{grid-template-columns:1fr!important}.cpn-cw.cpn-cw .cpn-cw-form-card{overflow:visible!important}.cpn-cw.cpn-cw .cpn-cw-select-menu{position:absolute!important}}
@media(max-width:640px){.cpn-cw.cpn-cw{padding:8px!important}.cpn-cw.cpn-cw .cpn-cw-info-card,.cpn-cw.cpn-cw .cpn-cw-form-card{padding:16px!important;border-radius:18px!important}.cpn-cw.cpn-cw h2{font-size:22px!important}.cpn-cw.cpn-cw h3{font-size:18px!important}.cpn-cw.cpn-cw .cpn-cw-progress{grid-template-columns:1fr 1fr!important}.cpn-cw.cpn-cw .cpn-cw-progress span{font-size:10px!important;padding:10px 6px!important}.cpn-cw.cpn-cw .cpn-cw-actions{flex-direction:column!important}.cpn-cw.cpn-cw .cpn-cw-btn{width:100%!important;min-width:0!important}.cpn-cw.cpn-cw .cpn-cw-links{display:grid!important;grid-template-columns:1fr!important}.cpn-cw.cpn-cw .cpn-cw-toast{left:12px!important;right:12px!important;bottom:12px!important;max-width:none!important}.cpn-cw.cpn-cw .cpn-cw-lang-switch{justify-content:center!important}}

/* CPN v1.0.4 consent acceptance refinements */
.cpn-cw.cpn-cw .cpn-cw-consent-copy{
  display:grid!important;
  gap:10px!important;
  margin:6px 0 16px!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-copy p{
  margin:0!important;
  color:var(--cpn-primary)!important;
  font-size:14px!important;
  line-height:1.65!important;
  font-weight:500!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-actions{
  display:grid!important;
  grid-template-columns:minmax(220px,360px) 1fr!important;
  gap:12px!important;
  align-items:center!important;
  margin-top:16px!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-accept,
.cpn-cw.cpn-cw .cpn-cw-marketing-toggle{
  margin:0!important;
  cursor:pointer!important;
  user-select:none!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-accept input,
.cpn-cw.cpn-cw .cpn-cw-marketing-toggle input{
  position:absolute!important;
  opacity:0!important;
  width:1px!important;
  height:1px!important;
  pointer-events:none!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-accept span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  border-radius:999px!important;
  padding:13px 22px!important;
  background:var(--cpn-primary)!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.02em!important;
  box-shadow:0 14px 28px rgba(7,16,74,.18)!important;
  border:1px solid transparent!important;
  transition:.22s ease!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-accept input:checked + span{
  background:var(--cpn-accent)!important;
  box-shadow:0 16px 32px rgba(36,107,254,.22)!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-accept input:checked + span:before{
  content:'✓';
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:21px!important;
  height:21px!important;
  border-radius:50%!important;
  background:#fff!important;
  color:var(--cpn-accent)!important;
  margin-right:9px!important;
  font-weight:900!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-accept.cpn-error span{
  border-color:var(--cpn-danger)!important;
  box-shadow:0 0 0 4px rgba(240,75,95,.12),0 14px 28px rgba(7,16,74,.18)!important;
}
.cpn-cw.cpn-cw .cpn-cw-marketing-toggle span{
  display:block!important;
  padding:11px 14px!important;
  border-radius:14px!important;
  background:#f7f9fe!important;
  border:1px solid rgba(7,16,74,.12)!important;
  color:var(--cpn-primary)!important;
  font-size:12px!important;
  line-height:1.5!important;
  font-weight:700!important;
}
.cpn-cw.cpn-cw .cpn-cw-marketing-toggle input:checked + span{
  border-color:var(--cpn-accent)!important;
  box-shadow:0 0 0 4px var(--cpn-focus)!important;
}
@media(max-width:760px){.cpn-cw.cpn-cw .cpn-cw-consent-actions{grid-template-columns:1fr!important}.cpn-cw.cpn-cw .cpn-cw-consent-copy p{font-size:13px!important}}

/* v1.0.5 Consent refinement: single required acceptance button */
.cpn-cw.cpn-cw .cpn-cw-consent-actions.single{
  grid-template-columns:minmax(240px,420px)!important;
  justify-content:start!important;
}
.cpn-cw.cpn-cw .cpn-cw-consent-actions.single .cpn-cw-consent-accept span{
  width:100%!important;
}
@media(max-width:760px){
  .cpn-cw.cpn-cw .cpn-cw-consent-actions.single{grid-template-columns:1fr!important;}
}

/* CPN v1.0.6 elegant success popup */
.cpn-cw-success-modal{position:fixed;inset:0;z-index:100000;display:none}.cpn-cw-success-modal.is-open{display:block}.cpn-cw-success-backdrop{position:absolute;inset:0;background:rgba(2,7,44,.66);backdrop-filter:blur(8px)}.cpn-cw-success-card{position:relative;max-width:520px;margin:10vh auto;background:#fff;border:1px solid rgba(7,16,74,.12);border-radius:28px;padding:30px;text-align:center;box-shadow:0 32px 90px rgba(7,16,74,.28);color:#07104a}.cpn-cw-success-close{position:absolute;right:16px;top:14px;width:36px;height:36px;border:0;border-radius:50%;background:#eef4ff;color:#07104a;font-size:25px;font-weight:900;cursor:pointer}.cpn-cw-success-icon{width:72px;height:72px;margin:4px auto 16px;border-radius:22px;display:grid;place-items:center;background:var(--cpn-primary);color:#fff;font-size:36px;font-weight:900;box-shadow:0 18px 32px rgba(36,107,254,.25)}.cpn-cw-success-card h3{font-size:25px;margin:0 0 10px!important;color:#07104a}.cpn-cw-success-card p{font-size:14px;line-height:1.7;margin:0 0 16px!important;color:#26325f}.cpn-cw-success-card strong{display:inline-flex;align-items:center;justify-content:center;margin:0 auto 20px;padding:10px 14px;border-radius:999px;background:#f4f7fc;color:#07104a;font-size:13px}.cpn-cw-toast{left:22px!important;right:auto!important}@media(max-width:620px){.cpn-cw-success-card{margin:7vh 14px;padding:24px}.cpn-cw-success-card h3{font-size:22px}}

/* CPN v1.0.7 success popup alignment */
.cpn-cw-success-card{display:flex;flex-direction:column;align-items:center;justify-content:center}
.cpn-cw-success-card strong{order:4;display:flex!important;align-items:center;justify-content:center;text-align:center;margin:2px auto 14px!important;width:fit-content;max-width:100%;line-height:1.35;white-space:normal}
.cpn-cw-success-card .cpn-cw-success-ok{order:5;min-width:140px;margin:0 auto!important;align-self:center!important}
.cpn-cw-success-card p{max-width:390px;text-align:center}

/* CPN v1.0.8 phone country flag and custom-only visual controls */
.cpn-cw-phone-wrap{position:relative;display:flex;align-items:center;width:100%}.cpn-cw-phone-flag{position:absolute;left:15px;top:50%;transform:translateY(-50%);z-index:2;font-size:20px;line-height:1;filter:drop-shadow(0 2px 4px rgba(7,16,74,.12))}.cpn-cw-phone-wrap input[type="tel"]{padding-left:48px!important}.cpn-cw .cpn-cw-select-menu{z-index:9999!important}.cpn-cw-toast{left:24px!important;right:auto!important}.cpn-cw-success-card strong{display:block!important;text-align:center!important;margin:12px auto 14px!important}.cpn-cw-success-ok{display:flex!important;margin:0 auto!important;align-items:center!important;justify-content:center!important}
@media(max-width:640px){.cpn-cw-toast{left:14px!important;right:14px!important;width:auto!important}.cpn-cw-phone-flag{left:13px}.cpn-cw-phone-wrap input[type="tel"]{padding-left:44px!important}}

/* CPN v1.0.9 Bootstrap Icons + smart phone flag */
.cpn-cw .bi{line-height:1}.cpn-cw-success-icon .bi{font-size:44px}.cpn-cw-point span{display:inline-grid;place-items:center}.cpn-cw-point span .bi{font-size:18px}.cpn-cw-consent-accept span{display:inline-flex;align-items:center;justify-content:center;gap:8px}.cpn-cw-links a{display:inline-flex!important;align-items:center;gap:6px}.cpn-cw-toast{display:flex!important;align-items:center!important;gap:10px!important}.cpn-cw-toast .bi{font-size:18px}.cpn-cw-phone-flag{min-width:24px;text-align:center}

/* 1.1.0 — flat contact experience */
.cpn-cw.cpn-cw{--cpn-border:#d2d2d7;--cpn-soft:#f5f5f7;--cpn-soft-2:#f5f5f7;padding:20px;max-width:1240px}
.cpn-cw.cpn-cw .cpn-cw-grid{gap:24px!important;grid-template-columns:minmax(260px,34%) minmax(0,1fr)}
.cpn-cw.cpn-cw.cpn-cw-minimal .cpn-cw-grid{grid-template-columns:minmax(0,1fr)!important;max-width:900px;margin:0 auto}
.cpn-cw.cpn-cw .cpn-cw-info-card,.cpn-cw.cpn-cw .cpn-cw-form-card{background:#fff;border:1px solid #e5e5ea;border-radius:20px;box-shadow:0 6px 24px #00000005;backdrop-filter:none;padding:28px;min-width:0}
.cpn-cw.cpn-cw h2{font-weight:700;line-height:1.25;letter-spacing:-.6px;font-size:27px}
.cpn-cw.cpn-cw h3{font-weight:650;line-height:1.35;letter-spacing:-.3px}
.cpn-cw.cpn-cw p{font-size:15px;line-height:1.65}
.cpn-cw.cpn-cw .cpn-cw-kicker{background:var(--cpn-soft)!important;color:var(--cpn-primary)!important;font-weight:600;border-radius:8px}
.cpn-cw.cpn-cw .cpn-cw-hero{box-shadow:none;border-radius:12px}
.cpn-cw.cpn-cw .cpn-cw-point em{font-style:normal;font-weight:500;font-size:14px}
.cpn-cw.cpn-cw .cpn-cw-point span{border:0;color:var(--cpn-accent)}
.cpn-cw.cpn-cw .cpn-cw-progress{padding:5px;background:#f5f5f7;border-radius:12px;gap:4px}
.cpn-cw.cpn-cw .cpn-cw-progress span{display:flex;align-items:center;justify-content:center;gap:6px;min-height:42px;border-radius:8px;box-shadow:none;font-size:12px;font-weight:600;padding:9px 6px;background:transparent}
.cpn-cw.cpn-cw .cpn-cw-progress span.is-active{background:var(--cpn-primary)!important;box-shadow:none}
.cpn-cw.cpn-cw label{font-size:13px;font-weight:600;margin-bottom:14px}
.cpn-cw.cpn-cw input[type=text],.cpn-cw.cpn-cw input[type=email],.cpn-cw.cpn-cw input[type=tel],.cpn-cw.cpn-cw textarea,.cpn-cw.cpn-cw .cpn-cw-select-btn{border-radius:10px!important;min-height:50px;box-shadow:none!important;font-size:15px;font-weight:400}
.cpn-cw.cpn-cw .cpn-cw-select-btn{font-weight:500;line-height:1.3}
.cpn-cw.cpn-cw input::placeholder,.cpn-cw.cpn-cw textarea::placeholder{color:#86868b;opacity:1}
.cpn-cw.cpn-cw .cpn-cw-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:10px;box-shadow:none!important;text-transform:none;font-size:14px;font-weight:600;letter-spacing:0;background:var(--cpn-primary)!important}
.cpn-cw.cpn-cw .cpn-cw-btn.ghost{background:#f5f5f7!important}
.cpn-cw.cpn-cw .cpn-cw-btn[hidden]{display:none!important}
.cpn-cw.cpn-cw .cpn-cw-btn:disabled{opacity:.6;cursor:wait;transform:none}
.cpn-cw.cpn-cw .cpn-cw-consent-accept span{border-radius:10px!important;box-shadow:none!important;text-transform:none!important;font-weight:600!important;letter-spacing:0!important;line-height:1.4}
.cpn-cw.cpn-cw .cpn-cw-links{border-top:1px solid #e5e5ea;padding-top:18px;gap:12px 16px}
.cpn-cw.cpn-cw .cpn-cw-links a{font-weight:500;font-size:12px;line-height:1.4}
.cpn-cw.cpn-cw .cpn-cw-review div{background:#f5f5f7;border-color:#e5e5ea}
.cpn-cw.cpn-cw .cpn-cw-review span{overflow-wrap:anywhere;font-weight:500;white-space:pre-wrap}
.cpn-cw.cpn-cw .cpn-cw-toast:not(.show){display:none!important}
.cpn-cw.cpn-cw button:focus-visible,.cpn-cw.cpn-cw a:focus-visible,.cpn-cw.cpn-cw .cpn-cw-consent-accept:has(input:focus-visible) span{outline:3px solid var(--cpn-accent)!important;outline-offset:3px}
.cpn-cw.cpn-cw .cpn-error input,.cpn-cw.cpn-cw .cpn-error .cpn-cw-select-btn{border-color:var(--cpn-danger)!important}
@media(max-width:980px){.cpn-cw.cpn-cw .cpn-cw-grid{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:560px){.cpn-cw.cpn-cw .cpn-cw-progress{grid-template-columns:repeat(2,1fr)!important}.cpn-cw.cpn-cw .cpn-cw-progress span{font-size:12px!important}.cpn-cw.cpn-cw .cpn-cw-progress i{font-size:14px}}
@media(prefers-reduced-motion:reduce){.cpn-cw.cpn-cw *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* 1.1.1 — field label spacing */
.cpn-cw.cpn-cw .cpn-cw-step label > input:not([type=hidden]):not([type=checkbox]),
.cpn-cw.cpn-cw .cpn-cw-step label > textarea,
.cpn-cw.cpn-cw .cpn-cw-step label > .cpn-cw-select,
.cpn-cw.cpn-cw .cpn-cw-step label > .cpn-cw-phone-wrap{margin-top:8px!important}

/* 1.2.0 structured address assistance */
.cpn-cw.cpn-cw .cpn-cw-address-section{border-top:1px solid #e5e5ea;padding-top:20px;margin-top:8px}
.cpn-cw.cpn-cw .cpn-cw-form select{display:block!important;width:100%;max-width:none;height:50px;border:1px solid var(--cpn-border);border-radius:10px;background:#fff;color:var(--cpn-primary);padding:12px 14px;font-size:15px;font-weight:500;margin-top:8px!important;appearance:auto!important;-webkit-appearance:menulist!important}
.cpn-cw.cpn-cw [hidden],.cpn-cw.cpn-cw .cpn-cw-form select[hidden]{display:none!important}
.cpn-cw.cpn-cw .cpn-cw-form select:focus{outline:3px solid var(--cpn-focus)!important;border-color:var(--cpn-accent)}
.cpn-cw.cpn-cw .cpn-address-check{display:flex;align-items:center;gap:14px;margin:12px 0}
.cpn-address-check small{font-size:12px;line-height:1.5;color:#6e6e73;max-width:380px}
.cpn-cw.cpn-cw .cpn-address-feedback{font-size:13px;line-height:1.5;margin-top:10px;color:var(--cpn-primary)}
.cpn-cw.cpn-cw .cpn-address-suggestion{display:block;width:100%;text-align:left;background:#f5f5f7;color:var(--cpn-primary);border:1px solid #d2d2d7;border-radius:12px;padding:14px;cursor:pointer;margin:8px 0}
.cpn-address-suggestion strong,.cpn-address-suggestion small{display:block}.cpn-address-suggestion small{margin-top:8px;font-size:12px;line-height:1.5;font-weight:400}
.cpn-cw.cpn-cw .cpn-address-suggestion:hover{border-color:var(--cpn-accent)}
@media(max-width:760px){.cpn-cw.cpn-cw .cpn-address-check{flex-direction:column;align-items:stretch}}
/* Address disclosure and visit scheduling: shared flat controls. */
.cpn-cw .cpn-address-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border:1px solid #dfe2ea;background:#f5f5f7;color:var(--cpn-primary);border-radius:12px;font:inherit;font-weight:600;cursor:pointer;text-align:left}
.cpn-cw .cpn-address-toggle span{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cpn-cw .cpn-address-toggle small{font-weight:400;opacity:.7}.cpn-cw .cpn-address-body{padding-top:20px}.cpn-cw .cpn-visit-opt{display:flex!important;align-items:center;gap:10px;margin:20px 0!important;padding:16px;background:#f5f5f7;border-radius:12px}.cpn-cw .cpn-visit-opt input{width:18px!important;height:18px!important;margin:0!important;accent-color:var(--cpn-primary)}.cpn-cw .cpn-visit-fields p{font-size:13px;margin:0 0 18px}.cpn-cw .cpn-visit-fields .cpn-cw-row>label{position:relative}.cpn-cw .cpn-date-button{display:flex;align-items:center;gap:10px;margin-top:8px;min-height:50px;width:100%;padding:12px 16px;border:1px solid #cdd0da;border-radius:10px;background:#fff;color:var(--cpn-primary);font:inherit;text-align:left;cursor:pointer}.cpn-cw .cpn-calendar{position:absolute;top:100%;left:0;width:310px;max-width:100%;z-index:50;padding:14px;border:1px solid #dfe2ea;border-radius:14px;background:#fff;box-shadow:0 12px 30px #00000015}.cpn-cw .cpn-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.cpn-cw .cpn-calendar-head strong{font-size:14px;text-transform:capitalize}.cpn-cw .cpn-calendar button{border:0;border-radius:8px;background:#f5f5f7;color:var(--cpn-primary);min-height:34px;font:inherit;cursor:pointer}.cpn-cw .cpn-calendar-head button{width:32px}.cpn-cw .cpn-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.cpn-cw .cpn-calendar-grid small{font-size:10px;padding-bottom:6px}.cpn-cw .cpn-calendar button:hover:not(:disabled),.cpn-cw .cpn-calendar button.is-selected{background:var(--cpn-primary);color:#fff}.cpn-cw .cpn-calendar button:disabled,.cpn-cw .cpn-cw-select-menu button:disabled{opacity:.35;cursor:default}.cpn-cw .cpn-date-button:focus-visible,.cpn-cw .cpn-address-toggle:focus-visible,.cpn-cw .cpn-calendar button:focus-visible{outline:2px solid var(--cpn-accent);outline-offset:2px}
.cpn-cw.cpn-cw .cpn-visit-opt input{display:inline-grid!important;place-content:center!important;flex:0 0 18px;border:1px solid #aeb3c0!important;border-radius:5px;background:#fff;cursor:pointer}.cpn-cw.cpn-cw .cpn-visit-opt input:checked{background:var(--cpn-primary);border-color:var(--cpn-primary)!important}.cpn-cw.cpn-cw .cpn-visit-opt input:checked::before{content:'✓';color:#fff;font-size:13px;line-height:1}.cpn-cw.cpn-cw .cpn-visit-opt:has(input:focus-visible){outline:2px solid var(--cpn-accent);outline-offset:2px}.cpn-cw.cpn-cw .cpn-error .cpn-date-button{border-color:var(--cpn-danger)}.cpn-cw.cpn-cw .cpn-cw-select-menu button:focus-visible{background:#f5f5f7!important;outline:2px solid var(--cpn-accent)!important;outline-offset:-2px}
.cpn-cw .cpn-customer-login{border:1px solid #dfe2ea;background:#f5f5f7;border-radius:12px;padding:14px;margin-bottom:18px}.cpn-cw .cpn-customer-login p{font-size:12px;line-height:1.5;margin:0 0 10px}.cpn-cw .cpn-customer-login button{border:1px solid #dfe2ea;background:#fff;border-radius:8px;color:var(--cpn-primary);padding:8px 12px;font:inherit;font-size:12px;cursor:pointer}.cpn-cw .cpn-pin-entry{display:flex;gap:8px;margin-top:12px}.cpn-cw .cpn-pin-entry input{max-width:150px!important;min-height:36px;letter-spacing:4px}.cpn-cw .cpn-customer-login .cpn-customer-status{margin:10px 0 0}.cpn-cw .cpn-customer-login [hidden]{display:none!important}
