/* Mosaned site survey: multi-step CF7 form */
.mzsv{position:relative}
.mzsv-progress{list-style:none;margin:6px 0 10px!important;padding:0!important;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;counter-reset:none}
.mzsv-progress li{display:flex;align-items:center;gap:10px;margin:0!important;color:#9FB0D3;font-size:13px;line-height:1.2;cursor:default;min-width:0}
.mzsv-progress li span{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:14px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.04);color:#C9D2E6;transition:all .35s}
.mzsv-progress li em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mzsv-progress li.on{color:#fff}
.mzsv-progress li.on span{background:#FF6A3A;border-color:#FF6A3A;color:#fff;box-shadow:0 0 0 5px rgba(255,106,58,.18)}
.mzsv-progress li.done{cursor:pointer;color:#C9D2E6}
.mzsv-progress li.done span{background:rgba(255,106,58,.16);border-color:rgba(255,106,58,.6);color:#FF6A3A}
.mzsv-bar{height:3px;border-radius:3px;background:rgba(255,255,255,.08);margin:0 0 26px;overflow:hidden}
.mzsv-bar i{display:block;height:100%;width:25%;background:linear-gradient(90deg,#FF6A3A,#FF9A6E);border-radius:3px;transition:width .5s cubic-bezier(.2,.8,.2,1)}
.mzsv-step{display:none}
.mzsv-step.on{display:block;animation:mzsvIn .45s cubic-bezier(.2,.8,.2,1)}
@keyframes mzsvIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
.mzsv-head{margin:0 0 20px}
.mzsv-head b{display:block;color:#FF6A3A;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.mzsv-head h4{margin:0!important;color:#fff!important;font-size:22px!important;line-height:1.3!important;font-weight:600!important}
/* chips (radio / checkbox) */
.mzsv-chips .wpcf7-radio,.mzsv-chips .wpcf7-checkbox{display:flex!important;flex-wrap:wrap;gap:10px}
.mzsv-chips .wpcf7-list-item{margin:0!important;display:block}
.mzc .mzsv-chips .wpcf7-list-item label{position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;margin:0;padding:13px 18px 13px 14px;border-radius:40px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04);color:#E8ECF4;font-size:15px;letter-spacing:0;text-transform:none;line-height:1.2;transition:border-color .25s,background .25s,transform .25s;user-select:none}
.mzc .mzsv-chips .wpcf7-list-item label:hover{border-color:rgba(255,106,58,.6);transform:translateY(-1px)}
.mzsv-chips .wpcf7-list-item input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.mzsv-chips .wpcf7-list-item-label{display:inline-flex;align-items:center;gap:10px;margin:0!important}
.mzsv-chips .wpcf7-list-item-label:before{content:"";flex:none;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.35);transition:all .25s;box-sizing:border-box}
.mzsv-chips .wpcf7-checkbox .wpcf7-list-item-label:before{border-radius:6px}
.mzsv-chips input:checked+.wpcf7-list-item-label:before{border-color:#FF6A3A;background:#FF6A3A url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 8.5l3 3 6-7' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.mzc .mzsv-chips .wpcf7-list-item label:has(input:checked){border-color:#FF6A3A;background:rgba(255,106,58,.14);color:#fff}
.mzsv-chips input:focus-visible+.wpcf7-list-item-label{outline:2px solid #FF6A3A;outline-offset:6px;border-radius:30px}
.mzsv-ops .wpcf7-list-item label{min-width:120px;justify-content:center;font-weight:600}
/* nav */
.mzsv-nav{display:flex;align-items:center;gap:14px;margin-top:28px;flex-wrap:wrap}
.mzsv-nav .wpcf7-spinner{order:3}
.mzsv-prev{background:transparent!important;border:1px solid rgba(255,255,255,.22)!important;color:#E8ECF4!important;border-radius:40px!important;padding:16px 26px!important;font-size:15px!important;font-weight:500;cursor:pointer;transition:border-color .25s,background .25s;font-family:inherit;line-height:1}
.mzsv-prev:hover{border-color:#fff!important;background:rgba(255,255,255,.06)!important}
.mzsv-next,.mzsv-send{margin-left:auto}
.mzsv-next:after{content:" \2192"}
.mzsv-err{display:block}
@media (max-width:767px){
  .mzsv-progress li em{display:none}
  .mzsv-progress{grid-template-columns:repeat(4,auto);justify-content:space-between}
  .mzsv-head h4{font-size:19px!important}
  .mzsv-nav{flex-direction:column-reverse;align-items:stretch}
  .mzsv-next,.mzsv-send,.mzsv-prev{margin:0;width:100%!important;text-align:center}
}
