/* ===== conciergecio.com mandate wizard =====================================
 * GENERATED by wizard/build-page-css.py from wizard.css. Do not hand-edit:
 * edit the prototype, re-extract, and re-run the builder.
 *
 * Every rule is scoped to .ccio-wizard. The source stylesheet resets the
 * document (body, p, a, h1-h4, *, :root) because the prototype owns its page;
 * here the wizard is a panel inside a page that already has a header, a
 * footer and a type system. NEVER append the unscoped wizard.css to
 * custom.css: it would restyle all 66 pages.
 *
 * Dark mode is deliberately absent. The site carries no prefers-color-scheme
 * rule and no color-scheme declaration, so a dark panel would sit inside a
 * light page.
 *
 * Type resolves to faces the template already self-hosts: Inter for text and
 * numerals, Sora for the wizard's own headings. No font is loaded here.
 * ========================================================================= */

.ccio-wizard{--paper:#F8F7F7;
  --surface:#FFFFFF;
  
  --surface-2:#F2F1F1;
  --ink:#201F1D;
  --ink-2:#4B4843;
  --muted:#726F67;
  
  --hairline:#D4D2CF;
  --hairline-2:#B9B7B4;
  
  --accent:#FC615D;
  --accent-ink:#FFFFFF;
  
  --accent-soft:#FFF5F5;
  
  --accent-mark:#FD7D7A;
  --navy:#34495E;

  --c-persona:#34495E;
  --c-addon:#41708C;
  --c-foundation:#A66A06;
  --c-asset:#1A7A42;
  --c-legacy:#63717B;
  --c-project:#B85C15;
  --c-software:#0F7566;
  --c-aux:#9E2E23;

  --good:#1A7A42;
  --warn:#A66A06;
  --crit:#9E2E23;

  --shadow:0 1px 2px rgba(22,32,43,.06), 0 8px 24px -16px rgba(22,32,43,.28);
  
  --wz-sans:'Inter',ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  --wz-head:'Sora',var(--wz-sans);
  --wz-num:var(--wz-sans);          
  --wz-code:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;

  --radius:0;                        

  
  --tag-h:15.6px;
  --measure:66ch;}
.ccio-wizard,.ccio-wizard *,.ccio-wizard *::before,.ccio-wizard *::after{box-sizing:border-box}
.ccio-wizard{margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--wz-sans);
  font-size:17px;
  line-height:1.62!important;
  -webkit-font-smoothing:antialiased;}
.ccio-wizard p{margin:0}
.ccio-wizard a{color:var(--accent);text-underline-offset:2px}
.ccio-wizard a:focus-visible,.ccio-wizard button:focus-visible,.ccio-wizard select:focus-visible,.ccio-wizard input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:0;}
.ccio-wizard .panel{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);
  box-shadow:var(--shadow);}
.ccio-wizard .wizard{margin-top:28px}
.ccio-wizard .wizard-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;
  padding:14px 20px;background:var(--surface-2);border-bottom:1px solid var(--hairline);}
.ccio-wizard .wizard-bar .title{font-family:var(--wz-head);font-weight:600;font-size:17px;margin-right:auto}
.ccio-wizard .wizard-grid{display:grid;grid-template-columns:1.05fr .95fr}

@media (max-width:900px){
  .ccio-wizard .wizard-grid{grid-template-columns:1fr}
  .ccio-wizard .out-stage{display:block;margin:28px 0 20px}
}
.ccio-wizard .wz-form{padding:8px 24px 28px;border-right:1px solid var(--hairline)}

@media (max-width:900px){
  .ccio-wizard .wz-form{border-right:0}
}
.ccio-wizard .wz-out{padding:8px 24px 28px;background:var(--surface-2)}

@media (min-width:901px){
  .ccio-wizard .wz-sticky{position:sticky;top:88px;}
}

@media (max-width:600px){
  .ccio-wizard .wizard{border:0;box-shadow:none}
  .ccio-wizard .wizard-bar{padding-left:12px;padding-right:12px}
  .ccio-wizard .wz-form{padding-left:12px;padding-right:12px}
  .ccio-wizard .wz-out{padding-left:12px;padding-right:12px}
}
.ccio-wizard .step{padding-top:24px}
.ccio-wizard .step + .step{margin-top:30px;border-top:1px dashed var(--hairline);padding-top:30px}
.ccio-wizard .step-q{font-family:var(--wz-head);font-size:17px;font-weight:600;display:flex;gap:10px;align-items:baseline;}
.ccio-wizard .step-q .n{font-family:var(--wz-code);font-size:11px;color:var(--accent);
  border:1px solid var(--hairline-2);border-radius:50%;width:20px;height:20px;
  display:inline-grid;place-items:center;flex:none;font-weight:600;}
.ccio-wizard .step-help{font-size:13.5px;color:var(--muted);margin:5px 0 0 30px}
.ccio-wizard .choices{display:grid;gap:8px;margin:14px 0 0 30px}
.ccio-wizard .choice{display:flex;gap:11px;align-items:flex-start;padding:10px 13px;cursor:pointer;
  position:relative;
  border:1px solid var(--hairline);border-radius:0;background:var(--surface);
  transition:border-color .12s,background .12s;}
.ccio-wizard .choice:hover{border-color:var(--hairline-2)}
.ccio-wizard .choice input{position:absolute;width:1px;height:1px;opacity:0;margin:0;pointer-events:none;}
.ccio-wizard .choice .lbl{font-weight:600;font-size:15px;line-height:1.3!important}
.ccio-wizard .choice .sub{font-size:13px;color:var(--muted);line-height:1.4!important;display:block;margin-top:2px}
.ccio-wizard .choice:has(input:checked){background:var(--paper)}
.ccio-wizard .counts{display:grid;gap:6px;margin:14px 0 0 30px}
.ccio-wizard .count-row{display:grid;grid-template-columns:1fr 78px;gap:12px;align-items:center;
  padding:8px 0;border-bottom:1px solid var(--hairline);}
.ccio-wizard .count-row:last-child{border-bottom:0}
.ccio-wizard .count-row .lbl{font-size:15px;font-weight:600;line-height:1.25!important}
.ccio-wizard .count-row .sub{display:block;font-size:12.5px;color:var(--muted);font-weight:400;line-height:1.35!important;margin-top:1px}
.ccio-wizard .count-row input{font:inherit;font-family:var(--wz-num);font-variant-numeric:tabular-nums slashed-zero;
  font-size:15px;font-weight:400;text-align:right;
  padding:6px 9px;border:1px solid var(--hairline-2);border-radius:0;
  background:var(--surface);color:var(--ink);width:100%;}
.ccio-wizard .count-row input:not([value="0"]){border-color:var(--hairline-2)}
.ccio-wizard .count-row input:hover,.ccio-wizard .count-row input:focus-visible,.ccio-wizard .addon-head input:hover,.ccio-wizard .addon-head input:focus-visible{outline:none;border-color:var(--accent);}
.ccio-wizard .count-row input,.ccio-wizard .addon-head input{-moz-appearance:textfield;appearance:textfield;}
.ccio-wizard .count-row input::-webkit-inner-spin-button,.ccio-wizard .count-row input::-webkit-outer-spin-button,.ccio-wizard .addon-head input::-webkit-inner-spin-button,.ccio-wizard .addon-head input::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0;}
.ccio-wizard .out-h{font-family:var(--wz-sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;
  font-weight:700;color:var(--muted);margin:38px 0 12px;}
.ccio-wizard .out-h:first-child{margin-top:24px}
.ccio-wizard .line{display:block;padding:12px 0 12px 14px;border-bottom:1px solid var(--hairline);
  border-left:3px solid var(--stripe,var(--navy));}
.ccio-wizard .line .nm{display:block}
.ccio-wizard .line .nm{font-weight:600;font-size:15px;line-height:1.3!important}
.ccio-wizard .line .sub{display:block;font-weight:400;font-size:12.5px;color:var(--muted);line-height:1.4!important;margin-top:2px}
.ccio-wizard .line .amt{font-family:var(--wz-num);font-variant-numeric:tabular-nums slashed-zero;
  font-size:14.5px;font-weight:600;white-space:nowrap;text-align:right;}
.ccio-wizard .line .amt .per{display:block;font-size:11px;font-weight:400;color:var(--muted)}
.ccio-wizard .line .why{display:block;font-size:13px;line-height:1.45!important;color:var(--ink-2);margin-top:5px;}
.ccio-wizard .line .why.warnline{color:var(--warn);font-weight:600;
  padding-left:9px;border-left:2px solid var(--warn);}
.ccio-wizard .covered-card{background:var(--surface);border:1px solid var(--hairline);border-radius:0;
  overflow:hidden;margin-top:10px;}
.ccio-wizard .covered-card .line{padding:14px 16px 14px 16px}
.ccio-wizard .covered-card .line:last-child{border-bottom:0}
.ccio-wizard .line.covered{border-bottom-color:var(--hairline)}
.ccio-wizard .line.covered .nm{font-weight:600}
.ccio-wizard .out-h .out-note{font-family:var(--wz-code);font-size:11px;color:var(--muted);text-transform:uppercase;
  border:1px solid var(--hairline-2);border-radius:0;padding:0 5px;margin-left:6px;letter-spacing:0;}
.ccio-wizard .nudge.quiet{border-color:var(--hairline-2);background:var(--surface);color:var(--muted);font-size:13px}
.ccio-wizard .stage-label{margin:36px 0 -6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  color:var(--accent);padding-bottom:8px;border-bottom:2px solid var(--accent);}
.ccio-wizard .stage-label.second{margin-top:56px}

@media (min-width:901px){
  .ccio-wizard .out-stage{display:none}
}
.ccio-wizard .choice > span{position:relative;padding-left:21px;flex:1}
.ccio-wizard .choice > span::before{content:'';position:absolute;left:0;top:9px;box-sizing:border-box;
  width:10px;height:10px;border-radius:50%;
  border:1px solid var(--hairline-2);background:var(--surface);
  transition:background .12s,border-color .12s;}
.ccio-wizard .choice input:checked + span::before{border-color:var(--accent-mark);background:var(--accent-mark);}
.ccio-wizard .choice input:focus-visible + span::before{outline:2px solid var(--accent);outline-offset:2px;}

@media (forced-colors: active){
  .ccio-wizard .choice > span::before{border:1px solid ButtonBorder;background:ButtonFace}
  .ccio-wizard .choice input:checked + span::before{border-color:Highlight;background:Highlight}
}
.ccio-wizard .verdict-box{margin:24px 0 0;padding:20px 22px;border:1px solid var(--hairline);border-radius:0;
  background:var(--surface);}
.ccio-wizard .verdict-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--accent)}
.ccio-wizard .verdict-nm{font-family:var(--wz-head);font-size:23px;font-weight:600;line-height:1.2!important;margin-top:23px;text-wrap:balance}
.ccio-wizard .verdict-why + .verdict-nm,.ccio-wizard .verdict-warn + .verdict-nm,.ccio-wizard .verdict-sub + .verdict-nm{margin-top:28px}
.ccio-wizard .verdict-sub{font-size:14px;color:var(--ink-2);margin-top:4px;font-weight:600}
.ccio-wizard .verdict-why{font-size:14px;color:var(--ink-2);margin-top:14px;line-height:1.5!important}
.ccio-wizard .verdict-warn{font-size:13px;color:var(--warn);font-weight:700;margin-top:6px}
.ccio-wizard .cart-note{font-size:12px;color:var(--muted);line-height:1.5!important;
  margin-top:12px;}
.ccio-wizard .verdict-conf{margin-top:16px;padding-top:14px;border-top:1px solid var(--hairline-2);
  font-size:15px;font-weight:600;line-height:1.45!important;}
.ccio-wizard .line .ref{font-family:var(--wz-code);font-size:11.5px;color:var(--muted);
  display:inline-block;margin-top:5px;}
.ccio-wizard .line.covered .nm .sub{font-weight:400}
.ccio-wizard .count-row.sub-q{margin-left:22px;padding-left:12px;border-left:2px solid var(--accent);
  background:var(--accent-soft);border-bottom:0;padding-top:9px;padding-bottom:9px;}
.ccio-wizard .count-row.sub-q .lbl{font-size:14px}
.ccio-wizard .count-row[hidden]{display:none!important}
.ccio-wizard .calc{margin:14px 0 0 30px;padding:11px 14px;border:1px solid var(--hairline-2);border-left:3px solid var(--c-asset);
  border-radius:0;background:var(--surface);font-size:13.5px;line-height:1.55!important;color:var(--ink-2);}
.ccio-wizard .calc b{color:var(--ink);font-weight:700}
.ccio-wizard .branch-head{margin:22px 0 0 30px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
  color:var(--c-persona);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.ccio-wizard .branch-head span{letter-spacing:0;text-transform:none;font-weight:400;font-size:12.5px;color:var(--muted);}
.ccio-wizard .branch-note{margin:12px 0 0 30px;padding:10px 13px;border-left:3px solid var(--c-addon);
  font-size:13px;line-height:1.55!important;color:var(--ink-2);border-radius:0;}
.ccio-wizard .headcount{margin:26px 0 0;padding:14px 18px;border:1px solid var(--hairline);
  background:var(--paper);display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;}
.ccio-wizard .hc-total{font-family:var(--wz-num);font-size:26px;font-weight:600;color:var(--c-persona);
  font-variant-numeric:tabular-nums slashed-zero;line-height:1!important;}
.ccio-wizard .hc-label{font-weight:700;font-size:14px}
.ccio-wizard .hc-split{flex-basis:100%;font-size:13px;color:var(--muted);line-height:1.5!important}
.ccio-wizard .uc-n{font-family:var(--wz-num);font-size:44px;font-weight:600;color:var(--c-persona);
  font-variant-numeric:tabular-nums slashed-zero;line-height:1!important;letter-spacing:-.02em;}
.ccio-wizard .mmand.addon{background:var(--c-foundation);color:var(--paper)}
.ccio-wizard .addon{margin:16px 0 0 30px;border:1px solid var(--hairline);border-left:3px solid var(--c-foundation);
  border-radius:0;background:var(--surface);padding:14px 16px;}
.ccio-wizard .addon-head{display:grid;grid-template-columns:1fr 78px;gap:12px;align-items:center}
.ccio-wizard .addon-name{font-family:var(--wz-head);font-size:16px;font-weight:600;line-height:1.25!important}
.ccio-wizard .addon-head input{font:inherit;font-family:var(--wz-num);font-variant-numeric:tabular-nums slashed-zero;
  font-size:15px;font-weight:400;text-align:right;
  padding:6px 9px;border:1px solid var(--hairline-2);border-radius:0;
  background:var(--surface);color:var(--ink);width:100%;}
.ccio-wizard .addon-qual{font-weight:400;color:var(--muted);font-size:14px}
.ccio-wizard .addon-more{margin-top:10px}
.ccio-wizard .addon-more summary{cursor:pointer;font-family:var(--wz-sans);font-size:12px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;color:var(--c-foundation);}
.ccio-wizard .addon-more summary::marker{color:var(--c-foundation)}
.ccio-wizard .addon-why{margin:12px 0 0;padding-left:1.05em;font-size:13.5px;line-height:1.5!important;color:var(--ink-2)}
.ccio-wizard .addon-why li{margin-top:6px}
.ccio-wizard .addon-why li::marker{color:var(--c-foundation)}
.ccio-wizard .trow.sub{font-size:13.5px;color:var(--muted)}
.ccio-wizard .trow.sub .v{font-weight:400}
.ccio-wizard .chip{display:inline-block;font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;font-weight:700;
  padding:1px 6px;border-radius:0;vertical-align:1px;margin-left:6px;white-space:nowrap;
  line-height:calc(var(--tag-h) - 2px)!important;}
.ccio-wizard .chip.lock{background:var(--warn);color:var(--paper)}
.ccio-wizard .chip.inc{background:var(--good);color:var(--paper)}
.ccio-wizard .chip.rec{background:var(--accent);color:var(--paper)}
.ccio-wizard .chip.once{background:var(--c-foundation);color:var(--paper)}
.ccio-wizard .cart{display:inline-flex;align-items:center;justify-content:center;
  box-sizing:border-box;width:var(--tag-h);height:var(--tag-h);
  margin-left:8px;vertical-align:1px;
  background:var(--accent);color:var(--paper);
  border:0;border-radius:0;cursor:pointer;text-decoration:none;}
.ccio-wizard .cart:hover{filter:brightness(.9)}
.ccio-wizard .catl{display:inline-flex;align-items:center;justify-content:center;
  box-sizing:border-box;width:var(--tag-h);height:var(--tag-h);
  margin-left:8px;vertical-align:1px;
  background:var(--ink-2);color:var(--paper);
  border:0;border-radius:0;text-decoration:none;}
.ccio-wizard .catl:hover{background:var(--ink)}
.ccio-wizard .cart:focus-visible{outline:2px solid var(--ink);outline-offset:2px}

@media (forced-colors:active){
  .ccio-wizard .cart,.ccio-wizard .catl{border:1px solid ButtonText}
}
.ccio-wizard .nudge{margin-top:14px;padding:12px 14px;border:1px solid var(--accent);
  background:var(--accent-soft);border-radius:0;font-size:14px;line-height:1.5!important;}
.ccio-wizard .nudge b{font-weight:700}
.ccio-wizard .empty{color:var(--muted);font-size:15px;font-style:italic;padding:20px 0}
.ccio-wizard .rung .nm{font-family:var(--wz-head);font-weight:600;font-size:16.5px}
.ccio-wizard .tcell.r .nm{font-weight:700;font-size:14.5px}
.ccio-wizard td.n{font-family:var(--wz-num);font-variant-numeric:tabular-nums slashed-zero;white-space:nowrap}

@media (prefers-reduced-motion: reduce){
  .ccio-wizard,.ccio-wizard *,.ccio-wizard *::before,.ccio-wizard *::after{transition:none!important;animation:none!important}
}

/* ---- defence against the host page ---------------------------------------
 * The template sets, for every label on the site:
 *
 *     label { font-family:"Bitter",serif; text-transform:uppercase; }
 *         local/css/template.css, around line 1290
 *
 * The wizard's count rows and its choices ARE labels, and text-transform
 * inherits, so every question, every option and every line of help text
 * arrived in capitals. custom.css already overrides the font with an
 * !important Inter rule; nothing overrode the capitals.
 *
 * Scoped to the panel, so the site's own forms keep the treatment they were
 * designed with. The three places the wizard means capitals set them
 * explicitly and are more specific, so they are unaffected.
 * ------------------------------------------------------------------------- */
.ccio-wizard label{text-transform:none;letter-spacing:normal}

/* The site also forces a bottom margin on every paragraph in an article:
 *
 *     .t3-content p, .item-page p, ... {margin-bottom:1.2em !important}
 *
 * The wizard lays its paragraphs out with margin-top and expects p{margin:0}
 * to hold, so this was adding a full line of space under every one of them.
 * On the 23px mandate name that is 27.6px, sitting between a title and its
 * own subtitle. margin-top is left alone: nothing forces it, so the panel
 * keeps its own spacing and stays adjustable. */
.ccio-wizard p{margin-bottom:0!important}
