/* Shipping Containers NZ: multistep quote quiz */
.scnzq{--q-green:var(--color-light-blue,#184D40);--q-ink:var(--color-navy-blue,#202827);--q-bg:#F5F2E9;--q-line:#D8DFD4;--q-muted:#5b6663;color:var(--q-ink);text-align:left}
.scnzq *{box-sizing:border-box}
.scnzq [hidden]{display:none!important}
.scnzq-modal{position:fixed;inset:0;z-index:9999;background:rgba(18,24,23,.55);display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;transition:opacity .18s ease}
.scnzq-modal[hidden]{display:none!important}
.scnzq-modal.is-open{opacity:1}
.scnzq--modal{position:relative;width:100%;max-width:1180px;background:var(--q-bg);border:1px solid var(--q-line);border-radius:18px;box-shadow:0 30px 80px rgba(0,0,0,.25);overflow:hidden;transform:translateY(8px);transition:transform .2s ease}
.scnzq-modal.is-open .scnzq--modal{transform:none}
.scnzq--modal form{max-height:min(88vh,820px);overflow-y:auto;overscroll-behavior:contain}
.scnzq-close{position:absolute;top:.7rem;right:.9rem;z-index:3;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.9);font-size:1.9rem;line-height:1;cursor:pointer;color:var(--q-ink)}
.scnzq-close:hover{background:#fff}
.scnzq--inline{background:var(--q-bg);border:1px solid var(--q-line);border-radius:18px;max-width:1180px;margin:2rem auto 3.5rem;overflow:hidden;scroll-margin-top:120px}
.scnzq-progress{height:5px;background:var(--q-line)}
.scnzq-progress span{display:block;height:100%;width:0;background:var(--q-green);transition:width .3s ease}
.scnzq-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:560px}
.scnzq-main{padding:2.6rem 2.8rem 2.2rem;display:flex;flex-direction:column}
.scnzq-step{flex:1;outline:none}
.scnzq-kicker,.scnzq-count{font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--q-green);margin:0 0 .6rem}
.scnzq-h{font-size:clamp(1.6rem,1.2rem + 1.3vw,2.35rem);line-height:1.15;font-weight:800;margin:0 0 .8rem;letter-spacing:-.015em}
.scnzq-lead{font-size:1.12rem;line-height:1.65;margin:0 0 1.2rem;color:var(--q-ink)}
.scnzq-sub{font-size:1rem;color:var(--q-muted);margin:0 0 1.2rem}
.scnzq-sub a{color:var(--q-green);text-decoration:underline}
.scnzq-ticks{list-style:none;padding:0;margin:0 0 2rem}
.scnzq-ticks li{position:relative;padding-left:2rem;margin:.55rem 0;font-size:1.05rem}
.scnzq-ticks li:before{content:"";position:absolute;left:0;top:.15rem;width:1.3rem;height:1.3rem;border-radius:50%;background:var(--q-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/70% no-repeat}
.scnzq-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.scnzq-hint{font-size:.9rem;color:var(--q-muted)}
.scnzq-hint kbd{font:inherit;font-weight:700;border:1px solid var(--q-line);border-radius:6px;padding:.05rem .4rem;background:#fff}
.scnzq-btn{appearance:none;border:0;border-radius:999px;background:var(--q-green);color:#fff;font:inherit;font-weight:700;font-size:1.08rem;padding:.95rem 2.1rem;cursor:pointer;transition:background .15s,transform .15s}
.scnzq-btn:hover{background:#123D32}
.scnzq-btn:active{transform:translateY(1px)}
.scnzq-btn:disabled{opacity:.6;cursor:wait}
.scnzq-btn:focus-visible,.scnzq-back:focus-visible,.scnzq-qty button:focus-visible{outline:3px solid rgba(24,77,64,.35);outline-offset:2px}
.scnzq-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.8rem;padding-top:1.3rem;border-top:1px solid var(--q-line)}
.scnzq-back{appearance:none;width:48px;height:48px;border-radius:50%;border:1.5px solid var(--q-line);background:#fff;font-size:1.3rem;cursor:pointer;color:var(--q-ink)}
.scnzq-back:hover{border-color:var(--q-green)}
.scnzq-nav .scnzq-btn{margin-left:auto}
/* Sizes */
.scnzq-sizes{display:flex;flex-direction:column;gap:.6rem}
.scnzq-size{display:flex;align-items:center;justify-content:space-between;gap:.8rem;background:#fff;border:1.5px solid var(--q-line);border-radius:14px;padding:.75rem .9rem .75rem 1rem;transition:border-color .15s,box-shadow .15s}
.scnzq-size.is-on{border-color:var(--q-green);box-shadow:0 0 0 3px rgba(24,77,64,.12)}
.scnzq-size-l{display:flex;align-items:center;gap:.85rem;cursor:pointer;flex:1;min-width:0}
.scnzq-size-l input,.scnzq-card input,.scnzq-chip input{position:absolute;opacity:0;width:1px;height:1px}
.scnzq-box{flex:0 0 auto;width:24px;height:24px;border-radius:7px;border:2px solid #b8c3bb;background:#fff;transition:all .15s}
.scnzq-size-l input:checked+.scnzq-box{background:var(--q-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/80% no-repeat;border-color:var(--q-green)}
.scnzq-size-l input:focus-visible+.scnzq-box{outline:3px solid rgba(24,77,64,.35);outline-offset:2px}
.scnzq-size-l strong,.scnzq-card strong,.scnzq-chip strong{display:block;font-size:1.05rem;font-weight:700}
.scnzq-size-l small,.scnzq-card small,.scnzq-chip small{display:block;font-size:.88rem;color:var(--q-muted);line-height:1.4;margin-top:.1rem}
.scnzq-qty{display:flex;align-items:center;border:1.5px solid var(--q-line);border-radius:999px;overflow:hidden;background:#FBFAF6;flex:0 0 auto}
.scnzq-qty button{appearance:none;border:0;background:transparent;width:38px;height:38px;font-size:1.25rem;cursor:pointer;color:var(--q-ink)}
.scnzq-qty button:hover{background:var(--q-line)}
.scnzq-qty input{width:2.4rem;border:0;background:transparent;text-align:center;font:inherit;font-weight:700;font-size:1.05rem;-moz-appearance:textfield;padding:0}
.scnzq-qty input::-webkit-outer-spin-button,.scnzq-qty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.scnzq-other{display:flex;flex-direction:column;gap:.35rem;font-weight:600;font-size:.95rem;margin-top:.3rem}
/* Condition cards */
.scnzq-cards{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.scnzq-card,.scnzq-chip{position:relative;display:block;background:#fff;border:1.5px solid var(--q-line);border-radius:14px;padding:1rem 1.1rem;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}
.scnzq-card:hover,.scnzq-chip:hover{border-color:#9DB8A9}
.scnzq-card:has(input:checked),.scnzq-chip:has(input:checked){border-color:var(--q-green);box-shadow:0 0 0 3px rgba(24,77,64,.12);background:#F1F5F1}
.scnzq-card:has(input:focus-visible),.scnzq-chip:has(input:focus-visible){outline:3px solid rgba(24,77,64,.35);outline-offset:2px}
.scnzq-chips{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.scnzq-chip{padding:.8rem 1rem .8rem 2.7rem}
.scnzq-chip:before{content:"";position:absolute;left:1rem;top:1rem;width:20px;height:20px;border-radius:6px;border:2px solid #b8c3bb;background:#fff}
.scnzq-chip:has(input:checked):before{background:var(--q-green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/80% no-repeat;border-color:var(--q-green)}
.scnzq-chip strong{font-size:1rem}
/* Fields */
.scnzq-fields{display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1rem}
.scnzq-fields label{display:flex;flex-direction:column;gap:.3rem;font-weight:600;font-size:.92rem}
.scnzq-wide{grid-column:1/-1}
.scnzq input[type=text],.scnzq input[type=email],.scnzq input[type=tel],.scnzq select,.scnzq textarea{width:100%;border:1.5px solid #cfd8d0;border-radius:10px;padding:.68rem .85rem;font:inherit;font-weight:400;font-size:1rem;background:#fff;color:var(--q-ink)}
.scnzq input:focus,.scnzq select:focus,.scnzq textarea:focus{outline:none;border-color:var(--q-green);box-shadow:0 0 0 3px rgba(24,77,64,.15)}
.scnzq .is-bad{border-color:#B4472F!important;box-shadow:0 0 0 3px rgba(180,71,47,.12)!important}
.scnzq-consent{display:block;margin-top:1rem;font-size:.92rem;line-height:1.55;cursor:pointer}
.scnzq-consent input{margin-right:.5rem;accent-color:var(--q-green);vertical-align:-2px;width:17px;height:17px}
.scnzq-consent input.is-bad{outline:2px solid #B4472F}
.scnzq-consent a{color:var(--q-green);text-decoration:underline}
.scnzq-err{margin:1rem 0 0;padding:.7rem .9rem;border-radius:10px;background:#FBEDEA;border:1px solid #e6b9ae;color:#7a2d1d;font-size:.95rem}
.scnzq-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
/* Media column */
.scnzq-media{position:relative;background:#E9E5D8;overflow:hidden;min-height:100%}
.scnzq-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:scnzqFade .35s ease}
.scnzq-media.is-drawing{background:#F5F2E9}
.scnzq-media.is-drawing img{object-fit:contain;padding:2.5rem 2rem 7rem}
.scnzq--modal .scnzq-media{position:sticky;top:0;align-self:start;height:min(calc(88vh - 5px),815px);min-height:0}
.scnzq--modal .scnzq-nav{position:sticky;bottom:0;background:var(--q-bg);padding-bottom:1rem;margin-bottom:-1rem;z-index:2}
@keyframes scnzqFade{from{opacity:0}to{opacity:1}}
.scnzq-summary{position:absolute;left:1.2rem;right:1.2rem;bottom:1.2rem;background:rgba(255,255,255,.95);border-radius:14px;padding:1rem 1.2rem;box-shadow:0 8px 30px rgba(0,0,0,.12);font-size:.92rem}
.scnzq-summary-h{font-weight:800;margin:0 0 .4rem;font-size:.82rem;text-transform:uppercase;letter-spacing:.07em;color:var(--q-green)}
.scnzq-summary dl{display:grid;grid-template-columns:auto 1fr;gap:.2rem .9rem;margin:0}
.scnzq-summary dt{font-weight:700}
.scnzq-summary dd{margin:0;color:var(--q-ink)}
.scnzq-done .scnzq-h{color:var(--q-green)}
@media (max-width:900px){
 .scnzq-grid{grid-template-columns:1fr;min-height:0}
 .scnzq-media,.scnzq--modal .scnzq-media{order:-1;height:190px;min-height:0;position:relative}
 .scnzq-media.is-drawing img{padding:1rem}
 .scnzq-summary{display:none!important}
 .scnzq-main{padding:1.6rem 1.25rem 1.4rem}
 .scnzq-modal{padding:0;align-items:stretch}
 .scnzq--modal{border-radius:0;max-width:none}
 .scnzq--modal form{max-height:100vh;height:100vh}
 .scnzq-cards,.scnzq-chips,.scnzq-fields{grid-template-columns:1fr}
 .scnzq-wide{grid-column:auto}
 .scnzq-nav{position:sticky;bottom:0;background:var(--q-bg);padding-bottom:.4rem}
}
@media (max-width:420px){.scnzq-size-l small{display:none}.scnzq-qty button{width:34px}}
