/* ================================================================
   solutions-refresh.css · v1
   Unified visual system for /solutions/**  — mirrors home-refresh
   and products-refresh so all three families share the same look.

   Design language:
   - Hero band: solid brand-green slab, white type (matches homepage hero).
   - Section rhythm: pale green washes (green-1..5) — no coral/lemon.
   - Cards: white rounded, soft-green circle icons.
   - FAQ: floating accordion rows with chevron.
   - Final CTA: forest-green slab with enlarged Start Free button.
================================================================ */

.solutions-refresh {
  --sol-ink: #06150e;
  --sol-dark: #06331f;
  --sol-forest: #073d28;
  --sol-mid: #355847;
  --sol-muted: #557262;
  --sol-line: rgba(6, 51, 31, 0.10);
  --sol-line-strong: rgba(6, 51, 31, 0.18);

  --sol-cream: #f4faee;

  --sol-green-1: #eef7e8;
  --sol-green-2: #e3f2df;
  --sol-green-3: #d7edd9;
  --sol-green-4: #cae7d3;
  --sol-green-5: #bedfca;

  /* Soft color bands keep long pages varied without becoming visually loud. */
  --sol-lime: #e9f7a6;
  --sol-warm-yellow: #f7dfad;
  --sol-grass: #b9dfae;

  --sol-accent: #16ad63;
  --sol-accent-ink: #06150e;

  background: var(--sol-green-1);
  color: var(--sol-ink);
}

/* Strip noisy globals */
.solutions-refresh .k-promo,
.solutions-refresh .marquee,
.solutions-refresh .sticker-field,
.solutions-refresh .sticker-drop,
.solutions-refresh .sticker-sweep,
.solutions-refresh .k-sweep-btn { display: none !important; }

/* Footer: match homepage exactly (undo solutions universal typography) */
.solutions-refresh .k-foot,
.solutions-refresh .k-foot * { font-family: var(--font-sans) !important; }
.solutions-refresh .k-foot h3,
.solutions-refresh .k-foot .k-foot-sub {
  font-family: var(--font-mono) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  color: var(--k-lemon) !important;
  margin: 0 0 40px !important;
  line-height: 1 !important;
}
.solutions-refresh .k-foot .k-foot-sub {
  font-size: 10px !important;
  letter-spacing: .12em !important;
  color: rgba(232,255,59,.5) !important;
  margin: 0 0 18px !important;
}
.solutions-refresh .k-foot a {
  color: rgba(245,239,224,.7) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  transition: color .15s !important;
}
.solutions-refresh .k-foot a:hover { color: var(--k-lemon) !important; background: transparent !important; }
.solutions-refresh .k-foot p {
  color: rgba(245,239,224,.6) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}
.solutions-refresh .k-foot-bot,
.solutions-refresh .k-foot-bot * {
  color: rgba(245,239,224,.4) !important;
  font-size: 13px !important;
}

/* ---------- Typography ---------- */
.solutions-refresh,
.solutions-refresh p,
.solutions-refresh li,
.solutions-refresh a,
.solutions-refresh span,
.solutions-refresh b,
.solutions-refresh code,
.solutions-refresh summary { font-family: var(--font-sans) !important; }

.solutions-refresh h1,
.solutions-refresh h2,
.solutions-refresh h3,
.solutions-refresh h4,
.solutions-refresh .h1 {
  font-family: var(--font-display) !important;
  letter-spacing: -0.045em !important;
  font-weight: 800 !important;
  color: var(--sol-ink);
}
.solutions-refresh h1 { font-size: clamp(46px, 6vw, 92px); line-height: 0.92; }
.solutions-refresh h2, .solutions-refresh .h1 { font-size: clamp(36px, 4.4vw, 68px); line-height: 1.02; }
.solutions-refresh h3 { font-size: clamp(20px, 1.8vw, 24px); line-height: 1.2; }
.solutions-refresh p, .solutions-refresh li { font-size: 16.5px; line-height: 1.55; color: var(--sol-mid); }
.solutions-refresh .lead { color: var(--sol-mid); font-weight: 500; }
.solutions-refresh b, .solutions-refresh strong { color: var(--sol-ink); font-weight: 700; }

/* Kill accent highlights */
.solutions-refresh .serif,
.solutions-refresh .hand,
.solutions-refresh .hl,
.solutions-refresh .hl-line,
.solutions-refresh .hl-green,
.solutions-refresh .lemon,
.solutions-refresh .stroke,
.solutions-refresh h1 span,
.solutions-refresh h2 span,
.solutions-refresh h3 span {
  color: inherit !important;
  background: transparent !important;
  font-style: normal !important;
  font-family: inherit !important;
  font-weight: inherit !important;
  padding: 0 !important;
  -webkit-text-stroke: 0 !important;
}
.solutions-refresh .hl::after,
.solutions-refresh .hl-line::after { content: none !important; display: none !important; }

/* ---------- Pills / eyebrows ---------- */
.solutions-refresh .pill,
.solutions-refresh .p-eyebrow,
.solutions-refresh .cap-tag,
.solutions-refresh .p-eyebrow.fire {
  display: inline-flex; align-items: center;
  padding: 6px 12px !important;
  background: rgba(6, 51, 31, 0.08) !important;
  color: var(--sol-forest) !important;
  border: 1px solid var(--sol-line) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  font-family: var(--font-sans) !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}
.solutions-refresh .p-eyebrow.fire::after { content: none !important; }

/* ---------- Buttons ---------- */
.solutions-refresh .btn,
.solutions-refresh .btn-lg,
.solutions-refresh .btn-xl {
  display: inline-flex; align-items: center; gap: 14px;
  padding: 15px 22px !important;
  font-family: var(--font-sans) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  border: 0 !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  transition: transform .2s ease, background .2s ease;
}
.solutions-refresh .btn-ink,
.solutions-refresh .btn-dark { background: var(--sol-forest) !important; color: #fff !important; }
.solutions-refresh .btn-ink:hover { background: #021f14 !important; transform: translateY(-2px); }
.solutions-refresh .btn-lemon,
.solutions-refresh .btn-lime {
  background: #ffffff !important;
  color: var(--sol-forest) !important;
  border: 1px solid var(--sol-line-strong) !important;
}
.solutions-refresh .btn-lemon:hover { background: var(--sol-green-2) !important; }
.solutions-refresh .btn-arrow::after { content: " →"; margin-left: 2px; }
.solutions-refresh .free-note {
  font-family: var(--font-sans) !important;
  font-style: normal !important;
  transform: none !important;
  color: rgba(255,255,255,0.75) !important;
  font-size: 13px; font-weight: 600;
}

/* ================================================================
   HERO — brand-green slab, white text (identical language to products)
   Applies to both .p-hero (product-style) and .seo-hero (seo-style)
================================================================ */
.solutions-refresh .p-hero,
.solutions-refresh .seo-hero {
  padding: 150px max(5vw, 22px) 90px !important;
  background: var(--sol-accent) !important;
  color: #ffffff !important;
  border: 0 !important;
}
.solutions-refresh .p-hero::before,
.solutions-refresh .p-hero::after,
.solutions-refresh .seo-hero::before,
.solutions-refresh .seo-hero::after { display: none !important; }
.solutions-refresh .p-hero-inner,
.solutions-refresh .seo-hero-inner {
  max-width: 1440px; margin: 0 auto;
  display: grid; grid-template-columns: 1.15fr 0.85fr;
  gap: 6vw; align-items: center;
}
.solutions-refresh .seo-hero-inner.narrow {
  grid-template-columns: 1fr; text-align: center;
}
.solutions-refresh .p-hero-copy h1,
.solutions-refresh .seo-hero h1,
.solutions-refresh .cp-h1-single {
  color: #ffffff !important;
  font-size: clamp(40px, 5.4vw, 96px) !important;
  line-height: 0.92 !important;
  letter-spacing: -0.055em !important;
  margin: 20px 0 24px !important;
  text-wrap: balance;
}
.solutions-refresh .p-hero .lead,
.solutions-refresh .seo-sub,
.solutions-refresh .p-hero-copy .lead,
.solutions-refresh .p-hero-copy .lead b,
.solutions-refresh .p-hero-copy .lead strong,
.solutions-refresh .seo-hero .lead,
.solutions-refresh .seo-hero p {
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: clamp(17px, 1.5vw, 21px);
  line-height: 1.5;
}
.solutions-refresh .p-hero .p-eyebrow,
.solutions-refresh .p-hero .p-eyebrow.fire,
.solutions-refresh .seo-hero .p-eyebrow {
  background: rgba(255, 255, 255, 0.14) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  box-shadow: none !important;
}
.solutions-refresh .p-hero .p-eyebrow.fire::after { content: none !important; }
.solutions-refresh .seo-crumbs,
.solutions-refresh .seo-crumbs a,
.solutions-refresh .seo-crumbs span {
  color: rgba(255, 255, 255, 0.78) !important;
}
.solutions-refresh .seo-crumbs a { border-bottom-color: rgba(255, 255, 255, 0.32) !important; }
.solutions-refresh .seo-crumbs a:hover { color: #fff !important; border-bottom-color: #fff !important; }
.solutions-refresh .p-hero-actions,
.solutions-refresh .seo-hero-cta {
  display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin-top: 30px;
}
.solutions-refresh .p-hero .btn-ink,
.solutions-refresh .seo-hero .btn-ink {
  background: var(--sol-ink) !important; color: #fff !important;
}
.solutions-refresh .p-hero .btn-lemon,
.solutions-refresh .seo-hero .btn-lemon {
  background: #ffffff !important; color: var(--sol-forest) !important;
  border: 1px solid rgba(255, 255, 255, 0.5) !important;
}
.solutions-refresh .p-hero .free-note,
.solutions-refresh .seo-hero-cta .free-note {
  color: rgba(255, 255, 255, 0.78) !important;
}
.solutions-refresh .seo-direct-answer {
  background: rgba(255, 255, 255, 0.7) !important;
  border: 1px solid var(--sol-line) !important;
  color: var(--sol-ink) !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}
.solutions-refresh .seo-direct-answer .label { color: var(--sol-forest) !important; }
.solutions-refresh .seo-direct-answer p,
.solutions-refresh .seo-direct-answer p b {
  color: var(--sol-mid) !important;
  background: transparent !important; padding: 0 !important;
}

/* Hero visual — keep the mock but tone down inline stickers/decoration */
.solutions-refresh .p-hero-visual { position: relative; }
.solutions-refresh .p-hero-figma-wide,
.solutions-refresh .seo-mock {
  border: 0 !important; padding: 0 !important;
  border-radius: 26px !important;
  background: transparent !important;
  box-shadow: 0 30px 60px rgba(6, 51, 31, 0.18) !important;
  transform: none !important;
  overflow: hidden;
}
/* Transparent-background hero collage (image with alpha) — no card frame, drop shadow only */
.solutions-refresh .sol-hero-visual {
  position: relative;
  display: flex; align-items: center; justify-content: center;
}
.solutions-refresh .sol-hero-visual img {
  width: 100%; max-width: 620px; height: auto;
  display: block;
  filter: drop-shadow(0 24px 40px rgba(6, 51, 31, 0.22));
}
@media (max-width: 1024px) {
  .solutions-refresh .sol-hero-visual img { max-width: 460px; margin: 0 auto; }
}
.solutions-refresh .p-hero-perks {
  display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px;
}
.solutions-refresh .p-hero-perks .perk {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 8px 14px;
  background: rgba(255, 255, 255, 0.7) !important;
  border: 1px solid var(--sol-line) !important;
  border-radius: 999px !important;
  box-shadow: none !important;
  color: var(--sol-forest) !important;
  font-size: 13px; font-weight: 600;
}
.solutions-refresh .p-hero-perks .perk span {
  width: 20px; height: 20px; display: grid; place-items: center;
  border-radius: 50%;
  background: var(--sol-forest); color: #ffffff;
  font-size: 11px;
}

/* ================================================================
   Section rhythm — pale green washes
================================================================ */
.solutions-refresh .sol-block,
.solutions-refresh .p-fgrid-sec,
.solutions-refresh .seo-sec {
  padding: 110px max(5vw, 22px) !important;
  background: var(--sol-green-2) !important;
  border: 0 !important;
}
/* Same-family pale→deep green progression (mirrors products-refresh) —
   no coral/lemon/yellow jumps; keeps long pages calm and on-brand. */
.solutions-refresh .seo-sec:nth-of-type(5n + 1) { background: var(--sol-green-1) !important; }
.solutions-refresh .seo-sec:nth-of-type(5n + 2) { background: var(--sol-green-2) !important; }
.solutions-refresh .seo-sec:nth-of-type(5n + 3) { background: var(--sol-green-3) !important; }
.solutions-refresh .seo-sec:nth-of-type(5n + 4) { background: var(--sol-green-4) !important; }
.solutions-refresh .seo-sec:nth-of-type(5n) { background: var(--sol-green-2) !important; }
.solutions-refresh .sol-block + .sol-block { background: var(--sol-green-3) !important; }
.solutions-refresh .sol-details { background: var(--sol-green-4) !important; padding: 110px max(5vw, 22px) !important; }

.solutions-refresh .p-fgrid-inner,
.solutions-refresh .sol-block-inner,
.solutions-refresh .seo-sec-inner,
.solutions-refresh .sol-det-inner { max-width: 1240px; margin: 0 auto; }
.solutions-refresh .p-fgrid-head,
.solutions-refresh .sec-head,
.solutions-refresh .p-sec-head { text-align: center; max-width: 820px; margin: 0 auto 48px; }
.solutions-refresh .p-fgrid-head h2,
.solutions-refresh .seo-sec h2,
.solutions-refresh .sec-head h2 { color: var(--sol-ink); margin-bottom: 14px; }
.solutions-refresh .p-fgrid-head p,
.solutions-refresh .sec-head p,
.solutions-refresh .seo-sec p { color: var(--sol-mid); max-width: 660px; margin: 0 auto; }

/* Icon feature cards */
.solutions-refresh .p-fgrid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px;
}

/* 2-column sol-block variant (used on solutions/founders §2, reusable) */
.solutions-refresh .sol-inner-2col {
  max-width: 1240px; margin: 0 auto;
  display: grid; grid-template-columns: 0.9fr 1.1fr;
  gap: 60px; align-items: center;
}
.solutions-refresh .sol-inner-2col .sol-copy {
  display: flex; flex-direction: column; gap: 20px; align-items: flex-start;
}
.solutions-refresh .sol-inner-2col .sol-copy h2 {
  margin: 4px 0 4px;
  color: var(--sol-ink);
  font-size: clamp(36px, 4.4vw, 64px);
  line-height: 1.02;
  letter-spacing: -0.045em;
}
.solutions-refresh .sol-inner-2col .sol-copy p {
  color: var(--sol-mid);
  font-size: 17px; line-height: 1.55;
  max-width: 480px;
  margin: 0;
}
.solutions-refresh .sol-inner-2col .sol-cta-row {
  margin-top: 8px; display: flex; gap: 12px;
}
.solutions-refresh .sol-checklist {
  display: grid; grid-template-columns: 1fr 1fr; gap: 16px;
}
.solutions-refresh .sol-checklist .p-fcard {
  min-height: 0;
  padding: 22px 22px 24px !important;
}
.solutions-refresh .sol-checklist .p-fcard-icon {
  width: 42px; height: 42px; margin-bottom: 16px;
}
.solutions-refresh .sol-checklist .p-fcard-icon svg { width: 20px; height: 20px; }
.solutions-refresh .sol-checklist .p-fcard h3 { font-size: 17px; margin-bottom: 8px; }
.solutions-refresh .sol-checklist .p-fcard p { font-size: 14.5px; line-height: 1.5; }
.solutions-refresh .sol-checklist .p-fcard code {
  background: var(--sol-green-2);
  color: var(--sol-forest);
  padding: 1px 6px; border-radius: 5px;
  font-family: var(--font-mono); font-size: 13px;
}
@media (max-width: 1024px) {
  .solutions-refresh .sol-inner-2col { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 640px) {
  .solutions-refresh .sol-checklist { grid-template-columns: 1fr; }
}

/* ---- Vertical image-cards (image #2 pattern) — reusable on any sol-details ---- */
.solutions-refresh .sol-vgrid {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px;
  max-width: 1080px; margin: 0 auto;
}
.solutions-refresh .sol-vcard {
  display: flex; flex-direction: column;
  padding: 16px 16px 22px;
  border-radius: 24px;
  color: var(--sol-ink);
  background: #ffffff;
  border: 1px solid rgba(6, 51, 31, 0.08);
  box-shadow: 0 14px 32px rgba(6, 51, 31, 0.08);
  transition: transform .35s cubic-bezier(.16,1,.3,1);
}
.solutions-refresh .sol-vcard:hover { transform: translateY(-6px); }
.solutions-refresh .sol-vcard-a { background: #ffffff; }
.solutions-refresh .sol-vcard-b { background: #f7fbf5; }
.solutions-refresh .sol-vcard-c { background: #f1f7ef; }
.solutions-refresh .sol-vcard-media {
  position: relative;
  border-radius: 20px;
  background: linear-gradient(145deg, #eef7ef, #dcecdf);
  border: 1px solid rgba(6, 51, 31, 0.08);
  aspect-ratio: 16 / 10;
  display: grid; place-items: center;
  margin-bottom: 22px;
  overflow: hidden;
}
.solutions-refresh .sol-vcard-chip {
  position: absolute; top: 14px; left: 14px;
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 12px;
  background: #ffffff;
  color: var(--sol-ink);
  border-radius: 999px;
  font-family: var(--font-sans);
  font-size: 12px; font-weight: 700;
  letter-spacing: 0;
  box-shadow: 0 6px 14px rgba(6, 51, 31, 0.10);
}
.solutions-refresh .sol-vcard-chip-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--sol-accent);
  box-shadow: 0 0 0 3px rgba(22, 173, 99, 0.28);
}
.solutions-refresh .sol-vcard-mock {
  color: var(--sol-forest);
  width: 72%; height: 54%; border-radius: 14px;
  display: grid; place-items: center;
  background: rgba(255,255,255,.78);
  box-shadow: 0 10px 24px rgba(6,51,31,.10);
}
.solutions-refresh .sol-vcard-mock svg {
  width: 54px; height: 54px; display: block;
}
.solutions-refresh .sol-vcard h3 {
  margin: 4px 4px 12px;
  color: var(--sol-ink);
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(20px, 1.8vw, 25px);
  letter-spacing: -0.03em;
  line-height: 1.1;
}
.solutions-refresh .sol-vcard p {
  margin: 0 4px 0;
  color: var(--sol-mid);
  font-size: 14.5px;
  line-height: 1.55;
}
@media (max-width: 1024px) {
  .solutions-refresh .sol-vgrid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .solutions-refresh .sol-vgrid { grid-template-columns: 1fr; }
  .solutions-refresh .sol-vcard-mock svg { width: 76px; height: 76px; }
}

.solutions-refresh .p-fcard {
  padding: 28px 26px 30px !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 28px !important;
  box-shadow: 0 1px 2px rgba(6, 51, 31, 0.04) !important;
  transition: transform .25s ease, box-shadow .25s ease;
  display: flex; flex-direction: column;
  min-height: 240px;
}
.solutions-refresh .p-fcard:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 34px rgba(6, 51, 31, 0.10) !important;
}
.solutions-refresh .p-fcard-icon {
  width: 52px; height: 52px;
  display: grid; place-items: center;
  background: var(--sol-green-3) !important;
  color: var(--sol-forest) !important;
  border: 0 !important;
  border-radius: 50% !important;
  font-size: 22px; font-weight: 700;
  margin-bottom: 22px;
  box-shadow: none !important;
}
.solutions-refresh .p-fcard-icon svg { width: 24px; height: 24px; display: block; }
.solutions-refresh .p-fcard h3 {
  color: var(--sol-ink); font-size: 20px;
  margin: 0 0 12px;
}
.solutions-refresh .p-fcard p { color: var(--sol-mid); font-size: 15px; margin: 0; }

/* "Two ways to add live chat" — Web Widget + Contact Page dual cards */
.solutions-refresh .sol-ways-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 20px;
  max-width: 960px; margin: 44px auto 0; text-align: left;
}
.solutions-refresh .sol-ways-grid .p-fcard {
  display: flex; flex-direction: column; align-items: flex-start;
}
.solutions-refresh .sol-ways-grid .p-fcard .tag {
  display: inline-block; margin-bottom: 14px;
  padding: 4px 11px; border-radius: 999px;
  background: var(--sol-green-3); color: var(--sol-forest);
  font-family: var(--font-mono); font-size: 12px;
  font-weight: 600; letter-spacing: .02em;
}
.solutions-refresh .sol-ways-grid .p-fcard h3 { margin-bottom: 10px; }
.solutions-refresh .sol-ways-grid .p-fcard p { text-align: left; max-width: none; }
.solutions-refresh .sol-ways-grid .p-fcard code {
  background: var(--sol-green-2); color: var(--sol-forest);
  padding: 1px 6px; border-radius: 5px;
  font-family: var(--font-mono); font-size: 13px;
}
.solutions-refresh .sol-ways-grid .p-fcard .sol-ways-link {
  margin-top: 16px; font-family: var(--font-mono);
  font-size: 13px; font-weight: 600; color: var(--sol-forest);
  text-decoration: none; border-bottom: 1.5px solid currentColor;
  padding-bottom: 1px;
}
@media (max-width: 720px) {
  .solutions-refresh .sol-ways-grid { grid-template-columns: 1fr; }
}

/* SEO pain list — 2×2 grid of white cards */
.solutions-refresh .seo-pain-list {
  display: grid; grid-template-columns: 1fr 1fr; gap: 18px;
  margin-top: 40px;
  max-width: 900px;
  margin-left: auto; margin-right: auto;
}
.solutions-refresh .seo-pain-list li {
  list-style: none !important;
  padding: 26px 26px 26px 68px !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 22px !important;
  box-shadow: 0 1px 2px rgba(6, 51, 31, 0.04) !important;
  position: relative;
  color: var(--sol-mid);
  font-size: 15.5px; line-height: 1.55;
  transition: transform .2s ease, box-shadow .2s ease;
}
.solutions-refresh .seo-pain-list li:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 30px rgba(6, 51, 31, 0.10) !important;
}
.solutions-refresh .seo-pain-list li::before {
  content: '' !important;
  position: absolute; left: 24px; top: 28px;
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--sol-green-3);
  border: 0 !important;
  color: transparent !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23073d28' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: center;
}

/* Best for — full-width footer under the 2×2 grid */
.solutions-refresh .seo-sec .seo-bestfor,
.solutions-refresh .seo-sec-inner > p:last-child {
  display: block !important;
  max-width: 900px;
  margin: 24px auto 0 !important;
  padding: 16px 22px !important;
  background: rgba(255, 255, 255, 0.6) !important;
  border: 1px solid var(--sol-line) !important;
  border-radius: 16px !important;
  color: var(--sol-mid) !important;
  font-size: 14.5px !important;
  line-height: 1.55 !important;
  text-align: center;
  opacity: 1 !important;
}
.solutions-refresh .seo-sec-inner > p:last-child b {
  color: var(--sol-ink) !important;
  font-weight: 700;
}

/* Comparison table */
.solutions-refresh .seo-cmp {
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 24px !important;
  box-shadow: 0 12px 28px rgba(6, 51, 31, 0.08) !important;
  overflow: hidden;
  margin-top: 40px;
  padding: 0 !important;
}
.solutions-refresh .seo-cmp thead th {
  background: var(--sol-forest) !important; color: #eafce6 !important;
  border: 0 !important;
}
.solutions-refresh .seo-cmp thead th.k { color: #ffffff !important; }
.solutions-refresh .seo-cmp tbody td {
  border-color: rgba(6, 51, 31, 0.08) !important;
  color: var(--sol-mid);
}
.solutions-refresh .seo-cmp .check { color: var(--sol-accent) !important; }
.solutions-refresh .seo-cmp .dash { color: var(--sol-muted) !important; }

/* ================================================================
   FAQ — floating accordion (matches products-refresh)
================================================================ */
.solutions-refresh .faq,
.solutions-refresh .seo-faq {
  padding: 110px max(5vw, 22px) !important;
  background: var(--sol-green-2) !important;
  border: 0 !important;
}
.solutions-refresh .faq-inner,
.solutions-refresh .seo-faq-inner { max-width: 820px; margin: 0 auto; }
.solutions-refresh .faq-list { display: grid; gap: 14px; }
.solutions-refresh .faq-item,
.solutions-refresh .seo-faq .faq-item {
  padding: 0 !important;
  background: #ffffff !important;
  border: 0 !important;
  border-radius: 20px !important;
  box-shadow: 0 4px 14px rgba(6, 51, 31, 0.07) !important;
  overflow: hidden;
  transition: box-shadow .25s ease, transform .25s ease;
}
.solutions-refresh .faq-item:hover,
.solutions-refresh .seo-faq .faq-item:hover {
  box-shadow: 0 12px 28px rgba(6, 51, 31, 0.11) !important;
}
.solutions-refresh .faq-item[open],
.solutions-refresh .seo-faq .faq-item[open] {
  box-shadow: 0 18px 40px rgba(6, 51, 31, 0.14) !important;
  transform: translateY(-1px);
  background: #ffffff !important;
}
.solutions-refresh .faq-item summary,
.solutions-refresh .seo-faq .faq-item summary {
  list-style: none;
  padding: 22px 60px 22px 24px !important;
  position: relative;
  cursor: pointer;
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: 17.5px !important;
  color: var(--sol-ink) !important;
  letter-spacing: -0.01em;
  background: transparent !important;
}
.solutions-refresh .faq-item summary::-webkit-details-marker,
.solutions-refresh .seo-faq .faq-item summary::-webkit-details-marker,
.solutions-refresh .faq-item summary::marker,
.solutions-refresh .seo-faq .faq-item summary::marker { display: none; content: ''; }
.solutions-refresh .faq-item summary::after,
.solutions-refresh .seo-faq .faq-item summary::after {
  content: '' !important;
  position: absolute;
  right: 22px; top: 50%;
  width: 12px; height: 12px;
  border-right: 2px solid var(--sol-forest);
  border-bottom: 2px solid var(--sol-forest);
  transform: translateY(-70%) rotate(45deg) !important;
  transition: transform .3s ease;
  color: transparent !important;
  background: transparent !important;
}
.solutions-refresh .faq-item[open] summary::after,
.solutions-refresh .seo-faq .faq-item[open] summary::after {
  transform: translateY(-30%) rotate(-135deg) !important;
}
.solutions-refresh .faq-item p.faq-answer,
.solutions-refresh .seo-faq .faq-item p.faq-answer,
.solutions-refresh .seo-faq .faq-answer {
  margin: 0 !important;
  padding: 0 24px 22px !important;
  color: var(--sol-mid) !important;
  font-size: 15.5px !important;
  line-height: 1.6 !important;
}
.solutions-refresh .faq-item code,
.solutions-refresh .seo-faq code {
  background: var(--sol-green-2) !important; color: var(--sol-forest) !important;
  padding: 2px 6px; border-radius: 6px; font-family: var(--font-mono);
}

/* ================================================================
   Final CTA — forest slab + enlarged Start Free button
================================================================ */
.solutions-refresh .final,
.solutions-refresh .seo-final {
  padding: 130px max(5vw, 22px) !important;
  background: var(--sol-ink) !important;
  color: #eafce6 !important;
  border-radius: 0 !important;
}
.solutions-refresh .final-inner,
.solutions-refresh .seo-final-inner { max-width: 1180px; margin: 0 auto; text-align: center; }
.solutions-refresh .final h2,
.solutions-refresh .seo-final h2 {
  color: #fff !important; margin: 20px 0 30px !important;
  font-size: clamp(44px, 5.4vw, 88px) !important;
  line-height: 0.98 !important;
}
.solutions-refresh .final h2 .lemon,
.solutions-refresh .final h2 .serif,
.solutions-refresh .final h2 .stroke,
.solutions-refresh .seo-final h2 .lemon { color: inherit !important; font-family: inherit !important; font-style: normal !important; }
.solutions-refresh .final p,
.solutions-refresh .seo-final p { color: rgba(255, 255, 255, 0.72) !important; }
.solutions-refresh .final .pill,
.solutions-refresh .seo-final .pill {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #eafce6 !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
}
.solutions-refresh .final .fine,
.solutions-refresh .seo-final .fine { color: rgba(255,255,255,0.5) !important; }

/* Enlarge & recolor the final "Start Free" button — matches home v18/v19 style */
.solutions-refresh .final .btn,
.solutions-refresh .seo-final .btn,
.solutions-refresh .final .btn-xl,
.solutions-refresh .seo-final .btn-xl,
.solutions-refresh .final .btn-lemon,
.solutions-refresh .seo-final .btn-lemon {
  padding: 24px 30px 24px 40px !important;
  background: var(--sol-accent) !important;
  color: #06150e !important;
  font-size: clamp(20px, 1.9vw, 26px) !important;
  font-weight: 800 !important;
  border-radius: 18px !important;
  gap: 40px !important;
  min-width: 0 !important;
  height: auto !important;
  border: 0 !important;
  box-shadow: 0 20px 40px rgba(22, 173, 99, 0.35) !important;
  transition: transform .2s ease, background .2s ease;
}
.solutions-refresh .final .btn:hover,
.solutions-refresh .seo-final .btn:hover { background: #0f9457 !important; transform: translateY(-3px); }
.solutions-refresh .final .btn-arrow::after,
.solutions-refresh .seo-final .btn-arrow::after {
  content: "→"; margin-left: 8px;
  display: inline-grid; place-items: center;
  width: 48px; height: 48px; border-radius: 12px;
  background: var(--sol-ink); color: #fff;
  font-size: 22px;
}

/* ================================================================
   Miscellaneous overrides — kill inline mock accents that clash
================================================================ */
.solutions-refresh .seo-mw-tile.t1 { background: linear-gradient(135deg, #cae7d3, #bedfca) !important; }
.solutions-refresh .seo-mw-tile.t2 { background: linear-gradient(135deg, #d7edd9, #a7d6b4) !important; }
.solutions-refresh .seo-mw-tile.t3 { background: linear-gradient(135deg, #bedfca, #86d5a2) !important; }
.solutions-refresh .live-dot {
  background: var(--sol-accent) !important;
  box-shadow: 0 0 0 4px rgba(22, 173, 99, 0.2) !important;
}
.solutions-refresh [data-cursor] { cursor: pointer; }

/* Responsive */
@media (max-width: 1024px) {
  .solutions-refresh .p-hero-inner,
  .solutions-refresh .seo-hero-inner { grid-template-columns: 1fr; gap: 40px; }
  .solutions-refresh .p-fgrid { grid-template-columns: repeat(2, 1fr); }
  .solutions-refresh .seo-pain-list { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
  .solutions-refresh .p-hero,
  .solutions-refresh .seo-hero { padding: 130px 18px 70px !important; }
  .solutions-refresh .p-fgrid { grid-template-columns: 1fr; }
  .solutions-refresh .seo-pain-list { grid-template-columns: 1fr; }
  .solutions-refresh .final .btn,
  .solutions-refresh .seo-final .btn { padding: 20px 24px 20px 30px !important; gap: 20px !important; }
  .solutions-refresh .final .btn-arrow::after,
  .solutions-refresh .seo-final .btn-arrow::after { width: 40px; height: 40px; font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .solutions-refresh * { animation: none !important; transition: none !important; transform: none !important; }
}

/* ================================================================
   Scenario-specific solution stories — shared brand, distinct layouts
================================================================ */
.solutions-refresh .sol-scene{padding:96px max(5vw,22px);background:#f8f5eb;color:var(--sol-ink)}
.solutions-refresh .sol-scene:nth-of-type(even){background:#eef7e8}
.solutions-refresh .sol-scene-inner{width:min(1180px,100%);margin:0 auto}
.solutions-refresh .sol-scene-head{max-width:830px;margin-bottom:44px}
.solutions-refresh .sol-scene-head h2,.solutions-refresh .sol-split-story h2{margin:18px 0;font-size:clamp(38px,4.4vw,68px);line-height:1;letter-spacing:-.045em}
.solutions-refresh .sol-scene-head>p,.solutions-refresh .sol-split-story>div>p{max-width:720px;color:var(--sol-mid);font-size:18px;line-height:1.65}
.solutions-refresh .sol-split-story{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.solutions-refresh .tag{display:inline-flex;padding:7px 12px;border-radius:999px;background:#d9ef72;color:#123629;font:800 11px/1 var(--font-mono);letter-spacing:.08em}

/* SaaS: lifecycle line + code surface */
.sol-journey-line{display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:journey}
.sol-journey-line li{position:relative;min-height:210px;padding:24px 24px 24px 26px;border-top:2px solid #8fcaa6;background:#fff}
.sol-journey-line li:first-child{border-radius:18px 0 0 18px}.sol-journey-line li:last-child{border-radius:0 18px 18px 0}
.sol-journey-line li::before{content:"";position:absolute;top:-7px;left:26px;width:12px;height:12px;border-radius:50%;background:#16ad63;box-shadow:0 0 0 6px #d9ef72}
.sol-journey-line b,.sol-journey-line span{display:block}.sol-journey-line b{margin-top:18px;font-size:16px}.sol-journey-line span{margin-top:16px;color:#496b5a;line-height:1.55}
.sol-code-window{padding:22px;border-radius:20px;background:#08261b;color:#eafce6;box-shadow:0 24px 50px rgba(7,61,40,.18)}
.sol-code-window>span{display:block;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.15);font:700 12px var(--font-mono);color:#9ed4b2}
.sol-code-window code{display:block;margin:26px 0;padding:18px;border-radius:12px;background:#03160f;color:#d9ef72;white-space:normal;line-height:1.7}.sol-code-window p{font:700 12px var(--font-mono);color:#9ed4b2}

/* Ecommerce: question mosaic + checkout rescue */
.sol-question-wall{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.2fr;gap:14px}
.sol-question-wall article{min-height:230px;padding:24px;display:flex;flex-direction:column;border:1px solid #bddbc7;border-radius:22px;background:#fff}
.sol-question-wall article:nth-child(2),.sol-question-wall article:nth-child(3){transform:translateY(34px);background:#e2f3df}
.sol-question-wall span{font:800 11px var(--font-mono);letter-spacing:.1em;color:#0b7144}.sol-question-wall b{margin:auto 0 14px;font-size:25px}.sol-question-wall p{color:#557063;line-height:1.5}
.sol-cart-ticket{padding:34px;display:flex;min-height:330px;flex-direction:column;border-radius:28px;background:#fff;border:1px solid #c9dfcf;box-shadow:0 24px 50px rgba(7,61,40,.12)}
.sol-cart-ticket small{font:800 12px var(--font-mono);color:#0b7144}.sol-cart-ticket strong{margin:auto 0 16px;font-size:34px;line-height:1.1}.sol-cart-ticket span{color:#5a7467}.sol-cart-ticket b{margin-top:28px;padding:14px;border-radius:12px;background:#d9ef72;text-align:center}

/* Restaurant: dayparts + digital menu card */
.sol-dayparts{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sol-dayparts article{min-height:290px;padding:28px;border-radius:28px;background:#fff;border:1px solid #d6dfcc}
.sol-dayparts article:nth-child(2){background:#f3ddb9;transform:rotate(-1.5deg)}.sol-dayparts article:nth-child(3){background:#d9ef72;transform:rotate(1.5deg)}
.sol-dayparts b{font:800 14px var(--font-mono);color:#0b7144}.sol-dayparts h3{margin:70px 0 12px;font-size:31px}.sol-dayparts p{color:#516c5e;line-height:1.55}
.sol-menu-card{min-height:360px;padding:36px;display:flex;flex-direction:column;border-radius:160px 160px 30px 30px;background:#0d5137;color:#fff;text-align:center}
.sol-menu-card small{font:800 12px var(--font-mono);letter-spacing:.12em}.sol-menu-card strong{margin:auto 0 16px;font-size:38px}.sol-menu-card span{color:#c9e9d4}.sol-menu-card button{margin-top:28px;padding:16px;border-radius:999px;background:#d9ef72;color:#06150e;font-weight:800}

/* Real estate: lead pipeline + property ticket */
.sol-pipeline{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:12px;align-items:center}
.sol-pipeline article{min-height:245px;padding:24px;border-radius:22px;background:#fff;border:1px solid #c8ded0}.sol-pipeline article:nth-of-type(even){background:#dcefdc}
.sol-pipeline article span{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:#0b7144;color:#fff;font:800 12px var(--font-mono)}.sol-pipeline article b{display:block;margin:48px 0 12px;font-size:24px}.sol-pipeline article p{color:#557063;line-height:1.5}.sol-pipeline>i{font-style:normal;color:#0b7144;font-size:24px}
.sol-property-card{min-height:350px;padding:34px;display:flex;flex-direction:column;border-radius:28px;background:linear-gradient(150deg,#d8e7ce,#fff);border:1px solid #bcd4c2}
.sol-property-card small{font:800 12px var(--font-mono);color:#0b7144}.sol-property-card strong{margin:auto 0 14px;font-size:36px;line-height:1.08}.sol-property-card span{color:#587264}.sol-property-card b{margin-top:28px;padding:15px;border-radius:12px;background:#0b7144;color:#fff;text-align:center}

/* Agency: kanban intake */
.sol-kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:24px;border-radius:28px;background:#dbe9df}
.sol-kanban article{min-height:260px;padding:24px;border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(7,61,40,.08)}
.sol-kanban span{font:800 11px var(--font-mono);color:#0b7144}.sol-kanban b{display:block;margin:76px 0 14px;font-size:26px}.sol-kanban p{color:#557063;line-height:1.55}.sol-kanban article:nth-child(2){transform:translateY(-12px)}
.sol-agency-handoff blockquote{margin:0;padding:38px;border-radius:28px;background:#0d5137;color:#fff;font-size:30px;font-weight:750;line-height:1.25}.sol-agency-handoff blockquote small{display:block;margin-top:46px;color:#b9d8c4;font:700 12px var(--font-mono)}

/* Coaches: conversation + programme steps */
.sol-fit-conversation{max-width:820px;margin-left:auto;display:grid;gap:14px}.sol-fit-conversation>div{max-width:74%;padding:18px 22px;border-radius:22px;background:#fff;line-height:1.5}.sol-fit-conversation .from-you{margin-left:auto;background:#0d5137;color:#fff}.sol-fit-outcome{margin:20px auto 0!important;max-width:none!important;width:100%;display:flex;justify-content:space-between;background:#d9ef72!important}.sol-fit-outcome span{color:#365946}
.sol-program-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.sol-program-steps li{padding:26px;border-left:3px solid #16ad63;background:#fff;min-height:160px}.sol-program-steps b,.sol-program-steps span{display:block}.sol-program-steps b{font-size:24px}.sol-program-steps span{margin-top:38px;color:#557063}

/* Nonprofit: supporter orbit + campaign card */
.sol-path-orbit{position:relative;min-height:560px;display:grid;grid-template-columns:1fr 1fr;gap:110px 260px;padding:30px 80px}
.sol-path-orbit article{padding:26px;border-radius:26px;background:#fff;border:1px solid #c7ddcb}.sol-path-orbit article b{font-size:28px}.sol-path-orbit article p{margin-top:10px;color:#557063}.sol-path-orbit>div{position:absolute;left:50%;top:50%;width:180px;height:180px;display:grid;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:#0d5137;color:#fff;text-align:center;font-size:28px;font-weight:850;box-shadow:0 0 0 28px #d9ef72}
.sol-campaign-poster{min-height:390px;padding:38px;display:flex;flex-direction:column;border-radius:12px;background:#d9ef72;border:8px solid #fff;outline:1px solid #b6cf85;transform:rotate(-2deg)}.sol-campaign-poster small{font:800 12px var(--font-mono);letter-spacing:.12em}.sol-campaign-poster strong{margin:auto 0 18px;font-size:48px;line-height:1}.sol-campaign-poster span{padding-top:18px;border-top:2px solid #183e2c;font-weight:750}

/* Role-specific blocks */
.sol-founder-timeline ol{max-width:900px;margin:50px auto 0}.sol-founder-timeline li{display:grid;grid-template-columns:100px 1fr;gap:24px;padding:0 0 36px;position:relative}.sol-founder-timeline li::before{content:"";position:absolute;left:87px;top:14px;bottom:-8px;width:2px;background:#9fcab0}.sol-founder-timeline li:last-child::before{display:none}.sol-founder-timeline time{font:800 12px var(--font-mono);color:#0b7144}.sol-founder-timeline li div{padding:24px;border-radius:18px;background:#fff;border:1px solid #c7ddcb}.sol-founder-timeline li b{font-size:23px}.sol-founder-timeline li p{margin-top:8px;color:#557063}
.sol-profile-stack{display:grid;grid-template-columns:.72fr 1.28fr;gap:24px;max-width:950px;margin:50px auto 0}.sol-profile-stack aside{padding:34px;display:flex;flex-direction:column;align-items:center;border-radius:32px;background:#0d5137;color:#fff;text-align:center}.sol-profile-stack .avatar{display:grid;width:96px;height:96px;place-items:center;border-radius:50%;background:#d9ef72;color:#092719;font-size:30px;font-weight:850}.sol-profile-stack aside>b{margin-top:24px;font-size:24px}.sol-profile-stack aside p{margin:10px 0 28px;color:#c4dfcd}.sol-profile-stack button{margin-top:auto;padding:15px 22px;border-radius:999px;background:#d9ef72;font-weight:850}.sol-stack-links{display:grid;gap:12px}.sol-stack-links article{padding:24px;border-radius:18px;background:#fff;border:1px solid #c8ded0}.sol-stack-links span{font:800 10px var(--font-mono);color:#0b7144}.sol-stack-links b{display:block;margin-top:10px;font-size:22px}
.sol-event-flow{display:grid;grid-template-columns:1.35fr auto 1fr auto 1fr auto 1fr;gap:12px;align-items:stretch;margin-top:50px}.sol-event-flow>div{min-height:210px;padding:22px;display:flex;flex-direction:column;border-radius:18px;background:#fff;border:1px solid #bcd6c5}.sol-event-flow .sol-terminal{background:#071b13;color:#d9ef72}.sol-event-flow span{font:800 10px var(--font-mono);letter-spacing:.08em}.sol-event-flow b{margin:auto 0 10px;font-size:21px}.sol-event-flow small{color:#587264}.sol-event-flow code{margin:auto 0;color:#d9ef72;white-space:normal;line-height:1.6}.sol-event-flow>i{align-self:center;font-style:normal;color:#0b7144;font-size:23px}
.sol-inbox-shell{display:grid;grid-template-columns:220px 1fr 300px;min-height:460px;margin-top:50px;border:1px solid #bcd6c5;border-radius:24px;overflow:hidden;background:#fff}.sol-inbox-shell nav{padding:26px;display:flex;flex-direction:column;gap:8px;background:#0d5137;color:#fff}.sol-inbox-shell nav b{margin-bottom:22px;font-size:24px}.sol-inbox-shell nav span{padding:11px;border-radius:9px;color:#c4dfcd}.sol-inbox-shell nav .active{background:#d9ef72;color:#092719;font-weight:800}.sol-thread-list{padding:18px}.sol-thread-list article{padding:18px 12px;display:grid;grid-template-columns:10px 1fr auto;gap:14px;align-items:center;border-bottom:1px solid #e0e9e2}.sol-thread-list i{width:9px;height:9px;border-radius:50%;background:#16ad63}.sol-thread-list p{margin-top:6px;color:#6b8175;font-size:13px}.sol-thread-list article>span{font:700 11px var(--font-mono);color:#0b7144}.sol-inbox-shell aside{padding:28px;background:#eef7e8;display:flex;flex-direction:column}.sol-inbox-shell aside small{font:800 10px var(--font-mono);color:#0b7144}.sol-inbox-shell aside b{margin:55px 0 14px;font-size:26px}.sol-inbox-shell aside p{color:#557063;line-height:1.55}.sol-inbox-shell aside button{margin-top:auto;padding:14px;border-radius:10px;background:#0d5137;color:#fff;font-weight:800}

@media(max-width:900px){
 .solutions-refresh .sol-split-story{grid-template-columns:1fr}
 .sol-journey-line,.sol-question-wall,.sol-dayparts,.sol-kanban,.sol-program-steps{grid-template-columns:1fr 1fr}
 .sol-pipeline,.sol-event-flow{grid-template-columns:1fr 1fr}.sol-pipeline>i,.sol-event-flow>i{display:none}
 .sol-path-orbit{gap:90px;padding-inline:0}.sol-inbox-shell{grid-template-columns:180px 1fr}.sol-inbox-shell aside{grid-column:1/-1;min-height:280px}
}
@media(max-width:620px){
 .solutions-refresh .sol-scene{padding:72px 18px}.solutions-refresh .sol-scene-head h2,.solutions-refresh .sol-split-story h2{font-size:38px}
 .sol-journey-line,.sol-question-wall,.sol-dayparts,.sol-kanban,.sol-program-steps,.sol-pipeline,.sol-event-flow{grid-template-columns:1fr}
 .sol-question-wall article:nth-child(2),.sol-question-wall article:nth-child(3),.sol-kanban article:nth-child(2){transform:none}
 .sol-profile-stack{grid-template-columns:1fr}.sol-path-orbit{display:grid;grid-template-columns:1fr;gap:12px;min-height:0;padding:0}.sol-path-orbit>div{position:static;width:auto;height:auto;transform:none;border-radius:18px;box-shadow:none;padding:22px;grid-row:1}
 .sol-founder-timeline li{grid-template-columns:58px 1fr}.sol-founder-timeline li::before{left:51px}.sol-inbox-shell{grid-template-columns:1fr}.sol-inbox-shell nav{display:none}.sol-inbox-shell aside{grid-column:auto}
}

/* ================================================================
   Concrete product capabilities — a different product view per audience
================================================================ */
.solutions-refresh .sol-product-proof{padding:96px max(5vw,22px);background:#e5f1df;color:var(--sol-ink)}
.solutions-refresh .sol-proof-inner{width:min(1180px,100%);margin:0 auto}
.solutions-refresh .sol-product-proof header{max-width:850px;margin-bottom:42px}
.solutions-refresh .sol-product-proof header h2{margin:18px 0 14px;font-size:clamp(38px,4.3vw,66px);line-height:1;letter-spacing:-.045em}
.solutions-refresh .sol-product-proof header>p{max-width:680px;color:var(--sol-mid);font-size:17px;line-height:1.65}
.solutions-refresh .sol-product-proof code{font-family:var(--font-mono)}

/* SaaS: concise product specification */
.sol-product-spec dl{display:grid;grid-template-columns:1fr 1fr;border:1px solid #b9d3be;border-radius:24px;overflow:hidden;background:#fff}
.sol-product-spec dl>div{padding:30px;border-bottom:1px solid #d9e6dc}
.sol-product-spec dl>div:nth-child(odd){border-right:1px solid #d9e6dc}
.sol-product-spec dl>div:nth-last-child(-n+2){border-bottom:0}
.sol-product-spec dt{font-size:24px;font-weight:850}.sol-product-spec dd{margin:12px 0 0;color:#506d5e;line-height:1.65}
.sol-product-spec code{padding:2px 6px;border-radius:6px;background:#e5f1df;color:#0b7144}

/* Ecommerce: three connected product surfaces */
.sol-shelf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:end}
.sol-shelf-grid article{min-height:310px;padding:30px;display:flex;flex-direction:column;border-radius:28px 28px 12px 12px;border:1px solid #bed6c4;background:#fff;box-shadow:0 18px 36px rgba(7,61,40,.08)}
.sol-shelf-grid article:nth-child(2){min-height:355px;background:#d9ef72}.sol-shelf-grid article:nth-child(3){background:#0d5137;color:#fff}
.sol-shelf-grid small{font:800 11px var(--font-mono);letter-spacing:.1em;color:#0b7144}.sol-shelf-grid article:nth-child(3) small{color:#bce0c8}
.sol-shelf-grid h3{margin:auto 0 14px;font-size:31px}.sol-shelf-grid p{line-height:1.6;color:#557063}.sol-shelf-grid article:nth-child(3) p{color:#c6dfce}
.sol-shelf-grid a{margin-top:24px;color:inherit;font-weight:800;text-decoration:underline;text-underline-offset:4px}

/* Restaurant: a real Contact Page anatomy */
.sol-anatomy{display:grid;grid-template-columns:minmax(250px,.72fr) 1.28fr;gap:70px;align-items:center}
.sol-phone-page{min-height:540px;padding:38px 28px 24px;display:flex;flex-direction:column;gap:12px;border:10px solid #09271b;border-radius:58px;background:#fff;box-shadow:0 28px 55px rgba(7,61,40,.18)}
.sol-phone-page>b{margin:50px 0 22px;text-align:center;font-size:29px}.sol-phone-page>span{padding:17px 18px;border-radius:14px;background:#edf5ea;font-weight:750}
.sol-phone-page button{margin-top:auto;padding:17px;border:0;border-radius:999px;background:#0d5137;color:#fff;font-weight:850}
.sol-anatomy ul{display:grid;gap:0}.sol-anatomy li{display:grid;grid-template-columns:190px 1fr;gap:28px;padding:24px 0;border-bottom:1px solid #bad2be}.sol-anatomy li b{font-size:21px}.sol-anatomy li span{color:#557063;line-height:1.6}

/* Real estate: the context that travels with an enquiry */
.sol-context-row{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #b9d3be;border-radius:24px;overflow:hidden;background:#fff}
.sol-context-row>div{min-height:195px;padding:25px;display:flex;flex-direction:column;border-right:1px solid #d8e5da}.sol-context-row>div:last-child{border:0;background:#d9ef72}
.sol-context-row small{font:800 10px var(--font-mono);letter-spacing:.1em;color:#0b7144}.sol-context-row b{margin:auto 0 8px;font-size:21px}.sol-context-row span{color:#60776b;font-size:14px}
.sol-proof-note{max-width:860px;margin:26px 0 0;padding-left:20px;border-left:3px solid #16ad63;color:#476656;line-height:1.65}

/* Agency: numbered toolkit */
.sol-toolkit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.sol-toolkit-grid article{min-height:315px;padding:25px;display:flex;flex-direction:column;border-radius:18px;background:#fff;border-top:7px solid #0d5137}
.sol-toolkit-grid article:nth-child(2){transform:translateY(18px);background:#f4e4c9}.sol-toolkit-grid article:nth-child(3){transform:translateY(-10px);background:#d9ef72}.sol-toolkit-grid article:nth-child(4){background:#0d5137;color:#fff}
.sol-toolkit-grid article>b{font:850 13px var(--font-mono);color:#0b7144}.sol-toolkit-grid article:nth-child(4)>b{color:#bce0c8}.sol-toolkit-grid h3{margin:auto 0 13px;font-size:27px}.sol-toolkit-grid p{color:#567164;line-height:1.55}.sol-toolkit-grid article:nth-child(4) p{color:#c6dfce}

/* Coaches: three-step product walkthrough */
.sol-product-tour ol{display:grid;gap:0;counter-reset:tour}
.sol-product-tour li{display:grid;grid-template-columns:90px 1fr;gap:30px;align-items:center;padding:26px 0;border-bottom:1px solid #b9d3be}
.sol-product-tour li>span{display:grid;width:68px;height:68px;place-items:center;border-radius:50%;background:#0d5137;color:#fff;font:850 22px var(--font-mono)}
.sol-product-tour li:nth-child(2)>span{background:#d9ef72;color:#092719}.sol-product-tour h3{font-size:27px}.sol-product-tour p{margin-top:7px;color:#557063;line-height:1.55}

/* Nonprofit: channel and product matrix */
.sol-matrix{display:grid;grid-template-columns:1.15fr repeat(3,1fr);border:1px solid #b9d3be;border-radius:22px;overflow:hidden;background:#fff}
.sol-matrix>*{min-height:72px;padding:20px;display:flex;align-items:center;border-right:1px solid #d8e5da;border-bottom:1px solid #d8e5da}
.sol-matrix>*:nth-child(4n){border-right:0}.sol-matrix>*:nth-last-child(-n+4){border-bottom:0}
.sol-matrix>.head,.sol-matrix>b{background:#0d5137;color:#fff;font-size:14px}.sol-matrix strong{font-size:17px}.sol-matrix span{color:#557063;font-size:14px;line-height:1.4}.sol-matrix span:nth-child(odd){background:#f3f7ef}

/* Founders: layered product stack */
.sol-stack-layers{max-width:960px;margin:0 auto;display:grid}
.sol-stack-layers article{position:relative;min-height:102px;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;border:1px solid #b8d2bd;border-radius:18px;background:#fff;box-shadow:0 16px 26px rgba(7,61,40,.08)}
.sol-stack-layers article+article{margin-top:-10px}.sol-stack-layers article:nth-child(2){margin-inline:34px;background:#f2e2c8}.sol-stack-layers article:nth-child(3){margin-inline:68px;background:#d9ef72}.sol-stack-layers article:nth-child(4){margin-inline:102px;background:#3d9a69;color:#fff}.sol-stack-layers article:nth-child(5){margin-inline:136px;background:#0d5137;color:#fff}
.sol-stack-layers b{font-size:22px}.sol-stack-layers span{font:700 12px/1.5 var(--font-mono);color:#577164}.sol-stack-layers article:nth-child(n+4) span{color:#d6ecdc}

/* Creators: modular Contact Page capabilities */
.sol-creator-capabilities{display:flex;flex-wrap:wrap;gap:13px;max-width:1030px}
.sol-creator-capabilities span{padding:18px 22px;border:1px solid #afd0b7;border-radius:999px;background:#fff;font-weight:800;font-size:17px}
.sol-creator-capabilities span:nth-child(3n+2){background:#d9ef72}.sol-creator-capabilities span:nth-child(4n){background:#0d5137;color:#fff}.sol-creator-capabilities span:nth-child(5){font-size:22px;padding-inline:30px}
.sol-ways-link{display:inline-block;margin-top:30px;color:#0b5137;font-weight:850;text-decoration:underline;text-underline-offset:5px}

/* Developers: integration primitives */
.sol-primitive-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.sol-primitive-grid article{grid-column:span 2;min-height:245px;padding:24px;display:flex;flex-direction:column;border-radius:20px;background:#fff;border:1px solid #b8d2bd}
.sol-primitive-grid article:nth-child(1),.sol-primitive-grid article:nth-child(2){grid-column:span 3}.sol-primitive-grid article:nth-child(1){background:#071b13;color:#fff}.sol-primitive-grid article:nth-child(3){background:#d9ef72}
.sol-primitive-grid code{align-self:flex-start;padding:8px 10px;border-radius:8px;background:#dcebdc;color:#0b7144;font-size:13px}.sol-primitive-grid article:first-child code{background:#173c2c;color:#d9ef72}
.sol-primitive-grid b{margin:auto 0 10px;font-size:22px}.sol-primitive-grid p{color:#557063;line-height:1.5}.sol-primitive-grid article:first-child p{color:#bad7c4}

/* Small teams: product operations map */
.sol-ops-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative}
.sol-ops-grid::before{content:"";position:absolute;left:15%;right:15%;top:56px;height:2px;background:#7dbd94}
.sol-ops-grid article{position:relative;padding-top:100px}.sol-ops-grid article::before{content:"";position:absolute;top:39px;left:0;width:34px;height:34px;border:10px solid #e5f1df;border-radius:50%;background:#0d5137;box-shadow:0 0 0 2px #7dbd94}
.sol-ops-grid h3{font-size:29px}.sol-ops-grid ul{margin-top:18px;border-top:1px solid #b9d3be}.sol-ops-grid li{padding:13px 0;border-bottom:1px solid #cbdccb;color:#496b5a;font-weight:700}

@media(max-width:900px){
 .sol-shelf-grid,.sol-toolkit-grid,.sol-context-row{grid-template-columns:1fr 1fr}
 .sol-shelf-grid article,.sol-shelf-grid article:nth-child(2){min-height:280px}.sol-shelf-grid article:nth-child(3){grid-column:1/-1}
 .sol-toolkit-grid article:nth-child(2),.sol-toolkit-grid article:nth-child(3){transform:none}
 .sol-anatomy{gap:36px}.sol-matrix{grid-template-columns:1fr 1fr}.sol-matrix>*{border:1px solid #d8e5da!important}
 .sol-primitive-grid{grid-template-columns:1fr 1fr}.sol-primitive-grid article,.sol-primitive-grid article:nth-child(1),.sol-primitive-grid article:nth-child(2){grid-column:auto}
 .sol-primitive-grid article:last-child{grid-column:1/-1}
}
@media(max-width:620px){
 .solutions-refresh .sol-product-proof{padding:72px 18px}.solutions-refresh .sol-product-proof header h2{font-size:38px}
 .sol-product-spec dl,.sol-shelf-grid,.sol-context-row,.sol-toolkit-grid,.sol-anatomy,.sol-matrix,.sol-primitive-grid,.sol-ops-grid{grid-template-columns:1fr}
 .sol-product-spec dl>div{border-right:0!important;border-bottom:1px solid #d9e6dc!important}.sol-product-spec dl>div:last-child{border-bottom:0!important}
 .sol-shelf-grid article:nth-child(3),.sol-primitive-grid article:last-child{grid-column:auto}.sol-anatomy{gap:30px}.sol-phone-page{min-height:500px}
 .sol-anatomy li{grid-template-columns:1fr;gap:8px}.sol-matrix>*{min-height:auto}.sol-matrix>.head{display:none}
 .sol-stack-layers article,.sol-stack-layers article:nth-child(n){margin-inline:0;display:block}.sol-stack-layers article span{display:block;margin-top:10px}
 .sol-product-tour li{grid-template-columns:60px 1fr;gap:18px}.sol-product-tour li>span{width:52px;height:52px}
 .sol-ops-grid{gap:8px}.sol-ops-grid::before{display:none}.sol-ops-grid article{padding-top:40px}.sol-ops-grid article::before{top:4px;width:20px;height:20px;border-width:5px}
}

/* ================================================================
   Density + contrast correction
   Keep solution stories concise and preserve readable dark surfaces.
================================================================ */
.solutions-refresh .p-hero,
.solutions-refresh .seo-hero{padding:126px max(5vw,22px) 70px!important}
.solutions-refresh .sol-block,
.solutions-refresh .p-fgrid-sec,
.solutions-refresh .seo-sec,
.solutions-refresh .sol-details,
.solutions-refresh .faq,
.solutions-refresh .seo-faq{padding:78px max(5vw,22px)!important}
.solutions-refresh .sol-scene,
.solutions-refresh .sol-product-proof{padding:64px max(5vw,22px)}
.solutions-refresh .sol-scene-head,
.solutions-refresh .sol-product-proof header{margin-bottom:30px}
.solutions-refresh .sol-scene-head h2,
.solutions-refresh .sol-split-story h2,
.solutions-refresh .sol-product-proof header h2{font-size:clamp(34px,3.65vw,56px);line-height:1.03}
.solutions-refresh .sol-scene-head>p,
.solutions-refresh .sol-split-story>div>p,
.solutions-refresh .sol-product-proof header>p{font-size:16px;line-height:1.55}
.solutions-refresh .p-fgrid-head,
.solutions-refresh .sec-head,
.solutions-refresh .p-sec-head{margin-bottom:32px}

/* Global text tokens set headings and bold text to ink; restore contrast
   explicitly anywhere the surface itself is dark. */
.solutions-refresh .sol-shelf-grid article:nth-child(3) h3,
.solutions-refresh .sol-shelf-grid article:nth-child(3) b,
.solutions-refresh .sol-toolkit-grid article:nth-child(4) h3,
.solutions-refresh .sol-toolkit-grid article:nth-child(4) b,
.solutions-refresh .sol-primitive-grid article:first-child b,
.solutions-refresh .sol-stack-layers article:nth-child(n+4) b,
.solutions-refresh .sol-code-window b,
.solutions-refresh .sol-menu-card b,
.solutions-refresh .sol-agency-handoff b,
.solutions-refresh .sol-profile-stack aside b,
.solutions-refresh .sol-inbox-shell nav b{color:#fff!important}

/* Compact product capability modules */
.sol-product-spec dl>div{padding:22px 24px}.sol-product-spec dt{font-size:21px}.sol-product-spec dd{margin-top:8px;line-height:1.55}
.sol-shelf-grid{gap:14px;align-items:stretch}.sol-shelf-grid article,.sol-shelf-grid article:nth-child(2){min-height:244px;padding:24px;border-radius:22px 22px 10px 10px}.sol-shelf-grid h3{margin:auto 0 10px;font-size:25px}.sol-shelf-grid p{font-size:15px;line-height:1.5}.sol-shelf-grid a{margin-top:18px}
.sol-anatomy{grid-template-columns:minmax(220px,.58fr) 1.42fr;gap:40px}.sol-phone-page{min-height:370px;padding:22px 20px 18px;border-width:7px;border-radius:42px}.sol-phone-page>b{margin:18px 0 8px;font-size:22px}.sol-phone-page>span{padding:11px 14px}.sol-phone-page button{padding:12px}.sol-anatomy li{padding:16px 0}.sol-anatomy li b{font-size:18px}
.sol-context-row>div{min-height:150px;padding:20px}.sol-context-row b{font-size:19px}.sol-proof-note{margin-top:20px}
.sol-toolkit-grid article{min-height:238px;padding:22px}.sol-toolkit-grid h3{font-size:23px}.sol-toolkit-grid p{font-size:15px;line-height:1.48}
.sol-product-tour li{grid-template-columns:72px 1fr;gap:22px;padding:18px 0}.sol-product-tour li>span{width:56px;height:56px;font-size:18px}.sol-product-tour h3{font-size:23px}
.sol-matrix>*{min-height:58px;padding:15px 17px}
.sol-stack-layers article{min-height:72px;padding:15px 24px}.sol-stack-layers b{font-size:19px}
.sol-creator-capabilities{gap:10px;max-width:940px}.sol-creator-capabilities span,.sol-creator-capabilities span:nth-child(5){padding:13px 18px;font-size:15px}.sol-ways-link{margin-top:22px}
.sol-primitive-grid{gap:12px}.sol-primitive-grid article{min-height:176px;padding:20px}.sol-primitive-grid b{font-size:20px}.sol-primitive-grid p{font-size:15px;line-height:1.45}
.sol-ops-grid article{padding-top:78px}.sol-ops-grid::before{top:43px}.sol-ops-grid article::before{top:27px}.sol-ops-grid h3{font-size:24px}.sol-ops-grid ul{margin-top:12px}.sol-ops-grid li{padding:10px 0}

/* Compact scenario-specific stories */
.sol-journey-line li{min-height:170px;padding:20px}.sol-journey-line span{margin-top:10px}
.sol-question-wall article{min-height:184px;padding:20px}.sol-question-wall b{font-size:22px}.sol-cart-ticket{min-height:260px;padding:26px}.sol-cart-ticket strong{font-size:29px}
.sol-dayparts article{min-height:220px;padding:22px}.sol-dayparts h3{margin:42px 0 10px;font-size:26px}.sol-menu-card{min-height:285px;padding:28px}.sol-menu-card strong{font-size:31px}
.sol-pipeline article{min-height:188px;padding:20px}.sol-pipeline article b{margin:30px 0 8px;font-size:21px}.sol-property-card{min-height:275px;padding:27px}.sol-property-card strong{font-size:30px}
.sol-kanban{gap:14px;padding:18px}.sol-kanban article{min-height:205px;padding:20px}.sol-kanban b{margin:48px 0 10px;font-size:23px}.sol-agency-handoff blockquote{padding:30px;font-size:25px}.sol-agency-handoff blockquote small{margin-top:30px}
.sol-fit-conversation>div{padding:14px 18px}.sol-program-steps li{min-height:125px;padding:20px}.sol-program-steps b{font-size:20px}.sol-program-steps span{margin-top:24px}
.sol-path-orbit{min-height:350px;gap:44px 180px;padding:12px 58px}.sol-path-orbit article{padding:18px}.sol-path-orbit article b{font-size:21px}.sol-path-orbit>div{width:126px;height:126px;font-size:21px;box-shadow:0 0 0 16px #d9ef72}.sol-campaign-poster{min-height:270px;padding:26px}.sol-campaign-poster strong{font-size:34px}
.sol-founder-timeline ol{margin-top:32px}.sol-founder-timeline li{padding-bottom:24px}.sol-founder-timeline li div{padding:19px}.sol-profile-stack{margin-top:32px}.sol-profile-stack aside{padding:26px}.sol-profile-stack .avatar{width:78px;height:78px}.sol-stack-links article{padding:19px}
.sol-event-flow{margin-top:32px}.sol-event-flow>div{min-height:165px;padding:18px}.sol-inbox-shell{min-height:370px;margin-top:32px}.sol-inbox-shell nav{padding:20px}.sol-thread-list article{padding:13px 10px}.sol-inbox-shell aside{padding:22px}.sol-inbox-shell aside b{margin:34px 0 10px;font-size:23px}

@media(max-width:720px){
 .solutions-refresh .p-hero,.solutions-refresh .seo-hero{padding:112px 18px 56px!important}
 .solutions-refresh .sol-block,.solutions-refresh .p-fgrid-sec,.solutions-refresh .seo-sec,.solutions-refresh .sol-details,.solutions-refresh .faq,.solutions-refresh .seo-faq{padding:60px 18px!important}
 .solutions-refresh .sol-scene,.solutions-refresh .sol-product-proof{padding:58px 18px}
 .solutions-refresh .sol-scene-head h2,.solutions-refresh .sol-split-story h2,.solutions-refresh .sol-product-proof header h2{font-size:34px}
 .sol-phone-page{min-height:400px}.sol-path-orbit{min-height:0;padding:0}.sol-creator-capabilities span,.sol-creator-capabilities span:nth-child(5){font-size:14px;padding:11px 14px}
}

/* ================================================================
   Flow alignment correction
================================================================ */
.solutions-refresh .sol-journey-line,
.solutions-refresh .sol-program-steps,
.solutions-refresh .sol-product-tour ol,
.solutions-refresh .sol-founder-timeline ol,
.solutions-refresh .sol-anatomy ul,
.solutions-refresh .sol-ops-grid ul{margin-block:0;padding-left:0;list-style:none}

.sol-event-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sol-event-flow>i{display:none}
.sol-event-flow>div{min-width:0;justify-content:flex-start}
.sol-event-flow b{margin:auto 0 8px;max-width:100%;font-size:19px;line-height:1.15;overflow-wrap:anywhere}
.sol-event-flow code{margin:auto 0;max-width:100%;font-size:15px;line-height:1.55;overflow-wrap:anywhere}
.sol-event-flow small{display:block;line-height:1.4}

.sol-program-steps{gap:14px;counter-reset:programme}
.sol-program-steps li{position:relative;display:flex;flex-direction:column;min-width:0;padding:20px 20px 18px 30px}
.sol-program-steps li::before{counter-increment:programme;content:counter(programme) ".";position:absolute;left:10px;top:20px;color:#426b58;font:500 14px/1 var(--font-mono)}
.sol-program-steps b{margin-left:12px;font-size:20px;line-height:1.2}
.sol-program-steps span{margin:24px 0 0 12px;line-height:1.45}

.sol-shelf-grid article{justify-content:flex-start}
.sol-shelf-grid h3{margin:42px 0 10px}
.sol-shelf-grid p{margin:0}
.sol-shelf-grid a{margin-top:auto;padding-top:18px}

.sol-pipeline{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}
.sol-pipeline>i{display:none}
.sol-pipeline article{min-width:0}

@media(max-width:900px){
 .sol-event-flow,.sol-pipeline{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .sol-event-flow,.sol-pipeline,.sol-program-steps{grid-template-columns:1fr}
 .sol-shelf-grid h3{margin-top:30px}
}

/* Simplified Chinese: reduce oversized solution headlines and open line spacing. */
html[lang="zh-Hans"] body.solutions-refresh h1,
html[lang="zh-Hans"] body.solutions-refresh .p-hero-copy h1,
html[lang="zh-Hans"] body.solutions-refresh .seo-hero h1,
html[lang="zh-Hans"] body.solutions-refresh .cp-h1-single{font-size:clamp(36px,4.6vw,72px)!important;line-height:1.18!important;letter-spacing:-.04em!important}
html[lang="zh-Hans"] body.solutions-refresh h2,
html[lang="zh-Hans"] body.solutions-refresh .h1{font-size:clamp(30px,3.6vw,56px)!important;line-height:1.2!important;letter-spacing:-.035em!important}
html[lang="zh-Hans"] body.solutions-refresh .p-hero .lead,
html[lang="zh-Hans"] body.solutions-refresh .seo-hero .lead{font-size:clamp(16px,1.25vw,18px)!important;line-height:1.65!important}
@media(max-width:720px){
  html[lang="zh-Hans"] body.solutions-refresh h1,
  html[lang="zh-Hans"] body.solutions-refresh .p-hero-copy h1,
  html[lang="zh-Hans"] body.solutions-refresh .seo-hero h1,
  html[lang="zh-Hans"] body.solutions-refresh .cp-h1-single{font-size:clamp(34px,9vw,54px)!important;line-height:1.2!important}
  html[lang="zh-Hans"] body.solutions-refresh .p-hero .lead,
  html[lang="zh-Hans"] body.solutions-refresh .seo-hero .lead{font-size:16px!important;line-height:1.65!important}
}
