:root{--c-000000-rgb:0 0 0;--c-0a5f66:#0A5F66;--c-0b1a2a-rgb:11 26 42;--c-101820-rgb:16 24 32;--c-1e7a4c:#1E7A4C;--c-584a7a:#584A7A;--c-5e656c:#5E656C;--c-6e757c:#6E757C;--c-a9394b:#A9394B;--c-b9bec2:#B9BEC2;--c-cfe3d8:#CFE3D8;--c-d2d7da:#D2D7DA;--c-d7e8ea:#D7E8EA;--c-dde1e3:#DDE1E3;--c-e3e6e8:#E3E6E8;--c-e4f1f2:#E4F1F2;--c-eceeef:#ECEEEF;--c-eeeaf6:#EEEAF6;--c-f1f3f4:#F1F3F4;--c-f4fafa:#F4FAFA;--c-f6fbf8:#F6FBF8;--c-f7f8f9:#F7F8F9;--c-fafbfb:#FAFBFB;--c-fbeaec:#FBEAEC;--sh-30bdc8:0 10px 30px -14px rgb(var(--c-0b1a2a-rgb)/.4);--sh-6b0acd:0 26px 60px -18px rgb(var(--c-0b1a2a-rgb)/.42);--sh-d7d041:0 2px 10px rgb(var(--ink-rgb)/.06)}





































.btn.mqc-send,.btn.mqc-send:hover,.btn.mqc-send:active{box-shadow:none}





.btn.mqc-act{background:var(--surface);border-color:var(--c-e4eaf0);color:var(--action-hover)}
.btn.mqc-act:hover{background:var(--action-tint);border-color:var(--action-hover);color:var(--action-hover)}
.btn.mqc-act.mqc-book{background:var(--action);border-color:var(--action-hover);color:var(--surface)}
.btn.mqc-act.mqc-book:hover{background:var(--action);border-color:var(--action-hover);color:var(--surface);filter:brightness(1.08)}



































































































































































/* quick tiles */
/* a rate-card answer in the feed. It is not a price list and must not grow
   into one - four rows and a link, and the link goes where the filters are. */
.mqc-pr{display:flex;align-items:baseline;gap:8px;padding:7px 0;
  border-top:1px solid var(--c-e4eaf0)}
.mqc-pr:first-of-type{border-top:0}
.mqc-pr b{font:600 13.5px var(--font-display);color:var(--ink);flex:1 1 auto;min-width:0}

















































 
 





























































































































.mqc-next{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 2px}




















































































































































/* The AI finder's input row, its answer pane and its suggestion
   chips, and the explainer's button row and output pane: 16 rules,
   removed with the single-shot boxes they styled. The chat
   component replaced the markup, and CSS for markup that no longer
   exists is the kind of thing that survives for years because
   nothing fails when it is wrong. */
.mqc{display:flex;flex-direction:column;min-height:0}
.mqc[hidden]{display:none}
.mqc-log{display:flex;flex-direction:column;gap:10px;overflow-y:auto;
  overscroll-behavior:contain;padding:2px}
.mqc-log:empty{display:none}
.mqc.mqc-inline .mqc-log{max-height:340px;margin-bottom:10px}

.mqc-t{flex:0 0 auto;max-width:86%;width:fit-content;word-wrap:break-word}
.mqc-t.mqc-me{align-self:flex-end;max-width:72%;box-sizing:border-box;padding:11px 16px;border-radius:var(--r-md) var(--r-md) var(--r-sm) var(--r-md);background:var(--c-f1f3f4);font:600 14px/1.5 var(--font-display);color:var(--ink)}
.mqc-t.mqc-ai{align-self:stretch;max-width:none;width:auto;display:flex;gap:12px;align-items:flex-start}
.mqc-av{width:28px;height:28px;flex:none;border-radius:var(--r-sm);background:var(--c-e4f1f2);color:var(--ai);display:grid;place-items:center;margin-top:2px}
.mqc-col{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:14px}
.mqc-md{max-width:560px;font:500 14.5px/1.62 var(--font-display);color:var(--ink)}.mqc-md:empty{display:none}
.mqc-md p,.mqc-me p{margin:0 0 8px}.mqc-md p:last-child,.mqc-me p:last-child{margin-bottom:0}
.mqc-md ul,.mqc-md ol{margin:0 0 8px;padding-left:19px}
.mqc-md li{margin:2px 0}
.mqc-t b{font-weight:700}
.mqc-md code{font:600 12.5px var(--font-body);background:rgb(var(--c-000000-rgb)/.06);padding:1px 5px;border-radius:var(--r-sm)}

/* the typing indicator. Three dots that are a real element, so a test can
   assert it appeared and disappeared rather than inferring it from timing. */
.mqc-typing{flex:0 0 auto;display:flex;gap:4px;align-items:center;padding:12px 13px}
.mqc-typing i{width:6px;height:6px;border-radius:var(--r-pill);background:var(--c-4e6478);
  display:block;animation:mqcbob 1.1s infinite ease-in-out}
.mqc-typing i:nth-child(2){animation-delay:.15s}
.mqc-typing i:nth-child(3){animation-delay:.3s}


.mqc-form{display:flex;gap:8px;align-items:flex-end}
/* min-width:0 is load-bearing. A flex item defaults to min-width:auto, so
   the textarea refused to shrink below its content and pushed the send
   button out of the panel - clipped to a sliver by the overflow:hidden that
   fixed the rail. Visible in the 1440 screenshot, invisible to every gate. */
.mqc-form textarea{flex:1;min-width:0;resize:none;min-height:42px;max-height:132px;
  padding:10px 13px;border:1px solid var(--c-e4eaf0);border-radius:var(--r-md);
  font:400 14px/1.45 var(--font-body);color:var(--c-0b1b2b);background:var(--surface)}
.mqc-form textarea:focus-visible{outline:2px solid var(--action-hover);
  outline-offset:1px;border-color:var(--action-hover)}
.mqc-send{flex:0 0 auto;width:42px;display:grid;place-items:center}
.mqc-send:disabled{opacity:.45}

.mqc-note{font-size:12.5px;color:var(--c-4e6478);margin:8px 0 0;min-height:1em}
.mqc-note:empty{display:none}
.mqc-note a{color:var(--action-hover);font-weight:600}

/* follow-up chips. Real buttons - they were <span role=button> before and
   a span cannot be reached by the form-control shortcut in a screen reader. */
.mqc-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.mqc-chips:empty{display:none}
.mqc-chip{font:500 12.5px var(--font-body);color:var(--c-0b1b2b);background:var(--surface);
  border:1px solid var(--c-e4eaf0);border-radius:var(--r-pill);padding:6px 12px;
  cursor:pointer;text-align:left;transition:border-color .15s,background .15s}
.mqc-chip:hover{border-color:var(--action-hover);background:var(--action-tint)}
.mqc-chip:focus-visible{outline:2px solid var(--action-hover);outline-offset:2px}

/* ---- the modal host ---------------------------------------------------- */
.mqc-scrim{position:fixed;inset:0;background:rgb(var(--c-101820-rgb)/.52);
  z-index:81;opacity:0;pointer-events:none;transition:opacity .2s}
.mqc-scrim.on{opacity:1;pointer-events:auto}
/* CENTRED, NOT DOCKED. It opened at right:22px/bottom:22px - a 552px panel
   in the corner of a 1440 screen, while the card that launched it sat in the
   middle. left/top + translate centres it at every width; the phone tier
   below overrides both, because there inset:0 is the position. */
.mqc.mqc-modal{position:fixed;z-index:82;left:50%;top:50%;right:auto;bottom:auto;width:min(960px,calc(100vw - 48px));max-width:none;height:min(660px,calc(100vh - 48px));background:var(--surface);border:1px solid var(--c-e3e6e8);border-radius:var(--r-lg);box-shadow:var(--sh-6b0acd);padding:0;opacity:0;transform:translate(-50%,-50%) scale(.985);pointer-events:none;transition:opacity .2s,transform .2s;overflow:hidden;font-family:var(--font-display);color:var(--ink)}
.mqc.mqc-modal.on{opacity:1;transform:translate(-50%,-50%);pointer-events:auto}
.mqc-head{display:flex;align-items:center;gap:12px;height:68px;box-sizing:border-box;padding:0 20px 0 22px;border-bottom:1px solid var(--c-eceeef);flex:0 0 auto}
.mqc-mark{width:34px;height:34px;border-radius:var(--r-md);background:var(--c-e4f1f2);color:var(--ai);display:grid;place-items:center;flex:none}
.mqc-ttl{display:flex;flex-direction:column;gap:1px;min-width:0;margin-right:auto}.mqc-ttl b{font:700 15.5px var(--font-display);letter-spacing:-.01em;color:var(--ink)}.mqc-ttl small{font:500 12px var(--font-display);color:var(--c-5e656c)}
.mqc-grounded{display:flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:var(--r-pill);background:var(--c-e4f1f2);font:700 var(--fs-min) var(--font-display);letter-spacing:.02em;color:var(--c-0a5f66);margin-right:4px;white-space:nowrap}.mqc-grounded i{width:6px;height:6px;border-radius:var(--r-pill);background:var(--ai)}
.mqc-full,.mqc-x,.mqc-rail-btn{width:36px;height:36px;box-sizing:border-box;border-radius:var(--r-md);border:1px solid var(--c-e3e6e8);background:var(--surface);color:var(--c-5e656c);display:grid;place-items:center;cursor:pointer;padding:0;flex:none}.mqc-full:hover,.mqc-x:hover,.mqc-rail-btn:hover{background:var(--c-f7f8f9);color:var(--ink)}.mqc-rail-btn{display:none}
.mqc-split{flex:1 1 auto;min-height:0;display:flex;align-items:stretch}
.mqc-rail{width:218px;flex:none;box-sizing:border-box;background:var(--c-f7f8f9);border-right:1px solid var(--c-eceeef);padding:16px 14px;display:flex;flex-direction:column;gap:6px;overflow-y:auto}
.mqc-new{height:40px;flex:none;border-radius:var(--r-md);border:1px solid var(--c-dde1e3);background:var(--surface);color:var(--ink);font:700 13px var(--font-display);display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;margin-bottom:12px}.mqc-new:hover{border-color:var(--c-d2d7da)}
.mqc-eye{margin:0;font-family:var(--font-display);color:var(--c-6e757c);font-size:var(--fs-eyebrow);font-weight:600;text-transform:uppercase;letter-spacing:.12em}.mqc-rail .mqc-eye{color:var(--c-5e656c);padding:0 8px 2px}
.mqc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.mqc-rail:has(.mqc-list:empty) .mqc-eye{display:none}
.mqc-conv{width:100%;box-sizing:border-box;text-align:left;padding:9px 10px;border-radius:var(--r-sm);border:1px solid transparent;background:transparent;font:500 12.5px var(--font-display);color:var(--c-5e656c);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mqc-conv:hover{color:var(--ink)}.mqc-conv[aria-current="true"]{background:var(--surface);border-color:var(--c-e3e6e8);font-weight:600;color:var(--ink)}
.mqc-wa{margin-top:auto;flex:none;box-sizing:border-box;height:40px;border-radius:var(--r-md);border:1px solid var(--c-cfe3d8);background:var(--surface);display:flex;align-items:center;justify-content:center;gap:8px;font:700 12.5px var(--font-display);color:var(--c-1e7a4c)}.mqc-wa:hover{background:var(--c-f6fbf8)}
.mqc.mqc-modal .mqc-body{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;box-sizing:border-box;padding:34px 38px 26px;overflow-y:auto}
.mqc-h{margin:0;font-weight:800;line-height:1.2;font-family:var(--font-display);letter-spacing:-.025em;color:var(--ink)}.mqc-lead{margin:10px 0 0;font-size:var(--fs-lead);max-width:520px;font-weight:500;line-height:1.55;font-family:var(--font-display);color:var(--c-5e656c)}
.mqc.mqc-modal .mqc-foot{margin-top:22px;flex:none}
.mqc.mqc-modal .mqc-form{flex-direction:column;align-items:stretch;gap:4px;border:1px solid var(--c-d2d7da);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-d7d041);padding:6px 10px 10px 16px}
.mqc.mqc-modal .mqc-form:focus-within{border-color:var(--ai);box-shadow:var(--ring-ai)}
.mqc.mqc-modal .mqc-form textarea{border:0;background:transparent;padding:11px 0;min-height:44px;font:500 15px var(--font-display);color:var(--ink);box-shadow:none;outline:0}.mqc.mqc-modal .mqc-form textarea::placeholder{color:var(--c-6e757c)}
.mqc.mqc-modal .mqc-send{align-self:flex-end;width:44px;display:grid;place-items:center}
.mqc-hint{display:flex;align-items:center;gap:7px;margin:11px 0 0;font:500 var(--fs-min) var(--font-display);color:var(--c-6e757c)}.mqc-hint svg{flex:none}
.mqc-starts{margin-top:24px}.mqc-grid{margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mqc-start{box-sizing:border-box;text-align:left;cursor:pointer;border:1px solid var(--c-e3e6e8);border-radius:var(--r-md);background:var(--surface);padding:13px 14px;display:flex;align-items:center;gap:12px;min-height:64px;font-family:var(--font-display)}.mqc-start:hover{border-color:var(--c-d2d7da);background:var(--c-fafbfb)}
.mqc-ico{width:32px;height:32px;flex:none;border-radius:var(--r-sm);display:grid;place-items:center}.mqc-ico-test,.mqc-ico-centre{background:var(--c-e4f1f2);color:var(--c-0a5f66)}.mqc-ico-price{background:var(--c-fbeaec);color:var(--c-a9394b)}.mqc-ico-prep{background:var(--c-eeeaf6);color:var(--c-584a7a)}
.mqc-sc{min-width:0;display:flex;flex-direction:column;gap:3px}.mqc-sc b{font:700 13.5px var(--font-display);color:var(--ink)}.mqc-sc q{font:500 12.5px var(--font-display);color:var(--c-5e656c)}
.mqc-i{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}
.mqc-thread .mqc-hi,.mqc-thread .mqc-hint,.mqc-thread .mqc-starts{display:none}
.mqc.mqc-modal.mqc-thread .mqc-body{padding:0;overflow:hidden}.mqc.mqc-modal.mqc-thread .mqc-log{flex:1 1 auto;padding:26px 34px 20px;margin:0;gap:18px}
.mqc.mqc-modal.mqc-thread .mqc-foot{margin:0;padding:14px 34px 18px;border-top:1px solid var(--c-eceeef)}.mqc.mqc-modal.mqc-thread .mqc-form{padding:4px 8px 8px 16px}.mqc.mqc-modal.mqc-thread .mqc-form textarea{min-height:42px;padding:10px 0;font-size:14.5px}
.mqc.mqc-modal button:focus-visible,.mqc-wa:focus-visible{outline:2px solid var(--ink);outline-offset:2px}













@media(max-width:620px){
  .mqc-send{min-width:44px}
  
  .mqc-chip{min-height:44px;padding-top:11px;padding-bottom:11px}
  .mqc-x,.mqc-rail-btn,.mqc-full{min-width:44px;min-height:44px}
  .mqc-act,.mqc-start,.mqc-new,.mqc-conv{min-height:44px}
  .mqc-act{display:inline-flex}
  
  
  
  
  
  
  
  
  
  
  
  .mqc .mqc-send{min-width:44px}
  /* HERO-CERTS-01's ONE NEW CONTROL. The floating WhatsApp pill measured
     42x42 at this width and it is gone; what replaced it is a 12.5px link in
     the assistant panel, 15px tall - a third of the target the pill it
     replaces already met. Moving a control somewhere quieter is not a reason
     to drop it below the standard the other nine are held to.
     min-height plus inline-flex, NOT the padding-and-negative-margin trick
     .pkc .grouped a needs: that one lives inside a sentence and had to stay
     part of it. This one is on its own line under the chips, so a box is
     what it should be. */
  .mqc-wa{min-height:44px;display:inline-flex;align-items:center}
}

@media(max-width:620px){
  /* full screen, and the composer clears the mobile action bar */
  .mqc.mqc-modal{inset:0;width:100%;max-width:none;height:100%;
    border-radius:0;border:0;right:auto;bottom:auto;
    transform:translateY(10px) scale(.985)}
  /* inset:0 positions it here, so the centring translate must come off or a
     full-screen box sits half off the screen. */
  .mqc.mqc-modal.on{transform:none}
  .mqc.mqc-modal .mqc-body{padding-bottom:calc(14px + env(safe-area-inset-bottom))}
  .mqc-t{max-width:92%}
}
@media(prefers-reduced-motion:reduce){
  .mqc-typing i{animation:none;opacity:.55}
}
@media(prefers-reduced-motion:reduce) and (min-width:621px){
  .mqc.mqc-modal,.mqc.mqc-modal.on{transform:translate(-50%,-50%)}
}
@media(prefers-reduced-motion:reduce) and (max-width:620px){
  .mqc.mqc-modal,.mqc.mqc-modal.on{transform:none}
}

.mqc-card{border:1px solid var(--c-e3e6e8);border-radius:var(--r-md);overflow:hidden;background:var(--surface)}.mqc-cb{padding:16px 18px;display:flex;align-items:flex-start;gap:16px}.mqc-cm{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:7px}
.mqc-cn{font:700 15.5px var(--font-display);letter-spacing:-.01em;color:var(--ink)}.mqc-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:500 12.5px var(--font-display);color:var(--c-5e656c)}.mqc-meta span:not(.mqc-mod)+span::before{content:"\2022";margin-right:8px;color:var(--c-b9bec2)}.mqc-mod{font:700 var(--fs-min) var(--font-display);color:var(--c-0a5f66);background:var(--c-e4f1f2);padding:4px 9px;border-radius:var(--r-sm)}
.mqc-cp{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.mqc-amt{font:800 24px/1 var(--font-display);letter-spacing:-.02em;color:var(--ink)}.mqc-zl{font:600 var(--fs-min) var(--font-display);color:var(--c-6e757c)}
.mqc-prep{margin:-4px 0 0;padding:0 18px 16px;font:500 12.5px/1.5 var(--font-display);color:var(--c-5e656c)}.mqc-prep b{color:var(--ink)}.mqc-prep small{display:block;margin-top:2px;font-size:var(--fs-min);color:var(--c-6e757c)}
.mqc-cf{padding:12px 18px;border-top:1px solid var(--c-eceeef);background:var(--c-fafbfb);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.mqc-cf .mqc-book{box-sizing:border-box;display:inline-flex}.mqc-vary{margin-left:auto;font:500 var(--fs-min) var(--font-display);color:var(--c-5e656c)}
.mqc-at{display:flex;flex-direction:column;gap:8px}.mqc-chs{display:flex;gap:8px;flex-wrap:wrap}
.mqc-ch{box-sizing:border-box;display:flex;align-items:center;gap:7px;height:34px;padding:0 12px;border-radius:var(--r-sm);border:1px solid var(--c-e3e6e8);background:var(--surface);font:500 12px var(--font-display);color:var(--c-5e656c);text-decoration:none}
.mqc-ch b{font:600 12.5px var(--font-display);color:var(--ink)}a.mqc-ch{font-weight:600;font-size:12.5px}
.mqc-fu{margin:0;padding-top:2px;gap:8px}
.mqc-fu .mqc-chip{height:34px;box-sizing:border-box;padding:0 14px;border:1px solid var(--c-d7e8ea);background:var(--c-f4fafa);color:var(--c-0a5f66);font:700 12.5px var(--font-display)}
.mqc-fu .mqc-chip:hover{background:var(--c-e4f1f2);border-color:var(--c-d7e8ea)}
.mqc-res{border:1px solid var(--c-e3e6e8);border-radius:var(--r-md);padding:6px 18px 12px;background:var(--surface)}
.mqc-res-h{margin:8px 0 2px;font:600 12.5px var(--font-display);color:var(--c-5e656c)}
.mqc-pr-d{font:500 12px var(--font-display);color:var(--c-5e656c)}
.mqc-pr-p{font:800 15px var(--font-display);color:var(--ink);white-space:nowrap}
.mqc-more{display:inline-block;margin-top:6px;font:700 12.5px var(--font-display);color:var(--c-0a5f66)}

.mqc-src{margin:0;display:flex;align-items:center;gap:7px;font:500 var(--fs-min) var(--font-display);color:var(--c-6e757c)}.mqc-src svg{color:var(--ai);flex:none}

@media(min-width:621px){.mqc.mqc-modal.mqc-big{width:min(1200px,calc(100vw - 48px));height:min(760px,calc(100vh - 48px))}}
@media(max-width:768px){.mqc-rail-btn{display:grid}.mqc-rail{position:absolute;left:0;top:68px;bottom:0;z-index:2;transform:translateX(-100%);transition:transform .18s;box-shadow:var(--sh-30bdc8)}.mqc-rail.mqc-on{transform:none}}
@media(max-width:620px){.mqc-head{height:62px;padding:0 10px 0 16px;gap:10px}.mqc-mark{width:32px;height:32px}.mqc-grounded,.mqc-full{display:none}.mqc-rail{top:62px}.mqc.mqc-modal .mqc-body{padding:22px 16px calc(18px + env(safe-area-inset-bottom))}.mqc-h{line-height:1.22}.mqc.mqc-modal .mqc-form{padding:4px 8px 8px 14px}.mqc-grid{grid-template-columns:1fr}.mqc-start{min-height:68px}.mqc-ico{width:34px;height:34px;border-radius:var(--r-md)}.mqc.mqc-modal.mqc-thread .mqc-log{padding:18px 16px}.mqc.mqc-modal.mqc-thread .mqc-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){
  .mqc-rail{transition:none}
}




















































































































































#finderChips .mqc-chip{min-height:44px}
