/* ══════════════════════════════════════════════════════════════════════════
   AiReq — /ai/aireq/pricing/
   Page-only rules. Loads after aireq.css (the kit) and aireq-section.css.
   Prefix: aqp-
   ══════════════════════════════════════════════════════════════════════════ */

/* ── MASTHEAD ─────────────────────────────────────────────────────────────
   Headline left, lead and the billing toggle right, so the price cards start
   inside the first screen. */
.aq-page--pricing .aq-mast{padding-bottom:80px}
.aq-page--pricing .aq-mast__side .aq-mast__lead{margin:0}
.aq-page--pricing .aq-mast__side{gap:28px}
/* Break the headline before its green phrase, not inside "the stack". */
@media (min-width:992px){.aqp-nb{white-space:nowrap}}
/* Below that, a greedy wrap gives "Priced by the stack, / not the seat." where
   it fits; balance would split "the / stack". */
@media (max-width:991px){.aq-page--pricing .aq-mast .cr-t{text-wrap:wrap}}

/* Billing period — a pill-shaped segmented control on the dark ground. */
.aqp-toggle{display:inline-flex;align-items:center;gap:2px;padding:4px;border-radius:var(--r-pill);
  border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04)}
.aqp-toggle button{display:inline-flex;align-items:center;gap:8px;margin:0;border:0;border-radius:var(--r-pill);
  padding:9px 18px;background:transparent;color:rgba(255,255,255,.72);font:500 15px/22px var(--sans);
  letter-spacing:-.015em;cursor:pointer;transition:background .2s ease,color .2s ease}
.aqp-toggle button:hover{color:#fff}
.aqp-toggle button[aria-pressed="true"]{background:#fff;color:var(--ink)}
.aqp-toggle__save{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--r-pill);
  background:rgba(63,209,95,.16);color:var(--g2);font-size:12px;font-weight:500;line-height:18px;
  letter-spacing:-.005em;white-space:nowrap;transition:background .2s ease,color .2s ease}
.aqp-toggle button[aria-pressed="true"] .aqp-toggle__save{background:var(--gsoft);color:var(--g)}
.aqp-toggle button:focus-visible{outline:2px solid var(--g2);outline-offset:2px;border-radius:var(--r-pill)}

/* ── VOLUME ESTIMATOR ─────────────────────────────────────────────────────
   One white bar above the cards: the question and the number, the slider,
   and the answer. It names the cheapest tier at a volume; it never says
   "recommended". */
.aqp-tiers{padding-top:72px}
.aqp-calc{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr) minmax(0,1fr);gap:20px 44px;
  align-items:center;margin-bottom:24px;padding:22px 30px 20px;background:#fff;border:1px solid var(--line2);
  border-radius:var(--r-lg);box-shadow:var(--sh-flat)}
.aqp-calc__q{display:flex;flex-direction:column;gap:4px;min-width:0}
.aqp-calc__q label{font-size:15px;font-weight:500;line-height:22px;letter-spacing:-.015em;color:var(--muted)}
.aqp-calc__n{font-family:var(--serif);font-size:44px;line-height:1.05;letter-spacing:-.02em;color:var(--ink);
  font-variant-numeric:tabular-nums}
.aqp-calc__range{position:relative;padding-bottom:26px;min-width:0}

/* The range input, drawn in the kit's language: a 6px meter that fills green
   up to the thumb. --p (0–1) is set by the script. */
.aqp-calc input[type=range]{--thumb:22px;-webkit-appearance:none;appearance:none;display:block;width:100%;
  height:var(--thumb);margin:0;background:transparent;cursor:pointer}
.aqp-calc input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:var(--r-pill);
  background:linear-gradient(90deg,var(--gi) 0,var(--g2) calc(var(--p,.2) * (100% - var(--thumb)) + var(--thumb) / 2),
    #E3E8E4 calc(var(--p,.2) * (100% - var(--thumb)) + var(--thumb) / 2))}
.aqp-calc input[type=range]::-moz-range-track{height:6px;border-radius:var(--r-pill);background:#E3E8E4}
.aqp-calc input[type=range]::-moz-range-progress{height:6px;border-radius:var(--r-pill);
  background:linear-gradient(90deg,var(--gi),var(--g2))}
.aqp-calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--thumb);
  height:var(--thumb);margin-top:calc((6px - var(--thumb)) / 2);border-radius:50%;background:#fff;
  border:2px solid var(--g);box-shadow:0 4px 12px -2px rgba(0,168,45,.35);transition:transform .15s ease}
.aqp-calc input[type=range]::-moz-range-thumb{width:var(--thumb);height:var(--thumb);box-sizing:border-box;
  border-radius:50%;background:#fff;border:2px solid var(--g);box-shadow:0 4px 12px -2px rgba(0,168,45,.35)}
.aqp-calc input[type=range]:active::-webkit-slider-thumb{transform:scale(1.1)}
.aqp-calc input[type=range]:focus{outline:none}
.aqp-calc input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 5px rgba(0,168,45,.18),0 4px 12px -2px rgba(0,168,45,.35)}
.aqp-calc input[type=range]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 5px rgba(0,168,45,.18)}
.aqp-calc__ticks{position:absolute;left:0;right:0;bottom:0;height:18px}
.aqp-calc__ticks span{position:absolute;top:0;left:calc(var(--t) * (100% - 22px) + 11px);transform:translateX(-50%);
  font-size:12px;line-height:18px;color:var(--faint);font-variant-numeric:tabular-nums;white-space:nowrap}
.aqp-calc__ticks span:first-child{transform:translateX(-11px)}
.aqp-calc__ticks span:last-child{transform:translateX(calc(-100% + 11px))}
.aqp-calc__out{min-width:0}
.aqp-calc__res{margin:0;display:flex;flex-direction:column;gap:2px}
.aqp-calc__res span{font-size:13px;line-height:18px;color:var(--g);font-weight:500;letter-spacing:-.005em}
.aqp-calc__res b{font-size:22px;line-height:28px;font-weight:600;letter-spacing:-.02em;color:var(--ink);
  font-variant-numeric:tabular-nums}
.aqp-calc__how{margin:8px 0 0;font-size:12.5px;line-height:18px;color:var(--faint)}

/* ── TIER CARDS ───────────────────────────────────────────────────────────
   Same product three times: same structure, no badge, no feature ticks that
   differ. The price is set at full size, in the serif the kit uses for
   numbers that matter (.cr-stat). */
.aqp-card{padding:32px 30px 26px}
.aqp-card__name{margin:0;font-family:var(--sans);font-size:20px;font-weight:600;line-height:28px;
  letter-spacing:-.02em;color:var(--ink)}
.aqp-card__fit{margin:6px 0 0;min-height:44px;font-size:15px;line-height:22px;letter-spacing:-.01em;
  color:var(--muted2)}
.aqp-card__fig{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 10px;margin:22px 0 0;padding-bottom:22px;
  border-bottom:1px solid var(--line)}
.aqp-card__amt{font-family:var(--serif);font-size:64px;line-height:1;letter-spacing:-.025em;color:var(--ink);
  font-variant-numeric:tabular-nums}
.aqp-card__per{font-size:16px;font-weight:500;letter-spacing:-.015em;color:var(--muted2)}
.aqp-card__list{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.aqp-card__list li{display:flex;align-items:flex-start;gap:11px;font-size:15px;line-height:22px;
  letter-spacing:-.01em;color:var(--ink2)}
.aqp-card__list svg{flex:none;width:22px;height:22px;padding:4px;border-radius:50%;background:var(--gsoft);
  color:var(--g);fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.aqp-card__list b{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}

/* The estimate at the reader's volume. Quiet on every card; on the cheapest
   one it turns green and says so. */
.aqp-est{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 0;
  padding:11px 14px;border-radius:12px;background:var(--panel);border:1px solid transparent;
  transition:background .25s ease,border-color .25s ease}
.aqp-est__k{display:inline-flex;align-items:center;gap:7px;font-size:13px;line-height:18px;letter-spacing:-.005em;
  color:var(--faint);min-width:0}
.aqp-est__v{font-size:17px;font-weight:600;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums;
  white-space:nowrap}
.aqp-card.is-lowest{border-color:rgba(0,168,45,.35)}
.aqp-card.is-lowest .aqp-est{background:var(--gsoft);border-color:var(--gline)}
.aqp-card.is-lowest .aqp-est__k{color:var(--g);font-weight:500}
.aqp-card.is-lowest .aqp-est__k::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;
  background:var(--gi);box-shadow:0 0 0 3px rgba(0,168,45,.16)}
.aqp-card.is-lowest .aqp-est__v{color:var(--g)}

.aqp-card__act{margin-top:auto;padding-top:22px;display:flex;flex-direction:column;align-items:stretch;gap:12px}
.aqp-card__act .cr-btn{width:100%}
.aqp-card__skip{align-self:center;font-size:14px;line-height:20px;letter-spacing:-.01em;color:var(--muted2);
  text-decoration:underline;text-decoration-color:rgba(78,78,78,.3);text-underline-offset:3px;
  transition:color .2s ease,text-decoration-color .2s ease}
.aqp-card__skip:hover{color:var(--g);text-decoration-color:currentColor}

/* ── ACCURACY · TRIAL · NEXT ──────────────────────────────────────────────── */
.aqp-acc{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center;padding:48px}
.aqp-acc .aq-tile__h{font-size:44px}
.aqp-acc__p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.76);margin-top:20px}
.aqp-acc__p b{color:#fff;font-weight:600}
.aqp-acc .aq-art{margin-top:0;padding:36px 40px}

/* The drawn review screen: three fields read, two flagged — the same six in
   ten the paragraph states, and the frame it leads with. */
.aqp-review{max-width:400px;margin:0 auto;font-size:12px}
.aqp-review .ui__body{padding:16px}
.aqp-review .ui-row{padding:10px 12px}
.aqp-review .ui-row__m b{font-size:13px}
.aqp-review .ui-row__m span{font-size:10.5px}
.aqp-review__flag{border-color:#F0D49A;background:#FFFBF2}
.aqp-review__blur{font-style:normal;padding:0 1px;border-radius:3px;background:rgba(217,154,33,.18);
  box-shadow:inset 0 -1.5px 0 #D99A21}
.aqp-review__ft{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;
  padding-top:12px;border-top:1px solid var(--line2)}
.aqp-review__ft span{font-size:11px;color:var(--faint)}
.aqp-review__ft i{font-style:normal;font-size:11.5px;font-weight:600;color:#fff;background:var(--g);
  padding:6px 13px;border-radius:var(--r-pill);box-shadow:var(--sh-btn)}

.aqp-trial .aq-tile__h,.aqp-next .aq-tile__h{font-size:32px}
.aqp-facts{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr) minmax(0,1.35fr);gap:10px;margin:24px 0 0}
.aqp-facts div{border:1px solid var(--line2);border-radius:14px;padding:13px 14px;background:var(--panel)}
.aqp-facts span{display:block;font-size:11px;font-weight:500;letter-spacing:.05em;text-transform:uppercase;
  color:var(--faint);margin-bottom:4px}
.aqp-facts b{display:block;font-size:17px;font-weight:600;line-height:22px;letter-spacing:-.02em;color:var(--ink)}
.aqp-trial .aq-tile__p{margin-top:20px}
.aqp-trial .aq-tile__p b{color:var(--ink);font-weight:600}

.aqp-rail{list-style:none;margin:auto 0;padding:32px 0 8px}
.aqp-rail .cr-rail__s h4{font-size:15.5px;line-height:21px;max-width:150px;margin-left:auto;margin-right:auto}
.aqp-rail .cr-rail__s h4,.aqp-rail .cr-rail__s p{text-wrap:balance}
.aqp-rail .cr-rail__s p{margin-top:6px;max-width:180px;font-size:13.5px;line-height:19px}
.aqp-rail .cr-rail__s::before{background:var(--gline)}

/* ── BUYER QUESTIONS ──────────────────────────────────────────────────────── */
.aqp-q{padding:30px 28px}
.aqp-q .cr-chip{margin-bottom:22px}
.aqp-q .cr-ct{font-size:18px;line-height:26px;margin-bottom:10px}
.aqp-q .cr-cb{font-size:15px;line-height:23px;color:var(--muted2)}

/* ── CLOSE ────────────────────────────────────────────────────────────────── */
.aqp-close .cta-title em{font-style:normal;color:var(--g2)}
.aqp-close .btn-pill-cta{padding:12px 24px}

/* ── RESPONSIVE ───────────────────────────────────────────────────────────── */
@media (max-width:1199px){
  .aqp-calc{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:18px 36px}
  .aqp-calc__out{grid-column:1/-1;display:flex;align-items:baseline;justify-content:space-between;gap:8px 24px;
    flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--line)}
  .aqp-calc__res{flex-direction:row;align-items:baseline;flex-wrap:wrap;gap:4px 10px}
  .aqp-calc__how{margin:0}
  .aqp-card__amt{font-size:56px}
  .aqp-acc{gap:40px;padding:40px}
}
/* Three narrow cards: the estimate's label and figure stack rather than wrap. */
@media (min-width:992px) and (max-width:1199px){
  .aqp-card{padding-left:26px;padding-right:26px}
  .aqp-est{flex-direction:column;align-items:flex-start;gap:2px}
}
@media (max-width:991px){
  .aq-page--pricing .aq-mast{padding-bottom:56px}
  .aqp-tiers{padding-top:48px}
  .aqp-grid{max-width:560px;margin:0 auto}
  .aqp-card__fit{min-height:0}
  .aqp-acc{grid-template-columns:minmax(0,1fr);padding:30px 22px}
  .aqp-acc .aq-tile__h{font-size:32px}
  .aqp-acc__p{font-size:16px}
  .aqp-acc .aq-art{padding:22px 14px}
  .aqp-trial .aq-tile__h,.aqp-next .aq-tile__h{font-size:28px}
  .aqp-rail{padding-top:28px}
  .aqp-rail .cr-rail__s{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:16px;text-align:left;padding:0}
  .aqp-rail .cr-rail__d{grid-row:1/span 2;margin:0}
  .aqp-rail .cr-rail__s h4{max-width:none;margin:7px 0 0}
  .aqp-rail .cr-rail__s p{max-width:none;margin:4px 0 0}
  .aqp-qs{max-width:640px;margin:0 auto}
}
/* cr-home.css sets every h2 to 40px !important below 768px, for the home
   page's section titles. Tier names and tile headings are not section titles,
   so they take the size back here. (Shared fix belongs in aireq-section.css.) */
@media (max-width:767px){
  /* cr-home.css drops the closing band's dome clearance below 768px, so its
     last line ran into the green. Give it back. */
  .aq-page--pricing .aqp-close{padding-bottom:calc(var(--dome-h) + 16px)}
  .aq-page--pricing .aqp-card__name{font-size:20px!important}
  .aq-page--pricing .aqp-acc .aq-tile__h{font-size:32px!important}
  .aq-page--pricing .aqp-trial .aq-tile__h,.aq-page--pricing .aqp-next .aq-tile__h{font-size:28px!important}
}
@media (max-width:575px){
  .aqp-calc__ticks span:nth-child(3){display:none}
  .aqp-toggle{align-self:stretch}
  .aqp-toggle button{flex:1;justify-content:center;padding:9px 12px}
  .aqp-calc{grid-template-columns:minmax(0,1fr);padding:20px 20px 18px;gap:14px}
  .aqp-calc__q{flex-direction:row;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:2px 12px}
  .aqp-calc__n{font-size:36px}
  .aqp-calc__out{flex-direction:column;align-items:flex-start;gap:6px;padding-top:14px}
  .aqp-calc__res b{font-size:19px}
  .aqp-card{padding:26px 22px 22px}
  .aqp-est{flex-direction:column;align-items:flex-start;gap:2px}
  .aqp-card__amt{font-size:52px}
  .aqp-facts{grid-template-columns:minmax(0,1fr)}
  .aqp-facts div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:11px 14px}
  .aqp-facts span{margin:0}
  .aqp-review .ui__body{padding:12px}
  .aqp-q{padding:24px 22px}
  .aqp-close .cta-actions{display:flex;flex-direction:column;align-items:stretch;max-width:320px;margin:0 auto}
}

/* ── Accuracy drawing (6 Oct): the real review screen for the one field not read.
   Oyelaran's requisition is the "DOB not read" row in the overview's queue. ── */
.aqp-fw{max-width:420px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.aqp-fw__chip{margin-left:auto;padding:2px 6px;border:1px solid #EBC77C;background:#FFF7E6;color:#8C6410;
  font:500 8px/1.3 var(--mono);font-style:normal;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.aqp-fw__h{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:11px 12px 6px}
.aqp-fw__h b{font-size:12px;font-weight:600}
.aqp-fw__h span{font-size:9.5px;color:#666}
.aqp-fw__kv{display:grid;grid-template-columns:94px minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 12px;border-top:1px solid #F1F3F1}
.aqp-fw__kv span{font:400 9.5px/1.3 var(--mono);color:#666}
.aqp-fw__kv b{font-size:11px;font-weight:500;color:#111;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aqp-fw__kv em{font:500 8px/1.3 var(--mono);font-style:normal;text-transform:uppercase;letter-spacing:.04em;color:#8C6410;white-space:nowrap}
.aqp-fw__kv--on{background:#FFFBF1;box-shadow:inset 2px 0 0 #D99A21}
.aqp-fw__in{display:flex;align-items:center;padding:4px 7px;border:1.5px solid #1C9323;border-radius:4px;background:#fff;
  box-shadow:0 0 0 3px rgba(28,147,35,.12)}
.aqp-fw__in i{font-style:normal;font-weight:400;color:#A3A9A3}
.aqp-fw__in .aq-caret{order:-1;display:inline-block;width:1.5px;height:12px;margin-right:3px;background:#1C9323;text-decoration:none;
  animation:aqp-blink 1s steps(1) infinite}
@keyframes aqp-blink{50%{opacity:0}}
@media (prefers-reduced-motion:reduce){.aqp-fw__in .aq-caret{animation:none}}
.aqp-fw__ft{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:4px;padding:9px 12px;
  border-top:1px solid #EDEFED;background:#FAFBFA;font-size:10px;color:#8C6410;font-weight:500}
@media (max-width:575px){.aqp-fw{zoom:.82}}
/* Phone pass, 6 Oct: full size; the "not read" chip goes under the field instead of shrinking the screen */
@media (max-width:575px){
  .aqp-fw{zoom:1}
  .aqp-fw__h{flex-wrap:wrap;gap:2px 10px}
  .aqp-fw__kv{grid-template-columns:92px minmax(0,1fr)}
  .aqp-fw__kv b{white-space:normal}
  .aqp-fw__kv--on{grid-template-columns:minmax(0,1fr);row-gap:5px}
  .aqp-fw__kv--on em{grid-column:1;font-size:8.5px}
  .aqp-fw .aq-app__bar .aqp-fw__chip{display:none}
  .aqp-fw .aq-app__crumbs{gap:4px}
}
