/*
Theme Name: BizOpsPick
Description: Custom child theme for BizOpsPick.
Author: BizOpsPick
Template: generatepress
Version: 5.0
*/


/* ==================================================
   1. DESIGN SYSTEM
================================================== */

:root {
    --bop-black: #111116;

    --bop-purple: #6d36e8;
    --bop-purple-dark: #5623c8;
    --bop-purple-light: #8b63ed;

    --bop-white: #ffffff;

    --bop-bg: #fbfaff;
    --bop-soft: #f6f2fc;

    --bop-text: #36313f;
    --bop-muted: #6c6674;

    --bop-border: #e5deee;
    --bop-border-hover: #cdbce2;

    --bop-container: 1180px;
}


/* ==================================================
   2. GLOBAL
================================================== */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;

    color: var(--bop-text);

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    font-size: 16px;
    line-height: 1.6;

    background: var(--bop-bg);
}

a {
    transition:
        color 0.18s ease,
        border-color 0.18s ease,
        transform 0.18s ease,
        box-shadow 0.18s ease;
}


/* ==================================================
   3. GENERATEPRESS RESET
================================================== */

.site,
.site-content,
.content-area,
.site-main,
.inside-article {
    background: transparent;
}

.home .site.grid-container {
    max-width: none;
}

.home .site-content {
    padding: 0;
}

.home .content-area {
    width: 100%;
}

.home .inside-article {
    padding: 0;
}

.home .entry-content {
    margin: 0;
}


/* ==================================================
   4. HEADER
================================================== */

.site-header {
    padding: 16px 22px 0;

    background:
        #f7f3fc;
}

.inside-header {
    max-width: var(--bop-container);

    margin: 0 auto;

    padding: 14px 26px;

    background:
        rgba(255, 255, 255, 0.96);

    border:
        1px solid rgba(225, 216, 237, 0.9);

    border-radius: 15px;

    box-shadow:
        0 10px 34px rgba(44, 29, 67, 0.06);
}

.site-logo img {
    display: block;

    width: auto;
    max-height: 42px;
}

.main-navigation {
    background: transparent;
}

.main-navigation .main-nav ul li a {
    padding-left: 15px;
    padding-right: 15px;

    color: #29252e;

    font-size: 14px;
    font-weight: 600;

    border-bottom:
        2px solid transparent;
}

.main-navigation .main-nav ul li a:hover {
    color: var(--bop-purple);

    background: transparent;
}

.main-navigation
.main-nav
ul
li[class*="current-menu-"] > a {
    color: var(--bop-purple);

    background: transparent;

    border-bottom-color:
        var(--bop-purple);
}

/* =========================================================
   BIZOPSPICK HOMEPAGE — COMPLETE REPLACEMENT
   ========================================================= */

.bopx-home {
  --bopx-ink: #17131f;
  --bopx-copy: #5f5869;
  --bopx-purple: #6934ee;
  --bopx-purple-dark: #4b1db9;
  --bopx-lavender: #f3efff;
  --bopx-soft: #faf8ff;
  --bopx-paper: #ffffff;
  --bopx-line: #ddd5ec;
  --bopx-plum: #20132e;
  --bopx-shell: 1280px;

  width: 100%;
  overflow: hidden;
  background: #fcfbff;
  color: var(--bopx-ink);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.bopx-home,
.bopx-home * {
  box-sizing: border-box;
}

.bopx-home h1,
.bopx-home h2,
.bopx-home h3,
.bopx-home p,
.bopx-home dl,
.bopx-home dd {
  margin-top: 0;
}

.bopx-home h1,
.bopx-home h2,
.bopx-home h3 {
  color: var(--bopx-ink);
}

.bopx-home a {
  text-decoration: none;
}

.bopx-home a:focus-visible {
  outline: 3px solid #b99cff;
  outline-offset: 4px;
}

.bopx-shell {
  width: min(calc(100% - 48px), var(--bopx-shell));
  margin-inline: auto;
}

.bopx-eyebrow {
  margin-bottom: 13px !important;
  color: var(--bopx-purple) !important;
  font-size: 0.74rem;
  font-weight: 850;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.bopx-home h1 {
  max-width: 670px;
  margin-bottom: 22px;
  font-size: clamp(3.35rem, 4.25vw, 4.65rem);
  line-height: 1.03;
  letter-spacing: -0.055em;
}

.bopx-home h1 span {
  color: var(--bopx-purple);
}

.bopx-home h2 {
  margin-bottom: 0;
  font-size: clamp(2.15rem, 3vw, 3.15rem);
  line-height: 1.08;
  letter-spacing: -0.045em;
}

.bopx-home h3 {
  line-height: 1.22;
  letter-spacing: -0.025em;
}

.bopx-button {
  display: inline-flex !important;
  min-height: 52px;
  align-items: center;
  justify-content: center;
  gap: 24px;
  padding: 13px 22px;
  border: 1px solid var(--bopx-purple);
  border-radius: 8px;
  font-size: 0.96rem;
  font-weight: 800;
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease;
}

.bopx-button:hover {
  transform: translateY(-2px);
}

.bopx-button-primary {
  background: var(--bopx-purple);
  color: #fff !important;
}

.bopx-button-primary:hover {
  border-color: var(--bopx-purple-dark);
  background: var(--bopx-purple-dark);
}

.bopx-button-secondary {
  background: transparent;
  color: var(--bopx-purple) !important;
}

.bopx-text-link {
  color: var(--bopx-purple) !important;
  font-weight: 800;
}

/* Hero */

.bopx-hero {
  padding: 86px 0 80px;
  background:
    radial-gradient(
      circle at 88% 26%,
      rgba(210, 195, 255, 0.72) 0,
      rgba(244, 240, 255, 0.22) 29%,
      transparent 44%
    ),
    linear-gradient(135deg, #fff 0%, #faf8ff 62%, #f1ecff 100%);
}

.bopx-hero-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.92fr) minmax(490px, 1.08fr);
  gap: 74px;
  align-items: center;
}

.bopx-hero-copy {
  min-width: 0;
}

.bopx-lede {
  max-width: 600px;
  margin-bottom: 30px !important;
  color: var(--bopx-copy) !important;
  font-size: 1.16rem;
}

.bopx-actions {
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px;
}

.bopx-brief {
  min-width: 0;
  padding: 26px;
  border: 1px solid #d6cbea;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.91);
  box-shadow: 0 24px 60px rgba(69, 42, 119, 0.09);
}

.bopx-brief-heading {
  display: flex !important;
  align-items: center;
  gap: 11px;
  margin-bottom: 20px;
  font-size: 1.15rem;
}

.bopx-brief-mark {
  color: var(--bopx-purple);
  font-size: 1.25rem;
}

.bopx-brief-example {
  margin-left: auto;
  color: var(--bopx-copy);
  font-size: 0.8rem;
  font-weight: 650;
}

.bopx-brief-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
}

.bopx-brief-facts > div {
  min-width: 0;
  margin-bottom: 10px;
  padding: 10px 12px;
  border: 1px solid var(--bopx-line);
  border-radius: 6px;
  background: #fff;
}

.bopx-brief small,
.bopx-brief strong {
  display: block;
}

.bopx-brief small {
  color: var(--bopx-copy);
  font-size: 0.875rem;
}

.bopx-brief-facts strong {
  margin-top: 4px;
  font-size: 0.9rem;
}

.bopx-brief-steps {
  margin: 0;
  padding: 0;
  list-style: none;
}

.bopx-brief-steps li {
  display: grid !important;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  margin-bottom: 17px;
}

.bopx-brief-steps li > span {
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border: 1px solid var(--bopx-purple);
  border-radius: 50%;
  color: var(--bopx-purple);
  font-size: 0.72rem;
}

.bopx-brief-steps strong {
  font-size: 0.9rem;
}

.bopx-brief-note {
  margin: 4px 0 0 !important;
  padding: 9px 12px;
  background: var(--bopx-lavender);
  color: var(--bopx-purple) !important;
  font-size: 0.84rem;
}

/* Decision routes */

.bopx-start {
  padding: 62px 0 72px;
  background: #fff;
}

.bopx-section-intro {
  margin-bottom: 30px;
}

.bopx-section-intro-centered {
  text-align: center;
}

.bopx-section-intro-centered h2 {
  font-size: 2.15rem;
}

.bopx-route-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.bopx-route {
  display: grid !important;
  min-width: 0;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  gap: 17px;
  align-items: center;
  padding: 22px;
  border: 1px solid var(--bopx-line);
  border-radius: 10px;
  background: #fff;
  color: var(--bopx-ink) !important;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.bopx-route:hover {
  transform: translateY(-3px);
  border-color: #bca8ee;
  box-shadow: 0 14px 35px rgba(64, 38, 107, 0.07);
}

.bopx-route-icon {
  display: grid;
  width: 52px;
  height: 52px;
  place-items: center;
  border-radius: 9px;
  background: var(--bopx-lavender);
  color: var(--bopx-purple);
  font-size: 1.5rem;
}

.bopx-route strong,
.bopx-route small {
  display: block;
}

.bopx-route small {
  margin-top: 3px;
  color: var(--bopx-copy);
  font-size: 0.88rem;
}

.bopx-route b {
  color: var(--bopx-purple);
}

/* Industries */

.bopx-discover {
  padding: 88px 0 96px;
  background: var(--bopx-soft);
}

.bopx-section-row {
  display: flex !important;
  justify-content: space-between;
  align-items: flex-end;
  gap: 28px;
}

.bopx-industry-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}

.bopx-industry-card {
  display: grid !important;
  min-width: 0;
  min-height: 176px;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto 1fr;
  gap: 16px;
  padding: 20px;
  border: 1px solid var(--bopx-line);
  border-radius: 12px;
  background: #fff;
  color: var(--bopx-ink) !important;
  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.bopx-industry-card:hover {
  transform: translateY(-4px);
  border-color: #b9a5ea;
  box-shadow: 0 16px 36px rgba(65, 40, 110, 0.08);
}

.bopx-industry-icon {
  display: grid;

  width: 42px;
  height: 42px;

  grid-column: 1 / -1;
  place-items: center;

  border-radius: 12px;

  background: linear-gradient(145deg, #ffffff, #eee8ff);

  border: 1px solid #ddd4f7;

  box-shadow:
    0 7px 14px rgba(92, 67, 170, 0.16),
    inset 0 2px 2px rgba(255, 255, 255, 0.95),
    inset 0 -3px 6px rgba(92, 67, 170, 0.08);

  font-size: 1.15rem;

  transform: translateY(0);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.bopx-industry-card strong,
.bopx-industry-card small {
  display: block;
}

.bopx-industry-card small {
  margin-top: 5px;
  color: var(--bopx-copy);
  font-size: 0.86rem;
  line-height: 1.5;
}

.bopx-industry-card b {
  align-self: end;
  color: var(--bopx-purple);
}

/* Software picks */

.bopx-picks-heading {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.42fr);
  gap: 50px;
  align-items: end;
  margin: 88px 0 30px;
  padding-top: 44px;
  border-top: 1px solid var(--bopx-line);
}

.bopx-picks-heading > p {
  margin: 0;
  color: var(--bopx-copy);
}

.bopx-pick-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.bopx-pick-card {
  display: flex !important;
  min-width: 0;
  min-height: 440px;
  flex-direction: column;
  padding: 27px;
  border: 1px solid var(--bopx-line);
  border-radius: 12px;
  background: #fff;
}

.bopx-pick-card-featured {
  border-color: #ad93eb;
  box-shadow: 0 18px 45px rgba(74, 43, 130, 0.09);
}

.bopx-pick-top {
  display: flex !important;
  justify-content: space-between;
  align-items: center;
}

.bopx-pick-top span {
  color: #a691bc;
  font-family: Georgia, serif;
  font-size: 1.3rem;
  font-style: italic;
}

.bopx-pick-top small {
  padding: 5px 9px;
  border-radius: 99px;
  background: var(--bopx-lavender);
  color: var(--bopx-purple);
  font-size: 0.67rem;
  font-weight: 800;
  text-transform: uppercase;
}

.bopx-pick-card h3 {
  margin: 36px 0 8px;
  font-size: 1.75rem;
}

.bopx-pick-for {
  margin-bottom: 23px !important;
  color: var(--bopx-copy) !important;
}

.bopx-pick-card dl {
  margin-bottom: 24px;
}

.bopx-pick-card dl > div {
  padding: 15px 0;
  border-top: 1px solid #ebe6f1;
}

.bopx-pick-card dt {
  margin-bottom: 4px;
  color: var(--bopx-purple);
  font-size: 0.7rem;
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bopx-pick-card dd {
  color: var(--bopx-copy);
  font-size: 0.94rem;
  line-height: 1.6;
}

.bopx-pick-card > a {
  margin-top: auto;
  color: var(--bopx-purple) !important;
  font-weight: 800;
}

/* Featured comparison */

.bopx-case {
  padding: 96px 0;
  background: var(--bopx-lavender);
}

.bopx-case-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(440px, 0.8fr);
  gap: 105px;
  align-items: center;
}

.bopx-case-copy > p:not(.bopx-eyebrow) {
  max-width: 580px;
  margin: 23px 0 28px;
  color: var(--bopx-copy);
  font-size: 1.08rem;
}

.bopx-case-sheet {
  position: relative;
  min-width: 0;
  padding: 35px;
  transform: rotate(-1deg);
  border: 1px solid #d4c8e6;
  background: #fffefa;
  box-shadow: 0 24px 58px rgba(67, 45, 96, 0.12);
}

.bopx-case-number {
  color: var(--bopx-purple);
  font-size: 0.7rem;
  font-weight: 850;
  letter-spacing: 0.11em;
}

.bopx-case-sheet > small {
  display: block;
  margin-top: 26px;
  color: var(--bopx-copy);
  font-weight: 750;
  text-transform: uppercase;
}

.bopx-case-sheet h3 {
  margin: 8px 0 12px;
  font-size: 1.55rem;
}

.bopx-case-sheet p {
  color: var(--bopx-copy);
}

.bopx-meter {
  display: grid !important;
  grid-template-columns: 105px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  margin: 17px 0;
  font-size: 0.78rem;
}

.bopx-meter i {
  display: block;
  height: 5px;
  background:
    linear-gradient(
      90deg,
      var(--bopx-purple) var(--bopx-score),
      #e6dfee var(--bopx-score)
    );
}

.bopx-case-sheet em {
  position: absolute;
  right: -35px;
  bottom: 27px;
  padding: 8px 12px;
  border: 1px solid #cc3fa2;
  background: #fff8fd;
  color: #9b277a;
  font-family: Georgia, serif;
}

/* Guides */

.bopx-guides {
  padding: 92px 0;
  background: #fff;
}

.bopx-guide-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.bopx-guide-grid article {
  display: flex !important;
  min-width: 0;
  min-height: 280px;
  flex-direction: column;
  padding: 27px;
  border: 1px solid var(--bopx-line);
  border-radius: 11px;
  background: #fff;
}

.bopx-guide-grid small {
  color: var(--bopx-purple);
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bopx-guide-grid h3 {
  margin: 28px 0 13px;
  font-size: 1.35rem;
}

.bopx-guide-grid p {
  color: var(--bopx-copy);
}

.bopx-guide-grid a {
  margin-top: auto;
  color: var(--bopx-purple) !important;
  font-weight: 800;
}

/* Research standard */

.bopx-standard {
  padding: 68px 0 74px;
  border-top: 1px solid var(--bopx-line);
  background: var(--bopx-soft);
}

.bopx-standard-heading {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin-bottom: 34px;
}

.bopx-standard-heading h2 {
  font-size: 2rem;
}

.bopx-standard-heading > p {
  margin: 0;
  color: var(--bopx-copy);
}

.bopx-standard-mark {
  display: grid;
  width: 54px;
  height: 58px;
  place-items: center;
  clip-path: polygon(50% 0, 90% 23%, 90% 70%, 50% 95%, 10% 70%, 10% 23%);
  background: var(--bopx-purple);
  color: #fff;
  font-size: 1.55rem;
}

.bopx-standard-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  border-top: 1px solid var(--bopx-line);
}

.bopx-standard-grid > div {
  min-width: 0;
  padding: 24px 20px 0;
  border-right: 1px solid var(--bopx-line);
}

.bopx-standard-grid > div:last-child {
  border-right: 0;
}

.bopx-standard-grid span,
.bopx-standard-grid strong,
.bopx-standard-grid small {
  display: block;
}

.bopx-standard-grid span {
  margin-bottom: 20px;
  color: #9f8ab3;
  font-family: Georgia, serif;
  font-style: italic;
}

.bopx-standard-grid strong {
  margin-bottom: 8px;
}

.bopx-standard-grid small {
  color: var(--bopx-copy);
  font-size: 0.88rem;
  line-height: 1.55;
}

.bopx-standard-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 30px;
  color: var(--bopx-purple) !important;
  font-size: 0.95rem;
  font-weight: 800;
}

/* Final CTA */

.bopx-desk {
  padding: 72px 0;
  background: linear-gradient(135deg, #1c1128 0%, #3b2454 100%);
}

.bopx-desk-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(260px, 0.75fr) auto;
  gap: 55px;
  align-items: center;
}

.bopx-desk h2 {
  color: #fff;
  font-size: clamp(2.55rem, 3.5vw, 3.75rem);
}

.bopx-desk-grid > p {
  margin: 0;
  color: #d9cee5;
}

.bopx-button-light {
  border-color: #fff;
  background: #fff;
  color: #3d1d68 !important;
  white-space: nowrap;
}

/* Homepage footer */

.home .site-footer {
  display: none;
}

.bopx-site-footer {
  background: #171020;
  color: #d9d1e2;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 15px;
  line-height: 1.6;
}

.bopx-site-footer,
.bopx-site-footer * {
  box-sizing: border-box;
}

.bopx-site-footer .bopx-shell {
  width: min(calc(100% - 48px), 1280px);
  margin-inline: auto;
}

.bopx-site-footer a {
  color: #d9d1e2;
  text-decoration: none;
}

.bopx-site-footer a:hover {
  color: #fff;
}

.bopx-site-footer a:focus-visible {
  outline: 3px solid #b99cff;
  outline-offset: 4px;
}

.bopx-footer-grid {
  display: grid;
  grid-template-columns: minmax(260px, 1.45fr) repeat(4, minmax(135px, 1fr));
  gap: 42px;
  padding-top: 64px;
  padding-bottom: 54px;
}

.bopx-footer-brand {
  max-width: 330px;
}

.bopx-footer-name {
  margin: 0 0 13px;
  color: #fff;
  font-size: 1.45rem;
  font-weight: 850;
  letter-spacing: -0.03em;
}

.bopx-footer-brand > p:not(.bopx-footer-name) {
  margin: 0 0 18px;
  color: #bcb2c8;
  font-size: 0.96rem;
}

.bopx-footer-brand > a {
  color: #b99cff;
  font-weight: 750;
}

.bopx-footer-grid nav {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.bopx-footer-grid nav strong {
  margin-bottom: 5px;
  color: #fff;
  font-size: 0.93rem;
}

.bopx-footer-grid nav a {
  font-size: 0.9rem;
}

.bopx-footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding-top: 22px;
  padding-bottom: 24px;
  border-top: 1px solid #3a2e46;
  color: #aaa0b6;
  font-size: 0.84rem;
}

/* Tablet */

@media (max-width: 1100px) {
  .bopx-hero-grid {
    grid-template-columns: minmax(0, 0.85fr) minmax(430px, 1fr);
    gap: 42px;
  }

  .bopx-industry-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .bopx-standard-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .bopx-standard-grid > div {
    padding-bottom: 24px;
  }

  .bopx-case-grid {
    gap: 65px;
  }

  .bopx-footer-grid {
    grid-template-columns: 1.4fr repeat(2, 1fr);
  }
}

@media (max-width: 860px) {
  .bopx-hero-grid,
  .bopx-case-grid,
  .bopx-desk-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .bopx-hero-grid {
    gap: 48px;
  }

  .bopx-route-grid,
  .bopx-pick-grid,
  .bopx-guide-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .bopx-pick-card {
    min-height: 0;
  }

  .bopx-industry-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bopx-case-grid {
    gap: 48px;
  }

  .bopx-case-sheet {
    margin-right: 32px;
  }

  .bopx-standard-heading {
    grid-template-columns: 54px minmax(0, 1fr);
  }

  .bopx-standard-heading > p {
    grid-column: 2;
  }

  .bopx-standard-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bopx-button-light {
    justify-self: start;
  }

  .bopx-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bopx-footer-brand {
    grid-column: 1 / -1;
    max-width: 520px;
  }
}

/* Mobile */

@media (max-width: 600px) {
  .bopx-shell {
    width: calc(100% - 34px);
  }

  .bopx-hero {
    padding: 62px 0 58px;
  }

  .bopx-home h1 {
    font-size: clamp(2.72rem, 13vw, 3.45rem);
  }

  .bopx-home h2 {
    font-size: 2.08rem;
  }

  .bopx-actions {
    display: grid !important;
  }

  .bopx-button {
    width: 100%;
  }

  .bopx-brief {
    padding: 20px;
  }

  .bopx-brief-heading {
    flex-wrap: wrap;
  }

  .bopx-brief-example {
    width: 100%;
    margin-left: 37px;
  }

  .bopx-brief-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
  }

  .bopx-start,
  .bopx-discover,
  .bopx-case,
  .bopx-guides {
    padding: 68px 0;
  }

  .bopx-section-row,
  .bopx-picks-heading {
    display: block !important;
  }

  .bopx-section-row .bopx-text-link {
    display: inline-block;
    margin-top: 18px;
  }

  .bopx-industry-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .bopx-industry-card {
    min-height: 0;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    grid-template-rows: auto;
    align-items: center;
  }

  .bopx-industry-icon {
    grid-column: auto;
  }

  .bopx-picks-heading {
    margin-top: 68px;
  }

  .bopx-picks-heading > p {
    margin-top: 16px;
  }

  .bopx-pick-card {
    padding: 23px;
  }

  .bopx-case-sheet {
    margin-right: 0;
    padding: 26px;
    transform: none;
  }

  .bopx-case-sheet em {
    position: static;
    display: inline-block;
    margin-top: 10px;
  }

  .bopx-standard-heading {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .bopx-standard-mark {
    width: 48px;
    height: 52px;
  }

  .bopx-standard-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .bopx-standard-grid > div {
    border-right: 0;
    border-bottom: 1px solid var(--bopx-line);
  }

  .bopx-standard-grid > div:last-child {
    border-bottom: 0;
  }

  .bopx-desk {
    padding: 64px 0;
  }

  .bopx-desk-grid {
    gap: 24px;
  }

  .bopx-desk h2 {
    font-size: 2.65rem;
  }

  .bopx-site-footer {
    font-size: 16px;
  }

  .bopx-site-footer .bopx-shell {
    width: calc(100% - 34px);
  }

  .bopx-footer-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px;
    padding-top: 50px;
    padding-bottom: 42px;
  }

  .bopx-footer-brand {
    grid-column: auto;
  }

  .bopx-footer-grid nav a {
    font-size: 0.96rem;
  }

  .bopx-footer-bottom {
    flex-direction: column;
    font-size: 0.9rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .bopx-home * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}

/* ==================================================
   SOFTWARE DIRECTORY PAGE
================================================== */

.bop-software-page {
    position: relative;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 88% 12%,
            rgba(123, 72, 225, 0.12),
            transparent 26%
        ),
        radial-gradient(
            circle at 7% 72%,
            rgba(150, 105, 230, 0.065),
            transparent 22%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #fcfbff 48%,
            #f7f3ff 100%
        );

    padding: 0 0 82px;
}

.bop-software-page::before {
    content: "";

    position: absolute;

    top: 20px;
    right: -120px;

    width: 620px;
    height: 360px;

    opacity: 0.38;

    pointer-events: none;

    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='620' height='360' viewBox='0 0 620 360'%3E%3Cg fill='none' stroke='%23c6b3eb' stroke-width='2'%3E%3Cpath d='M0 130 C150 25 300 30 410 100 S550 190 660 130'/%3E%3Cpath d='M-10 155 C145 50 295 53 405 123 S545 213 655 153' opacity='.78'/%3E%3Cpath d='M-20 180 C140 75 290 76 400 146 S540 236 650 176' opacity='.55'/%3E%3Cpath d='M-30 205 C135 100 285 99 395 169 S535 259 645 199' opacity='.3'/%3E%3C/g%3E%3C/svg%3E");

    background-repeat: no-repeat;
    background-size: contain;
}

.bop-software-page::after {
    content: "";

    position: absolute;

    left: 22px;
    top: 415px;

    width: 92px;
    height: 120px;

    opacity: 0.45;

    background-image:
        radial-gradient(
            circle,
            rgba(109, 54, 232, 0.25) 1.4px,
            transparent 1.7px
        );

    background-size: 14px 14px;
}


/* SHELL */

.bop-software-shell {
    position: relative;
    z-index: 2;

    width: min(
        calc(100% - 44px),
        1180px
    );

    margin: 0 auto;

    padding-top: 64px;
}


/* ==================================================
   HERO
================================================== */

.bop-software-hero {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        330px;

    gap: 80px;

    align-items: center;

    margin-bottom: 48px;
}

.bop-software-eyebrow {
    width: fit-content;

    margin: 0 0 18px;

    padding-bottom: 8px;

    color: var(--bop-purple);

    border-bottom: 2px solid var(--bop-purple);

    font-size: 12px;
    font-weight: 800;

    letter-spacing: 0.8px;
}

.bop-software-copy h1 {
    max-width: 700px;

    margin: 0 0 18px;

    color: var(--bop-black);

    font-size: clamp(40px, 4vw, 53px);
    line-height: 1.06;

    font-weight: 720;

    letter-spacing: -1.6px;
}

.bop-software-copy h1 span {
    color: var(--bop-purple);
}

.bop-software-intro {
    max-width: 650px;

    margin: 0;

    color: var(--bop-muted);

    font-size: 15.5px;
    line-height: 1.7;
}


/* ==================================================
   RESEARCH PANEL
================================================== */

.bop-research-panel {
    position: relative;

    padding: 20px;

    background: rgba(255,255,255,.88);

    border: 1px solid #e7dff0;
    border-radius: 15px;

    box-shadow:
        0 12px 34px rgba(42,25,62,.055);

    backdrop-filter: blur(10px);
}

.bop-research-label {
    margin: 0 0 15px;

    color: var(--bop-purple);

    font-size: 10.5px;
    font-weight: 800;

    letter-spacing: .7px;
}

.bop-research-row {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding: 10px 0;

    border-top: 1px solid #eee8f3;
}

.bop-research-row span {
    color: #47414d;

    font-size: 12.5px;
    font-weight: 550;
}

.bop-research-row strong {
    color: var(--bop-purple);

    font-size: 13px;
    font-weight: 750;
}


/* ==================================================
   DIRECTORY HEADING
================================================== */

.bop-directory-heading {
    display: flex;

    align-items: center;

    gap: 13px;

    margin-bottom: 22px;
}

.bop-directory-icon {
    width: 38px;
    height: 38px;

    padding: 9px;

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 3px;

    background: #f2edfb;

    border: 1px solid #e8dff3;
    border-radius: 10px;
}

.bop-directory-icon span {
    border: 1.5px solid var(--bop-purple);

    border-radius: 2px;
}

.bop-directory-heading p {
    margin: 0 0 1px;

    color: var(--bop-purple);

    font-size: 9px;
    font-weight: 800;

    letter-spacing: .7px;
}

.bop-directory-heading h2 {
    margin: 0;

    color: var(--bop-black);

    font-size: 24px;
    line-height: 1.2;

    font-weight: 700;
}


/* ==================================================
   DIRECTORY GRID
================================================== */

.bop-directory-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 16px;
}


/* ==================================================
   DIRECTORY CARD
================================================== */

.bop-directory-card {
    position: relative;

    min-height: 184px;

    padding: 20px;

    display: grid;

    grid-template-columns:
        50px 1fr;

    gap: 15px;

    background:
        rgba(255,255,255,.94);

    border: 1px solid #e4dced;
    border-top: 2px solid var(--bop-purple);

    border-radius: 13px;

    box-shadow:
        0 7px 22px rgba(42,25,62,.035);

    overflow: hidden;

    transition:
        transform .18s ease,
        box-shadow .18s ease,
        border-color .18s ease;
}

.bop-directory-card:hover {
    transform: translateY(-4px);

    border-color: #cdbce2;

    box-shadow:
        0 18px 38px rgba(40,25,62,.09);
}


/* Second row tiny offset */

.bop-directory-card--offset {
    transform: translateY(10px);
}

.bop-directory-card--offset:hover {
    transform: translateY(6px);
}


/* Number */

.bop-card-number {
    position: absolute;

    right: 12px;
    top: 8px;

    color: rgba(109,54,232,.065);

    font-size: 52px;
    line-height: 1;

    font-weight: 800;

    pointer-events: none;
}


/* top-right mark */

.bop-card-corner {
    position: absolute;

    top: 10px;
    right: 10px;

    color: var(--bop-purple);

    font-size: 17px;

    opacity: .7;
}


/* subtle technical corner */

.bop-directory-card::after {
    content: "";

    position: absolute;

    right: -3px;
    bottom: -3px;

    width: 48px;
    height: 48px;

    opacity: .18;

    background-image:
        linear-gradient(
            rgba(109,54,232,.5) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(109,54,232,.5) 1px,
            transparent 1px
        );

    background-size: 7px 7px;
}


/* ==================================================
   ICON
================================================== */

.bop-directory-card-icon {
    width: 46px;
    height: 46px;

    display: grid;

    place-items: center;

    color: var(--bop-purple);

    background: #f3effb;

    border: 1px solid #e9e1f4;
    border-radius: 12px;
}

.bop-directory-card-icon svg {
    width: 23px;
    height: 23px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   CARD COPY
================================================== */

.bop-directory-card-content {
    position: relative;

    z-index: 2;

    padding-top: 2px;
}

.bop-card-label {
    margin: 0 0 3px;

    color: #8c8296;

    font-size: 9px;
    font-weight: 800;

    letter-spacing: .7px;
}

.bop-directory-card h3 {
    margin: 0 0 8px;

    color: var(--bop-black);

    font-size: 17px;
    line-height: 1.3;

    font-weight: 730;
}

.bop-card-tags {
    margin: 0 0 13px;

    color: var(--bop-muted);

    font-size: 12.5px;
    line-height: 1.6;
}

.bop-card-tags i {
    margin: 0 4px;

    color: var(--bop-purple);

    font-style: normal;
}

.bop-directory-card a {
    color: var(--bop-purple);

    font-size: 12.5px;
    font-weight: 700;

    text-decoration: none;
}

.bop-directory-card a:hover {
    color: var(--bop-purple-dark);
}


/* ==================================================
   COMING SOON
================================================== */

.bop-directory-card--coming {
    border: 1px dashed #bba8d7;

    background:
        rgba(249,247,252,.72);

    box-shadow: none;
}

.bop-directory-card--coming::after {
    display: none;
}

.bop-directory-card--coming:hover {
    transform: none;

    box-shadow: none;

    border-color: #a98fcc;
}

.bop-coming-plus {
    width: 46px;
    height: 46px;

    display: grid;

    place-items: center;

    color: var(--bop-purple);

    background: #f1ecf8;

    border-radius: 50%;

    font-size: 25px;
    font-weight: 300;
}


/* ==================================================
   PROCESS RAIL
================================================== */

.bop-process-rail {
    margin-top: 32px;

    min-height: 70px;

    padding: 15px 22px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    background:
        rgba(255,255,255,.78);

    border: 1px solid #e7dff0;

    border-radius: 14px;

    box-shadow:
        0 8px 28px rgba(40,25,62,.035);
}

.bop-process-step {
    display: flex;

    align-items: center;

    gap: 10px;
}

.bop-process-step span {
    color: var(--bop-purple);

    font-size: 12px;
    font-weight: 800;
}

.bop-process-step strong {
    color: #302b35;

    font-size: 12.5px;
    font-weight: 650;
}

.bop-process-line {
    flex: 1;

    max-width: 80px;

    height: 1px;

    background: #ddd2e9;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .bop-software-shell {
        width: min(
            calc(100% - 36px),
            760px
        );
    }

    .bop-software-hero {
        grid-template-columns: 1fr;

        gap: 26px;
    }

    .bop-research-panel {
        max-width: 370px;
    }

    .bop-directory-grid {
        grid-template-columns:
            repeat(2, minmax(0,1fr));
    }

    .bop-directory-card--offset {
        transform: none;
    }

    .bop-directory-card--offset:hover {
        transform: translateY(-4px);
    }
}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 600px) {

    .bop-software-page::before,
    .bop-software-page::after {
        display: none;
    }

    .bop-software-shell {
        width: calc(100% - 28px);

        padding-top: 42px;
    }

    .bop-software-copy h1 {
        font-size: 36px;

        letter-spacing: -1px;
    }

    .bop-software-intro {
        font-size: 14.5px;
    }

    .bop-directory-grid {
        grid-template-columns: 1fr;

        gap: 13px;
    }

    .bop-directory-card {
        min-height: 178px;
    }

    .bop-process-rail {
        flex-direction: column;

        align-items: flex-start;

        gap: 12px;
    }

    .bop-process-line {
        width: 100%;
        max-width: none;
    }
}
/* all your current Home CSS */

/* all your current Software CSS */

/* existing tablet/mobile CSS */


/* ==================================================
   FINAL MOBILE POLISH
================================================== */

@media (max-width: 600px) {

    /* paste the new mobile code here */

}
@media (max-width: 600px) {

    .inside-header {
        padding-top: 7px;
        padding-bottom: 7px;
    }

    .bop-trust {
        margin-bottom: -6px;
    }
}
@media (max-width: 600px) {

    .bop-process-rail {
        margin-top: 24px;
        padding: 14px 18px;
        gap: 8px;
    }

    .bop-process-step {
        gap: 8px;
    }

    .bop-process-step strong {
        font-size: 12px;
    }

    .bop-process-line {
        display: none;
    }
}
/* ==================================================
   COMPARISONS PAGE
================================================== */

.bop-comparisons-page {
    position: relative;

    overflow: hidden;

    padding-bottom: 82px;

    background:
        radial-gradient(
            circle at 88% 15%,
            rgba(122, 73, 225, .12),
            transparent 27%
        ),
        radial-gradient(
            circle at 9% 72%,
            rgba(149, 104, 230, .06),
            transparent 23%
        ),
        linear-gradient(
            135deg,
            #ffffff 0%,
            #fcfbff 50%,
            #f7f3ff 100%
        );
}


/* decorative network */

.bop-comparisons-page::before {
    content: "";

    position: absolute;

    top: 80px;
    right: -90px;

    width: 560px;
    height: 430px;

    opacity: .34;

    pointer-events: none;

    background-image:
        radial-gradient(
            circle at 20% 20%,
            rgba(109,54,232,.38) 0 3px,
            transparent 4px
        ),
        radial-gradient(
            circle at 55% 42%,
            rgba(109,54,232,.28) 0 3px,
            transparent 4px
        ),
        radial-gradient(
            circle at 83% 22%,
            rgba(109,54,232,.35) 0 3px,
            transparent 4px
        ),
        radial-gradient(
            circle at 72% 73%,
            rgba(109,54,232,.25) 0 3px,
            transparent 4px
        );

    background-size: 100% 100%;
}


/* subtle dots */

.bop-comparisons-page::after {
    content: "";

    position: absolute;

    left: 24px;
    top: 470px;

    width: 90px;
    height: 105px;

    opacity: .35;

    background-image:
        radial-gradient(
            circle,
            rgba(109,54,232,.26) 1.4px,
            transparent 1.7px
        );

    background-size: 14px 14px;
}


/* ==================================================
   SHELL
================================================== */

.bop-comparisons-shell {
    position: relative;
    z-index: 2;

    width: min(
        calc(100% - 44px),
        1180px
    );

    margin: 0 auto;

    padding-top: 64px;
}


/* ==================================================
   HERO
================================================== */

.bop-comparisons-hero {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        410px;

    align-items: center;

    gap: 75px;

    margin-bottom: 55px;
}

.bop-comparisons-eyebrow {
    width: fit-content;

    margin: 0 0 18px;

    padding-bottom: 8px;

    color: var(--bop-purple);

    border-bottom:
        2px solid var(--bop-purple);

    font-size: 12px;
    line-height: 1;

    font-weight: 800;

    letter-spacing: .8px;
}

.bop-comparisons-copy h1 {
    margin: 0 0 18px;

    color: var(--bop-black);

    font-size: clamp(42px, 4vw, 54px);

    line-height: 1.05;

    font-weight: 720;

    letter-spacing: -1.7px;
}

.bop-comparisons-copy h1 span {
    color: var(--bop-purple);
}

.bop-comparisons-intro {
    max-width: 610px;

    margin: 0 0 18px;

    color: var(--bop-muted);

    font-size: 15.5px;

    line-height: 1.7;
}

.bop-hero-text-link {
    color: var(--bop-purple);

    font-size: 13px;

    font-weight: 700;

    text-decoration: none;
}

.bop-hero-text-link:hover {
    color: var(--bop-purple-dark);
}


/* ==================================================
   HERO MATCH VISUAL
================================================== */

.bop-match-visual {
    position: relative;

    min-height: 245px;

    display: grid;

    grid-template-columns:
        1fr 70px 1fr;

    align-items: center;

    padding: 30px 22px 50px;

    background:
        rgba(255,255,255,.72);

    border: 1px solid #e8e0f1;

    border-radius: 18px;

    box-shadow:
        0 16px 40px rgba(41,25,63,.055);

    backdrop-filter: blur(10px);
}

.bop-match-tool {
    text-align: center;
}

.bop-match-tool strong {
    display: block;

    margin-top: 8px;

    color: #242028;

    font-size: 12px;

    line-height: 1.3;
}

.bop-match-logo {
    width: 62px;
    height: 62px;

    margin: 0 auto;

    display: grid;

    place-items: center;

    color: white;

    background:
        linear-gradient(
            135deg,
            #316f9e,
            #194968
        );

    border-radius: 13px;

    box-shadow:
        0 8px 20px rgba(32,76,108,.18);

    font-size: 28px;

    font-weight: 800;
}

.bop-match-logo--alt {
    background:
        linear-gradient(
            135deg,
            #6139d9,
            #8b64ef
        );

    box-shadow:
        0 8px 20px rgba(99,57,217,.18);
}

.bop-match-center {
    display: flex;

    flex-direction: column;

    align-items: center;

    gap: 8px;
}

.bop-match-line {
    width: 1px;
    height: 33px;

    background:
        linear-gradient(
            to bottom,
            transparent,
            #a789dd,
            transparent
        );
}

.bop-vs-badge {
    width: 48px;
    height: 48px;

    display: grid;

    place-items: center;

    color: var(--bop-purple);

    background: #f5f0fc;

    border:
        1px solid #ded1ee;

    border-radius: 50%;

    box-shadow:
        0 7px 18px rgba(64,38,90,.07);

    font-size: 12px;

    font-weight: 800;
}

.bop-match-caption {
    position: absolute;

    bottom: 17px;
    left: 50%;

    transform: translateX(-50%);

    width: max-content;

    color: #8e8299;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: .7px;
}


/* ==================================================
   SECTION HEADING
================================================== */

.bop-comparison-heading {
    display: flex;

    align-items: center;

    gap: 13px;

    margin-bottom: 22px;
}

.bop-comparison-heading-icon {
    width: 38px;
    height: 38px;

    position: relative;

    background: #f3eefb;

    border: 1px solid #e7def2;

    border-radius: 10px;
}

.bop-comparison-heading-icon::before {
    content: "VS";

    position: absolute;

    inset: 0;

    display: grid;

    place-items: center;

    color: var(--bop-purple);

    font-size: 9px;

    font-weight: 800;
}

.bop-comparison-heading-icon span {
    position: absolute;

    top: 50%;

    width: 7px;
    height: 1px;

    background: #a98ee0;
}

.bop-comparison-heading-icon span:first-child {
    left: 4px;
}

.bop-comparison-heading-icon span:last-child {
    right: 4px;
}

.bop-comparison-heading p {
    margin: 0 0 1px;

    color: var(--bop-purple);

    font-size: 9px;

    font-weight: 800;

    letter-spacing: .7px;
}

.bop-comparison-heading h2 {
    margin: 0;

    color: var(--bop-black);

    font-size: 24px;

    line-height: 1.2;

    font-weight: 700;
}


/* ==================================================
   GRID
================================================== */

.bop-comparison-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 16px;
}


/* ==================================================
   COMPARISON CARD
================================================== */

.bop-comparison-card {
    position: relative;

    min-height: 280px;

    padding: 20px;

    display: flex;

    flex-direction: column;

    background:
        rgba(255,255,255,.94);

    border:
        1px solid #e5ddee;

    border-top:
        2px solid var(--bop-purple);

    border-radius: 14px;

    box-shadow:
        0 7px 24px rgba(42,25,62,.04);

    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.bop-comparison-card:hover {
    transform: translateY(-4px);

    border-color: #cdbce2;

    box-shadow:
        0 18px 38px rgba(40,25,62,.09);
}


/* ==================================================
   META
================================================== */

.bop-comparison-meta {
    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 22px;
}

.bop-comparison-meta span {
    color: var(--bop-purple);

    font-size: 9px;

    font-weight: 800;

    letter-spacing: .8px;
}

.bop-comparison-meta strong {
    color: rgba(109,54,232,.22);

    font-size: 20px;

    font-weight: 800;
}


/* ==================================================
   VS ROW
================================================== */

.bop-versus-row {
    display: grid;

    grid-template-columns:
        1fr 54px 1fr;

    align-items: center;

    gap: 10px;

    margin-bottom: 19px;
}

.bop-tool {
    text-align: center;
}

.bop-tool-avatar {
    width: 48px;
    height: 48px;

    margin: 0 auto 8px;

    display: grid;

    place-items: center;

    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            #3179a7,
            #18506f
        );

    border-radius: 11px;

    box-shadow:
        0 7px 17px rgba(35,91,126,.15);

    font-size: 21px;

    font-weight: 800;
}

.bop-tool-avatar--hcp {
    background:
        linear-gradient(
            135deg,
            #6057df,
            #8069eb
        );
}

.bop-tool-avatar--workiz {
    background:
        linear-gradient(
            135deg,
            #292b36,
            #111218
        );
}

.bop-tool-avatar--zen {
    background:
        linear-gradient(
            135deg,
            #723ae0,
            #9a69ef
        );
}

.bop-tool strong {
    display: block;

    color: #27232b;

    font-size: 12.5px;

    line-height: 1.3;

    font-weight: 700;
}

.bop-versus-node {
    width: 42px;
    height: 42px;

    margin: 0 auto;

    display: grid;

    place-items: center;

    color: var(--bop-purple);

    background: #f4effb;

    border: 1px solid #e0d4ef;

    border-radius: 50%;

    font-size: 10px;

    font-weight: 800;
}


/* ==================================================
   CARD BOTTOM
================================================== */

.bop-comparison-divider {
    width: 100%;
    height: 1px;

    margin-bottom: 13px;

    background:
        linear-gradient(
            90deg,
            transparent,
            #dfd4e9 10%,
            #dfd4e9 90%,
            transparent
        );
}

.bop-quick-take {
    margin:
        0 0 15px;

    color: var(--bop-muted);

    font-size: 12.5px;

    line-height: 1.6;
}

.bop-comparison-card > a {
    margin-top: auto;

    color: var(--bop-purple);

    font-size: 12.5px;

    line-height: 1.4;

    font-weight: 700;

    text-decoration: none;
}

.bop-comparison-card > a:hover {
    color: var(--bop-purple-dark);
}


/* ==================================================
   WHAT WE COMPARE
================================================== */

.bop-criteria {
    margin-top: 30px;

    padding: 17px 20px;

    display: grid;

    grid-template-columns:
        220px 1fr;

    align-items: center;

    gap: 25px;

    background:
        rgba(255,255,255,.80);

    border: 1px solid #e6deef;

    border-radius: 14px;

    box-shadow:
        0 8px 26px rgba(40,25,62,.035);
}

.bop-criteria-title {
    display: flex;

    align-items: center;

    gap: 11px;
}

.bop-criteria-icon {
    width: 38px;
    height: 38px;

    display: grid;

    place-items: center;

    color: var(--bop-purple);

    background: #f2edfb;

    border-radius: 10px;

    font-size: 18px;
}

.bop-criteria-title p {
    margin: 0 0 1px;

    color: var(--bop-purple);

    font-size: 8.5px;

    font-weight: 800;

    letter-spacing: .7px;
}

.bop-criteria-title h2 {
    margin: 0;

    color: #252129;

    font-size: 15px;

    font-weight: 700;
}

.bop-criteria-list {
    display: flex;

    align-items: center;

    justify-content: flex-end;

    flex-wrap: wrap;

    gap: 8px;
}

.bop-criteria-list span {
    padding: 7px 11px;

    color: #5c5662;

    background: #faf8fc;

    border: 1px solid #e8e1ef;

    border-radius: 7px;

    font-size: 10.5px;

    font-weight: 600;
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .bop-comparisons-shell {
        width: min(
            calc(100% - 36px),
            760px
        );
    }

    .bop-comparisons-hero {
        grid-template-columns: 1fr;

        gap: 28px;
    }

    .bop-match-visual {
        max-width: 440px;
    }

    .bop-comparison-grid {
        grid-template-columns: 1fr;
    }

}


/* ==================================================
   MOBILE
================================================== */

@media (max-width: 600px) {

    .bop-comparisons-page::before,
    .bop-comparisons-page::after {
        display: none;
    }

    .bop-comparisons-shell {
        width: calc(100% - 28px);

        padding-top: 34px;
    }

    .bop-comparisons-hero {
        margin-bottom: 35px;
    }

    .bop-comparisons-copy h1 {
        font-size: 34px;

        line-height: 1.08;

        letter-spacing: -1px;
    }

    .bop-comparisons-intro {
        font-size: 14px;

        line-height: 1.65;
    }


    /* visual */

    .bop-match-visual {
        min-height: 210px;

        padding: 24px 14px 44px;

        grid-template-columns:
            1fr 50px 1fr;
    }

    .bop-match-logo {
        width: 50px;
        height: 50px;

        font-size: 21px;
    }

    .bop-match-tool strong {
        font-size: 11px;
    }

    .bop-vs-badge {
        width: 38px;
        height: 38px;

        font-size: 9px;
    }


    /* cards */

    .bop-comparison-card {
        min-height: 245px;

        padding: 17px;
    }

    .bop-comparison-meta {
        margin-bottom: 17px;
    }

    .bop-versus-row {
        margin-bottom: 15px;
    }

    .bop-tool-avatar {
        width: 44px;
        height: 44px;

        font-size: 19px;
    }

    .bop-quick-take {
        font-size: 12px;
    }


    /* criteria */

    .bop-criteria {
        grid-template-columns: 1fr;

        gap: 15px;

        padding: 16px;
    }

    .bop-criteria-list {
        justify-content: flex-start;
    }

}
/* ==================================================
   COMPARISONS — FINAL MOBILE POLISH
================================================== */

@media (max-width: 600px) {

    /* Slightly shorter comparison cards */
    .bop-comparison-card {
        min-height: 225px;
    }

    /* Bigger industry labels */
    .bop-comparison-meta span {
        font-size: 10.5px;
        letter-spacing: 0.6px;
    }

    /* Slightly tighter bottom section */
    .bop-criteria {
        margin-top: 24px;
    }
}
/* Bigger industry labels on Comparisons cards */
.bop-comparison-meta span {
    font-size: 10.5px;
    letter-spacing: 0.6px;
}
/* ==========================================================
   BIZOPSPICK — GUIDES / FIELD MANUAL
========================================================== */

.bop-guides-page {
    position: relative;
    overflow: hidden;
    padding-bottom: 80px;
    background:
        radial-gradient(circle at 84% 12%, rgba(109,54,232,.10), transparent 27%),
        radial-gradient(circle at 9% 72%, rgba(109,54,232,.055), transparent 25%),
        linear-gradient(135deg, #ffffff 0%, #fbf9ff 52%, #f7f3ff 100%);
}

.bop-guides-page::before {
    content: "";
    position: absolute;
    left: 23px;
    top: 125px;
    width: 4px;
    height: 305px;
    border-radius: 20px;
    background: var(--bop-purple);
    opacity: .9;
}

.bop-guides-page::after {
    content: "";
    position: absolute;
    right: 26px;
    top: 145px;
    width: 95px;
    height: 110px;
    opacity: .32;
    background-image:
        radial-gradient(circle, rgba(109,54,232,.28) 1.3px, transparent 1.6px);
    background-size: 14px 14px;
}


/* ==========================================================
   MAIN SHELL
========================================================== */

.bop-guides-shell {
    position: relative;
    z-index: 2;
    width: min(calc(100% - 44px), 1180px);
    margin: 0 auto;
    padding-top: 62px;
}


/* ==========================================================
   HERO
========================================================== */

.bop-guides-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 80px;
    align-items: center;
    margin-bottom: 50px;
}

.bop-guides-copy {
    max-width: 700px;
}

.bop-guides-eyebrow {
    width: fit-content;
    margin: 0 0 20px;
    padding-bottom: 8px;
    color: var(--bop-purple);
    border-bottom: 2px solid var(--bop-purple);
    font-size: 11px;
    line-height: 1;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.bop-guides-copy h1 {
    max-width: 700px;
    margin: 0 0 18px;
    color: var(--bop-black);
    font-size: clamp(42px, 4vw, 55px);
    line-height: 1.05;
    font-weight: 720;
    letter-spacing: -1.8px;
}

.bop-guides-copy h1 span {
    color: var(--bop-purple);
}

.bop-guides-intro {
    max-width: 620px;
    margin: 0 0 22px;
    color: var(--bop-muted);
    font-size: 15px;
    line-height: 1.72;
}

.bop-guides-topics {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
}

.bop-guides-topics span {
    color: #716778;
    font-size: 8.5px;
    font-weight: 800;
    letter-spacing: .75px;
}

.bop-guides-topics i {
    color: var(--bop-purple);
    font-size: 10px;
    font-style: normal;
}


/* ==========================================================
   CURRENT EDITION
========================================================== */

.bop-edition-panel {
    padding: 20px 22px;
    background: rgba(255,255,255,.74);
    border: 1px solid #e4dced;
    border-radius: 16px;
    box-shadow: 0 16px 40px rgba(42,25,65,.05);
    backdrop-filter: blur(10px);
}

.bop-edition-label {
    margin: 0 0 8px;
    color: var(--bop-purple);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .9px;
}

.bop-edition-row {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 12px;
    align-items: center;
    padding: 14px 0;
    border-bottom: 1px solid #eee8f4;
}

.bop-edition-row:last-child {
    border-bottom: 0;
}

.bop-edition-icon {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    color: var(--bop-purple);
    background: #f4effb;
    border-radius: 9px;
}

.bop-edition-icon svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.bop-edition-row strong {
    display: block;
    margin-bottom: 2px;
    color: #2c2730;
    font-size: 12.5px;
    font-weight: 700;
}

.bop-edition-row span {
    display: block;
    color: #89808f;
    font-size: 10.5px;
}


/* ==========================================================
   FEATURED GUIDE
========================================================== */

.bop-featured-guide {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) .9fr;
    align-items: center;
    gap: 45px;
    min-height: 365px;
    margin-bottom: 38px;
    padding: 36px 44px;
    overflow: hidden;
    background:
        linear-gradient(120deg, #ffffff 0%, #ffffff 60%, #faf7ff 100%);
    border: 1px solid #e6deef;
    border-radius: 18px;
    box-shadow: 0 14px 38px rgba(41,25,64,.055);
}

.bop-featured-guide::before {
    content: "FIELD NOTE";
    position: absolute;
    right: -31px;
    top: 46%;
    transform: rotate(90deg);
    color: var(--bop-purple);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 1.2px;
}

.bop-featured-label {
    margin: 0 0 16px;
    color: var(--bop-purple);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .9px;
}

.bop-featured-number {
    margin-bottom: -7px;
    color: rgba(109,54,232,.16);
    font-size: 42px;
    line-height: 1;
    font-weight: 800;
}

.bop-featured-copy h2 {
    max-width: 520px;
    margin: 0 0 15px;
    color: var(--bop-black);
    font-size: 31px;
    line-height: 1.12;
    font-weight: 720;
    letter-spacing: -.8px;
}

.bop-featured-copy > p:not(.bop-featured-label) {
    max-width: 540px;
    margin: 0 0 18px;
    color: var(--bop-muted);
    font-size: 13.5px;
    line-height: 1.65;
}

.bop-guide-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
}

.bop-guide-meta span {
    padding: 6px 9px;
    color: var(--bop-purple);
    background: #f7f3fc;
    border: 1px solid #e8dff1;
    border-radius: 7px;
    font-size: 8.5px;
    font-weight: 800;
    letter-spacing: .45px;
}

.bop-guide-link {
    color: var(--bop-purple);
    font-size: 12.5px;
    font-weight: 700;
    text-decoration: none;
}

.bop-guide-link:hover {
    color: var(--bop-purple-dark);
}


/* ==========================================================
   DOCUMENT ART
========================================================== */

.bop-guide-documents {
    position: relative;
    min-height: 250px;
}

.bop-document {
    position: absolute;
    width: 185px;
    height: 235px;
    background: #fbf9ff;
    border: 1px solid #e4d9ef;
    border-radius: 11px;
    box-shadow: 0 16px 30px rgba(68,42,94,.07);
}

.bop-document--back {
    left: 35px;
    top: 15px;
    transform: rotate(-7deg);
    padding: 20px;
    color: rgba(109,54,232,.27);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .8px;
}

.bop-document--front {
    left: 115px;
    top: 0;
    transform: rotate(7deg);
    padding: 25px;
    background:
        linear-gradient(145deg, #fff, #f7f1ff);
}

.bop-document-number {
    display: block;
    color: rgba(109,54,232,.20);
    font-size: 46px;
    font-weight: 800;
    line-height: 1;
}

.bop-document-line {
    width: 30px;
    height: 2px;
    margin: 14px 0;
    background: var(--bop-purple);
}

.bop-document strong {
    color: var(--bop-purple);
    font-size: 9px;
    letter-spacing: 1px;
}

.bop-document-dots {
    position: absolute;
    top: 35px;
    right: 22px;
    width: 48px;
    height: 72px;
    opacity: .4;
    background-image:
        radial-gradient(circle, rgba(109,54,232,.32) 1px, transparent 1.4px);
    background-size: 9px 9px;
}

.bop-document-mark {
    position: absolute;
    right: 21px;
    bottom: 20px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    color: rgba(109,54,232,.34);
    border: 1px solid rgba(109,54,232,.18);
    border-radius: 50%;
    font-size: 8px;
    font-weight: 800;
}


/* ==========================================================
   MANUAL HEADING
========================================================== */

.bop-manual-heading {
    display: grid;
    grid-template-columns: 10px auto 1fr;
    gap: 12px;
    align-items: center;
    margin: 0 0 20px;
}

.bop-manual-dot {
    width: 8px;
    height: 8px;
    background: var(--bop-purple);
    border-radius: 50%;
    box-shadow: 0 0 0 4px #eee6fb;
}

.bop-manual-heading p {
    margin: 0;
    color: var(--bop-purple);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .9px;
}

.bop-manual-heading > span {
    height: 1px;
    background: linear-gradient(90deg, #d9ccec, transparent);
}


/* ==========================================================
   GUIDE GRID
========================================================== */

.bop-guide-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.bop-guide-card {
    position: relative;
    min-height: 255px;
    display: flex;
    flex-direction: column;
    padding: 20px;
    background: rgba(255,255,255,.94);
    border: 1px solid #e5ddee;
    border-radius: 14px;
    box-shadow: 0 7px 24px rgba(42,25,62,.035);
    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease;
}

.bop-guide-card:hover {
    transform: translateY(-4px);
    border-color: #cdbce2;
    box-shadow: 0 18px 36px rgba(40,25,62,.075);
}

.bop-guide-card-top {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 22px;
}

.bop-guide-card-top strong {
    color: rgba(109,54,232,.25);
    font-size: 27px;
    line-height: 1;
    font-weight: 800;
}

.bop-guide-card-top span {
    color: var(--bop-purple);
    font-size: 8.5px;
    font-weight: 800;
    letter-spacing: .6px;
}

.bop-guide-card h2 {
    margin: 0 0 12px;
    color: #18151b;
    font-size: 17px;
    line-height: 1.32;
    font-weight: 700;
    letter-spacing: -.25px;
}

.bop-guide-card > p {
    margin: 0 0 20px;
    color: var(--bop-muted);
    font-size: 12px;
    line-height: 1.6;
}

.bop-guide-card-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid #eee8f2;
}

.bop-guide-card-bottom > span {
    color: #8c8294;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .6px;
}

.bop-guide-card-bottom a {
    color: var(--bop-purple);
    font-size: 10.5px;
    font-weight: 700;
    text-decoration: none;
}

.bop-guide-card-bottom a:hover {
    color: var(--bop-purple-dark);
}


/* coming soon */

.bop-guide-card--coming {
    background:
        repeating-linear-gradient(
            -45deg,
            rgba(250,248,252,.92),
            rgba(250,248,252,.92) 10px,
            rgba(247,243,251,.92) 10px,
            rgba(247,243,251,.92) 20px
        );
    border-style: dashed;
}

.bop-guide-card--coming:hover {
    transform: none;
    box-shadow: 0 7px 24px rgba(42,25,62,.035);
}


/* ==========================================================
   FIELD INDEX
========================================================== */

.bop-field-index {
    display: grid;
    grid-template-columns: 220px 1fr;
    align-items: center;
    gap: 35px;
    margin-top: 30px;
    padding: 19px 22px;
    background: rgba(255,255,255,.84);
    border: 1px solid #e4dced;
    border-radius: 14px;
    box-shadow: 0 8px 26px rgba(40,25,62,.035);
}

.bop-field-index-title {
    display: flex;
    align-items: center;
    gap: 11px;
}

.bop-index-icon {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    color: var(--bop-purple);
    background: #f3eefb;
    border-radius: 9px;
}

.bop-index-icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.bop-field-index-title p {
    margin: 0 0 1px;
    color: var(--bop-purple);
    font-size: 8.5px;
    font-weight: 800;
    letter-spacing: .7px;
}

.bop-field-index-title strong {
    color: #272329;
    font-size: 13px;
}

.bop-index-items {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
}

.bop-index-items > div {
    min-height: 46px;
    padding: 0 13px;
    border-left: 1px solid #e7dfee;
}

.bop-index-items strong {
    display: block;
    margin-bottom: 5px;
    color: var(--bop-purple);
    font-size: 11px;
}

.bop-index-items span {
    color: #3e3942;
    font-size: 9.5px;
    line-height: 1.35;
    font-weight: 600;
}


/* ==========================================================
   TABLET
========================================================== */

@media (max-width: 900px) {

    .bop-guides-shell {
        width: min(calc(100% - 36px), 760px);
    }

    .bop-guides-hero {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .bop-edition-panel {
        max-width: 480px;
    }

    .bop-featured-guide {
        grid-template-columns: 1fr .75fr;
        padding: 30px;
    }

    .bop-document--front {
        left: 65px;
    }

    .bop-document--back {
        left: 0;
    }

    .bop-guide-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bop-field-index {
        grid-template-columns: 1fr;
        gap: 18px;
    }

}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 600px) {

    .bop-guides-page::before,
    .bop-guides-page::after {
        display: none;
    }

    .bop-guides-shell {
        width: calc(100% - 28px);
        padding-top: 34px;
    }


    /* hero */

    .bop-guides-hero {
        margin-bottom: 30px;
    }

    .bop-guides-copy h1 {
        font-size: 34px;
        line-height: 1.08;
        letter-spacing: -1px;
    }

    .bop-guides-intro {
        font-size: 14px;
    }

    .bop-guides-topics {
        gap: 7px;
    }

    .bop-guides-topics span {
        font-size: 7.5px;
    }


    /* edition */

    .bop-edition-panel {
        padding: 16px;
    }

    .bop-edition-row {
        padding: 11px 0;
    }


    /* featured */

    .bop-featured-guide {
        display: block;
        min-height: 0;
        padding: 22px 20px;
    }

    .bop-featured-copy h2 {
        font-size: 25px;
    }

    .bop-guide-documents {
        height: 225px;
        min-height: 225px;
        margin-top: 22px;
    }

    .bop-document {
        width: 145px;
        height: 190px;
    }

    .bop-document--back {
        left: 20%;
    }

    .bop-document--front {
        left: 42%;
    }

    .bop-document-number {
        font-size: 36px;
    }


    /* guide cards */

    .bop-guide-grid {
        grid-template-columns: 1fr;
    }

    .bop-guide-card {
        min-height: 220px;
        padding: 17px;
    }

    .bop-guide-card-top {
        margin-bottom: 17px;
    }

    .bop-guide-card-top strong {
        font-size: 24px;
    }

    .bop-guide-card-top span {
        font-size: 9.5px;
    }

    .bop-guide-card h2 {
        font-size: 17px;
    }


    /* index */

    .bop-field-index {
        padding: 16px;
    }

    .bop-index-items {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px 0;
    }

}
/* ==================================================
   GUIDES — FINAL MOBILE POLISH
================================================== */

@media (max-width: 600px) {

    /* Hide clipped vertical label */
    .bop-featured-guide::before {
        display: none;
    }

    /* Cleaner Field Index labels */
    .bop-index-items br {
        display: none;
    }

    .bop-index-items span {
        line-height: 1.45;
    }

    /* Slightly tighten document artwork */
    .bop-guide-documents {
        height: 210px;
        min-height: 210px;
    }
}
/* =========================================================
   BIZOPSPICK ABOUT PAGE
========================================================= */

.bop-about-page {
    --about-ink: #17131f;
    --about-text: #625d6b;
    --about-purple: #6f38ee;
    --about-purple-dark: #4d1eb8;
    --about-lavender: #f2edff;
    --about-line: #ded6eb;
    --about-shell: 1300px;

    width: 100%;
    overflow: hidden;
    background: #fbfaff;
    color: var(--about-ink);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    line-height: 1.65;
}

.bop-about-page,
.bop-about-page *,
.bop-about-page *::before,
.bop-about-page *::after {
    box-sizing: border-box;
}

.bop-about-page h1,
.bop-about-page h2,
.bop-about-page h3,
.bop-about-page p,
.bop-about-page blockquote,
.bop-about-page figure {
    margin-top: 0;
}

.bop-about-page h1,
.bop-about-page h2,
.bop-about-page h3 {
    color: var(--about-ink);
    line-height: 1.08;
    letter-spacing: -0.04em;
}

.bop-about-page h1 {
    max-width: 850px;
    margin-bottom: 28px;
    font-size: clamp(4rem, 6.5vw, 7rem);
    font-weight: 780;
}

.bop-about-page h2 {
    margin-bottom: 22px;
    font-size: clamp(2.7rem, 4.5vw, 4.7rem);
    font-weight: 760;
}

.bop-about-page h3 {
    margin-bottom: 10px;
    font-size: 1.3rem;
    font-weight: 750;
}

.bop-about-page p {
    color: var(--about-text);
}

.bop-about-page a {
    text-decoration: none;
}

.bop-about-page a:focus-visible {
    outline: 3px solid #d8c7ff;
    outline-offset: 4px;
}

.bop-about-shell {
    width: min(calc(100% - 48px), var(--about-shell));
    margin-right: auto;
    margin-left: auto;
}

.bop-about-eyebrow {
    margin-bottom: 20px !important;
    color: var(--about-purple) !important;
    font-size: 0.78rem !important;
    font-weight: 850 !important;
    letter-spacing: 0.17em !important;
    text-transform: uppercase;
}

/* Hero */

.bop-about-hero {
    position: relative;
    padding: 125px 0 115px;
    background:
        radial-gradient(
            circle at 84% 25%,
            rgba(208, 190, 255, 0.58),
            rgba(208, 190, 255, 0) 31%
        ),
        linear-gradient(135deg, #f8f5ff 0%, #fff 56%, #eee7ff 100%);
}

.bop-about-hero::after {
    position: absolute;
    right: -120px;
    bottom: -190px;
    width: 480px;
    height: 480px;
    border: 1px solid rgba(111, 56, 238, 0.15);
    border-radius: 50%;
    content: "";
}

.bop-about-hero-layout {
    position: relative;
    z-index: 1;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 280px !important;
    gap: 90px;
    align-items: center;
}

.bop-about-hero-copy {
    min-width: 0;
}

.bop-about-hero-intro {
    max-width: 760px;
    margin-bottom: 34px !important;
    font-size: clamp(1.2rem, 1.8vw, 1.5rem);
}

.bop-about-jump-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--about-purple-dark) !important;
    font-weight: 800;
}

/* Seal */

.bop-research-seal {
    position: relative;
    display: flex !important;
    width: 270px !important;
    height: 270px !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(111, 56, 238, 0.25);
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.82);
    box-shadow: 0 28px 65px rgba(68, 40, 124, 0.16);
    text-align: center;
}

.bop-research-seal::before {
    position: absolute;
    inset: 17px;
    border: 1px dashed rgba(111, 56, 238, 0.35);
    border-radius: 50%;
    content: "";
}

.bop-research-seal::after {
    position: absolute;
    inset: 34px;
    border: 1px solid rgba(111, 56, 238, 0.25);
    border-radius: 50%;
    content: "";
}

.bop-seal-note {
    position: absolute;
    top: 23px;
    z-index: 2;
    max-width: 210px;
    color: var(--about-purple);
    font-size: 0.57rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    line-height: 1.4;
    text-transform: uppercase;
}

.bop-brand-icon {
    position: relative;
    z-index: 2;
    display: block !important;
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;
    min-height: 58px !important;
    margin-bottom: 10px;
    background: var(--about-purple);
    clip-path: polygon(
        50% 0%,
        88% 22%,
        88% 68%,
        50% 92%,
        12% 68%,
        12% 22%
    );
}

.bop-brand-check {
    position: absolute;
    top: 18px;
    left: 17px;
    display: block;
    width: 26px;
    height: 15px;
    transform: rotate(-45deg);
    border-bottom: 4px solid #fff;
    border-left: 4px solid #fff;
}

.bop-seal-name {
    position: relative;
    z-index: 2;
    color: var(--about-ink);
    font-size: 1.2rem;
    font-weight: 850;
}

.bop-seal-standard {
    position: relative;
    z-index: 2;
    color: var(--about-text);
    font-family: Georgia, serif;
    font-size: 0.95rem;
    font-style: italic;
}

/* Standard */

.bop-about-section {
    padding: 115px 0;
}

.bop-about-section-heading {
    max-width: 790px;
    margin: 0 auto 68px;
    text-align: center;
}

.bop-about-section-heading p:last-child {
    max-width: 660px;
    margin-right: auto;
    margin-left: auto;
    font-size: 1.1rem;
}

.bop-principles {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    border-top: 1px solid var(--about-line);
}

.bop-principle {
    display: grid !important;
    grid-template-columns: 90px minmax(0, 1fr) !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 32px 0 !important;
    border-bottom: 1px solid var(--about-line);
}

.bop-principle-number {
    color: #9c85b7;
    font-family: Georgia, serif;
    font-size: 1.75rem;
    font-style: italic;
}

.bop-principle-content {
    width: 100% !important;
    min-width: 0 !important;
}

.bop-principle-content h3,
.bop-principle-content p {
    width: auto !important;
    max-width: 720px !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.bop-principle-content p {
    margin-bottom: 0;
}

/* Evaluation */

.bop-evaluation {
    padding: 115px 0;
    background: var(--about-ink);
}

.bop-evaluation h2,
.bop-evaluation h3 {
    color: #fff;
}

.bop-evaluation p {
    color: #bbb4c6;
}

.bop-evaluation .bop-about-eyebrow {
    color: #bfa7ff !important;
}

.bop-evaluation-layout {
    display: grid !important;
    grid-template-columns:
        minmax(300px, 0.85fr)
        minmax(0, 1.15fr) !important;
    gap: 100px;
    align-items: start;
}

.bop-evaluation-intro {
    min-width: 0;
}

.bop-evaluation-intro p:last-child {
    max-width: 520px;
    font-size: 1.08rem;
}

.bop-evaluation-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
    border-top: 1px solid #403849;
    border-left: 1px solid #403849;
}

.bop-evaluation-card {
    min-width: 0 !important;
    min-height: 255px;
    margin: 0 !important;
    padding: 34px !important;
    border-right: 1px solid #403849;
    border-bottom: 1px solid #403849;
}

.bop-evaluation-number {
    display: block;
    margin-bottom: 48px;
    color: #a384ff;
    font-family: Georgia, serif;
    font-size: 1.45rem;
    font-style: italic;
}

.bop-evaluation-card p {
    margin-bottom: 0;
}

/* Research section */

.bop-reason {
    padding: 115px 0;
    background: var(--about-lavender);
}

.bop-reason-layout {
    display: grid !important;
    grid-template-columns:
        minmax(340px, 0.8fr)
        minmax(570px, 1.2fr) !important;
    gap: 85px;
    align-items: center;
}

.bop-reason-copy {
    min-width: 0;
}

.bop-reason-copy blockquote {
    margin: 38px 0 0;
    padding: 22px 0 22px 28px;
    border-left: 2px solid var(--about-purple);
    color: var(--about-purple-dark);
    font-family: Georgia, serif;
    font-size: 1.25rem;
    font-style: italic;
    line-height: 1.55;
}

.bop-research-sheet {
    position: relative;
    width: calc(100% - 75px) !important;
    min-width: 0 !important;
    margin: 30px 65px 30px 10px !important;
    padding: 42px !important;
    transform: rotate(-1deg);
    border: 1px solid #d5cbe3;
    background: #fffefb;
    box-shadow: 0 28px 65px rgba(67, 42, 96, 0.16);
}

.bop-research-sheet::before {
    position: absolute;
    inset: 10px;
    border: 1px solid #ede7f2;
    pointer-events: none;
    content: "";
}

.bop-sheet-header {
    position: relative;
    z-index: 1;
    display: flex !important;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 28px;
    padding-bottom: 19px;
    border-bottom: 2px solid var(--about-ink);
}

.bop-sheet-header span {
    color: var(--about-purple);
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bop-sheet-row {
    position: relative;
    z-index: 1;
    display: grid !important;
    grid-template-columns: 115px minmax(0, 1fr) !important;
    gap: 20px;
    width: 100% !important;
    padding: 16px 0;
    border-bottom: 1px solid #e7e0ec;
}

.bop-sheet-label,
.bop-sheet-verdict-label {
    color: #83768e;
    font-size: 0.7rem;
    font-weight: 850;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.bop-sheet-row p,
.bop-sheet-row strong {
    width: auto !important;
    min-width: 0 !important;
    margin: 0;
    color: #423a48;
    word-break: normal !important;
}

.bop-score-list {
    position: relative;
    z-index: 1;
    padding: 23px 0;
}

.bop-score {
    display: grid !important;
    grid-template-columns:
        105px minmax(180px, 1fr) 48px !important;
    gap: 14px;
    align-items: center;
    width: 100% !important;
    margin: 13px 0;
    font-size: 0.78rem;
}

.bop-score-track {
    display: block;
    width: 100%;
    height: 6px;
    background: #e6e0eb;
}

.bop-score-fill {
    display: block;
    height: 100%;
    background: var(--about-purple);
}

.bop-score-91 {
    width: 91%;
}

.bop-score-84 {
    width: 84%;
}

.bop-score-68 {
    width: 68%;
}

.bop-score-result {
    color: #655c69;
    font-size: 0.7rem;
    font-weight: 800;
}

.bop-sheet-verdict {
    position: relative;
    z-index: 1;
    padding: 18px;
    border: 1px solid #bca8f0;
    background: #f4efff;
}

.bop-sheet-verdict p {
    margin: 5px 0 0;
    color: #453d4b;
    font-size: 0.92rem;
}

.bop-sheet-annotation {
    position: absolute;
    z-index: 3;
    padding: 7px 10px;
    border: 1px solid #cd43ad;
    border-radius: 3px;
    background: #fff7fd;
    color: #9a247e;
    font-family: Georgia, serif;
    font-size: 0.76rem;
    font-style: italic;
    white-space: nowrap;
}

.bop-annotation-one {
    top: 32%;
    right: -88px;
    transform: rotate(3deg);
}

.bop-annotation-two {
    right: -78px;
    bottom: 31%;
    transform: rotate(-2deg);
}

.bop-annotation-three {
    bottom: -28px;
    left: 20%;
    transform: rotate(2deg);
}

/* What we don't do */

.bop-dont {
    padding: 115px 0;
    background: #fff;
}

.bop-dont-layout {
    display: grid !important;
    grid-template-columns:
        minmax(320px, 0.85fr)
        minmax(0, 1.15fr) !important;
    gap: 105px;
    align-items: start;
}

.bop-dont-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    border-top: 1px solid var(--about-line);
}

.bop-dont-item {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    gap: 18px;
    width: 100% !important;
    margin: 0 !important;
    padding: 26px 0 !important;
    border-bottom: 1px solid var(--about-line);
    color: #3e3745;
    font-weight: 750;
}

.bop-dont-x {
    color: var(--about-purple);
    font-size: 1.45rem;
    line-height: 1;
}

/* Decision desk */

.bop-decision-desk {
    padding: 90px 0;
    background: var(--about-purple);
}

.bop-decision-desk h2,
.bop-decision-desk p {
    color: #fff;
}

.bop-decision-desk .bop-about-eyebrow {
    color: #d9ccff !important;
}

.bop-desk-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 70px;
    align-items: end;
}

.bop-desk-copy h2 {
    max-width: 700px;
    margin-bottom: 16px;
}

.bop-desk-copy p:last-child {
    max-width: 700px;
    margin-bottom: 0;
    color: #e5dcff;
}

.bop-desk-actions {
    display: flex;
    gap: 14px;
}

.bop-desk-button {
    display: inline-flex;
    min-height: 54px;
    padding: 14px 23px;
    align-items: center;
    justify-content: center;
    gap: 20px;
    border: 1px solid #fff;
    border-radius: 7px;
    background: #fff;
    color: var(--about-purple-dark) !important;
    font-weight: 850;
    white-space: nowrap;
}

.bop-desk-button-secondary {
    background: transparent;
    color: #fff !important;
}

/* Tablet */

@media (max-width: 1000px) {
    .bop-about-hero-layout {
        grid-template-columns: minmax(0, 1fr) 240px !important;
        gap: 55px;
    }

    .bop-research-seal {
        width: 235px !important;
        height: 235px !important;
    }

    .bop-evaluation-layout,
    .bop-reason-layout,
    .bop-dont-layout {
        grid-template-columns: 1fr !important;
        gap: 60px;
    }

    .bop-research-sheet {
        width: calc(100% - 85px) !important;
        max-width: 760px;
        margin-right: 75px !important;
    }

    .bop-desk-layout {
        grid-template-columns: 1fr !important;
        gap: 40px;
    }
}

/* Mobile */

@media (max-width: 700px) {
    .bop-about-shell {
        width: min(calc(100% - 36px), var(--about-shell));
    }

    .bop-about-page h1 {
        font-size: clamp(3rem, 13vw, 4.1rem);
    }

    .bop-about-page h2 {
        font-size: clamp(2.35rem, 10vw, 3rem);
    }

    .bop-about-hero {
        padding: 70px 0 76px;
    }

    .bop-about-hero-layout {
        grid-template-columns: 1fr !important;
        gap: 54px;
    }

    .bop-research-seal {
        width: 225px !important;
        height: 225px !important;
        margin-right: auto;
        margin-left: auto;
    }

    .bop-about-section,
    .bop-evaluation,
    .bop-reason,
    .bop-dont {
        padding: 78px 0;
    }

    .bop-about-section-heading {
        margin-bottom: 45px;
        text-align: left;
    }

    .bop-about-section-heading p:last-child {
        margin-left: 0;
    }

    .bop-principle {
        grid-template-columns: 52px minmax(0, 1fr) !important;
        gap: 12px !important;
        padding: 25px 0 !important;
    }

    .bop-evaluation-grid {
        grid-template-columns: 1fr !important;
    }

    .bop-evaluation-card {
        min-height: auto;
        padding: 27px !important;
    }

    .bop-evaluation-number {
        margin-bottom: 28px;
    }

    .bop-research-sheet {
        width: 100% !important;
        max-width: none;
        margin: 15px 0 30px !important;
        padding: 30px 25px !important;
        transform: none;
    }

    .bop-sheet-header {
        display: grid !important;
        gap: 8px;
    }

    .bop-sheet-row {
        grid-template-columns: 1fr !important;
        gap: 6px;
    }

    .bop-score {
        grid-template-columns:
            84px minmax(0, 1fr) 42px !important;
        gap: 8px;
    }

    .bop-sheet-annotation {
        position: relative;
        inset: auto;
        display: inline-block;
        margin: 12px 5px 0 0;
        transform: none;
        white-space: normal;
    }

    .bop-dont-layout {
        gap: 35px;
    }

    .bop-decision-desk {
        padding: 72px 0;
    }

    .bop-desk-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .bop-desk-button {
        width: 100%;
    }
}
/* =========================================================
   ABOUT PAGE — GENERATEPRESS/WORDPRESS CONFLICT FIX
   Keep this at the very bottom of Additional CSS
========================================================= */

/* Five principles */

body .entry-content .bop-about-page .bop-principles {
    display: block !important;
    width: 100% !important;
}

body .entry-content .bop-about-page .bop-principle {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 32px 0 !important;
    align-items: flex-start !important;
    gap: 24px !important;
}

body .entry-content .bop-about-page .bop-principle-number {
    display: block !important;
    flex: 0 0 90px !important;
    width: 90px !important;
}

body .entry-content .bop-about-page .bop-principle-content {
    display: block !important;
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
}

body .entry-content .bop-about-page .bop-principle-content h3,
body .entry-content .bop-about-page .bop-principle-content p {
    display: block !important;
    width: auto !important;
    max-width: 720px !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: normal !important;
}

/* Evaluation cards */

body .entry-content .bop-about-page .bop-evaluation-grid {
    display: flex !important;
    width: 100% !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}

body .entry-content .bop-about-page .bop-evaluation-card {
    display: block !important;
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 34px !important;
}

body .entry-content .bop-about-page .bop-evaluation-card h3,
body .entry-content .bop-about-page .bop-evaluation-card p {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* Research section */

body .entry-content .bop-about-page .bop-reason-layout {
    display: flex !important;
    width: min(calc(100% - 48px), 1300px) !important;
    align-items: center !important;
    gap: 85px !important;
}

body .entry-content .bop-about-page .bop-reason-copy {
    display: block !important;
    flex: 0 1 42% !important;
    width: 42% !important;
    min-width: 340px !important;
}

body .entry-content .bop-about-page .bop-research-sheet {
    display: block !important;
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 540px !important;
    max-width: none !important;
    margin: 30px 65px 30px 0 !important;
}

body .entry-content .bop-about-page .bop-sheet-row {
    display: flex !important;
    width: 100% !important;
    align-items: flex-start !important;
    gap: 20px !important;
}

body .entry-content .bop-about-page .bop-sheet-row > .bop-sheet-label {
    display: block !important;
    flex: 0 0 115px !important;
    width: 115px !important;
}

body .entry-content .bop-about-page .bop-sheet-row > p,
body .entry-content .bop-about-page .bop-sheet-row > strong {
    display: block !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

body .entry-content .bop-about-page .bop-score {
    display: flex !important;
    width: 100% !important;
    align-items: center !important;
    gap: 14px !important;
}

body .entry-content .bop-about-page .bop-score > span:first-child {
    display: block !important;
    flex: 0 0 105px !important;
    width: 105px !important;
}

body .entry-content .bop-about-page .bop-score-track {
    display: block !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 180px !important;
}

body .entry-content .bop-about-page .bop-score-result {
    display: block !important;
    flex: 0 0 48px !important;
    width: 48px !important;
}

/* What We Don't Do */

body .entry-content .bop-about-page .bop-dont-list {
    display: block !important;
    width: 100% !important;
}

body .entry-content .bop-about-page .bop-dont-item {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 26px 0 !important;
    align-items: flex-start !important;
    gap: 18px !important;
}

body .entry-content .bop-about-page .bop-dont-x {
    display: block !important;
    flex: 0 0 24px !important;
    width: 24px !important;
}

body .entry-content .bop-about-page .bop-dont-item > span:last-child {
    display: block !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: normal !important;
}

/* Tablet and mobile */

@media (max-width: 1000px) {
    body .entry-content .bop-about-page .bop-reason-layout {
        display: block !important;
    }

    body .entry-content .bop-about-page .bop-reason-copy {
        width: 100% !important;
        min-width: 0 !important;
        margin-bottom: 60px !important;
    }

    body .entry-content .bop-about-page .bop-research-sheet {
        width: calc(100% - 85px) !important;
        min-width: 0 !important;
        max-width: 760px !important;
    }
}

@media (max-width: 700px) {
    body .entry-content .bop-about-page .bop-principle {
        gap: 12px !important;
        padding: 25px 0 !important;
    }

    body .entry-content .bop-about-page .bop-principle-number {
        flex-basis: 52px !important;
        width: 52px !important;
    }

    body .entry-content .bop-about-page .bop-evaluation-card {
        flex-basis: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body .entry-content .bop-about-page .bop-research-sheet {
        width: 100% !important;
        min-width: 0 !important;
        margin: 15px 0 30px !important;
    }

    body .entry-content .bop-about-page .bop-sheet-row {
        display: block !important;
    }

    body .entry-content .bop-about-page .bop-sheet-row > .bop-sheet-label {
        width: 100% !important;
        margin-bottom: 6px !important;
    }

    body .entry-content .bop-about-page .bop-score {
        gap: 8px !important;
    }

    body .entry-content .bop-about-page .bop-score > span:first-child {
        flex-basis: 84px !important;
        width: 84px !important;
    }

    body .entry-content .bop-about-page .bop-score-track {
        min-width: 0 !important;
    }

    body .entry-content .bop-about-page .bop-score-result {
        flex-basis: 42px !important;
        width: 42px !important;
    }
}
/* =========================================================
   ABOUT PAGE — DESKTOP TYPOGRAPHY + DECISION DESK REFINEMENT
   Mobile remains unchanged
========================================================= */

@media (min-width: 1001px) {

    /* Reduce the hero title */

    body .entry-content .bop-about-page h1 {
        max-width: 790px !important;
        font-size: clamp(4.5rem, 5.2vw, 6rem) !important;
        line-height: 1.03 !important;
        letter-spacing: -0.045em !important;
    }

    /* Reduce section titles */

    body .entry-content .bop-about-page h2 {
        font-size: clamp(3rem, 3.6vw, 4.1rem) !important;
        line-height: 1.08 !important;
    }

    /* Slightly reduce the hero description */

    body .entry-content .bop-about-page .bop-about-hero-intro {
        max-width: 720px !important;
        font-size: 1.25rem !important;
    }

    /* Make the Decision Desk shorter and calmer */

    body .entry-content .bop-about-page .bop-decision-desk {
        padding: 78px 0 !important;
        background:
            radial-gradient(
                circle at 80% 15%,
                rgba(135, 102, 210, 0.25),
                transparent 32%
            ),
            linear-gradient(
                135deg,
                #20172d 0%,
                #2b1d40 52%,
                #3a245c 100%
            ) !important;
    }

    body .entry-content .bop-about-page .bop-desk-copy h2 {
        max-width: 590px !important;
        margin-bottom: 18px !important;
        font-size: clamp(2.8rem, 3.3vw, 3.8rem) !important;
        line-height: 1.04 !important;
    }

    body .entry-content .bop-about-page .bop-desk-copy p:last-child {
        max-width: 610px !important;
        font-size: 1rem !important;
        line-height: 1.7 !important;
        color: #d7cde5 !important;
    }

    body .entry-content .bop-about-page
    .bop-decision-desk .bop-about-eyebrow {
        color: #bfa8e9 !important;
    }

    /* Refine the buttons */

    body .entry-content .bop-about-page .bop-desk-button {
        min-height: 52px !important;
        padding: 13px 21px !important;
        border-color: #ded1f5 !important;
        background: #f7f3ff !important;
        color: #39205e !important;
        font-size: 0.95rem !important;
    }

    body .entry-content .bop-about-page
    .bop-desk-button-secondary {
        background: transparent !important;
        color: #f6f1ff !important;
    }

    body .entry-content .bop-about-page
    .bop-desk-button-secondary:hover {
        background: rgba(255, 255, 255, 0.09) !important;
    }
}
/* About hero final refinement */

.bop-hero-highlight {
    color: #6f38ee;
}

@media (min-width: 1001px) {
    body .entry-content .bop-about-page .bop-about-hero {
        padding-top: 105px !important;
        padding-bottom: 100px !important;
    }

    body .entry-content .bop-about-page #bop-about-title {
        max-width: 790px !important;
        margin-bottom: 26px !important;
        font-size: clamp(3.9rem, 4.4vw, 5.15rem) !important;
        line-height: 1.04 !important;
        letter-spacing: -0.045em !important;
    }

    body .entry-content .bop-about-page .bop-about-hero-intro {
        max-width: 670px !important;
        margin-bottom: 30px !important;
        font-size: 1.08rem !important;
        line-height: 1.7 !important;
    }
}
/* Correct hero wrapping */

.bop-about-page .bop-hero-highlight {
    display: inline !important;
    color: #6f38ee !important;
    white-space: normal !important;
}

@media (min-width: 1001px) {
    body .entry-content .bop-about-page #bop-about-title {
        width: 100% !important;
        max-width: 980px !important;
        font-size: clamp(3.7rem, 4vw, 4.75rem) !important;
        line-height: 1.06 !important;
    }
}
/* Match the refined Decision Desk on mobile */

@media (max-width: 1000px) {
    body .entry-content .bop-about-page .bop-decision-desk {
        background:
            radial-gradient(
                circle at 85% 10%,
                rgba(135, 102, 210, 0.24),
                transparent 35%
            ),
            linear-gradient(
                145deg,
                #20172d 0%,
                #2b1d40 55%,
                #3a245c 100%
            ) !important;
    }

    body .entry-content .bop-about-page
    .bop-decision-desk .bop-about-eyebrow {
        color: #bfa8e9 !important;
    }

    body .entry-content .bop-about-page
    .bop-desk-copy p:last-child {
        color: #d7cde5 !important;
    }

    body .entry-content .bop-about-page .bop-desk-button {
        background: #f7f3ff !important;
        color: #39205e !important;
        border-color: #ded1f5 !important;
    }

    body .entry-content .bop-about-page
    .bop-desk-button-secondary {
        background: transparent !important;
        color: #f6f1ff !important;
    }
}
/* =========================================================
   BIZOPSPICK — HVAC SOFTWARE HUB
   Scope: .bophvac-page only
   ========================================================= */

.bophvac-page {
    --hvac-ink: #17131f;
    --hvac-copy: #615a6b;
    --hvac-purple: #6934ee;
    --hvac-purple-dark: #4e20b9;
    --hvac-lav: #f3efff;
    --hvac-soft: #faf8ff;
    --hvac-line: #ded6eb;
    --hvac-paper: #ffffff;
    --hvac-plum: #21142f;
    --hvac-shell: 1280px;

    width: 100%;
    overflow: hidden;
    background: #ffffff;
    color: var(--hvac-ink);
    font: 16px/1.65 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI",
        sans-serif;
}

.bophvac-page,
.bophvac-page * {
    box-sizing: border-box;
}

.bophvac-page h1,
.bophvac-page h2,
.bophvac-page h3,
.bophvac-page p {
    margin-top: 0;
}

.bophvac-page h1,
.bophvac-page h2,
.bophvac-page h3 {
    color: var(--hvac-ink);
}

.bophvac-page a {
    text-decoration: none;
}

.bophvac-page a:focus-visible {
    outline: 3px solid #bca3ff;
    outline-offset: 4px;
}

.bophvac-shell {
    width: min(calc(100% - 48px), var(--hvac-shell));
    margin-inline: auto;
}

.bophvac-eyebrow {
    margin-bottom: 13px !important;
    color: var(--hvac-purple) !important;
    font-size: 0.74rem;
    font-weight: 850;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.bophvac-page h1 {
    max-width: 700px;
    margin-bottom: 23px;
    font-size: clamp(3.4rem, 4.45vw, 4.8rem);
    line-height: 1.03;
    letter-spacing: -0.055em;
}

.bophvac-page h1 span {
    color: var(--hvac-purple);
}

.bophvac-page h2 {
    font-size: clamp(2.15rem, 3vw, 3.2rem);
    line-height: 1.08;
    letter-spacing: -0.045em;
}

.bophvac-page h3 {
    line-height: 1.2;
    letter-spacing: -0.025em;
}

.bophvac-button {
    display: inline-flex !important;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    gap: 22px;
    padding: 13px 21px;
    border: 1px solid var(--hvac-purple);
    border-radius: 8px;
    font-weight: 800;
    transition: transform 0.2s ease, background 0.2s ease;
}

.bophvac-button:hover {
    transform: translateY(-2px);
}

.bophvac-button-primary {
    background: var(--hvac-purple);
    color: #ffffff !important;
}

.bophvac-button-primary:hover {
    background: var(--hvac-purple-dark);
}

.bophvac-button-secondary {
    background: transparent;
    color: var(--hvac-purple) !important;
}

.bophvac-text-link {
    color: var(--hvac-purple) !important;
    font-weight: 850;
}

/* Hero */

.bophvac-hero {
    padding: 34px 0 88px;
    background:
        radial-gradient(
            circle at 88% 30%,
            rgba(211, 196, 255, 0.7) 0,
            rgba(244, 240, 255, 0.2) 30%,
            transparent 44%
        ),
        linear-gradient(135deg, #ffffff 0, #faf8ff 66%, #f1ecff 100%);
}

.bophvac-breadcrumbs {
    display: flex !important;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 70px;
    color: #81798b;
    font-size: 0.78rem;
}

.bophvac-breadcrumbs a {
    color: #625a6c;
}

.bophvac-hero-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.95fr) minmax(470px, 0.8fr);
    gap: 86px;
    align-items: center;
}

.bophvac-hero-copy {
    min-width: 0;
}

.bophvac-lede {
    max-width: 680px;
    margin-bottom: 30px !important;
    color: var(--hvac-copy) !important;
    font-size: 1.18rem;
}

.bophvac-actions {
    display: flex !important;
    flex-wrap: wrap;
    gap: 12px;
}

.bophvac-research-note {
    max-width: 650px;
    margin: 28px 0 0 !important;
    padding-left: 16px;
    border-left: 2px solid var(--hvac-purple);
    color: var(--hvac-copy) !important;
    font-size: 0.8rem;
}

.bophvac-research-note strong {
    color: var(--hvac-ink);
}

.bophvac-flowboard {
    min-width: 0;
    padding: 27px;
    border: 1px solid #d7cfea;
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 22px 55px rgba(67, 42, 111, 0.08);
}

.bophvac-flowboard-head {
    display: flex !important;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--hvac-line);
}

.bophvac-flowboard-head small,
.bophvac-flowboard-head strong {
    display: block;
}

.bophvac-flowboard-head small {
    margin-bottom: 4px;
    color: var(--hvac-purple);
    font-size: 0.7rem;
    font-weight: 750;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bophvac-flowboard-head strong {
    font-size: 1.05rem;
}

.bophvac-flowboard-head > span {
    color: #9a8da8;
    font-size: 1.1rem;
}

.bophvac-flow {
    margin: 0;
    padding: 0;
    list-style: none;
}

.bophvac-flow li {
    display: grid !important;
    grid-template-columns: 26px 42px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
    padding: 16px 0;
    border-bottom: 1px solid #ebe7f0;
}

.bophvac-flow li > span {
    color: #958b9e;
    font: italic 0.9rem Georgia, serif;
}

.bophvac-flow li > i {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 8px;
    background: #f0edf5;
    color: #4e4857;
    font-style: normal;
}

.bophvac-flow strong,
.bophvac-flow small {
    display: block;
}

.bophvac-flow strong {
    font-size: 15px;
    font-weight: 600;
}

.bophvac-flow small {
    color: var(--hvac-copy);
    font-size: 0.76rem;
}

.bophvac-flow-note {
    margin: 18px 0 0 !important;
    padding: 14px 15px;
    background: #f7f5f9;
    color: var(--hvac-copy) !important;
    font-size: 0.78rem;
}

.bophvac-flow-note strong {
    color: var(--hvac-ink);
}

/* Section headings */

.bophvac-section-heading {
    max-width: 790px;
    margin-bottom: 36px;
}

.bophvac-section-heading > p:not(.bophvac-eyebrow) {
    max-width: 720px;
    margin: 20px 0 0;
    color: var(--hvac-copy);
}

.bophvac-section-heading-split {
    display: grid !important;
    max-width: none;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.55fr);
    gap: 70px;
    align-items: end;
}

.bophvac-section-heading-split > p {
    margin: 0 !important;
}

/* Workflow */

.bophvac-work {
    padding: 88px 0;
    background: #ffffff;
}

.bophvac-work-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--hvac-line);
    border-left: 1px solid var(--hvac-line);
}

.bophvac-work-grid > div {
    min-width: 0;
    min-height: 195px;
    padding: 23px;
    border-right: 1px solid var(--hvac-line);
    border-bottom: 1px solid var(--hvac-line);
}

.bophvac-work-grid span,
.bophvac-work-grid strong,
.bophvac-work-grid small {
    display: block;
}

.bophvac-work-grid span {
    margin-bottom: 32px;
    color: #a08bb5;
    font-family: Georgia, serif;
    font-size: 1.1rem;
    font-style: italic;
}

.bophvac-work-grid strong {
    margin-bottom: 8px;
    font-size: 1.03rem;
}

.bophvac-work-grid small {
    color: var(--hvac-copy);
}

/* Picks */

.bophvac-picks {
    padding: 94px 0;
    background: #f8f6fb;
}

.bophvac-pick-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.03fr) minmax(0, 0.97fr);
    gap: 18px;
}

.bophvac-featured-pick,
.bophvac-alternative-card {
    min-width: 0;
    border: 1px solid var(--hvac-line);
    border-radius: 12px;
    background: #ffffff;
}

.bophvac-featured-pick {
    display: flex !important;
    min-height: 590px;
    flex-direction: column;
    padding: 31px;
    border-top: 3px solid var(--hvac-purple);
}

.bophvac-alternative-picks {
    display: grid !important;
    grid-template-rows: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.bophvac-alternative-card {
    display: flex !important;
    flex-direction: column;
    padding: 25px;
}

.bophvac-pick-index {
    display: flex !important;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
}

.bophvac-pick-index > span {
    color: #958b9e;
    font: italic 1.05rem Georgia, serif;
}

.bophvac-pick-index > small {
    color: #686171;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.bophvac-featured-title,
.bophvac-alternative-title {
    display: flex !important;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
}

.bophvac-featured-title {
    margin: 64px 0 14px;
}

.bophvac-featured-title p {
    margin-bottom: 5px !important;
    color: #615a6b;
    font-size: 15px;
    font-weight: 600;
}

.bophvac-featured-title h3,
.bophvac-alternative-title h3 {
    margin: 0;
    font-weight: 600;
}

.bophvac-featured-title h3 {
    font-size: 2.5rem;
}

.bophvac-product-mark {
    display: grid;
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    place-items: center;
    border-radius: 10px;
    background: #f0ecf8;
    color: var(--hvac-purple);
    font-weight: 700;
}

.bophvac-best-for {
    max-width: 590px;
    margin-bottom: 30px !important;
    color: var(--hvac-copy) !important;
    font-size: 15px;
}

.bophvac-featured-details {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    padding-top: 25px;
    border-top: 1px solid #e8e3ed;
}

.bophvac-featured-details strong,
.bophvac-alternative-detail strong {
    font-size: 15px;
    font-weight: 600;
}

.bophvac-featured-details p,
.bophvac-alternative-detail p {
    margin: 7px 0 0;
    color: var(--hvac-copy);
    font-size: 15px;
    line-height: 1.65;
}

.bophvac-featured-pick > a {
    margin-top: auto;
    padding-top: 28px;
    color: var(--hvac-purple) !important;
    font-size: 15px;
    font-weight: 700;
}

.bophvac-alternative-title {
    margin: 27px 0 17px;
}

.bophvac-alternative-title h3 {
    font-size: 1.65rem;
}

.bophvac-alternative-title p {
    margin: 5px 0 0;
    color: var(--hvac-copy);
    font-size: 15px;
}

.bophvac-alternative-detail {
    padding-top: 17px;
    border-top: 1px solid #e8e3ed;
}

.bophvac-card-footer {
    display: flex !important;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    margin-top: auto;
    padding-top: 18px;
}

.bophvac-card-footer > span {
    color: #686171;
    font-size: 0.76rem;
}

.bophvac-card-footer > span strong {
    font-weight: 600;
}

.bophvac-card-footer > a {
    color: var(--hvac-purple) !important;
    font-size: 15px;
    font-weight: 700;
    white-space: nowrap;
}

.bophvac-disclosure {
    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 35px;
    margin-top: 24px;
    padding: 22px 25px;
    border: 1px solid var(--hvac-line);
    border-radius: 9px;
    background: #ffffff;
}

.bophvac-disclosure p {
    margin: 0;
    color: var(--hvac-copy);
    font-size: 0.82rem;
}

/* Comparison */

.bophvac-compare {
    padding: 100px 0;
    background: var(--hvac-lav);
}

.bophvac-compare-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.9fr) minmax(460px, 0.75fr);
    gap: 100px;
    align-items: center;
}

.bophvac-compare-copy > p:not(.bophvac-eyebrow) {
    max-width: 620px;
    margin: 22px 0 28px;
    color: var(--hvac-copy);
    font-size: 1.08rem;
}

.bophvac-compare-sheet {
    position: relative;
    min-width: 0;
    padding: 32px;
    transform: rotate(-1deg);
    border: 1px solid #d3c7e6;
    background: #fffefa;
    box-shadow: 0 24px 58px rgba(68, 44, 99, 0.12);
}

.bophvac-sheet-head small,
.bophvac-sheet-head strong {
    display: block;
}

.bophvac-sheet-head small {
    color: var(--hvac-purple);
    font-size: 0.66rem;
    font-weight: 850;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bophvac-sheet-head strong {
    margin-top: 11px;
    font-size: 1.35rem;
}

.bophvac-versus {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr;
    gap: 15px;
    align-items: center;
    margin: 30px 0;
    padding: 25px 0;
    border-top: 1px solid var(--hvac-line);
    border-bottom: 1px solid var(--hvac-line);
}

.bophvac-versus > div {
    text-align: center;
}

.bophvac-versus > div > span {
    display: grid;
    width: 46px;
    height: 46px;
    margin: 0 auto 10px;
    place-items: center;
    border-radius: 50%;
    background: var(--hvac-lav);
    color: var(--hvac-purple);
    font-weight: 850;
}

.bophvac-versus strong,
.bophvac-versus small {
    display: block;
}

.bophvac-versus small {
    margin-top: 4px;
    color: var(--hvac-copy);
}

.bophvac-versus > b {
    color: #9e8eae;
    font-size: 0.72rem;
}

.bophvac-sheet-line {
    display: flex !important;
    justify-content: space-between;
    gap: 20px;
}

.bophvac-sheet-line span {
    color: var(--hvac-copy);
    font-size: 0.78rem;
}

.bophvac-sheet-line strong {
    max-width: 220px;
    text-align: right;
    font-size: 0.84rem;
}

.bophvac-compare-sheet em {
    position: absolute;
    right: -35px;
    bottom: -18px;
    padding: 8px 12px;
    border: 1px solid #cf43a4;
    background: #fff8fd;
    color: #9e287e;
    font-family: Georgia, serif;
}

/* Buying process */

.bophvac-choose {
    padding: 96px 0;
    background: #ffffff;
}

.bophvac-choose-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.65fr) minmax(520px, 1fr);
    gap: 100px;
    align-items: start;
}

.bophvac-choose-intro > p:not(.bophvac-eyebrow) {
    max-width: 520px;
    margin: 22px 0 0;
    color: var(--hvac-copy);
}

.bophvac-choose-steps {
    margin: 0;
    padding: 0;
    border-top: 1px solid var(--hvac-line);
    list-style: none;
}

.bophvac-choose-steps li {
    display: grid !important;
    grid-template-columns: 60px minmax(0, 1fr);
    gap: 18px;
    padding: 25px 0;
    border-bottom: 1px solid var(--hvac-line);
}

.bophvac-choose-steps li > span {
    color: #9e89b2;
    font: italic 1.13rem Georgia, serif;
}

.bophvac-choose-steps strong {
    font-size: 1.05rem;
}

.bophvac-choose-steps p {
    margin: 5px 0 0;
    color: var(--hvac-copy);
    font-size: 0.86rem;
}

/* Research Standard */

.bophvac-standard {
    padding: 54px 0;
    border-top: 1px solid var(--hvac-line);
    border-bottom: 1px solid var(--hvac-line);
    background: #ffffff;
}

.bophvac-standard-grid {
    display: grid !important;
    grid-template-columns: 46px minmax(280px, 0.8fr) minmax(320px, 1fr) auto;
    gap: 25px;
    align-items: center;
}

.bophvac-standard-mark {
    display: grid;
    width: 44px;
    height: 47px;
    place-items: center;
    clip-path: polygon(
        50% 0,
        90% 23%,
        90% 70%,
        50% 95%,
        10% 70%,
        10% 23%
    );
    background: var(--hvac-purple);
    color: #ffffff;
    font-size: 1.15rem;
}

.bophvac-standard h2 {
    font-size: 1.55rem;
}

.bophvac-standard-grid > p {
    margin: 0;
    color: var(--hvac-copy);
    font-size: 0.9rem;
}

.bophvac-standard-grid > a {
    color: var(--hvac-purple) !important;
    font-size: 0.9rem;
    font-weight: 700;
    white-space: nowrap;
}

/* Final Decision Desk */

.bophvac-desk {
    padding: 72px 0;
    background: linear-gradient(135deg, #1c1128, #3a2352);
}

.bophvac-desk-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.05fr) minmax(270px, 0.7fr) auto;
    gap: 55px;
    align-items: center;
}

.bophvac-desk h2 {
    color: #ffffff;
    font-size: clamp(2.45rem, 3.3vw, 3.55rem);
}

.bophvac-desk-grid > p {
    margin: 0;
    color: #d9cee5;
}

.bophvac-button-light {
    border-color: #ffffff;
    background: #ffffff;
    color: #3d1d68 !important;
    white-space: nowrap;
}

/* Tablet */

@media (max-width: 1050px) {
    .bophvac-hero-grid {
        grid-template-columns: minmax(0, 0.9fr) minmax(420px, 0.8fr);
        gap: 45px;
    }

    .bophvac-work-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bophvac-compare-grid {
        gap: 60px;
    }

    .bophvac-standard-grid {
        grid-template-columns: 58px minmax(0, 1fr) minmax(0, 1fr);
    }

    .bophvac-standard-grid > a {
        grid-column: 2;
    }

    .bophvac-desk-grid {
        grid-template-columns: minmax(0, 1fr) minmax(270px, 0.7fr);
    }

    .bophvac-button-light {
        justify-self: start;
    }
}

@media (max-width: 820px) {
    .bophvac-hero-grid,
    .bophvac-compare-grid,
    .bophvac-choose-grid,
    .bophvac-desk-grid,
    .bophvac-pick-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .bophvac-featured-pick {
        min-height: 0;
    }

    .bophvac-alternative-picks {
        grid-template-rows: auto;
    }

    .bophvac-section-heading-split {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    .bophvac-compare-sheet {
        margin-right: 30px;
    }

    .bophvac-standard-grid {
        grid-template-columns: 58px minmax(0, 1fr);
    }

    .bophvac-standard-grid > p,
    .bophvac-standard-grid > a {
        grid-column: 2;
    }
}

/* Mobile */

@media (max-width: 600px) {
    .bophvac-shell {
        width: calc(100% - 34px);
    }

    .bophvac-hero {
        padding: 26px 0 64px;
    }

    .bophvac-breadcrumbs {
        margin-bottom: 48px;
    }

    .bophvac-page h1 {
        font-size: clamp(2.7rem, 13vw, 3.45rem);
    }

    .bophvac-page h2 {
        font-size: 2.08rem;
    }

    .bophvac-actions {
        display: grid !important;
    }

    .bophvac-button {
        width: 100%;
    }

    .bophvac-flowboard {
        padding: 21px;
    }

    .bophvac-flowboard-head {
        align-items: flex-start;
    }

    .bophvac-flow li {
        grid-template-columns: 24px 40px minmax(0, 1fr);
        gap: 10px;
    }

    .bophvac-flow li > i {
        width: 40px;
        height: 40px;
    }

    .bophvac-work,
    .bophvac-picks,
    .bophvac-compare,
    .bophvac-choose {
        padding: 68px 0;
    }

    .bophvac-work-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bophvac-work-grid > div {
        min-height: 0;
    }

    .bophvac-work-grid span {
        margin-bottom: 18px;
    }

    .bophvac-featured-pick,
    .bophvac-alternative-card {
        padding: 23px;
    }

    .bophvac-featured-title {
        margin-top: 42px;
    }

    .bophvac-featured-details {
        grid-template-columns: minmax(0, 1fr);
    }

    .bophvac-card-footer {
        align-items: flex-start;
        flex-direction: column;
    }

    .bophvac-disclosure {
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
    }

    .bophvac-compare-sheet {
        margin-right: 0;
        padding: 24px;
        transform: none;
    }

    .bophvac-compare-sheet em {
        position: static;
        display: inline-block;
        margin-top: 20px;
    }

    .bophvac-versus {
        grid-template-columns: 1fr;
    }

    .bophvac-sheet-line {
        display: block !important;
    }

    .bophvac-sheet-line strong {
        display: block;
        max-width: none;
        margin-top: 5px;
        text-align: left;
    }

    .bophvac-choose-grid {
        gap: 40px;
    }

    .bophvac-choose-steps li {
        grid-template-columns: 45px minmax(0, 1fr);
    }

    .bophvac-standard-grid {
        grid-template-columns: 45px minmax(0, 1fr);
    }

    .bophvac-standard-mark {
        width: 42px;
        height: 45px;
    }

    .bophvac-standard-grid > p,
    .bophvac-standard-grid > a {
        grid-column: 1 / -1;
    }

    .bophvac-standard-grid > a {
        white-space: normal;
    }

    .bophvac-desk {
        padding: 64px 0;
    }

    .bophvac-desk-grid {
        gap: 24px;
    }

    .bophvac-desk h2 {
        font-size: 2.55rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bophvac-page * {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
/* =========================================================
   BIZOPSPICK — JOBBER HVAC REVIEW
   Scope: .bopjr-page only
   ========================================================= */

.bopjr-page {
    --jr-ink: #17131f;
    --jr-copy: #615a6b;
    --jr-purple: #6934ee;
    --jr-purple-dark: #4e20b9;
    --jr-lav: #f3efff;
    --jr-soft: #faf9fc;
    --jr-line: #ded7e7;
    --jr-paper: #ffffff;
    --jr-plum: #21142f;
    --jr-shell: 1280px;

    width: 100%;
    overflow: hidden;
    background: #ffffff;
    color: var(--jr-ink);
    font: 16px/1.65 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI",
        sans-serif;
}

.bopjr-page,
.bopjr-page * {
    box-sizing: border-box;
}

.bopjr-page h1,
.bopjr-page h2,
.bopjr-page h3,
.bopjr-page p {
    margin-top: 0;
}

.bopjr-page h1,
.bopjr-page h2,
.bopjr-page h3 {
    color: var(--jr-ink);
}

.bopjr-page a {
    text-decoration: none;
}

.bopjr-page a:focus-visible {
    outline: 3px solid #bca3ff;
    outline-offset: 4px;
}

.bopjr-shell {
    width: min(calc(100% - 48px), var(--jr-shell));
    margin-inline: auto;
}

.bopjr-eyebrow {
    margin-bottom: 13px !important;
    color: var(--jr-purple) !important;
    font-size: 0.74rem;
    font-weight: 850;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

.bopjr-page h1 {
    max-width: 760px;
    margin-bottom: 24px;
    font-size: clamp(3.35rem, 4.65vw, 4.9rem);
    line-height: 1.02;
    letter-spacing: -0.055em;
}

.bopjr-page h1 span {
    color: var(--jr-purple);
}

.bopjr-page h2 {
    font-size: clamp(2.15rem, 3vw, 3.2rem);
    line-height: 1.08;
    letter-spacing: -0.045em;
}

.bopjr-page h3 {
    line-height: 1.25;
    letter-spacing: -0.025em;
}

.bopjr-button {
    display: inline-flex !important;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    gap: 22px;
    padding: 13px 21px;
    border: 1px solid var(--jr-purple);
    border-radius: 8px;
    font-weight: 800;
    transition: transform 0.2s ease, background 0.2s ease;
}

.bopjr-button:hover {
    transform: translateY(-2px);
}

.bopjr-button-primary {
    background: var(--jr-purple);
    color: #ffffff !important;
}

.bopjr-button-primary:hover {
    background: var(--jr-purple-dark);
}

.bopjr-button-secondary {
    color: var(--jr-purple) !important;
}

/* Hero */

.bopjr-hero {
    padding: 34px 0 92px;
    background:
        radial-gradient(
            circle at 87% 25%,
            rgba(213, 199, 255, 0.7),
            rgba(245, 241, 255, 0.15) 31%,
            transparent 45%
        ),
        linear-gradient(135deg, #ffffff, #fbf9ff 66%, #f2edff);
}

.bopjr-breadcrumbs {
    display: flex !important;
    flex-wrap: wrap;
    gap: 9px;
    margin-bottom: 68px;
    color: #81798b;
    font-size: 0.78rem;
}

.bopjr-breadcrumbs a {
    color: #625a6c;
}

.bopjr-hero-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(450px, 0.72fr);
    gap: 80px;
    align-items: center;
}

.bopjr-lede {
    max-width: 720px;
    margin-bottom: 30px !important;
    color: var(--jr-copy) !important;
    font-size: 1.16rem;
}

.bopjr-actions {
    display: flex !important;
    flex-wrap: wrap;
    gap: 12px;
}

.bopjr-note {
    max-width: 690px;
    margin: 27px 0 0 !important;
    padding-left: 16px;
    border-left: 2px solid var(--jr-purple);
    color: var(--jr-copy) !important;
    font-size: 0.8rem;
}

.bopjr-note strong {
    color: var(--jr-ink);
}

.bopjr-verdict-sheet {
    min-width: 0;
    padding: 28px;
    border: 1px solid #d4c9e4;
    border-radius: 13px;
    background: rgba(255, 255, 255, 0.96);
    box-shadow: 0 24px 60px rgba(66, 40, 104, 0.09);
}

.bopjr-sheet-head {
    display: flex !important;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    padding-bottom: 21px;
    border-bottom: 1px solid var(--jr-line);
}

.bopjr-sheet-head small,
.bopjr-sheet-head strong {
    display: block;
}

.bopjr-sheet-head small,
.bopjr-sheet-decision small {
    color: var(--jr-purple);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bopjr-sheet-head strong {
    margin-top: 4px;
    font-size: 1.05rem;
}

.bopjr-jmark {
    display: grid;
    width: 45px;
    height: 45px;
    place-items: center;
    border-radius: 9px;
    background: #f0ecf8;
    color: var(--jr-purple);
    font-weight: 800;
}

.bopjr-sheet-decision {
    padding: 25px 0;
}

.bopjr-sheet-decision h2 {
    margin: 9px 0 0;
    font-size: 1.45rem;
    line-height: 1.3;
    letter-spacing: -0.025em;
}

.bopjr-fit-list {
    margin: 0;
}

.bopjr-fit-list > div {
    display: grid !important;
    grid-template-columns: 105px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    padding: 14px 0;
    border-top: 1px solid #ebe7f0;
}

.bopjr-fit-list dt {
    color: var(--jr-copy);
    font-size: 0.78rem;
}

.bopjr-fit-list dd {
    display: grid !important;
    grid-template-columns: minmax(70px, 1fr) 95px;
    gap: 13px;
    align-items: center;
    margin: 0;
}

.bopjr-meter {
    height: 5px;
    background: #e8e2ef;
}

.bopjr-meter i {
    display: block;
    height: 100%;
    background: var(--jr-purple);
}

.bopjr-fit-list dd strong {
    font-size: 0.72rem;
    font-weight: 650;
}

.bopjr-sheet-bottom {
    margin: 18px 0 0 !important;
    padding: 14px 15px;
    background: #f7f5f9;
    color: var(--jr-copy) !important;
    font-size: 0.77rem;
}

.bopjr-sheet-bottom strong {
    color: var(--jr-ink);
}

/* Shared headings */

.bopjr-section-head {
    max-width: 820px;
    margin-bottom: 38px;
}

.bopjr-section-head > p:not(.bopjr-eyebrow) {
    max-width: 720px;
    margin: 20px 0 0;
    color: var(--jr-copy);
}

.bopjr-section-head-split {
    display: grid !important;
    max-width: none;
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr);
    gap: 75px;
    align-items: end;
}

.bopjr-section-head-split > p {
    margin: 0 !important;
}

/* Summary */

.bopjr-summary {
    padding: 92px 0;
    background: #ffffff;
}

.bopjr-summary-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid var(--jr-line);
    border-left: 1px solid var(--jr-line);
}

.bopjr-summary-grid article {
    min-width: 0;
    min-height: 265px;
    padding: 27px;
    border-right: 1px solid var(--jr-line);
    border-bottom: 1px solid var(--jr-line);
}

.bopjr-summary-grid article > span {
    display: grid;
    width: 36px;
    height: 36px;
    margin-bottom: 40px;
    place-items: center;
    border-radius: 50%;
    background: #f1eef5;
    color: #514a59;
    font-weight: 700;
}

.bopjr-summary-grid small,
.bopjr-summary-grid strong {
    display: block;
}

.bopjr-summary-grid small {
    margin-bottom: 7px;
    color: #77707e;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.bopjr-summary-grid strong {
    font-size: 1.08rem;
}

.bopjr-summary-grid p {
    margin: 11px 0 0;
    color: var(--jr-copy);
    font-size: 0.87rem;
}

/* Workflow */

.bopjr-workflow {
    padding: 98px 0;
    background: #18131f;
}

.bopjr-workflow-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.65fr) minmax(520px, 1fr);
    gap: 110px;
}

.bopjr-workflow h2 {
    color: #ffffff;
}

.bopjr-workflow-copy > p:not(.bopjr-eyebrow) {
    max-width: 520px;
    color: #cfc6d5;
}

.bopjr-workflow-map {
    margin: 0;
    padding: 0;
    border-top: 1px solid #443b4b;
    list-style: none;
}

.bopjr-workflow-map li {
    display: grid !important;
    grid-template-columns: 52px minmax(0, 1fr);
    gap: 20px;
    padding: 24px 0;
    border-bottom: 1px solid #443b4b;
}

.bopjr-workflow-map li > span {
    color: #9d82cf;
    font: italic 1rem Georgia, serif;
}

.bopjr-workflow-map strong {
    color: #ffffff;
    font-size: 1.05rem;
}

.bopjr-workflow-map p {
    margin: 5px 0 0;
    color: #cfc6d5;
    font-size: 0.86rem;
}

/* Evidence */

.bopjr-evidence {
    padding: 100px 0;
    background: #f8f6fb;
}

.bopjr-evidence-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.bopjr-evidence-grid article {
    padding: 32px;
    border: 1px solid var(--jr-line);
    border-radius: 12px;
    background: #ffffff;
}

.bopjr-evidence-label {
    display: flex !important;
    gap: 13px;
    align-items: center;
    padding-bottom: 23px;
    border-bottom: 1px solid var(--jr-line);
}

.bopjr-evidence-label span {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: 50%;
    background: #f0edf3;
    color: #554d5d;
}

.bopjr-evidence-label strong {
    font-size: 1.12rem;
}

.bopjr-evidence-grid ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.bopjr-evidence-grid li {
    padding: 22px 0;
    border-bottom: 1px solid #eae5ee;
}

.bopjr-evidence-grid li:last-child {
    border-bottom: 0;
}

.bopjr-evidence-grid li strong {
    font-size: 15px;
    font-weight: 650;
}

.bopjr-evidence-grid li p {
    margin: 6px 0 0;
    color: var(--jr-copy);
    font-size: 15px;
}

.bopjr-limits {
    border-top: 3px solid #b7aebf !important;
}

.bopjr-strengths {
    border-top: 3px solid var(--jr-purple) !important;
}

/* Capabilities */

.bopjr-capabilities {
    padding: 96px 0;
    background: #ffffff;
}

.bopjr-capability-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid var(--jr-line);
    border-left: 1px solid var(--jr-line);
}

.bopjr-capability-grid article {
    min-width: 0;
    min-height: 235px;
    padding: 25px;
    border-right: 1px solid var(--jr-line);
    border-bottom: 1px solid var(--jr-line);
}

.bopjr-capability-grid span {
    display: block;
    margin-bottom: 34px;
    color: #9b87ae;
    font: italic 1rem Georgia, serif;
}

.bopjr-capability-grid h3 {
    font-size: 1.07rem;
}

.bopjr-capability-grid p {
    margin: 9px 0 0;
    color: var(--jr-copy);
    font-size: 0.86rem;
}

/* Plan check */

.bopjr-plancheck {
    padding: 100px 0;
    background: var(--jr-lav);
}

.bopjr-plan-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.7fr) minmax(480px, 0.8fr);
    gap: 100px;
    align-items: center;
}

.bopjr-plan-grid > div:first-child > p:not(.bopjr-eyebrow) {
    max-width: 600px;
    margin: 22px 0 0;
    color: var(--jr-copy);
}

.bopjr-check-sheet {
    padding: 30px;
    border: 1px solid #d5cae6;
    background: #fffefa;
    box-shadow: 0 24px 58px rgba(68, 44, 99, 0.1);
}

.bopjr-check-sheet > small {
    display: block;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--jr-line);
    color: var(--jr-purple);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.bopjr-check-sheet ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.bopjr-check-sheet li {
    display: grid !important;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 12px;
    padding: 17px 0;
    border-bottom: 1px solid #ebe6ef;
}

.bopjr-check-sheet li span {
    color: #96899f;
    font: italic 0.9rem Georgia, serif;
}

.bopjr-check-sheet li strong {
    font-size: 15px;
    font-weight: 600;
}

.bopjr-check-sheet > p {
    margin: 19px 0 0;
    padding: 13px 14px;
    background: #f6f3f9;
    color: var(--jr-copy);
    font-size: 0.76rem;
}

/* Comparison */

.bopjr-compare {
    padding: 94px 0;
    background: #ffffff;
}

.bopjr-compare-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 0.72fr) minmax(450px, 0.8fr);
    gap: 100px;
    align-items: center;
}

.bopjr-compare-grid > div:first-child > p:not(.bopjr-eyebrow) {
    max-width: 610px;
    margin: 20px 0 25px;
    color: var(--jr-copy);
}

.bopjr-compare-grid a {
    color: var(--jr-purple) !important;
    font-weight: 800;
}

.bopjr-versus {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr;
    gap: 18px;
    align-items: center;
    padding: 32px;
    border: 1px solid var(--jr-line);
    border-radius: 12px;
    background: #faf9fc;
}

.bopjr-versus article {
    text-align: center;
}

.bopjr-versus article span {
    display: grid;
    width: 54px;
    height: 54px;
    margin: 0 auto 13px;
    place-items: center;
    border-radius: 11px;
    background: #eeeaf3;
    color: #554c60;
    font-weight: 800;
}

.bopjr-versus article strong,
.bopjr-versus article small {
    display: block;
}

.bopjr-versus article small {
    margin-top: 5px;
    color: var(--jr-copy);
}

.bopjr-versus > b {
    color: #94899e;
    font-size: 0.75rem;
}

/* Final verdict */

.bopjr-final {
    padding: 92px 0;
    background: linear-gradient(135deg, #1c1128, #3a2352);
}

.bopjr-final-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 0.72fr);
    gap: 100px;
}

.bopjr-final h2 {
    max-width: 650px;
    color: #ffffff;
}

.bopjr-final-copy p {
    color: #d9cee5;
}

.bopjr-final-copy .bopjr-button {
    margin-top: 12px;
}

/* Research Standard */

.bopjr-standard {
    padding: 50px 0;
    border-top: 1px solid var(--jr-line);
    border-bottom: 1px solid var(--jr-line);
    background: #ffffff;
}

.bopjr-standard-grid {
    display: grid !important;
    grid-template-columns: 45px minmax(290px, 0.8fr) minmax(300px, 1fr) auto;
    gap: 24px;
    align-items: center;
}

.bopjr-standard-mark {
    display: grid;
    width: 43px;
    height: 46px;
    place-items: center;
    clip-path: polygon(
        50% 0,
        90% 23%,
        90% 70%,
        50% 95%,
        10% 70%,
        10% 23%
    );
    background: var(--jr-purple);
    color: #ffffff;
}

.bopjr-standard-grid > div strong {
    font-size: 1.25rem;
}

.bopjr-standard-grid > p {
    margin: 0;
    color: var(--jr-copy);
    font-size: 0.88rem;
}

.bopjr-standard-grid > a {
    color: var(--jr-purple) !important;
    font-size: 0.88rem;
    font-weight: 750;
    white-space: nowrap;
}

/* Tablet */

@media (max-width: 1050px) {
    .bopjr-hero-grid {
        grid-template-columns: minmax(0, 0.9fr) minmax(410px, 0.75fr);
        gap: 45px;
    }

    .bopjr-workflow-grid,
    .bopjr-plan-grid,
    .bopjr-compare-grid {
        gap: 55px;
    }

    .bopjr-standard-grid {
        grid-template-columns: 55px minmax(0, 1fr) minmax(0, 1fr);
    }

    .bopjr-standard-grid > a {
        grid-column: 2;
    }

    .bopjr-capability-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .bopjr-hero-grid,
    .bopjr-workflow-grid,
    .bopjr-plan-grid,
    .bopjr-compare-grid,
    .bopjr-final-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bopjr-section-head-split {
        grid-template-columns: minmax(0, 1fr);
        gap: 18px;
    }

    .bopjr-summary-grid,
    .bopjr-evidence-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bopjr-summary-grid article {
        min-height: 0;
    }

    .bopjr-standard-grid {
        grid-template-columns: 55px minmax(0, 1fr);
    }

    .bopjr-standard-grid > p,
    .bopjr-standard-grid > a {
        grid-column: 2;
    }
}

/* Mobile */

@media (max-width: 600px) {
    .bopjr-shell {
        width: calc(100% - 34px);
    }

    .bopjr-hero {
        padding: 26px 0 65px;
    }

    .bopjr-breadcrumbs {
        margin-bottom: 48px;
    }

    .bopjr-page h1 {
        font-size: clamp(2.7rem, 13vw, 3.45rem);
    }

    .bopjr-page h2 {
        font-size: 2.08rem;
    }

    .bopjr-actions {
        display: grid !important;
    }

    .bopjr-button {
        width: 100%;
    }

    .bopjr-verdict-sheet {
        padding: 21px;
    }

    .bopjr-fit-list > div {
        grid-template-columns: 1fr;
    }

    .bopjr-fit-list dd {
        grid-template-columns: minmax(60px, 1fr) 95px;
    }

    .bopjr-summary,
    .bopjr-workflow,
    .bopjr-evidence,
    .bopjr-capabilities,
    .bopjr-plancheck,
    .bopjr-compare,
    .bopjr-final {
        padding: 68px 0;
    }

    .bopjr-summary-grid article,
    .bopjr-evidence-grid article {
        padding: 23px;
    }

    .bopjr-summary-grid article > span {
        margin-bottom: 25px;
    }

    .bopjr-workflow-grid {
        gap: 38px;
    }

    .bopjr-workflow-map li {
        grid-template-columns: 40px minmax(0, 1fr);
    }

    .bopjr-capability-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bopjr-capability-grid article {
        min-height: 0;
    }

    .bopjr-capability-grid span {
        margin-bottom: 22px;
    }

    .bopjr-check-sheet {
        padding: 22px;
    }

    .bopjr-versus {
        grid-template-columns: 1fr;
        padding: 24px;
    }

    .bopjr-final-grid {
        gap: 28px;
    }

    .bopjr-standard-grid {
        grid-template-columns: 45px minmax(0, 1fr);
    }

    .bopjr-standard-grid > p,
    .bopjr-standard-grid > a {
        grid-column: 1 / -1;
    }

    .bopjr-standard-grid > a {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bopjr-page * {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
/* Jobber hero title — responsive size refinement */

.bopjr-page h1 {
    font-size: clamp(3rem, 4vw, 4.25rem);
}

@media (max-width: 1050px) {
    .bopjr-page h1 {
        font-size: clamp(2.75rem, 5vw, 3.65rem);
    }
}

@media (max-width: 600px) {
    .bopjr-page h1 {
        font-size: clamp(2.25rem, 10.5vw, 2.75rem);
        line-height: 1.06;
        letter-spacing: -0.045em;
    }
}
/* =========================================================
   HOUSECALL PRO HVAC REVIEW
   Uses the shared Jobber review design system
   ========================================================= */

.bopjr-page.bophcp-page {
    --jr-purple: #6240e8;
    --jr-purple-dark: #4724b6;
}

.bophcp-page .bopjr-hero {
    background:
        radial-gradient(
            circle at 87% 25%,
            rgba(203, 194, 247, 0.72),
            rgba(246, 243, 255, 0.14) 31%,
            transparent 45%
        ),
        linear-gradient(135deg, #ffffff, #fbfaff 66%, #f0edfb);
}

.bophcp-page .bopjr-jmark {
    background: #eeebf7;
    color: #5139b3;
}
/* =========================================================
   BIZOPSPICK — BEST PLUMBING SOFTWARE
   ========================================================= */

.boppl-page {
  --boppl-ink: #17121f;
  --boppl-text: #514759;
  --boppl-muted: #756a7e;
  --boppl-purple: #6c35f0;
  --boppl-purple-dark: #5121c5;
  --boppl-lavender: #f4f0ff;
  --boppl-line: #ddd3eb;
  --boppl-paper: #ffffff;
  --boppl-night: #211331;

  color: var(--boppl-ink);
  background: var(--boppl-paper);
  font-family: inherit;
  font-size: 16px;
  line-height: 1.65;
  overflow: hidden;
}

.boppl-page,
.boppl-page * {
  box-sizing: border-box;
}

.boppl-page br,
.boppl-page p:empty {
  display: none !important;
}

.boppl-page a {
  color: inherit;
  text-decoration: none;
}

.boppl-page p,
.boppl-page h1,
.boppl-page h2,
.boppl-page h3,
.boppl-page dl,
.boppl-page dd,
.boppl-page ul {
  margin-top: 0;
}

.boppl-shell {
  width: min(1180px, calc(100% - 48px));
  margin-inline: auto;
}

.boppl-eyebrow {
  margin-bottom: 20px;
  color: var(--boppl-purple);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.3;
  text-transform: uppercase;
}

/* HERO */

.boppl-hero {
  position: relative;
  padding: 54px 0 88px;
  border-bottom: 1px solid var(--boppl-line);
  background:
    linear-gradient(
      110deg,
      #ffffff 0%,
      #fbf9ff 50%,
      #eee7ff 100%
    );
}

.boppl-hero::after {
  position: absolute;
  right: -170px;
  bottom: -230px;
  width: 520px;
  height: 520px;
  border: 1px solid #d9ccff;
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.boppl-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 60px;
  color: var(--boppl-muted);
  font-size: 0.88rem;
}

.boppl-breadcrumbs a:hover {
  color: var(--boppl-purple);
}

.boppl-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns:
    minmax(0, 1.08fr)
    minmax(390px, 0.92fr);
  gap: 78px;
  align-items: center;
}

.boppl-hero h1 {
  max-width: 680px;
  margin-bottom: 24px;
  font-size: clamp(3rem, 4.25vw, 4.35rem);
  font-weight: 450;
  letter-spacing: -0.05em;
  line-height: 1.02;
}

.boppl-hero h1 span {
  color: var(--boppl-purple);
}

.boppl-lede {
  max-width: 650px;
  margin-bottom: 30px;
  color: var(--boppl-text);
  font-size: 1.16rem;
  line-height: 1.72;
}

.boppl-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 27px;
}

.boppl-button {
  display: inline-flex;
  min-height: 58px;
  padding: 0 24px;
  border: 1px solid var(--boppl-purple);
  border-radius: 7px;
  align-items: center;
  justify-content: center;
  gap: 22px;
  font-size: 0.96rem;
  font-weight: 800;
  transition:
    transform 0.2s ease,
    background 0.2s ease;
}

.boppl-button:hover {
  transform: translateY(-2px);
}

.boppl-button-primary {
  color: #ffffff !important;
  background: var(--boppl-purple);
}

.boppl-button-primary:hover {
  background: var(--boppl-purple-dark);
}

.boppl-button-secondary {
  color: var(--boppl-purple) !important;
  background: #ffffff;
}

.boppl-research-note {
  max-width: 650px;
  margin-bottom: 0;
  padding-left: 16px;
  border-left: 2px solid var(--boppl-purple);
  color: var(--boppl-text);
  font-size: 0.83rem;
}

/* DECISION SHEET */

.boppl-decision-sheet {
  position: relative;
  padding: 32px;
  border: 1px solid #d4c6ef;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 24px 70px rgba(53, 27, 91, 0.09);
}

.boppl-sheet-heading {
  display: flex;
  gap: 13px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--boppl-line);
  align-items: center;
}

.boppl-sheet-heading > span {
  color: var(--boppl-purple);
  font-size: 1.2rem;
  font-weight: 900;
}

.boppl-sheet-heading div {
  display: grid;
  gap: 2px;
}

.boppl-sheet-heading small {
  color: var(--boppl-purple);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.boppl-sheet-heading strong {
  font-size: 1rem;
}

.boppl-decision-list {
  margin-bottom: 22px;
}

.boppl-decision-list div {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 20px;
  padding: 20px 0;
  border-bottom: 1px solid var(--boppl-line);
  align-items: center;
}

.boppl-decision-list dt {
  color: var(--boppl-text);
  font-size: 0.9rem;
}

.boppl-decision-list dd {
  margin: 0;
  font-weight: 800;
}

.boppl-sheet-note {
  padding: 18px;
  background: var(--boppl-lavender);
}

.boppl-sheet-note strong {
  display: block;
  margin-bottom: 5px;
  color: var(--boppl-purple);
  font-size: 0.75rem;
  text-transform: uppercase;
}

.boppl-sheet-note p {
  margin-bottom: 0;
  color: var(--boppl-text);
  font-size: 0.82rem;
}

.boppl-decision-sheet > em {
  position: absolute;
  right: -28px;
  bottom: -20px;
  padding: 10px 16px;
  border: 1px solid #d22b91;
  color: #a51d71;
  background: #ffffff;
  font-family: Georgia, serif;
  font-size: 0.9rem;
  transform: rotate(-2deg);
}

/* SHARED SECTION STYLES */

.boppl-quick,
.boppl-picks,
.boppl-compare,
.boppl-evaluate,
.boppl-pricing,
.boppl-standard {
  padding: 88px 0;
}

.boppl-heading-row {
  display: grid;
  grid-template-columns:
    minmax(0, 1.1fr)
    minmax(280px, 0.7fr);
  gap: 60px;
  margin-bottom: 44px;
  align-items: end;
}

.boppl-heading-row h2,
.boppl-section-heading h2,
.boppl-evaluate h2,
.boppl-pricing h2,
.boppl-standard h2,
.boppl-final h2 {
  margin-bottom: 0;
  font-size: clamp(2.2rem, 3.5vw, 3.55rem);
  font-weight: 480;
  letter-spacing: -0.04em;
  line-height: 1.08;
}

.boppl-heading-row > p {
  margin-bottom: 5px;
  color: var(--boppl-text);
}

/* SHORT ANSWER */

.boppl-answer-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--boppl-line);
  border-left: 1px solid var(--boppl-line);
}

.boppl-answer-grid article {
  min-height: 255px;
  padding: 30px;
  border-right: 1px solid var(--boppl-line);
  border-bottom: 1px solid var(--boppl-line);
}

.boppl-answer-grid span {
  display: block;
  margin-bottom: 45px;
  color: #9a78ba;
  font-family: Georgia, serif;
  font-size: 1.2rem;
  font-style: italic;
}

.boppl-answer-grid h3 {
  margin-bottom: 12px;
  font-size: 1.1rem;
}

.boppl-answer-grid p {
  margin-bottom: 0;
  color: var(--boppl-text);
  font-size: 0.94rem;
}

/* PRODUCT CARDS */

.boppl-picks {
  border-block: 1px solid var(--boppl-line);
  background: #f8f5ff;
}

.boppl-section-heading {
  max-width: 810px;
  margin-bottom: 42px;
}

.boppl-section-heading h2 {
  margin-bottom: 17px;
}

.boppl-section-heading > p:last-child {
  margin-bottom: 0;
  color: var(--boppl-text);
}

.boppl-pick-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.boppl-pick-card {
  display: flex;
  min-height: 560px;
  padding: 30px;
  border: 1px solid var(--boppl-line);
  border-radius: 13px;
  flex-direction: column;
  background: #ffffff;
}

.boppl-pick-card-featured {
  border-color: #9b7cff;
  box-shadow: 0 18px 45px rgba(64, 31, 114, 0.07);
}

.boppl-pick-top {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 35px;
  align-items: center;
}

.boppl-pick-top span {
  color: #a27fb4;
  font-family: Georgia, serif;
  font-size: 1.05rem;
  font-style: italic;
}

.boppl-pick-top small {
  padding: 5px 10px;
  border-radius: 999px;
  color: var(--boppl-purple);
  background: var(--boppl-lavender);
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.boppl-pick-card h3 {
  margin-bottom: 5px;
  font-size: 1.9rem;
  font-weight: 500;
  letter-spacing: -0.03em;
}

.boppl-best-for {
  min-height: 58px;
  margin-bottom: 22px;
  color: var(--boppl-text);
}

.boppl-pick-card dl {
  margin-bottom: 28px;
}

.boppl-pick-card dl div {
  padding: 20px 0;
  border-top: 1px solid var(--boppl-line);
}

.boppl-pick-card dt {
  margin-bottom: 7px;
  color: var(--boppl-purple);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.boppl-pick-card dd {
  margin: 0;
  color: var(--boppl-text);
  font-size: 0.91rem;
}

.boppl-pick-card > a {
  margin-top: auto;
  color: var(--boppl-purple);
  font-weight: 800;
}

.boppl-pick-card > a:hover {
  color: var(--boppl-purple-dark);
}

.boppl-disclosure {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 35px;
  margin-top: 20px;
  padding: 22px 28px;
  border: 1px solid var(--boppl-line);
  border-radius: 10px;
  background: #ffffff;
}

.boppl-disclosure p {
  margin-bottom: 0;
  color: var(--boppl-text);
  font-size: 0.86rem;
}

/* COMPARISON */

.boppl-text-link {
  color: var(--boppl-purple) !important;
  font-weight: 800;
}

.boppl-text-link:hover {
  color: var(--boppl-purple-dark) !important;
}

.boppl-table-wrap {
  border: 1px solid var(--boppl-line);
  border-radius: 12px;
  overflow-x: auto;
  background: #ffffff;
}

.boppl-table-wrap table {
  width: 100%;
  min-width: 900px;
  border-collapse: collapse;
  font-size: 0.88rem;
}

.boppl-table-wrap th,
.boppl-table-wrap td {
  padding: 21px 18px;
  border-bottom: 1px solid var(--boppl-line);
  text-align: left;
  vertical-align: top;
}

.boppl-table-wrap thead th {
  color: var(--boppl-muted);
  background: #f8f5ff;
  font-size: 0.69rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.boppl-table-wrap tbody th {
  font-weight: 800;
}

.boppl-table-wrap tbody tr:last-child th,
.boppl-table-wrap tbody tr:last-child td {
  border-bottom: 0;
}

.boppl-table-wrap a {
  color: var(--boppl-purple);
  font-weight: 800;
}

/* EVALUATION */

.boppl-evaluate {
  color: #ffffff;
  background: var(--boppl-night);
}

.boppl-evaluate-grid {
  display: grid;
  grid-template-columns:
    minmax(0, 0.78fr)
    minmax(500px, 1.22fr);
  gap: 85px;
}

.boppl-evaluate-copy {
  position: sticky;
  top: 30px;
  align-self: start;
}

.boppl-evaluate-copy > p:not(.boppl-eyebrow) {
  margin: 25px 0;
  color: #d7cde2;
}

.boppl-evaluate .boppl-text-link {
  color: #a988ff !important;
}

.boppl-evaluate-list {
  border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.boppl-evaluate-list article {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 20px;
  padding: 28px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.boppl-evaluate-list span {
  color: #a988ff;
  font-family: Georgia, serif;
  font-style: italic;
}

.boppl-evaluate-list h3 {
  margin-bottom: 7px;
  font-size: 1.08rem;
}

.boppl-evaluate-list p {
  margin-bottom: 0;
  color: #d7cde2;
  font-size: 0.92rem;
}

/* PRICING */

.boppl-pricing {
  background: #fbf9ff;
}

.boppl-pricing-grid {
  display: grid;
  grid-template-columns:
    minmax(0, 0.88fr)
    minmax(450px, 1.12fr);
  gap: 90px;
}

.boppl-pricing-copy > p:first-child {
  color: var(--boppl-text);
  font-size: 1.03rem;
}

.boppl-pricing-copy ul {
  margin: 25px 0;
  padding: 0;
  list-style: none;
}

.boppl-pricing-copy li {
  position: relative;
  padding: 13px 0 13px 28px;
  border-bottom: 1px solid var(--boppl-line);
}

.boppl-pricing-copy li::before {
  position: absolute;
  left: 3px;
  color: var(--boppl-purple);
  content: "✓";
  font-weight: 900;
}

.boppl-caution {
  margin-bottom: 0;
  padding: 18px;
  border-left: 3px solid var(--boppl-purple);
  color: var(--boppl-text);
  background: var(--boppl-lavender);
  font-size: 0.88rem;
}

/* RESEARCH STANDARD */

.boppl-standard {
  border-block: 1px solid var(--boppl-line);
}

.boppl-standard-grid {
  display: grid;
  grid-template-columns: 70px 1.1fr 1fr auto;
  gap: 28px;
  align-items: center;
}

.boppl-standard-mark {
  display: grid;
  width: 54px;
  height: 62px;
  color: #ffffff;
  background: var(--boppl-purple);
  place-items: center;
  font-size: 1.7rem;
  clip-path: polygon(
    50% 0,
    94% 24%,
    94% 75%,
    50% 100%,
    6% 75%,
    6% 24%
  );
}

.boppl-standard h2 {
  font-size: 2rem;
}

.boppl-standard-grid > p {
  margin-bottom: 0;
  color: var(--boppl-text);
}

/* FINAL CTA */

.boppl-final {
  padding: 78px 0;
  color: #ffffff;
  background: linear-gradient(110deg, #20112f, #3d2357);
}

.boppl-final-grid {
  display: grid;
  grid-template-columns: 1fr 0.72fr auto;
  gap: 58px;
  align-items: center;
}

.boppl-final h2 {
  max-width: 560px;
  font-size: clamp(2.3rem, 4vw, 3.8rem);
}

.boppl-final-grid > p {
  margin-bottom: 0;
  color: #e0d4e9;
}

.boppl-button-light {
  border-color: #ffffff;
  color: #35144d !important;
  background: #ffffff;
}

/* TABLET */

@media (max-width: 980px) {
  .boppl-hero-grid {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  .boppl-decision-sheet {
    max-width: 720px;
  }

  .boppl-pick-grid {
    grid-template-columns: 1fr;
  }

  .boppl-pick-card {
    min-height: auto;
  }

  .boppl-best-for {
    min-height: 0;
  }

  .boppl-evaluate-grid,
  .boppl-pricing-grid {
    grid-template-columns: 1fr;
    gap: 50px;
  }

  .boppl-evaluate-copy {
    position: static;
  }

  .boppl-standard-grid {
    grid-template-columns: 70px 1fr 1fr;
  }

  .boppl-standard-grid .boppl-text-link {
    grid-column: 2 / -1;
  }

  .boppl-final-grid {
    grid-template-columns: 1fr 1fr;
  }

  .boppl-final-grid .boppl-button {
    grid-column: 1 / -1;
    justify-self: start;
  }
}

/* PHONE */

@media (max-width: 720px) {
  .boppl-shell {
    width: min(100% - 34px, 1180px);
  }

  .boppl-hero {
    padding: 34px 0 66px;
  }

  .boppl-breadcrumbs {
    margin-bottom: 42px;
    font-size: 0.78rem;
  }

  .boppl-hero h1 {
    font-size: clamp(2.7rem, 12.2vw, 3.45rem);
    line-height: 1.02;
  }

  .boppl-lede {
    font-size: 1rem;
  }

  .boppl-actions {
    display: grid;
  }

  .boppl-button {
    width: 100%;
  }

  .boppl-decision-sheet {
    padding: 22px;
  }

  .boppl-decision-sheet > em {
    right: 12px;
    bottom: -23px;
  }

  .boppl-sheet-heading {
    align-items: flex-start;
  }

  .boppl-decision-list div {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .boppl-quick,
  .boppl-picks,
  .boppl-compare,
  .boppl-evaluate,
  .boppl-pricing,
  .boppl-standard {
    padding: 66px 0;
  }

  .boppl-heading-row {
    grid-template-columns: 1fr;
    gap: 20px;
    margin-bottom: 32px;
  }

  .boppl-heading-row h2,
  .boppl-section-heading h2,
  .boppl-evaluate h2,
  .boppl-pricing h2 {
    font-size: 2.35rem;
  }

  .boppl-answer-grid {
    grid-template-columns: 1fr;
  }

  .boppl-answer-grid article {
    min-height: 0;
  }

  .boppl-answer-grid span {
    margin-bottom: 24px;
  }

  .boppl-pick-card {
    padding: 24px;
  }

  .boppl-pick-top {
    align-items: flex-start;
  }

  .boppl-pick-top small {
    max-width: 70%;
    text-align: right;
  }

  .boppl-disclosure {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 20px;
  }

  .boppl-evaluate-list article {
    grid-template-columns: 42px 1fr;
  }

  .boppl-standard-grid {
    grid-template-columns: 54px 1fr;
    align-items: start;
  }

  .boppl-standard-grid > p,
  .boppl-standard-grid .boppl-text-link {
    grid-column: 1 / -1;
  }

  .boppl-standard h2 {
    font-size: 1.75rem;
  }

  .boppl-standard-mark {
    width: 48px;
    height: 55px;
  }

  .boppl-final {
    padding: 66px 0;
  }

  .boppl-final-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .boppl-final-grid .boppl-button {
    grid-column: auto;
    justify-self: stretch;
  }

  .boppl-final h2 {
    font-size: 2.65rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .boppl-page * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}
/* ==================================================
   GLOBAL BIZOPSPICK FOOTER
================================================== */

/* Remove the original GeneratePress footer styling. */

.site-info {
    padding: 0 !important;
    background: #171020 !important;
    color: #d9d1e2 !important;
}

.site-info .inside-site-info {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
}

.site-info .copyright-bar {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
}

/* The homepage already has its own finished footer. */

.home .site-footer {
    display: none;
}

/* Global footer. */

.bop-global-footer,
.bop-global-footer * {
    box-sizing: border-box;
}

.bop-global-footer {
    width: 100%;
    background: #171020;
    color: #d9d1e2;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 15px;
    line-height: 1.6;
}

.bop-global-footer__shell {
    width: min(calc(100% - 48px), 1280px);
    margin-inline: auto;
}

.bop-global-footer a {
    color: #d9d1e2 !important;
    text-decoration: none !important;
}

.bop-global-footer a:hover {
    color: #ffffff !important;
}

.bop-global-footer a:focus-visible {
    outline: 3px solid #b99cff;
    outline-offset: 4px;
}

/* Main footer grid. */

.bop-global-footer__grid {
    display: grid;
    grid-template-columns:
        minmax(260px, 1.45fr)
        repeat(4, minmax(135px, 1fr));
    gap: 42px;
    padding: 64px 0 54px;
}

/* Brand area. */

.bop-global-footer__brand {
    max-width: 340px;
}

.bop-global-footer__name {
    display: inline-block;
    margin-bottom: 14px;
    color: #ffffff !important;
    font-size: 1.5rem;
    font-weight: 850;
    letter-spacing: -0.04em;
    line-height: 1.1;
}

.bop-global-footer__name span {
    color: #8b63ed;
}

.bop-global-footer__brand > p {
    max-width: 320px;
    margin: 0 0 20px;
    color: #bcb2c8;
    font-size: 0.96rem;
    line-height: 1.7;
}

.bop-global-footer__standard {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #b99cff !important;
    font-size: 0.93rem;
    font-weight: 750;
}

.bop-global-footer__standard span {
    display: inline-grid;
    width: 25px;
    height: 27px;
    place-items: center;
    border-radius: 7px;
    background: #6d36e8;
    color: #ffffff;
    font-size: 0.8rem;
}

/* Navigation columns. */

.bop-global-footer nav {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.bop-global-footer nav strong {
    margin-bottom: 5px;
    color: #ffffff;
    font-size: 0.94rem;
    font-weight: 800;
}

.bop-global-footer nav a {
    color: #c3b9cd !important;
    font-size: 0.91rem;
    line-height: 1.5;
}

.bop-global-footer nav a:hover {
    color: #ffffff !important;
}

/* Bottom line. */

.bop-global-footer__bottom {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    padding: 22px 0 25px;
    border-top: 1px solid #3a2e46;
    color: #aaa0b6;
    font-size: 0.85rem;
}

.bop-global-footer__bottom p {
    margin: 0;
}

/* Tablet. */

@media (max-width: 1100px) {
    .bop-global-footer__grid {
        grid-template-columns: 1.4fr repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .bop-global-footer {
        font-size: 16px;
    }

    .bop-global-footer__shell {
        width: calc(100% - 34px);
    }

    .bop-global-footer__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 38px 28px;
        padding: 50px 0 42px;
    }

    .bop-global-footer__brand {
        grid-column: 1 / -1;
        max-width: 520px;
    }

    .bop-global-footer nav a {
        font-size: 0.96rem;
    }

    .bop-global-footer__bottom {
        flex-direction: column;
        gap: 8px;
        font-size: 0.9rem;
    }
}

/* Small phones. */

@media (max-width: 480px) {
    .bop-global-footer__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 34px;
    }

    .bop-global-footer__brand {
        grid-column: auto;
    }
}
/* Hide the old GeneratePress footer widgets. */
.footer-widgets-container,
.footer-widgets {
    display: none !important;
}
/* ==================================================
   CLEANING SOFTWARE FIELD GUIDE
================================================== */

.bopcl-page {
    --bopcl-purple: #6d36e8;
    --bopcl-purple-dark: #5023b8;
    --bopcl-lavender: #f4efff;
    --bopcl-soft: #faf8ff;
    --bopcl-ink: #17121f;
    --bopcl-text: #554b60;
    --bopcl-border: #ded5ed;
    --bopcl-dark: #1b1028;
    --bopcl-white: #ffffff;

    overflow: hidden;
    margin: 0;
    color: var(--bopcl-ink);
    background: var(--bopcl-white);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.7;
}

.bopcl-page,
.bopcl-page * {
    box-sizing: border-box;
}

.bopcl-page .bopcl-shell {
    width: min(calc(100% - 48px), 1280px);
    margin-inline: auto;
}

.bopcl-page h1,
.bopcl-page h2,
.bopcl-page h3,
.bopcl-page p {
    margin-top: 0;
}

.bopcl-page h1,
.bopcl-page h2,
.bopcl-page h3 {
    color: var(--bopcl-ink);
}

.bopcl-page a {
    text-decoration: none;
}

.bopcl-page a:focus-visible {
    outline: 3px solid #b99cff;
    outline-offset: 4px;
}

.bopcl-eyebrow {
    margin-bottom: 18px;
    color: var(--bopcl-purple);
    font-size: 0.82rem;
    font-weight: 850;
    letter-spacing: 0.15em;
    line-height: 1.4;
    text-transform: uppercase;
}

/* Hero */

.bopcl-hero {
    position: relative;
    padding: 54px 0 96px;
    background:
        radial-gradient(
            circle at 88% 18%,
            rgba(109, 54, 232, 0.15),
            transparent 27%
        ),
        linear-gradient(135deg, #ffffff 0%, #f7f3ff 100%);
}

.bopcl-hero::after {
    position: absolute;
    right: -125px;
    bottom: -235px;
    width: 430px;
    height: 430px;
    border: 1px solid rgba(109, 54, 232, 0.17);
    border-radius: 50%;
    content: "";
    pointer-events: none;
}

.bopcl-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 64px;
    color: #756b80;
    font-size: 0.9rem;
}

.bopcl-breadcrumbs a {
    color: #675d71;
}

.bopcl-breadcrumbs a:hover {
    color: var(--bopcl-purple);
}

.bopcl-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.06fr) minmax(430px, 0.94fr);
    align-items: center;
    gap: 84px;
}

.bopcl-hero h1 {
    max-width: 720px;
    margin-bottom: 24px;
    font-size: clamp(3.1rem, 4.35vw, 4.55rem);
    font-weight: 450;
    letter-spacing: -0.055em;
    line-height: 1.02;
}

.bopcl-hero h1 span {
    color: var(--bopcl-purple);
}

.bopcl-hero-intro {
    max-width: 680px;
    margin-bottom: 30px;
    color: var(--bopcl-text);
    font-size: 1.17rem;
    line-height: 1.75;
}

.bopcl-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 26px;
}

.bopcl-button {
    display: inline-flex;
    min-height: 58px;
    align-items: center;
    justify-content: center;
    gap: 28px;
    padding: 15px 24px;
    border: 1px solid var(--bopcl-purple);
    border-radius: 7px;
    font-size: 0.96rem;
    font-weight: 800;
    line-height: 1.3;
    transition:
        background-color 180ms ease,
        border-color 180ms ease,
        color 180ms ease,
        transform 180ms ease;
}

.bopcl-button:hover {
    transform: translateY(-2px);
}

.bopcl-button-primary {
    background: var(--bopcl-purple);
    color: #ffffff;
}

.bopcl-button-primary:hover {
    border-color: var(--bopcl-purple-dark);
    background: var(--bopcl-purple-dark);
    color: #ffffff;
}

.bopcl-button-secondary {
    background: transparent;
    color: var(--bopcl-purple);
}

.bopcl-button-secondary:hover {
    background: var(--bopcl-purple);
    color: #ffffff;
}

.bopcl-research-note {
    max-width: 690px;
    margin: 0;
    padding-left: 16px;
    border-left: 2px solid var(--bopcl-purple);
    color: #62586c;
    font-size: 0.84rem;
    line-height: 1.65;
}

/* Decision sheet */

.bopcl-decision-sheet {
    position: relative;
    z-index: 1;
    padding: 32px;
    border: 1px solid #d9ceed;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 24px 55px rgba(55, 26, 95, 0.08);
}

.bopcl-sheet-heading {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 14px;
    padding-bottom: 22px;
    border-bottom: 1px solid var(--bopcl-border);
}

.bopcl-sheet-mark {
    width: 11px;
    height: 11px;
    margin-top: 10px;
    border: 2px solid var(--bopcl-purple);
    transform: rotate(45deg);
}

.bopcl-sheet-heading p {
    margin-bottom: 3px;
    color: var(--bopcl-purple);
    font-size: 0.74rem;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.bopcl-sheet-heading h2 {
    margin-bottom: 0;
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.45;
}

.bopcl-sheet-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 22px 0;
    border-bottom: 1px solid var(--bopcl-border);
    color: #544a5e;
    font-size: 0.9rem;
}

.bopcl-sheet-row strong {
    flex: 0 0 auto;
    color: var(--bopcl-ink);
    font-size: 0.96rem;
}

.bopcl-sheet-note {
    margin-top: 24px;
    padding: 18px;
    background: var(--bopcl-lavender);
}

.bopcl-sheet-note strong {
    color: var(--bopcl-purple);
    font-size: 0.75rem;
    font-weight: 850;
    text-transform: uppercase;
}

.bopcl-sheet-note p {
    margin: 8px 0 0;
    color: #5e5468;
    font-size: 0.82rem;
    line-height: 1.65;
}

.bopcl-decision-sheet em {
    position: absolute;
    right: -30px;
    bottom: -24px;
    padding: 10px 16px;
    border: 1px solid #e936a6;
    background: #ffffff;
    color: #b52578;
    font-family: Georgia, serif;
    font-size: 0.87rem;
    white-space: nowrap;
    transform: rotate(-2deg);
}

/* Standard section headings */

.bopcl-page h2 {
    font-size: clamp(2.25rem, 3.5vw, 3.55rem);
    font-weight: 450;
    letter-spacing: -0.045em;
    line-height: 1.08;
}

.bopcl-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 50px;
    margin-bottom: 42px;
}

.bopcl-section-heading h2 {
    margin-bottom: 0;
}

.bopcl-section-heading > p {
    max-width: 390px;
    margin-bottom: 5px;
    color: var(--bopcl-text);
}

/* Short answer */

.bopcl-answer {
    padding: 84px 0;
    border-top: 1px solid #eee8f5;
    border-bottom: 1px solid #eee8f5;
    background: #ffffff;
}

.bopcl-answer-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.86fr) minmax(0, 1.14fr);
    gap: 100px;
}

.bopcl-answer h2 {
    max-width: 590px;
    margin-bottom: 0;
}

.bopcl-answer-copy p {
    margin-bottom: 18px;
    color: var(--bopcl-text);
    font-size: 1.02rem;
}

.bopcl-answer-copy p:last-child {
    margin-bottom: 0;
}

/* Product picks */

.bopcl-picks {
    padding: 92px 0;
    background: var(--bopcl-soft);
}

.bopcl-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.bopcl-pick-card {
    display: flex;
    min-height: 610px;
    flex-direction: column;
    padding: 30px;
    border: 1px solid var(--bopcl-border);
    border-radius: 12px;
    background: #ffffff;
}

.bopcl-pick-card-featured {
    border-color: #9b75f4;
    box-shadow: 0 18px 45px rgba(83, 40, 148, 0.08);
}

.bopcl-card-top {
    display: flex;
    min-height: 42px;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 24px;
}

.bopcl-card-number {
    color: #a988bb;
    font-family: Georgia, serif;
    font-size: 1rem;
    font-style: italic;
}

.bopcl-fit-label {
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--bopcl-lavender);
    color: var(--bopcl-purple);
    font-size: 0.67rem;
    font-weight: 850;
    line-height: 1.25;
    text-align: center;
    text-transform: uppercase;
}

.bopcl-pick-card h3 {
    margin-bottom: 5px;
    font-size: 1.65rem;
    font-weight: 500;
    letter-spacing: -0.035em;
}

.bopcl-best-for {
    min-height: 58px;
    margin-bottom: 22px;
    color: var(--bopcl-text);
    font-size: 0.93rem;
}

.bopcl-card-detail {
    padding: 19px 0;
    border-top: 1px solid #ebe5f0;
}

.bopcl-card-detail strong {
    display: block;
    margin-bottom: 7px;
    color: var(--bopcl-purple);
    font-size: 0.73rem;
    font-weight: 850;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.bopcl-card-detail p {
    margin-bottom: 0;
    color: #5d5367;
    font-size: 0.88rem;
    line-height: 1.7;
}

.bopcl-card-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: auto;
    padding-top: 24px;
    color: var(--bopcl-purple);
    font-size: 0.91rem;
    font-weight: 800;
}

.bopcl-card-link:hover {
    color: var(--bopcl-purple-dark);
}

.bopcl-usage-note {
    display: grid;
    grid-template-columns: minmax(200px, 0.3fr) minmax(0, 1fr);
    gap: 32px;
    margin-top: 20px;
    padding: 22px 28px;
    border: 1px solid var(--bopcl-border);
    border-radius: 9px;
    background: #ffffff;
}

.bopcl-usage-note strong {
    font-size: 0.9rem;
}

.bopcl-usage-note p {
    margin-bottom: 0;
    color: var(--bopcl-text);
    font-size: 0.84rem;
}

/* Comparison */

.bopcl-comparison {
    padding: 88px 0;
    background: #ffffff;
}

.bopcl-comparison-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 38px;
}

.bopcl-comparison-heading h2 {
    max-width: 640px;
    margin-bottom: 0;
}

.bopcl-text-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--bopcl-purple);
    font-size: 0.93rem;
    font-weight: 800;
}

.bopcl-text-link:hover {
    color: var(--bopcl-purple-dark);
}

.bopcl-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--bopcl-border);
    border-radius: 12px;
    background: #ffffff;
}

.bopcl-table-wrap table {
    width: 100%;
    min-width: 900px;
    margin: 0;
    border: 0;
    border-collapse: collapse;
}

.bopcl-table-wrap th,
.bopcl-table-wrap td {
    padding: 20px 18px;
    border: 0;
    border-bottom: 1px solid #e9e2f0;
    color: #4e4557;
    font-size: 0.84rem;
    line-height: 1.55;
    text-align: left;
    vertical-align: top;
}

.bopcl-table-wrap thead th {
    background: #f7f3ff;
    color: #706578;
    font-size: 0.69rem;
    font-weight: 850;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.bopcl-table-wrap tbody th {
    color: var(--bopcl-ink);
    font-weight: 800;
}

.bopcl-table-wrap tr:last-child th,
.bopcl-table-wrap tr:last-child td {
    border-bottom: 0;
}

.bopcl-table-wrap a {
    color: var(--bopcl-purple);
    font-weight: 800;
}

/* Evaluation */

.bopcl-evaluate {
    padding: 92px 0;
    background: var(--bopcl-dark);
    color: #d8cfe2;
}

.bopcl-evaluate-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
    gap: 100px;
}

.bopcl-evaluate h2,
.bopcl-evaluate h3 {
    color: #ffffff;
}

.bopcl-evaluate h2 {
    max-width: 570px;
}

.bopcl-evaluate-intro {
    max-width: 570px;
    margin-bottom: 25px;
    color: #c2b7cc;
}

.bopcl-text-link-light {
    color: #b99cff;
}

.bopcl-text-link-light:hover {
    color: #ffffff;
}

.bopcl-evaluate-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid #463653;
    border-left: 1px solid #463653;
}

.bopcl-evaluate-list > div {
    min-height: 230px;
    padding: 26px;
    border-right: 1px solid #463653;
    border-bottom: 1px solid #463653;
}

.bopcl-evaluate-list span {
    display: block;
    margin-bottom: 30px;
    color: #a77cff;
    font-family: Georgia, serif;
    font-style: italic;
}

.bopcl-evaluate-list h3 {
    margin-bottom: 8px;
    font-size: 1rem;
    font-weight: 700;
}

.bopcl-evaluate-list p {
    margin-bottom: 0;
    color: #c2b7cc;
    font-size: 0.86rem;
}

/* Pricing */

.bopcl-pricing {
    padding: 88px 0;
    background: #ffffff;
}

.bopcl-pricing-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
    gap: 100px;
}

.bopcl-pricing h2 {
    max-width: 600px;
}

.bopcl-pricing-grid > div:last-child > p {
    color: var(--bopcl-text);
}

.bopcl-checklist {
    margin-top: 28px;
    padding: 26px;
    border: 1px solid var(--bopcl-border);
    border-radius: 9px;
    background: var(--bopcl-soft);
}

.bopcl-checklist strong {
    display: block;
    margin-bottom: 12px;
}

.bopcl-checklist ul {
    display: grid;
    gap: 7px;
    margin: 0;
    padding-left: 21px;
    color: var(--bopcl-text);
    font-size: 0.9rem;
}

/* Research standard */

.bopcl-standard {
    padding: 66px 0;
    border-top: 1px solid var(--bopcl-border);
    background: var(--bopcl-soft);
}

.bopcl-standard-grid {
    display: grid;
    grid-template-columns: 62px minmax(260px, 0.9fr) minmax(320px, 1.15fr) auto;
    align-items: center;
    gap: 32px;
}

.bopcl-standard-icon {
    display: grid;
    width: 54px;
    height: 60px;
    place-items: center;
    background: var(--bopcl-purple);
    color: #ffffff;
    clip-path: polygon(50% 0, 94% 23%, 94% 72%, 50% 100%, 6% 72%, 6% 23%);
}

.bopcl-standard-icon span {
    font-size: 1.5rem;
}

.bopcl-standard .bopcl-eyebrow {
    margin-bottom: 9px;
}

.bopcl-standard h2 {
    margin-bottom: 0;
    font-size: 1.65rem;
}

.bopcl-standard-grid > p {
    margin-bottom: 0;
    color: var(--bopcl-text);
    font-size: 0.91rem;
}

/* Final CTA */

.bopcl-final {
    padding: 78px 0;
    background: linear-gradient(110deg, #1b1028 0%, #3b2252 100%);
    color: #d9cfe3;
}

.bopcl-final-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.7fr) auto;
    align-items: center;
    gap: 55px;
}

.bopcl-final h2 {
    max-width: 580px;
    margin-bottom: 0;
    color: #ffffff;
    font-size: clamp(2.45rem, 3.5vw, 3.65rem);
}

.bopcl-final-grid > p {
    margin-bottom: 0;
    color: #d3c8dc;
}

.bopcl-button-light {
    min-width: 275px;
    border-color: #ffffff;
    background: #ffffff;
    color: #321649;
}

.bopcl-button-light:hover {
    border-color: var(--bopcl-lavender);
    background: var(--bopcl-lavender);
    color: #321649;
}

/* Tablet */

@media (max-width: 1050px) {
    .bopcl-hero-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 58px;
    }

    .bopcl-decision-sheet {
        max-width: 720px;
    }

    .bopcl-card-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bopcl-pick-card {
        min-height: 0;
    }

    .bopcl-best-for {
        min-height: 0;
    }

    .bopcl-evaluate-grid,
    .bopcl-pricing-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 55px;
    }

    .bopcl-standard-grid {
        grid-template-columns: 62px minmax(0, 1fr);
    }

    .bopcl-standard-grid > p,
    .bopcl-standard-grid > a {
        grid-column: 2;
    }

    .bopcl-final-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 25px;
    }

    .bopcl-button-light {
        justify-self: start;
    }
}

@media (max-width: 760px) {
    .bopcl-hero {
        padding: 40px 0 70px;
    }

    .bopcl-breadcrumbs {
        margin-bottom: 46px;
    }

    .bopcl-hero h1 {
        font-size: clamp(2.65rem, 10vw, 3.5rem);
    }

    .bopcl-page h2 {
        font-size: clamp(2rem, 7vw, 2.8rem);
    }

    .bopcl-answer-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 35px;
    }

    .bopcl-section-heading,
    .bopcl-comparison-heading {
        display: block;
    }

    .bopcl-section-heading > p {
        margin-top: 18px;
    }

    .bopcl-comparison-heading .bopcl-text-link {
        margin-top: 18px;
    }

    .bopcl-evaluate-list {
        grid-template-columns: minmax(0, 1fr);
    }

    .bopcl-evaluate-list > div {
        min-height: 0;
    }

    .bopcl-usage-note {
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
    }
}

/* Phone */

@media (max-width: 600px) {
    .bopcl-page .bopcl-shell {
        width: calc(100% - 34px);
    }

    .bopcl-hero {
        padding-bottom: 60px;
    }

    .bopcl-hero h1 {
        font-size: clamp(2.45rem, 12vw, 3.05rem);
        line-height: 1.04;
    }

    .bopcl-hero-intro {
        font-size: 1rem;
    }

    .bopcl-actions {
        display: grid;
    }

    .bopcl-button {
        width: 100%;
    }

    .bopcl-decision-sheet {
        padding: 22px;
    }

    .bopcl-sheet-row {
        align-items: flex-start;
        gap: 14px;
    }

    .bopcl-decision-sheet em {
        position: static;
        display: inline-block;
        margin-top: 16px;
        white-space: normal;
        transform: none;
    }

    .bopcl-answer,
    .bopcl-picks,
    .bopcl-comparison,
    .bopcl-evaluate,
    .bopcl-pricing {
        padding: 68px 0;
    }

    .bopcl-pick-card {
        padding: 23px;
    }

    .bopcl-card-top {
        min-height: 0;
    }

    .bopcl-usage-note {
        padding: 20px;
    }

    .bopcl-standard {
        padding: 56px 0;
    }

    .bopcl-standard-grid {
        grid-template-columns: 48px minmax(0, 1fr);
        gap: 22px 16px;
    }

    .bopcl-standard-icon {
        width: 46px;
        height: 51px;
    }

    .bopcl-standard-grid > p,
    .bopcl-standard-grid > a {
        grid-column: 1 / -1;
    }

    .bopcl-final {
        padding: 65px 0;
    }

    .bopcl-final h2 {
        font-size: 2.45rem;
    }

    .bopcl-button-light {
        min-width: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bopcl-page * {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
/* ==================================================
   LANDSCAPING SOFTWARE FIELD GUIDE
   Reuses the completed software-hub layout.
================================================== */

.bopls-page .bopcl-hero h1 {
    max-width: 730px;
    font-size: clamp(3.05rem, 4.2vw, 4.4rem);
}

@media (max-width: 760px) {
    .bopls-page .bopcl-hero h1 {
        font-size: clamp(2.6rem, 10vw, 3.35rem);
    }
}

@media (max-width: 600px) {
    .bopls-page .bopcl-hero h1 {
        font-size: clamp(2.4rem, 11.5vw, 2.95rem);
    }
}
/* ==================================================
   ROOFING SOFTWARE FIELD GUIDE
   Reuses the completed software-hub layout.
================================================== */

.bopr-page .bopcl-hero h1 {
    max-width: 750px;
    font-size: clamp(3.05rem, 4.15vw, 4.35rem);
}

@media (max-width: 760px) {
    .bopr-page .bopcl-hero h1 {
        font-size: clamp(2.6rem, 10vw, 3.3rem);
    }
}

@media (max-width: 600px) {
    .bopr-page .bopcl-hero h1 {
        font-size: clamp(2.4rem, 11.5vw, 2.95rem);
    }
}
/* ==================================================
   JOBBER PLUMBING REVIEW
   Reuses the established Jobber review design system
   ================================================== */

.bopjrp-page .bopjr-hero h1 {
    max-width: 740px;
}

.bopjrp-page .bopjr-note a {
    color: var(--jr-purple);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 1024px) {
    .bopjrp-page .bopjr-hero h1 {
        font-size: clamp(3rem, 6vw, 4rem);
    }
}

@media (max-width: 600px) {
    .bopjrp-page .bopjr-hero h1 {
        font-size: clamp(2.55rem, 12vw, 3.15rem);
    }
}
/* ==================================================
   HOUSECALL PRO — PLUMBING REVIEW
   Reuses the established Housecall Pro review system
   ================================================== */

.bophcpp-page .bopjr-hero h1 {
    max-width: 760px;
}

.bophcpp-page .bopjr-note a {
    color: var(--jr-purple);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 1024px) {
    .bophcpp-page .bopjr-hero h1 {
        font-size: clamp(3rem, 6vw, 4rem);
    }
}

@media (max-width: 600px) {
    .bophcpp-page .bopjr-hero h1 {
        font-size: clamp(2.5rem, 11.5vw, 3.1rem);
    }
}
/* ==================================================
   WORKIZ — PLUMBING REVIEW
   Reuses the established review design system
   ================================================== */

.bopjr-page.bopwk-page {
    --jr-purple: #6832ed;
    --jr-purple-dark: #4d20b5;
}

.bopwk-page .bopjr-hero {
    background:
        radial-gradient(
            circle at 88% 25%,
            rgba(207, 193, 255, 0.75),
            rgba(246, 243, 255, 0.16) 31%,
            transparent 46%
        ),
        linear-gradient(
            135deg,
            #ffffff,
            #fbfaff 65%,
            #f0ebff
        );
}

.bopwk-page .bopjr-jmark {
    background: #eee8ff;
    color: #5727ca;
}

.bopwk-page .bopjr-hero h1 {
    max-width: 760px;
}

.bopwk-page .bopjr-note a {
    color: var(--jr-purple);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
}

@media (max-width: 1024px) {
    .bopwk-page .bopjr-hero h1 {
        font-size: clamp(3rem, 6vw, 4rem);
    }
}

@media (max-width: 600px) {
    .bopwk-page .bopjr-hero h1 {
        font-size: clamp(2.5rem, 11.5vw, 3.1rem);
    }
}
/* =========================================================
   BIZOPSPICK — PLUMBING COMPARISON (Jobber vs Housecall Pro style)
   Rescoped from .bopcmp-page to .bopcmpplumb-page
   ========================================================= */

.bopcmpplumb-page {
    --cmp-ink: #17131f;
    --cmp-copy: #62596d;
    --cmp-purple: #6832ed;
    --cmp-purple-dark: #4b1eaf;
    --cmp-lavender: #f3efff;
    --cmp-soft: #faf9fc;
    --cmp-line: #ded6e8;
    --cmp-white: #ffffff;
    --cmp-plum: #21132f;
    --cmp-shell: 1280px;

    width: 100%;
    overflow: hidden;
    background: var(--cmp-white);
    color: var(--cmp-ink);
    font: 16px/1.65 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.bopcmpplumb-page,
.bopcmpplumb-page * {
    box-sizing: border-box;
}

.bopcmpplumb-page h1,
.bopcmpplumb-page h2,
.bopcmpplumb-page h3,
.bopcmpplumb-page p {
    margin-top: 0;
}

.bopcmpplumb-page h1,
.bopcmpplumb-page h2,
.bopcmpplumb-page h3 {
    color: var(--cmp-ink);
}

.bopcmpplumb-page a {
    text-decoration: none;
}

.bopcmpplumb-page a:focus-visible {
    outline: 3px solid #bca5ff;
    outline-offset: 4px;
}

.bopcmpplumb-page .bopcmp-shell {
    width: min(calc(100% - 48px), var(--cmp-shell));
    margin-inline: auto;
}

.bopcmpplumb-page .bopcmp-eyebrow {
    margin-bottom: 13px !important;
    color: var(--cmp-purple) !important;
    font-size: .74rem;
    font-weight: 850;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.bopcmpplumb-page h1 {
    max-width: 790px;
    margin-bottom: 24px;
    font-size: clamp(3.25rem, 4.6vw, 4.75rem);
    line-height: 1.02;
    letter-spacing: -.055em;
}

.bopcmpplumb-page h1 span {
    color: var(--cmp-purple);
}

.bopcmpplumb-page h2 {
    font-size: clamp(2.1rem, 3vw, 3.15rem);
    line-height: 1.08;
    letter-spacing: -.045em;
}

.bopcmpplumb-page h3 {
    line-height: 1.25;
    letter-spacing: -.025em;
}

/* BUTTONS */

.bopcmpplumb-page .bopcmp-button {
    display: inline-flex !important;
    min-height: 54px;
    align-items: center;
    justify-content: center;
    gap: 22px;
    padding: 14px 22px;
    border: 1px solid var(--cmp-purple);
    border-radius: 8px;
    font-weight: 800;
    transition: transform .2s ease, background .2s ease, color .2s ease;
}

.bopcmpplumb-page .bopcmp-button:hover {
    transform: translateY(-2px);
}

.bopcmpplumb-page .bopcmp-button-primary {
    background: var(--cmp-purple);
    color: #fff !important;
}

.bopcmpplumb-page .bopcmp-button-primary:hover {
    background: var(--cmp-purple-dark);
}

.bopcmpplumb-page .bopcmp-button-secondary {
    background: transparent;
    color: var(--cmp-purple) !important;
}

/* HERO */

.bopcmpplumb-page .bopcmp-hero {
    padding: 34px 0 96px;
    background:
        radial-gradient(
            circle at 88% 27%,
            rgba(208,193,255,.75),
            rgba(246,243,255,.18) 31%,
            transparent 46%
        ),
        linear-gradient(
            135deg,
            #ffffff,
            #fbfaff 65%,
            #f0ebff
        );
}

.bopcmpplumb-page .bopcmp-breadcrumbs {
    display: flex !important;
    flex-wrap: wrap;
    gap: 11px;
    margin-bottom: 76px;
    color: #746a7d;
    font-size: .86rem;
}

.bopcmpplumb-page .bopcmp-breadcrumbs a {
    color: #61576b !important;
}

.bopcmpplumb-page .bopcmp-breadcrumbs a:hover {
    color: var(--cmp-purple) !important;
}

.bopcmpplumb-page .bopcmp-hero-grid {
    display: grid !important;
    grid-template-columns: minmax(0,.95fr) minmax(430px,.78fr);
    gap: 76px;
    align-items: center;
}

.bopcmpplumb-page .bopcmp-lede {
    max-width: 720px;
    margin-bottom: 29px !important;
    color: var(--cmp-copy);
    font-size: 1.12rem;
}

.bopcmpplumb-page .bopcmp-actions {
    display: flex !important;
    flex-wrap: wrap;
    gap: 13px;
    margin-bottom: 25px;
}

.bopcmpplumb-page .bopcmp-note {
    max-width: 720px;
    margin-bottom: 0 !important;
    padding-left: 16px;
    border-left: 2px solid var(--cmp-purple);
    color: var(--cmp-copy);
    font-size: .82rem;
}

.bopcmpplumb-page .bopcmp-note a {
    color: var(--cmp-purple) !important;
    font-weight: 750;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.bopcmpplumb-page .bopcmp-decision-card {
    padding: 31px;
    border: 1px solid #d5c9e8;
    border-radius: 14px;
    background: rgba(255,255,255,.95);
    box-shadow: 0 28px 65px rgba(67,42,102,.12);
}

.bopcmpplumb-page .bopcmp-card-head {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 21px;
    border-bottom: 1px solid var(--cmp-line);
}

.bopcmpplumb-page .bopcmp-card-head small,
.bopcmpplumb-page .bopcmp-card-head strong {
    display: block;
}

.bopcmpplumb-page .bopcmp-card-head small {
    color: var(--cmp-purple);
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.bopcmpplumb-page .bopcmp-card-head strong {
    margin-top: 6px;
    font-size: 1.15rem;
}

.bopcmpplumb-page .bopcmp-card-head > span {
    display: grid;
    width: 50px;
    height: 50px;
    place-items: center;
    border-radius: 12px;
    background: var(--cmp-lavender);
    color: var(--cmp-purple);
    font-size: .76rem;
    font-weight: 850;
}

.bopcmpplumb-page .bopcmp-fast-choice {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    gap: 16px;
    align-items: center;
    padding: 27px 0;
}

.bopcmpplumb-page .bopcmp-fast-choice article small,
.bopcmpplumb-page .bopcmp-fast-choice article strong {
    display: block;
}

.bopcmpplumb-page .bopcmp-fast-choice article small {
    margin-bottom: 8px;
    color: var(--cmp-purple);
    font-size: .69rem;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.bopcmpplumb-page .bopcmp-fast-choice article strong {
    font-size: 1.14rem;
}

.bopcmpplumb-page .bopcmp-fast-choice article p {
    margin: 8px 0 0;
    color: var(--cmp-copy);
    font-size: .82rem;
}

.bopcmpplumb-page .bopcmp-or {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border: 1px solid var(--cmp-line);
    border-radius: 50%;
    color: #8e819a;
    font-size: .62rem;
    font-weight: 850;
}

.bopcmpplumb-page .bopcmp-card-bottom {
    margin: 0 !important;
    padding: 16px;
    background: var(--cmp-lavender);
    color: var(--cmp-copy);
    font-size: .8rem;
}

/* SHARED SECTION SHELLS */

.bopcmpplumb-page .bopcmp-verdict,
.bopcmpplumb-page .bopcmp-matrix,
.bopcmpplumb-page .bopcmp-strengths,
.bopcmpplumb-page .bopcmp-scenarios,
.bopcmpplumb-page .bopcmp-test,
.bopcmpplumb-page .bopcmp-pricing {
    padding: 92px 0;
}

.bopcmpplumb-page .bopcmp-section-head {
    max-width: 850px;
    margin-bottom: 45px;
}

.bopcmpplumb-page .bopcmp-section-head > p:not(.bopcmp-eyebrow) {
    max-width: 700px;
    margin: 20px 0 0;
    color: var(--cmp-copy);
}

.bopcmpplumb-page .bopcmp-section-head-split {
    display: grid !important;
    max-width: none;
    grid-template-columns: minmax(0,1fr) minmax(320px,.58fr);
    gap: 80px;
    align-items: end;
}

.bopcmpplumb-page .bopcmp-section-head-split > p {
    margin-bottom: 4px !important;
}

/* VERDICT */

.bopcmpplumb-page .bopcmp-verdict {
    background: #fff;
}

.bopcmpplumb-page .bopcmp-verdict-grid {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px;
}

.bopcmpplumb-page .bopcmp-verdict-grid article {
    display: flex;
    min-height: 390px;
    flex-direction: column;
    padding: 29px;
    border: 1px solid var(--cmp-line);
    border-radius: 12px;
    background: #fff;
}

.bopcmpplumb-page .bopcmp-product-mark {
    display: grid;
    width: 48px;
    height: 48px;
    margin-bottom: 34px;
    place-items: center;
    border-radius: 11px;
    background: var(--cmp-lavender);
    color: var(--cmp-purple);
    font-weight: 850;
}

.bopcmpplumb-page .bopcmp-verdict-grid small {
    margin-bottom: 9px;
    color: var(--cmp-purple);
    font-size: .7rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bopcmpplumb-page .bopcmp-verdict-grid h3 {
    font-size: 1.42rem;
}

.bopcmpplumb-page .bopcmp-verdict-grid ul {
    margin: 18px 0 27px;
    padding-left: 20px;
    color: var(--cmp-copy);
}

.bopcmpplumb-page .bopcmp-verdict-grid li + li {
    margin-top: 7px;
}

.bopcmpplumb-page .bopcmp-verdict-grid a {
    margin-top: auto;
    color: var(--cmp-purple) !important;
    font-weight: 800;
}

.bopcmpplumb-page .bopcmp-housecall-card {
    border-color: #ac8cff !important;
    box-shadow: 0 18px 45px rgba(92,50,201,.08);
}

.bopcmpplumb-page .bopcmp-test-card {
    background: var(--cmp-soft) !important;
}

.bopcmpplumb-page .bopcmp-test-card p {
    color: var(--cmp-copy);
}

/* COMPARISON MATRIX */

.bopcmpplumb-page .bopcmp-matrix {
    background: var(--cmp-soft);
}

.bopcmpplumb-page .bopcmp-comparison {
    overflow: hidden;
    border: 1px solid var(--cmp-line);
    border-radius: 14px;
    background: #fff;
}

.bopcmpplumb-page .bopcmp-comparison-head,
.bopcmpplumb-page .bopcmp-row {
    display: grid !important;
    grid-template-columns: minmax(180px,.52fr) repeat(2,minmax(0,1fr));
}

.bopcmpplumb-page .bopcmp-comparison-head {
    background: var(--cmp-plum);
    color: #fff;
}

.bopcmpplumb-page .bopcmp-comparison-head span,
.bopcmpplumb-page .bopcmp-comparison-head strong {
    padding: 20px 23px;
}

.bopcmpplumb-page .bopcmp-comparison-head strong {
    border-left: 1px solid rgba(255,255,255,.14);
}

.bopcmpplumb-page .bopcmp-row + .bopcmp-row {
    border-top: 1px solid var(--cmp-line);
}

.bopcmpplumb-page .bopcmp-factor,
.bopcmpplumb-page .bopcmp-cell {
    padding: 24px 23px;
}

.bopcmpplumb-page .bopcmp-factor {
    background: #fcfbfd;
}

.bopcmpplumb-page .bopcmp-factor span,
.bopcmpplumb-page .bopcmp-factor strong {
    display: block;
}

.bopcmpplumb-page .bopcmp-factor span {
    margin-bottom: 10px;
    color: #a58cb5;
    font-family: Georgia, serif;
    font-style: italic;
}

.bopcmpplumb-page .bopcmp-cell {
    border-left: 1px solid var(--cmp-line);
    color: var(--cmp-copy);
}

/* STRENGTHS */

.bopcmpplumb-page .bopcmp-strengths {
    background: #fff;
}

.bopcmpplumb-page .bopcmp-strength-grid {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 20px;
}

.bopcmpplumb-page .bopcmp-platform {
    padding: 34px;
    border: 1px solid var(--cmp-line);
    border-radius: 13px;
}

.bopcmpplumb-page .bopcmp-platform-featured {
    border-color: #a989ff;
    box-shadow: 0 20px 48px rgba(92,50,201,.08);
}

.bopcmpplumb-page .bopcmp-platform-head {
    display: flex !important;
    align-items: center;
    gap: 16px;
    padding-bottom: 27px;
    border-bottom: 1px solid var(--cmp-line);
}

.bopcmpplumb-page .bopcmp-platform-head > span {
    display: grid;
    width: 52px;
    height: 52px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 12px;
    background: var(--cmp-lavender);
    color: var(--cmp-purple);
    font-weight: 850;
}

.bopcmpplumb-page .bopcmp-platform-head small {
    color: var(--cmp-purple);
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bopcmpplumb-page .bopcmp-platform-head h3 {
    margin: 3px 0 0;
    font-size: 1.7rem;
}

.bopcmpplumb-page .bopcmp-procon {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 28px;
    padding: 29px 0;
}

.bopcmpplumb-page .bopcmp-procon strong {
    display: block;
    margin-bottom: 13px;
}

.bopcmpplumb-page .bopcmp-procon ul {
    margin: 0;
    padding-left: 20px;
    color: var(--cmp-copy);
}

.bopcmpplumb-page .bopcmp-procon li + li {
    margin-top: 8px;
}

.bopcmpplumb-page .bopcmp-text-link {
    color: var(--cmp-purple) !important;
    font-weight: 800;
}

/* SCENARIOS */

.bopcmpplumb-page .bopcmp-scenarios {
    background: var(--cmp-lavender);
}

.bopcmpplumb-page .bopcmp-scenario-grid {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    border-top: 1px solid #d5c9e8;
    border-left: 1px solid #d5c9e8;
}

.bopcmpplumb-page .bopcmp-scenario-grid article {
    min-height: 280px;
    padding: 30px;
    border-right: 1px solid #d5c9e8;
    border-bottom: 1px solid #d5c9e8;
    background: rgba(255,255,255,.52);
}

.bopcmpplumb-page .bopcmp-scenario-grid article > span {
    color: #a184b3;
    font-family: Georgia, serif;
    font-size: 1.15rem;
    font-style: italic;
}

.bopcmpplumb-page .bopcmp-scenario-grid small {
    display: block;
    margin: 28px 0 8px;
    color: var(--cmp-purple);
    font-size: .69rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.bopcmpplumb-page .bopcmp-scenario-grid h3 {
    font-size: 1.35rem;
}

.bopcmpplumb-page .bopcmp-scenario-grid p {
    color: var(--cmp-copy);
}

.bopcmpplumb-page .bopcmp-scenario-grid a {
    color: var(--cmp-purple) !important;
    font-weight: 800;
}

/* TEST */

.bopcmpplumb-page .bopcmp-test {
    background: var(--cmp-plum);
}

.bopcmpplumb-page .bopcmp-test-grid {
    display: grid !important;
    grid-template-columns: minmax(0,.75fr) minmax(430px,.85fr);
    gap: 100px;
    align-items: start;
}

.bopcmpplumb-page .bopcmp-test h2,
.bopcmpplumb-page .bopcmp-test p {
    color: #fff;
}

.bopcmpplumb-page .bopcmp-test-grid > div > p:not(.bopcmp-eyebrow) {
    max-width: 600px;
    color: #d6ccde;
}

.bopcmpplumb-page .bopcmp-checklist {
    margin: 0;
    padding: 0;
    border-top: 1px solid rgba(255,255,255,.17);
    list-style: none;
}

.bopcmpplumb-page .bopcmp-checklist li {
    display: grid;
    grid-template-columns: 48px minmax(0,1fr);
    gap: 16px;
    align-items: center;
    padding: 18px 0;
    border-bottom: 1px solid rgba(255,255,255,.17);
    color: #fff;
}

.bopcmpplumb-page .bopcmp-checklist span {
    color: #9e75ff;
    font-family: Georgia, serif;
    font-style: italic;
}

/* PRICING */

.bopcmpplumb-page .bopcmp-pricing {
    background: #fff;
}

.bopcmpplumb-page .bopcmp-pricing-grid {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 20px;
}

.bopcmpplumb-page .bopcmp-pricing-grid article {
    padding: 32px;
    border: 1px solid var(--cmp-line);
    border-radius: 13px;
    background: var(--cmp-soft);
}

.bopcmpplumb-page .bopcmp-pricing-grid h3 {
    font-size: 1.45rem;
}

.bopcmpplumb-page .bopcmp-pricing-grid ul {
    margin: 22px 0 30px;
    padding-left: 20px;
    color: var(--cmp-copy);
}

.bopcmpplumb-page .bopcmp-pricing-grid li + li {
    margin-top: 8px;
}

.bopcmpplumb-page .bopcmp-pricing-note {
    margin: 20px 0 0 !important;
    color: var(--cmp-copy);
    font-size: .78rem;
}

/* FINAL */

.bopcmpplumb-page .bopcmp-final {
    padding: 88px 0;
    background: var(--cmp-purple);
}

.bopcmpplumb-page .bopcmp-final-grid {
    display: grid !important;
    grid-template-columns: minmax(0,.8fr) minmax(390px,.65fr);
    gap: 100px;
    align-items: center;
}

.bopcmpplumb-page .bopcmp-final h2,
.bopcmpplumb-page .bopcmp-final p {
    color: #fff;
}

.bopcmpplumb-page .bopcmp-final .bopcmp-eyebrow {
    color: #d9cbff !important;
}

.bopcmpplumb-page .bopcmp-final-copy p {
    color: #eee8ff;
}

.bopcmpplumb-page .bopcmp-final-actions {
    display: flex !important;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 26px;
}

.bopcmpplumb-page .bopcmp-button-light {
    border-color: #fff;
    background: #fff;
    color: var(--cmp-purple-dark) !important;
}

.bopcmpplumb-page .bopcmp-button-outline-light {
    border-color: rgba(255,255,255,.75);
    color: #fff !important;
}

/* STANDARD */

.bopcmpplumb-page .bopcmp-standard {
    padding: 44px 0;
    border-top: 1px solid var(--cmp-line);
    background: #fff;
}

.bopcmpplumb-page .bopcmp-standard-grid {
    display: grid !important;
    grid-template-columns: 55px minmax(220px,.7fr) minmax(280px,1fr) auto;
    gap: 25px;
    align-items: center;
}

.bopcmpplumb-page .bopcmp-standard-mark {
    display: grid;
    width: 48px;
    height: 52px;
    place-items: center;
    clip-path: polygon(
        50% 0,
        100% 25%,
        100% 75%,
        50% 100%,
        0 75%,
        0 25%
    );
    background: var(--cmp-purple);
    color: #fff;
    font-size: 1.2rem;
}

.bopcmpplumb-page .bopcmp-standard-grid .bopcmp-eyebrow {
    margin-bottom: 3px !important;
}

.bopcmpplumb-page .bopcmp-standard-grid > p {
    margin: 0;
    color: var(--cmp-copy);
}

.bopcmpplumb-page .bopcmp-standard-grid > a {
    color: var(--cmp-purple) !important;
    font-weight: 800;
    white-space: nowrap;
}

/* TABLET */

@media (max-width: 1050px) {
    .bopcmpplumb-page .bopcmp-hero-grid {
        grid-template-columns: minmax(0,.9fr) minmax(400px,.75fr);
        gap: 45px;
    }

    .bopcmpplumb-page h1 {
        font-size: clamp(3rem,5.5vw,4rem);
    }

    .bopcmpplumb-page .bopcmp-section-head-split,
    .bopcmpplumb-page .bopcmp-test-grid,
    .bopcmpplumb-page .bopcmp-final-grid {
        gap: 55px;
    }

    .bopcmpplumb-page .bopcmp-standard-grid {
        grid-template-columns: 55px minmax(0,1fr) minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-standard-grid > a {
        grid-column: 2;
    }
}

@media (max-width: 820px) {
    .bopcmpplumb-page .bopcmp-hero-grid,
    .bopcmpplumb-page .bopcmp-section-head-split,
    .bopcmpplumb-page .bopcmp-test-grid,
    .bopcmpplumb-page .bopcmp-final-grid {
        grid-template-columns: minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-verdict-grid {
        grid-template-columns: minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-verdict-grid article {
        min-height: 0;
    }

    .bopcmpplumb-page .bopcmp-strength-grid,
    .bopcmpplumb-page .bopcmp-pricing-grid {
        grid-template-columns: minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-standard-grid {
        grid-template-columns: 55px minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-standard-grid > p,
    .bopcmpplumb-page .bopcmp-standard-grid > a {
        grid-column: 2;
    }
}

/* PHONE */

@media (max-width: 600px) {
    .bopcmpplumb-page .bopcmp-shell {
        width: calc(100% - 34px);
    }

    .bopcmpplumb-page .bopcmp-hero {
        padding: 26px 0 64px;
    }

    .bopcmpplumb-page .bopcmp-breadcrumbs {
        margin-bottom: 48px;
    }

    .bopcmpplumb-page h1 {
        font-size: clamp(2.55rem,12vw,3.12rem);
    }

    .bopcmpplumb-page h2 {
        font-size: 2.05rem;
    }

    .bopcmpplumb-page .bopcmp-actions,
    .bopcmpplumb-page .bopcmp-final-actions {
        display: grid !important;
    }

    .bopcmpplumb-page .bopcmp-button {
        width: 100%;
    }

    .bopcmpplumb-page .bopcmp-decision-card {
        padding: 21px;
    }

    .bopcmpplumb-page .bopcmp-fast-choice {
        grid-template-columns: minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-or {
        margin-inline: auto;
    }

    .bopcmpplumb-page .bopcmp-verdict,
    .bopcmpplumb-page .bopcmp-matrix,
    .bopcmpplumb-page .bopcmp-strengths,
    .bopcmpplumb-page .bopcmp-scenarios,
    .bopcmpplumb-page .bopcmp-test,
    .bopcmpplumb-page .bopcmp-pricing {
        padding: 68px 0;
    }

    .bopcmpplumb-page .bopcmp-verdict-grid article,
    .bopcmpplumb-page .bopcmp-platform,
    .bopcmpplumb-page .bopcmp-pricing-grid article {
        padding: 23px;
    }

    .bopcmpplumb-page .bopcmp-comparison-head {
        display: none !important;
    }

    .bopcmpplumb-page .bopcmp-row {
        grid-template-columns: minmax(0,1fr);
        overflow: hidden;
        border: 1px solid var(--cmp-line);
        border-radius: 10px;
        background: #fff;
    }

    .bopcmpplumb-page .bopcmp-row + .bopcmp-row {
        margin-top: 16px;
        border-top: 1px solid var(--cmp-line);
    }

    .bopcmpplumb-page .bopcmp-factor {
        background: var(--cmp-plum);
        color: #fff;
    }

    .bopcmpplumb-page .bopcmp-factor strong {
        color: #fff;
    }

    .bopcmpplumb-page .bopcmp-cell {
        border-top: 1px solid var(--cmp-line);
        border-left: 0;
    }

    .bopcmpplumb-page .bopcmp-cell::before {
        content: attr(data-product);
        display: block;
        margin-bottom: 9px;
        color: var(--cmp-purple);
        font-size: .68rem;
        font-weight: 850;
        letter-spacing: .08em;
        text-transform: uppercase;
    }

    .bopcmpplumb-page .bopcmp-comparison {
        overflow: visible;
        border: 0;
        border-radius: 0;
        background: transparent;
    }

    .bopcmpplumb-page .bopcmp-procon {
        grid-template-columns: minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-scenario-grid {
        grid-template-columns: minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-scenario-grid article {
        min-height: 0;
        padding: 24px;
    }

    .bopcmpplumb-page .bopcmp-checklist li {
        grid-template-columns: 38px minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-standard-grid {
        grid-template-columns: 45px minmax(0,1fr);
    }

    .bopcmpplumb-page .bopcmp-standard-grid > p,
    .bopcmpplumb-page .bopcmp-standard-grid > a {
        grid-column: 1 / -1;
    }

    .bopcmpplumb-page .bopcmp-standard-grid > a {
        white-space: normal;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bopcmpplumb-page * {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}
/* =========================================================
   BIZOPSPICK — PLUMBING SOFTWARE BUYER'S GUIDE
   ========================================================= */

.bpg-final {
    --bpg-purple: #6934f5;
    --bpg-purple-dark: #4c1fbd;
    --bpg-ink: #17111f;
    --bpg-text: #554a5d;
    --bpg-muted: #756b7d;
    --bpg-border: #ddd4ec;
    --bpg-soft: #faf8ff;
    --bpg-lavender: #f4efff;
    --bpg-dark: #21102f;
    --bpg-white: #ffffff;

    width: 100%;
    max-width: none;
    margin: 0;
    color: var(--bpg-ink);
    background: var(--bpg-white);
    font-family: inherit;
    overflow: clip;
}

.bpg-final,
.bpg-final *,
.bpg-final *::before,
.bpg-final *::after {
    box-sizing: border-box;
}

.bpg-final * {
    min-width: 0;
    writing-mode: horizontal-tb;
    word-break: normal;
    overflow-wrap: break-word;
}

.bpg-final a {
    color: inherit;
    text-decoration: none;
}

.bpg-final p,
.bpg-final h1,
.bpg-final h2,
.bpg-final h3,
.bpg-final blockquote,
.bpg-final ul,
.bpg-final ol {
    margin-top: 0;
}

.bpg-final__shell {
    width: min(1240px, calc(100% - 48px));
    margin-inline: auto;
}


/* HERO */

.bpg-final__hero {
    position: relative;
    padding: 58px 0 92px;
    background:
        radial-gradient(circle at 88% 25%, rgba(105, 52, 245, 0.16), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #faf8ff 50%, #f3edff 100%);
    border-bottom: 1px solid var(--bpg-border);
}

.bpg-final__hero::after {
    content: "";
    position: absolute;
    right: -170px;
    bottom: -250px;
    width: 470px;
    height: 470px;
    border: 1px solid rgba(105, 52, 245, 0.18);
    border-radius: 50%;
    pointer-events: none;
}

.bpg-final__breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-bottom: 64px;
    color: var(--bpg-muted);
    font-size: 15px;
}

.bpg-final__breadcrumbs a:hover {
    color: var(--bpg-purple);
}

.bpg-final__hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 0.86fr);
    gap: clamp(56px, 7vw, 110px);
    align-items: center;
}

.bpg-final__eyebrow {
    margin-bottom: 22px;
    color: var(--bpg-purple);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.16em;
    line-height: 1.4;
    text-transform: uppercase;
}

.bpg-final__hero h1 {
    max-width: 790px;
    margin-bottom: 30px;
    font-size: clamp(44px, 5vw, 64px);
    font-weight: 600;
    letter-spacing: -0.055em;
    line-height: 0.99;
}

.bpg-final__hero h1 span {
    display: block;
    color: var(--bpg-purple);
}

.bpg-final__hero-intro {
    max-width: 690px;
    margin-bottom: 32px;
    color: var(--bpg-text);
    font-size: 19px;
    line-height: 1.75;
}

.bpg-final__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 28px;
}

.bpg-final__button {
    display: inline-flex;
    min-height: 62px;
    align-items: center;
    justify-content: center;
    padding: 15px 26px;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 750;
    line-height: 1.25;
    text-align: center;
    transition:
        background-color 180ms ease,
        border-color 180ms ease,
        color 180ms ease,
        transform 180ms ease;
}

.bpg-final__button:hover {
    transform: translateY(-2px);
}

.bpg-final__button--primary {
    color: #ffffff !important;
    background: var(--bpg-purple);
    border-color: var(--bpg-purple);
}

.bpg-final__button--primary:hover {
    background: var(--bpg-purple-dark);
    border-color: var(--bpg-purple-dark);
}

.bpg-final__button--outline {
    color: var(--bpg-purple) !important;
    background: rgba(255, 255, 255, 0.68);
    border-color: var(--bpg-purple);
}

.bpg-final__button--outline:hover {
    color: #ffffff !important;
    background: var(--bpg-purple);
}

.bpg-final__research-note {
    max-width: 670px;
    padding: 7px 0 7px 18px;
    border-left: 2px solid var(--bpg-purple);
    color: var(--bpg-text);
    font-size: 14px;
    line-height: 1.7;
}

.bpg-final__research-note strong {
    color: var(--bpg-ink);
}


/* DECISION BRIEF */

.bpg-final__brief {
    position: relative;
    z-index: 1;
    padding: 36px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid var(--bpg-border);
    border-radius: 16px;
    box-shadow: 0 25px 60px rgba(39, 16, 72, 0.08);
}

.bpg-final__brief-heading {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 18px;
    padding-bottom: 26px;
    border-bottom: 1px solid var(--bpg-border);
}

.bpg-final__diamond {
    width: 13px;
    height: 13px;
    margin-top: 8px;
    border: 2px solid var(--bpg-purple);
    transform: rotate(45deg);
}

.bpg-final__brief-heading p {
    margin-bottom: 5px;
    color: var(--bpg-purple);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.bpg-final__brief-heading h2 {
    margin-bottom: 0;
    font-size: 20px;
    font-weight: 750;
    letter-spacing: -0.02em;
    line-height: 1.3;
}

.bpg-final__brief-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(150px, 0.85fr);
    gap: 24px;
    align-items: center;
    min-height: 100px;
    padding: 24px 0;
    border-bottom: 1px solid var(--bpg-border);
}

.bpg-final__brief-row span {
    color: var(--bpg-text);
    font-size: 15px;
    line-height: 1.5;
}

.bpg-final__brief-row strong {
    color: var(--bpg-ink);
    font-size: 15px;
    line-height: 1.45;
    text-align: right;
}

.bpg-final__brief-note {
    margin: 24px 0 0;
    padding: 14px 16px;
    color: var(--bpg-purple);
    background: var(--bpg-lavender);
    font-size: 13px;
    line-height: 1.5;
}


/* PROCESS NAVIGATION */

.bpg-final__process-nav {
    background: #ffffff;
    border-bottom: 1px solid var(--bpg-border);
}

.bpg-final__process-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.bpg-final__process-grid a {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    min-height: 112px;
    padding: 26px 30px;
    border-left: 1px solid var(--bpg-border);
}

.bpg-final__process-grid a:last-child {
    border-right: 1px solid var(--bpg-border);
}

.bpg-final__process-grid span,
.bpg-final__number {
    color: var(--bpg-purple);
    font-family: Georgia, serif;
    font-size: 17px;
    font-style: italic;
}

.bpg-final__process-grid strong {
    font-size: 15px;
    line-height: 1.35;
}

.bpg-final__process-grid a:hover strong {
    color: var(--bpg-purple);
}


/* GENERAL SECTIONS */

.bpg-final__section {
    padding: 104px 0;
    background: #ffffff;
}

.bpg-final__section--soft {
    background: var(--bpg-soft);
}

.bpg-final__section--lavender {
    background: var(--bpg-lavender);
}

.bpg-final__section-heading {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr);
    gap: 70px;
    align-items: end;
    margin-bottom: 54px;
}

.bpg-final__section-heading h2,
.bpg-final__requirements-copy h2 {
    margin-bottom: 0;
    font-size: clamp(42px, 4vw, 62px);
    font-weight: 600;
    letter-spacing: -0.045em;
    line-height: 1.05;
}

.bpg-final__section-heading > p {
    max-width: 500px;
    margin-bottom: 4px;
    color: var(--bpg-text);
    font-size: 17px;
    line-height: 1.7;
}


/* PRIORITIES */

.bpg-final__priority-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border: 1px solid var(--bpg-border);
    background: #ffffff;
}

.bpg-final__priority-card {
    padding: 38px;
}

.bpg-final__priority-card + .bpg-final__priority-card {
    border-left: 1px solid var(--bpg-border);
}

.bpg-final__check {
    display: inline-flex;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    border-radius: 50%;
    color: var(--bpg-purple);
    background: var(--bpg-lavender);
    font-weight: 800;
}

.bpg-final__priority-card h3 {
    margin-bottom: 14px;
    font-size: 25px;
    font-weight: 650;
    letter-spacing: -0.025em;
}

.bpg-final__priority-card p {
    min-height: 84px;
    margin-bottom: 25px;
    color: var(--bpg-text);
    font-size: 16px;
    line-height: 1.65;
}

.bpg-final__priority-card ul {
    margin-bottom: 0;
    padding-left: 20px;
    color: var(--bpg-ink);
    font-size: 15px;
    line-height: 1.9;
}


/* REQUIREMENTS */

.bpg-final__requirements-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 90px;
    align-items: start;
}

.bpg-final__requirements-copy > p:not(.bpg-final__eyebrow) {
    max-width: 630px;
    margin: 28px 0;
    color: var(--bpg-text);
    font-size: 17px;
    line-height: 1.75;
}

.bpg-final__requirements-copy blockquote {
    max-width: 650px;
    margin: 38px 0;
    padding: 20px 0 20px 28px;
    border-left: 2px solid var(--bpg-purple);
    color: #4c3e58;
    font-family: Georgia, serif;
    font-size: 24px;
    font-style: italic;
    line-height: 1.55;
}

.bpg-final__requirements-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    border-top: 1px solid var(--bpg-border);
    border-left: 1px solid var(--bpg-border);
}

.bpg-final__requirements-list article {
    min-height: 250px;
    padding: 32px;
    border-right: 1px solid var(--bpg-border);
    border-bottom: 1px solid var(--bpg-border);
}

.bpg-final__requirements-list span {
    display: block;
    margin-bottom: 45px;
    color: var(--bpg-purple);
    font-family: Georgia, serif;
    font-style: italic;
}

.bpg-final__requirements-list h3 {
    margin-bottom: 14px;
    font-size: 23px;
    font-weight: 650;
    letter-spacing: -0.02em;
}

.bpg-final__requirements-list p {
    margin-bottom: 0;
    color: var(--bpg-text);
    font-size: 15px;
    line-height: 1.7;
}


/* PRODUCT CARDS */

.bpg-final__product-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.bpg-final__product-card {
    display: flex;
    min-height: 620px;
    flex-direction: column;
    padding: 32px;
    background: #ffffff;
    border: 1px solid var(--bpg-border);
    border-radius: 14px;
}

.bpg-final__product-card--featured {
    border-color: rgba(105, 52, 245, 0.65);
    box-shadow: 0 18px 45px rgba(69, 33, 130, 0.08);
}

.bpg-final__product-top {
    display: flex;
    gap: 18px;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 38px;
}

.bpg-final__tag {
    padding: 8px 12px;
    border-radius: 999px;
    color: var(--bpg-purple);
    background: var(--bpg-lavender);
    font-size: 12px;
    font-weight: 750;
    line-height: 1.2;
    text-align: center;
}

.bpg-final__product-card h3 {
    margin-bottom: 10px;
    font-size: 31px;
    font-weight: 600;
    letter-spacing: -0.035em;
}

.bpg-final__best-for {
    min-height: 58px;
    margin-bottom: 26px;
    color: var(--bpg-text);
    font-size: 16px;
    line-height: 1.6;
}

.bpg-final__product-detail {
    padding: 22px 0;
    border-top: 1px solid var(--bpg-border);
}

.bpg-final__product-detail strong {
    display: block;
    margin-bottom: 10px;
    color: var(--bpg-purple);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.bpg-final__product-detail p {
    margin-bottom: 0;
    color: var(--bpg-text);
    font-size: 15px;
    line-height: 1.7;
}

.bpg-final__text-link {
    display: inline-flex;
    align-items: center;
    margin-top: auto;
    padding-top: 24px;
    color: var(--bpg-purple) !important;
    font-size: 16px;
    font-weight: 750;
}

.bpg-final__text-link:hover {
    color: var(--bpg-purple-dark) !important;
}

.bpg-final__shortlist-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    justify-content: center;
    margin-top: 42px;
}


/* DARK TEST SECTION */

.bpg-final__test-section {
    padding: 104px 0;
    color: #ffffff;
    background: var(--bpg-dark);
}

.bpg-final__test-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr);
    gap: 100px;
    align-items: start;
}

.bpg-final__test-copy {
    position: sticky;
    top: 30px;
}

.bpg-final__test-copy h2 {
    max-width: 520px;
    margin-bottom: 26px;
    font-size: clamp(44px, 4vw, 64px);
    font-weight: 600;
    letter-spacing: -0.045em;
    line-height: 1.05;
}

.bpg-final__test-copy > p:not(.bpg-final__eyebrow) {
    max-width: 520px;
    margin-bottom: 0;
    color: #ddd1e7;
    font-size: 17px;
    line-height: 1.75;
}

.bpg-final__test-list {
    margin: 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.bpg-final__test-list li {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    padding: 32px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
}

.bpg-final__test-list span {
    color: #a77cff;
    font-family: Georgia, serif;
    font-size: 17px;
    font-style: italic;
}

.bpg-final__test-list p {
    max-width: 640px;
    margin-bottom: 0;
    color: #ffffff;
    font-size: 18px;
    line-height: 1.65;
}


/* WARNING SIGNS */

.bpg-final__warning-list {
    border-top: 1px solid var(--bpg-border);
}

.bpg-final__warning-list div {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 20px;
    align-items: center;
    min-height: 94px;
    padding: 22px 0;
    border-bottom: 1px solid var(--bpg-border);
}

.bpg-final__warning-list span {
    color: var(--bpg-purple);
    font-size: 25px;
    font-weight: 400;
}

.bpg-final__warning-list p {
    margin-bottom: 0;
    color: var(--bpg-ink);
    font-size: 19px;
    line-height: 1.5;
}


/* DECISION DESK */

.bpg-final__decision-desk {
    padding: 82px 0;
    color: #ffffff;
    background: linear-gradient(110deg, #1d0d2a 0%, #3b2052 100%);
}

.bpg-final__decision-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(260px, 0.7fr) auto;
    gap: 60px;
    align-items: center;
}

.bpg-final__decision-grid h2 {
    max-width: 570px;
    margin-bottom: 0;
    font-size: clamp(40px, 4vw, 58px);
    font-weight: 600;
    letter-spacing: -0.04em;
    line-height: 1.05;
}

.bpg-final__decision-grid > p {
    margin-bottom: 0;
    color: #ded3e8;
    font-size: 17px;
    line-height: 1.7;
}

.bpg-final__button--light {
    min-width: 270px;
    color: var(--bpg-dark) !important;
    background: #ffffff;
    border-color: #ffffff;
}

.bpg-final__button--light:hover {
    color: #ffffff !important;
    background: var(--bpg-purple);
    border-color: var(--bpg-purple);
}


/* ACCESSIBILITY */

.bpg-final a:focus-visible {
    outline: 3px solid #c4aaff;
    outline-offset: 4px;
}


/* TABLET */

@media (max-width: 1024px) {
    .bpg-final__shell {
        width: min(100% - 40px, 920px);
    }

    .bpg-final__hero {
        padding-top: 44px;
    }

    .bpg-final__breadcrumbs {
        margin-bottom: 46px;
    }

    .bpg-final__hero-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 50px;
    }

    .bpg-final__hero h1 {
        max-width: 800px;
        font-size: clamp(48px, 7vw, 64px);
    }

    .bpg-final__brief {
        max-width: 760px;
    }

    .bpg-final__process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bpg-final__process-grid a:nth-child(2) {
        border-right: 1px solid var(--bpg-border);
    }

    .bpg-final__process-grid a:nth-child(-n + 2) {
        border-bottom: 1px solid var(--bpg-border);
    }

    .bpg-final__priority-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bpg-final__priority-card + .bpg-final__priority-card {
        border-left: 0;
        border-top: 1px solid var(--bpg-border);
    }

    .bpg-final__priority-card p {
        min-height: 0;
    }

    .bpg-final__requirements-grid,
    .bpg-final__test-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 54px;
    }

    .bpg-final__test-copy {
        position: static;
    }

    .bpg-final__product-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bpg-final__product-card {
        min-height: 0;
    }

    .bpg-final__best-for {
        min-height: 0;
    }

    .bpg-final__decision-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 30px;
    }

    .bpg-final__button--light {
        width: fit-content;
    }
}


/* PHONE */

@media (max-width: 720px) {
    .bpg-final__shell {
        width: calc(100% - 32px);
    }

    .bpg-final__hero {
        padding: 34px 0 64px;
    }

    .bpg-final__breadcrumbs {
        gap: 8px;
        margin-bottom: 38px;
        font-size: 13px;
    }

    .bpg-final__eyebrow {
        margin-bottom: 16px;
        font-size: 12px;
    }

    .bpg-final__hero h1 {
        margin-bottom: 24px;
        font-size: clamp(38px, 11vw, 48px);
        letter-spacing: -0.045em;
        line-height: 1.03;
    }

    .bpg-final__hero-intro {
        font-size: 17px;
        line-height: 1.65;
    }

    .bpg-final__buttons {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .bpg-final__button {
        width: 100%;
        min-height: 58px;
        padding: 14px 18px;
        font-size: 15px;
    }

    .bpg-final__brief {
        padding: 24px 20px;
        border-radius: 12px;
    }

    .bpg-final__brief-row {
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
        min-height: 0;
        padding: 20px 0;
    }

    .bpg-final__brief-row strong {
        text-align: left;
    }

    .bpg-final__process-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bpg-final__process-grid a,
    .bpg-final__process-grid a:nth-child(2),
    .bpg-final__process-grid a:last-child {
        min-height: 82px;
        padding: 20px;
        border-right: 1px solid var(--bpg-border);
        border-bottom: 1px solid var(--bpg-border);
    }

    .bpg-final__section,
    .bpg-final__test-section {
        padding: 72px 0;
    }

    .bpg-final__section-heading {
        grid-template-columns: minmax(0, 1fr);
        gap: 24px;
        margin-bottom: 38px;
    }

    .bpg-final__section-heading h2,
    .bpg-final__requirements-copy h2,
    .bpg-final__test-copy h2 {
        font-size: clamp(36px, 10vw, 46px);
    }

    .bpg-final__section-heading > p {
        font-size: 16px;
    }

    .bpg-final__priority-card {
        padding: 28px 22px;
    }

    .bpg-final__requirements-copy blockquote {
        margin: 30px 0;
        padding-left: 20px;
        font-size: 21px;
    }

    .bpg-final__requirements-list {
        grid-template-columns: minmax(0, 1fr);
    }

    .bpg-final__requirements-list article {
        min-height: 0;
        padding: 28px 22px;
    }

    .bpg-final__requirements-list span {
        margin-bottom: 24px;
    }

    .bpg-final__product-card {
        padding: 26px 22px;
    }

    .bpg-final__product-top {
        align-items: flex-start;
        margin-bottom: 28px;
    }

    .bpg-final__tag {
        max-width: 190px;
    }

    .bpg-final__product-card h3 {
        font-size: 28px;
    }

    .bpg-final__shortlist-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }

    .bpg-final__test-list li {
        grid-template-columns: 40px minmax(0, 1fr);
        gap: 14px;
        padding: 25px 0;
    }

    .bpg-final__test-list p {
        font-size: 16px;
    }

    .bpg-final__warning-list div {
        grid-template-columns: 30px minmax(0, 1fr);
    }

    .bpg-final__warning-list p {
        font-size: 17px;
    }

    .bpg-final__decision-desk {
        padding: 68px 0;
    }

    .bpg-final__decision-grid h2 {
        font-size: clamp(36px, 10vw, 46px);
    }

    .bpg-final__button--light {
        width: 100%;
        min-width: 0;
    }
}
/* FINAL FIX — PLUMBING BUYER GUIDE DECISION BRIEF */

.bpg-final .bpg-hero {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(480px, 0.9fr) !important;
    gap: 64px !important;
    align-items: center !important;
}

.bpg-final .bpg-brief,
.bpg-final .bpg-decision-brief {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
}

.bpg-final .bpg-brief-header,
.bpg-final .bpg-brief-head {
    display: block !important;
    width: 100% !important;
}

.bpg-final .bpg-brief-header *,
.bpg-final .bpg-brief-head *,
.bpg-final .bpg-brief *,
.bpg-final .bpg-decision-brief * {
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    writing-mode: horizontal-tb !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: normal !important;
}

.bpg-final .bpg-brief h2,
.bpg-final .bpg-brief h3,
.bpg-final .bpg-decision-brief h2,
.bpg-final .bpg-decision-brief h3 {
    display: block !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
    margin: 8px 0 28px !important;
}

.bpg-final .bpg-brief-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(180px, 0.75fr) !important;
    gap: 28px !important;
    align-items: center !important;
    width: 100% !important;
}

.bpg-final .bpg-brief-row > * {
    display: block !important;
    width: auto !important;
    text-align: left !important;
}

.bpg-final .bpg-brief-row strong {
    text-align: right !important;
}

/* TABLET */
@media (max-width: 1024px) {
    .bpg-final .bpg-hero {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
}

/* PHONE */
@media (max-width: 600px) {
    .bpg-final .bpg-brief-row {
        grid-template-columns: 1fr !important;
        gap: 8px !important;
    }

    .bpg-final .bpg-brief-row strong {
        text-align: left !important;
    }

    .bpg-final .bpg-brief h2,
    .bpg-final .bpg-decision-brief h2 {
        font-size: 21px !important;
    }
}
/* Fix WordPress empty paragraphs breaking the page grids */
.bpg-final p:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Lock the Decision Brief heading into the correct columns */
.bpg-final__brief-heading > .bpg-final__diamond {
    grid-column: 1;
}

.bpg-final__brief-heading > div {
    grid-column: 2;
    min-width: 0;
}
/* =========================================================
   BIZOPSPICK — JOBBER VS HOUSECALL PRO COMPARISON
   Rescoped from .bopcmp-page to .bopcmphcp-page
   Confirmed against the HTML you supplied.
   Duplicate "hard reset" declarations from the collision
   have been collapsed into single rules — see notes at bottom.
   ========================================================= */

.bopcmphcp-page {
  --bopcmp-purple: #6b3fa0;
  --bopcmp-purple-dark: #4a2a72;
  --bopcmp-purple-light: #8a5cc4;
  --bopcmp-lavender: #f5f1fb;
  --bopcmp-lavender-border: #e2d6f2;
  --bopcmp-plum-dark: #1c1428;
  --bopcmp-ink: #1c1424;
  --bopcmp-ink-muted: #5c5468;
  --bopcmp-white: #ffffff;
  --bopcmp-radius: 10px;
  --bopcmp-shadow: 0 2px 10px rgba(36, 26, 51, 0.06);
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px 64px;
  color: var(--bopcmp-ink);
  font-family: inherit;
  overflow-x: visible !important;
}

.bopcmphcp-page * { box-sizing: border-box; }

/* Breadcrumb */
.bopcmphcp-page .bopcmp-breadcrumb { margin: 24px 0 32px; }
.bopcmphcp-page .bopcmp-breadcrumb ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; font-size: 13px; color: var(--bopcmp-ink-muted); }
.bopcmphcp-page .bopcmp-breadcrumb li:not(:last-child)::after { content: "/"; margin-left: 6px; color: var(--bopcmp-lavender-border); }
.bopcmphcp-page .bopcmp-breadcrumb a { color: var(--bopcmp-purple-dark); text-decoration: none; }
.bopcmphcp-page .bopcmp-breadcrumb a:hover { text-decoration: underline; }

/* Eyebrow */
.bopcmphcp-page .bopcmp-eyebrow { text-transform: uppercase; letter-spacing: 0.08em; font-size: 12px; font-weight: 700; color: var(--bopcmp-purple); margin: 0 0 10px; }

/* Hero */
.bopcmphcp-page .bopcmp-hero { display: grid; grid-template-columns: 1.4fr 1fr; gap: 40px; align-items: start; padding-bottom: 48px; border-bottom: 1px solid var(--bopcmp-lavender-border); }
.bopcmphcp-page h1 { font-size: 38px; line-height: 1.2; font-weight: 700; color: var(--bopcmp-ink); margin: 0 0 16px; }
.bopcmphcp-page h1 .bopcmp-vs { color: var(--bopcmp-purple); }
.bopcmphcp-page h1 .bopcmp-subtitle { display: block; color: var(--bopcmp-purple); font-size: 0.62em; font-weight: 600; margin-top: 14px; }
.bopcmphcp-page .bopcmp-hero-intro { font-size: 16px; line-height: 1.6; color: var(--bopcmp-ink-muted); margin: 0 0 24px; max-width: 60ch; }

.bopcmphcp-page .bopcmp-hero-cta { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 20px; }
.bopcmphcp-page .bopcmp-btn { display: inline-block; padding: 13px 24px; border-radius: 6px; font-weight: 600; font-size: 15px; text-decoration: none; transition: transform 0.15s ease, box-shadow 0.15s ease; }
.bopcmphcp-page .bopcmp-btn-primary { background: var(--bopcmp-purple); color: var(--bopcmp-white); }
.bopcmphcp-page .bopcmp-btn-primary:hover { background: var(--bopcmp-purple-dark); transform: translateY(-1px); }
.bopcmphcp-page .bopcmp-btn-secondary { background: var(--bopcmp-white); color: var(--bopcmp-purple-dark); border: 1px solid var(--bopcmp-lavender-border); }
.bopcmphcp-page .bopcmp-btn-secondary:hover { border-color: var(--bopcmp-purple); transform: translateY(-1px); }

.bopcmphcp-page .bopcmp-editorial-note { font-size: 13px; color: var(--bopcmp-ink-muted); border-left: 2px solid var(--bopcmp-lavender-border); padding-left: 12px; margin: 0; }
.bopcmphcp-page .bopcmp-editorial-note a { color: var(--bopcmp-purple-dark); }

/* Decision sheet */
.bopcmphcp-page .bopcmp-decision-sheet { background: var(--bopcmp-lavender); border: 1px solid var(--bopcmp-lavender-border); border-radius: var(--bopcmp-radius); padding: 28px; box-shadow: var(--bopcmp-shadow); position: sticky; top: 24px; }
.bopcmphcp-page .bopcmp-decision-sheet-label { text-transform: uppercase; font-size: 11px; letter-spacing: 0.08em; font-weight: 700; color: var(--bopcmp-purple); margin: 0 0 10px; }
.bopcmphcp-page .bopcmp-decision-sheet-title { font-size: 20px; font-weight: 700; margin: 0 0 6px; }
.bopcmphcp-page .bopcmp-decision-sheet-title span { color: var(--bopcmp-purple); font-weight: 700; font-size: 0.75em; margin: 0 6px; }
.bopcmphcp-page .bopcmp-decision-sheet-result { font-size: 14px; font-weight: 600; color: var(--bopcmp-purple-dark); margin: 0 0 20px; }
.bopcmphcp-page .bopcmp-decision-sheet dl { margin: 0; }
.bopcmphcp-page .bopcmp-decision-row { padding: 14px 0; border-top: 1px solid var(--bopcmp-lavender-border); }
.bopcmphcp-page .bopcmp-decision-row:first-child { border-top: none; padding-top: 0; }
.bopcmphcp-page .bopcmp-decision-row dt { font-weight: 700; font-size: 14px; margin: 0 0 4px; }
.bopcmphcp-page .bopcmp-decision-row dd { margin: 0; font-size: 13.5px; line-height: 1.5; color: var(--bopcmp-ink-muted); }
.bopcmphcp-page .bopcmp-decision-tradeoff dt { color: var(--bopcmp-purple-dark); }

/* Sections */
.bopcmphcp-page .bopcmp-section { padding: 56px 0; border-bottom: 1px solid var(--bopcmp-lavender-border); }
.bopcmphcp-page h2 { font-size: 27px; font-weight: 700; margin: 0 0 24px; color: var(--bopcmp-ink); }
.bopcmphcp-page h3 { font-size: 18px; font-weight: 700; margin: 0 0 10px; }
.bopcmphcp-page p { font-size: 15px; line-height: 1.65; color: var(--bopcmp-ink-muted); }
.bopcmphcp-page .bopcmp-section-intro { font-size: 15px; color: var(--bopcmp-ink-muted); max-width: 70ch; margin: -8px 0 24px; }

/* Quick verdict cards */
.bopcmphcp-page .bopcmp-verdict-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; align-items: start; grid-auto-rows: min-content; }
.bopcmphcp-page .bopcmp-verdict-card { background: var(--bopcmp-white); border: 1px solid var(--bopcmp-lavender-border); border-radius: var(--bopcmp-radius); padding: 22px; box-shadow: var(--bopcmp-shadow); height: auto; min-height: 0; max-height: none; align-self: start; }
.bopcmphcp-page .bopcmp-verdict-card h3 { color: var(--bopcmp-purple-dark); font-size: 16px; }
.bopcmphcp-page .bopcmp-verdict-card p { margin: 0; font-size: 14px; }
.bopcmphcp-page .bopcmp-verdict-card-neutral { background: var(--bopcmp-lavender); }

/* Product fit */
.bopcmphcp-page .bopcmp-fit-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.bopcmphcp-page .bopcmp-fit-card { background: var(--bopcmp-white); border: 1px solid var(--bopcmp-lavender-border); border-radius: var(--bopcmp-radius); padding: 28px; box-shadow: var(--bopcmp-shadow); }
.bopcmphcp-page .bopcmp-fit-card h3 { color: var(--bopcmp-purple-dark); font-size: 20px; margin-bottom: 16px; }
.bopcmphcp-page .bopcmp-fit-card p { font-size: 14px; margin: 0 0 12px; }
.bopcmphcp-page .bopcmp-fit-card p strong { color: var(--bopcmp-ink); }
.bopcmphcp-page .bopcmp-link-cta { display: inline-block; margin-top: 8px; color: var(--bopcmp-purple); font-weight: 700; font-size: 14px; text-decoration: none; }
.bopcmphcp-page .bopcmp-link-cta:hover { color: var(--bopcmp-purple-dark); text-decoration: underline; }

/* Strengths / tradeoffs */
.bopcmphcp-page .bopcmp-swot-block { margin-bottom: 32px; }
.bopcmphcp-page .bopcmp-swot-block:last-child { margin-bottom: 0; }
.bopcmphcp-page .bopcmp-swot-block h3 { color: var(--bopcmp-purple-dark); }
.bopcmphcp-page .bopcmp-swot-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.bopcmphcp-page .bopcmp-swot-col { border: 1px solid var(--bopcmp-lavender-border); border-radius: var(--bopcmp-radius); padding: 20px; background: var(--bopcmp-white); }
.bopcmphcp-page .bopcmp-swot-label { text-transform: uppercase; font-size: 11px; letter-spacing: 0.06em; font-weight: 700; margin: 0 0 12px; color: var(--bopcmp-ink-muted); }
.bopcmphcp-page .bopcmp-swot-pros { border-top: 3px solid var(--bopcmp-purple); }
.bopcmphcp-page .bopcmp-swot-cons { border-top: 3px solid var(--bopcmp-lavender-border); }
.bopcmphcp-page .bopcmp-swot-col ul { margin: 0; padding-left: 18px; }
.bopcmphcp-page .bopcmp-swot-col li { font-size: 14px; color: var(--bopcmp-ink-muted); margin-bottom: 8px; line-height: 1.5; }

/* Scenarios */
.bopcmphcp-page .bopcmp-scenario-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; align-items: start; grid-auto-rows: min-content; }
.bopcmphcp-page .bopcmp-scenario-card { background: var(--bopcmp-lavender); border: 1px solid var(--bopcmp-lavender-border); border-radius: var(--bopcmp-radius); padding: 20px; height: auto; min-height: 0; max-height: none; align-self: start; }
.bopcmphcp-page .bopcmp-scenario-winner { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--bopcmp-purple); margin: 0 0 8px; }
.bopcmphcp-page .bopcmp-scenario-card h3 { font-size: 15px; margin-bottom: 8px; }
.bopcmphcp-page .bopcmp-scenario-card p { font-size: 13.5px; margin: 0; }

/* Pricing */
.bopcmphcp-page .bopcmp-pricing p { max-width: 70ch; }

/* Full-width dark plum bands (Final Verdict + BizOpsPick Standard) */
.bopcmphcp-page .bopcmp-band { background-color: var(--bopcmp-plum-dark) !important; border-radius: 16px; padding: 0; box-sizing: border-box; width: auto; margin: 0; position: static; left: auto; }
.bopcmphcp-page .bopcmp-band-inner { max-width: 1132px; margin: 0 auto; padding: 44px 40px; background-color: transparent !important; }
.bopcmphcp-page .bopcmp-band .bopcmp-eyebrow { color: var(--bopcmp-purple-light) !important; }
.bopcmphcp-page .bopcmp-band h2 { color: var(--bopcmp-white) !important; }
.bopcmphcp-page .bopcmp-band p { color: #cfc3e0 !important; }

/* BizOpsPick Standard grid */
.bopcmphcp-page .bopcmp-standard-grid { display: grid; grid-template-columns: repeat(5, 1fr); grid-auto-rows: auto; gap: 18px; margin: 0 0 28px; }
.bopcmphcp-page .bopcmp-standard-item { min-width: 0; height: auto; min-height: 0; max-height: none; }
.bopcmphcp-page .bopcmp-standard-item dt { color: var(--bopcmp-purple-light); font-weight: 700; font-size: 13px; text-transform: uppercase; letter-spacing: 0.04em; margin: 0 0 8px; display: block; }
.bopcmphcp-page .bopcmp-standard-item dd { color: #d8cfe8; font-size: 13.5px; line-height: 1.5; margin: 0; display: block; overflow-wrap: break-word; word-break: normal; height: auto; min-height: 0; max-height: none; }
.bopcmphcp-page .bopcmp-disclosure { margin-top: 0; }

/* Feature comparison rows (generic tag-a / tag-b, no brand-specific class names) */
.bopcmphcp-page .bopcmp-feature-grid { display: flex; flex-direction: column; gap: 12px; }
.bopcmphcp-page .bopcmp-feature-row { border: 1px solid var(--bopcmp-lavender-border); border-radius: var(--bopcmp-radius); padding: 18px 22px; background: var(--bopcmp-white); box-shadow: var(--bopcmp-shadow); }
.bopcmphcp-page .bopcmp-feature-cat { font-size: 13px; font-weight: 700; letter-spacing: 0.03em; text-transform: uppercase; color: var(--bopcmp-ink-muted); margin: 0 0 12px; }
.bopcmphcp-page .bopcmp-feature-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.bopcmphcp-page .bopcmp-feature-pair p { font-size: 14.5px; line-height: 1.5; color: var(--bopcmp-ink); margin: 0; }
.bopcmphcp-page .bopcmp-feature-tag { display: inline-block; font-size: 11.5px; font-weight: 700; padding: 2px 9px; border-radius: 100px; margin-right: 8px; vertical-align: middle; }
.bopcmphcp-page .bopcmp-tag-a { background: var(--bopcmp-lavender); color: var(--bopcmp-purple); }
.bopcmphcp-page .bopcmp-tag-b { background: #efefef; color: var(--bopcmp-ink-muted); }

/* Responsive */
@media (max-width: 900px) {
  .bopcmphcp-page .bopcmp-hero { grid-template-columns: 1fr; }
  .bopcmphcp-page .bopcmp-decision-sheet { position: static; }
  .bopcmphcp-page .bopcmp-verdict-grid,
  .bopcmphcp-page .bopcmp-fit-grid,
  .bopcmphcp-page .bopcmp-swot-grid,
  .bopcmphcp-page .bopcmp-scenario-grid,
  .bopcmphcp-page .bopcmp-standard-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
  .bopcmphcp-page { padding: 0 16px 48px; }
  .bopcmphcp-page h1 { font-size: 28px; }
  .bopcmphcp-page h2 { font-size: 22px; }
  .bopcmphcp-page .bopcmp-verdict-grid,
  .bopcmphcp-page .bopcmp-fit-grid,
  .bopcmphcp-page .bopcmp-swot-grid,
  .bopcmphcp-page .bopcmp-scenario-grid,
  .bopcmphcp-page .bopcmp-standard-grid { grid-template-columns: 1fr; }
  .bopcmphcp-page .bopcmp-band-inner { padding: 32px 16px; }
  .bopcmphcp-page .bopcmp-feature-row { padding: 16px 18px; }
  .bopcmphcp-page .bopcmp-feature-pair { grid-template-columns: 1fr; gap: 10px; }
  .bopcmphcp-page .bopcmp-feature-tag { margin-bottom: 4px; }
}

/* =========================================================
   NOTES ON REMOVED DUPLICATES (see message for full list)
   - This system's ".bopcmp-standard-grid", ".bopcmp-band",
     ".bopcmp-band-inner", hero-subtitle, and verdict/scenario
     card rules were originally declared 2–3 times each, each
     time with growing !important flags, purely to out-rank
     the other two systems' unscoped rules. Now that this
     block only matches .bopcmphcp-page, one clean declaration
     per rule is enough — the !important flags on non-color
     properties (height/min-height/display) were removed;
     the ones on color/background were kept since the design
     intentionally forces dark-band text colors regardless of
     link/visited state.
   ========================================================= */
/* =========================================================
   BIZOPSPICK — JOBBER VS WORKIZ COMPARISON
   Rescoped from .bopcmp-page to .bopcmpwk-page
   ========================================================= */

.bopcmpwk-page {
    --bopcmp-purple: #6E3FBD;
    --bopcmp-purple-dark: #55309A;
    --bopcmp-black: #1A1A1A;
    --bopcmp-gray: #4B4B4B;
    --bopcmp-lavender: #F5F1FC;
    --bopcmp-border: #E5DEF3;
    --bopcmp-white: #FFFFFF;

    max-width: 1200px;
    margin: 0 auto;
    padding: 0 24px 80px;
    color: var(--bopcmp-black);
    font-family: inherit;
}

.bopcmpwk-page,
.bopcmpwk-page * {
    box-sizing: border-box;
}

/* Breadcrumb */

.bopcmpwk-page .bopcmp-breadcrumb {
    padding: 24px 0 12px;
    font-size: 14px;
    color: var(--bopcmp-gray);
}

.bopcmpwk-page .bopcmp-breadcrumb a {
    color: var(--bopcmp-gray);
    text-decoration: none;
}

.bopcmpwk-page .bopcmp-breadcrumb a:hover {
    color: var(--bopcmp-purple);
}

.bopcmpwk-page .bopcmp-crumb-sep {
    margin: 0 6px;
    color: #B7ADC9;
}

.bopcmpwk-page .bopcmp-crumb-current {
    color: var(--bopcmp-black);
    font-weight: 600;
}

/* Eyebrow */

.bopcmpwk-page .bopcmp-eyebrow {
    color: var(--bopcmp-purple);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.06em;
    margin: 0 0 12px;
}

.bopcmpwk-page .bopcmp-eyebrow-muted {
    color: var(--bopcmp-gray);
}

/* Hero */

.bopcmpwk-page .bopcmp-hero {
    display: grid;
    grid-template-columns: 1.35fr 1fr;
    gap: 48px;
    padding: 32px 0 56px;
    align-items: start;
}

.bopcmpwk-page .bopcmp-h1 {
    font-size: 44px;
    font-weight: 700;
    line-height: 1.15;
    margin: 0 0 6px;
}

.bopcmpwk-page .bopcmp-vs {
    color: var(--bopcmp-purple);
    font-weight: 700;
}

.bopcmpwk-page .bopcmp-subtitle {
    font-size: 26px;
    font-weight: 700;
    color: var(--bopcmp-purple);
    margin: 0 0 20px;
}

.bopcmpwk-page .bopcmp-hero .bopcmp-subtitle {
    font-weight: 500 !important;
    font-size: 24px !important;
    color: var(--bopcmp-gray) !important;
}

.bopcmpwk-page .bopcmp-intro {
    font-size: 16px;
    line-height: 1.65;
    color: var(--bopcmp-gray);
    margin: 0 0 28px;
    max-width: 60ch;
}

/* Buttons */

.bopcmpwk-page .bopcmp-btn-group {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 28px;
}

.bopcmpwk-page .bopcmp-btn {
    display: inline-block;
    padding: 14px 26px;
    border-radius: 8px;
    font-weight: 600;
    font-size: 16px;
    text-decoration: none;
    border: 1.5px solid transparent;
    transition: opacity 0.15s ease;
}

.bopcmpwk-page .bopcmp-btn-primary {
    background: var(--bopcmp-purple);
    color: var(--bopcmp-white);
}

.bopcmpwk-page .bopcmp-btn-primary:hover {
    opacity: 0.9;
    color: var(--bopcmp-white);
}

.bopcmpwk-page .bopcmp-btn-secondary {
    background: var(--bopcmp-white);
    color: var(--bopcmp-black);
    border-color: var(--bopcmp-border);
}

.bopcmpwk-page .bopcmp-btn-secondary:hover {
    border-color: var(--bopcmp-purple);
    color: var(--bopcmp-purple);
}

.bopcmpwk-page .bopcmp-trust-note {
    font-size: 14px;
    color: var(--bopcmp-gray);
    border-top: 1px solid var(--bopcmp-border);
    padding-top: 20px;
    max-width: 60ch;
}

/* Decision sheet */

.bopcmpwk-page .bopcmp-decision-sheet {
    background: var(--bopcmp-lavender);
    border: 1px solid var(--bopcmp-border);
    border-radius: 16px;
    padding: 32px;
}

.bopcmpwk-page .bopcmp-decision-title {
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 16px;
}

.bopcmpwk-page .bopcmp-decision-summary {
    font-size: 15px;
    font-weight: 600;
    color: var(--bopcmp-gray);
    margin: 0 0 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--bopcmp-border);
}

.bopcmpwk-page .bopcmp-decision-row {
    padding-bottom: 18px;
    margin-bottom: 18px;
    border-bottom: 1px solid var(--bopcmp-border);
}

.bopcmpwk-page .bopcmp-decision-row-last {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.bopcmpwk-page .bopcmp-decision-label {
    font-weight: 700;
    font-size: 15px;
    margin: 0 0 6px;
}

.bopcmpwk-page .bopcmp-decision-text {
    font-size: 14.5px;
    line-height: 1.55;
    color: var(--bopcmp-gray);
    margin: 0;
}

/* Sections */

.bopcmpwk-page .bopcmp-section {
    padding: 48px 0;
    border-top: 1px solid var(--bopcmp-border);
}

.bopcmpwk-page .bopcmp-section-title {
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 20px;
}

.bopcmpwk-page .bopcmp-section-intro {
    font-size: 15px;
    color: var(--bopcmp-gray);
    max-width: 70ch;
    margin: -8px 0 24px;
}

/* Grids */

.bopcmpwk-page .bopcmp-quick-grid,
.bopcmpwk-page .bopcmp-fit-grid,
.bopcmpwk-page .bopcmp-strengths-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.bopcmpwk-page .bopcmp-quick-card,
.bopcmpwk-page .bopcmp-fit-card,
.bopcmpwk-page .bopcmp-strengths-card {
    border: 1px solid var(--bopcmp-border);
    border-radius: 14px;
    padding: 26px;
    background: var(--bopcmp-white);
}

.bopcmpwk-page .bopcmp-quick-name,
.bopcmpwk-page .bopcmp-fit-name,
.bopcmpwk-page .bopcmp-strengths-name {
    font-size: 18px;
    font-weight: 700;
    color: var(--bopcmp-purple) !important;
    margin: 0 0 10px;
}

.bopcmpwk-page .bopcmp-quick-text {
    font-size: 15px;
    line-height: 1.6;
    color: var(--bopcmp-gray);
    margin: 0;
}

.bopcmpwk-page .bopcmp-fit-row {
    font-size: 14.5px;
    line-height: 1.6;
    color: var(--bopcmp-gray);
    margin: 0 0 10px;
}

.bopcmpwk-page .bopcmp-fit-row span {
    font-weight: 700;
    color: var(--bopcmp-black);
}

/* Scenarios */

.bopcmpwk-page .bopcmp-scenario-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.bopcmpwk-page .bopcmp-scenario-card {
    background: #f3efff;
    border: 1px solid #ded4f7;
    border-radius: 12px;
    padding: 20px;
}

.bopcmpwk-page .bopcmp-scenario-title {
    font-weight: 700;
    font-size: 15px;
    margin: 0 0 8px;
}

.bopcmpwk-page .bopcmp-scenario-pick {
    display: inline-block;
    color: var(--bopcmp-purple) !important;
    font-weight: 700 !important;
    font-size: 13px;
    margin: 0 0 10px;
}

.bopcmpwk-page .bopcmp-scenario-text {
    font-size: 14px;
    line-height: 1.55;
    color: var(--bopcmp-gray);
    margin: 0;
}

/* Strengths */

.bopcmpwk-page .bopcmp-strengths-label {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.03em;
    margin: 16px 0 8px;
}

.bopcmpwk-page .bopcmp-label-pro {
    color: #4f6fc7;
}

.bopcmpwk-page .bopcmp-label-con {
    color: var(--bopcmp-purple-dark);
}

.bopcmpwk-page .bopcmp-list {
    margin: 0;
    padding-left: 20px;
    font-size: 14.5px;
    line-height: 1.6;
    color: var(--bopcmp-gray);
}

.bopcmpwk-page .bopcmp-list li {
    margin-bottom: 6px;
}

/* Pricing */

.bopcmpwk-page .bopcmp-pricing-note {
    background: var(--bopcmp-lavender);
    border: 1px solid var(--bopcmp-border);
    border-radius: 10px;
    padding: 18px 22px;
    font-size: 14.5px;
    color: var(--bopcmp-gray);
}

/* Final */

.bopcmpwk-page .bopcmp-final {
    font-size: 15.5px;
    line-height: 1.7;
    color: var(--bopcmp-gray);
    max-width: 80ch;
    margin: 0 0 18px;
    background-color: #FFFFFF;
}

.bopcmpwk-page .bopcmp-cta-group {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 8px;
}

/* BizOpsPick standard */

.bopcmpwk-page .bopcmp-standard {
    border-top: 1px solid var(--bopcmp-border);
}

.bopcmpwk-page .bopcmp-standard-text {
    font-size: 14px;
    color: var(--bopcmp-gray);
}

.bopcmpwk-page .bopcmp-standard-text a {
    color: var(--bopcmp-purple);
}

/* Verdict block */

.bopcmpwk-page .bopcmp-verdict-block {
    border-top: none;
    padding: 0;
    margin: 48px 0;
}

.bopcmpwk-page .bopcmp-verdict-inner {
    background: #8a63d2;
    border-radius: 16px;
    padding: 40px 44px;
}

.bopcmpwk-page .bopcmp-verdict-title {
    color: var(--bopcmp-white);
    margin-bottom: 16px;
}

.bopcmpwk-page .bopcmp-verdict-block .bopcmp-final {
    color: #EDE6FA;
    background-color: transparent !important;
    padding: 0;
    margin: 0 0 14px;
}

.bopcmpwk-page .bopcmp-verdict-block .bopcmp-final:last-of-type {
    margin-bottom: 24px;
}

.bopcmpwk-page .bopcmp-btn-white {
    background: var(--bopcmp-white);
    color: var(--bopcmp-purple);
}

.bopcmpwk-page .bopcmp-btn-white:hover {
    opacity: 0.9;
    color: var(--bopcmp-purple);
}

.bopcmpwk-page .bopcmp-btn-outline-white {
    background: transparent;
    color: var(--bopcmp-white);
    border-color: rgba(255,255,255,0.5);
}

.bopcmpwk-page .bopcmp-btn-outline-white:hover {
    border-color: var(--bopcmp-white);
    color: var(--bopcmp-white);
}

/* Feature comparison */

.bopcmpwk-page .bopcmp-feature-grid {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bopcmpwk-page .bopcmp-feature-row {
    border: 1px solid var(--bopcmp-border);
    border-radius: 12px;
    padding: 18px 22px;
    background: var(--bopcmp-white);
}

.bopcmpwk-page .bopcmp-feature-cat {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: var(--bopcmp-gray);
    margin: 0 0 12px;
}

.bopcmpwk-page .bopcmp-feature-pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.bopcmpwk-page .bopcmp-feature-pair p {
    font-size: 14.5px;
    line-height: 1.5;
    color: var(--bopcmp-black);
    margin: 0;
}

.bopcmpwk-page .bopcmp-feature-tag {
    display: inline-block;
    font-size: 11.5px;
    font-weight: 700;
    padding: 2px 9px;
    border-radius: 100px;
    margin-right: 8px;
    vertical-align: middle;
}

.bopcmpwk-page .bopcmp-tag-jobber {
    background: var(--bopcmp-lavender);
    color: var(--bopcmp-purple);
}

.bopcmpwk-page .bopcmp-tag-workiz {
    background: #EFEFEF;
    color: var(--bopcmp-gray);
}

/* Tablet */

@media (max-width: 992px) {

    .bopcmpwk-page .bopcmp-hero {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .bopcmpwk-page .bopcmp-scenario-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Mobile */

@media (max-width: 680px) {

    .bopcmpwk-page {
        padding: 0 16px 60px;
    }

    .bopcmpwk-page .bopcmp-h1 {
        font-size: 32px;
    }

    .bopcmpwk-page .bopcmp-subtitle,
    .bopcmpwk-page .bopcmp-hero .bopcmp-subtitle {
        font-size: 20px !important;
    }

    .bopcmpwk-page .bopcmp-quick-grid,
    .bopcmpwk-page .bopcmp-fit-grid,
    .bopcmpwk-page .bopcmp-strengths-grid,
    .bopcmpwk-page .bopcmp-scenario-grid {
        grid-template-columns: 1fr;
    }

    .bopcmpwk-page .bopcmp-decision-sheet {
        padding: 22px;
    }

    .bopcmpwk-page .bopcmp-btn {
        width: 100%;
        text-align: center;
    }

    .bopcmpwk-page .bopcmp-btn-group,
    .bopcmpwk-page .bopcmp-cta-group {
        flex-direction: column;
    }

    .bopcmpwk-page .bopcmp-verdict-inner {
        padding: 28px 24px;
    }

    .bopcmpwk-page .bopcmp-feature-row {
        padding: 16px 18px;
    }

    .bopcmpwk-page .bopcmp-feature-pair {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .bopcmpwk-page .bopcmp-feature-tag {
        margin-bottom: 4px;
    }
}
.bopcmp-jobber-zenmaid {
  --bop-purple: #6D4AE8;
  --bop-purple-dark: #5936C9;
  --bop-purple-deep: #4B2DB8;
  --bop-lavender: #F4F1FC;
  --bop-lavender-border: #E3DBF7;
  --bop-text: #1C1730;
  --bop-text-muted: #5B5570;
  --bop-white: #FFFFFF;

  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color: var(--bop-text);
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px 64px;
}

/* Hero */
.bopcmp-jobber-zenmaid .bopcmp-hero {
  padding: 56px 0 40px;
}

.bopcmp-jobber-zenmaid .bopcmp-hero-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 48px;
  align-items: start;
}

.bopcmp-jobber-zenmaid .bopcmp-eyebrow {
  color: var(--bop-purple);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin: 0 0 12px;
}

.bopcmp-jobber-zenmaid .bopcmp-hero-title {
  font-size: 40px;
  font-weight: 700;
  line-height: 1.15;
  margin: 0 0 4px;
}

.bopcmp-jobber-zenmaid .bopcmp-vs {
  color: var(--bop-purple);
}

.bopcmp-jobber-zenmaid .bopcmp-hero-tagline {
  font-size: 20px;
  font-weight: 600;
  color: var(--bop-text-muted);
  margin: 0 0 20px;
}

.bopcmp-jobber-zenmaid .bopcmp-hero-intro {
  font-size: 16px;
  line-height: 1.65;
  color: var(--bop-text-muted);
  margin: 0 0 28px;
  max-width: 60ch;
}

.bopcmp-jobber-zenmaid .bopcmp-hero-actions {
  display: flex;
  gap: 14px;
  margin-bottom: 24px;
}

.bopcmp-jobber-zenmaid .bopcmp-hero-byline {
  font-size: 13px;
  color: var(--bop-text-muted);
  margin: 0;
}

/* Buttons */
.bopcmp-jobber-zenmaid .bopcmp-btn {
  display: inline-block;
  padding: 13px 26px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.1s ease;
}

.bopcmp-jobber-zenmaid .bopcmp-btn:hover {
  transform: translateY(-1px);
}

.bopcmp-jobber-zenmaid .bopcmp-btn-primary {
  background: var(--bop-purple);
  color: var(--bop-white);
  border: 1px solid var(--bop-purple);
}

.bopcmp-jobber-zenmaid .bopcmp-btn-primary:hover {
  background: var(--bop-purple-dark);
  border-color: var(--bop-purple-dark);
}

.bopcmp-jobber-zenmaid .bopcmp-btn-secondary {
  background: var(--bop-white);
  color: var(--bop-text);
  border: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-zenmaid .bopcmp-btn-secondary:hover {
  border-color: var(--bop-purple);
  color: var(--bop-purple);
}

.bopcmp-jobber-zenmaid .bopcmp-btn-white {
  background: var(--bop-white);
  color: var(--bop-purple-deep);
  border: 1px solid var(--bop-white);
}

.bopcmp-jobber-zenmaid .bopcmp-btn-white:hover {
  background: rgba(255, 255, 255, 0.9);
}

.bopcmp-jobber-zenmaid .bopcmp-btn-outline-white {
  background: transparent;
  color: var(--bop-white);
  border: 1px solid rgba(255, 255, 255, 0.6);
}

.bopcmp-jobber-zenmaid .bopcmp-btn-outline-white:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: var(--bop-white);
}

/* Decision card */
.bopcmp-jobber-zenmaid .bopcmp-decision-card {
  background: var(--bop-lavender);
  border: 1px solid var(--bop-lavender-border);
  border-radius: 16px;
  padding: 32px;
}

.bopcmp-jobber-zenmaid .bopcmp-decision-eyebrow {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--bop-text-muted);
  margin: 0 0 10px;
}

.bopcmp-jobber-zenmaid .bopcmp-decision-title {
  font-size: 22px;
  font-weight: 700;
  margin: 0 0 8px;
}

.bopcmp-jobber-zenmaid .bopcmp-decision-title span {
  color: var(--bop-purple);
}

.bopcmp-jobber-zenmaid .bopcmp-decision-lede {
  font-size: 14px;
  color: var(--bop-text-muted);
  margin: 0 0 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-zenmaid .bopcmp-decision-block {
  padding: 16px 0;
  border-bottom: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-zenmaid .bopcmp-decision-block:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.bopcmp-jobber-zenmaid .bopcmp-decision-block h3 {
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 6px;
}

.bopcmp-jobber-zenmaid .bopcmp-decision-block p {
  font-size: 14px;
  line-height: 1.55;
  color: var(--bop-text-muted);
  margin: 0;
}

/* Sections */
.bopcmp-jobber-zenmaid .bopcmp-section {
  padding: 40px 0;
}

.bopcmp-jobber-zenmaid .bopcmp-section-alt {
  background: var(--bop-lavender);
  border-radius: 16px;
  padding: 40px 32px;
  margin: 8px 0;
}

.bopcmp-jobber-zenmaid .bopcmp-section-title {
  font-size: 26px;
  font-weight: 700;
  margin: 0 0 16px;
}

.bopcmp-jobber-zenmaid .bopcmp-section-intro,
.bopcmp-jobber-zenmaid .bopcmp-section-body {
  font-size: 15px;
  line-height: 1.7;
  color: var(--bop-text-muted);
  margin: 0 0 16px;
  max-width: 78ch;
}

/* Pills */
.bopcmp-jobber-zenmaid .bopcmp-pill {
  display: inline-block;
  font-size: 14px;
  font-weight: 700;
  padding: 4px 12px;
  border-radius: 999px;
  white-space: nowrap;
}

.bopcmp-jobber-zenmaid .bopcmp-pill-jobber {
  background: #8467EC;
  color: var(--bop-white);
  border: 1px solid #8467EC;
}

.bopcmp-jobber-zenmaid .bopcmp-pill-zenmaid {
  background: var(--bop-white);
  color: var(--bop-purple-dark);
  border: 1px solid var(--bop-purple);
}

/* Compare table */
.bopcmp-jobber-zenmaid .bopcmp-compare-list {
  border: 1px solid var(--bop-lavender-border);
  border-radius: 14px;
  overflow: hidden;
}

.bopcmp-jobber-zenmaid .bopcmp-compare-row {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch;
  padding: 0;
  border-bottom: 1px solid var(--bop-lavender-border);
  background: var(--bop-white);
}

.bopcmp-jobber-zenmaid .bopcmp-compare-row:last-child {
  border-bottom: none;
}

.bopcmp-jobber-zenmaid .bopcmp-compare-row:nth-child(even) {
  background: var(--bop-lavender);
}

.bopcmp-jobber-zenmaid .bopcmp-compare-label {
  flex: 0 0 150px !important;
  display: flex;
  align-items: center;
  padding: 18px 20px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--bop-text-muted);
  border-right: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-zenmaid .bopcmp-compare-col {
  flex: 1 1 0 !important;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 24px;
}

.bopcmp-jobber-zenmaid .bopcmp-compare-col:first-of-type {
  border-right: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-zenmaid .bopcmp-compare-col .bopcmp-pill {
  flex-shrink: 0;
}

.bopcmp-jobber-zenmaid .bopcmp-compare-col p {
  margin: 0 !important;
  font-size: 15px;
  font-weight: 500;
}

/* Verdict / edge cards */
.bopcmp-jobber-zenmaid .bopcmp-verdict-grid,
.bopcmp-jobber-zenmaid .bopcmp-edge-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.bopcmp-jobber-zenmaid .bopcmp-verdict-card,
.bopcmp-jobber-zenmaid .bopcmp-edge-card {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-radius: 14px;
  padding: 24px;
}

.bopcmp-jobber-zenmaid .bopcmp-verdict-name {
  font-size: 17px;
  font-weight: 700;
  color: var(--bop-purple);
  margin: 0 0 10px;
}

.bopcmp-jobber-zenmaid .bopcmp-verdict-card p:last-child,
.bopcmp-jobber-zenmaid .bopcmp-edge-card p:last-child {
  font-size: 15px;
  line-height: 1.6;
  color: var(--bop-text-muted);
  margin: 0;
}

/* Feature cols */
.bopcmp-jobber-zenmaid .bopcmp-feature-cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.bopcmp-jobber-zenmaid .bopcmp-feature-card {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-radius: 14px;
  padding: 22px;
}

.bopcmp-jobber-zenmaid .bopcmp-feature-card .bopcmp-pill {
  margin-bottom: 12px;
}

.bopcmp-jobber-zenmaid .bopcmp-feature-card p {
  font-size: 15px;
  line-height: 1.65;
  color: var(--bop-text-muted);
  margin: 0;
}

/* Pros & cons */
.bopcmp-jobber-zenmaid .bopcmp-proscons-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.bopcmp-jobber-zenmaid .bopcmp-proscons-card {
  border-radius: 14px;
  padding: 22px 24px;
  border: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-zenmaid .bopcmp-pros {
  background: var(--bop-lavender);
}

.bopcmp-jobber-zenmaid .bopcmp-cons {
  background: var(--bop-white);
}

.bopcmp-jobber-zenmaid .bopcmp-proscons-heading {
  font-size: 16px;
  font-weight: 700;
  margin: 0 0 12px;
}

.bopcmp-jobber-zenmaid .bopcmp-list {
  margin: 0;
  padding-left: 20px;
}

.bopcmp-jobber-zenmaid .bopcmp-list li {
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--bop-text-muted);
}

/* Note box */
.bopcmp-jobber-zenmaid .bopcmp-note-box {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-radius: 12px;
  padding: 20px 24px;
  font-size: 14.5px;
  color: var(--bop-text-muted);
  margin-top: 8px;
}

/* Final CTA */
.bopcmp-jobber-zenmaid .bopcmp-final-cta {
  background: linear-gradient(135deg, var(--bop-purple-dark), var(--bop-purple-deep));
  border-radius: 20px;
  padding: 48px 40px;
  margin-top: 24px;
  color: var(--bop-white);
}

.bopcmp-jobber-zenmaid .bopcmp-final-title {
  font-size: 28px;
  font-weight: 700;
  margin: 0 0 18px;
}

.bopcmp-jobber-zenmaid .bopcmp-final-text {
  font-size: 15.5px;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.88);
  margin: 0 0 16px;
  max-width: 80ch;
}

.bopcmp-jobber-zenmaid .bopcmp-final-actions {
  display: flex;
  gap: 14px;
  margin-top: 24px;
}

/* Tablet */
@media (max-width: 1024px) {
  .bopcmp-jobber-zenmaid {
    padding: 0 20px 48px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-hero-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-hero-title {
    font-size: 34px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-verdict-grid,
  .bopcmp-jobber-zenmaid .bopcmp-edge-grid,
  .bopcmp-jobber-zenmaid .bopcmp-feature-cols,
  .bopcmp-jobber-zenmaid .bopcmp-proscons-grid {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-compare-label {
    flex-basis: 120px !important;
    padding: 14px 14px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-compare-col {
    padding: 14px 16px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-section-alt {
    padding: 32px 24px;
  }
}

/* Mobile */
@media (max-width: 640px) {
  .bopcmp-jobber-zenmaid {
    padding: 0 16px 40px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-hero {
    padding: 32px 0 24px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-hero-title {
    font-size: 28px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-hero-tagline {
    font-size: 17px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-hero-intro {
    font-size: 15px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-hero-actions {
    flex-direction: column;
  }

  .bopcmp-jobber-zenmaid .bopcmp-btn {
    width: 100%;
    text-align: center;
  }

  .bopcmp-jobber-zenmaid .bopcmp-decision-card {
    padding: 24px 20px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-section {
    padding: 28px 0;
  }

  .bopcmp-jobber-zenmaid .bopcmp-section-title {
    font-size: 22px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-section-alt {
    padding: 24px 18px;
    border-radius: 14px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-compare-row {
    flex-direction: column !important;
    align-items: stretch;
    padding: 14px 0;
  }

  .bopcmp-jobber-zenmaid .bopcmp-compare-label {
    flex-basis: auto !important;
    font-size: 11px;
    border-right: none;
    border-bottom: none;
    padding: 0 16px 4px;
    line-height: 1.2;
  }

  .bopcmp-jobber-zenmaid .bopcmp-compare-col {
    padding: 3px 16px;
    gap: 10px;
    border-right: none !important;
    border-bottom: none !important;
  }

  .bopcmp-jobber-zenmaid .bopcmp-verdict-grid,
  .bopcmp-jobber-zenmaid .bopcmp-edge-grid,
  .bopcmp-jobber-zenmaid .bopcmp-feature-cols,
  .bopcmp-jobber-zenmaid .bopcmp-proscons-grid {
    grid-template-columns: 1fr;
  }

  .bopcmp-jobber-zenmaid .bopcmp-final-cta {
    padding: 32px 22px;
    border-radius: 16px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-final-title {
    font-size: 23px;
  }

  .bopcmp-jobber-zenmaid .bopcmp-final-actions {
    flex-direction: column;
  }

  .bopcmp-jobber-zenmaid .bopcmp-final-actions .bopcmp-btn {
    width: 100%;
    text-align: center;
  }
}
/* =========================================================
   Jobber vs Housecall Pro — HVAC comparison page
   ALL selectors scoped under .bopcmp-jobber-housecall-hvac
   ========================================================= */

.bopcmp-jobber-housecall-hvac {
  --bop-purple: #6D4AE8;
  --bop-purple-dark: #5636C4;
  --bop-lavender: #F4F1FC;
  --bop-lavender-border: #E3DBF7;
  --bop-ink: #1B1730;
  --bop-body: #4B4763;
  --bop-white: #FFFFFF;

  display: block;
  color: var(--bop-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

.bopcmp-jobber-housecall-hvac * {
  box-sizing: border-box;
}

.bopcmp-jobber-housecall-hvac .bopcmp-shell {
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 24px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 0.83rem;
  color: var(--bop-body);
  padding-top: 28px;
  margin-bottom: 20px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-breadcrumbs a {
  color: var(--bop-body);
  text-decoration: none;
}

.bopcmp-jobber-housecall-hvac .bopcmp-breadcrumbs a:hover {
  color: var(--bop-purple);
}

.bopcmp-jobber-housecall-hvac .bopcmp-breadcrumbs span {
  color: #B9B2D6;
}

.bopcmp-jobber-housecall-hvac .bopcmp-eyebrow {
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--bop-purple);
  margin: 0 0 10px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-eyebrow-light {
  color: #D9CEFB;
}

.bopcmp-jobber-housecall-hvac .bopcmp-section-title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.3;
  color: var(--bop-ink);
  margin: 0 0 16px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-section-head {
  margin-bottom: 28px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-hero {
  background: linear-gradient(180deg, var(--bop-lavender) 0%, var(--bop-white) 100%);
  padding-bottom: 56px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-hero-grid {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 44px;
  align-items: start;
}

.bopcmp-jobber-housecall-hvac .bopcmp-title {
  font-size: 2.35rem;
  line-height: 1.18;
  font-weight: 800;
  margin: 0 0 18px;
  color: var(--bop-ink);
}

.bopcmp-jobber-housecall-hvac .bopcmp-title span {
  color: var(--bop-purple);
}

.bopcmp-jobber-housecall-hvac .bopcmp-title small {
  display: block;
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--bop-body);
  margin-top: 6px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-intro {
  font-size: 1.05rem;
  color: var(--bop-body);
  max-width: 56ch;
  margin: 0 0 28px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 13px 24px;
  border-radius: 10px;
  font-size: 0.95rem;
  font-weight: 700;
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease;
  border: 2px solid transparent;
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn:hover {
  transform: translateY(-1px);
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn-primary {
  background: var(--bop-purple);
  color: var(--bop-white);
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn-primary:hover {
  background: var(--bop-purple-dark);
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn-secondary {
  background: var(--bop-white);
  color: var(--bop-purple);
  border-color: var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn-secondary:hover {
  border-color: var(--bop-purple);
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn-light {
  background: var(--bop-white);
  color: var(--bop-purple-dark);
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn-light:hover {
  background: var(--bop-lavender);
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn-outline-light {
  background: transparent;
  color: var(--bop-white);
  border-color: rgba(255, 255, 255, 0.55);
}

.bopcmp-jobber-housecall-hvac .bopcmp-btn-outline-light:hover {
  border-color: var(--bop-white);
  background: rgba(255, 255, 255, 0.08);
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-radius: 16px;
  padding: 28px;
  box-shadow: 0 12px 30px -18px rgba(87, 60, 189, 0.35);
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot-label {
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--bop-purple);
  margin: 0 0 8px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot h2 {
  font-size: 1.25rem;
  font-weight: 800;
  margin: 0 0 6px;
  color: var(--bop-ink);
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot h2 span {
  color: var(--bop-purple);
  font-weight: 600;
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot-sub {
  font-size: 0.9rem;
  color: var(--bop-body);
  margin: 0 0 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot-row {
  padding: 16px 0;
  border-bottom: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot-row strong {
  display: block;
  font-size: 0.92rem;
  color: var(--bop-ink);
  margin-bottom: 6px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot-row p {
  font-size: 0.88rem;
  color: var(--bop-body);
  margin: 0;
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot-foot {
  padding-top: 16px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot-foot strong {
  display: block;
  font-size: 0.92rem;
  color: var(--bop-purple-dark);
  margin-bottom: 6px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-snapshot-foot p {
  font-size: 0.88rem;
  color: var(--bop-body);
  margin: 0;
}

.bopcmp-jobber-housecall-hvac .bopcmp-quick {
  padding: 56px 0;
}

.bopcmp-jobber-housecall-hvac .bopcmp-quick-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-quick-card {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-radius: 14px;
  padding: 28px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-tag {
  display: inline-block;
  background: var(--bop-purple);
  color: var(--bop-white);
  font-size: 0.85rem;
  font-weight: 700;
  padding: 6px 16px;
  border-radius: 999px;
  margin-bottom: 16px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-tag-alt {
  background: var(--bop-white);
  color: var(--bop-purple);
  border: 1.5px solid var(--bop-purple);
}

.bopcmp-jobber-housecall-hvac .bopcmp-quick-fit {
  font-size: 0.96rem;
  color: var(--bop-ink);
  margin: 0 0 12px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-quick-strong {
  font-size: 0.96rem;
  color: var(--bop-body);
  margin: 0;
}

.bopcmp-jobber-housecall-hvac .bopcmp-quick-fit strong,
.bopcmp-jobber-housecall-hvac .bopcmp-quick-strong strong {
  color: var(--bop-ink);
}

.bopcmp-jobber-housecall-hvac .bopcmp-verdict {
  padding: 12px 0 56px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-verdict-box {
  background: var(--bop-lavender);
  border: 1px solid var(--bop-lavender-border);
  border-radius: 14px;
  padding: 28px 32px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-verdict-box p {
  margin: 0;
  font-size: 1rem;
  color: var(--bop-ink);
}

.bopcmp-jobber-housecall-hvac .bopcmp-topics {
  padding: 8px 0 8px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-topic {
  padding: 32px 0;
  border-top: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-hvac .bopcmp-topic:first-child {
  border-top: none;
}

.bopcmp-jobber-housecall-hvac .bopcmp-body {
  font-size: 1rem;
  color: var(--bop-body);
  max-width: 76ch;
  margin: 0;
}

.bopcmp-jobber-housecall-hvac .bopcmp-proscons {
  padding: 48px 0;
}

.bopcmp-jobber-housecall-hvac .bopcmp-proscons-alt {
  background: var(--bop-lavender);
}

.bopcmp-jobber-housecall-hvac .bopcmp-proscons-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-pros,
.bopcmp-jobber-housecall-hvac .bopcmp-cons {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-radius: 14px;
  padding: 26px 28px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-pros strong,
.bopcmp-jobber-housecall-hvac .bopcmp-cons strong {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: var(--bop-ink);
  margin-bottom: 14px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-pros ul,
.bopcmp-jobber-housecall-hvac .bopcmp-cons ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.bopcmp-jobber-housecall-hvac .bopcmp-pros li,
.bopcmp-jobber-housecall-hvac .bopcmp-cons li {
  position: relative;
  padding-left: 24px;
  font-size: 0.94rem;
  color: var(--bop-body);
  margin-bottom: 10px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-pros li:last-child,
.bopcmp-jobber-housecall-hvac .bopcmp-cons li:last-child {
  margin-bottom: 0;
}

.bopcmp-jobber-housecall-hvac .bopcmp-pros li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--bop-purple);
  font-weight: 700;
}

.bopcmp-jobber-housecall-hvac .bopcmp-cons li::before {
  content: "–";
  position: absolute;
  left: 2px;
  color: #B9B2D6;
  font-weight: 700;
}

.bopcmp-jobber-housecall-hvac .bopcmp-which {
  padding: 48px 0;
}

.bopcmp-jobber-housecall-hvac .bopcmp-final {
  background: linear-gradient(135deg, var(--bop-purple) 0%, var(--bop-purple-dark) 100%);
  padding: 56px 0;
  margin-top: 8px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-final-title {
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--bop-white);
  margin: 0 0 16px;
  max-width: 40ch;
}

.bopcmp-jobber-housecall-hvac .bopcmp-final-body {
  font-size: 1rem;
  color: rgba(255, 255, 255, 0.88);
  max-width: 72ch;
  margin: 0 0 28px;
}

.bopcmp-jobber-housecall-hvac .bopcmp-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

@media (max-width: 1024px) {
  .bopcmp-jobber-housecall-hvac .bopcmp-shell {
    padding: 0 20px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-hero-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-title {
    font-size: 2rem;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-quick-grid,
  .bopcmp-jobber-housecall-hvac .bopcmp-proscons-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-final-title {
    max-width: none;
  }
}

@media (max-width: 640px) {
  .bopcmp-jobber-housecall-hvac .bopcmp-shell {
    padding: 0 16px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-hero {
    padding-bottom: 40px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-breadcrumbs {
    font-size: 0.76rem;
    padding-top: 20px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-title {
    font-size: 1.6rem;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-title small {
    font-size: 1rem;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-intro {
    font-size: 0.98rem;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-actions {
    flex-direction: column;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-btn {
    width: 100%;
    justify-content: center;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-snapshot {
    padding: 22px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-quick,
  .bopcmp-jobber-housecall-hvac .bopcmp-verdict,
  .bopcmp-jobber-housecall-hvac .bopcmp-proscons,
  .bopcmp-jobber-housecall-hvac .bopcmp-which,
  .bopcmp-jobber-housecall-hvac .bopcmp-final {
    padding-top: 36px;
    padding-bottom: 36px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-section-title {
    font-size: 1.3rem;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-verdict-box,
  .bopcmp-jobber-housecall-hvac .bopcmp-quick-card,
  .bopcmp-jobber-housecall-hvac .bopcmp-pros,
  .bopcmp-jobber-housecall-hvac .bopcmp-cons {
    padding: 20px;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-final-title {
    font-size: 1.35rem;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-final-actions {
    flex-direction: column;
  }

  .bopcmp-jobber-housecall-hvac .bopcmp-final-actions .bopcmp-btn {
    width: 100%;
    justify-content: center;
  }
}
/* ==========================================================================
   BizOpsPick — Jobber vs Housecall Pro (Landscaping)
   Every selector is scoped under .bopcmp-jobber-housecall-landscaping.
   ========================================================================== */

.bopcmp-jobber-housecall-landscaping {
  --bop-purple: #6D4AE8;
  --bop-purple-dark: #5636C4;
  --bop-purple-darker: #4A2CB0;
  --bop-lavender: #F4F1FC;
  --bop-lavender-border: #E3DBF7;
  --bop-ink: #1E1B2E;
  --bop-ink-soft: #4B4560;
  --bop-white: #FFFFFF;
  --bop-green: #1E8E5A;
  --bop-green-bg: #EAF7F0;
  --bop-red: #C0392B;
  --bop-red-bg: #FBEDEB;
  --bop-radius-lg: 20px;
  --bop-radius-md: 14px;
  --bop-radius-sm: 10px;
  --bop-shadow: 0 8px 30px rgba(74, 44, 176, 0.09);
  --bop-max-width: 1160px;

  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: var(--bop-ink);
  background: var(--bop-white);
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

.bopcmp-jobber-housecall-landscaping *,
.bopcmp-jobber-housecall-landscaping *::before,
.bopcmp-jobber-housecall-landscaping *::after {
  box-sizing: border-box;
}

.bopcmp-jobber-housecall-landscaping a {
  color: inherit;
  text-decoration: none;
}

.bopcmp-jobber-housecall-landscaping ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.bopcmp-jobber-housecall-landscaping h1,
.bopcmp-jobber-housecall-landscaping h2,
.bopcmp-jobber-housecall-landscaping h3,
.bopcmp-jobber-housecall-landscaping h4 {
  margin: 0;
  font-weight: 700;
  color: var(--bop-ink);
  letter-spacing: -0.01em;
}

.bopcmp-jobber-housecall-landscaping p {
  margin: 0;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-section-inner {
  max-width: var(--bop-max-width);
  margin: 0 auto;
  padding: 0 24px;
}

.bopcmp-jobber-housecall-landscaping a:focus-visible,
.bopcmp-jobber-housecall-landscaping button:focus-visible {
  outline: 3px solid var(--bop-purple-dark);
  outline-offset: 3px;
  border-radius: 6px;
}

/* ============ BUTTONS ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 13px 26px;
  border-radius: 999px;
  font-size: 0.97rem;
  font-weight: 600;
  border: 2px solid transparent;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, color 0.15s ease;
  cursor: pointer;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-btn-primary {
  background: var(--bop-purple);
  color: var(--bop-white);
  box-shadow: 0 6px 18px rgba(109, 74, 232, 0.35);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-btn-primary:hover {
  background: var(--bop-purple-dark);
  transform: translateY(-1px);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-btn-secondary {
  background: var(--bop-white);
  color: var(--bop-purple-dark);
  border-color: var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-btn-secondary:hover {
  border-color: var(--bop-purple);
  background: var(--bop-lavender);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-btn-onbanner {
  background: var(--bop-white);
  color: var(--bop-purple-darker);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-btn-onbanner:hover {
  background: var(--bop-lavender);
  transform: translateY(-1px);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-btn-onbanner-outline {
  background: transparent;
  color: var(--bop-white);
  border-color: rgba(255, 255, 255, 0.55);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-btn-onbanner-outline:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: var(--bop-white);
}

/* ============ HERO ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-hero {
  background: linear-gradient(180deg, var(--bop-lavender) 0%, var(--bop-white) 100%);
  padding: 32px 0 56px;
  border-bottom: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-hero-inner {
  max-width: var(--bop-max-width);
  margin: 0 auto;
  padding: 0 24px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.85rem;
  color: var(--bop-ink-soft);
  margin-bottom: 32px;
  flex-wrap: wrap;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-breadcrumb a:hover {
  color: var(--bop-purple-dark);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-breadcrumb-current {
  color: var(--bop-ink);
  font-weight: 600;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-hero-grid {
  display: grid;
  grid-template-columns: 1.35fr 1fr;
  gap: 48px;
  align-items: start;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-eyebrow {
  display: inline-block;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bop-purple-dark);
  margin-bottom: 14px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-hero-title {
  font-size: 2.6rem;
  line-height: 1.12;
  margin-bottom: 4px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-vs {
  color: var(--bop-purple);
  font-style: italic;
  font-weight: 600;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-hero-sub {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--bop-ink-soft);
  margin-bottom: 20px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-hero-intro {
  font-size: 1.05rem;
  color: var(--bop-ink-soft);
  max-width: 58ch;
  margin-bottom: 28px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-hero-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

/* ---- Decision snapshot card ---- */

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-card {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-radius: var(--bop-radius-lg);
  padding: 28px 26px;
  box-shadow: var(--bop-shadow);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-label {
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bop-purple);
  margin-bottom: 10px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-title {
  font-size: 1.3rem;
  margin-bottom: 6px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-vs-small {
  color: var(--bop-purple);
  font-style: italic;
  font-weight: 600;
  font-size: 0.9em;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-intro {
  font-size: 0.92rem;
  color: var(--bop-ink-soft);
  margin-bottom: 20px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-block {
  margin-bottom: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-block:last-of-type {
  margin-bottom: 0;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-block h3 {
  font-size: 0.98rem;
  color: var(--bop-purple-darker);
  margin-bottom: 6px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-block p {
  font-size: 0.9rem;
  color: var(--bop-ink-soft);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-tradeoff {
  background: var(--bop-lavender);
  border-radius: var(--bop-radius-sm);
  padding: 14px 16px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-tradeoff h4 {
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--bop-purple-dark);
  margin-bottom: 6px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-tradeoff p {
  font-size: 0.88rem;
  color: var(--bop-ink-soft);
}

/* ============ GENERIC SECTION ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-section {
  padding: 64px 0;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-section--tinted {
  background: var(--bop-lavender);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-section-title {
  font-size: 1.7rem;
  margin-bottom: 28px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-section-title--spaced {
  margin-top: 56px;
}

/* ============ QUICK COMPARISON CARDS ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-compare-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-compare-card {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-radius: var(--bop-radius-lg);
  padding: 28px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-compare-card--accent {
  border-color: var(--bop-purple);
  box-shadow: var(--bop-shadow);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-compare-name {
  font-size: 1.25rem;
  color: var(--bop-purple-darker);
  margin-bottom: 16px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-compare-row {
  font-size: 0.95rem;
  color: var(--bop-ink-soft);
  margin-bottom: 14px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-compare-row:last-child {
  margin-bottom: 0;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-compare-label {
  display: block;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--bop-ink);
  margin-bottom: 4px;
}

/* ============ VERDICT BANNER (mid-page, quick verdict) ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-verdict-banner {
  background: linear-gradient(135deg, var(--bop-purple) 0%, var(--bop-purple-darker) 100%);
  padding: 48px 0;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-banner-eyebrow {
  display: inline-block;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.75);
  margin-bottom: 14px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-banner-text {
  font-size: 1.15rem;
  line-height: 1.65;
  color: var(--bop-white);
  max-width: 78ch;
}

/* ============ FEATURE LIST ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-feature-list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-feature-row {
  padding: 22px 26px;
  border: 1px solid var(--bop-lavender-border);
  border-radius: var(--bop-radius-md);
  background: var(--bop-white);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-feature-row--highlight {
  background: var(--bop-lavender);
  border-color: var(--bop-purple);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-feature-tag {
  display: inline-block;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--bop-white);
  background: var(--bop-purple);
  padding: 4px 10px;
  border-radius: 999px;
  margin-bottom: 10px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-feature-title {
  font-size: 1.1rem;
  margin-bottom: 8px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-feature-body {
  font-size: 0.96rem;
  color: var(--bop-ink-soft);
  max-width: 82ch;
}

/* ============ PROS & CONS ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-proscons-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-proscons-card {
  background: var(--bop-white);
  border-radius: var(--bop-radius-lg);
  padding: 26px 28px;
  border: 1px solid var(--bop-lavender-border);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-proscons-card h3 {
  font-size: 1.05rem;
  margin-bottom: 16px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-proscons-card--pros h3 {
  color: var(--bop-green);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-proscons-card--cons h3 {
  color: var(--bop-red);
}

.bopcmp-jobber-housecall-landscaping .bopcmp-list li {
  position: relative;
  padding-left: 26px;
  font-size: 0.93rem;
  color: var(--bop-ink-soft);
  margin-bottom: 11px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-list li:last-child {
  margin-bottom: 0;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-list--pro li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--bop-green);
  font-weight: 700;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-list--con li::before {
  content: "–";
  position: absolute;
  left: 4px;
  top: 0;
  color: var(--bop-red);
  font-weight: 700;
}

/* ============ WHICH IS BETTER FOR WHOM ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-whofor-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-whofor-card {
  background: var(--bop-white);
  border: 1px solid var(--bop-lavender-border);
  border-left: 4px solid var(--bop-purple);
  border-radius: var(--bop-radius-md);
  padding: 26px 28px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-whofor-tag {
  display: inline-block;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--bop-purple-dark);
  background: var(--bop-lavender);
  padding: 4px 10px;
  border-radius: 999px;
  margin-bottom: 14px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-whofor-card h3 {
  font-size: 1.08rem;
  margin-bottom: 10px;
  line-height: 1.35;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-whofor-card p {
  font-size: 0.93rem;
  color: var(--bop-ink-soft);
}

/* ============ FINAL VERDICT ============ */

.bopcmp-jobber-housecall-landscaping .bopcmp-verdict-final {
  background: linear-gradient(135deg, var(--bop-purple) 0%, var(--bop-purple-darker) 100%);
  padding: 64px 0;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-verdict-final-title {
  font-size: 2rem;
  color: var(--bop-white);
  line-height: 1.25;
  max-width: 20ch;
  margin: 10px 0 18px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-verdict-final .bopcmp-banner-text {
  margin-bottom: 32px;
}

.bopcmp-jobber-housecall-landscaping .bopcmp-final-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

/* ==========================================================================
   TABLET
   ========================================================================== */

@media (max-width: 900px) {
  .bopcmp-jobber-housecall-landscaping .bopcmp-hero-grid {
    grid-template-columns: 1fr;
    gap: 36px;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-hero-title {
    font-size: 2.15rem;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-hero-intro {
    max-width: none;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-compare-grid,
  .bopcmp-jobber-housecall-landscaping .bopcmp-proscons-grid,
  .bopcmp-jobber-housecall-landscaping .bopcmp-whofor-grid {
    grid-template-columns: 1fr;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-section {
    padding: 48px 0;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-verdict-final-title {
    max-width: none;
    font-size: 1.7rem;
  }
}

/* ==========================================================================
   MOBILE
   ========================================================================== */

@media (max-width: 560px) {
  .bopcmp-jobber-housecall-landscaping .bopcmp-hero {
    padding: 24px 0 40px;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-hero-title {
    font-size: 1.75rem;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-hero-sub {
    font-size: 1.05rem;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-hero-intro {
    font-size: 0.97rem;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-hero-cta,
  .bopcmp-jobber-housecall-landscaping .bopcmp-final-cta {
    flex-direction: column;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-btn {
    width: 100%;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-section-title {
    font-size: 1.4rem;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-snapshot-card {
    padding: 22px 20px;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-feature-row,
  .bopcmp-jobber-housecall-landscaping .bopcmp-proscons-card,
  .bopcmp-jobber-housecall-landscaping .bopcmp-whofor-card,
  .bopcmp-jobber-housecall-landscaping .bopcmp-compare-card {
    padding: 20px;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-verdict-final-title {
    font-size: 1.45rem;
  }

  .bopcmp-jobber-housecall-landscaping .bopcmp-banner-text {
    font-size: 1rem;
  }
}
.bopjr-workiz-hvac *,
.bopjr-workiz-hvac *::before,
.bopjr-workiz-hvac *::after {
  box-sizing: border-box;
}

.bopjr-workiz-hvac {
  --bopjr-purple: #6D4AE8;
  --bopjr-purple-dark: #5636C4;
  --bopjr-dark: #1B1730;
  --bopjr-darker: #14101F;
  --bopjr-lavender: #F4F1FC;
  --bopjr-border: #E3DBF7;
  --bopjr-text: #1B1730;
  --bopjr-muted: #4B4763;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: var(--bopjr-text) !important;
  line-height: 1.6;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.bopjr-workiz-hvac a { color: var(--bopjr-purple) !important; text-decoration: none; }

.bopjr-workiz-hvac .bopjr-fullbleed {
  width: 100vw !important;
  max-width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.bopjr-workiz-hvac .bopjr-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 13px;
  color: var(--bopjr-muted) !important;
  padding: 24px 0 0;
}
.bopjr-workiz-hvac .bopjr-breadcrumb a { color: var(--bopjr-muted) !important; }
.bopjr-workiz-hvac .bopjr-breadcrumb a:hover { color: var(--bopjr-purple) !important; }
.bopjr-workiz-hvac .bopjr-breadcrumb .bopjr-current { color: var(--bopjr-text) !important; font-weight: 600; }

.bopjr-workiz-hvac .bopjr-eyebrow {
  display: block;
  font-size: 13px;
  font-weight: 700 !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bopjr-purple) !important;
  margin: 0 0 16px;
}
.bopjr-workiz-hvac .bopjr-eyebrow.bopjr-eyebrow-light { color: #C9B8F7 !important; }
.bopjr-workiz-hvac .bopjr-h2 {
  font-size: 32px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em;
  line-height: 1.2;
  margin: 0 0 20px;
  color: var(--bopjr-text) !important;
}
.bopjr-workiz-hvac .bopjr-h2-light { color: #FFFFFF !important; }
.bopjr-workiz-hvac .bopjr-section-intro {
  color: var(--bopjr-muted) !important;
  font-size: 16px;
  margin: 0;
}
.bopjr-workiz-hvac .bopjr-section-intro-light { color: #D9D2F5 !important; }

.bopjr-workiz-hvac .bopjr-band { display: block; width: 100%; padding: 64px 0; }
.bopjr-workiz-hvac .bopjr-band-border { border-top: 1px solid var(--bopjr-border); }

.bopjr-workiz-hvac .bopjr-hero {
  display: grid !important;
  grid-template-columns: minmax(0,1.2fr) minmax(0,1fr) !important;
  gap: 48px;
  width: 100%;
  padding: 40px 0 64px;
  align-items: start;
}
.bopjr-workiz-hvac .bopjr-hero-title {
  font-size: 46px !important;
  font-weight: 800 !important;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin: 0 0 20px;
  color: var(--bopjr-text) !important;
}
.bopjr-workiz-hvac .bopjr-hero-title .bopjr-hl { color: var(--bopjr-purple) !important; }
.bopjr-workiz-hvac .bopjr-hero-intro {
  font-size: 17px;
  color: var(--bopjr-muted) !important;
  margin: 0 0 28px;
  max-width: 620px;
}
.bopjr-workiz-hvac .bopjr-hero-ctas { display: flex; flex-wrap: wrap; gap: 14px; margin: 0 0 24px; }
.bopjr-workiz-hvac .bopjr-btn {
  display: inline-block !important;
  font-weight: 700 !important;
  font-size: 15px;
  padding: 15px 26px !important;
  border-radius: 10px;
  transition: background 0.15s ease, transform 0.15s ease;
}
.bopjr-workiz-hvac .bopjr-btn-primary { background: var(--bopjr-purple) !important; color: #FFFFFF !important; border: 1px solid var(--bopjr-purple); }
.bopjr-workiz-hvac .bopjr-btn-primary:hover { background: var(--bopjr-purple-dark) !important; color: #FFFFFF !important; transform: translateY(-1px); }
.bopjr-workiz-hvac .bopjr-btn-outline { background: #FFFFFF !important; color: var(--bopjr-purple) !important; border: 1px solid var(--bopjr-border); }
.bopjr-workiz-hvac .bopjr-btn-outline:hover { border-color: var(--bopjr-purple); }
.bopjr-workiz-hvac .bopjr-editorial-note {
  font-size: 13px;
  color: var(--bopjr-muted) !important;
  border-left: 3px solid var(--bopjr-border);
  padding: 4px 0 4px 14px;
  margin: 0;
}
.bopjr-workiz-hvac .bopjr-editorial-note strong { color: var(--bopjr-text) !important; }

.bopjr-workiz-hvac .bopjr-decision-card {
  background: #FFFFFF !important;
  border: 1px solid var(--bopjr-border);
  border-radius: 16px;
  padding: 28px;
  box-shadow: 0 16px 32px rgba(27,23,48,0.08);
  min-width: 0;
}
.bopjr-workiz-hvac .bopjr-decision-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin: 0 0 20px; }
.bopjr-workiz-hvac .bopjr-decision-label { font-size: 12px; font-weight: 700 !important; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bopjr-purple) !important; margin: 0 0 6px; }
.bopjr-workiz-hvac .bopjr-decision-name { font-size: 18px; font-weight: 700 !important; margin: 0; color: var(--bopjr-text) !important; }
.bopjr-workiz-hvac .bopjr-decision-avatar {
  display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; border-radius: 10px;
  background: var(--bopjr-lavender) !important; color: var(--bopjr-purple) !important;
  font-weight: 800 !important; font-size: 16px; flex-shrink: 0;
}
.bopjr-workiz-hvac .bopjr-decision-verdict-label { font-size: 12px; font-weight: 700 !important; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bopjr-purple) !important; margin: 0 0 8px; }
.bopjr-workiz-hvac .bopjr-decision-verdict-text { font-size: 15px; font-weight: 700 !important; color: var(--bopjr-text) !important; margin: 0 0 22px; line-height: 1.4; }

.bopjr-workiz-hvac .bopjr-bar-row { margin: 0 0 16px; }
.bopjr-workiz-hvac .bopjr-bar-row:last-of-type { margin-bottom: 22px; }
.bopjr-workiz-hvac .bopjr-bar-labels { display: flex; justify-content: space-between; font-size: 13px; margin: 0 0 6px; }
.bopjr-workiz-hvac .bopjr-bar-name { color: var(--bopjr-muted) !important; font-weight: 600; }
.bopjr-workiz-hvac .bopjr-bar-value { color: var(--bopjr-text) !important; font-weight: 700 !important; }
.bopjr-workiz-hvac .bopjr-bar-track { width: 100%; height: 6px; background: var(--bopjr-lavender) !important; border-radius: 4px; overflow: hidden; }
.bopjr-workiz-hvac .bopjr-bar-fill { height: 100%; background: var(--bopjr-purple) !important; border-radius: 4px; }

.bopjr-workiz-hvac .bopjr-decision-note {
  background: var(--bopjr-lavender) !important;
  border-radius: 10px;
  padding: 14px 16px;
  font-size: 13px;
  color: var(--bopjr-muted) !important;
}
.bopjr-workiz-hvac .bopjr-decision-note strong { color: var(--bopjr-text) !important; }

.bopjr-workiz-hvac .bopjr-capability-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 0;
  width: 100%;
  border: 1px solid var(--bopjr-border);
  border-radius: 16px;
  overflow: hidden;
}
.bopjr-workiz-hvac .bopjr-capability-card {
  padding: 28px;
  border-right: 1px solid var(--bopjr-border);
  border-bottom: 1px solid var(--bopjr-border);
  min-width: 0;
}
.bopjr-workiz-hvac .bopjr-capability-card:nth-child(3n) { border-right: none; }
.bopjr-workiz-hvac .bopjr-capability-card:nth-last-child(-n+3) { border-bottom: none; }
.bopjr-workiz-hvac .bopjr-capability-num { display: block; font-size: 14px; font-style: italic; font-weight: 700 !important; color: var(--bopjr-purple) !important; margin: 0 0 12px; }
.bopjr-workiz-hvac .bopjr-capability-card h3 { font-size: 17px !important; font-weight: 700 !important; margin: 0 0 8px; color: var(--bopjr-text) !important; }
.bopjr-workiz-hvac .bopjr-capability-card p { font-size: 14.5px; color: var(--bopjr-muted) !important; margin: 0; }

.bopjr-workiz-hvac .bopjr-sl-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  gap: 24px;
  width: 100%;
}
.bopjr-workiz-hvac .bopjr-sl-card {
  border: 1px solid var(--bopjr-border);
  border-radius: 16px;
  padding: 8px 28px 20px;
  min-width: 0;
}
.bopjr-workiz-hvac .bopjr-sl-card.bopjr-sl-strengths { border-top: 3px solid var(--bopjr-purple); }
.bopjr-workiz-hvac .bopjr-sl-card.bopjr-sl-limits { border-top: 3px solid #C7C2D9; }
.bopjr-workiz-hvac .bopjr-sl-heading { display: flex; align-items: center; gap: 12px; padding: 20px 0; border-bottom: 1px solid var(--bopjr-border); margin: 0 0 8px; }
.bopjr-workiz-hvac .bopjr-sl-icon {
  display: flex; align-items: center; justify-content: center;
  width: 26px; height: 26px; border-radius: 50%;
  font-weight: 800 !important; font-size: 15px; flex-shrink: 0;
}
.bopjr-workiz-hvac .bopjr-sl-strengths .bopjr-sl-icon { background: var(--bopjr-lavender) !important; color: var(--bopjr-purple) !important; }
.bopjr-workiz-hvac .bopjr-sl-limits .bopjr-sl-icon { background: #EFEDF3 !important; color: #6B6780 !important; }
.bopjr-workiz-hvac .bopjr-sl-heading h3 { font-size: 18px !important; font-weight: 700 !important; margin: 0; color: var(--bopjr-text) !important; }
.bopjr-workiz-hvac .bopjr-sl-item { padding: 16px 0; border-bottom: 1px solid var(--bopjr-border); }
.bopjr-workiz-hvac .bopjr-sl-item:last-child { border-bottom: none; }
.bopjr-workiz-hvac .bopjr-sl-item h4 { font-size: 15px !important; font-weight: 700 !important; margin: 0 0 6px; color: var(--bopjr-text) !important; }
.bopjr-workiz-hvac .bopjr-sl-item p { font-size: 14.5px; color: var(--bopjr-muted) !important; margin: 0; }

.bopjr-workiz-hvac .bopjr-dark-band {
  background: linear-gradient(160deg, var(--bopjr-dark) 0%, var(--bopjr-darker) 100%) !important;
  padding: 72px 0;
}
.bopjr-workiz-hvac .bopjr-dark-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid !important;
  grid-template-columns: minmax(0,0.9fr) minmax(0,1.1fr) !important;
  gap: 56px;
}
.bopjr-workiz-hvac .bopjr-dark-heading { font-size: 34px !important; font-weight: 800 !important; line-height: 1.2; color: #FFFFFF !important; margin: 0 0 16px; }
.bopjr-workiz-hvac .bopjr-dark-intro { font-size: 16px; color: #C9C3DE !important; margin: 0; }
.bopjr-workiz-hvac .bopjr-step-item { padding: 20px 0; border-top: 1px solid rgba(255,255,255,0.12); }
.bopjr-workiz-hvac .bopjr-step-item:first-child { border-top: none; padding-top: 0; }
.bopjr-workiz-hvac .bopjr-step-num { display: block; font-size: 14px; font-style: italic; font-weight: 700 !important; color: #C9B8F7 !important; margin: 0 0 8px; }
.bopjr-workiz-hvac .bopjr-step-item h3 { font-size: 17px !important; font-weight: 700 !important; color: #FFFFFF !important; margin: 0 0 6px; }
.bopjr-workiz-hvac .bopjr-step-item p { font-size: 14.5px; color: #C9C3DE !important; margin: 0; }


.bopjr-workiz-hvac .bopjr-fit-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 20px;
  width: 100%;
}
.bopjr-workiz-hvac .bopjr-fit-card {
  background: var(--bopjr-lavender) !important;
  border: 1px solid var(--bopjr-border);
  border-radius: 14px;
  padding: 24px;
  min-width: 0;
}
.bopjr-workiz-hvac .bopjr-fit-label { font-size: 12px; font-weight: 700 !important; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bopjr-purple) !important; margin: 0 0 10px; }
.bopjr-workiz-hvac .bopjr-fit-card h3 { font-size: 18px !important; font-weight: 700 !important; margin: 0 0 10px; color: var(--bopjr-text) !important; }
.bopjr-workiz-hvac .bopjr-fit-card p { font-size: 14.5px; color: var(--bopjr-muted) !important; margin: 0; }

.bopjr-workiz-hvac .bopjr-checklist-section {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  gap: 48px;
  width: 100%;
  align-items: start;
}
.bopjr-workiz-hvac .bopjr-checklist-intro { font-size: 16px; color: var(--bopjr-muted) !important; margin: 0; }
.bopjr-workiz-hvac .bopjr-checklist-card {
  background: #FFFFFF !important;
  border: 1px solid var(--bopjr-border);
  border-radius: 16px;
  padding: 28px;
  min-width: 0;
}
.bopjr-workiz-hvac .bopjr-checklist-label { font-size: 12px; font-weight: 700 !important; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bopjr-purple) !important; margin: 0 0 18px; }
.bopjr-workiz-hvac .bopjr-checklist-item { display: flex; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--bopjr-border); }
.bopjr-workiz-hvac .bopjr-checklist-item:last-of-type { border-bottom: none; }
.bopjr-workiz-hvac .bopjr-checklist-num { font-size: 13px; font-style: italic; font-weight: 700 !important; color: var(--bopjr-purple) !important; flex-shrink: 0; width: 24px; }
.bopjr-workiz-hvac .bopjr-checklist-item p { font-size: 15px; font-weight: 600 !important; color: var(--bopjr-text) !important; margin: 0; }
.bopjr-workiz-hvac .bopjr-checklist-footnote {
  background: var(--bopjr-lavender) !important;
  border-radius: 10px;
  padding: 14px 16px;
  font-size: 13px;
  color: var(--bopjr-muted) !important;
  margin: 18px 0 0;
}

.bopjr-workiz-hvac .bopjr-verdict-band {
  background: linear-gradient(160deg, var(--bopjr-purple-dark) 0%, var(--bopjr-darker) 100%) !important;
  padding: 72px 0;
}
.bopjr-workiz-hvac .bopjr-verdict-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  gap: 56px;
  align-items: center;
}
.bopjr-workiz-hvac .bopjr-verdict-heading { font-size: 38px !important; font-weight: 800 !important; line-height: 1.2; color: #FFFFFF !important; margin: 0; }
.bopjr-workiz-hvac .bopjr-verdict-text { font-size: 16px; color: #E7E1FA !important; margin: 0 0 24px; }
.bopjr-workiz-hvac .bopjr-verdict-band .bopjr-btn-primary { background: #FFFFFF !important; color: var(--bopjr-purple-dark) !important; border: none; }
.bopjr-workiz-hvac .bopjr-verdict-band .bopjr-btn-primary:hover { background: #EFE9FB !important; }

@media (max-width: 1024px) {
  .bopjr-workiz-hvac .bopjr-hero { grid-template-columns: minmax(0,1fr) !important; }
  .bopjr-workiz-hvac .bopjr-capability-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  .bopjr-workiz-hvac .bopjr-capability-card:nth-child(3n) { border-right: 1px solid var(--bopjr-border); }
  .bopjr-workiz-hvac .bopjr-capability-card:nth-child(2n) { border-right: none; }
  .bopjr-workiz-hvac .bopjr-capability-card:nth-last-child(-n+3) { border-bottom: 1px solid var(--bopjr-border); }
  .bopjr-workiz-hvac .bopjr-capability-card:nth-last-child(-n+2) { border-bottom: none; }
  .bopjr-workiz-hvac .bopjr-sl-grid { grid-template-columns: minmax(0,1fr) !important; }
  .bopjr-workiz-hvac .bopjr-dark-inner { grid-template-columns: minmax(0,1fr) !important; }
  .bopjr-workiz-hvac .bopjr-fit-grid { grid-template-columns: minmax(0,1fr) !important; }
  .bopjr-workiz-hvac .bopjr-checklist-section { grid-template-columns: minmax(0,1fr) !important; }
  .bopjr-workiz-hvac.bopjr-workiz-hvac .bopjr-verdict-band .bopjr-verdict-inner {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 24px !important;
}
  .bopjr-workiz-hvac .bopjr-hero-title { font-size: 38px !important; }
}

@media (max-width: 640px) {
  .bopjr-workiz-hvac { padding: 0 16px !important; }
  .bopjr-workiz-hvac .bopjr-band { padding: 48px 0; }
  .bopjr-workiz-hvac .bopjr-hero-title { font-size: 30px !important; }
  .bopjr-workiz-hvac .bopjr-h2 { font-size: 24px !important; }
  .bopjr-workiz-hvac .bopjr-dark-heading,
  .bopjr-workiz-hvac .bopjr-verdict-heading { font-size: 26px !important; }
  .bopjr-workiz-hvac .bopjr-capability-grid { grid-template-columns: minmax(0,1fr) !important; }
  .bopjr-workiz-hvac .bopjr-capability-card { border-right: none !important; border-bottom: 1px solid var(--bopjr-border) !important; }
  .bopjr-workiz-hvac .bopjr-capability-card:last-child { border-bottom: none !important; }
  .bopjr-workiz-hvac .bopjr-hero-ctas { flex-direction: column; }
  .bopjr-workiz-hvac .bopjr-btn { width: 100%; text-align: center; }
}
@media (max-width: 900px) {
  .bopjr-workiz-hvac .bopjr-verdict-inner {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px !important;
  }
  .bopjr-workiz-hvac .bopjr-verdict-heading {
    font-size: 26px !important;
  }
}
/* =====================================================================
   BizOpsPick — "How to Choose Cleaning Business Software" guide page
   Isolated wrapper: .bopguide-cleaning-software
   ===================================================================== */

.bopguide-cleaning-software {
  --bop-purple: #6D4AE8;
  --bop-purple-dark: #5636C9;
  --bop-purple-light: #8F72F0;
  --bop-lavender: #F4F1FC;
  --bop-lavender-soft: #FAF8FE;
  --bop-border: #E3DBF7;
  --bop-text: #1B1A22;
  --bop-text-secondary: #55536A;
  --bop-white: #FFFFFF;
  --bop-black-panel: #1B1330;

  display: block;
  background: var(--bop-white);
  color: var(--bop-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

.bopguide-cleaning-software * {
  box-sizing: border-box;
}

.bopguide-cleaning-software .bopguide-container {
  max-width: 860px;
  margin: 0 auto;
  padding: 0 24px;
}

.bopguide-cleaning-software .bopguide-section {
  padding: 56px 0;
}

.bopguide-cleaning-software .bopguide-section--alt {
  background: var(--bop-lavender);
}

.bopguide-cleaning-software .bopguide-section--dark {
  background: var(--bop-black-panel);
}

/* ---------------------------------------------------------------------
   Hero
   --------------------------------------------------------------------- */

.bopguide-cleaning-software .bopguide-hero {
  position: relative;
  overflow: hidden;
  padding: 76px 0 64px;
  background: linear-gradient(180deg, var(--bop-lavender) 0%, var(--bop-white) 100%);
  border-bottom: 1px solid var(--bop-border);
}

.bopguide-cleaning-software .bopguide-hero-glow {
  position: absolute;
  top: -140px;
  right: -140px;
  width: 380px;
  height: 380px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(109, 74, 232, 0.16) 0%, rgba(109, 74, 232, 0) 70%);
  pointer-events: none;
}

.bopguide-cleaning-software .bopguide-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 48px;
  align-items: start;
  max-width: 1040px;
}

.bopguide-cleaning-software .bopguide-eyebrow {
  display: inline-block;
  margin: 0 0 14px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--bop-purple);
}

.bopguide-cleaning-software .bopguide-h1 {
  margin: 0 0 18px;
  font-size: 42px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--bop-text);
}

.bopguide-cleaning-software .bopguide-h1-accent {
  color: var(--bop-purple);
}

.bopguide-cleaning-software .bopguide-hero-intro {
  margin: 0 0 26px;
  max-width: 560px;
  font-size: 17px;
  font-weight: 500;
  color: var(--bop-text-secondary);
}

.bopguide-cleaning-software .bopguide-hero-nav {
  background: var(--bop-white);
  border: 1px solid var(--bop-border);
  border-radius: 16px;
  padding: 26px 26px 12px;
  box-shadow: 0 12px 28px rgba(45, 24, 110, 0.07);
}

.bopguide-cleaning-software .bopguide-hero-nav-title {
  margin: 0 0 14px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--bop-purple);
}

.bopguide-cleaning-software .bopguide-hero-nav-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.bopguide-cleaning-software .bopguide-hero-nav-list li {
  border-top: 1px solid var(--bop-border);
}

.bopguide-cleaning-software .bopguide-hero-nav-list li:first-child {
  border-top: none;
}

.bopguide-cleaning-software .bopguide-hero-nav-list a {
  display: block;
  padding: 12px 0;
  font-size: 14.5px;
  font-weight: 600;
  color: var(--bop-text);
  text-decoration: none;
}

.bopguide-cleaning-software .bopguide-hero-nav-list a:hover {
  color: var(--bop-purple);
}

/* ---------------------------------------------------------------------
   Section headings / body copy
   --------------------------------------------------------------------- */

.bopguide-cleaning-software .bopguide-h2 {
  margin: 0 0 12px;
  font-size: 26px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: var(--bop-text);
}

.bopguide-cleaning-software .bopguide-h2--onDark {
  color: var(--bop-white);
}

.bopguide-cleaning-software .bopguide-body {
  margin: 0 0 28px;
  max-width: 680px;
  font-size: 15.5px;
  font-weight: 500;
  color: var(--bop-text-secondary);
}

.bopguide-cleaning-software .bopguide-body--onDark {
  color: #C9C2E3;
}

/* ---------------------------------------------------------------------
   Checklist
   --------------------------------------------------------------------- */

.bopguide-cleaning-software .bopguide-checklist {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--bop-border);
}

.bopguide-cleaning-software .bopguide-checklist-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px 4px;
  border-bottom: 1px solid var(--bop-border);
  font-size: 15.5px;
  font-weight: 600;
  color: var(--bop-text);
}

.bopguide-cleaning-software .bopguide-check-icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--bop-lavender);
  color: var(--bop-purple);
  font-size: 12px;
  font-weight: 700;
  margin-top: 1px;
}

/* ---------------------------------------------------------------------
   Feature grid
   --------------------------------------------------------------------- */

.bopguide-cleaning-software .bopguide-feature-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}

.bopguide-cleaning-software .bopguide-feature-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px 18px;
  background: var(--bop-white);
  border: 1px solid var(--bop-border);
  border-radius: 12px;
}

.bopguide-cleaning-software .bopguide-feature-card p {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bop-text);
}

.bopguide-cleaning-software .bopguide-feature-card .bopguide-check-icon {
  background: var(--bop-lavender);
}

/* ---------------------------------------------------------------------
   Mistake list
   --------------------------------------------------------------------- */

.bopguide-cleaning-software .bopguide-mistake-list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.bopguide-cleaning-software .bopguide-mistake-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px 4px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  font-size: 15.5px;
  font-weight: 600;
  color: var(--bop-white);
}

.bopguide-cleaning-software .bopguide-mistake-icon {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  color: #B9A8F5;
  font-size: 11px;
  font-weight: 700;
  margin-top: 1px;
}

/* ---------------------------------------------------------------------
   Numbered step cards
   --------------------------------------------------------------------- */

.bopguide-cleaning-software .bopguide-steps-grid {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}

.bopguide-cleaning-software .bopguide-step-card {
  padding: 20px;
  background: var(--bop-white);
  border: 1px solid var(--bop-border);
  border-radius: 12px;
}

.bopguide-cleaning-software .bopguide-step-number {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 700;
  font-style: italic;
  letter-spacing: 0.02em;
  color: var(--bop-purple);
}

.bopguide-cleaning-software .bopguide-step-card p {
  margin: 0;
  font-size: 15px;
  font-weight: 600;
  color: var(--bop-text);
}

/* ---------------------------------------------------------------------
   CTA panel (dark, two-column)
   --------------------------------------------------------------------- */

.bopguide-cleaning-software .bopguide-cta-panel {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 32px;
  padding: 44px 44px;
  background: linear-gradient(135deg, var(--bop-black-panel) 0%, #2E2154 100%);
  border-radius: 20px;
}

.bopguide-cleaning-software .bopguide-cta-glow {
  position: absolute;
  bottom: -120px;
  left: -80px;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(143, 114, 240, 0.28) 0%, rgba(143, 114, 240, 0) 70%);
  pointer-events: none;
}

.bopguide-cleaning-software .bopguide-cta-text-col {
  position: relative;
}

.bopguide-cleaning-software .bopguide-cta-eyebrow {
  margin: 0 0 10px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--bop-purple-light);
}

.bopguide-cleaning-software .bopguide-cta-title {
  margin: 0 0 10px;
  font-size: 26px;
  font-weight: 700;
  color: var(--bop-white);
}

.bopguide-cleaning-software .bopguide-cta-text {
  margin: 0;
  max-width: 480px;
  font-size: 15.5px;
  font-weight: 500;
  color: #C9C2E3;
}

.bopguide-cleaning-software .bopguide-cta-action-col {
  position: relative;
  flex-shrink: 0;
}

/* ---------------------------------------------------------------------
   Buttons
   --------------------------------------------------------------------- */

.bopguide-cleaning-software .bopguide-btn {
  display: inline-block;
  padding: 14px 28px;
  border-radius: 8px;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid transparent;
  transition: background 0.15s ease, border-color 0.15s ease, transform 0.05s ease;
}

.bopguide-cleaning-software .bopguide-btn-primary {
  background: var(--bop-purple);
  color: var(--bop-white);
}

.bopguide-cleaning-software .bopguide-btn-primary:hover {
  background: var(--bop-purple-dark);
}

.bopguide-cleaning-software .bopguide-btn-primary:active {
  transform: translateY(1px);
}

.bopguide-cleaning-software .bopguide-btn-ghost {
  padding: 12px 0;
  border: none;
  background: none;
  color: var(--bop-purple);
  font-size: 14.5px;
}

.bopguide-cleaning-software .bopguide-btn-ghost:hover {
  color: var(--bop-purple-dark);
  text-decoration: underline;
}

/* =====================================================================
   TABLET  (≤ 1024px)
   ===================================================================== */

@media (max-width: 1024px) {
  .bopguide-cleaning-software .bopguide-container {
    max-width: 100%;
    padding: 0 32px;
  }

  .bopguide-cleaning-software .bopguide-hero {
    padding: 60px 0 48px;
  }

  .bopguide-cleaning-software .bopguide-hero-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .bopguide-cleaning-software .bopguide-h1 {
    font-size: 34px;
  }

  .bopguide-cleaning-software .bopguide-section {
    padding: 48px 0;
  }

  .bopguide-cleaning-software .bopguide-h2 {
    font-size: 23px;
  }

  .bopguide-cleaning-software .bopguide-cta-panel {
    grid-template-columns: 1fr;
    text-align: left;
  }
}

/* =====================================================================
   MOBILE  (≤ 640px)
   ===================================================================== */

@media (max-width: 640px) {
  .bopguide-cleaning-software .bopguide-container {
    padding: 0 20px;
  }

  .bopguide-cleaning-software .bopguide-hero {
    padding: 44px 0 36px;
  }

  .bopguide-cleaning-software .bopguide-eyebrow {
    font-size: 11.5px;
  }

  .bopguide-cleaning-software .bopguide-h1 {
    font-size: 27px;
    line-height: 1.2;
  }

  .bopguide-cleaning-software .bopguide-hero-intro {
    font-size: 15.5px;
  }

  .bopguide-cleaning-software .bopguide-hero-nav {
    padding: 20px 20px 8px;
  }

  .bopguide-cleaning-software .bopguide-section {
    padding: 40px 0;
  }

  .bopguide-cleaning-software .bopguide-h2 {
    font-size: 21px;
  }

  .bopguide-cleaning-software .bopguide-body {
    font-size: 15px;
    margin-bottom: 22px;
  }

  .bopguide-cleaning-software .bopguide-feature-grid,
  .bopguide-cleaning-software .bopguide-steps-grid {
    grid-template-columns: 1fr;
  }

  .bopguide-cleaning-software .bopguide-checklist-item,
  .bopguide-cleaning-software .bopguide-mistake-item {
    font-size: 15px;
    padding: 14px 2px;
  }

  .bopguide-cleaning-software .bopguide-cta-panel {
    padding: 28px 24px;
    border-radius: 16px;
  }

  .bopguide-cleaning-software .bopguide-cta-title {
    font-size: 21px;
  }

  .bopguide-cleaning-software .bopguide-btn-primary {
    display: block;
    text-align: center;
    width: 100%;
  }
}
.bopguide-hvac-software {
  --bop-purple: #6D4AE8;
  --bop-purple-dark: #4E32B8;
  --bop-lavender: #F4F1FC;
  --bop-border: #E3DBF7;
  --bop-text: #1E1B2E;
  --bop-text-soft: #4B4560;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: var(--bop-text);
  background: #ffffff;
  line-height: 1.6;
}

.bopguide-hvac-software * { box-sizing: border-box; }
.bopguide-hvac-software .bopguide-container { max-width: 1120px; margin: 0 auto; padding: 0 24px; }
.bopguide-hvac-software .bopguide-narrow { max-width: 760px; }
.bopguide-hvac-software .bopguide-section { padding: 56px 0; }
.bopguide-hvac-software .bopguide-section-tint { background: var(--bop-lavender); }

/* HERO — light lavender, matches reference */
.bopguide-hvac-software .bopguide-hero {
  background: linear-gradient(180deg, var(--bop-lavender) 0%, #ffffff 100%);
  padding: 64px 24px;
}
.bopguide-hvac-software .bopguide-hero-inner {
  max-width: 1120px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 48px;
  align-items: start;
}
.bopguide-hvac-software .bopguide-eyebrow {
  color: var(--bop-purple);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin: 0 0 12px;
}
.bopguide-hvac-software .bopguide-title {
  font-size: 42px;
  line-height: 1.2;
  font-weight: 800;
  margin: 0 0 18px;
  color: var(--bop-text);
}
.bopguide-hvac-software .bopguide-highlight { color: var(--bop-purple); }
.bopguide-hvac-software .bopguide-lede {
  font-size: 17px;
  color: var(--bop-text-soft);
  margin: 0 0 20px;
  max-width: 560px;
}
.bopguide-hvac-software .bopguide-jumplink {
  color: var(--bop-purple);
  font-weight: 700;
  font-size: 14.5px;
  text-decoration: none;
}
.bopguide-hvac-software .bopguide-jumplink:hover { text-decoration: underline; }

.bopguide-hvac-software .bopguide-toc {
  background: #ffffff;
  border: 1px solid var(--bop-border);
  border-radius: 16px;
  padding: 28px 28px 8px;
  box-shadow: 0 12px 30px rgba(109, 74, 232, 0.08);
}
.bopguide-hvac-software .bopguide-toc-title {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bop-purple);
  margin: 0 0 14px;
}
.bopguide-hvac-software .bopguide-toc ul { list-style: none; margin: 0; padding: 0; }
.bopguide-hvac-software .bopguide-toc li { border-bottom: 1px solid var(--bop-border); }
.bopguide-hvac-software .bopguide-toc li:last-child { border-bottom: none; }
.bopguide-hvac-software .bopguide-toc a {
  display: block;
  padding: 14px 0;
  color: var(--bop-text);
  text-decoration: none;
  font-size: 15px;
  font-weight: 600;
}
.bopguide-hvac-software .bopguide-toc a:hover { color: var(--bop-purple); }

/* HEADINGS / BODY */
.bopguide-hvac-software .bopguide-section-title { font-size: 26px; font-weight: 800; color: var(--bop-text); margin: 0 0 16px; line-height: 1.3; }
.bopguide-hvac-software .bopguide-body { font-size: 16px; color: var(--bop-text-soft); margin: 0 0 8px; }
.bopguide-hvac-software .bopguide-block { margin-bottom: 40px; }
.bopguide-hvac-software .bopguide-block:last-child { margin-bottom: 0; }

/* FEATURE GRID */
.bopguide-hvac-software .bopguide-feature-grid { margin-top: 28px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.bopguide-hvac-software .bopguide-feature-card { background: #ffffff; border: 1px solid var(--bop-border); border-radius: 12px; padding: 20px 18px; }
.bopguide-hvac-software .bopguide-feature-num { display: block; font-size: 13px; font-weight: 700; color: var(--bop-purple); margin-bottom: 10px; }
.bopguide-hvac-software .bopguide-feature-card p { margin: 0; font-size: 15px; font-weight: 600; color: var(--bop-text); }

/* CHECKLIST */
.bopguide-hvac-software .bopguide-checklist-grid { margin: 28px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 14px 18px; }
.bopguide-hvac-software .bopguide-checklist-grid li { display: flex; align-items: center; gap: 12px; background: #ffffff; border: 1px solid var(--bop-border); border-radius: 10px; padding: 16px 18px; font-size: 15px; font-weight: 500; color: var(--bop-text); }
.bopguide-hvac-software .bopguide-check { flex: none; width: 22px; height: 22px; border-radius: 50%; background: var(--bop-lavender); color: var(--bop-purple); font-size: 12px; font-weight: 800; display: flex; align-items: center; justify-content: center; }

/* STEPS */
.bopguide-hvac-software .bopguide-steps { margin-top: 28px; display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; }
.bopguide-hvac-software .bopguide-step { text-align: center; background: var(--bop-lavender); border: 1px solid var(--bop-border); border-radius: 12px; padding: 20px 12px; }
.bopguide-hvac-software .bopguide-step-num { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; margin: 0 auto 10px; border-radius: 50%; background: var(--bop-purple); color: #ffffff; font-weight: 700; font-size: 14px; }
.bopguide-hvac-software .bopguide-step p { margin: 0; font-size: 13.5px; font-weight: 600; color: var(--bop-text); }

/* MISTAKES */
.bopguide-hvac-software .bopguide-mistakes-section { background: #F8F6FD; border-top: 1px solid var(--bop-border); border-bottom: 1px solid var(--bop-border); }
.bopguide-hvac-software .bopguide-mistakes-list { margin: 24px 0 0; padding: 0; list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 12px 18px; }
.bopguide-hvac-software .bopguide-mistakes-list li { position: relative; padding: 14px 16px 14px 42px; background: #ffffff; border: 1px solid var(--bop-border); border-left: 3px solid var(--bop-purple); border-radius: 8px; font-size: 15px; color: var(--bop-text-soft); }
.bopguide-hvac-software .bopguide-mistakes-list li::before { content: "!"; position: absolute; left: 14px; top: 50%; transform: translateY(-50%); width: 18px; height: 18px; border-radius: 50%; background: var(--bop-purple); color: #ffffff; font-size: 12px; font-weight: 800; display: flex; align-items: center; justify-content: center; }

/* CTA */
.bopguide-hvac-software .bopguide-cta { background: linear-gradient(180deg, #241638 0%, #1B1230 100%); padding: 64px 24px; text-align: center; }
.bopguide-hvac-software .bopguide-cta-inner { margin: 0 auto; }
.bopguide-hvac-software .bopguide-cta-title { color: #ffffff; font-size: 28px; font-weight: 800; margin: 0 0 16px; }
.bopguide-hvac-software .bopguide-cta-text { color: #D9D1F0; font-size: 15.5px; margin: 0 0 12px; }
.bopguide-hvac-software .bopguide-cta-text a { color: #ffffff; text-decoration: underline; font-weight: 600; }
.bopguide-hvac-software .bopguide-btn { display: inline-block; margin-top: 16px; background: var(--bop-purple); color: #ffffff; font-weight: 700; font-size: 15px; padding: 14px 30px; border-radius: 999px; text-decoration: none; transition: background 0.15s ease; }
.bopguide-hvac-software .bopguide-btn:hover { background: var(--bop-purple-dark); }

/* TABLET */
@media (max-width: 980px) {
  .bopguide-hvac-software .bopguide-hero-inner { grid-template-columns: 1fr; gap: 32px; }
  .bopguide-hvac-software .bopguide-title { font-size: 32px; }
  .bopguide-hvac-software .bopguide-feature-grid { grid-template-columns: repeat(2, 1fr); }
  .bopguide-hvac-software .bopguide-steps { grid-template-columns: repeat(3, 1fr); }
  .bopguide-hvac-software .bopguide-checklist-grid,
  .bopguide-hvac-software .bopguide-mistakes-list { grid-template-columns: 1fr; }
}

/* MOBILE */
@media (max-width: 600px) {
  .bopguide-hvac-software .bopguide-hero { padding: 44px 20px; }
  .bopguide-hvac-software .bopguide-title { font-size: 26px; }
  .bopguide-hvac-software .bopguide-lede { font-size: 15.5px; }
  .bopguide-hvac-software .bopguide-section { padding: 40px 0; }
  .bopguide-hvac-software .bopguide-section-title { font-size: 22px; }
  .bopguide-hvac-software .bopguide-feature-grid { grid-template-columns: 1fr; }
  .bopguide-hvac-software .bopguide-steps { grid-template-columns: repeat(2, 1fr); }
  .bopguide-hvac-software .bopguide-cta-title { font-size: 22px; }
  .bopguide-hvac-software .bopguide-btn { width: 100%; }
}
/* =========================================================
   BIZOPSPICK — SCHEDULING FEATURES
   NEW ISOLATED DESIGN SYSTEM
   ========================================================= */

.sfguide-page {
    --sf-purple: #8069D9;
    --sf-purple-dark: #6650BC;
    --sf-indigo: #707BD3;

    --sf-lavender: #f4f1fc;
    --sf-soft: #faf9fe;
    --sf-border: #e3dbf7;

    --sf-text: #1c1930;
    --sf-muted: #575268;

    --sf-white: #ffffff;

    width: 100%;
    background: var(--sf-white);
    color: var(--sf-text);

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    line-height: 1.65;
}


.sfguide-page *,
.sfguide-page *::before,
.sfguide-page *::after {
    box-sizing: border-box;
}


/* ==============================================
   LAYOUT
   ============================================== */

.sfguide-page .sfguide-container {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

.sfguide-page .sfguide-section {
    padding: 68px 0;
}

.sfguide-page .sfguide-soft {
    background: var(--sf-soft);
}

.sfguide-page .sfguide-h2 {
    margin: 0 0 13px;

    font-size: 29px;
    line-height: 1.25;
    font-weight: 750;

    color: var(--sf-text);
}

.sfguide-page .sfguide-intro {
    max-width: 720px;

    margin: 0;

    color: var(--sf-muted);
    font-size: 15.5px;
    line-height: 1.7;
}


/* ==============================================
   HERO
   ============================================== */

.sfguide-page .sfguide-hero {
    padding: 80px 0;

    background:
        linear-gradient(
            180deg,
            #f6f3fd 0%,
            #ffffff 92%
        );

    border-bottom: 1px solid var(--sf-border);
}

.sfguide-page .sfguide-hero-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.05fr)
        minmax(380px, .95fr);

    gap: 70px;
    align-items: center;
}

.sfguide-page .sfguide-eyebrow {
    margin: 0 0 15px;

    color: var(--sf-purple);

    font-size: 12px;
    font-weight: 750;

    letter-spacing: .1em;
    text-transform: uppercase;
}

.sfguide-page .sfguide-h1 {
    max-width: 700px;

    margin: 0 0 23px;

    color: var(--sf-text);

    font-size: clamp(39px, 4vw, 52px);
    font-weight: 780;

    line-height: 1.1;
    letter-spacing: -.035em;
}

.sfguide-page .sfguide-h1-purple {
    color: #8B78D8;
}

.sfguide-page .sfguide-lede {
    max-width: 590px;

    margin: 0;

    color: var(--sf-muted);

    font-size: 17px;
    line-height: 1.72;
}


/* ==============================================
   HERO BOARD
   ============================================== */

.sfguide-page .sfguide-board {
    width: 100%;
    min-width: 0;

    padding: 22px;

    background: var(--sf-white);

    border: 1px solid var(--sf-border);
    border-radius: 18px;

    box-shadow:
        0 20px 48px rgba(45, 31, 94, .09);
}

.sfguide-page .sfguide-board-head {
    display: flex;
    align-items: center;
    gap: 9px;

    padding-bottom: 15px;
    margin-bottom: 16px;

    border-bottom: 1px solid var(--sf-border);

    color: #777087;

    font-size: 11px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: .07em;
}

.sfguide-page .sfguide-live-dot {
    width: 8px;
    height: 8px;

    background: var(--sf-purple);
    border-radius: 50%;
}

.sfguide-page .sfguide-week {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));

    gap: 7px;
}

.sfguide-page .sfguide-day {
    min-width: 0;
    min-height: 145px;

    padding: 9px 6px;

    background: var(--sf-lavender);

    border: 1px solid transparent;
    border-radius: 9px;
}

.sfguide-page .sfguide-today {
    background: #efeafd;
    border-color: var(--sf-purple);
}

.sfguide-page .sfguide-day-name {
    display: block;

    margin-bottom: 10px;

    color: #777087;

    font-size: 9px;
    font-weight: 700;

    text-transform: uppercase;
}

.sfguide-page .sfguide-job {
    position: relative;

    display: block;

    width: 100%;

    margin-bottom: 7px;
    padding: 6px 5px 6px 9px;

    background: var(--sf-white);

    border: 1px solid var(--sf-border);
    border-radius: 6px;

    color: var(--sf-purple-dark);

    font-size: 9.5px;
    font-weight: 650;

    line-height: 1.35;

    overflow-wrap: anywhere;
}

.sfguide-page .sfguide-job::before {
    content: "";

    position: absolute;

    left: 0;
    top: 3px;
    bottom: 3px;

    width: 3px;

    background: var(--sf-purple);

    border-radius: 3px;
}

.sfguide-page .sfguide-job-blue {
    color: var(--sf-indigo);
}

.sfguide-page .sfguide-job-blue::before {
    background: var(--sf-indigo);
}

.sfguide-page .sfguide-board-footer {
    display: grid;
    gap: 9px;

    margin-top: 18px;
    padding-top: 16px;

    border-top: 1px solid var(--sf-border);
}

.sfguide-page .sfguide-board-footer > div {
    display: flex;
    align-items: center;
    gap: 8px;

    color: var(--sf-muted);

    font-size: 12px;
}

.sfguide-page .sfguide-board-footer strong {
    margin-left: auto;

    color: var(--sf-text);

    font-size: 11px;
    font-weight: 650;
}

.sfguide-page .sfguide-footer-dot {
    width: 7px;
    height: 7px;

    flex: 0 0 auto;

    background: var(--sf-purple);

    border-radius: 50%;
}

.sfguide-page .sfguide-footer-dot-blue {
    background: var(--sf-indigo);
}

.sfguide-page .sfguide-board-caption {
    margin: 13px 0 0;

    color: #777087;

    font-size: 11px;
    text-align: center;
}


/* ==============================================
   CHIPS
   ============================================== */

.sfguide-page .sfguide-chip-grid {
    display: flex;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 27px;
}

.sfguide-page .sfguide-chip-grid span {
    padding: 10px 15px;

    background: var(--sf-soft);

    border: 1px solid var(--sf-border);
    border-radius: 999px;

    color: var(--sf-text);

    font-size: 14px;
    font-weight: 550;
}


/* ==============================================
   TIER TITLES
   ============================================== */

.sfguide-page .sfguide-tier-heading {
    display: flex;
    align-items: center;
    gap: 13px;

    margin-bottom: 30px;
}

.sfguide-page .sfguide-tier-heading > span {
    padding: 6px 12px;

    background: var(--sf-purple);

    border-radius: 999px;

    color: #fff;

    font-size: 11px;
    font-weight: 750;

    text-transform: uppercase;
}

.sfguide-page .sfguide-tier-heading h2 {
    margin: 0;

    color: var(--sf-text);

    font-size: 22px;
    font-weight: 740;
}

.sfguide-page .sfguide-tier-blue > span {
    background: var(--sf-indigo);
}

.sfguide-page .sfguide-tier-muted > span {
    background: #746a90;
}


/* ==============================================
   CORE FEATURES
   ============================================== */

.sfguide-page .sfguide-core-grid {
    display: grid;
    gap: 16px;
}

.sfguide-page .sfguide-core-card {
    display: grid;

    grid-template-columns:
        58px
        minmax(0, 1fr);

    gap: 22px;

    width: 100%;

    padding: 27px 29px;

    background: #fff;

    border: 1px solid var(--sf-border);
    border-radius: 13px;
}

.sfguide-page .sfguide-core-card:nth-child(even) {
    background: #fcfbff;
}

.sfguide-page .sfguide-number {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    background: var(--sf-lavender);

    border-radius: 10px;

    color: var(--sf-purple-dark);

    font-size: 16px;
    font-weight: 760;
}

.sfguide-page .sfguide-core-content {
    width: 100%;
    min-width: 0;
}

.sfguide-page .sfguide-core-content h3 {
    width: 100%;

    margin: 2px 0 9px;

    color: var(--sf-text);

    font-size: 19px;
    font-weight: 730;

    line-height: 1.35;
}

.sfguide-page .sfguide-core-content p {
    width: 100%;

    margin: 0;

    color: var(--sf-muted);

    font-size: 15px;
    line-height: 1.7;

    word-break: normal;
}

.sfguide-page .sfguide-tag {
    display: inline-block;

    margin-top: 13px;
    padding: 5px 11px;

    background: var(--sf-lavender);

    border-radius: 999px;

    color: var(--sf-purple-dark);

    font-size: 11px;
    font-weight: 700;

    text-transform: uppercase;
}


/* ==============================================
   FEATURE CARDS
   ============================================== */

.sfguide-page .sfguide-three-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 18px;
}

.sfguide-page .sfguide-two-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;

    margin-bottom: 27px;
}

.sfguide-page .sfguide-feature-card {
    position: relative;

    min-width: 0;

    padding: 26px 24px;

    background: #fff;

    border: 1px solid var(--sf-border);
    border-radius: 13px;
}

.sfguide-page .sfguide-feature-card::before {
    content: "";

    position: absolute;

    left: 24px;
    top: -1px;

    width: 34px;
    height: 3px;

    background: var(--sf-purple);

    border-radius: 0 0 4px 4px;
}

.sfguide-page .sfguide-feature-card h3 {
    margin: 4px 0 10px;

    color: var(--sf-text);

    font-size: 17px;
    font-weight: 720;

    line-height: 1.4;
}

.sfguide-page .sfguide-feature-card p {
    margin: 0;

    color: var(--sf-muted);

    font-size: 14.5px;
    line-height: 1.7;
}


/* ==============================================
   NOT YET
   ============================================== */

.sfguide-page .sfguide-notyet {
    padding: 27px;

    background: var(--sf-lavender);

    border: 1px dashed #cfc4e9;
    border-radius: 13px;
}

.sfguide-page .sfguide-notyet-title {
    display: flex;

    align-items: flex-start;
    gap: 14px;

    margin-bottom: 19px;
}

.sfguide-page .sfguide-notyet-title > span {
    flex: 0 0 auto;

    padding: 6px 11px;

    background: #fff;

    border: 1px solid var(--sf-border);
    border-radius: 999px;

    color: var(--sf-purple-dark);

    font-size: 11px;
    font-weight: 750;

    text-transform: uppercase;
}

.sfguide-page .sfguide-notyet-title strong {
    color: var(--sf-text);

    font-size: 15px;
    font-weight: 650;

    line-height: 1.5;
}

.sfguide-page .sfguide-notyet-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px 18px;

    margin-bottom: 18px;
}

.sfguide-page .sfguide-notyet-grid span {
    position: relative;

    padding-left: 17px;

    color: var(--sf-muted);

    font-size: 14px;
}

.sfguide-page .sfguide-notyet-grid span::before {
    content: "";

    position: absolute;

    left: 0;
    top: 8px;

    width: 7px;
    height: 7px;

    border: 1.5px solid #8b829f;
    border-radius: 50%;
}

.sfguide-page .sfguide-notyet > p {
    margin: 0;

    padding-top: 17px;

    border-top: 1px solid var(--sf-border);

    color: var(--sf-muted);

    font-size: 14px;
}


/* ==============================================
   QUESTIONS
   ============================================== */

.sfguide-page .sfguide-question-list {
    width: 100%;
    max-width: 870px;

    margin-top: 30px;

    border-top: 1px solid var(--sf-border);
}

.sfguide-page .sfguide-question {
    display: grid;

    grid-template-columns:
        40px
        minmax(0, 1fr)
        20px;

    gap: 15px;
    align-items: center;

    width: 100%;
    min-width: 0;

    padding: 15px 3px;

    border-bottom: 1px solid var(--sf-border);
}

.sfguide-page .sfguide-question > span {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    background: #fff;

    border: 1.5px solid var(--sf-purple);
    border-radius: 50%;

    color: var(--sf-purple-dark);

    font-size: 12px;
    font-weight: 750;
}

.sfguide-page .sfguide-question p {
    width: 100%;
    min-width: 0;

    margin: 0;

    color: var(--sf-text);

    font-size: 15px;
    font-weight: 560;

    line-height: 1.45;

    word-break: normal;
    overflow-wrap: normal;
}

.sfguide-page .sfguide-question i {
    display: block;

    width: 18px;
    height: 18px;

    justify-self: end;

    background: #fff;

    border: 1.5px solid #cec7dc;
    border-radius: 5px;
}


/* ==============================================
   TEST GRID
   ============================================== */

.sfguide-page .sfguide-test-grid {
    display: grid;

    grid-template-columns:
        repeat(7, minmax(0, 1fr));

    gap: 10px;

    margin-top: 33px;
}

.sfguide-page .sfguide-test-grid > div {
    text-align: center;
}

.sfguide-page .sfguide-test-grid span {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 35px;
    height: 35px;

    margin: 0 auto 11px;

    background: var(--sf-purple);

    border-radius: 50%;

    color: #fff;

    font-size: 13px;
    font-weight: 750;
}

.sfguide-page .sfguide-test-grid p {
    margin: 0;

    color: var(--sf-muted);

    font-size: 12.5px;
    font-weight: 550;

    line-height: 1.4;
}


/* ==============================================
   MISTAKES
   ============================================== */

.sfguide-page .sfguide-mistakes {
    display: flex;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 26px;
}

.sfguide-page .sfguide-mistakes span {
    padding: 10px 14px;

    background: var(--sf-soft);

    border: 1px solid var(--sf-border);
    border-radius: 9px;

    color: var(--sf-muted);

    font-size: 14px;
}


/* ==============================================
   CTA
   ============================================== */

.sfguide-page .sfguide-cta {
    padding: 72px 0;

    background:
        linear-gradient(
            135deg,
            #8B78D8,
            #6C56C4
        );
}

.sfguide-page .sfguide-cta-inner {
    max-width: 720px;

    text-align: center;
}

.sfguide-page .sfguide-cta-label {
    margin: 0 0 10px;

    color: #d9d0ff;

    font-size: 12px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: .08em;
}

.sfguide-page .sfguide-cta h2 {
    margin: 0 0 14px;

    color: #fff;

    font-size: 29px;
    font-weight: 760;
}

.sfguide-page .sfguide-cta-inner > p:not(.sfguide-cta-label) {
    margin: 0 0 25px;

    color: rgba(255,255,255,.86);

    font-size: 15.5px;
}

.sfguide-page .sfguide-button {
    display: inline-block;

    padding: 13px 27px;

    background: #fff;

    border-radius: 9px;

    color: var(--sf-purple-dark);

    font-size: 15px;
    font-weight: 700;

    text-decoration: none;
}


/* ==============================================
   TABLET
   ============================================== */

@media (max-width: 960px) {

    .sfguide-page .sfguide-hero-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .sfguide-page .sfguide-board {
        max-width: 520px;
    }

    .sfguide-page .sfguide-three-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .sfguide-page .sfguide-test-grid {
        grid-template-columns:
            repeat(4, minmax(0, 1fr));

        row-gap: 28px;
    }
}


/* ==============================================
   MOBILE
   ============================================== */

@media (max-width: 640px) {

    .sfguide-page .sfguide-container {
        padding: 0 18px;
    }

    .sfguide-page .sfguide-hero {
        padding: 55px 0;
    }

    .sfguide-page .sfguide-h1 {
        font-size: 32px;
    }

    .sfguide-page .sfguide-section {
        padding: 48px 0;
    }

    .sfguide-page .sfguide-h2 {
        font-size: 23px;
    }

    .sfguide-page .sfguide-week {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .sfguide-page .sfguide-day {
        min-height: auto;
    }

    .sfguide-page .sfguide-board-footer > div {
        flex-wrap: wrap;
    }

    .sfguide-page .sfguide-board-footer strong {
        width: 100%;

        margin-left: 15px;
    }

    .sfguide-page .sfguide-tier-heading {
        flex-direction: column;
        align-items: flex-start;

        gap: 9px;
    }

    .sfguide-page .sfguide-tier-heading h2 {
        font-size: 19px;
    }

    .sfguide-page .sfguide-core-card {
        grid-template-columns: 1fr;

        gap: 14px;

        padding: 22px 20px;
    }

    .sfguide-page .sfguide-number {
        width: 44px;
        height: 44px;
    }

    .sfguide-page .sfguide-three-grid,
    .sfguide-page .sfguide-two-grid {
        grid-template-columns: 1fr;
    }

    .sfguide-page .sfguide-notyet-title {
        flex-direction: column;
    }

    .sfguide-page .sfguide-notyet-grid {
        grid-template-columns: 1fr;
    }

    .sfguide-page .sfguide-question {
        grid-template-columns:
            36px
            minmax(0, 1fr)
            20px;

        gap: 11px;
    }

    .sfguide-page .sfguide-question p {
        font-size: 14px;
    }

    .sfguide-page .sfguide-test-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .sfguide-page .sfguide-mistakes {
        flex-direction: column;
    }

    .sfguide-page .sfguide-mistakes span {
        width: 100%;
    }

    .sfguide-page .sfguide-button {
        width: 100%;
    }
}
/* =========================================================
   FORCE FIX — SCHEDULING QUESTIONS
   ========================================================= */

.sfguide-page .sfguide-question-list {
    display: block !important;
    width: 100% !important;
    max-width: 870px !important;
    float: none !important;
}

.sfguide-page .sfguide-question {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    padding: 16px 4px !important;

    float: none !important;
    position: relative !important;

    border-bottom: 1px solid #e3dbf7 !important;
}

.sfguide-page .sfguide-question > span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 36px !important;

    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    height: 36px !important;

    margin: 0 !important;
    padding: 0 !important;

    float: none !important;
    position: static !important;
}

.sfguide-page .sfguide-question > p {
    display: block !important;

    flex: 1 1 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    float: none !important;
    position: static !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.sfguide-page .sfguide-question > i {
    display: block !important;

    flex: 0 0 18px !important;

    width: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    height: 18px !important;

    margin: 0 !important;
    padding: 0 !important;

    float: none !important;
    position: static !important;
}
/* =========================================================
   BIZOPSPICK — CRM COMPARISON GUIDE
   UNIQUE SYSTEM: .crmguide-*
   ========================================================= */

.crmguide-page {
    --crm-purple: #8069d9;
    --crm-purple-dark: #6750bd;
    --crm-purple-soft: #9a88df;

    --crm-lavender: #f3f0fb;
    --crm-soft: #faf9fd;
    --crm-border: #e3dcf4;

    --crm-text: #1d1930;
    --crm-muted: #5d576d;
    --crm-light: #80798f;

    --crm-white: #ffffff;

    width: 100%;
    background: var(--crm-white);
    color: var(--crm-text);

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    line-height: 1.65;
}

.crmguide-page *,
.crmguide-page *::before,
.crmguide-page *::after {
    box-sizing: border-box;
}


/* =========================================================
   LAYOUT
   ========================================================= */

.crmguide-page .crmguide-container {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

.crmguide-page .crmguide-section {
    padding: 70px 0;
}

.crmguide-page .crmguide-soft {
    background: var(--crm-soft);
}

.crmguide-page .crmguide-h2 {
    margin: 0 0 14px;

    color: var(--crm-text);

    font-size: 29px;
    font-weight: 750;
    line-height: 1.25;

    letter-spacing: -0.025em;
}

.crmguide-page .crmguide-intro {
    max-width: 730px;

    margin: 0;

    color: var(--crm-muted);

    font-size: 15.5px;
    line-height: 1.72;
}

.crmguide-page .crmguide-kicker {
    margin: 0 0 9px;

    color: var(--crm-purple);

    font-size: 11px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: 0.09em;
}


/* =========================================================
   HERO
   ========================================================= */

.crmguide-page .crmguide-hero {
    padding: 82px 0;

    background:
        linear-gradient(
            180deg,
            #f5f2fc 0%,
            #ffffff 94%
        );

    border-bottom: 1px solid var(--crm-border);
}

.crmguide-page .crmguide-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) 460px;
    gap: 70px;
    align-items: center;
}

.crmguide-page .crmguide-eyebrow {
    margin: 0 0 16px;

    color: var(--crm-purple);

    font-size: 12px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.crmguide-page .crmguide-h1 {
    max-width: 700px;

    margin: 0 0 23px;

    color: var(--crm-text);

    font-size: clamp(39px, 4vw, 52px);
    font-weight: 780;

    line-height: 1.1;
    letter-spacing: -0.035em;
}

.crmguide-page .crmguide-h1 span {
    color: #8b78d8;
}

.crmguide-page .crmguide-lede {
    max-width: 600px;

    margin: 0;

    color: var(--crm-muted);

    font-size: 17px;
    line-height: 1.72;
}


/* =========================================================
   CRM DASHBOARD
   ========================================================= */

.crmguide-page .crmguide-dashboard {
    width: 100%;
    max-width: 460px;
    min-width: 0;

    justify-self: end;
    align-self: center;

    padding: 22px;

    background: var(--crm-white);

    border: 1px solid var(--crm-border);
    border-radius: 18px;

    box-shadow:
        0 20px 50px rgba(54, 38, 105, 0.09);
}

.crmguide-page .crmguide-dash-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding-bottom: 15px;
    margin-bottom: 18px;

    border-bottom: 1px solid var(--crm-border);

    color: var(--crm-light);

    font-size: 11px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.crmguide-page .crmguide-dash-head > div {
    display: flex;
    align-items: center;
    gap: 8px;
}

.crmguide-page .crmguide-dash-dot {
    width: 8px;
    height: 8px;

    background: var(--crm-purple);

    border-radius: 50%;
}

.crmguide-page .crmguide-dash-status {
    padding: 4px 8px;

    background: var(--crm-lavender);

    border-radius: 999px;

    color: var(--crm-purple-dark);

    font-size: 9px;
}

.crmguide-page .crmguide-profile {
    display: flex;
    align-items: center;
    gap: 12px;

    padding: 14px;

    background: var(--crm-soft);

    border: 1px solid var(--crm-border);
    border-radius: 12px;
}

.crmguide-page .crmguide-avatar {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 43px;
    height: 43px;

    flex: 0 0 auto;

    background: var(--crm-purple);

    border-radius: 50%;

    color: #fff;

    font-size: 12px;
    font-weight: 750;
}

.crmguide-page .crmguide-profile-info {
    display: flex;
    flex-direction: column;

    min-width: 0;
}

.crmguide-page .crmguide-profile-info strong {
    color: var(--crm-text);

    font-size: 13px;
}

.crmguide-page .crmguide-profile-info span {
    color: var(--crm-light);

    font-size: 10px;
}

.crmguide-page .crmguide-profile-tag {
    margin-left: auto;

    padding: 5px 8px;

    background: #eee9fa;

    border-radius: 999px;

    color: var(--crm-purple-dark);

    font-size: 9px;
    font-weight: 700;
}

.crmguide-page .crmguide-profile-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 9px;

    margin-top: 12px;
}

.crmguide-page .crmguide-profile-grid > div {
    padding: 11px 12px;

    background: #fff;

    border: 1px solid var(--crm-border);
    border-radius: 9px;
}

.crmguide-page .crmguide-profile-grid small {
    display: block;

    margin-bottom: 3px;

    color: var(--crm-light);

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 0.05em;
}

.crmguide-page .crmguide-profile-grid strong {
    display: block;

    color: var(--crm-text);

    font-size: 11px;
    font-weight: 650;
}

.crmguide-page .crmguide-activity {
    margin-top: 17px;
    padding-top: 15px;

    border-top: 1px solid var(--crm-border);
}

.crmguide-page .crmguide-activity-title {
    display: block;

    margin-bottom: 11px;

    color: var(--crm-light);

    font-size: 9px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.crmguide-page .crmguide-activity > div {
    display: flex;
    align-items: flex-start;

    gap: 9px;

    margin-bottom: 10px;
}

.crmguide-page .crmguide-activity i {
    width: 7px;
    height: 7px;

    margin-top: 5px;

    flex: 0 0 auto;

    background: var(--crm-purple-soft);

    border-radius: 50%;
}

.crmguide-page .crmguide-activity p {
    margin: 0;

    color: var(--crm-text);

    font-size: 11px;
    font-style: normal;
}

.crmguide-page .crmguide-activity small {
    display: block;

    color: var(--crm-light);

    font-size: 9px;
}


/* =========================================================
   WHAT CRM SHOULD DO
   ========================================================= */

.crmguide-page .crmguide-chip-grid {
    display: flex;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 26px;
}

.crmguide-page .crmguide-chip-grid span {
    position: relative;

    padding: 10px 15px 10px 33px;

    background: var(--crm-soft);

    border: 1px solid var(--crm-border);
    border-radius: 999px;

    color: var(--crm-text);

    font-size: 14px;
    font-weight: 550;
}

.crmguide-page .crmguide-chip-grid span::before {
    content: "✓";

    position: absolute;
    left: 13px;

    color: var(--crm-purple);

    font-weight: 800;
}


/* =========================================================
   COMPARISON FACTORS
   ========================================================= */

.crmguide-page .crmguide-factor-grid {
    display: grid;
    gap: 17px;

    margin-top: 32px;
}

.crmguide-page .crmguide-factor {
    display: grid;

    grid-template-columns:
        60px
        minmax(0, 1fr);

    gap: 23px;

    padding: 28px 30px;

    background: #fff;

    border: 1px solid var(--crm-border);
    border-radius: 14px;
}

.crmguide-page .crmguide-factor:nth-child(even) {
    background: #fdfcff;
}

.crmguide-page .crmguide-factor-num {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    background: var(--crm-lavender);

    border-radius: 10px;

    color: var(--crm-purple-dark);

    font-size: 15px;
    font-weight: 760;
}

.crmguide-page .crmguide-factor-content {
    width: 100%;
    min-width: 0;
}

.crmguide-page .crmguide-factor-content h3 {
    margin: 2px 0 10px;

    color: var(--crm-text);

    font-size: 20px;
    font-weight: 735;

    line-height: 1.35;
}

.crmguide-page .crmguide-factor-content > p {
    max-width: 870px;

    margin: 0 0 14px;

    color: var(--crm-muted);

    font-size: 15px;
    line-height: 1.7;
}

.crmguide-page .crmguide-note {
    margin-top: 15px !important;
    margin-bottom: 0 !important;

    padding: 11px 14px;

    background: var(--crm-soft);

    border-left: 3px solid var(--crm-purple-soft);

    border-radius: 0 8px 8px 0;

    color: var(--crm-muted) !important;

    font-size: 13.5px !important;
}


/* =========================================================
   MINI CHECKS
   ========================================================= */

.crmguide-page .crmguide-mini-checks,
.crmguide-page .crmguide-record-grid,
.crmguide-page .crmguide-price-check,
.crmguide-page .crmguide-integration-grid {
    display: flex;
    flex-wrap: wrap;

    gap: 8px;
}

.crmguide-page .crmguide-mini-checks span,
.crmguide-page .crmguide-record-grid span,
.crmguide-page .crmguide-price-check span,
.crmguide-page .crmguide-integration-grid span {
    padding: 7px 10px;

    background: var(--crm-lavender);

    border-radius: 7px;

    color: var(--crm-text);

    font-size: 12.5px;
    font-weight: 550;
}


/* =========================================================
   PIPELINE
   ========================================================= */

.crmguide-page .crmguide-pipeline {
    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 7px;

    margin-top: 18px;
}

.crmguide-page .crmguide-pipeline span {
    position: relative;

    padding: 12px 8px;

    background: var(--crm-soft);

    border: 1px solid var(--crm-border);
    border-radius: 8px;

    color: var(--crm-muted);

    font-size: 11px;
    font-weight: 650;

    text-align: center;
}

.crmguide-page .crmguide-pipeline span:nth-child(3),
.crmguide-page .crmguide-pipeline span:nth-child(4) {
    background: var(--crm-lavender);

    border-color: #d5c9f1;

    color: var(--crm-purple-dark);
}


/* =========================================================
   NOT NEEDED
   ========================================================= */

.crmguide-page .crmguide-notneeded {
    padding: 30px;

    background: var(--crm-lavender);

    border: 1px dashed #cabee6;
    border-radius: 15px;
}

.crmguide-page .crmguide-notneeded-head {
    display: flex;
    align-items: flex-start;

    gap: 18px;
}

.crmguide-page .crmguide-notneeded-head > span {
    flex: 0 0 auto;

    padding: 6px 11px;

    background: #fff;

    border: 1px solid var(--crm-border);
    border-radius: 999px;

    color: var(--crm-purple-dark);

    font-size: 10px;
    font-weight: 750;

    text-transform: uppercase;
}

.crmguide-page .crmguide-notneeded-head h2 {
    margin: 0 0 7px;

    color: var(--crm-text);

    font-size: 22px;
    font-weight: 735;
}

.crmguide-page .crmguide-notneeded-head p {
    margin: 0;

    color: var(--crm-muted);

    font-size: 14px;
}

.crmguide-page .crmguide-notneeded-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px 20px;

    margin-top: 23px;
}

.crmguide-page .crmguide-notneeded-grid span {
    position: relative;

    padding-left: 18px;

    color: var(--crm-muted);

    font-size: 14px;
}

.crmguide-page .crmguide-notneeded-grid span::before {
    content: "";

    position: absolute;

    left: 0;
    top: 8px;

    width: 7px;
    height: 7px;

    border: 1.5px solid #85799d;
    border-radius: 50%;
}

.crmguide-page .crmguide-notneeded-foot {
    margin: 22px 0 0;
    padding-top: 18px;

    border-top: 1px solid var(--crm-border);

    color: var(--crm-muted);

    font-size: 14px;
}


/* =========================================================
   SCORECARD
   ========================================================= */

.crmguide-page .crmguide-score-section {
    background: var(--crm-soft);
}

.crmguide-page .crmguide-scorecard {
    width: 100%;
    max-width: 880px;

    margin-top: 30px;

    border-top: 1px solid var(--crm-border);
}

.crmguide-page .crmguide-scorecard > div {
    display: flex !important;
    align-items: center !important;

    gap: 15px !important;

    width: 100% !important;
    min-width: 0 !important;

    padding: 15px 3px !important;

    border-bottom: 1px solid var(--crm-border);

    float: none !important;
}

.crmguide-page .crmguide-scorecard > div > span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 36px !important;

    width: 36px !important;
    height: 36px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #fff;

    border: 1.5px solid var(--crm-purple);
    border-radius: 50%;

    color: var(--crm-purple-dark);

    font-size: 11px;
    font-weight: 750;
}

.crmguide-page .crmguide-scorecard > div > p {
    display: block !important;

    flex: 1 1 auto !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    color: var(--crm-text);

    font-size: 15px;
    font-weight: 570;

    line-height: 1.45;

    word-break: normal !important;
}

.crmguide-page .crmguide-scorecard > div > i {
    display: block !important;

    flex: 0 0 18px !important;

    width: 18px !important;
    height: 18px !important;

    background: #fff;

    border: 1.5px solid #c9c1d8;
    border-radius: 5px;
}


/* =========================================================
   MISTAKES
   ========================================================= */

.crmguide-page .crmguide-mistakes {
    display: flex;
    flex-wrap: wrap;

    gap: 10px;

    margin-top: 27px;
}

.crmguide-page .crmguide-mistakes span {
    position: relative;

    padding: 10px 14px 10px 32px;

    background: var(--crm-soft);

    border: 1px solid var(--crm-border);
    border-radius: 9px;

    color: var(--crm-muted);

    font-size: 14px;
}

.crmguide-page .crmguide-mistakes span::before {
    content: "×";

    position: absolute;
    left: 12px;

    color: var(--crm-purple);

    font-weight: 800;
}

.crmguide-page .crmguide-mistake-note {
    max-width: 800px;

    margin: 24px 0 0;

    color: var(--crm-muted);

    font-size: 14px;
    font-style: italic;
}


/* =========================================================
   TESTING WORKFLOW
   ========================================================= */

.crmguide-page .crmguide-test-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 14px;

    margin-top: 30px;
}

.crmguide-page .crmguide-test-grid > div {
    min-width: 0;

    padding: 19px 15px;

    background: #fff;

    border: 1px solid var(--crm-border);
    border-radius: 11px;

    text-align: center;
}

.crmguide-page .crmguide-test-grid span {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    margin: 0 auto 11px;

    background: var(--crm-purple);

    border-radius: 50%;

    color: #fff;

    font-size: 12px;
    font-weight: 750;
}

.crmguide-page .crmguide-test-grid p {
    margin: 0;

    color: var(--crm-muted);

    font-size: 13px;
    font-weight: 560;

    line-height: 1.45;
}

.crmguide-page .crmguide-test-note {
    max-width: 720px;

    margin: 24px 0 0;

    color: var(--crm-muted);

    font-size: 14px;
}


/* =========================================================
   CTA
   ========================================================= */

.crmguide-page .crmguide-cta {
    padding: 72px 0;

    background:
        linear-gradient(
            135deg,
            #8b78d8,
            #6d57c2
        );
}

.crmguide-page .crmguide-cta-inner {
    max-width: 720px;

    text-align: center;
}

.crmguide-page .crmguide-cta-label {
    margin: 0 0 10px;

    color: #e6e0ff;

    font-size: 11px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.crmguide-page .crmguide-cta h2 {
    margin: 0 0 14px;

    color: #fff;

    font-size: 29px;
    font-weight: 760;
}

.crmguide-page .crmguide-cta-inner > p:not(.crmguide-cta-label) {
    margin: 0 0 25px;

    color: rgba(255,255,255,.88);

    font-size: 15.5px;
    line-height: 1.7;
}

.crmguide-page .crmguide-button {
    display: inline-block;

    padding: 13px 27px;

    background: #fff;

    border-radius: 9px;

    color: var(--crm-purple-dark);

    font-size: 15px;
    font-weight: 700;

    text-decoration: none;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 960px) {

    .crmguide-page .crmguide-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 460px;
    gap: 60px;
    align-items: center;
}

    .crmguide-page .crmguide-dashboard {
        max-width: 540px;
    }

    .crmguide-page .crmguide-pipeline {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .crmguide-page .crmguide-test-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 640px) {

    .crmguide-page .crmguide-container {
        padding: 0 18px;
    }

    .crmguide-page .crmguide-hero {
        padding: 55px 0;
    }

    .crmguide-page .crmguide-section {
        padding: 49px 0;
    }

    .crmguide-page .crmguide-h1 {
        font-size: 32px;
    }

    .crmguide-page .crmguide-h2 {
        font-size: 23px;
    }

    .crmguide-page .crmguide-lede {
        font-size: 15.5px;
    }

    .crmguide-page .crmguide-profile-grid {
        grid-template-columns: 1fr;
    }

    .crmguide-page .crmguide-factor {
        grid-template-columns: 1fr;

        gap: 14px;

        padding: 22px 20px;
    }

    .crmguide-page .crmguide-factor-num {
        width: 45px;
        height: 45px;
    }

    .crmguide-page .crmguide-pipeline {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .crmguide-page .crmguide-notneeded {
        padding: 22px 19px;
    }

    .crmguide-page .crmguide-notneeded-head {
        flex-direction: column;
    }

    .crmguide-page .crmguide-notneeded-grid {
        grid-template-columns: 1fr;
    }

    .crmguide-page .crmguide-scorecard > div {
        gap: 11px !important;
    }

    .crmguide-page .crmguide-scorecard > div > p {
        font-size: 14px;
    }

    .crmguide-page .crmguide-test-grid {
        grid-template-columns: 1fr;
    }

    .crmguide-page .crmguide-mistakes {
        flex-direction: column;
    }

    .crmguide-page .crmguide-mistakes span {
        width: 100%;
    }

    .crmguide-page .crmguide-button {
        width: 100%;
    }
}
/* ===== CRM GUIDE MOBILE FIX ===== */
@media (max-width: 960px) {

    .crmguide-page .crmguide-hero-grid {
        display: block !important;
        width: 100% !important;
    }

    .crmguide-page .crmguide-hero-copy {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
    }

    .crmguide-page .crmguide-h1 {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;

        word-break: normal !important;
        overflow-wrap: normal !important;
        white-space: normal !important;
    }

    .crmguide-page .crmguide-lede {
        width: 100% !important;
        max-width: none !important;
    }

    .crmguide-page .crmguide-dashboard {
        display: block !important;

        width: 100% !important;
        max-width: 540px !important;
        min-width: 0 !important;

        margin: 40px 0 0 !important;

        justify-self: auto !important;
    }
}

@media (max-width: 640px) {

    .crmguide-page .crmguide-h1 {
        font-size: 32px !important;
        line-height: 1.15 !important;
    }

    .crmguide-page .crmguide-dashboard {
        max-width: 100% !important;
    }
}
@media (min-width: 961px) {

    .crmguide-page .crmguide-hero-grid {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) 460px !important;
        gap: 70px !important;
        align-items: center !important;
    }

    .crmguide-page .crmguide-hero-copy {
        grid-column: 1 !important;
        width: 100% !important;
    }

    .crmguide-page .crmguide-dashboard {
        grid-column: 2 !important;
        grid-row: 1 !important;

        width: 100% !important;
        max-width: 460px !important;

        margin: 0 !important;

        justify-self: end !important;
        align-self: center !important;
    }
}
/* =========================================================
   BIZOPSPICK — JOBBER REVIEW FOR CLEANING BUSINESSES
   UNIQUE SYSTEM: .jr-cleaning-jobber / .jrcj-*
   ========================================================= */

.jr-cleaning-jobber {
    --jrcj-purple: #8069d9;
    --jrcj-purple-dark: #6650bc;
    --jrcj-purple-soft: #9a88df;

    --jrcj-lavender: #f3f0fb;
    --jrcj-soft: #faf9fd;
    --jrcj-border: #e3dcf4;

    --jrcj-text: #1d1930;
    --jrcj-muted: #5c566b;
    --jrcj-light: #817a90;

    --jrcj-white: #ffffff;

    width: 100%;
    background: var(--jrcj-white);
    color: var(--jrcj-text);

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    line-height: 1.65;
}

.jr-cleaning-jobber *,
.jr-cleaning-jobber *::before,
.jr-cleaning-jobber *::after {
    box-sizing: border-box;
}


/* =========================================
   LAYOUT
   ========================================= */

.jr-cleaning-jobber .jrcj-container {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

.jr-cleaning-jobber .jrcj-section {
    padding: 68px 0;
}

.jr-cleaning-jobber .jrcj-soft {
    background: var(--jrcj-soft);
}

.jr-cleaning-jobber .jrcj-section-title {
    margin: 0 0 16px;

    color: var(--jrcj-text);

    font-size: 29px;
    font-weight: 750;
    line-height: 1.25;

    letter-spacing: -0.025em;
}

.jr-cleaning-jobber .jrcj-label {
    margin: 0 0 8px;

    color: var(--jrcj-purple);

    font-size: 11px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: 0.09em;
}


/* =========================================
   HERO
   ========================================= */

.jr-cleaning-jobber .jrcj-hero {
    padding: 78px 0;

    background:
        linear-gradient(
            180deg,
            #f5f2fc 0%,
            #ffffff 94%
        );

    border-bottom: 1px solid var(--jrcj-border);
}

.jr-cleaning-jobber .jrcj-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 460px;
    gap: 64px;
    align-items: center;
}

.jr-cleaning-jobber .jrcj-eyebrow {
    margin: 0 0 16px;

    color: var(--jrcj-purple);

    font-size: 12px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.jr-cleaning-jobber .jrcj-title {
    max-width: 680px;

    margin: 0 0 22px;

    color: var(--jrcj-text);

    font-size: clamp(39px, 4vw, 52px);
    font-weight: 780;

    line-height: 1.1;
    letter-spacing: -0.035em;
}

.jr-cleaning-jobber .jrcj-title span {
    color: #8b78d8;
}

.jr-cleaning-jobber .jrcj-intro {
    max-width: 610px;

    margin: 0;

    color: var(--jrcj-muted);

    font-size: 17px;
    line-height: 1.72;
}

.jr-cleaning-jobber .jrcj-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;

    margin-top: 28px;
}


/* =========================================
   BUTTONS
   ========================================= */

.jr-cleaning-jobber .jrcj-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 128px;
    height: 52px;

    padding: 0 20px 7px;

    border-radius: 9px;

    font-size: 14px;
    font-weight: 700;
    line-height: 1;

    text-decoration: none;

    transition:
        transform 0.15s ease,
        background 0.15s ease;
}

.jr-cleaning-jobber .jrcj-btn:hover {
    transform: translateY(-1px);
}

.jr-cleaning-jobber .jrcj-btn-primary {
    background: var(--jrcj-purple);

    color: #fff;
}

.jr-cleaning-jobber .jrcj-btn-primary:hover {
    background: var(--jrcj-purple-dark);
}

.jr-cleaning-jobber .jrcj-btn-secondary {
    background: #fff;
    border: 1px solid var(--jrcj-border);
    color: var(--jrcj-purple-dark);

    min-width: 176px;
}


/* =========================================
   SUMMARY
   ========================================= */

.jr-cleaning-jobber .jrcj-summary {
    width: 100%;
    max-width: 460px;
    justify-self: end;
    align-self: center;

    padding: 24px;

    background: #fff;

    border: 1px solid var(--jrcj-border);
    border-radius: 18px;

    box-shadow:
        0 20px 50px rgba(54, 38, 105, 0.09);
}

.jr-cleaning-jobber .jrcj-summary-head {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding-bottom: 16px;
    margin-bottom: 4px;

    border-bottom: 1px solid var(--jrcj-border);
}

.jr-cleaning-jobber .jrcj-summary-head span {
    color: var(--jrcj-purple);

    font-size: 10px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: 0.07em;
}

.jr-cleaning-jobber .jrcj-summary-head strong {
    color: var(--jrcj-text);

    font-size: 12px;
}

.jr-cleaning-jobber .jrcj-summary-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;

    gap: 20px;

    padding: 15px 0;

    border-bottom: 1px solid var(--jrcj-border);
}

.jr-cleaning-jobber .jrcj-summary-row span {
    color: var(--jrcj-light);

    font-size: 13px;
}

.jr-cleaning-jobber .jrcj-summary-row strong {
    max-width: 220px;

    color: var(--jrcj-text);

    font-size: 13px;
    font-weight: 700;

    text-align: right;
}

.jr-cleaning-jobber .jrcj-editorial-note {
    margin: 15px 0 0;

    color: var(--jrcj-light);

    font-size: 11px;
    line-height: 1.55;
}


/* =========================================
   QUICK VERDICT
   ========================================= */

.jr-cleaning-jobber .jrcj-verdict-box {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    gap: 34px;
    align-items: center;

    padding: 30px;

    background: var(--jrcj-lavender);

    border: 1px solid var(--jrcj-border);
    border-radius: 15px;
}

.jr-cleaning-jobber .jrcj-verdict-box h2 {
    max-width: 760px;

    margin: 0 0 10px;

    color: var(--jrcj-text);

    font-size: 25px;
    font-weight: 740;

    line-height: 1.3;
}

.jr-cleaning-jobber .jrcj-verdict-box p:not(.jrcj-label) {
    max-width: 790px;

    margin: 0;

    color: var(--jrcj-muted);

    font-size: 15px;
    line-height: 1.7;
}

.jr-cleaning-jobber .jrcj-verdict-score {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 74px;
    height: 74px;

    background: #fff;

    border: 1px solid var(--jrcj-border);
    border-radius: 50%;

    color: var(--jrcj-purple-dark);

    font-size: 22px;
    font-weight: 780;
}


/* =========================================
   PROS & CONS
   ========================================= */

.jr-cleaning-jobber .jrcj-pros-cons {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;

    margin-top: 26px;
}

.jr-cleaning-jobber .jrcj-pros,
.jr-cleaning-jobber .jrcj-cons {
    padding: 26px;

    background: #fff;

    border: 1px solid var(--jrcj-border);
    border-radius: 14px;
}

.jr-cleaning-jobber .jrcj-list-head {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 17px;
}

.jr-cleaning-jobber .jrcj-list-head span {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    background: var(--jrcj-lavender);

    border-radius: 50%;

    color: var(--jrcj-purple-dark);

    font-size: 14px;
    font-weight: 800;
}

.jr-cleaning-jobber .jrcj-list-head h3 {
    margin: 0;

    color: var(--jrcj-text);

    font-size: 19px;
    font-weight: 730;
}

.jr-cleaning-jobber .jrcj-pros ul,
.jr-cleaning-jobber .jrcj-cons ul {
    list-style: none;

    margin: 0;
    padding: 0;
}

.jr-cleaning-jobber .jrcj-pros li,
.jr-cleaning-jobber .jrcj-cons li {
    position: relative;

    padding: 9px 0 9px 20px;

    color: var(--jrcj-muted);

    font-size: 14.5px;

    border-bottom: 1px solid #eee9f6;
}

.jr-cleaning-jobber .jrcj-pros li:last-child,
.jr-cleaning-jobber .jrcj-cons li:last-child {
    border-bottom: 0;
}

.jr-cleaning-jobber .jrcj-pros li::before {
    content: "✓";

    position: absolute;
    left: 0;

    color: var(--jrcj-purple);

    font-weight: 800;
}

.jr-cleaning-jobber .jrcj-cons li::before {
    content: "×";

    position: absolute;
    left: 0;

    color: #827a91;

    font-weight: 800;
}


/* =========================================
   FEATURES
   ========================================= */

.jr-cleaning-jobber .jrcj-feature-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 18px;

    margin-top: 26px;
}

.jr-cleaning-jobber .jrcj-feature-card {
    position: relative;

    min-width: 0;

    padding: 25px 22px;

    background: #fff;

    border: 1px solid var(--jrcj-border);
    border-radius: 13px;
}

.jr-cleaning-jobber .jrcj-feature-card > span {
    display: inline-block;

    margin-bottom: 17px;
    padding: 5px 9px;

    background: var(--jrcj-lavender);

    border-radius: 999px;

    color: var(--jrcj-purple-dark);

    font-size: 10px;
    font-weight: 750;
}

.jr-cleaning-jobber .jrcj-feature-card h3 {
    margin: 0 0 9px;

    color: var(--jrcj-text);

    font-size: 17px;
    font-weight: 720;
}

.jr-cleaning-jobber .jrcj-feature-card p {
    margin: 0;

    color: var(--jrcj-muted);

    font-size: 14px;
    line-height: 1.65;
}


/* =========================================
   PRICING
   ========================================= */

.jr-cleaning-jobber .jrcj-pricing-box {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto;

    gap: 30px;
    align-items: center;

    padding: 30px;

    background: #fff;

    border: 1px solid var(--jrcj-border);
    border-radius: 15px;
}

.jr-cleaning-jobber .jrcj-pricing-box p:not(.jrcj-label) {
    max-width: 760px;

    margin: 0;

    color: var(--jrcj-muted);

    font-size: 15px;
    line-height: 1.7;
}


/* =========================================
   BEST FOR
   ========================================= */

.jr-cleaning-jobber .jrcj-bestfor {
    display: grid;

    grid-template-columns:
        minmax(0, 0.9fr)
        minmax(0, 1.1fr);

    gap: 40px;
    align-items: start;
}

.jr-cleaning-jobber .jrcj-bestfor-copy p:not(.jrcj-label) {
    margin: 0;

    color: var(--jrcj-muted);

    font-size: 15px;
    line-height: 1.7;
}

.jr-cleaning-jobber .jrcj-bestfor-list {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 10px;
}

.jr-cleaning-jobber .jrcj-bestfor-list span {
    position: relative;

    padding: 13px 13px 13px 34px;

    background: var(--jrcj-soft);

    border: 1px solid var(--jrcj-border);
    border-radius: 9px;

    color: var(--jrcj-text);

    font-size: 13.5px;
    font-weight: 550;
}

.jr-cleaning-jobber .jrcj-bestfor-list span::before {
    content: "✓";

    position: absolute;
    left: 13px;

    color: var(--jrcj-purple);

    font-weight: 800;
}


/* =========================================
   FINAL VERDICT
   ========================================= */

.jr-cleaning-jobber .jrcj-final {
    padding: 72px 0;

    background:
        linear-gradient(
            135deg,
            #8b78d8,
            #6d57c2
        );
}

.jr-cleaning-jobber .jrcj-final-inner {
    max-width: 760px;

    text-align: center;
}

.jr-cleaning-jobber .jrcj-final-label {
    margin: 0 0 10px;

    color: #e8e2ff;

    font-size: 11px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: 0.09em;
}

.jr-cleaning-jobber .jrcj-final h2 {
    margin: 0 0 15px;

    color: #fff;

    font-size: 30px;
    font-weight: 760;

    line-height: 1.3;
}

.jr-cleaning-jobber .jrcj-final p:not(.jrcj-final-label) {
    margin: 0;

    color: rgba(255,255,255,.88);

    font-size: 15.5px;
    line-height: 1.7;
}

.jr-cleaning-jobber .jrcj-final-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 17px;

    margin-top: 27px;
}

.jr-cleaning-jobber .jrcj-final-btn {
    display: inline-block;

    width: auto;
    min-width: 0;

    padding: 13px 16px;

    background: #fff;

    border-radius: 9px;

    color: var(--jrcj-purple-dark);

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;
}

.jr-cleaning-jobber .jrcj-final-link {
    color: #fff;
    font-size: 13px;
    font-weight: 650;

    text-decoration: underline;
    text-underline-offset: 4px;
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 960px) {

    .jr-cleaning-jobber .jrcj-hero-grid {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .jr-cleaning-jobber .jrcj-summary {
        max-width: 560px;
    }

    .jr-cleaning-jobber .jrcj-feature-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .jr-cleaning-jobber .jrcj-bestfor {
        grid-template-columns: 1fr;
    }
}


/* =========================================
   MOBILE
   ========================================= */

@media (max-width: 640px) {

    .jr-cleaning-jobber .jrcj-container {
        padding: 0 18px;
    }

    .jr-cleaning-jobber .jrcj-hero {
        padding: 54px 0;
    }

    .jr-cleaning-jobber .jrcj-section {
        padding: 48px 0;
    }

    .jr-cleaning-jobber .jrcj-title {
        font-size: 32px;
    }

    .jr-cleaning-jobber .jrcj-intro {
        font-size: 15.5px;
    }

    .jr-cleaning-jobber .jrcj-hero-actions {
        flex-direction: column;
    }

    .jr-cleaning-jobber .jrcj-btn {
        width: 100%;

        text-align: center;
    }

    .jr-cleaning-jobber .jrcj-verdict-box,
    .jr-cleaning-jobber .jrcj-pricing-box {
        grid-template-columns: 1fr;
    }

    .jr-cleaning-jobber .jrcj-verdict-score {
        width: 62px;
        height: 62px;
    }

    .jr-cleaning-jobber .jrcj-pros-cons {
        grid-template-columns: 1fr;
    }

    .jr-cleaning-jobber .jrcj-feature-grid {
        grid-template-columns: 1fr;
    }

    .jr-cleaning-jobber .jrcj-bestfor-list {
        grid-template-columns: 1fr;
    }

    .jr-cleaning-jobber .jrcj-summary-row {
        flex-direction: column;
        gap: 4px;
    }

    .jr-cleaning-jobber .jrcj-summary-row strong {
        max-width: none;

        text-align: left;
    }

    .jr-cleaning-jobber .jrcj-final h2 {
        font-size: 25px;
    }
}
/* JOBBER CLEANING — DESKTOP HERO CARD POSITION */
@media (min-width: 961px) {

    .jr-cleaning-jobber .jrcj-hero {
        position: relative;
    }

    .jr-cleaning-jobber .jrcj-hero-copy {
        max-width: 600px;
    }

    .jr-cleaning-jobber .jrcj-summary {
        position: absolute !important;

        width: 460px !important;
        max-width: 460px !important;

        top: 50% !important;
        right: max(24px, calc((100vw - 1120px) / 2)) !important;

        margin: 0 !important;

        transform: translateY(-50%) !important;
    }
}
/* =========================================================
   BIZOPSPICK — ZENMAID REVIEW FOR CLEANING BUSINESSES
   UNIQUE SYSTEM
   ========================================================= */

.zr-cleaning-zenmaid {
    --zrcz-purple: #8069d9;
    --zrcz-purple-dark: #6650bc;
    --zrcz-lavender: #f3f0fb;
    --zrcz-soft: #faf9fd;
    --zrcz-border: #e3dcf4;
    --zrcz-text: #1d1930;
    --zrcz-muted: #5c566b;
    --zrcz-light: #817a90;
    --zrcz-white: #fff;

    width: 100%;
    background: #fff;
    color: var(--zrcz-text);

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    line-height: 1.65;
}

.zr-cleaning-zenmaid *,
.zr-cleaning-zenmaid *::before,
.zr-cleaning-zenmaid *::after {
    box-sizing: border-box;
}

.zr-cleaning-zenmaid .zrcz-container {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

.zr-cleaning-zenmaid .zrcz-section {
    padding: 68px 0;
}

.zr-cleaning-zenmaid .zrcz-soft {
    background: var(--zrcz-soft);
}

.zr-cleaning-zenmaid .zrcz-section-title {
    margin: 0 0 16px;
    color: var(--zrcz-text);
    font-size: 29px;
    font-weight: 750;
    line-height: 1.25;
    letter-spacing: -.025em;
}

.zr-cleaning-zenmaid .zrcz-label {
    margin: 0 0 8px;
    color: var(--zrcz-purple);
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: .09em;
}


/* HERO */

.zr-cleaning-zenmaid .zrcz-hero {
    padding: 78px 0;

    background:
        linear-gradient(
            180deg,
            #f5f2fc 0%,
            #fff 94%
        );

    border-bottom: 1px solid var(--zrcz-border);
}

.zr-cleaning-zenmaid .zrcz-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 460px;
    gap: 64px;
    align-items: center;
}

.zr-cleaning-zenmaid .zrcz-hero-copy {
    min-width: 0;
}

.zr-cleaning-zenmaid .zrcz-eyebrow {
    margin: 0 0 16px;
    color: var(--zrcz-purple);
    font-size: 12px;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: .1em;
}

.zr-cleaning-zenmaid .zrcz-title {
    max-width: 680px;
    margin: 0 0 22px;
    color: var(--zrcz-text);
    font-size: clamp(39px, 4vw, 52px);
    font-weight: 780;
    line-height: 1.1;
    letter-spacing: -.035em;
}

.zr-cleaning-zenmaid .zrcz-title span {
    color: #8b78d8;
}

.zr-cleaning-zenmaid .zrcz-intro {
    max-width: 610px;
    margin: 0;
    color: var(--zrcz-muted);
    font-size: 17px;
    line-height: 1.72;
}

.zr-cleaning-zenmaid .zrcz-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}


/* BUTTONS */

.zr-cleaning-zenmaid .zrcz-btn {
    display: inline-block;
    padding: 12px 20px;
    border-radius: 9px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.zr-cleaning-zenmaid .zrcz-btn-primary {
    background: var(--zrcz-purple);
    color: #fff;
}

.zr-cleaning-zenmaid .zrcz-btn-secondary {
    background: #fff;
    border: 1px solid var(--zrcz-border);
    color: var(--zrcz-purple-dark);
}


/* SUMMARY CARD — RIGHT SIDE */

.zr-cleaning-zenmaid .zrcz-summary {
    width: 100%;
    max-width: 460px;
    justify-self: end;
    align-self: center;

    padding: 24px;

    background: #fff;

    border: 1px solid var(--zrcz-border);
    border-radius: 18px;

    box-shadow:
        0 20px 50px rgba(54,38,105,.09);
}

.zr-cleaning-zenmaid .zrcz-summary-head {
    display: flex;
    justify-content: space-between;
    gap: 20px;

    padding-bottom: 16px;
    margin-bottom: 4px;

    border-bottom: 1px solid var(--zrcz-border);
}

.zr-cleaning-zenmaid .zrcz-summary-head span {
    color: var(--zrcz-purple);
    font-size: 10px;
    font-weight: 750;
    text-transform: uppercase;
}

.zr-cleaning-zenmaid .zrcz-summary-head strong {
    font-size: 12px;
}

.zr-cleaning-zenmaid .zrcz-summary-row {
    display: flex;
    justify-content: space-between;
    gap: 20px;

    padding: 15px 0;

    border-bottom: 1px solid var(--zrcz-border);
}

.zr-cleaning-zenmaid .zrcz-summary-row span {
    color: var(--zrcz-light);
    font-size: 13px;
}

.zr-cleaning-zenmaid .zrcz-summary-row strong {
    max-width: 230px;
    color: var(--zrcz-text);
    font-size: 13px;
    text-align: right;
}

.zr-cleaning-zenmaid .zrcz-editorial-note {
    margin: 15px 0 0;
    color: var(--zrcz-light);
    font-size: 11px;
}


/* VERDICT */

.zr-cleaning-zenmaid .zrcz-verdict {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 32px;
    align-items: center;

    padding: 30px;

    background: var(--zrcz-lavender);

    border: 1px solid var(--zrcz-border);
    border-radius: 15px;
}

.zr-cleaning-zenmaid .zrcz-verdict h2 {
    margin: 0 0 10px;
    font-size: 25px;
    line-height: 1.3;
}

.zr-cleaning-zenmaid .zrcz-verdict p:not(.zrcz-label) {
    margin: 0;
    color: var(--zrcz-muted);
    font-size: 15px;
    line-height: 1.7;
}

.zr-cleaning-zenmaid .zrcz-score {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 74px;
    height: 74px;

    background: #fff;

    border: 1px solid var(--zrcz-border);
    border-radius: 50%;

    color: var(--zrcz-purple-dark);

    font-size: 22px;
    font-weight: 780;
}


/* PROS CONS */

.zr-cleaning-zenmaid .zrcz-pros-cons {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px;
    margin-top: 26px;
}

.zr-cleaning-zenmaid .zrcz-pros,
.zr-cleaning-zenmaid .zrcz-cons {
    padding: 26px;
    background: #fff;
    border: 1px solid var(--zrcz-border);
    border-radius: 14px;
}

.zr-cleaning-zenmaid .zrcz-list-head {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 17px;
}

.zr-cleaning-zenmaid .zrcz-list-head span {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    background: var(--zrcz-lavender);
    border-radius: 50%;

    color: var(--zrcz-purple-dark);
    font-weight: 800;
}

.zr-cleaning-zenmaid .zrcz-list-head h3 {
    margin: 0;
    font-size: 19px;
}

.zr-cleaning-zenmaid .zrcz-pros ul,
.zr-cleaning-zenmaid .zrcz-cons ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.zr-cleaning-zenmaid .zrcz-pros li,
.zr-cleaning-zenmaid .zrcz-cons li {
    position: relative;
    padding: 9px 0 9px 20px;
    color: var(--zrcz-muted);
    font-size: 14.5px;
    border-bottom: 1px solid #eee9f6;
}

.zr-cleaning-zenmaid .zrcz-pros li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--zrcz-purple);
}

.zr-cleaning-zenmaid .zrcz-cons li::before {
    content: "×";
    position: absolute;
    left: 0;
    color: #827a91;
}


/* FEATURES */

.zr-cleaning-zenmaid .zrcz-feature-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px;
    margin-top: 26px;
}

.zr-cleaning-zenmaid .zrcz-feature-card {
    padding: 24px 22px;
    background: #fff;
    border: 1px solid var(--zrcz-border);
    border-radius: 13px;
}

.zr-cleaning-zenmaid .zrcz-feature-card > span {
    display: inline-block;
    margin-bottom: 15px;
    padding: 5px 9px;

    background: var(--zrcz-lavender);
    border-radius: 999px;

    color: var(--zrcz-purple-dark);
    font-size: 10px;
    font-weight: 750;
}

.zr-cleaning-zenmaid .zrcz-feature-card h3 {
    margin: 0 0 9px;
    font-size: 17px;
}

.zr-cleaning-zenmaid .zrcz-feature-card p {
    margin: 0;
    color: var(--zrcz-muted);
    font-size: 14px;
    line-height: 1.65;
}


/* PRICING */

.zr-cleaning-zenmaid .zrcz-pricing-box {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 30px;
    align-items: center;

    padding: 30px;

    background: #fff;

    border: 1px solid var(--zrcz-border);
    border-radius: 15px;
}

.zr-cleaning-zenmaid .zrcz-pricing-box p:not(.zrcz-label) {
    margin: 0;
    color: var(--zrcz-muted);
    font-size: 15px;
    line-height: 1.7;
}


/* BEST FOR */

.zr-cleaning-zenmaid .zrcz-bestfor {
    display: grid;
    grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr);
    gap: 40px;
}

.zr-cleaning-zenmaid .zrcz-bestfor p:not(.zrcz-label) {
    margin: 0;
    color: var(--zrcz-muted);
    font-size: 15px;
    line-height: 1.7;
}

.zr-cleaning-zenmaid .zrcz-bestfor-list {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 10px;
}

.zr-cleaning-zenmaid .zrcz-bestfor-list span {
    position: relative;

    padding: 13px 13px 13px 34px;

    background: var(--zrcz-soft);

    border: 1px solid var(--zrcz-border);
    border-radius: 9px;

    font-size: 13.5px;
}

.zr-cleaning-zenmaid .zrcz-bestfor-list span::before {
    content: "✓";
    position: absolute;
    left: 13px;
    color: var(--zrcz-purple);
}


/* FINAL */

.zr-cleaning-zenmaid .zrcz-final {
    padding: 72px 0;

    background:
        linear-gradient(
            135deg,
            #8b78d8,
            #6d57c2
        );
}

.zr-cleaning-zenmaid .zrcz-final-inner {
    max-width: 760px;
    text-align: center;
}

.zr-cleaning-zenmaid .zrcz-final-label {
    margin: 0 0 10px;
    color: #e8e2ff;
    font-size: 11px;
    font-weight: 750;
    text-transform: uppercase;
}

.zr-cleaning-zenmaid .zrcz-final h2 {
    margin: 0 0 15px;
    color: #fff;
    font-size: 30px;
    line-height: 1.3;
}

.zr-cleaning-zenmaid .zrcz-final p:not(.zrcz-final-label) {
    margin: 0;
    color: rgba(255,255,255,.88);
    font-size: 15.5px;
    line-height: 1.7;
}

.zr-cleaning-zenmaid .zrcz-final-actions {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 17px;
    margin-top: 27px;
}

.zr-cleaning-zenmaid .zrcz-final-btn {
    padding: 13px 25px;
    background: #fff;
    border-radius: 9px;
    color: var(--zrcz-purple-dark);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

.zr-cleaning-zenmaid .zrcz-final-link {
    color: #fff;
    font-size: 14px;
    font-weight: 650;
}


/* TABLET */

@media (max-width: 960px) {

    .zr-cleaning-zenmaid .zrcz-hero-grid {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .zr-cleaning-zenmaid .zrcz-summary {
        max-width: 560px;
        justify-self: start;
    }

    .zr-cleaning-zenmaid .zrcz-feature-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }

    .zr-cleaning-zenmaid .zrcz-bestfor {
        grid-template-columns: 1fr;
    }
}


/* MOBILE */

@media (max-width: 640px) {

    .zr-cleaning-zenmaid .zrcz-container {
        padding: 0 18px;
    }

    .zr-cleaning-zenmaid .zrcz-hero {
        padding: 54px 0;
    }

    .zr-cleaning-zenmaid .zrcz-section {
        padding: 48px 0;
    }

    .zr-cleaning-zenmaid .zrcz-title {
        font-size: 32px;
    }

    .zr-cleaning-zenmaid .zrcz-actions {
        flex-direction: column;
    }

    .zr-cleaning-zenmaid .zrcz-btn {
        width: 100%;
        text-align: center;
    }

    .zr-cleaning-zenmaid .zrcz-verdict,
    .zr-cleaning-zenmaid .zrcz-pricing-box {
        grid-template-columns: 1fr;
    }

    .zr-cleaning-zenmaid .zrcz-pros-cons,
    .zr-cleaning-zenmaid .zrcz-feature-grid,
    .zr-cleaning-zenmaid .zrcz-bestfor-list {
        grid-template-columns: 1fr;
    }

    .zr-cleaning-zenmaid .zrcz-summary-row {
        flex-direction: column;
        gap: 4px;
    }

    .zr-cleaning-zenmaid .zrcz-summary-row strong {
        text-align: left;
        max-width: none;
    }

    .zr-cleaning-zenmaid .zrcz-final h2 {
        font-size: 25px;
    }
}
/* =========================================================
   BIZOPSPICK — WORKIZ REVIEW FOR CLEANING BUSINESSES
   UNIQUE SYSTEM: .wr-cleaning-workiz / .wrcw-*
   ========================================================= */

.wr-cleaning-workiz {
    --wrcw-purple: #8069d9;
    --wrcw-purple-dark: #6650bc;
    --wrcw-lavender: #f3f0fb;
    --wrcw-soft: #faf9fd;
    --wrcw-border: #e3dcf4;

    --wrcw-text: #1d1930;
    --wrcw-muted: #5c566b;
    --wrcw-light: #817a90;

    --wrcw-white: #ffffff;

    width: 100%;
    background: #fff;
    color: var(--wrcw-text);

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    line-height: 1.65;
}

.wr-cleaning-workiz *,
.wr-cleaning-workiz *::before,
.wr-cleaning-workiz *::after {
    box-sizing: border-box;
}


/* ===========================
   LAYOUT
   =========================== */

.wr-cleaning-workiz .wrcw-container {
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 24px;
}

.wr-cleaning-workiz .wrcw-section {
    padding: 68px 0;
}

.wr-cleaning-workiz .wrcw-soft {
    background: var(--wrcw-soft);
}

.wr-cleaning-workiz .wrcw-section-title {
    margin: 0 0 16px;

    color: var(--wrcw-text);

    font-size: 29px;
    font-weight: 750;
    line-height: 1.25;

    letter-spacing: -.025em;
}

.wr-cleaning-workiz .wrcw-label {
    margin: 0 0 8px;

    color: var(--wrcw-purple);

    font-size: 11px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: .09em;
}


/* ===========================
   HERO
   =========================== */

.wr-cleaning-workiz .wrcw-hero {
    padding: 78px 0;

    background:
        linear-gradient(
            180deg,
            #f5f2fc 0%,
            #ffffff 94%
        );

    border-bottom: 1px solid var(--wrcw-border);
}

.wr-cleaning-workiz .wrcw-hero-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        460px;

    gap: 64px;
    align-items: center;
}

.wr-cleaning-workiz .wrcw-hero-copy {
    min-width: 0;
}

.wr-cleaning-workiz .wrcw-eyebrow {
    margin: 0 0 16px;

    color: var(--wrcw-purple);

    font-size: 12px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: .1em;
}

.wr-cleaning-workiz .wrcw-title {
    max-width: 680px;

    margin: 0 0 22px;

    color: var(--wrcw-text);

    font-size: clamp(39px, 4vw, 52px);
    font-weight: 780;

    line-height: 1.1;
    letter-spacing: -.035em;
}

.wr-cleaning-workiz .wrcw-title span {
    color: #8b78d8;
}

.wr-cleaning-workiz .wrcw-intro {
    max-width: 610px;

    margin: 0;

    color: var(--wrcw-muted);

    font-size: 17px;
    line-height: 1.72;
}

.wr-cleaning-workiz .wrcw-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;

    margin-top: 28px;
}


/* ===========================
   BUTTONS
   =========================== */

.wr-cleaning-workiz .wrcw-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 130px;
    height: 52px;

    padding: 0 20px 5px;

    border-radius: 9px;

    font-size: 14px;
    font-weight: 700;
    line-height: 1;

    text-decoration: none;
}

.wr-cleaning-workiz .wrcw-btn-primary {
    background: var(--wrcw-purple);
    color: #fff;
}

.wr-cleaning-workiz .wrcw-btn-secondary {
    min-width: 176px;

    background: #fff;

    border: 1px solid var(--wrcw-border);

    color: var(--wrcw-purple-dark);
}


/* ===========================
   SUMMARY
   =========================== */

.wr-cleaning-workiz .wrcw-summary {
    width: 100%;
    max-width: 460px;

    justify-self: end;
    align-self: center;

    padding: 24px;

    background: #fff;

    border: 1px solid var(--wrcw-border);
    border-radius: 18px;

    box-shadow:
        0 20px 50px rgba(54,38,105,.09);
}

.wr-cleaning-workiz .wrcw-summary-head {
    display: flex;
    justify-content: space-between;
    gap: 20px;

    padding-bottom: 16px;
    margin-bottom: 4px;

    border-bottom: 1px solid var(--wrcw-border);
}

.wr-cleaning-workiz .wrcw-summary-head span {
    color: var(--wrcw-purple);

    font-size: 10px;
    font-weight: 750;

    text-transform: uppercase;
}

.wr-cleaning-workiz .wrcw-summary-head strong {
    font-size: 12px;
}

.wr-cleaning-workiz .wrcw-summary-row {
    display: flex;
    justify-content: space-between;
    gap: 20px;

    padding: 15px 0;

    border-bottom: 1px solid var(--wrcw-border);
}

.wr-cleaning-workiz .wrcw-summary-row span {
    color: var(--wrcw-light);

    font-size: 13px;
}

.wr-cleaning-workiz .wrcw-summary-row strong {
    max-width: 230px;

    color: var(--wrcw-text);

    font-size: 13px;
    font-weight: 700;

    text-align: right;
}

.wr-cleaning-workiz .wrcw-editorial-note {
    margin: 15px 0 0;

    color: var(--wrcw-light);

    font-size: 11px;
    line-height: 1.55;
}


/* ===========================
   VERDICT
   =========================== */

.wr-cleaning-workiz .wrcw-verdict {
    display: grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap: 32px;
    align-items: center;

    padding: 30px;

    background: var(--wrcw-lavender);

    border: 1px solid var(--wrcw-border);
    border-radius: 15px;
}

.wr-cleaning-workiz .wrcw-verdict h2 {
    max-width: 760px;

    margin: 0 0 10px;

    color: var(--wrcw-text);

    font-size: 25px;
    font-weight: 740;

    line-height: 1.3;
}

.wr-cleaning-workiz .wrcw-verdict p:not(.wrcw-label) {
    max-width: 820px;

    margin: 0 0 10px;

    color: var(--wrcw-muted);

    font-size: 15px;
    line-height: 1.7;
}

.wr-cleaning-workiz .wrcw-verdict p:last-child {
    margin-bottom: 0;
}

.wr-cleaning-workiz .wrcw-score {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 74px;
    height: 74px;

    background: #fff;

    border: 1px solid var(--wrcw-border);
    border-radius: 50%;

    color: var(--wrcw-purple-dark);

    font-size: 22px;
    font-weight: 780;
}


/* ===========================
   PROS & CONS
   =========================== */

.wr-cleaning-workiz .wrcw-pros-cons {
    display: grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap: 18px;

    margin-top: 26px;
}

.wr-cleaning-workiz .wrcw-pros,
.wr-cleaning-workiz .wrcw-cons {
    padding: 26px;

    background: #fff;

    border: 1px solid var(--wrcw-border);
    border-radius: 14px;
}

.wr-cleaning-workiz .wrcw-list-head {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 17px;
}

.wr-cleaning-workiz .wrcw-list-head span {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    background: var(--wrcw-lavender);

    border-radius: 50%;

    color: var(--wrcw-purple-dark);

    font-weight: 800;
}

.wr-cleaning-workiz .wrcw-list-head h3 {
    margin: 0;

    color: var(--wrcw-text);

    font-size: 19px;
}

.wr-cleaning-workiz .wrcw-pros ul,
.wr-cleaning-workiz .wrcw-cons ul {
    list-style: none;

    margin: 0;
    padding: 0;
}

.wr-cleaning-workiz .wrcw-pros li,
.wr-cleaning-workiz .wrcw-cons li {
    position: relative;

    padding: 9px 0 9px 20px;

    color: var(--wrcw-muted);

    font-size: 14.5px;

    border-bottom: 1px solid #eee9f6;
}

.wr-cleaning-workiz .wrcw-pros li:last-child,
.wr-cleaning-workiz .wrcw-cons li:last-child {
    border-bottom: 0;
}

.wr-cleaning-workiz .wrcw-pros li::before {
    content: "✓";

    position: absolute;
    left: 0;

    color: var(--wrcw-purple);

    font-weight: 800;
}

.wr-cleaning-workiz .wrcw-cons li::before {
    content: "×";

    position: absolute;
    left: 0;

    color: #827a91;

    font-weight: 800;
}


/* ===========================
   FEATURES
   =========================== */

.wr-cleaning-workiz .wrcw-feature-grid {
    display: grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap: 18px;

    margin-top: 26px;
}

.wr-cleaning-workiz .wrcw-feature-card {
    min-width: 0;

    padding: 24px 22px;

    background: #fff;

    border: 1px solid var(--wrcw-border);
    border-radius: 13px;
}

.wr-cleaning-workiz .wrcw-feature-card > span {
    display: inline-block;

    margin-bottom: 15px;
    padding: 5px 9px;

    background: var(--wrcw-lavender);

    border-radius: 999px;

    color: var(--wrcw-purple-dark);

    font-size: 10px;
    font-weight: 750;
}

.wr-cleaning-workiz .wrcw-feature-card h3 {
    margin: 0 0 9px;

    color: var(--wrcw-text);

    font-size: 17px;
}

.wr-cleaning-workiz .wrcw-feature-card p {
    margin: 0;

    color: var(--wrcw-muted);

    font-size: 14px;
    line-height: 1.65;
}


/* ===========================
   PRICING
   =========================== */

.wr-cleaning-workiz .wrcw-pricing-box {
    display: grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap: 30px;
    align-items: center;

    padding: 30px;

    background: #fff;

    border: 1px solid var(--wrcw-border);
    border-radius: 15px;
}

.wr-cleaning-workiz .wrcw-pricing-box p:not(.wrcw-label) {
    max-width: 760px;

    margin: 0;

    color: var(--wrcw-muted);

    font-size: 15px;
    line-height: 1.7;
}


/* ===========================
   BEST FOR
   =========================== */

.wr-cleaning-workiz .wrcw-bestfor {
    display: grid;

    grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr);

    gap: 40px;
}

.wr-cleaning-workiz .wrcw-bestfor p:not(.wrcw-label) {
    margin: 0 0 12px;

    color: var(--wrcw-muted);

    font-size: 15px;
    line-height: 1.7;
}

.wr-cleaning-workiz .wrcw-bestfor-list {
    display: grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap: 10px;
}

.wr-cleaning-workiz .wrcw-bestfor-list span {
    position: relative;

    padding: 13px 13px 13px 34px;

    background: var(--wrcw-soft);

    border: 1px solid var(--wrcw-border);
    border-radius: 9px;

    color: var(--wrcw-text);

    font-size: 13.5px;
}

.wr-cleaning-workiz .wrcw-bestfor-list span::before {
    content: "✓";

    position: absolute;
    left: 13px;

    color: var(--wrcw-purple);

    font-weight: 800;
}


/* ===========================
   FINAL
   =========================== */

.wr-cleaning-workiz .wrcw-final {
    padding: 72px 0;

    background:
        linear-gradient(
            135deg,
            #8b78d8,
            #6d57c2
        );
}

.wr-cleaning-workiz .wrcw-final-inner {
    max-width: 760px;

    text-align: center;
}

.wr-cleaning-workiz .wrcw-final-label {
    margin: 0 0 10px;

    color: #e8e2ff;

    font-size: 11px;
    font-weight: 750;

    text-transform: uppercase;
    letter-spacing: .09em;
}

.wr-cleaning-workiz .wrcw-final h2 {
    margin: 0 0 15px;

    color: #fff;

    font-size: 30px;
    font-weight: 760;

    line-height: 1.3;
}

.wr-cleaning-workiz .wrcw-final p:not(.wrcw-final-label) {
    margin: 0 0 12px;

    color: rgba(255,255,255,.88);

    font-size: 15.5px;
    line-height: 1.7;
}

.wr-cleaning-workiz .wrcw-final-actions {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;

    gap: 17px;

    margin-top: 27px;
}

.wr-cleaning-workiz .wrcw-final-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: auto;
    min-width: 0;
    height: 46px;

    padding: 0 17px 4px;

    background: #fff;

    border-radius: 9px;

    color: var(--wrcw-purple-dark);

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;
}

.wr-cleaning-workiz .wrcw-final-link {
    color: #fff;

    font-size: 14px;
    font-weight: 650;

    text-decoration: underline;
    text-underline-offset: 4px;
}


/* ===========================
   TABLET
   =========================== */

@media (max-width: 960px) {

    .wr-cleaning-workiz .wrcw-hero-grid {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .wr-cleaning-workiz .wrcw-summary {
        max-width: 560px;
        justify-self: start;
    }

    .wr-cleaning-workiz .wrcw-feature-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .wr-cleaning-workiz .wrcw-bestfor {
        grid-template-columns: 1fr;
    }
}


/* ===========================
   MOBILE
   =========================== */

@media (max-width: 640px) {

    .wr-cleaning-workiz .wrcw-container {
        padding: 0 18px;
    }

    .wr-cleaning-workiz .wrcw-hero {
        padding: 54px 0;
    }

    .wr-cleaning-workiz .wrcw-section {
        padding: 48px 0;
    }

    .wr-cleaning-workiz .wrcw-title {
        font-size: 32px;
    }

    .wr-cleaning-workiz .wrcw-intro {
        font-size: 15.5px;
    }

    .wr-cleaning-workiz .wrcw-actions {
        flex-direction: column;
    }

    .wr-cleaning-workiz .wrcw-btn {
        width: 100%;
    }

    .wr-cleaning-workiz .wrcw-verdict,
    .wr-cleaning-workiz .wrcw-pricing-box {
        grid-template-columns: 1fr;
    }

    .wr-cleaning-workiz .wrcw-pros-cons,
    .wr-cleaning-workiz .wrcw-feature-grid,
    .wr-cleaning-workiz .wrcw-bestfor-list {
        grid-template-columns: 1fr;
    }

    .wr-cleaning-workiz .wrcw-summary-row {
        flex-direction: column;
        gap: 4px;
    }

    .wr-cleaning-workiz .wrcw-summary-row strong {
        max-width: none;

        text-align: left;
    }

    .wr-cleaning-workiz .wrcw-final h2 {
        font-size: 25px;
    }
}
@media (min-width: 961px) {

    .wr-cleaning-workiz .wrcw-hero {
        position: relative;
    }

    .wr-cleaning-workiz .wrcw-hero-copy {
        max-width: 600px;
    }

    .wr-cleaning-workiz .wrcw-summary {
        position: absolute !important;

        width: 460px !important;
        max-width: 460px !important;

        top: 50% !important;
        right: max(24px, calc((100vw - 1120px) / 2)) !important;

        margin: 0 !important;

        transform: translateY(-50%) !important;
    }
}
/* ======================================================
   JOBBER REVIEW — LANDSCAPING
   UNIQUE: .jr-landscaping-jobber / .jrlj-*
   ====================================================== */

.jr-landscaping-jobber {

    --jrlj-purple:#8069d9;
    --jrlj-purple-dark:#6650bc;

    --jrlj-lavender:#f3f0fb;
    --jrlj-soft:#faf9fd;

    --jrlj-border:#e3dcf4;

    --jrlj-text:#1d1930;
    --jrlj-muted:#5c566b;
    --jrlj-light:#817a90;

    width:100%;

    color:var(--jrlj-text);
    background:#fff;

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Arial,
        sans-serif;

    line-height:1.65;
}

.jr-landscaping-jobber *,
.jr-landscaping-jobber *::before,
.jr-landscaping-jobber *::after {
    box-sizing:border-box;
}


/* CONTAINER */

.jr-landscaping-jobber .jrlj-container {

    width:100%;
    max-width:1120px;

    margin:0 auto;
    padding:0 24px;
}


/* SECTIONS */

.jr-landscaping-jobber .jrlj-section {
    padding:68px 0;
}

.jr-landscaping-jobber .jrlj-soft {
    background:var(--jrlj-soft);
}

.jr-landscaping-jobber .jrlj-section-title {

    margin:0 0 16px;

    color:var(--jrlj-text);

    font-size:29px;
    font-weight:750;

    line-height:1.25;
    letter-spacing:-.025em;
}

.jr-landscaping-jobber .jrlj-label {

    margin:0 0 8px;

    color:var(--jrlj-purple);

    font-size:11px;
    font-weight:750;

    letter-spacing:.09em;
    text-transform:uppercase;
}


/* HERO */

.jr-landscaping-jobber .jrlj-hero {

    position:relative;

    padding:78px 0;

    background:
        linear-gradient(
            180deg,
            #f5f2fc 0%,
            #ffffff 94%
        );

    border-bottom:1px solid var(--jrlj-border);
}

.jr-landscaping-jobber .jrlj-hero-grid {

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        460px;

    gap:64px;

    align-items:center;
}

.jr-landscaping-jobber .jrlj-hero-copy {
    max-width:600px;
}

.jr-landscaping-jobber .jrlj-eyebrow {

    margin:0 0 16px;

    color:var(--jrlj-purple);

    font-size:12px;
    font-weight:750;

    text-transform:uppercase;
    letter-spacing:.1em;
}

.jr-landscaping-jobber .jrlj-title {

    margin:0 0 22px;

    font-size:clamp(39px,4vw,52px);
    font-weight:780;

    line-height:1.1;
    letter-spacing:-.035em;
}

.jr-landscaping-jobber .jrlj-title span {
    color:#8b78d8;
}

.jr-landscaping-jobber .jrlj-intro {

    max-width:610px;

    margin:0;

    color:var(--jrlj-muted);

    font-size:17px;
    line-height:1.72;
}

.jr-landscaping-jobber .jrlj-actions {

    display:flex;
    flex-wrap:wrap;

    gap:12px;

    margin-top:28px;
}


/* BUTTONS */

.jr-landscaping-jobber .jrlj-btn {

    display:inline-flex;

    align-items:center;
    justify-content:center;

    min-width:130px;
    height:52px;

    padding:0 20px 5px;

    border-radius:9px;

    font-size:14px;
    font-weight:700;
    line-height:1;

    text-decoration:none;
}

.jr-landscaping-jobber .jrlj-btn-primary {

    background:var(--jrlj-purple);

    color:#fff;
}

.jr-landscaping-jobber .jrlj-btn-secondary {

    min-width:176px;

    background:#fff;

    border:1px solid var(--jrlj-border);

    color:var(--jrlj-purple-dark);
}


/* SUMMARY CARD */

.jr-landscaping-jobber .jrlj-summary {

    width:100%;
    max-width:460px;

    padding:24px;

    background:#fff;

    border:1px solid var(--jrlj-border);
    border-radius:18px;

    box-shadow:
        0 20px 50px rgba(54,38,105,.09);
}

.jr-landscaping-jobber .jrlj-summary-head {

    display:flex;

    justify-content:space-between;

    gap:20px;

    padding-bottom:16px;
    margin-bottom:4px;

    border-bottom:1px solid var(--jrlj-border);
}

.jr-landscaping-jobber .jrlj-summary-head span {

    color:var(--jrlj-purple);

    font-size:10px;
    font-weight:750;

    text-transform:uppercase;
}

.jr-landscaping-jobber .jrlj-summary-head strong {
    font-size:12px;
}

.jr-landscaping-jobber .jrlj-summary-row {

    display:flex;

    justify-content:space-between;

    gap:20px;

    padding:15px 0;

    border-bottom:1px solid var(--jrlj-border);
}

.jr-landscaping-jobber .jrlj-summary-row span {

    color:var(--jrlj-light);

    font-size:13px;
}

.jr-landscaping-jobber .jrlj-summary-row strong {

    max-width:240px;

    text-align:right;

    font-size:13px;
}

.jr-landscaping-jobber .jrlj-editorial-note {

    margin:15px 0 0;

    color:var(--jrlj-light);

    font-size:11px;
    line-height:1.55;
}


/* QUICK VERDICT */

.jr-landscaping-jobber .jrlj-verdict {

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap:32px;

    align-items:center;

    padding:30px;

    background:var(--jrlj-lavender);

    border:1px solid var(--jrlj-border);
    border-radius:15px;
}

.jr-landscaping-jobber .jrlj-verdict h2 {

    margin:0 0 10px;

    font-size:25px;
    font-weight:740;

    line-height:1.3;
}

.jr-landscaping-jobber .jrlj-verdict p:not(.jrlj-label) {

    margin:0 0 10px;

    color:var(--jrlj-muted);

    font-size:15px;
}

.jr-landscaping-jobber .jrlj-score {

    display:flex;

    align-items:center;
    justify-content:center;

    width:74px;
    height:74px;

    background:#fff;

    border:1px solid var(--jrlj-border);
    border-radius:50%;

    color:var(--jrlj-purple-dark);

    font-size:22px;
    font-weight:780;
}


/* PROS CONS */

.jr-landscaping-jobber .jrlj-pros-cons {

    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:18px;

    margin-top:26px;
}

.jr-landscaping-jobber .jrlj-pros,
.jr-landscaping-jobber .jrlj-cons {

    padding:26px;

    background:#fff;

    border:1px solid var(--jrlj-border);
    border-radius:14px;
}

.jr-landscaping-jobber .jrlj-list-head {

    display:flex;

    align-items:center;

    gap:10px;

    margin-bottom:17px;
}

.jr-landscaping-jobber .jrlj-list-head span {

    display:flex;

    align-items:center;
    justify-content:center;

    width:30px;
    height:30px;

    background:var(--jrlj-lavender);

    border-radius:50%;

    color:var(--jrlj-purple-dark);

    font-weight:800;
}

.jr-landscaping-jobber .jrlj-list-head h3 {

    margin:0;

    font-size:19px;
}

.jr-landscaping-jobber .jrlj-pros ul,
.jr-landscaping-jobber .jrlj-cons ul {

    list-style:none;

    margin:0;
    padding:0;
}

.jr-landscaping-jobber .jrlj-pros li,
.jr-landscaping-jobber .jrlj-cons li {

    position:relative;

    padding:9px 0 9px 20px;

    color:var(--jrlj-muted);

    font-size:14.5px;

    border-bottom:1px solid #eee9f6;
}

.jr-landscaping-jobber .jrlj-pros li::before {

    content:"✓";

    position:absolute;

    left:0;

    color:var(--jrlj-purple);

    font-weight:800;
}

.jr-landscaping-jobber .jrlj-cons li::before {

    content:"×";

    position:absolute;

    left:0;

    color:#827a91;

    font-weight:800;
}


/* FEATURES */

.jr-landscaping-jobber .jrlj-feature-grid {

    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:18px;

    margin-top:26px;
}

.jr-landscaping-jobber .jrlj-feature-card {

    padding:24px 22px;

    background:#fff;

    border:1px solid var(--jrlj-border);
    border-radius:13px;
}

.jr-landscaping-jobber .jrlj-feature-card > span {

    display:inline-block;

    margin-bottom:15px;

    padding:5px 9px;

    background:var(--jrlj-lavender);

    border-radius:999px;

    color:var(--jrlj-purple-dark);

    font-size:10px;
    font-weight:750;
}

.jr-landscaping-jobber .jrlj-feature-card h3 {

    margin:0 0 9px;

    font-size:17px;
}

.jr-landscaping-jobber .jrlj-feature-card p {

    margin:0;

    color:var(--jrlj-muted);

    font-size:14px;
}


/* DETAILS */

.jr-landscaping-jobber .jrlj-detail-grid {

    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:16px;

    margin-top:26px;
}

.jr-landscaping-jobber .jrlj-detail-card {

    padding:24px;

    background:#fff;

    border:1px solid var(--jrlj-border);
    border-radius:13px;
}

.jr-landscaping-jobber .jrlj-detail-card h3 {

    margin:0 0 8px;

    font-size:17px;
}

.jr-landscaping-jobber .jrlj-detail-card p {

    margin:0;

    color:var(--jrlj-muted);

    font-size:14.5px;
}


/* PRICING */

.jr-landscaping-jobber .jrlj-pricing-box {

    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap:30px;

    align-items:center;

    padding:30px;

    background:#fff;

    border:1px solid var(--jrlj-border);
    border-radius:15px;
}

.jr-landscaping-jobber .jrlj-pricing-box p:not(.jrlj-label) {

    margin:0;

    color:var(--jrlj-muted);

    font-size:15px;
}


/* BEST FOR */

.jr-landscaping-jobber .jrlj-bestfor {

    display:grid;

    grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr);

    gap:40px;
}

.jr-landscaping-jobber .jrlj-bestfor p:not(.jrlj-label) {

    color:var(--jrlj-muted);

    font-size:15px;
}

.jr-landscaping-jobber .jrlj-bestfor-list {

    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:10px;
}

.jr-landscaping-jobber .jrlj-bestfor-list span {

    position:relative;

    padding:13px 13px 13px 34px;

    background:#fff;

    border:1px solid var(--jrlj-border);
    border-radius:9px;

    font-size:13.5px;
}

.jr-landscaping-jobber .jrlj-bestfor-list span::before {

    content:"✓";

    position:absolute;

    left:13px;

    color:var(--jrlj-purple);

    font-weight:800;
}


/* FINAL */

.jr-landscaping-jobber .jrlj-final {

    padding:72px 0;

    background:
        linear-gradient(
            135deg,
            #8b78d8,
            #6d57c2
        );
}

.jr-landscaping-jobber .jrlj-final-inner {

    max-width:760px;

    text-align:center;
}

.jr-landscaping-jobber .jrlj-final-label {

    margin:0 0 10px;

    color:#e8e2ff;

    font-size:11px;
    font-weight:750;

    text-transform:uppercase;
    letter-spacing:.09em;
}

.jr-landscaping-jobber .jrlj-final h2 {

    margin:0 0 15px;

    color:#fff;

    font-size:30px;

    line-height:1.3;
}

.jr-landscaping-jobber .jrlj-final p:not(.jrlj-final-label) {

    color:rgba(255,255,255,.88);

    font-size:15.5px;
}

.jr-landscaping-jobber .jrlj-final-actions {

    display:flex;

    justify-content:center;
    align-items:center;

    gap:17px;

    margin-top:27px;
}

.jr-landscaping-jobber .jrlj-final-btn {

    display:inline-flex;

    align-items:center;
    justify-content:center;

    height:46px;

    padding:0 17px 4px;

    background:#fff;

    border-radius:9px;

    color:var(--jrlj-purple-dark);

    font-size:14px;
    font-weight:700;

    text-decoration:none;
}

.jr-landscaping-jobber .jrlj-final-link {

    color:#fff;

    font-size:14px;
    font-weight:650;

    text-decoration:underline;
    text-underline-offset:4px;
}


/* ======================================================
   FORCE HERO CARD RIGHT — DESKTOP
   prevents the problem we had on the other reviews
   ====================================================== */

@media (min-width:961px) {

    .jr-landscaping-jobber .jrlj-hero {
        position:relative;
    }

    .jr-landscaping-jobber .jrlj-hero-copy {
        max-width:600px;
    }

    .jr-landscaping-jobber .jrlj-summary {

        position:absolute !important;

        width:460px !important;
        max-width:460px !important;

        top:50% !important;

        right:max(
            24px,
            calc((100vw - 1120px) / 2)
        ) !important;

        margin:0 !important;

        transform:translateY(-50%) !important;
    }
}


/* TABLET */

@media (max-width:960px) {

    .jr-landscaping-jobber .jrlj-hero-grid {
        grid-template-columns:1fr;
        gap:40px;
    }

    .jr-landscaping-jobber .jrlj-summary {

        position:static !important;

        width:100% !important;
        max-width:560px !important;

        transform:none !important;
    }

    .jr-landscaping-jobber .jrlj-feature-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .jr-landscaping-jobber .jrlj-bestfor {
        grid-template-columns:1fr;
    }
}


/* MOBILE */

@media (max-width:640px) {

    .jr-landscaping-jobber .jrlj-container {
        padding:0 18px;
    }

    .jr-landscaping-jobber .jrlj-hero {
        padding:54px 0;
    }

    .jr-landscaping-jobber .jrlj-section {
        padding:48px 0;
    }

    .jr-landscaping-jobber .jrlj-title {
        font-size:32px;
    }

    .jr-landscaping-jobber .jrlj-intro {
        font-size:15.5px;
    }

    .jr-landscaping-jobber .jrlj-actions {
        flex-direction:column;
    }

    .jr-landscaping-jobber .jrlj-btn {
        width:100%;
    }

    .jr-landscaping-jobber .jrlj-verdict,
    .jr-landscaping-jobber .jrlj-pricing-box {
        grid-template-columns:1fr;
    }

    .jr-landscaping-jobber .jrlj-pros-cons,
    .jr-landscaping-jobber .jrlj-feature-grid,
    .jr-landscaping-jobber .jrlj-detail-grid,
    .jr-landscaping-jobber .jrlj-bestfor-list {
        grid-template-columns:1fr;
    }

    .jr-landscaping-jobber .jrlj-summary-row {
        flex-direction:column;
        gap:4px;
    }

    .jr-landscaping-jobber .jrlj-summary-row strong {
        max-width:none;
        text-align:left;
    }

    .jr-landscaping-jobber .jrlj-final h2 {
        font-size:25px;
    }
}
/* =====================================================
   HOUSECALL PRO REVIEW — LANDSCAPING
   UNIQUE: .hr-landscaping-hcp / .hrlh-*
   ===================================================== */

.hr-landscaping-hcp {

    --hrlh-purple:#8069d9;
    --hrlh-purple-dark:#6650bc;

    --hrlh-lavender:#f3f0fb;
    --hrlh-soft:#faf9fd;
    --hrlh-border:#e3dcf4;

    --hrlh-text:#1d1930;
    --hrlh-muted:#5c566b;
    --hrlh-light:#817a90;

    width:100%;

    background:#fff;
    color:var(--hrlh-text);

    font-family:
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Arial,
        sans-serif;

    line-height:1.65;
}

.hr-landscaping-hcp *,
.hr-landscaping-hcp *::before,
.hr-landscaping-hcp *::after {
    box-sizing:border-box;
}


/* CONTAINER */

.hr-landscaping-hcp .hrlh-container {
    width:100%;
    max-width:1120px;

    margin:0 auto;
    padding:0 24px;
}


/* SECTIONS */

.hr-landscaping-hcp .hrlh-section {
    padding:68px 0;
}

.hr-landscaping-hcp .hrlh-soft {
    background:var(--hrlh-soft);
}

.hr-landscaping-hcp .hrlh-section-title {
    margin:0 0 16px;

    color:var(--hrlh-text);

    font-size:29px;
    font-weight:750;

    line-height:1.25;
    letter-spacing:-.025em;
}

.hr-landscaping-hcp .hrlh-label {
    margin:0 0 8px;

    color:var(--hrlh-purple);

    font-size:11px;
    font-weight:750;

    text-transform:uppercase;
    letter-spacing:.09em;
}


/* HERO */

.hr-landscaping-hcp .hrlh-hero {
    position:relative;

    padding:78px 0;

    background:
        linear-gradient(
            180deg,
            #f5f2fc 0%,
            #fff 94%
        );

    border-bottom:1px solid var(--hrlh-border);
}

.hr-landscaping-hcp .hrlh-hero-grid {
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        460px;

    gap:64px;

    align-items:center;
}

.hr-landscaping-hcp .hrlh-hero-copy {
    max-width:600px;
}

.hr-landscaping-hcp .hrlh-eyebrow {
    margin:0 0 16px;

    color:var(--hrlh-purple);

    font-size:12px;
    font-weight:750;

    text-transform:uppercase;
    letter-spacing:.1em;
}

.hr-landscaping-hcp .hrlh-title {
    margin:0 0 22px;

    color:var(--hrlh-text);

    font-size:clamp(39px,4vw,52px);
    font-weight:780;

    line-height:1.1;
    letter-spacing:-.035em;
}

.hr-landscaping-hcp .hrlh-title span {
    color:#8b78d8;
}

.hr-landscaping-hcp .hrlh-intro {
    max-width:610px;

    margin:0;

    color:var(--hrlh-muted);

    font-size:17px;
    line-height:1.72;
}

.hr-landscaping-hcp .hrlh-actions {
    display:flex;
    flex-wrap:wrap;

    gap:12px;

    margin-top:28px;
}


/* BUTTONS */

.hr-landscaping-hcp .hrlh-btn {
    display:inline-flex;

    align-items:center;
    justify-content:center;

    min-width:150px;
    height:52px;

    padding:0 20px 5px;

    border-radius:9px;

    font-size:14px;
    font-weight:700;
    line-height:1;

    text-align:center;
    text-decoration:none;
}

.hr-landscaping-hcp .hrlh-btn-primary {
    background:var(--hrlh-purple);
    color:#fff;
}

.hr-landscaping-hcp .hrlh-btn-secondary {
    min-width:210px;

    background:#fff;

    border:1px solid var(--hrlh-border);

    color:var(--hrlh-purple-dark);
}


/* SUMMARY */

.hr-landscaping-hcp .hrlh-summary {
    width:100%;
    max-width:460px;

    padding:24px;

    background:#fff;

    border:1px solid var(--hrlh-border);
    border-radius:18px;

    box-shadow:
        0 20px 50px rgba(54,38,105,.09);
}

.hr-landscaping-hcp .hrlh-summary-head {
    display:flex;

    justify-content:space-between;
    gap:20px;

    padding-bottom:16px;
    margin-bottom:4px;

    border-bottom:1px solid var(--hrlh-border);
}

.hr-landscaping-hcp .hrlh-summary-head span {
    color:var(--hrlh-purple);

    font-size:10px;
    font-weight:750;

    text-transform:uppercase;
}

.hr-landscaping-hcp .hrlh-summary-head strong {
    font-size:12px;
}

.hr-landscaping-hcp .hrlh-summary-row {
    display:flex;

    justify-content:space-between;
    gap:20px;

    padding:15px 0;

    border-bottom:1px solid var(--hrlh-border);
}

.hr-landscaping-hcp .hrlh-summary-row span {
    color:var(--hrlh-light);

    font-size:13px;
}

.hr-landscaping-hcp .hrlh-summary-row strong {
    max-width:250px;

    text-align:right;

    font-size:13px;
}

.hr-landscaping-hcp .hrlh-editorial-note {
    margin:15px 0 0;

    color:var(--hrlh-light);

    font-size:11px;
    line-height:1.55;
}


/* VERDICT */

.hr-landscaping-hcp .hrlh-verdict {
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap:32px;

    align-items:center;

    padding:30px;

    background:var(--hrlh-lavender);

    border:1px solid var(--hrlh-border);
    border-radius:15px;
}

.hr-landscaping-hcp .hrlh-verdict h2 {
    margin:0 0 10px;

    font-size:25px;
    font-weight:740;

    line-height:1.3;
}

.hr-landscaping-hcp .hrlh-verdict p:not(.hrlh-label) {
    margin:0 0 10px;

    color:var(--hrlh-muted);

    font-size:15px;
}

.hr-landscaping-hcp .hrlh-score {
    display:flex;

    align-items:center;
    justify-content:center;

    width:74px;
    height:74px;

    background:#fff;

    border:1px solid var(--hrlh-border);
    border-radius:50%;

    color:var(--hrlh-purple-dark);

    font-size:22px;
    font-weight:780;
}


/* PROS CONS */

.hr-landscaping-hcp .hrlh-pros-cons {
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:18px;

    margin-top:26px;
}

.hr-landscaping-hcp .hrlh-pros,
.hr-landscaping-hcp .hrlh-cons {
    padding:26px;

    background:#fff;

    border:1px solid var(--hrlh-border);
    border-radius:14px;
}

.hr-landscaping-hcp .hrlh-list-head {
    display:flex;
    align-items:center;

    gap:10px;

    margin-bottom:17px;
}

.hr-landscaping-hcp .hrlh-list-head span {
    display:flex;

    align-items:center;
    justify-content:center;

    width:30px;
    height:30px;

    background:var(--hrlh-lavender);

    border-radius:50%;

    color:var(--hrlh-purple-dark);

    font-weight:800;
}

.hr-landscaping-hcp .hrlh-list-head h3 {
    margin:0;
    font-size:19px;
}

.hr-landscaping-hcp .hrlh-pros ul,
.hr-landscaping-hcp .hrlh-cons ul {
    list-style:none;

    margin:0;
    padding:0;
}

.hr-landscaping-hcp .hrlh-pros li,
.hr-landscaping-hcp .hrlh-cons li {
    position:relative;

    padding:9px 0 9px 20px;

    color:var(--hrlh-muted);

    font-size:14.5px;

    border-bottom:1px solid #eee9f6;
}

.hr-landscaping-hcp .hrlh-pros li::before {
    content:"✓";

    position:absolute;
    left:0;

    color:var(--hrlh-purple);

    font-weight:800;
}

.hr-landscaping-hcp .hrlh-cons li::before {
    content:"×";

    position:absolute;
    left:0;

    color:#827a91;

    font-weight:800;
}


/* FEATURES */

.hr-landscaping-hcp .hrlh-feature-grid {
    display:grid;

    grid-template-columns:
        repeat(3,minmax(0,1fr));

    gap:18px;

    margin-top:26px;
}

.hr-landscaping-hcp .hrlh-feature-card {
    padding:24px 22px;

    background:#fff;

    border:1px solid var(--hrlh-border);
    border-radius:13px;
}

.hr-landscaping-hcp .hrlh-feature-card > span {
    display:inline-block;

    margin-bottom:15px;

    padding:5px 9px;

    background:var(--hrlh-lavender);

    border-radius:999px;

    color:var(--hrlh-purple-dark);

    font-size:10px;
    font-weight:750;
}

.hr-landscaping-hcp .hrlh-feature-card h3 {
    margin:0 0 9px;

    font-size:17px;
}

.hr-landscaping-hcp .hrlh-feature-card p {
    margin:0;

    color:var(--hrlh-muted);

    font-size:14px;
}


/* DETAILS */

.hr-landscaping-hcp .hrlh-detail-grid {
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:16px;

    margin-top:26px;
}

.hr-landscaping-hcp .hrlh-detail-card {
    padding:24px;

    background:#fff;

    border:1px solid var(--hrlh-border);
    border-radius:13px;
}

.hr-landscaping-hcp .hrlh-detail-card h3 {
    margin:0 0 8px;

    font-size:17px;
}

.hr-landscaping-hcp .hrlh-detail-card p {
    margin:0;

    color:var(--hrlh-muted);

    font-size:14.5px;
}


/* PRICING */

.hr-landscaping-hcp .hrlh-pricing-box {
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap:30px;

    align-items:center;

    padding:30px;

    background:#fff;

    border:1px solid var(--hrlh-border);
    border-radius:15px;
}

.hr-landscaping-hcp .hrlh-pricing-box p:not(.hrlh-label) {
    margin:0;

    color:var(--hrlh-muted);

    font-size:15px;
}


/* BEST FOR */

.hr-landscaping-hcp .hrlh-bestfor {
    display:grid;

    grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr);

    gap:40px;
}

.hr-landscaping-hcp .hrlh-bestfor p:not(.hrlh-label) {
    color:var(--hrlh-muted);

    font-size:15px;
}

.hr-landscaping-hcp .hrlh-bestfor-list {
    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    gap:10px;
}

.hr-landscaping-hcp .hrlh-bestfor-list span {
    position:relative;

    padding:13px 13px 13px 34px;

    background:#fff;

    border:1px solid var(--hrlh-border);
    border-radius:9px;

    font-size:13.5px;
}

.hr-landscaping-hcp .hrlh-bestfor-list span::before {
    content:"✓";

    position:absolute;
    left:13px;

    color:var(--hrlh-purple);

    font-weight:800;
}


/* FINAL */

.hr-landscaping-hcp .hrlh-final {
    padding:72px 0;

    background:
        linear-gradient(
            135deg,
            #8b78d8,
            #6d57c2
        );
}

.hr-landscaping-hcp .hrlh-final-inner {
    max-width:760px;

    text-align:center;
}

.hr-landscaping-hcp .hrlh-final-label {
    margin:0 0 10px;

    color:#e8e2ff;

    font-size:11px;
    font-weight:750;

    text-transform:uppercase;
    letter-spacing:.09em;
}

.hr-landscaping-hcp .hrlh-final h2 {
    margin:0 0 15px;

    color:#fff;

    font-size:30px;
    line-height:1.3;
}

.hr-landscaping-hcp .hrlh-final p:not(.hrlh-final-label) {
    color:rgba(255,255,255,.88);

    font-size:15.5px;
}

.hr-landscaping-hcp .hrlh-final-actions {
    display:flex;

    align-items:center;
    justify-content:center;

    flex-wrap:wrap;

    gap:17px;

    margin-top:27px;
}

.hr-landscaping-hcp .hrlh-final-btn {
    display:inline-flex;

    align-items:center;
    justify-content:center;

    height:46px;

    padding:0 17px 4px;

    background:#fff;

    border-radius:9px;

    color:var(--hrlh-purple-dark);

    font-size:14px;
    font-weight:700;

    text-decoration:none;
}

.hr-landscaping-hcp .hrlh-final-link {
    color:#fff;

    font-size:14px;
    font-weight:650;

    text-decoration:underline;
    text-underline-offset:4px;
}


/* =============================================
   DESKTOP — FORCE SUMMARY CARD TO THE RIGHT
   ============================================= */

@media (min-width:961px) {

    .hr-landscaping-hcp .hrlh-hero {
        position:relative;
    }

    .hr-landscaping-hcp .hrlh-hero-copy {
        max-width:600px;
    }

    .hr-landscaping-hcp .hrlh-summary {
        position:absolute !important;

        width:460px !important;
        max-width:460px !important;

        top:50% !important;

        right:max(
            24px,
            calc((100vw - 1120px) / 2)
        ) !important;

        margin:0 !important;

        transform:translateY(-50%) !important;
    }
}


/* TABLET */

@media (max-width:960px) {

    .hr-landscaping-hcp .hrlh-hero-grid {
        grid-template-columns:1fr;
        gap:40px;
    }

    .hr-landscaping-hcp .hrlh-summary {
        position:static !important;

        width:100% !important;
        max-width:560px !important;

        transform:none !important;
    }

    .hr-landscaping-hcp .hrlh-feature-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .hr-landscaping-hcp .hrlh-bestfor {
        grid-template-columns:1fr;
    }
}


/* MOBILE */

@media (max-width:640px) {

    .hr-landscaping-hcp .hrlh-container {
        padding:0 18px;
    }

    .hr-landscaping-hcp .hrlh-hero {
        padding:54px 0;
    }

    .hr-landscaping-hcp .hrlh-section {
        padding:48px 0;
    }

    .hr-landscaping-hcp .hrlh-title {
        font-size:32px;
    }

    .hr-landscaping-hcp .hrlh-intro {
        font-size:15.5px;
    }

    .hr-landscaping-hcp .hrlh-actions {
        flex-direction:column;
    }

    .hr-landscaping-hcp .hrlh-btn {
        width:100%;
    }

    .hr-landscaping-hcp .hrlh-verdict,
    .hr-landscaping-hcp .hrlh-pricing-box {
        grid-template-columns:1fr;
    }

    .hr-landscaping-hcp .hrlh-pros-cons,
    .hr-landscaping-hcp .hrlh-feature-grid,
    .hr-landscaping-hcp .hrlh-detail-grid,
    .hr-landscaping-hcp .hrlh-bestfor-list {
        grid-template-columns:1fr;
    }

    .hr-landscaping-hcp .hrlh-summary-row {
        flex-direction:column;
        gap:4px;
    }

    .hr-landscaping-hcp .hrlh-summary-row strong {
        max-width:none;
        text-align:left;
    }

    .hr-landscaping-hcp .hrlh-final h2 {
        font-size:25px;
    }
}
/* ================================================
   WORKIZ REVIEW — LANDSCAPING
   .wr-landscaping-workiz / .wrlw-*
   ================================================ */

.wr-landscaping-workiz {
    --wrlw-purple:#8069d9;
    --wrlw-purple-dark:#6650bc;
    --wrlw-lavender:#f3f0fb;
    --wrlw-soft:#faf9fd;
    --wrlw-border:#e3dcf4;
    --wrlw-text:#1d1930;
    --wrlw-muted:#5c566b;
    --wrlw-light:#817a90;

    width:100%;
    background:#fff;
    color:var(--wrlw-text);

    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    line-height:1.65;
}

.wr-landscaping-workiz *,
.wr-landscaping-workiz *::before,
.wr-landscaping-workiz *::after {
    box-sizing:border-box;
}

.wr-landscaping-workiz .wrlw-container {
    width:100%;
    max-width:1120px;
    margin:0 auto;
    padding:0 24px;
}

.wr-landscaping-workiz .wrlw-section {
    padding:68px 0;
}

.wr-landscaping-workiz .wrlw-soft {
    background:var(--wrlw-soft);
}

.wr-landscaping-workiz .wrlw-section-title {
    margin:0 0 16px;
    font-size:29px;
    font-weight:750;
    line-height:1.25;
    letter-spacing:-.025em;
}

.wr-landscaping-workiz .wrlw-label {
    margin:0 0 8px;
    color:var(--wrlw-purple);
    font-size:11px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.09em;
}


/* HERO */

.wr-landscaping-workiz .wrlw-hero {
    position:relative;
    padding:78px 0;

    background:linear-gradient(
        180deg,
        #f5f2fc 0%,
        #fff 94%
    );

    border-bottom:1px solid var(--wrlw-border);
}

.wr-landscaping-workiz .wrlw-hero-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) 460px;
    gap:64px;
    align-items:center;
}

.wr-landscaping-workiz .wrlw-hero-copy {
    max-width:600px;
}

.wr-landscaping-workiz .wrlw-eyebrow {
    margin:0 0 16px;
    color:var(--wrlw-purple);
    font-size:12px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.1em;
}

.wr-landscaping-workiz .wrlw-title {
    margin:0 0 22px;
    font-size:clamp(39px,4vw,52px);
    font-weight:780;
    line-height:1.1;
    letter-spacing:-.035em;
}

.wr-landscaping-workiz .wrlw-title span {
    color:#8b78d8;
}

.wr-landscaping-workiz .wrlw-intro {
    max-width:610px;
    margin:0;
    color:var(--wrlw-muted);
    font-size:17px;
    line-height:1.72;
}

.wr-landscaping-workiz .wrlw-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}


/* BUTTONS */

.wr-landscaping-workiz .wrlw-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:135px;
    height:52px;

    padding:0 20px 5px;

    border-radius:9px;

    font-size:14px;
    font-weight:700;
    line-height:1;

    text-align:center;
    text-decoration:none;
}

.wr-landscaping-workiz .wrlw-btn-primary {
    background:var(--wrlw-purple);
    color:#fff;
}

.wr-landscaping-workiz .wrlw-btn-secondary {
    min-width:176px;
    background:#fff;
    border:1px solid var(--wrlw-border);
    color:var(--wrlw-purple-dark);
}


/* SUMMARY */

.wr-landscaping-workiz .wrlw-summary {
    width:100%;
    max-width:460px;
    padding:24px;

    background:#fff;

    border:1px solid var(--wrlw-border);
    border-radius:18px;

    box-shadow:0 20px 50px rgba(54,38,105,.09);
}

.wr-landscaping-workiz .wrlw-summary-head {
    display:flex;
    justify-content:space-between;
    gap:20px;

    padding-bottom:16px;
    margin-bottom:4px;

    border-bottom:1px solid var(--wrlw-border);
}

.wr-landscaping-workiz .wrlw-summary-head span {
    color:var(--wrlw-purple);
    font-size:10px;
    font-weight:750;
    text-transform:uppercase;
}

.wr-landscaping-workiz .wrlw-summary-head strong {
    font-size:12px;
}

.wr-landscaping-workiz .wrlw-summary-row {
    display:flex;
    justify-content:space-between;
    gap:20px;

    padding:15px 0;

    border-bottom:1px solid var(--wrlw-border);
}

.wr-landscaping-workiz .wrlw-summary-row span {
    color:var(--wrlw-light);
    font-size:13px;
}

.wr-landscaping-workiz .wrlw-summary-row strong {
    max-width:240px;
    text-align:right;
    font-size:13px;
}

.wr-landscaping-workiz .wrlw-editorial-note {
    margin:15px 0 0;
    color:var(--wrlw-light);
    font-size:11px;
    line-height:1.55;
}


/* VERDICT */

.wr-landscaping-workiz .wrlw-verdict {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:32px;
    align-items:center;

    padding:30px;

    background:var(--wrlw-lavender);

    border:1px solid var(--wrlw-border);
    border-radius:15px;
}

.wr-landscaping-workiz .wrlw-verdict h2 {
    margin:0 0 10px;
    font-size:25px;
    font-weight:740;
    line-height:1.3;
}

.wr-landscaping-workiz .wrlw-verdict p:not(.wrlw-label) {
    margin:0 0 10px;
    color:var(--wrlw-muted);
    font-size:15px;
}

.wr-landscaping-workiz .wrlw-score {
    display:flex;
    align-items:center;
    justify-content:center;

    width:74px;
    height:74px;

    background:#fff;

    border:1px solid var(--wrlw-border);
    border-radius:50%;

    color:var(--wrlw-purple-dark);

    font-size:22px;
    font-weight:780;
}


/* PROS CONS */

.wr-landscaping-workiz .wrlw-pros-cons {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
}

.wr-landscaping-workiz .wrlw-pros,
.wr-landscaping-workiz .wrlw-cons {
    padding:26px;

    background:#fff;

    border:1px solid var(--wrlw-border);
    border-radius:14px;
}

.wr-landscaping-workiz .wrlw-list-head {
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
}

.wr-landscaping-workiz .wrlw-list-head span {
    display:flex;
    align-items:center;
    justify-content:center;

    width:30px;
    height:30px;

    background:var(--wrlw-lavender);
    border-radius:50%;

    color:var(--wrlw-purple-dark);
    font-weight:800;
}

.wr-landscaping-workiz .wrlw-list-head h3 {
    margin:0;
    font-size:19px;
}

.wr-landscaping-workiz .wrlw-pros ul,
.wr-landscaping-workiz .wrlw-cons ul {
    list-style:none;
    margin:0;
    padding:0;
}

.wr-landscaping-workiz .wrlw-pros li,
.wr-landscaping-workiz .wrlw-cons li {
    position:relative;
    padding:9px 0 9px 20px;

    color:var(--wrlw-muted);
    font-size:14.5px;

    border-bottom:1px solid #eee9f6;
}

.wr-landscaping-workiz .wrlw-pros li::before {
    content:"✓";
    position:absolute;
    left:0;
    color:var(--wrlw-purple);
    font-weight:800;
}

.wr-landscaping-workiz .wrlw-cons li::before {
    content:"×";
    position:absolute;
    left:0;
    color:#827a91;
    font-weight:800;
}


/* FEATURES */

.wr-landscaping-workiz .wrlw-feature-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
}

.wr-landscaping-workiz .wrlw-feature-card {
    padding:24px 22px;
    background:#fff;
    border:1px solid var(--wrlw-border);
    border-radius:13px;
}

.wr-landscaping-workiz .wrlw-feature-card > span {
    display:inline-block;
    margin-bottom:15px;
    padding:5px 9px;

    background:var(--wrlw-lavender);
    border-radius:999px;

    color:var(--wrlw-purple-dark);
    font-size:10px;
    font-weight:750;
}

.wr-landscaping-workiz .wrlw-feature-card h3 {
    margin:0 0 9px;
    font-size:17px;
}

.wr-landscaping-workiz .wrlw-feature-card p {
    margin:0;
    color:var(--wrlw-muted);
    font-size:14px;
}


/* DETAIL CARDS */

.wr-landscaping-workiz .wrlw-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:26px;
}

.wr-landscaping-workiz .wrlw-detail-card {
    padding:24px;
    background:#fff;
    border:1px solid var(--wrlw-border);
    border-radius:13px;
}

.wr-landscaping-workiz .wrlw-detail-card h3 {
    margin:0 0 8px;
    font-size:17px;
}

.wr-landscaping-workiz .wrlw-detail-card p {
    margin:0;
    color:var(--wrlw-muted);
    font-size:14.5px;
}


/* PRICING */

.wr-landscaping-workiz .wrlw-pricing-box {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:30px;
    align-items:center;

    padding:30px;

    background:#fff;

    border:1px solid var(--wrlw-border);
    border-radius:15px;
}

.wr-landscaping-workiz .wrlw-pricing-box p:not(.wrlw-label) {
    margin:0;
    color:var(--wrlw-muted);
    font-size:15px;
}


/* BEST FOR */

.wr-landscaping-workiz .wrlw-bestfor {
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:40px;
}

.wr-landscaping-workiz .wrlw-bestfor p:not(.wrlw-label) {
    color:var(--wrlw-muted);
    font-size:15px;
}

.wr-landscaping-workiz .wrlw-bestfor-list {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}

.wr-landscaping-workiz .wrlw-bestfor-list span {
    position:relative;
    padding:13px 13px 13px 34px;

    background:#fff;

    border:1px solid var(--wrlw-border);
    border-radius:9px;

    font-size:13.5px;
}

.wr-landscaping-workiz .wrlw-bestfor-list span::before {
    content:"✓";
    position:absolute;
    left:13px;
    color:var(--wrlw-purple);
    font-weight:800;
}


/* FINAL */

.wr-landscaping-workiz .wrlw-final {
    padding:72px 0;

    background:linear-gradient(
        135deg,
        #8b78d8,
        #6d57c2
    );
}

.wr-landscaping-workiz .wrlw-final-inner {
    max-width:760px;
    text-align:center;
}

.wr-landscaping-workiz .wrlw-final-label {
    margin:0 0 10px;

    color:#e8e2ff;

    font-size:11px;
    font-weight:750;

    text-transform:uppercase;
    letter-spacing:.09em;
}

.wr-landscaping-workiz .wrlw-final h2 {
    margin:0 0 15px;

    color:#fff;

    font-size:30px;
    line-height:1.3;
}

.wr-landscaping-workiz .wrlw-final p:not(.wrlw-final-label) {
    color:rgba(255,255,255,.88);
    font-size:15.5px;
}

.wr-landscaping-workiz .wrlw-final-actions {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;

    gap:17px;

    margin-top:27px;
}

.wr-landscaping-workiz .wrlw-final-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    height:46px;

    padding:0 17px 4px;

    background:#fff;

    border-radius:9px;

    color:var(--wrlw-purple-dark);

    font-size:14px;
    font-weight:700;

    text-decoration:none;
}

.wr-landscaping-workiz .wrlw-final-link {
    color:#fff;

    font-size:14px;
    font-weight:650;

    text-decoration:underline;
    text-underline-offset:4px;
}


/* FORCE SUMMARY CARD RIGHT ON DESKTOP */

@media (min-width:961px) {

    .wr-landscaping-workiz .wrlw-hero {
        position:relative;
    }

    .wr-landscaping-workiz .wrlw-hero-copy {
        max-width:600px;
    }

    .wr-landscaping-workiz .wrlw-summary {
        position:absolute !important;

        width:460px !important;
        max-width:460px !important;

        top:50% !important;

        right:max(
            24px,
            calc((100vw - 1120px) / 2)
        ) !important;

        margin:0 !important;

        transform:translateY(-50%) !important;
    }
}


/* TABLET */

@media (max-width:960px) {

    .wr-landscaping-workiz .wrlw-hero-grid {
        grid-template-columns:1fr;
        gap:40px;
    }

    .wr-landscaping-workiz .wrlw-summary {
        position:static !important;

        width:100% !important;
        max-width:560px !important;

        transform:none !important;
    }

    .wr-landscaping-workiz .wrlw-feature-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .wr-landscaping-workiz .wrlw-bestfor {
        grid-template-columns:1fr;
    }
}


/* MOBILE */

@media (max-width:640px) {

    .wr-landscaping-workiz .wrlw-container {
        padding:0 18px;
    }

    .wr-landscaping-workiz .wrlw-hero {
        padding:54px 0;
    }

    .wr-landscaping-workiz .wrlw-section {
        padding:48px 0;
    }

    .wr-landscaping-workiz .wrlw-title {
        font-size:32px;
    }

    .wr-landscaping-workiz .wrlw-intro {
        font-size:15.5px;
    }

    .wr-landscaping-workiz .wrlw-actions {
        flex-direction:column;
    }

    .wr-landscaping-workiz .wrlw-btn {
        width:100%;
    }

    .wr-landscaping-workiz .wrlw-verdict,
    .wr-landscaping-workiz .wrlw-pricing-box {
        grid-template-columns:1fr;
    }

    .wr-landscaping-workiz .wrlw-pros-cons,
    .wr-landscaping-workiz .wrlw-feature-grid,
    .wr-landscaping-workiz .wrlw-detail-grid,
    .wr-landscaping-workiz .wrlw-bestfor-list {
        grid-template-columns:1fr;
    }

    .wr-landscaping-workiz .wrlw-summary-row {
        flex-direction:column;
        gap:4px;
    }

    .wr-landscaping-workiz .wrlw-summary-row strong {
        max-width:none;
        text-align:left;
    }

    .wr-landscaping-workiz .wrlw-final h2 {
        font-size:25px;
    }
}
/* ==============================================
   JOBBER REVIEW — ROOFING
   .jr-roofing-jobber / .jrrj-*
   ============================================== */

.jr-roofing-jobber {
    --jrrj-purple:#8069d9;
    --jrrj-purple-dark:#6650bc;
    --jrrj-lavender:#f3f0fb;
    --jrrj-soft:#faf9fd;
    --jrrj-border:#e3dcf4;

    --jrrj-text:#1d1930;
    --jrrj-muted:#5c566b;
    --jrrj-light:#817a90;

    width:100%;
    background:#fff;
    color:var(--jrrj-text);

    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    line-height:1.65;
}

.jr-roofing-jobber *,
.jr-roofing-jobber *::before,
.jr-roofing-jobber *::after {
    box-sizing:border-box;
}

.jr-roofing-jobber .jrrj-container {
    width:100%;
    max-width:1120px;
    margin:0 auto;
    padding:0 24px;
}

.jr-roofing-jobber .jrrj-section {
    padding:68px 0;
}

.jr-roofing-jobber .jrrj-soft {
    background:var(--jrrj-soft);
}

.jr-roofing-jobber .jrrj-section-title {
    margin:0 0 16px;
    font-size:29px;
    font-weight:750;
    line-height:1.25;
    letter-spacing:-.025em;
}

.jr-roofing-jobber .jrrj-label {
    margin:0 0 8px;
    color:var(--jrrj-purple);
    font-size:11px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.09em;
}


/* HERO */

.jr-roofing-jobber .jrrj-hero {
    position:relative;
    padding:78px 0;

    background:linear-gradient(
        180deg,
        #f5f2fc 0%,
        #fff 94%
    );

    border-bottom:1px solid var(--jrrj-border);
}

.jr-roofing-jobber .jrrj-hero-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) 460px;
    gap:64px;
    align-items:center;
}

.jr-roofing-jobber .jrrj-hero-copy {
    max-width:600px;
}

.jr-roofing-jobber .jrrj-eyebrow {
    margin:0 0 16px;
    color:var(--jrrj-purple);
    font-size:12px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.1em;
}

.jr-roofing-jobber .jrrj-title {
    margin:0 0 22px;
    font-size:clamp(39px,4vw,52px);
    font-weight:780;
    line-height:1.1;
    letter-spacing:-.035em;
}

.jr-roofing-jobber .jrrj-title span {
    color:#8b78d8;
}

.jr-roofing-jobber .jrrj-intro {
    max-width:610px;
    margin:0;
    color:var(--jrrj-muted);
    font-size:17px;
    line-height:1.72;
}

.jr-roofing-jobber .jrrj-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}


/* BUTTONS */

.jr-roofing-jobber .jrrj-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:130px;
    height:52px;

    padding:0 20px 5px;

    border-radius:9px;

    font-size:14px;
    font-weight:700;
    line-height:1;

    text-align:center;
    text-decoration:none;
}

.jr-roofing-jobber .jrrj-btn-primary {
    background:var(--jrrj-purple);
    color:#fff;
}

.jr-roofing-jobber .jrrj-btn-secondary {
    min-width:176px;
    background:#fff;
    border:1px solid var(--jrrj-border);
    color:var(--jrrj-purple-dark);
}


/* SUMMARY */

.jr-roofing-jobber .jrrj-summary {
    width:100%;
    max-width:460px;
    padding:24px;

    background:#fff;

    border:1px solid var(--jrrj-border);
    border-radius:18px;

    box-shadow:0 20px 50px rgba(54,38,105,.09);
}

.jr-roofing-jobber .jrrj-summary-head {
    display:flex;
    justify-content:space-between;
    gap:20px;

    padding-bottom:16px;
    margin-bottom:4px;

    border-bottom:1px solid var(--jrrj-border);
}

.jr-roofing-jobber .jrrj-summary-head span {
    color:var(--jrrj-purple);
    font-size:10px;
    font-weight:750;
    text-transform:uppercase;
}

.jr-roofing-jobber .jrrj-summary-head strong {
    font-size:12px;
}

.jr-roofing-jobber .jrrj-summary-row {
    display:flex;
    justify-content:space-between;
    gap:20px;

    padding:15px 0;

    border-bottom:1px solid var(--jrrj-border);
}

.jr-roofing-jobber .jrrj-summary-row span {
    color:var(--jrrj-light);
    font-size:13px;
}

.jr-roofing-jobber .jrrj-summary-row strong {
    max-width:240px;
    text-align:right;
    font-size:13px;
}

.jr-roofing-jobber .jrrj-editorial-note {
    margin:15px 0 0;
    color:var(--jrrj-light);
    font-size:11px;
    line-height:1.55;
}


/* VERDICT */

.jr-roofing-jobber .jrrj-verdict {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:32px;
    align-items:center;

    padding:30px;

    background:var(--jrrj-lavender);

    border:1px solid var(--jrrj-border);
    border-radius:15px;
}

.jr-roofing-jobber .jrrj-verdict h2 {
    margin:0 0 10px;
    font-size:25px;
    font-weight:740;
    line-height:1.3;
}

.jr-roofing-jobber .jrrj-verdict p:not(.jrrj-label) {
    margin:0 0 10px;
    color:var(--jrrj-muted);
    font-size:15px;
}

.jr-roofing-jobber .jrrj-score {
    display:flex;
    align-items:center;
    justify-content:center;

    width:74px;
    height:74px;

    background:#fff;

    border:1px solid var(--jrrj-border);
    border-radius:50%;

    color:var(--jrrj-purple-dark);

    font-size:22px;
    font-weight:780;
}


/* PROS CONS */

.jr-roofing-jobber .jrrj-pros-cons {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
}

.jr-roofing-jobber .jrrj-pros,
.jr-roofing-jobber .jrrj-cons {
    padding:26px;
    background:#fff;
    border:1px solid var(--jrrj-border);
    border-radius:14px;
}

.jr-roofing-jobber .jrrj-list-head {
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
}

.jr-roofing-jobber .jrrj-list-head span {
    display:flex;
    align-items:center;
    justify-content:center;

    width:30px;
    height:30px;

    background:var(--jrrj-lavender);
    border-radius:50%;

    color:var(--jrrj-purple-dark);
    font-weight:800;
}

.jr-roofing-jobber .jrrj-list-head h3 {
    margin:0;
    font-size:19px;
}

.jr-roofing-jobber .jrrj-pros ul,
.jr-roofing-jobber .jrrj-cons ul {
    list-style:none;
    margin:0;
    padding:0;
}

.jr-roofing-jobber .jrrj-pros li,
.jr-roofing-jobber .jrrj-cons li {
    position:relative;
    padding:9px 0 9px 20px;
    color:var(--jrrj-muted);
    font-size:14.5px;
    border-bottom:1px solid #eee9f6;
}

.jr-roofing-jobber .jrrj-pros li::before {
    content:"✓";
    position:absolute;
    left:0;
    color:var(--jrrj-purple);
    font-weight:800;
}

.jr-roofing-jobber .jrrj-cons li::before {
    content:"×";
    position:absolute;
    left:0;
    color:#827a91;
    font-weight:800;
}


/* FEATURES */

.jr-roofing-jobber .jrrj-feature-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
}

.jr-roofing-jobber .jrrj-feature-card {
    padding:24px 22px;
    background:#fff;
    border:1px solid var(--jrrj-border);
    border-radius:13px;
}

.jr-roofing-jobber .jrrj-feature-card > span {
    display:inline-block;
    margin-bottom:15px;
    padding:5px 9px;

    background:var(--jrrj-lavender);
    border-radius:999px;

    color:var(--jrrj-purple-dark);

    font-size:10px;
    font-weight:750;
}

.jr-roofing-jobber .jrrj-feature-card h3 {
    margin:0 0 9px;
    font-size:17px;
}

.jr-roofing-jobber .jrrj-feature-card p {
    margin:0;
    color:var(--jrrj-muted);
    font-size:14px;
}


/* DETAIL */

.jr-roofing-jobber .jrrj-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:26px;
}

.jr-roofing-jobber .jrrj-detail-card {
    padding:24px;
    background:#fff;
    border:1px solid var(--jrrj-border);
    border-radius:13px;
}

.jr-roofing-jobber .jrrj-detail-card h3 {
    margin:0 0 8px;
    font-size:17px;
}

.jr-roofing-jobber .jrrj-detail-card p {
    margin:0;
    color:var(--jrrj-muted);
    font-size:14.5px;
}


/* LIMIT */

.jr-roofing-jobber .jrrj-limit-box {
    padding:30px;
    background:var(--jrrj-lavender);
    border:1px solid var(--jrrj-border);
    border-radius:15px;
}

.jr-roofing-jobber .jrrj-limit-box p:not(.jrrj-label) {
    margin:0;
    max-width:850px;
    color:var(--jrrj-muted);
    font-size:15px;
}


/* PRICING */

.jr-roofing-jobber .jrrj-pricing-box {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:30px;
    align-items:center;

    padding:30px;

    background:#fff;

    border:1px solid var(--jrrj-border);
    border-radius:15px;
}

.jr-roofing-jobber .jrrj-pricing-box p:not(.jrrj-label) {
    margin:0;
    color:var(--jrrj-muted);
    font-size:15px;
}


/* BEST FOR */

.jr-roofing-jobber .jrrj-bestfor {
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:40px;
}

.jr-roofing-jobber .jrrj-bestfor p:not(.jrrj-label) {
    color:var(--jrrj-muted);
    font-size:15px;
}

.jr-roofing-jobber .jrrj-bestfor-list {
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    align-content:start;
}

.jr-roofing-jobber .jrrj-bestfor-list span {
    display:block;
    width:100%;

    position:relative;

    padding:13px 16px 13px 38px;

    background:var(--jrrj-soft);

    border:1px solid var(--jrrj-border);
    border-radius:9px;

    font-size:13.5px;
    line-height:1.4;
}

.jr-roofing-jobber .jrrj-bestfor-list span::before {
    content:"✓";
    position:absolute;
    left:13px;
    color:var(--jrrj-purple);
    font-weight:800;
}


/* FINAL */

.jr-roofing-jobber .jrrj-final {
    padding:72px 0;

    background:linear-gradient(
        135deg,
        #8b78d8,
        #6d57c2
    );
}

.jr-roofing-jobber .jrrj-final-inner {
    max-width:760px;
    text-align:center;
}

.jr-roofing-jobber .jrrj-final-label {
    margin:0 0 10px;
    color:#e8e2ff;
    font-size:11px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.jr-roofing-jobber .jrrj-final h2 {
    margin:0 0 15px;
    color:#fff;
    font-size:30px;
    line-height:1.3;
}

.jr-roofing-jobber .jrrj-final p:not(.jrrj-final-label) {
    color:rgba(255,255,255,.88);
    font-size:15.5px;
}

.jr-roofing-jobber .jrrj-final-actions {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:17px;
    margin-top:27px;
}

.jr-roofing-jobber .jrrj-final-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    height:46px;

    padding:0 17px 4px;

    background:#fff;

    border-radius:9px;

    color:var(--jrrj-purple-dark);

    font-size:14px;
    font-weight:700;

    text-decoration:none;
}

.jr-roofing-jobber .jrrj-final-link {
    color:#fff;
    font-size:14px;
    font-weight:650;
    text-decoration:underline;
    text-underline-offset:4px;
}


/* FORCE SUMMARY CARD RIGHT — DESKTOP */

@media (min-width:961px) {

    .jr-roofing-jobber .jrrj-hero {
        position:relative;
    }

    .jr-roofing-jobber .jrrj-hero-copy {
        max-width:600px;
    }

    .jr-roofing-jobber .jrrj-summary {
        position:absolute !important;

        width:460px !important;
        max-width:460px !important;

        top:50% !important;

        right:max(
            24px,
            calc((100vw - 1120px) / 2)
        ) !important;

        margin:0 !important;

        transform:translateY(-50%) !important;
    }
}


/* TABLET */

@media (max-width:960px) {

    .jr-roofing-jobber .jrrj-hero-grid {
        grid-template-columns:1fr;
        gap:40px;
    }

    .jr-roofing-jobber .jrrj-summary {
        position:static !important;

        width:100% !important;
        max-width:560px !important;

        transform:none !important;
    }

    .jr-roofing-jobber .jrrj-feature-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .jr-roofing-jobber .jrrj-bestfor {
        grid-template-columns:1fr;
    }
}


/* MOBILE */

@media (max-width:640px) {

    .jr-roofing-jobber .jrrj-container {
        padding:0 18px;
    }

    .jr-roofing-jobber .jrrj-hero {
        padding:54px 0;
    }

    .jr-roofing-jobber .jrrj-section {
        padding:48px 0;
    }

    .jr-roofing-jobber .jrrj-title {
        font-size:32px;
    }

    .jr-roofing-jobber .jrrj-intro {
        font-size:15.5px;
    }

    .jr-roofing-jobber .jrrj-actions {
        flex-direction:column;
    }

    .jr-roofing-jobber .jrrj-btn {
        width:100%;
    }

    .jr-roofing-jobber .jrrj-verdict,
    .jr-roofing-jobber .jrrj-pricing-box {
        grid-template-columns:1fr;
    }

    .jr-roofing-jobber .jrrj-pros-cons,
    .jr-roofing-jobber .jrrj-feature-grid,
    .jr-roofing-jobber .jrrj-detail-grid,
    .jr-roofing-jobber .jrrj-bestfor-list {
        grid-template-columns:1fr;
    }

    .jr-roofing-jobber .jrrj-summary-row {
        flex-direction:column;
        gap:4px;
    }

    .jr-roofing-jobber .jrrj-summary-row strong {
        max-width:none;
        text-align:left;
    }

    .jr-roofing-jobber .jrrj-final h2 {
        font-size:25px;
    }
}
/* ================================================
   HOUSECALL PRO REVIEW — ROOFING
   .hr-roofing-hcp / .hrrh-*
   ================================================ */

.hr-roofing-hcp {
    --hrrh-purple:#8069d9;
    --hrrh-purple-dark:#6650bc;
    --hrrh-lavender:#f3f0fb;
    --hrrh-soft:#faf9fd;
    --hrrh-border:#e3dcf4;

    --hrrh-text:#1d1930;
    --hrrh-muted:#5c566b;
    --hrrh-light:#817a90;

    width:100%;
    background:#fff;
    color:var(--hrrh-text);

    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    line-height:1.65;
}

.hr-roofing-hcp *,
.hr-roofing-hcp *::before,
.hr-roofing-hcp *::after {
    box-sizing:border-box;
}

.hr-roofing-hcp .hrrh-container {
    width:100%;
    max-width:1120px;
    margin:0 auto;
    padding:0 24px;
}

.hr-roofing-hcp .hrrh-section {
    padding:68px 0;
}

.hr-roofing-hcp .hrrh-soft {
    background:var(--hrrh-soft);
}

.hr-roofing-hcp .hrrh-section-title {
    margin:0 0 16px;
    font-size:29px;
    font-weight:750;
    line-height:1.25;
    letter-spacing:-.025em;
}

.hr-roofing-hcp .hrrh-label {
    margin:0 0 8px;
    color:var(--hrrh-purple);
    font-size:11px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.09em;
}


/* HERO */

.hr-roofing-hcp .hrrh-hero {
    position:relative;
    padding:78px 0;

    background:linear-gradient(
        180deg,
        #f5f2fc 0%,
        #fff 94%
    );

    border-bottom:1px solid var(--hrrh-border);
}

.hr-roofing-hcp .hrrh-hero-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) 460px;
    gap:64px;
    align-items:center;
}

.hr-roofing-hcp .hrrh-hero-copy {
    max-width:600px;
}

.hr-roofing-hcp .hrrh-eyebrow {
    margin:0 0 16px;
    color:var(--hrrh-purple);
    font-size:12px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.1em;
}

.hr-roofing-hcp .hrrh-title {
    margin:0 0 22px;
    font-size:clamp(39px,4vw,52px);
    font-weight:780;
    line-height:1.1;
    letter-spacing:-.035em;
}

.hr-roofing-hcp .hrrh-title span {
    color:#8b78d8;
}

.hr-roofing-hcp .hrrh-intro {
    max-width:610px;
    margin:0;
    color:var(--hrrh-muted);
    font-size:17px;
    line-height:1.72;
}

.hr-roofing-hcp .hrrh-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}


/* BUTTONS */

.hr-roofing-hcp .hrrh-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:150px;
    height:52px;

    padding:0 20px 5px;

    border-radius:9px;

    font-size:14px;
    font-weight:700;
    line-height:1;

    text-align:center;
    text-decoration:none;
}

.hr-roofing-hcp .hrrh-btn-primary {
    background:var(--hrrh-purple);
    color:#fff;
}

.hr-roofing-hcp .hrrh-btn-secondary {
    min-width:210px;
    background:#fff;
    border:1px solid var(--hrrh-border);
    color:var(--hrrh-purple-dark);
}


/* SUMMARY */

.hr-roofing-hcp .hrrh-summary {
    width:100%;
    max-width:460px;
    padding:24px;

    background:#fff;

    border:1px solid var(--hrrh-border);
    border-radius:18px;

    box-shadow:0 20px 50px rgba(54,38,105,.09);
}

.hr-roofing-hcp .hrrh-summary-head {
    display:flex;
    justify-content:space-between;
    gap:20px;

    padding-bottom:16px;
    margin-bottom:4px;

    border-bottom:1px solid var(--hrrh-border);
}

.hr-roofing-hcp .hrrh-summary-head span {
    color:var(--hrrh-purple);
    font-size:10px;
    font-weight:750;
    text-transform:uppercase;
}

.hr-roofing-hcp .hrrh-summary-head strong {
    font-size:12px;
}

.hr-roofing-hcp .hrrh-summary-row {
    display:flex;
    justify-content:space-between;
    gap:20px;

    padding:15px 0;

    border-bottom:1px solid var(--hrrh-border);
}

.hr-roofing-hcp .hrrh-summary-row span {
    color:var(--hrrh-light);
    font-size:13px;
}

.hr-roofing-hcp .hrrh-summary-row strong {
    max-width:250px;
    text-align:right;
    font-size:13px;
}

.hr-roofing-hcp .hrrh-editorial-note {
    margin:15px 0 0;
    color:var(--hrrh-light);
    font-size:11px;
    line-height:1.55;
}


/* VERDICT */

.hr-roofing-hcp .hrrh-verdict {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:32px;
    align-items:center;

    padding:30px;

    background:var(--hrrh-lavender);

    border:1px solid var(--hrrh-border);
    border-radius:15px;
}

.hr-roofing-hcp .hrrh-verdict h2 {
    margin:0 0 10px;
    font-size:25px;
    font-weight:740;
    line-height:1.3;
}

.hr-roofing-hcp .hrrh-verdict p:not(.hrrh-label) {
    margin:0 0 10px;
    color:var(--hrrh-muted);
    font-size:15px;
}

.hr-roofing-hcp .hrrh-score {
    display:flex;
    align-items:center;
    justify-content:center;

    width:74px;
    height:74px;

    background:#fff;

    border:1px solid var(--hrrh-border);
    border-radius:50%;

    color:var(--hrrh-purple-dark);
    font-size:22px;
    font-weight:780;
}


/* PROS CONS */

.hr-roofing-hcp .hrrh-pros-cons {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
}

.hr-roofing-hcp .hrrh-pros,
.hr-roofing-hcp .hrrh-cons {
    padding:26px;
    background:#fff;
    border:1px solid var(--hrrh-border);
    border-radius:14px;
}

.hr-roofing-hcp .hrrh-list-head {
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
}

.hr-roofing-hcp .hrrh-list-head span {
    display:flex;
    align-items:center;
    justify-content:center;

    width:30px;
    height:30px;

    background:var(--hrrh-lavender);
    border-radius:50%;

    color:var(--hrrh-purple-dark);
    font-weight:800;
}

.hr-roofing-hcp .hrrh-list-head h3 {
    margin:0;
    font-size:19px;
}

.hr-roofing-hcp .hrrh-pros ul,
.hr-roofing-hcp .hrrh-cons ul {
    list-style:none;
    margin:0;
    padding:0;
}

.hr-roofing-hcp .hrrh-pros li,
.hr-roofing-hcp .hrrh-cons li {
    position:relative;
    padding:9px 0 9px 20px;
    color:var(--hrrh-muted);
    font-size:14.5px;
    border-bottom:1px solid #eee9f6;
}

.hr-roofing-hcp .hrrh-pros li::before {
    content:"✓";
    position:absolute;
    left:0;
    color:var(--hrrh-purple);
    font-weight:800;
}

.hr-roofing-hcp .hrrh-cons li::before {
    content:"×";
    position:absolute;
    left:0;
    color:#827a91;
    font-weight:800;
}


/* FEATURES */

.hr-roofing-hcp .hrrh-feature-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
}

.hr-roofing-hcp .hrrh-feature-card {
    padding:24px 22px;
    background:#fff;
    border:1px solid var(--hrrh-border);
    border-radius:13px;
}

.hr-roofing-hcp .hrrh-feature-card > span {
    display:inline-block;
    margin-bottom:15px;
    padding:5px 9px;

    background:var(--hrrh-lavender);
    border-radius:999px;

    color:var(--hrrh-purple-dark);
    font-size:10px;
    font-weight:750;
}

.hr-roofing-hcp .hrrh-feature-card h3 {
    margin:0 0 9px;
    font-size:17px;
}

.hr-roofing-hcp .hrrh-feature-card p {
    margin:0;
    color:var(--hrrh-muted);
    font-size:14px;
}


/* DETAILS */

.hr-roofing-hcp .hrrh-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:26px;
}

.hr-roofing-hcp .hrrh-detail-card {
    padding:24px;
    background:#fff;
    border:1px solid var(--hrrh-border);
    border-radius:13px;
}

.hr-roofing-hcp .hrrh-detail-card h3 {
    margin:0 0 8px;
    font-size:17px;
}

.hr-roofing-hcp .hrrh-detail-card p {
    margin:0;
    color:var(--hrrh-muted);
    font-size:14.5px;
}


/* LIMIT */

.hr-roofing-hcp .hrrh-limit-box {
    padding:30px;
    background:var(--hrrh-lavender);
    border:1px solid var(--hrrh-border);
    border-radius:15px;
}

.hr-roofing-hcp .hrrh-limit-box p:not(.hrrh-label) {
    margin:0;
    max-width:850px;
    color:var(--hrrh-muted);
    font-size:15px;
}


/* PRICING */

.hr-roofing-hcp .hrrh-pricing-box {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:30px;
    align-items:center;

    padding:30px;
    background:#fff;

    border:1px solid var(--hrrh-border);
    border-radius:15px;
}

.hr-roofing-hcp .hrrh-pricing-box p:not(.hrrh-label) {
    margin:0;
    color:var(--hrrh-muted);
    font-size:15px;
}


/* BEST FOR */

.hr-roofing-hcp .hrrh-bestfor {
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:40px;
}

.hr-roofing-hcp .hrrh-bestfor p:not(.hrrh-label) {
    color:var(--hrrh-muted);
    font-size:15px;
}

.hr-roofing-hcp .hrrh-bestfor-list {
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    align-content:start;
}

.hr-roofing-hcp .hrrh-bestfor-list span {
    display:block;
    width:100%;

    position:relative;

    padding:13px 16px 13px 38px;

    background:var(--hrrh-soft);

    border:1px solid var(--hrrh-border);
    border-radius:9px;

    font-size:13.5px;
    line-height:1.4;
}

.hr-roofing-hcp .hrrh-bestfor-list span::before {
    content:"✓";
    position:absolute;
    left:13px;
    color:var(--hrrh-purple);
    font-weight:800;
}


/* FINAL */

.hr-roofing-hcp .hrrh-final {
    padding:72px 0;

    background:linear-gradient(
        135deg,
        #8b78d8,
        #6d57c2
    );
}

.hr-roofing-hcp .hrrh-final-inner {
    max-width:760px;
    text-align:center;
}

.hr-roofing-hcp .hrrh-final-label {
    margin:0 0 10px;
    color:#e8e2ff;
    font-size:11px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.hr-roofing-hcp .hrrh-final h2 {
    margin:0 0 15px;
    color:#fff;
    font-size:30px;
    line-height:1.3;
}

.hr-roofing-hcp .hrrh-final p:not(.hrrh-final-label) {
    color:rgba(255,255,255,.88);
    font-size:15.5px;
}

.hr-roofing-hcp .hrrh-final-actions {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:17px;
    margin-top:27px;
}

.hr-roofing-hcp .hrrh-final-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    height:46px;

    padding:0 17px 4px;

    background:#fff;
    border-radius:9px;

    color:var(--hrrh-purple-dark);

    font-size:14px;
    font-weight:700;

    text-decoration:none;
}

.hr-roofing-hcp .hrrh-final-link {
    color:#fff;
    font-size:14px;
    font-weight:650;
    text-decoration:underline;
    text-underline-offset:4px;
}


/* FORCE SUMMARY CARD RIGHT — DESKTOP */

@media (min-width:961px) {

    .hr-roofing-hcp .hrrh-hero {
        position:relative;
    }

    .hr-roofing-hcp .hrrh-hero-copy {
        max-width:600px;
    }

    .hr-roofing-hcp .hrrh-summary {
        position:absolute !important;

        width:460px !important;
        max-width:460px !important;

        top:50% !important;

        right:max(
            24px,
            calc((100vw - 1120px) / 2)
        ) !important;

        margin:0 !important;

        transform:translateY(-50%) !important;
    }
}


/* TABLET */

@media (max-width:960px) {

    .hr-roofing-hcp .hrrh-hero-grid {
        grid-template-columns:1fr;
        gap:40px;
    }

    .hr-roofing-hcp .hrrh-summary {
        position:static !important;

        width:100% !important;
        max-width:560px !important;

        transform:none !important;
    }

    .hr-roofing-hcp .hrrh-feature-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .hr-roofing-hcp .hrrh-bestfor {
        grid-template-columns:1fr;
    }
}


/* MOBILE */

@media (max-width:640px) {

    .hr-roofing-hcp .hrrh-container {
        padding:0 18px;
    }

    .hr-roofing-hcp .hrrh-hero {
        padding:54px 0;
    }

    .hr-roofing-hcp .hrrh-section {
        padding:48px 0;
    }

    .hr-roofing-hcp .hrrh-title {
        font-size:32px;
    }

    .hr-roofing-hcp .hrrh-intro {
        font-size:15.5px;
    }

    .hr-roofing-hcp .hrrh-actions {
        flex-direction:column;
    }

    .hr-roofing-hcp .hrrh-btn {
        width:100%;
    }

    .hr-roofing-hcp .hrrh-verdict,
    .hr-roofing-hcp .hrrh-pricing-box {
        grid-template-columns:1fr;
    }

    .hr-roofing-hcp .hrrh-pros-cons,
    .hr-roofing-hcp .hrrh-feature-grid,
    .hr-roofing-hcp .hrrh-detail-grid {
        grid-template-columns:1fr;
    }

    .hr-roofing-hcp .hrrh-summary-row {
        flex-direction:column;
        gap:4px;
    }

    .hr-roofing-hcp .hrrh-summary-row strong {
        max-width:none;
        text-align:left;
    }

    .hr-roofing-hcp .hrrh-final h2 {
        font-size:25px;
    }
}
/* ==========================================
   WORKIZ REVIEW — ROOFING
   .wr-roofing-workiz / .wrrw-*
   ========================================== */

.wr-roofing-workiz {
    --wrrw-purple:#8069d9;
    --wrrw-purple-dark:#6650bc;
    --wrrw-lavender:#f3f0fb;
    --wrrw-soft:#faf9fd;
    --wrrw-border:#e3dcf4;
    --wrrw-text:#1d1930;
    --wrrw-muted:#5c566b;
    --wrrw-light:#817a90;

    width:100%;
    background:#fff;
    color:var(--wrrw-text);

    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    line-height:1.65;
}

.wr-roofing-workiz *,
.wr-roofing-workiz *::before,
.wr-roofing-workiz *::after {
    box-sizing:border-box;
}

.wr-roofing-workiz .wrrw-container {
    width:100%;
    max-width:1120px;
    margin:0 auto;
    padding:0 24px;
}

.wr-roofing-workiz .wrrw-section {
    padding:68px 0;
}

.wr-roofing-workiz .wrrw-soft {
    background:var(--wrrw-soft);
}

.wr-roofing-workiz .wrrw-section-title {
    margin:0 0 16px;
    font-size:29px;
    font-weight:750;
    line-height:1.25;
    letter-spacing:-.025em;
}

.wr-roofing-workiz .wrrw-label {
    margin:0 0 8px;
    color:var(--wrrw-purple);
    font-size:11px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.09em;
}


/* HERO */

.wr-roofing-workiz .wrrw-hero {
    position:relative;
    padding:78px 0;

    background:linear-gradient(
        180deg,
        #f5f2fc 0%,
        #fff 94%
    );

    border-bottom:1px solid var(--wrrw-border);
}

.wr-roofing-workiz .wrrw-hero-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) 460px;
    gap:64px;
    align-items:center;
}

.wr-roofing-workiz .wrrw-hero-copy {
    max-width:600px;
}

.wr-roofing-workiz .wrrw-eyebrow {
    margin:0 0 16px;
    color:var(--wrrw-purple);
    font-size:12px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.1em;
}

.wr-roofing-workiz .wrrw-title {
    margin:0 0 22px;
    font-size:clamp(39px,4vw,52px);
    font-weight:780;
    line-height:1.1;
    letter-spacing:-.035em;
}

.wr-roofing-workiz .wrrw-title span {
    color:#8b78d8;
}

.wr-roofing-workiz .wrrw-intro {
    max-width:610px;
    margin:0;
    color:var(--wrrw-muted);
    font-size:17px;
    line-height:1.72;
}

.wr-roofing-workiz .wrrw-actions {
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}


/* BUTTONS */

.wr-roofing-workiz .wrrw-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:135px;
    height:52px;

    padding:0 20px 5px;

    border-radius:9px;

    font-size:14px;
    font-weight:700;
    line-height:1;

    text-align:center;
    text-decoration:none;
}

.wr-roofing-workiz .wrrw-btn-primary {
    background:var(--wrrw-purple);
    color:#fff;
}

.wr-roofing-workiz .wrrw-btn-secondary {
    min-width:176px;
    background:#fff;
    border:1px solid var(--wrrw-border);
    color:var(--wrrw-purple-dark);
}


/* SUMMARY */

.wr-roofing-workiz .wrrw-summary {
    width:100%;
    max-width:460px;
    padding:24px;

    background:#fff;

    border:1px solid var(--wrrw-border);
    border-radius:18px;

    box-shadow:0 20px 50px rgba(54,38,105,.09);
}

.wr-roofing-workiz .wrrw-summary-head {
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding-bottom:16px;
    margin-bottom:4px;
    border-bottom:1px solid var(--wrrw-border);
}

.wr-roofing-workiz .wrrw-summary-head span {
    color:var(--wrrw-purple);
    font-size:10px;
    font-weight:750;
    text-transform:uppercase;
}

.wr-roofing-workiz .wrrw-summary-head strong {
    font-size:12px;
}

.wr-roofing-workiz .wrrw-summary-row {
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:15px 0;
    border-bottom:1px solid var(--wrrw-border);
}

.wr-roofing-workiz .wrrw-summary-row span {
    color:var(--wrrw-light);
    font-size:13px;
}

.wr-roofing-workiz .wrrw-summary-row strong {
    max-width:250px;
    text-align:right;
    font-size:13px;
}

.wr-roofing-workiz .wrrw-editorial-note {
    margin:15px 0 0;
    color:var(--wrrw-light);
    font-size:11px;
    line-height:1.55;
}


/* VERDICT */

.wr-roofing-workiz .wrrw-verdict {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:32px;
    align-items:center;
    padding:30px;

    background:var(--wrrw-lavender);

    border:1px solid var(--wrrw-border);
    border-radius:15px;
}

.wr-roofing-workiz .wrrw-verdict h2 {
    margin:0 0 10px;
    font-size:25px;
    font-weight:740;
    line-height:1.3;
}

.wr-roofing-workiz .wrrw-verdict p:not(.wrrw-label) {
    margin:0 0 10px;
    color:var(--wrrw-muted);
    font-size:15px;
}

.wr-roofing-workiz .wrrw-score {
    display:flex;
    align-items:center;
    justify-content:center;

    width:74px;
    height:74px;

    background:#fff;

    border:1px solid var(--wrrw-border);
    border-radius:50%;

    color:var(--wrrw-purple-dark);
    font-size:22px;
    font-weight:780;
}


/* PROS / CONS */

.wr-roofing-workiz .wrrw-pros-cons {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
}

.wr-roofing-workiz .wrrw-pros,
.wr-roofing-workiz .wrrw-cons {
    padding:26px;
    background:#fff;
    border:1px solid var(--wrrw-border);
    border-radius:14px;
}

.wr-roofing-workiz .wrrw-list-head {
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:17px;
}

.wr-roofing-workiz .wrrw-list-head span {
    display:flex;
    align-items:center;
    justify-content:center;

    width:30px;
    height:30px;

    background:var(--wrrw-lavender);
    border-radius:50%;

    color:var(--wrrw-purple-dark);
    font-weight:800;
}

.wr-roofing-workiz .wrrw-list-head h3 {
    margin:0;
    font-size:19px;
}

.wr-roofing-workiz .wrrw-pros ul,
.wr-roofing-workiz .wrrw-cons ul {
    list-style:none;
    margin:0;
    padding:0;
}

.wr-roofing-workiz .wrrw-pros li,
.wr-roofing-workiz .wrrw-cons li {
    position:relative;
    padding:9px 0 9px 20px;
    color:var(--wrrw-muted);
    font-size:14.5px;
    border-bottom:1px solid #eee9f6;
}

.wr-roofing-workiz .wrrw-pros li::before {
    content:"✓";
    position:absolute;
    left:0;
    color:var(--wrrw-purple);
    font-weight:800;
}

.wr-roofing-workiz .wrrw-cons li::before {
    content:"×";
    position:absolute;
    left:0;
    color:#827a91;
    font-weight:800;
}


/* FEATURES */

.wr-roofing-workiz .wrrw-feature-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin-top:26px;
}

.wr-roofing-workiz .wrrw-feature-card {
    padding:24px 22px;
    background:#fff;
    border:1px solid var(--wrrw-border);
    border-radius:13px;
}

.wr-roofing-workiz .wrrw-feature-card > span {
    display:inline-block;
    margin-bottom:15px;
    padding:5px 9px;

    background:var(--wrrw-lavender);
    border-radius:999px;

    color:var(--wrrw-purple-dark);
    font-size:10px;
    font-weight:750;
}

.wr-roofing-workiz .wrrw-feature-card h3 {
    margin:0 0 9px;
    font-size:17px;
}

.wr-roofing-workiz .wrrw-feature-card p {
    margin:0;
    color:var(--wrrw-muted);
    font-size:14px;
}


/* DETAILS */

.wr-roofing-workiz .wrrw-detail-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:26px;
}

.wr-roofing-workiz .wrrw-detail-card {
    padding:24px;
    background:#fff;
    border:1px solid var(--wrrw-border);
    border-radius:13px;
}

.wr-roofing-workiz .wrrw-detail-card h3 {
    margin:0 0 8px;
    font-size:17px;
}

.wr-roofing-workiz .wrrw-detail-card p {
    margin:0;
    color:var(--wrrw-muted);
    font-size:14.5px;
}


/* LIMIT */

.wr-roofing-workiz .wrrw-limit-box {
    padding:30px;
    background:var(--wrrw-lavender);
    border:1px solid var(--wrrw-border);
    border-radius:15px;
}

.wr-roofing-workiz .wrrw-limit-box p:not(.wrrw-label) {
    margin:0;
    max-width:850px;
    color:var(--wrrw-muted);
    font-size:15px;
}


/* PRICING */

.wr-roofing-workiz .wrrw-pricing-box {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:30px;
    align-items:center;

    padding:30px;

    background:#fff;

    border:1px solid var(--wrrw-border);
    border-radius:15px;
}

.wr-roofing-workiz .wrrw-pricing-box p:not(.wrrw-label) {
    margin:0;
    color:var(--wrrw-muted);
    font-size:15px;
}


/* BEST FOR — FIXED */

.wr-roofing-workiz .wrrw-bestfor {
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:40px;
}

.wr-roofing-workiz .wrrw-bestfor p:not(.wrrw-label) {
    color:var(--wrrw-muted);
    font-size:15px;
}

.wr-roofing-workiz .wrrw-bestfor-list {
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    align-content:start;
}

.wr-roofing-workiz .wrrw-bestfor-list span {
    display:block;
    width:100%;

    position:relative;

    padding:13px 16px 13px 38px;

    background:var(--wrrw-soft);

    border:1px solid var(--wrrw-border);
    border-radius:9px;

    font-size:13.5px;
    line-height:1.4;
}

.wr-roofing-workiz .wrrw-bestfor-list span::before {
    content:"✓";
    position:absolute;
    left:13px;
    color:var(--wrrw-purple);
    font-weight:800;
}


/* FINAL */

.wr-roofing-workiz .wrrw-final {
    padding:72px 0;

    background:linear-gradient(
        135deg,
        #8b78d8,
        #6d57c2
    );
}

.wr-roofing-workiz .wrrw-final-inner {
    max-width:760px;
    text-align:center;
}

.wr-roofing-workiz .wrrw-final-label {
    margin:0 0 10px;
    color:#e8e2ff;
    font-size:11px;
    font-weight:750;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.wr-roofing-workiz .wrrw-final h2 {
    margin:0 0 15px;
    color:#fff;
    font-size:30px;
    line-height:1.3;
}

.wr-roofing-workiz .wrrw-final p:not(.wrrw-final-label) {
    color:rgba(255,255,255,.88);
    font-size:15.5px;
}

.wr-roofing-workiz .wrrw-final-actions {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;
    gap:17px;
    margin-top:27px;
}

.wr-roofing-workiz .wrrw-final-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    height:46px;

    padding:0 17px 4px;

    background:#fff;
    border-radius:9px;

    color:var(--wrrw-purple-dark);

    font-size:14px;
    font-weight:700;

    text-decoration:none;
}

.wr-roofing-workiz .wrrw-final-link {
    color:#fff;
    font-size:14px;
    font-weight:650;
    text-decoration:underline;
    text-underline-offset:4px;
}


/* FORCE SUMMARY CARD RIGHT — DESKTOP */

@media (min-width:961px) {

    .wr-roofing-workiz .wrrw-hero {
        position:relative;
    }

    .wr-roofing-workiz .wrrw-hero-copy {
        max-width:600px;
    }

    .wr-roofing-workiz .wrrw-summary {
        position:absolute !important;

        width:460px !important;
        max-width:460px !important;

        top:50% !important;

        right:max(
            24px,
            calc((100vw - 1120px) / 2)
        ) !important;

        margin:0 !important;

        transform:translateY(-50%) !important;
    }
}


/* TABLET */

@media (max-width:960px) {

    .wr-roofing-workiz .wrrw-hero-grid {
        grid-template-columns:1fr;
        gap:40px;
    }

    .wr-roofing-workiz .wrrw-summary {
        position:static !important;
        width:100% !important;
        max-width:560px !important;
        transform:none !important;
    }

    .wr-roofing-workiz .wrrw-feature-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .wr-roofing-workiz .wrrw-bestfor {
        grid-template-columns:1fr;
    }
}


/* MOBILE */

@media (max-width:640px) {

    .wr-roofing-workiz .wrrw-container {
        padding:0 18px;
    }

    .wr-roofing-workiz .wrrw-hero {
        padding:54px 0;
    }

    .wr-roofing-workiz .wrrw-section {
        padding:48px 0;
    }

    .wr-roofing-workiz .wrrw-title {
        font-size:32px;
    }

    .wr-roofing-workiz .wrrw-intro {
        font-size:15.5px;
    }

    .wr-roofing-workiz .wrrw-actions {
        flex-direction:column;
    }

    .wr-roofing-workiz .wrrw-btn {
        width:100%;
    }

    .wr-roofing-workiz .wrrw-verdict,
    .wr-roofing-workiz .wrrw-pricing-box {
        grid-template-columns:1fr;
    }

    .wr-roofing-workiz .wrrw-pros-cons,
    .wr-roofing-workiz .wrrw-feature-grid,
    .wr-roofing-workiz .wrrw-detail-grid {
        grid-template-columns:1fr;
    }

    .wr-roofing-workiz .wrrw-summary-row {
        flex-direction:column;
        gap:4px;
    }

    .wr-roofing-workiz .wrrw-summary-row strong {
        max-width:none;
        text-align:left;
    }

    .wr-roofing-workiz .wrrw-final h2 {
        font-size:25px;
    }
}
