/* Site-wide UI. Floating pill nav: once the page scrolls past the header, the nav detaches
   into a centred white pill. Colours and radii from the Churney design system. */
html.nav-pill .navbar-no-shadow {
  position: fixed;
  top: 12px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: min(1180px, calc(100% - 48px));
  padding: 0;
  z-index: 1000;
  background: #fff;
  border: 1px solid rgba(12, 11, 10, .08);
  border-radius: 999px;
  box-shadow: 0 1px 2px rgba(12, 11, 10, .04), 0 12px 32px -14px rgba(12, 11, 10, .28);
  animation: chNavIn .42s cubic-bezier(.2, 0, 0, 1) both;
}
html.nav-pill .navbar-no-shadow-container { max-width: none; padding: 7px 7px 7px 22px; }
html.nav-pill .container-regular { max-width: none; }
html.nav-pill .navbar-no-shadow .div-block { display: none; }
html.nav-pill .navbar-no-shadow .image-10 { height: 26px; width: auto; }
html.nav-pill .navbar-no-shadow .navbar-wrapper { align-items: center; }
html.nav-pill .navbar-no-shadow .secondary-btn.navbar {
  padding: 11px 22px;
  background: #9bfa91;
  border-color: #9bfa91;
  color: #000;
  transition: background-color .15s, border-color .15s;
}
html.nav-pill .navbar-no-shadow .secondary-btn.navbar:hover { background: #74e069; border-color: #74e069; }
@keyframes chNavIn { from { transform: translateY(calc(-100% - 16px)); } to { transform: none; } }

@media (min-width: 992px) {
  /* The pill already carries "Book a call"; the floating corner button would repeat it. */
  html.nav-pill .ch-cta { opacity: 0 !important; pointer-events: none !important; }
}
@media (max-width: 991px) {
  html.nav-pill .navbar-no-shadow { top: 8px; width: calc(100% - 16px); border-radius: 20px; }
  html.nav-pill .navbar-no-shadow-container { padding: 4px 4px 4px 16px; }
  html.nav-pill .navbar-no-shadow .image-10 { height: 24px; }
  html.nav-pill .navbar-no-shadow .menu-button { padding: 10px; }
  html.nav-pill .navbar-no-shadow .w-nav-overlay { top: calc(100% + 8px); }
  html.nav-pill .navbar-no-shadow .w-nav-overlay .nav-menu {
    background: #fff; border: 1px solid rgba(12, 11, 10, .08); border-radius: 20px;
    box-shadow: 0 18px 40px -18px rgba(12, 11, 10, .35);
  }
  html.nav-pill .navbar-no-shadow .menu-button.w--open { border-radius: 14px; }
}
@media (prefers-reduced-motion: reduce) {
  html.nav-pill .navbar-no-shadow { animation: none; }
}

/* ============================================================
   Design pass (Nov 2026): one calm system across the site.
   ============================================================ */
/* Webflow's base style made every h2 grey (#a0a099). Headings are ink. */
h2 { color: #282826; }

/* ---- Solution pages (ch-premium): eyebrow, proof strip, quote cards ---- */
html body .ch-premium h2 { color: var(--ch-premium-ink, #151612); letter-spacing: -.02em; line-height: 1.08; }
html body .ch-premium-eyebrow {
  font-family: var(--ch-premium-font-primary); font-weight: 400; font-size: 14px; letter-spacing: .08em;
  color: rgba(40, 40, 38, .6); gap: 0;
}
html body .ch-premium-eyebrow::before { content: none; }
html body .ch-premium-final .ch-premium-eyebrow { color: rgba(40, 40, 38, .6); }

html body .ch-premium-proof-card strong { font-size: clamp(20px, 1.9vw, 26px); letter-spacing: -.01em; line-height: 1.2; }
html body .ch-premium-proof-metric { color: var(--ch-premium-ink, #151612); }
html body .ch-premium-proof-logo { opacity: .8; filter: grayscale(1); max-height: 28px; }

html body .ch-premium-success-grid { gap: 20px; }
html body .ch-premium-quote-card {
  min-height: 0; padding: clamp(28px, 3vw, 40px); gap: 28px; justify-content: flex-start;
  border-radius: 24px; background: #fff; border: 1px solid rgba(21, 22, 18, .1);
}
html body .ch-premium-quote-badge {
  display: grid; gap: 6px; padding: 0 0 22px; border: 0; border-bottom: 1px solid rgba(21, 22, 18, .1);
  border-radius: 0; background: none; width: 100%;
  font-family: var(--ch-premium-font-secondary); font-size: 15px; font-weight: 400; letter-spacing: 0; text-transform: none;
}
html body .ch-premium-quote-badge::before { content: none; }
html body .ch-premium-quote-badge strong { font-size: clamp(40px, 3.6vw, 56px); line-height: 1; letter-spacing: -.03em; color: var(--ch-premium-ink, #151612); }
html body .ch-premium-quote-badge span { max-width: none; color: var(--ch-premium-muted, #686a61); line-height: 1.4; }
html body .ch-premium-quote { margin: 0; font-size: clamp(20px, 1.7vw, 24px); line-height: 1.38; letter-spacing: -.005em; color: var(--ch-premium-ink, #151612); flex: 1; }
html body .ch-premium-quote-footer { flex-direction: row !important; align-items: center !important; justify-content: space-between; padding-top: 4px; }
html body .ch-premium-quote-meta img { width: 44px; height: 44px; flex-basis: 44px; }
html body .ch-premium-quote-meta strong { font-size: 16px; margin-bottom: 2px; letter-spacing: 0; }
html body .ch-premium-quote-meta p { font-size: 14px; line-height: 1.4; }
html body .ch-premium-quote-company-logo { max-width: 110px; max-height: 26px; opacity: .55; object-position: right center !important; }
html body .ch-premium-proof-metric { display: grid !important; gap: 6px; }
html body .ch-premium-proof-metric b { font-weight: 400; font-size: clamp(34px, 3vw, 44px); line-height: 1; letter-spacing: -.03em; color: var(--ch-premium-ink, #151612); }
html body .ch-premium-proof-metric span { font-family: var(--ch-premium-font-secondary); font-size: 15px; line-height: 1.4; letter-spacing: 0; color: var(--ch-premium-muted, #686a61); }
html body .ch-premium-proof-card { gap: 18px; justify-content: flex-start; }

/* ---- Case studies ---- */
.case-study-results-wrapper { gap: 0; align-items: stretch; }
.case-study-results-wrapper .line-vertical { background: rgba(40, 40, 38, .14); width: 1px; align-self: stretch; }
.case-study-results-wrapper .result-card-wrap { align-items: flex-start; text-align: left; padding: 0 32px; gap: 8px; }
.case-study-results-wrapper .result-card-wrap:first-child { padding-left: 0; }
.case-study-results-wrapper .impact-wrap { background: none !important; padding: 0 !important; border-radius: 0 !important; }
.case-study-results-wrapper .impact-wrap .body-30 { font-size: clamp(40px, 3.6vw, 56px) !important; line-height: 1 !important; letter-spacing: -.03em; color: #282826; }
.case-study-results-wrapper .result-card-wrap > .body-20 { font-size: 15px !important; line-height: 1.4; color: rgba(40, 40, 38, .62); text-align: left; max-width: 220px; }

.cs-sec { padding: 72px 0; border-top: 1px solid rgba(40, 40, 38, .1); }
.cs-sec.cs-story { border-top: 0; padding-top: 96px; }
.cs-wrap { max-width: 1240px; margin: 0 auto; padding: 0 48px; display: grid; grid-template-columns: 4fr 8fr; gap: 64px; align-items: start; }
.cs-side { position: sticky; top: 104px; }
.cs-eye { margin: 0 0 24px; font-size: 14px; letter-spacing: .08em; text-transform: uppercase; color: rgba(40, 40, 38, .6); }
.cs-ill img { display: block; width: 100%; max-width: 320px; height: auto; }
.cs-main { max-width: 700px; }
.cs-lede { margin: 0; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.3; letter-spacing: -.01em; color: #282826; }
.cs-rt { color: #282826; }
.cs-rt h1, .cs-rt h2, .cs-rt h3, .cs-rt h4 { font-weight: 400; color: #282826; letter-spacing: -.01em; line-height: 1.2; margin: 40px 0 12px; }
.cs-rt > :first-child, .cs-rt > div:first-child > :first-child { margin-top: 0; }
.cs-rt h2 { font-size: 30px; } .cs-rt h3 { font-size: 24px; } .cs-rt h4, .cs-rt h5, .cs-rt h6 { font-size: 19px; }
.cs-rt p, .cs-rt li { font-size: 17px; line-height: 1.6; color: rgba(40, 40, 38, .78); }
.cs-rt p { margin: 0 0 16px; }
.cs-rt strong { font-weight: 400; color: #282826; }
.cs-rt blockquote { margin: 28px 0; padding: 0 0 0 20px; border-left: 2px solid #9bfa91; font-size: 20px; line-height: 1.45; color: #282826; }

section.testimonial .testimonial-text { max-width: 900px; font-size: clamp(22px, 2vw, 30px) !important; line-height: 1.35 !important; letter-spacing: -.01em; color: #282826; }
section.testimonial .testimonial-text img { width: 36px; height: auto; display: block; margin-bottom: 20px; }
section.testimonial .testimonial-details { justify-content: flex-start !important; margin-top: 24px; }
section.testimonial .testimonial-details { display: flex !important; flex-direction: row-reverse !important; justify-content: flex-end !important; align-items: center !important; gap: 14px; }
section.testimonial .div-block-27 { display: block !important; text-align: left !important; }
section.testimonial .div-block-27 .body-20 { font-size: 17px !important; color: #282826; }
section.testimonial .div-block-27 .body-16 { font-size: 14px !important; color: rgba(40, 40, 38, .62); }
section.testimonial .image-24 { width: 52px !important; height: 52px !important; border-radius: 50% !important; object-fit: cover; }

section.more-case { background: transparent !important; border-top: 1px solid rgba(40, 40, 38, .1); }
section.more-case .heading-morecs { display: flex !important; flex-direction: row !important; align-items: baseline !important; justify-content: space-between !important; margin-bottom: 28px; }
section.more-case .heading-morecs .body-24 { font-size: 28px; letter-spacing: -.01em; color: #282826; }
.cs-all { color: #282826 !important; text-decoration: none; border-bottom: 1px solid #9bfa91; font-size: 15px; }
.cs-all::after { content: " \2192"; }
section.more-case .bg-cs { display: none !important; }
section.more-case .more-cs-wrapper { gap: 16px; }
section.more-case .div-block-28, section.more-case .cs-you {
  background: #fff; border: 1px solid rgba(40, 40, 38, .1); border-radius: 20px; transition: border-color .2s, transform .2s;
}
section.more-case .div-block-28:hover, section.more-case .cs-you:hover { border-color: rgba(40, 40, 38, .35); transform: translateY(-2px); }
section.more-case .cs-you { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; border-style: dashed; text-decoration: none; color: #282826; }
section.more-case .cs-you .body-24 { font-size: 20px; }
section.more-case .cs-you span { font-size: 13px; color: rgba(40, 40, 38, .62); }

@media (max-width: 991px) {
  .cs-wrap { grid-template-columns: 1fr; gap: 28px; padding: 0 24px; }
  .cs-side { position: static; }
  .cs-ill img { max-width: 260px; }
  .case-study-results-wrapper .result-card-wrap { padding: 0 16px; }
}
@media (max-width: 600px) {
  .cs-sec { padding: 52px 0; }
  .case-study-results-wrapper { flex-direction: column; gap: 20px; }
  .case-study-results-wrapper .line-vertical { display: none; }
  .case-study-results-wrapper .result-card-wrap { padding: 0; }
}

/* ---- Result cards (homepage "Leading brands", /case-studies): one stat, quiet metadata ---- */
.case-study-details { display: flex !important; align-items: flex-end !important; justify-content: space-between !important; gap: 16px; width: 100%; }
.case-study-details .div-block-2 { display: flex !important; align-items: center; gap: 0 !important; }
.case-study-details .case-study-detail-inner { border: 0 !important; background: none !important; padding: 0 !important; min-width: 0 !important; }
.case-study-details .case-study-detail-inner .tag { display: none !important; }
.case-study-details .case-study-detail-inner .text-block { font-size: 13px !important; line-height: 1.3; color: rgba(40, 40, 38, .62); }
.case-study-details .case-study-detail-inner + .case-study-detail-inner .text-block::before { content: "\00b7"; margin: 0 6px; }
.case-study-details .roas { display: flex !important; flex-direction: row-reverse !important; align-items: baseline !important; gap: 6px; background: none !important; border: 0 !important; padding: 0 !important; }
.case-study-details .roas .text-block { font-size: 30px !important; line-height: 1 !important; letter-spacing: -.02em; color: #282826 !important; }
.case-study-details .roas .tag { font-size: 12px !important; color: rgba(40, 40, 38, .62) !important; letter-spacing: .04em; }

.who-we-help .case-card-wrapper { display: flex !important; flex-direction: column !important; gap: 22px !important; padding: 28px !important; border-radius: 24px !important; border: 1px solid rgba(40, 40, 38, .1) !important; }
.who-we-help .case-card-wrapper .image-3 { order: -1; align-self: flex-start; height: 30px !important; width: auto !important; max-width: 170px; margin: 0 !important; object-fit: contain; object-position: left center; filter: grayscale(1); opacity: .85; }
.who-we-help .case-card-wrapper .case-study-details { order: 0; padding-bottom: 20px; border-bottom: 1px solid rgba(40, 40, 38, .1); }
.who-we-help .case-card-wrapper .paragraph { order: 1; flex: 1; margin: 0 !important; font-size: 17px !important; line-height: 1.5 !important; color: #282826 !important; }
.who-we-help .case-card-wrapper .user-detail { order: 2; }
.who-we-help .case-card-wrapper .image-4 { width: 44px !important; height: 44px !important; }
.who-we-help .case-card-wrapper .text-block-2 { font-size: 16px !important; }
.who-we-help .case-card-wrapper .text-block-3 { font-size: 14px !important; color: rgba(40, 40, 38, .62) !important; }
.who-we-help .case-card-wrapper .div-block-3 { order: 3; }
.who-we-help .case-card-wrapper .secondary-btn {
  border: 0 !important; padding: 0 !important; background: none !important; width: auto !important; text-align: left !important;
  font-size: 15px !important; color: #282826 !important; border-bottom: 1px solid #9bfa91 !important; border-radius: 0 !important; display: inline-block !important;
}

.case-study-card-wrap { border-radius: 24px !important; }
.case-study-card-wrap .div-block-12 img { filter: grayscale(1); opacity: .85; transition: filter .25s, opacity .25s; }
.case-study-card-wrap:hover .div-block-12 img { filter: none; opacity: 1; }

/* ---- Listing pages with a side index (/case-studies, /team, /guides): give the grid the room ---- */
@media (min-width: 992px) {
  .team_wrapper { grid-template-columns: 200px minmax(0, 1fr) !important; column-gap: 48px !important; }
  .team_wrapper > .cs-right-wrap, .team_wrapper > .team-wrap { grid-column: 2 / -1 !important; width: auto !important; }
  .team_wrapper .collection-list-4, .team_wrapper .team-wrap .collection-list { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 16px !important; }
}
.case-study-card-wrap { height: auto !important; min-height: 0 !important; gap: 20px !important; padding: 22px !important; }
.case-study-card-wrap .div-block-12 { height: 120px !important; display: flex !important; align-items: center; justify-content: flex-start; }
.case-study-card-wrap .div-block-12 img { max-height: 44px !important; max-width: 75% !important; width: auto !important; height: auto !important; object-fit: contain; }

/* Smooth scrolling (Lenis, see /assets/vendor/lenis-site.js) */
html.lenis, html.lenis body { height: auto; }
.lenis:not(.lenis-autoToggle).lenis-stopped { overflow: clip; }
.lenis [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-smooth iframe { pointer-events: none; }

/* Nav CTA never wraps */
.navbar-no-shadow a[href="/book-your-call"] { white-space: nowrap; }
