/* Check my quote pages (Obsidian 76 build 2, design pass Obsidian 77). Everything else comes from byp.css. */

/* hero: text on the left, the short answer or an example result on the right */
.qc-hero .wrap.qc-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:center;padding-top:72px;padding-bottom:72px}
.qc-hero h1{font-size:clamp(40px,5.2vw,76px);line-height:1;margin-top:18px}
.qc-hero .lede{font-size:19px;max-width:44ch}
.qc-hero .bigmark{display:none}
.qc-crumb a{color:var(--rec-on-ink);text-decoration:none}
.qc-crumb a:hover{text-decoration:underline}
.qc-ctas{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:30px}
.qc-ctas .b{min-height:48px}
.qc-skip{color:#fff;font-weight:700;font-size:15.5px;text-decoration:none;border-bottom:1.5px solid rgba(255,255,255,.4);padding-bottom:1px}
.qc-skip:hover{border-color:#fff}
.qc-stamp{display:inline-flex;align-items:center;gap:9px;margin-top:26px;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}
.qc-dot{width:8px;height:8px;border-radius:50%;background:var(--rec-on-ink);box-shadow:0 0 0 4px rgba(95,208,170,.18)}
.qc-page .qc-stamp{color:var(--muted);margin:0}
.qc-page .qc-dot{background:var(--rec);box-shadow:0 0 0 4px var(--rec-wash)}
.qc-trust{list-style:none;margin:26px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px;color:var(--ink-text);font-size:15px;font-weight:600}
.qc-trust li{display:flex;align-items:center;gap:8px}
.qc-trust svg{width:16px;height:16px;color:var(--rec-on-ink)}

.qc-short,.qc-eg{margin:0;background:var(--white);color:var(--text);border-radius:var(--r-md);padding:26px 26px 22px;box-shadow:0 40px 80px -50px rgba(0,0,0,.7);min-width:0}
.qc-short-hd{display:flex;justify-content:space-between;gap:12px;font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-bottom:14px;border-bottom:1px dashed var(--line);margin:0}
.qc-short-hd span:first-child{color:var(--brand)}
.qc-short-q{font-weight:800;font-size:18px;letter-spacing:-.01em;margin:16px 0 6px}
.qc-short ul,.qc-eg ul{list-style:none;margin:0;padding:0}
.qc-short li{display:flex;gap:11px;align-items:flex-start;padding:8px 0;font-size:15px;line-height:1.4;font-weight:600}
.qc-short li svg{flex:none;width:18px;height:18px;margin-top:1px;padding:3px;border-radius:50%;background:var(--rec-wash);color:var(--rec-deep)}
.qc-eg-sum{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:16px 0 8px}
.qc-eg-sum b{color:var(--slate)}
.qc-eg li{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;font-weight:600;line-height:1.35}
.qc-eg li:last-child{border-bottom:0}
.qc-eg .qc-mk{min-width:84px;text-align:center}
.qc-eg figcaption{margin-top:10px;font-size:12.5px;color:var(--muted)}

/* page sections */
.qc-page{padding-bottom:96px}
.qc-block{padding-block:72px 8px}
.qc-bh{margin-bottom:30px;max-width:760px}
.qc-bh h2,.qc-result h2{font-size:clamp(30px,3.6vw,46px);font-weight:800;letter-spacing:-.035em;line-height:1.05;margin:10px 0 0}
.qc-bh .eyebrow{color:var(--brand)}
.qc-bh .qc-hint{margin:14px 0 0}
.qc-hint{color:var(--text-2);font-size:16px;line-height:1.55;margin:0 0 18px}
.qc-note{margin-top:20px;font-size:14px;color:var(--muted);line-height:1.6;max-width:80ch}
.qc-src{color:var(--brand);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.qc-from{font-size:13px;color:var(--muted);margin:8px 0 0}

/* the checklist: numbered, two columns on wide screens */
.qc-check{list-style:none;margin:0;padding:0;counter-reset:qc;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;border-top:2px solid var(--text)}
.qc-check li{counter-increment:qc;display:grid;grid-template-columns:44px minmax(0,1fr);padding:22px 0;border-bottom:1px solid var(--line)}
.qc-check li::before{content:counter(qc,decimal-leading-zero);font-family:var(--mono);font-size:13px;color:var(--brand);padding-top:3px}
.qc-check b{font-size:17.5px;font-weight:800;letter-spacing:-.01em;line-height:1.35}
.qc-check p{margin:6px 0 0;color:var(--text-2);font-size:15.5px;line-height:1.55}
.qc-check .qc-from{font-size:13px;color:var(--muted)}

/* registrations as cards */
.qc-regs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.qc-regs li{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:26px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}
.qc-regs b{font-size:19px;font-weight:800;letter-spacing:-.015em}
.qc-regs p{margin:0;color:var(--text-2);font-size:15.5px;line-height:1.55}
.qc-regs .b{margin-top:6px;min-height:44px}
.qc-regs .qc-from{margin-top:auto;padding-top:6px}

/* payments: a simple bar, then the guidance */
.qc-paybar{display:grid;grid-template-columns:1fr 2fr 1.2fr;border-radius:var(--r-md);overflow:hidden;border:1px solid var(--line)}
.qc-pb{padding:18px 20px;display:flex;flex-direction:column;gap:4px;min-width:0}
.qc-pb span{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase}
.qc-pb b{font-size:18px;font-weight:800;letter-spacing:-.01em}
.qc-pb i{font-style:normal;font-size:12.5px;opacity:.75}
.qc-pb.dep{background:var(--slate-wash);color:var(--slate)}
.qc-pb.mid{background:var(--white);color:var(--text)}
.qc-pb.mid span{color:var(--muted)}
.qc-pb.end{background:var(--brand);color:#fff}
.qc-guide{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px}
.qc-guide li{padding:16px 0;border-bottom:1px solid var(--line)}
.qc-guide p{margin:0;font-size:16px;line-height:1.55}
.qc-guide .qc-from{margin-top:6px}

/* questions */
.qc-qs{list-style:none;margin:0;padding:0;counter-reset:q;border-top:2px solid var(--text)}
.qc-qs li{counter-increment:q;display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:4px 12px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line);font-size:17px;font-weight:700;line-height:1.45}
.qc-qs li::before{content:counter(q,decimal-leading-zero);font-family:var(--mono);font-size:13px;font-weight:500;color:var(--brand)}
.qc-qs .qc-from{margin:0;font-weight:500;font-size:12.5px;text-align:right;max-width:280px}

/* index: jobs as the start of the tool */
.qc-jobs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.qc-jobs a{display:flex;flex-direction:column;gap:8px;height:100%;background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:24px 22px 20px;text-decoration:none;color:var(--text);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.qc-jobs a:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:0 18px 40px -28px rgba(10,122,85,.55)}
.qc-jobs a:focus-visible{outline:3px solid rgba(10,122,85,.35);outline-offset:2px}
.qc-ico{width:46px;height:46px;padding:10px;border-radius:14px;background:var(--brand-wash);color:var(--brand);margin-bottom:8px}
.qc-jobs b{font-size:19px;font-weight:800;letter-spacing:-.015em;line-height:1.2}
.qc-jobs span{font-size:14.5px;color:var(--text-2);line-height:1.5}
.qc-jobs em{margin-top:auto;padding-top:10px;font-style:normal;font-weight:800;font-size:15px;color:var(--brand)}
.qc-page .steps3{margin-top:0}
.qc-page .steps3 .h3{margin-top:12px}
.qc-honest{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.qc-honest li{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:26px}
.qc-honest li:first-child{background:var(--ink);border-color:var(--ink);color:#fff}
.qc-honest li:first-child p{color:var(--ink-text)}
.qc-honest b{font-size:19px;font-weight:800;letter-spacing:-.015em}
.qc-honest p{margin:10px 0 0;color:var(--text-2);font-size:15.5px;line-height:1.55}
.qc-page > .wrap:last-child{padding-top:64px}

/* the tool band */
.qc-toolband{margin-top:80px;padding-block:72px;background:var(--white);border-block:1px solid var(--line)}
.qc-toolgrid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:40px;align-items:start}
.qc-tool{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:40px;min-width:0}
.qc-side{position:sticky;top:96px;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:22px}
.qc-side ul{list-style:none;margin:6px 0 0;padding:0}
.qc-side li{display:flex;gap:11px;align-items:flex-start;padding:10px 0;font-size:15px;line-height:1.45;font-weight:600;border-bottom:1px solid var(--line)}
.qc-side li:last-child{border-bottom:0}
.qc-side li svg{flex:none;width:18px;height:18px;margin-top:1px;padding:3px;border-radius:50%;background:var(--rec-wash);color:var(--rec-deep)}
.qc-side-note{margin:12px 0 0;font-size:13.5px;line-height:1.55;color:var(--text-2)}

/* the form */
.qc-form{display:flex;flex-direction:column;gap:0}
.qc-step{display:grid;grid-template-columns:44px minmax(0,1fr);gap:18px;position:relative;padding-bottom:36px}
.qc-step::before{content:"";position:absolute;left:21px;top:44px;bottom:6px;width:2px;background:var(--line)}
.qc-n{width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;margin:0;position:relative}
.qc-step:first-child .qc-n{background:var(--brand)}
.qc-step h3{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:8px 0 6px}
.qc-step .qc-hint{font-size:15px;margin-bottom:14px}
.qc-row{border:0;margin:0;padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.qc-row:last-child{border-bottom:0}
.qc-row legend{float:left;font-size:15.5px;font-weight:600;line-height:1.4;max-width:440px;padding:0}
.qc-yn{display:inline-flex;background:var(--white);border:1.5px solid var(--line-2);border-radius:999px;padding:3px}
.qc-yn label{cursor:pointer}
.qc-yn input{position:absolute;opacity:0;pointer-events:none}
.qc-yn span{display:inline-flex;align-items:center;min-height:38px;padding:0 15px;border-radius:999px;font-size:14px;font-weight:700;color:var(--text-2)}
.qc-yn input:checked+span{background:var(--n2);color:var(--text)}
.qc-yn input[value="yes"]:checked+span{background:var(--brand);color:#fff}
.qc-yn input[value="no"]:checked+span{background:var(--ink);color:#fff}
.qc-yn input:focus-visible+span{outline:3px solid rgba(10,122,85,.35);outline-offset:2px}
.qc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.qc-f{display:flex;flex-direction:column;gap:8px;font-size:14.5px;font-weight:700}
.qc-f input,.qc-f select{font:inherit;font-weight:500;font-size:16px;color:var(--text);background:var(--white);border:1.5px solid var(--line-2);border-radius:var(--r-sm);padding:13px 14px;width:100%;min-height:50px;outline:none}
.qc-f input:focus,.qc-f select:focus,.qc-paste:focus,.qc-items input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(10,122,85,.15)}
.qc-dep{display:grid;grid-template-columns:minmax(0,1fr) 84px;gap:8px}
.qc-final .b{align-self:flex-start;border:0;font:inherit;font-weight:800;font-size:17px;min-height:54px;padding-inline:30px;margin-top:18px;cursor:pointer}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* paste: the obvious first move */
.qc-paste{width:100%;font:inherit;font-size:15.5px;line-height:1.55;color:var(--text);background:var(--white);border:2px dashed var(--line-2);border-radius:var(--r-md);padding:18px 18px;resize:vertical;min-height:200px;outline:none}
.qc-paste:focus{border-style:solid}
.qc-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:12px}
.qc-actions .b{font:inherit;font-weight:800;cursor:pointer;min-height:48px}
#qc-read{background:var(--brand);border-color:var(--brand);color:#fff}
#qc-read:hover{background:var(--brand-hover)}
.qc-found{font-size:15px;font-weight:600;color:var(--text)}
.qc-found:not(:empty){flex:1 1 100%;display:flex;gap:12px;align-items:flex-start;background:var(--rec-wash);border:1px solid #BFE5D4;color:var(--rec-deep);border-radius:var(--r-sm);padding:16px 18px;line-height:1.5}
.qc-found:not(:empty)::before{content:"";flex:none;width:22px;height:22px;border-radius:50%;background:var(--rec) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 8.5 6.8 11 12 5'/%3E%3C/svg%3E") center/14px no-repeat}

/* priced lines as a tidy table */
.qc-lbl{font-size:14.5px;font-weight:700;margin:24px 0 8px}
.qc-items ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden}
.qc-items ul:empty{display:none}
.qc-items li{display:grid;grid-template-columns:minmax(0,1fr) 130px auto;gap:8px;align-items:center;padding:6px 8px;border-bottom:1px solid var(--line)}
.qc-items li:last-child{border-bottom:0}
.qc-items input{font:inherit;font-size:15px;color:var(--text);background:transparent;border:1.5px solid transparent;border-radius:8px;padding:10px;width:100%;outline:none}
.qc-items input:hover{border-color:var(--line)}
.qc-items .qc-ia{text-align:right;font-variant-numeric:tabular-nums}
.qc-rm,.qc-add{font:inherit;font-size:14px;font-weight:700;color:var(--brand);background:none;border:0;cursor:pointer;padding:10px 6px;min-height:44px}
.qc-rm{color:var(--muted)}
.qc-rm:hover{color:var(--text)}
.qc-add{margin-top:6px}
.qc-town{position:relative}
.qc-menu{position:absolute;left:0;right:0;top:100%;z-index:5;list-style:none;margin:4px 0 0;padding:6px;background:var(--white);border:1px solid var(--line-2);border-radius:var(--r-sm);box-shadow:0 8px 24px rgba(18,23,29,.12)}
.qc-menu li{padding:12px;border-radius:8px;cursor:pointer;font-weight:500}
.qc-menu li:hover{background:var(--brand-wash)}

/* the notice stays visible, next to the button */
.qc-terms{font-size:15px;color:var(--text);line-height:1.55;margin:4px 0 0;padding:16px 18px;background:var(--white);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:var(--r-sm)}
.qc-terms a{color:var(--brand);font-weight:700}

/* the result */
.qc-result{margin-top:40px;padding-top:36px;border-top:2px solid var(--text);outline:none}
.qc-result h2{margin:0 0 10px}
.qc-result h3{font-size:21px;font-weight:800;letter-spacing:-.015em;margin:34px 0 10px}
.qc-sum{font-size:20px;font-weight:700;margin:0;padding:18px 20px;background:var(--white);border:1px solid var(--line);border-left:5px solid var(--slate);border-radius:var(--r-sm)}
.qc-scope{background:var(--slate-wash);color:var(--slate);border-radius:var(--r-sm);padding:14px 16px;font-size:15px;margin:16px 0 0}
.qc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--line)}
.qc-list li{display:flex;gap:14px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--line)}
.qc-list li.no{background:var(--slate-wash);margin-inline:-14px;padding-inline:14px;border-radius:var(--r-sm);border-bottom-color:transparent;margin-block:4px}
.qc-list b{font-size:17px;font-weight:700;line-height:1.35}
.qc-list p{margin:4px 0 0;color:var(--text-2);font-size:15.5px;line-height:1.55}
.qc-mk{flex:none;display:inline-block;font-family:var(--mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;padding:5px 10px;border-radius:999px;white-space:nowrap;margin-top:2px}

.qc-mk.un{background:var(--white);color:var(--muted);border:1px solid var(--line)}
.qc-mk.yes{background:var(--rec-wash);color:var(--rec-deep)}

.qc-pay{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:8px}
.qc-pay li{background:var(--white);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 16px;font-size:16.5px;font-weight:700}
.qc-next{margin-top:40px;background:var(--ink);color:#fff;border-radius:var(--r-md);padding:30px}
.qc-next h3{margin-top:0;color:#fff;font-size:24px}
.qc-next p{color:var(--ink-text)}
.qc-next .qc-hint{color:var(--ink-muted);font-size:13.5px;margin:14px 0 0}
.qc-biz{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.qc-biz input{flex:1 1 220px;font:inherit;font-size:16px;border-radius:var(--r-sm);border:0;padding:15px 16px;min-height:52px}
.qc-biz .b{border:0;font:inherit;font-weight:800;cursor:pointer;min-height:52px}

@media (max-width:1080px){
  .qc-jobs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .qc-toolgrid{grid-template-columns:1fr}
  .qc-side{position:static;order:-1}
  .qc-side ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
}
@media (max-width:960px){
  .qc-hero .wrap.qc-hero-grid{grid-template-columns:1fr;gap:40px;padding-top:56px;padding-bottom:56px}
  .qc-short,.qc-eg{max-width:560px}
  .qc-honest{grid-template-columns:1fr}
}
@media (max-width:760px){
  .qc-block{padding-block:52px 4px}
  .qc-check,.qc-guide,.qc-regs{grid-template-columns:1fr}
  .qc-paybar{grid-template-columns:1fr}
  .qc-qs li{grid-template-columns:36px minmax(0,1fr)}
  .qc-qs .qc-from{grid-column:2;text-align:left}
  .qc-check li{grid-template-columns:36px minmax(0,1fr)}
  .qc-toolband{margin-top:56px;padding-block:48px}
  .qc-side{display:none}
  .qc-tool{padding:22px 16px;border-radius:var(--r-md);margin-inline:-8px}
  .qc-grid{grid-template-columns:1fr}
  .qc-step{grid-template-columns:1fr;gap:8px;padding-bottom:30px}
  .qc-step::before{display:none}
  .qc-n{width:36px;height:36px;font-size:15px}
  .qc-row{flex-direction:column;align-items:stretch;gap:10px}
  .qc-yn{display:grid;grid-template-columns:repeat(3,1fr)}
  .qc-yn label{display:flex}
  .qc-yn span{flex:1;justify-content:center;min-height:42px;padding:0 8px}
  .qc-form>.b,.qc-actions .b{width:100%;justify-content:center}
  .qc-biz .b{width:100%}
  .qc-items li{grid-template-columns:minmax(0,1fr) auto;gap:0 4px;padding:6px 6px 4px}
  .qc-items .qc-il{grid-column:1/-1;font-weight:600}
  .qc-items .qc-ia{text-align:left}
  .qc-items .qc-rm{min-height:44px;padding:0 10px}
  .qc-list li{flex-direction:column;gap:8px}
  .qc-sum{font-size:17px;padding:14px 16px}
}
@media (max-width:560px){
  .qc-jobs{grid-template-columns:1fr}
  .qc-jobs a{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:14px;padding:18px}
  .qc-jobs .qc-ico{grid-row:1 / span 3;margin:0}
  .qc-jobs em{padding-top:4px}
  .qc-ctas .b{width:100%;justify-content:center}
  .qc-short,.qc-eg{padding:22px 18px 18px}
}

/* print or save: the result only */
@media print{
  #site-nav,#site-footer,.qc-hero,.qc-block,.qc-note,.qc-form,.qc-next,.qc-toolband .qc-bh{display:none !important}
  .qc-toolband,.qc-tool{background:none;border:0;padding:0;margin:0}
  .qc-result{border:0;margin:0;padding:0}
  .qc-src{color:#000}
}
.qc-hero .qc-stamp{margin-top:30px}
.qc-hero .qc-trust{margin-top:28px}

/* one step at a time (Obsidian 77, 27 Oct) */
.qc-step[hidden],.qc-body[hidden],.qc-final[hidden]{display:none}
.qc-prog{margin:0 0 30px}
.qc-prog-bar{display:flex;gap:6px}
.qc-prog .seg{flex:1;height:6px;border-radius:99px;background:var(--n3);transition:background .3s}
.qc-prog .seg.cur{background:linear-gradient(90deg,var(--brand) 50%,var(--n3) 50%)}
.qc-prog .seg.done{background:var(--brand)}
.qc-prog-lbl{margin:10px 0 0;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.qc-sh{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.qc-sh h3{outline:none}
.qc-step.is-done{padding-bottom:22px}
.qc-step.is-done .qc-n{background:var(--brand-wash);color:var(--brand)}
.qc-step.is-done h3{font-size:18px;margin-top:10px}
.qc-step.is-done .qc-n{font-size:0}
.qc-step.is-done .qc-n::after{content:"";width:18px;height:18px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%230A7A55' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E") center/18px no-repeat}
.qc-sumline{margin:4px 0 0;font-size:15px;color:var(--text-2);line-height:1.5}
.qc-edit{font:inherit;font-size:14px;font-weight:700;color:var(--brand);background:none;border:0;cursor:pointer;padding:10px 4px;min-height:44px;flex:none}
.qc-edit:hover{text-decoration:underline}
.qc-nav{margin-top:20px}
.qc-nav .b{font:inherit;font-weight:800;border:0;cursor:pointer;min-height:48px;padding-inline:28px}
.qc-manual{font:inherit;font-size:15px;font-weight:700;color:var(--text);background:none;border:0;border-bottom:1.5px solid var(--line-2);padding:4px 0;cursor:pointer}
.qc-manual:hover{border-color:var(--text)}
.qc-final{display:flex;flex-direction:column;gap:0;margin-top:4px}
.qc-row[data-auto] legend::after{display:block;margin-top:4px;font-family:var(--mono);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;font-weight:500}
.qc-row[data-auto=found] legend::after{content:"Found in your quote";color:var(--rec-deep)}
.qc-row[data-auto=missing] legend::after{content:"Not found in your quote";color:var(--slate)}
@media (max-width:760px){
  .qc-step.is-done{grid-template-columns:36px minmax(0,1fr);gap:12px;padding-bottom:18px}
  .qc-step.is-done h3{margin-top:6px}
  .qc-nav .b{width:100%;justify-content:center}
  .qc-manual{text-align:left}
}

/* common questions (Obsidian 77, SEO): always visible, no accordion, so crawlers and readers see the same text */
.qc-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;border-top:2px solid var(--text)}
.qc-fq{padding:22px 0;border-bottom:1px solid var(--line)}
.qc-fq h3{font-size:18px;font-weight:800;letter-spacing:-.01em;line-height:1.35;margin:0}
.qc-fq p{margin:8px 0 0;color:var(--text-2);font-size:15.5px;line-height:1.55}
.qc-fq .qc-from{font-size:13px;color:var(--muted)}
@media (max-width:760px){.qc-faq{grid-template-columns:1fr}}

/* visuals (Obsidian 77, 27 Oct): trade photo hero, tool first, the quote sketch, the payment bar filling in */
.qc-hero .qc-photo{max-width:460px;justify-self:end;width:100%}
.qc-toolband{margin-top:0}
.qc-toolgrid .qc-short{position:sticky;top:96px;box-shadow:none;border:1px solid var(--line);background:var(--paper)}
.qc-toolgrid .qc-short .qc-side-note{margin:12px 0 0;font-size:13.5px;line-height:1.55;color:var(--text-2)}
.qc-anat{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.qc-anat .qc-check{grid-template-columns:1fr}
.qc-anat .qc-check li{transition:background .3s ease,padding .3s ease;border-radius:var(--r-sm)}
.qc-anat .qc-check li.on{background:var(--white);padding-inline:14px;margin-inline:-14px}
.qc-anat .qc-check li.on::before{color:var(--brand);font-weight:700}
.qa-doc{margin:0;position:sticky;top:96px}
.qa-paper{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:26px 24px 18px;box-shadow:0 40px 80px -60px rgba(18,23,29,.45);transform:rotate(-1deg)}
.qa-head{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:4px 6px 16px;border-bottom:2px solid var(--text);border-radius:8px}
.qa-head b{display:block;font-family:var(--mono);font-size:13px;letter-spacing:.16em;margin-bottom:8px}
.qa-logo{width:40px;height:40px;border-radius:10px;background:var(--n2)}
.qa-sec{margin:16px 0 4px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.qa-row{display:grid;grid-template-columns:28px 140px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 6px;border-radius:8px;transition:background .3s ease,box-shadow .3s ease}
.qa-row i,.qa-head i{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--muted);width:24px;height:24px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:all .3s ease}
.qa-lab{font-size:13px;font-weight:700;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qa-bar{display:block;height:8px;border-radius:99px;background:var(--n2)}
.qa-amt{font-family:var(--mono);font-size:14px;color:var(--text)}
.qa-lines{display:flex;flex-direction:column;gap:9px;padding:10px 6px 6px 44px}
.qa-row.on,.qa-head.on,.qa-paper.all .qa-row,.qa-paper.all .qa-head{background:var(--brand-wash)}
.qa-row.on i,.qa-head.on i,.qa-paper.all i{background:var(--brand);border-color:var(--brand);color:#fff}
.qa-row.on .qa-bar,.qa-head.on .qa-bar{background:#BFE5D4}
.qa-doc figcaption{margin-top:12px;font-size:12.5px;color:var(--muted)}
.qc-cert{width:40px;height:40px;padding:8px;border-radius:12px;background:var(--brand-wash);color:var(--brand)}
@media (prefers-reduced-motion:no-preference){
  .js-motion .qc-paybar[data-reveal]{opacity:1;transform:none}
  .js-motion .qc-paybar[data-reveal] .qc-pb{transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
  .js-motion .qc-paybar[data-reveal] .qc-pb > *{opacity:0;transition:opacity .4s ease .5s}
  .js-motion .qc-paybar.in .qc-pb{transform:none}
  .js-motion .qc-paybar.in .qc-pb > *{opacity:1}
  .js-motion .qc-paybar.in .qc-pb.mid{transition-delay:.35s}.js-motion .qc-paybar.in .qc-pb.mid > *{transition-delay:.85s}
  .js-motion .qc-paybar.in .qc-pb.end{transition-delay:.7s}.js-motion .qc-paybar.in .qc-pb.end > *{transition-delay:1.2s}
}
@media (max-width:1080px){
  .qc-toolgrid .qc-short{position:static;order:2}
}
@media (max-width:960px){
  .qc-hero .qc-photo{justify-self:start;max-width:520px;margin-right:20px}
  .qc-anat{grid-template-columns:1fr;gap:32px}
  .qa-doc{position:static;max-width:520px}
}
@media (max-width:760px){
  .qc-toolgrid .qc-short{display:block}
  .qa-paper{transform:none;padding:18px 14px 12px}
  .qa-row{grid-template-columns:26px 118px minmax(0,1fr) auto;gap:8px}
  .qa-lines{padding-left:34px}
}
/* index: photo job cards and the three phone screens */
.qc-jobs a{padding:0;overflow:hidden;gap:0}
.qc-jimg{position:relative;display:block;aspect-ratio:4/3;background:var(--ink-2)}
.qc-jimg img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.qc-jobs a:hover .qc-jimg img{transform:scale(1.04)}
.qc-jimg .qc-ico{position:absolute;left:14px;bottom:-22px;margin:0;background:var(--white);box-shadow:0 8px 20px -10px rgba(18,23,29,.4)}
.qc-jt{display:flex;flex-direction:column;gap:8px;padding:34px 20px 20px;flex:1}
.qc-phones{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.qc-phones .when{display:block;margin-top:24px;font-family:var(--mono);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}
.qc-phones .h3{margin-top:10px}
.qc-phones p:not([class]){color:var(--text-2);margin-top:8px;font-size:16px;line-height:1.55}
.qp{background:var(--ink);border-radius:34px;padding:10px;max-width:250px;box-shadow:0 40px 70px -50px rgba(18,23,29,.7)}
.qp-scr{background:var(--paper);border-radius:26px;padding:22px 16px;min-height:300px;display:flex;flex-direction:column;gap:10px}
.qp-t{margin:0;font-weight:800;font-size:15px}
.qp-paste{border:2px dashed var(--line-2);border-radius:14px;background:var(--white);padding:14px 12px;display:flex;flex-direction:column;gap:8px;flex:1}
.qp-paste span,.qp-row span,.qp-res span{display:block;height:7px;border-radius:99px;background:var(--n2)}
.qp-btn{display:block;text-align:center;background:var(--brand);color:#fff;font-weight:800;font-size:13px;border-radius:12px;padding:11px}
.qp-found{margin:0;background:var(--rec-wash);border:1px solid #BFE5D4;color:var(--rec-deep);border-radius:12px;padding:10px 12px;font-size:12.5px;font-weight:700;line-height:1.4}
.qp-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.qp-row span{flex:1}
.qp-row i,.qp-res i{font-style:normal;font-size:11px;font-weight:700;border-radius:99px;padding:4px 10px}
.qp-row i.y{background:var(--brand);color:#fff}.qp-row i.n{background:var(--ink);color:#fff}
.qp-sum{margin:0;font-weight:800;font-size:15px;line-height:1.3;border-left:4px solid var(--slate);padding-left:10px}
.qp-res{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px}
.qp-res span{flex:1}
.qp-res i{font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;background:var(--rec-wash);color:var(--rec-deep)}
.qp-res.no{background:var(--slate-wash)}.qp-res.no i{background:var(--slate-wash);color:var(--slate)}
.qp-pay{display:grid;grid-template-columns:1fr 2fr 1.2fr;gap:3px;margin-top:auto;height:14px}
.qp-pay span{border-radius:4px}.qp-pay .d{background:#C9D4E2}.qp-pay .m{background:var(--n3)}.qp-pay .e{background:var(--brand)}
@media (prefers-reduced-motion:no-preference){
  .js-motion .qc-phones li[data-reveal] .qp{transform:translateY(24px) rotate(-2deg);transition:transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}
  .js-motion .qc-phones li.in .qp{transform:none}
}
@media (max-width:960px){
  .qc-phones{grid-template-columns:1fr;gap:44px}
  .qc-phones li{display:grid;grid-template-columns:200px minmax(0,1fr);column-gap:28px;align-items:center}
  .qc-phones .qp{grid-row:1 / span 3}
  .qc-phones .when{margin-top:0}
}
@media (max-width:560px){
  .qc-phones li{grid-template-columns:1fr}
  .qc-phones .qp{grid-row:auto;max-width:230px;margin-bottom:6px}
  .qc-jobs a{display:flex}
  .qc-jimg{aspect-ratio:16/9}
  .qc-jobs .qc-ico{grid-row:auto}
}
.qc-jimg{flex:none}
.qc-jimg{overflow:hidden}
.qc-jimg img{position:absolute;inset:0}
.qc-jimg .qc-ico{bottom:14px;z-index:1}
.qc-jt{padding-top:20px}
.qa-sec{padding-left:6px}
@media (max-width:560px){.qa-row{grid-template-columns:26px minmax(0,1fr) auto}.qa-row .qa-bar{display:none}.qa-lab{white-space:normal}.qa-lines{padding-left:6px}}
.qp-txt{min-width:0}
@media (max-width:960px){.qc-phones .qp{grid-row:auto}}

/* 28 Oct: one pill system with the rest of the site (byp.css .tag: pub green, chk slate "worth checking"); a neutral one for not sure */
.tag.un{background:var(--white);color:var(--muted);border:1px solid var(--line)} .tag.un::before{background:var(--n4)}
.qc-mk{margin-top:2px}
/* index hero: the boiler photo with the example result over it */
.qc-egwrap{position:relative;min-width:0;padding:0 0 40px 40px}
.qc-egwrap .qc-egphoto{max-width:400px;margin:0 0 0 auto}
.qc-egwrap .qc-eg{position:absolute;left:0;bottom:0;width:min(400px,86%);padding:22px 22px 18px}
.qc-eg li{padding:10px 0;font-size:14.5px}
.qc-eg .tag{min-width:96px;justify-content:center}
.qc-eg-pay{display:grid;grid-template-columns:1fr 2fr 1.2fr;gap:3px;margin:14px 0 0;font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase}
.qc-eg-pay span{padding:7px 8px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.qc-eg-pay .d{background:var(--slate-wash);color:var(--slate)}.qc-eg-pay .m{background:var(--n2);color:var(--text-2)}.qc-eg-pay .e{background:var(--brand);color:#fff}
.qc-eg-next{display:flex;justify-content:space-between;align-items:center;margin:12px 0 0;background:var(--ink);color:#fff;border-radius:12px;padding:11px 14px;font-size:14px;font-weight:700}
.qc-eg-next b{color:var(--rec-on-ink)}
.qc-hero .qc-stamp{margin-top:22px}
/* the checklist heading and the sketch stay in view while the points scroll past */
.qa-col{position:sticky;top:88px;min-width:0}
.qa-col .qc-bh{margin-bottom:18px}
.qa-col .qc-bh h2{font-size:clamp(26px,2.6vw,36px)}
.qa-col .qc-hint{margin-top:8px;font-size:14.5px}
.qa-col .qa-doc{position:static}
.qa-col .qa-row{padding-block:7px}
.qc-anat > .qc-check{padding-top:6px}
@media (max-height:820px) and (min-width:961px){.qa-col .qa-row{padding-block:4px}.qa-col .qc-bh h2{font-size:26px}.qa-paper{padding:18px 20px 12px}}
@media (max-width:960px){
  .qa-col{position:static}
  .qc-egwrap{padding:0;max-width:520px}
  .qc-egwrap .qc-egphoto{display:none}
  .qc-egwrap .qc-eg{position:static;width:100%}
}
@media (min-width:961px){
  .qc-egwrap{padding:0 0 170px 0}
  .qc-egwrap .qc-egphoto{max-width:none;width:70%;margin:0 0 0 auto}
  .qc-egwrap .qc-eg{width:62%;min-width:300px;padding:18px 18px 14px}
  .qc-egwrap .qc-eg li{padding:8px 0;font-size:13.5px}
  .qc-egwrap .qc-eg-sum{font-size:19px;margin:12px 0 4px}
  .qc-egwrap .qc-eg .tag{min-width:88px}
}
@media (min-width:961px){
  .qc-egwrap{padding-bottom:290px}
  .qc-egwrap .qc-egphoto{width:72%}
  .qc-egwrap .qc-eg{width:72%;min-width:340px}
}
/* index hero, 28 Oct round 3: one object, the quote, marked up (replaces the photo and example card) */
.qc-markup{position:relative;margin:0;max-width:480px;justify-self:end;width:100%;padding:28px 0 0}
.qm-paper{background:var(--white);color:var(--text);border-radius:var(--r-md);padding:26px 24px 20px;transform:rotate(-2deg);box-shadow:0 50px 90px -50px rgba(0,0,0,.8)}
.qm-head{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:center;padding-bottom:16px;border-bottom:2px solid var(--text)}
.qm-head b{display:block;font-family:var(--mono);font-size:13px;letter-spacing:.16em;margin-bottom:8px}
.qm-logo{width:40px;height:40px;border-radius:10px;background:var(--n2)}
.qm-sec{margin:16px 0 4px;font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.qm-row{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}
.qm-lab{font-size:14px;font-weight:700;line-height:1.3}
.qm-bar{display:block;height:8px;border-radius:99px;background:var(--n2)}
.qm-gap{display:block;height:22px;border:1.5px dashed var(--slate-on-ink);border-color:#A9BBD3;border-radius:6px;background:var(--slate-wash)}
.qm-row.miss .qm-lab{color:var(--slate)}
.qm-row .tag{min-width:96px;justify-content:center}
.qm-total{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0 2px;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;font-weight:500}
.qm-total .qm-bar{background:var(--text);opacity:.85;height:10px}
.qm-badge{position:absolute;top:0;right:-10px;margin:0;background:var(--ink-2);border:1px solid var(--ink-line);color:#fff;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:700;box-shadow:0 18px 40px -20px rgba(0,0,0,.8);transform:rotate(2deg)}
.qm-badge b{color:#A9BBD3}
.qc-markup figcaption{margin-top:18px;font-size:12.5px;color:var(--ink-muted);text-align:center}
@media (max-width:960px){.qc-markup{justify-self:start;max-width:520px}.qm-badge{right:0}}
@media (max-width:560px){.qm-row{grid-template-columns:minmax(0,1fr) auto}.qm-row .qm-bar,.qm-row .qm-gap{display:none}.qm-paper{padding:20px 16px 16px;transform:rotate(-1deg)}.qm-badge{font-size:13px;padding:8px 13px}}
.qc-markup{max-width:540px}
.qm-paper{padding:30px 28px 22px}
.qm-lab{font-size:15px}
.qm-row{padding:13px 0;grid-template-columns:minmax(0,1fr) 96px auto}
.qm-badge{background:var(--white);color:var(--text);border:0;font-size:15px;padding:12px 18px;top:-4px;right:-14px}
.qm-badge b{color:var(--slate)}
@media (min-width:961px){.qc-hero:has(.qc-markup) .wrap.qc-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
