/* /account/qz.css — GENERATED by kit/build_portal_questionnaire.py from site/complete-application.html. Do not edit: change the public page and rebuild.
   The wizard's own rules (.qz / .q-* and the shared classes its markup uses). Loaded after base.css,
   before redesign.css and account.css, as on the public questionnaire. */
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
.eyebrow{font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--link)}
.btn{display:inline-block;font-size:15px;font-weight:600;padding:13px 22px;background:var(--deep);color:#fff;border:1px solid var(--deep);border-radius:6px;cursor:pointer;font-family:var(--sans);line-height:1.2;text-align:center}
.btn:hover{text-decoration:none;background:var(--deep-2)}
.btn.line{background:transparent;color:var(--ink);border-color:var(--rule)}
.btn.line:hover{background:var(--panel)}
.num{font-variant-numeric:tabular-nums}
@media(max-width:560px){
  .wrap{padding:0 20px}
}
.s{padding:80px 0;border-bottom:1px solid var(--rule)}
@media(max-width:760px){
  .s{padding:56px 0}
}
.r{padding:30px 36px 34px 0;border-right:1px solid var(--rule);display:flex;flex-direction:column;gap:14px}
.r+.r{padding-left:36px}
.r:last-child{border-right:0;padding-right:0}
@media(max-width:900px){
  .r{border-right:0;border-top:1px solid var(--rule);padding:28px 0}
  .r+.r{padding-left:0}
}
.r .st{font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--link);background:var(--lime-soft);display:inline-block;padding:3px 9px;border-radius:4px;align-self:flex-start}
.r h3{font-size:24px}
.r p{font-size:16px;color:var(--ink-2);flex:1}
.meta{display:flex;gap:18px;flex-wrap:wrap;font-size:13.5px;color:var(--muted);margin-top:18px}
.meta a{color:var(--ink);font-weight:500}
.r,.r+.r{padding:28px 26px 26px;border:1px solid var(--rule);border-left:4px solid var(--lime);border-radius:var(--r);background:#fff;box-shadow:0 1px 3px rgba(11,35,23,.05)}
.r:last-child{border-right:1px solid var(--rule)}
@media(max-width:900px){
  .r,.r+.r{border-top:1px solid var(--rule);padding:24px 22px}
}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts label{font-size:14.5px;font-weight:500;border:1px solid #c5d0ca;border-radius:999px;padding:9px 16px;background:#fff;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.opts input{accent-color:var(--link);width:15px;height:15px;margin:0}
.opts label:has(input:checked){background:var(--lime-soft);border-color:var(--link);color:var(--deep);font-weight:600}
.helpbox{margin-top:14px;padding:14px 20px;background:#fff;border:1px solid #cfe9db;border-radius:var(--r);font-size:14.5px;color:var(--ink-2);text-align:center}
.helpbox a{font-weight:600}
.qz{background:var(--ground)}
.qz .phead{background:var(--tint);border-bottom:1px solid var(--rule);padding:44px 0 32px}
.qz .phead h1{color:var(--deep);font-size:clamp(28px,3.2vw,40px);margin-top:12px;max-width:24ch}
.qz .phead p{font-size:16.5px;color:var(--ink-2);max-width:66ch;margin-top:14px}
.qz .phead .firm{display:inline-block;margin-top:14px;font-size:14px;font-weight:600;color:var(--link);background:#fff;border:1px solid #cfe9db;border-radius:999px;padding:6px 14px}
.q-body{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;padding:40px 0 72px}
@media(max-width:900px){
  .q-body{grid-template-columns:1fr;gap:24px}
}
.q-rail{position:sticky;top:calc(var(--qz-hdr,0px) + 24px);align-self:start;max-height:calc(100vh - var(--qz-hdr,0px) - 48px);overflow:auto;scrollbar-width:thin}
.q-rail .eyebrow{display:block;background:none;padding:0;border-radius:0;margin:0 0 16px;font-size:11.5px;letter-spacing:.12em;color:var(--muted)}
.q-railbar{display:none}
.q-steps{position:relative;margin:0;padding:6px 0}
.q-steps::before{content:"";position:absolute;left:0;top:0;bottom:0;width:32px;border-radius:16px;background:#e8eeea}
.q-stp{position:relative;display:grid;grid-template-columns:32px 1fr;gap:14px;align-items:center;padding:8px 0;border:0;border-radius:0;margin:0;width:100%;text-align:left;font-family:var(--sans);background:none;cursor:pointer}
.q-stp .n{justify-self:center;width:24px;height:24px;border-radius:50%;background:#71807a;border:0;display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:600;color:#fff}
.q-stp .t{font-size:15.5px;font-weight:650;color:var(--ink);line-height:1.3}
.q-stp:hover .t{text-decoration:underline;text-underline-offset:3px}
.q-stp .s{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0!important;border:0!important;background:none!important}
.q-stp.on .n{background:var(--link);box-shadow:0 0 0 4px rgba(26,86,56,.14)}
.q-stp.on .t{color:var(--ink)}
.q-stp.done .n{background:var(--lime-soft);border:1px solid var(--lime);color:var(--link);font-size:0}
.q-stp.done .n::after{content:"✓";font-size:12.5px;font-weight:700}
.q-subs{margin:0 0 6px;padding:0}
.q-subi{display:grid;grid-template-columns:32px 1fr;gap:14px;align-items:center;width:100%;padding:7px 0;border:0;background:none;text-align:left;font-family:var(--sans);font-size:14.5px;line-height:1.35;color:var(--muted);cursor:pointer}
.q-subi::before{content:"";justify-self:center;width:7px;height:7px;border-radius:50%;background:#a3b0aa}
.q-subi:hover{color:var(--ink)}
.q-subi.on{color:var(--link);font-weight:600}
.q-subi.on::before{background:var(--link);width:8px;height:8px}
.q-rail .help{font-size:13px;color:var(--muted);margin-top:22px;line-height:1.5;background:var(--lime-soft);border:1px solid #cfe9db;border-radius:var(--r);padding:14px 16px}
.q-rail .help b{display:block;color:var(--ink);font-weight:600;margin-bottom:4px}
@media(max-width:900px){
  .q-rail{top:var(--qz-hdr,0px);z-index:40;max-height:none;overflow:visible;margin:0 calc(-1 * var(--gutter,20px));padding:10px var(--gutter,20px) 12px;background:var(--paper);border-bottom:1px solid var(--rule);box-shadow:0 6px 14px -12px rgba(11,35,23,.35)}
  .q-railbar{display:grid;grid-template-columns:1fr auto;grid-template-areas:"k c" "t c" "p p";column-gap:12px;align-items:center;width:100%;padding:0;border:0;background:none;text-align:left;font-family:var(--sans);cursor:pointer}
  .q-railbar .rb-k{grid-area:k;font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--link)}
  .q-railbar .rb-t{grid-area:t;font-size:17px;font-weight:650;color:var(--ink);line-height:1.3;margin-top:2px}
  .q-railbar .rb-c{grid-area:c;font-size:14px;font-weight:600;color:var(--link);white-space:nowrap}
  .q-railbar .rb-c::after{content:"";display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin:0 2px 3px 8px;transition:transform .15s}
  .q-railbar[aria-expanded="true"] .rb-c::after{transform:rotate(-135deg);margin-bottom:-1px}
  .q-railbar .rb-p{grid-area:p;height:4px;border-radius:2px;background:#e1e8e4;margin-top:10px;overflow:hidden}
  .q-railbar .rb-p i{display:block;height:100%;width:0;background:var(--link);border-radius:2px;transition:width .25s}
  .q-railbody{display:none;padding-top:14px;max-height:calc(100vh - var(--qz-hdr,0px) - 120px);overflow:auto}
  .q-rail.open .q-railbody{display:block}
  .q-rail .eyebrow{display:none}
}
.q-page{display:none}
.q-page.on{display:block}
body.q-nohc .hc{display:none!important}
.q-sec{margin-bottom:40px}
.q-sec>.eyebrow{display:inline-block;background:var(--lime-soft);color:var(--link);padding:3px 9px;border-radius:4px;margin-bottom:10px}
.q-sec>h2{font-size:24px;margin-bottom:6px;color:var(--deep)}
.q-sec>h2.sm{font-size:20px}
.q-sec>.lede{font-size:15px;color:var(--ink-2);max-width:64ch;margin-bottom:18px}
.q-row{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start;background:#fff;border:1px solid var(--rule);border-left:4px solid var(--lime);border-radius:var(--r);padding:18px 20px;margin-bottom:12px;box-shadow:0 1px 2px rgba(11,35,23,.04)}
.q-row:focus-within{border-color:var(--link);border-left-color:var(--deep);box-shadow:0 0 0 3px rgba(52,194,129,.18)}
.q-row.err{border-color:#b3423a;border-left-color:#b3423a}
@media(max-width:760px){
  .q-row{grid-template-columns:1fr;gap:8px}
}
.q-row>label,.q-row>.lbl{font-size:15px;font-weight:600;color:var(--deep);line-height:1.4;display:block}
.q-row .req{color:var(--lime);margin-left:4px;font-weight:600}
.q-row .why{font-size:13px;color:var(--muted);font-weight:400;margin-top:4px;line-height:1.5;display:block}
.qz input[type=text],.qz input[type=email],.qz input[type=tel],.qz input[type=number],.qz input[type=month],.qz input[type=date],.qz select,.qz textarea{width:100%;font-family:var(--sans);font-size:15.5px;padding:10px 12px;border:1px solid #c5d0ca;border-radius:6px;background:#fbfdfc;color:var(--ink)}
.qz textarea{min-height:88px;resize:vertical}
.qz input:focus,.qz select:focus,.qz textarea:focus{outline:0;border-color:var(--lime);box-shadow:0 0 0 3px rgba(52,194,129,.25);background:#fff}
.qz input.bad,.qz select.bad,.qz textarea.bad{border-color:#b3423a}
.q-row .h{font-size:13px;color:var(--muted);margin-top:6px;line-height:1.5}
.q-row .h b{color:var(--ink);font-weight:600}
.q-row .h a{font-weight:600}
.q-row .e{display:none;font-size:13px;color:#b3423a;margin-top:6px;font-weight:500}
.q-row.err .e{display:block}
.q-inl{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;align-items:end}
.q-inl>div{display:flex;flex-direction:column;justify-content:flex-end}
.q-sub{display:block;font-size:11.5px;font-weight:600;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px}
.q-money{position:relative}
.q-money::before{content:"£";position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--faint);font-weight:500;font-size:15px}
.q-money input{padding-left:26px!important}
.q-pct{position:relative}
.q-pct::after{content:"%";position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--faint);font-weight:500;font-size:15px}
.qz .opts label{border-color:#c5d0ca}
.q-yn{display:inline-flex;border:1px solid #c5d0ca;border-radius:999px;overflow:hidden;background:#fff}
.q-yn label{padding:9px 18px;font-size:14.5px;font-weight:500;cursor:pointer;background:#fff;border-right:1px solid #c5d0ca}
.q-yn label:last-child{border-right:0}
.q-yn input{position:absolute;opacity:0;width:0;height:0}
.q-yn label:has(input:checked){background:var(--deep);color:#fff}
.q-yn label:first-child:has(input:checked){background:var(--link)}
.q-yn label:has(input:checked){color:#fff!important}
.q-card{background:var(--tint);border:1px solid #cfe0d6;border-top:3px solid var(--lime);border-radius:var(--r);padding:0 20px 8px;margin:6px 0 4px}
.q-card .ch{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 20px 10px;margin:0 -20px;background:var(--lime-soft);border-bottom:1px solid #d9e6de}
.q-card .ch b{font-size:11.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--link)}
.q-card .ch a,.q-card .ch button{font-size:13.5px;font-weight:600;color:var(--link);background:none;border:0;cursor:pointer;font-family:var(--sans)}
.q-card .cr{display:grid;grid-template-columns:200px 1fr;gap:16px;padding:9px 0;border-bottom:1px solid #d9e6de;font-size:14.5px}
.q-card .cr:last-child{border-bottom:0}
.q-card .cr span:first-child{color:var(--muted)}
.q-card .cr span:last-child{color:var(--ink);font-weight:500}
.q-card .cr .flag,.q-chk .flag{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--warn);background:var(--warn-bg);padding:2px 7px;margin-left:8px;vertical-align:middle;white-space:nowrap}
.q-bar{height:9px;background:var(--rule-soft);margin:10px 0 6px;position:relative;border-radius:999px;overflow:hidden}
.q-bar i{position:absolute;left:0;top:0;bottom:0;background:var(--lime)}
.q-bar-t{font-size:13px;color:var(--muted)}
.q-bar-t b{color:var(--ink)}
.q-addr{background:#f3faf6;border:1px solid #d5e9dd;border-radius:var(--r);padding:14px 16px;margin-top:10px}
.q-addr .lbl{font-size:13px;font-weight:600;color:var(--link);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;display:block}
.q-addr .rm{float:right;font-size:12.5px;font-weight:600;color:var(--link);background:none;border:0;cursor:pointer;font-family:var(--sans)}
.q-person{border:1px solid var(--rule);border-radius:var(--r);overflow:hidden;background:#fff;box-shadow:0 1px 3px rgba(11,35,23,.05);margin-bottom:18px}
.q-person .ph{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;background:var(--tint-2);border-bottom:1px solid #cfe0d6}
.q-person .ph h3{font-size:18px;color:var(--deep)}
.q-person .ph .meta{font-size:13.5px;color:var(--muted);margin-top:2px}
.q-person .ph .st{font-size:11.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap;background:#fff;border:1px solid var(--rule);border-radius:999px;padding:5px 11px;font-family:var(--sans);cursor:pointer}
.q-person .ph .st.ok{background:var(--lime-soft);border-color:var(--lime);color:var(--link)}
.q-person .pb{padding:16px 16px 6px;background:#f3faf6}
.q-person.closed .pb{display:none}
.q-person .pb .q-row{margin-bottom:10px}
.q-chk label{display:grid;grid-template-columns:22px 1fr auto;gap:14px;padding:11px 14px;border:1px solid var(--rule);border-radius:6px;margin-bottom:8px;font-size:14.5px;align-items:start;cursor:pointer;background:var(--ground)}
.q-chk label:has(input:checked){background:var(--lime-soft);border-color:var(--lime)}
.q-chk input[type=checkbox]{accent-color:var(--link);width:16px;height:16px;margin-top:3px}
.q-chk .d{font-size:13px;color:var(--muted);display:block;margin-top:2px}
.q-chk .add{color:var(--link);font-weight:600}
.q-drop{border:2px dashed #b7d4c4;border-radius:var(--r);background:var(--lime-soft);padding:18px 22px;font-size:14.5px;color:var(--ink-2)}
.q-drop b{display:block;color:var(--ink);font-weight:600;margin-bottom:4px}
.q-drop input[type=file]{margin-top:10px;font-size:14px;width:100%}
.q-drop .fn{font-size:13px;color:var(--link);font-weight:600;margin-top:6px}
.q-guide{background:var(--tint);border-left:3px solid var(--lime);border-radius:0 6px 6px 0;padding:10px 14px;margin-top:12px;font-size:13.5px;color:var(--ink-2)}
.q-lender{border:1px solid var(--rule);border-radius:var(--r);background:#fff;padding:0 16px 6px;margin-bottom:14px}
.q-lender .lh{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin:0 -16px;background:var(--lime-soft);border-bottom:1px solid var(--rule-soft)}
.q-lender .lh b{font-size:15px}
.q-lender .lh button{font-size:13.5px;font-weight:600;color:var(--link);background:none;border:0;cursor:pointer;font-family:var(--sans)}
.q-lender .q-row{margin:12px 0}
.q-addrow{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600;color:var(--link);margin-top:6px;background:none;border:0;cursor:pointer;font-family:var(--sans)}
.q-addrow::before{content:"+";font-size:18px;line-height:1}
.q-calc{background:var(--deep);border-top:3px solid var(--lime);border-radius:var(--r);padding:4px 20px 10px;margin-top:6px}
.q-calc .cr{display:grid;grid-template-columns:1fr auto;gap:16px;padding:11px 0;border-bottom:1px solid var(--deep-rule);font-size:14.5px}
.q-calc .cr:last-child{border-bottom:0}
.q-calc .cr b{font-size:20px;font-weight:700;color:var(--lime-2);letter-spacing:-.02em}
.q-calc .cr span{color:var(--on-deep)}
.q-calc .cr small{display:block;color:var(--on-deep-soft);font-size:12.5px}
.q-fnav{display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--lime-soft);border:1px solid #cfe9db;border-radius:var(--r);padding:18px 20px;margin-top:8px;flex-wrap:wrap}
.q-fnav .sv{font-size:13.5px;color:var(--muted);display:inline-flex;align-items:center;gap:8px}
.q-fnav .sv::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime)}
.q-fnav .sv b{color:var(--ink)}
.q-fnav .r{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.q-det{margin-top:14px}
.q-det textarea{width:100%}
.q-row[hidden]{display:none!important}
.q-inl>div>.q-yn{align-self:flex-start}
.q-fnav .btn.line{background:#fff!important;color:var(--ink)!important;border-color:#c5d0ca!important}
.q-fnav .btn.line:hover{background:var(--lime-soft)!important}
.q-histnone{margin-top:14px;padding-top:14px;border-top:1px dashed #c5d0ca}
.q-fnav .r{flex-direction:row;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important}
@media(max-width:900px){
  .q-sec>.eyebrow.pe{display:none}
}
.q-pageerr{display:none;background:#fff2f1;border:1px solid #e3b3af;border-radius:var(--r);padding:12px 16px;font-size:14px;color:#8a2c25;margin-bottom:14px}
.q-pageerr.show{display:block}
.qz .helpbox{margin-top:14px}
.q-consent{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;line-height:1.5;color:var(--ink)}
.q-consent input{width:18px;height:18px;margin-top:3px;flex:none;accent-color:var(--link)}
.q-lookup{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.q-lookup input{max-width:220px}
.q-msg{font-size:13.5px;margin-top:8px;color:var(--muted)}
.q-msg.ok{color:var(--link)}
.q-msg.bad{color:#b3423a}
@media(max-width:760px){
  .q-card .cr{grid-template-columns:1fr;gap:2px}
  .q-card .cr .flag{white-space:normal;margin-left:0;margin-top:4px}
  .qz input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),.qz select,.qz textarea{font-size:16px!important}
  .qz .q-inl>div{min-width:0}
  .q-person .ph{flex-wrap:wrap}
}
@media(max-width:560px){
  .qz .q-inl{grid-template-columns:1fr!important}
}
.qz input::placeholder,.qz textarea::placeholder{color:#a3ada8;opacity:1}
