/* AI consulting page (9 Nov 2026, reworked). Sits on theme-v2, pages-v2, cases-v2, roadmap-page, home-v2 and roadmap-v2.
   Own classes start with cn-. Spacing follows the homepage: one tight rhythm, sections open with padding-top only. */
.cn-gd{background:linear-gradient(180deg,#b9953f,#8c6d2c);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.cn-sec{position:relative;padding:clamp(56px,6vw,88px) 0 0}
.cn-sec .sec-head{margin-bottom:clamp(32px,4vw,52px)}

/* ---------- hero ---------- */
.cn-hero{position:relative;padding:clamp(112px,11vw,148px) 0 0;overflow-x:clip;overflow-y:visible}
.cn-hero::before{content:"";position:absolute;inset:0 0 auto 0;height:860px;background:radial-gradient(52% 58% at 76% 38%,rgba(233,203,138,.5),rgba(233,203,138,0) 70%),radial-gradient(40% 45% at 8% 0%,rgba(246,239,223,.9),rgba(246,239,223,0) 70%);pointer-events:none;z-index:-1}
.cn-hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(28px,4vw,56px);align-items:center}
.cn-crumb{display:flex;align-items:center;gap:8px;margin-bottom:20px;font-size:13.5px;color:var(--ink-3)}
.cn-crumb a:hover{color:var(--ink)}
.cn-crumb span[aria-hidden]{color:var(--ink-4)}
.cn-h1{font-size:clamp(2.6rem,1.2rem + 4.4vw,4.4rem);line-height:1;letter-spacing:-.055em;font-weight:500;color:var(--ink);text-wrap:balance}
.cn-sub{margin-top:22px;max-width:500px;font-size:var(--fs-lead);line-height:1.58;color:var(--ink-2);text-wrap:pretty}
.cn-ctas{margin-top:30px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 16px}
.cn-ticks{margin-top:26px;display:flex;flex-direction:column;gap:9px}
.cn-ticks li{display:inline-flex;align-items:center;gap:9px;font-size:14.5px;color:var(--ink-2)}
.cn-ticks .tk{width:17px;height:17px}
.cn-hero-road{min-width:0}
.cn-hero-road .au-road{max-width:none}

/* ---------- is the audit AI consulting ---------- */
.cn-yes-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(32px,5vw,72px);align-items:center}
.cn-yes-copy{display:flex;flex-direction:column;gap:18px}
.cn-yes-copy .lead{max-width:520px}
.cn-bul{display:flex;flex-direction:column;gap:12px}
.cn-bul li{display:flex;align-items:center;gap:12px;font-size:16px;line-height:1.45;font-weight:500;letter-spacing:-.012em;color:var(--ink)}
.cn-note{align-self:flex-start;display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:16px;background:var(--gold-wash);box-shadow:inset 0 0 0 1px var(--line-gold);font-size:15px;line-height:1.45;color:var(--gold-ink)}
.cn-note .i{width:18px;height:18px;flex:none}
.cn-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.cn-tool{display:flex;flex-direction:column;gap:8px;padding:18px 18px 20px;border-radius:var(--r-lg);background:rgba(255,255,255,.88);border:1px solid #fff;box-shadow:var(--sh-md);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.cn-tool:hover{transform:translateY(-3px);box-shadow:var(--sh-lg)}
.cn-tool-wide{grid-column:1/-1}
.cn-tool .ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--cream-2);box-shadow:inset 0 0 0 1px var(--line)}
.cn-tool .ic img{width:21px;height:21px}
.cn-tool .ic .i{width:20px;height:20px;color:var(--gold-deep)}
.cn-tool b{font-size:16.5px;font-weight:550;letter-spacing:-.025em;color:var(--ink)}
.cn-tool p{font-size:14px;line-height:1.5;color:var(--ink-3)}

/* ---------- four parts (the case study's real roadmap pages) ---------- */
.cx-wrap .cx-feats{margin:0}

/* ---------- how it works (homepage process) ---------- */
.cn-proc{padding-bottom:0}
.cn-proc.section{padding-top:clamp(56px,6vw,88px)}

/* ---------- price: the homepage audit band, copy on top and the credit rail under it ---------- */
.cn-band.au-band{grid-template-columns:minmax(0,1fr);grid-template-areas:"left" "track"}
.cn-bleft{align-items:center;text-align:center}
.cn-bleft .au-copy{display:flex;flex-direction:column;align-items:center}
.cn-bleft .au-copy .lead{max-width:560px}
.cn-bleft .au-points{align-items:flex-start;text-align:left}
.cn-bleft .au-ctas{justify-content:center}
.cn-band .au-h-b{display:block}

/* ---------- who it is for ---------- */
.cn-fit{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cn-fitc{padding:clamp(24px,3vw,36px);border-radius:var(--r-xl);background:#fff;box-shadow:var(--sh-md)}
.cn-fitc.no{background:#faf8f3;box-shadow:inset 0 0 0 1px var(--line-2)}
.cn-fitc h3{font-size:clamp(1.35rem,1.1rem + .8vw,1.7rem);line-height:1.15;letter-spacing:-.035em;font-weight:500;color:var(--ink)}
.cn-fitc ul{margin-top:20px;display:flex;flex-direction:column;gap:14px}
.cn-fitc li{display:flex;align-items:flex-start;gap:13px;font-size:16px;line-height:1.5;color:var(--ink)}
.cn-fitc li .tk{margin-top:2px}
.cn-fitc li .x{width:18px;height:18px;margin-top:2px;border-radius:50%;display:grid;place-items:center;flex:none;background:#efebe2;color:var(--ink-3)}
.cn-fitc li .x .i{width:10px;height:10px}
.cn-fitc .go{margin-top:22px;display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:500;color:var(--ink);border-bottom:1px solid var(--line-gold);padding-bottom:2px}
.cn-fitc .go .i{width:14px;height:14px;color:var(--gold-deep)}

/* ---------- reviews (homepage section, tightened) ---------- */
.cn-rv.section{padding-top:clamp(56px,6vw,88px);padding-bottom:0}

/* ---------- what we won't do: cream cards, a gold strike draws through each promise ---------- */
.cn-wgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.cn-w{position:relative;display:flex;flex-direction:column;gap:10px;padding:24px 22px 26px;border-radius:var(--r-xl);background:radial-gradient(60% 60% at 0% 0%,rgba(255,255,255,.95),rgba(255,255,255,0) 70%),linear-gradient(180deg,#fcf8ee,#f7efdc);box-shadow:inset 0 0 0 1px rgba(255,255,255,.85),0 0 0 1px rgba(29,29,31,.05),0 24px 50px -30px rgba(60,44,12,.35);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.cn-w:hover{transform:translateY(-3px)}
.cn-w .ic{position:relative;width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin-bottom:6px;background:#fff;box-shadow:var(--sh-sm);color:var(--gold-deep)}
.cn-w .ic>.i{width:22px;height:22px}
.cn-w .ic .no{position:absolute;right:-7px;top:-7px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--gold-deep);box-shadow:0 0 0 1.5px var(--gold),0 3px 8px -3px rgba(140,109,44,.5)}
.cn-w .ic .no .i{width:10px;height:10px}
.js .cn-w .ic .no{transform:scale(0);transition:transform .5s var(--spring) calc(var(--d,0s) + .45s)}
.js .cn-w.in .ic .no{transform:scale(1)}
.cn-w h3{font-size:19px;line-height:1.25;letter-spacing:-.025em;font-weight:500;color:var(--ink)}

/* ---------- faq and final call ---------- */
.cn-faq.section{padding-top:clamp(56px,6vw,88px);padding-bottom:0}
.faq-side .faq-btns{margin-top:26px;display:flex;flex-wrap:wrap;gap:14px 16px}
.cn-end.cta{padding-top:clamp(56px,6vw,88px);padding-bottom:clamp(56px,6vw,88px)}
.cn-end .cta-h{font-size:clamp(2rem,1.3rem + 2vw,3.25rem);line-height:1.06;text-wrap:balance}
.cta-btns{min-width:0}
.cta-btns .btn{max-width:100%}

/* ---------- responsive ---------- */
@media (max-width:1080px){
  .cn-wgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:899.98px){
  .cn-hero-grid{grid-template-columns:1fr;gap:32px}
  .cn-yes-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .cn-fit{grid-template-columns:1fr}
}
@media (max-width:600px){
  .cn-hero{padding-top:100px}
  .cn-ctas{flex-direction:column;align-items:stretch}
  .cn-ctas .btn{width:100%}
  .cn-tools{grid-template-columns:1fr}
  .cn-tool{display:grid;grid-template-columns:40px 1fr;gap:2px 14px;padding:16px}
  .cn-tool .ic{grid-row:1/3}
  .cn-tool p{font-size:13.5px}
  .cn-wgrid{grid-template-columns:1fr}
  .cn-w{flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:20px 18px}
  .cn-w .ic{margin-bottom:0}
  .cn-w h3{flex:1;min-width:0}
  .cn-w p{flex-basis:100%}
  .faq-side .faq-btns .btn{width:100%}
  .cta-btns .btn{white-space:normal;height:auto;min-height:56px;padding:8px 8px 8px 20px;text-align:left;justify-content:space-between}
}
@media (prefers-reduced-motion:reduce){
  .cn-tool,.cn-w{transition:none}
    .js .cn-w .ic .no{transform:none;transition:none}
}
@media (max-width:1099.98px){.cn-band.au-band{grid-template-areas:"copy" "track" "cta";row-gap:28px}.cn-band .au-ctas{justify-content:center}}
@media (max-width:899.98px){.cn-hero-road{padding:0 16px}.cn-hero-road .au-road{max-width:620px;margin:0 auto}.cn-hero-road .au-road .rd-fan{--smax:1}}

/* price block centred under 1100 */
@media (max-width:1099.98px){.cn-band .au-copy{justify-self:center;margin-inline:auto;max-width:640px;display:flex;flex-direction:column;align-items:center;text-align:center}.cn-band .au-points{align-items:flex-start;text-align:left}}
/* phone hero: the fix page covers the "What we'd do" heading fully */
@media (max-width:720px){.cn-hero-road .au-road .pg-sol{--y1:36px}.cn-hero-road .au-road .pg-table{--y1:130px}}
/* final call to action */
.cn-soft-l{margin-top:22px;margin-bottom:10px;font-size:15px;color:var(--ink-3)}
.cn-end .cta-btns{margin-top:0}
.cn-end .cta-btns .btn{white-space:normal;height:auto;min-height:50px;padding-top:7px;padding-bottom:7px;text-align:left}
/* what you get: tight, cards sized to their content, pages cropped to their content */
.cx-wrap .cx-feats{gap:14px}
.cx-wrap .cx-feat-copy{padding:6px 0}
.cx-wrap .cx-feat .cx-stage{min-height:0;padding:46px clamp(14px,2.2vw,28px) 18px}
.cx-wrap .rp-wrap{padding:0}
.cx-wrap .rp-stack{width:min(100%,400px)}
.cx-wrap .rp{aspect-ratio:auto;padding:18px 22px 12px}
.cx-wrap .rp-hd{margin-top:14px}
.cx-wrap .rp-f{margin-top:12px}
.cx-wrap .rp-brand{font-family:var(--font);font-style:normal;font-weight:600;font-size:11px;letter-spacing:-.02em;color:#1d1d1f}
.cx-wrap .rp-brand img{width:15px;height:15px}
.rp-pk{margin-top:12px;display:flex;flex-direction:column;gap:7px}
.rp-pk li{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;background:rgba(255,255,255,.55);box-shadow:inset 0 0 0 1px rgba(60,44,12,.1);font-size:10.8px;line-height:1.35;color:#3d3a34}
.rp-pk b{font-weight:600;color:#1f1d1a}
.rp-pk em{margin-left:auto;font-size:9.4px;color:#8a8478;white-space:nowrap}
.rp-pk .bx{width:15px;height:15px;border-radius:4px;flex:none;display:grid;place-items:center;box-shadow:inset 0 0 0 1.4px #b8913f;color:#fff}
.rp-pk .bx.ck{background:#c39d4c;box-shadow:none}
.rp-pk .bx .i{width:9px;height:9px}
.rp-pk li.later b{color:#6b665c}
.js .cx-demo .rp-pk li[data-at]{transition:opacity .45s var(--ease),transform .45s var(--ease)}
.js .cx-demo .rp-pk li[data-at]:not(.on){opacity:0;transform:translateY(5px)}
