/* Shared kit landing page styles */

        .kit-page {
          background: #ffffff;
          color: #0f172a;
          padding-bottom: 72px;
        }

        .kit-hero {
          position: relative;
          background: #0b1836;
          overflow: hidden;
          padding-top: 100px;
          padding-bottom: 48px;
        }
        .kit-hero-glow {
          position: absolute;
          inset: auto -20% -40% 20%;
          height: 70%;
          background: radial-gradient(
            ellipse at center,
            rgba(47, 191, 113, 0.18),
            transparent 65%
          );
          pointer-events: none;
        }
        .kit-hero-copy {
          position: relative;
          z-index: 1;
        }
        .kit-kicker {
          margin: 0 0 12px;
          font-size: 11px;
          font-weight: 800;
          letter-spacing: 0.14em;
          text-transform: uppercase;
          color: #2fbf71;
        }
        .kit-kicker-on-dark {
          color: #2fbf71;
        }
        .kit-h1 {
          font-family: "Playfair Display", Georgia, serif;
          font-weight: 700;
          font-size: clamp(2.05rem, 5.5vw, 3.35rem);
          line-height: 1.1;
          letter-spacing: -0.02em;
          color: #ffffff;
          margin: 0 0 18px;
        }
        .kit-h1-em {
          display: inline;
          color: #c8f5d8;
        }
        .kit-sub {
          color: #d5deec;
          font-size: clamp(1.02rem, 2.2vw, 1.18rem);
          line-height: 1.65;
          max-width: 34em;
          margin: 0 0 22px;
        }
        .kit-price-row {
          display: flex;
          flex-wrap: wrap;
          align-items: baseline;
          gap: 10px 16px;
          margin-bottom: 18px;
        }
        .kit-price {
          font-family: "Playfair Display", Georgia, serif;
          font-size: 2.4rem;
          font-weight: 700;
          color: #ffffff;
          line-height: 1;
        }
        .kit-price-meta {
          color: #94a3b8;
          font-size: 0.92rem;
        }
        .kit-guarantee-line {
          margin: 12px 0 0;
          color: #9fb0c9;
          font-size: 0.9rem;
        }
        .kit-trust {
          display: flex;
          flex-wrap: wrap;
          gap: 8px;
          list-style: none;
          padding: 0;
          margin: 22px 0 0;
        }
        .kit-trust li {
          background: rgba(255, 255, 255, 0.06);
          border: 1px solid rgba(255, 255, 255, 0.12);
          color: #e2e8f0;
          font-size: 12px;
          font-weight: 600;
          letter-spacing: 0.02em;
          padding: 8px 12px;
          border-radius: 999px;
        }
        .kit-free-link {
          margin: 18px 0 0;
          color: #9fb0c9;
          font-size: 0.92rem;
        }
        .kit-free-link a {
          color: #2fbf71;
          text-decoration: underline;
          text-underline-offset: 3px;
        }

        .kit-free {
          background: #f8fafc;
          border-top: 1px solid #e2e8f0;
          border-bottom: 1px solid #e2e8f0;
        }
        .kit-free-panel {
          display: grid;
          gap: 28px;
          align-items: center;
          background: #ffffff;
          border: 1px solid #e2e8f0;
          border-radius: 16px;
          padding: clamp(22px, 4vw, 36px);
          box-shadow: 0 12px 36px rgba(15, 23, 42, 0.05);
        }
        .kit-free-copy .kit-h2 {
          margin-bottom: 12px;
        }
        .kit-free-copy .kit-body {
          margin-bottom: 14px;
        }
        .kit-free-points {
          margin: 0 0 20px;
          padding-left: 1.25em;
          color: #334155;
          line-height: 1.55;
          list-style: disc;
        }
        .kit-free-points li {
          margin-bottom: 8px;
          list-style: disc;
          display: list-item;
        }
        .kit-free-points li::marker {
          color: #2fbf71;
        }
        .kit-free-form {
          max-width: 400px;
        }
        .kit-free-form .newsletter-input {
          width: 100%;
          border: 1px solid #cbd5e1;
          border-radius: 8px;
          padding: 12px 14px;
          font-size: 15px;
          background: #ffffff;
          color: #0f172a;
        }
        .kit-free-form .px-btn {
          width: 100%;
          box-shadow: none;
        }
        .kit-free-visual {
          display: flex;
          justify-content: center;
          align-items: center;
        }
        .kit-free-preview {
          position: relative;
          width: min(100%, 300px);
          transform: rotate(-1.5deg);
          border: 1px solid #e2e8f0;
          border-radius: 8px;
          overflow: hidden;
          box-shadow: 0 20px 44px rgba(15, 23, 42, 0.16);
          background: #0b1836;
        }
        .kit-free-preview-blur {
          position: relative;
          z-index: 1;
          /* Light enough that the card grid outline still reads */
          filter: blur(2.4px);
          transform: scale(1.04);
          transform-origin: top center;
        }
        .kit-free-preview-sharp {
          position: absolute;
          left: 0;
          right: 0;
          top: 0;
          z-index: 2;
          /* Header + first-row titles only; hide FIX/PROOF under them */
          height: 20.5%;
          overflow: hidden;
          -webkit-mask-image: linear-gradient(
            to bottom,
            #000 0%,
            #000 92%,
            transparent 100%
          );
          mask-image: linear-gradient(
            to bottom,
            #000 0%,
            #000 92%,
            transparent 100%
          );
        }
        .kit-free-preview::after {
          content: "";
          position: absolute;
          left: 0;
          right: 0;
          top: 19%;
          bottom: 0;
          z-index: 3;
          pointer-events: none;
          /* Soft veil: body text unreadable, panel outlines still visible */
          background: linear-gradient(
            to bottom,
            rgba(11, 24, 54, 0.2) 0%,
            rgba(11, 24, 54, 0.45) 18%,
            rgba(11, 24, 54, 0.58) 55%,
            rgba(11, 24, 54, 0.62) 100%
          );
        }
        .kit-free-preview-blur img,
        .kit-free-preview-sharp img {
          width: 100%;
          height: auto;
          display: block;
        }

        .kit-btn {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          font-weight: 700;
          font-size: 15px;
          line-height: 1.2;
          text-decoration: none;
          border-radius: 8px;
          padding: 14px 22px;
          transition: transform 0.15s ease, box-shadow 0.15s ease;
        }
        .kit-btn:hover {
          transform: translateY(-1px);
          text-decoration: none;
        }
        .kit-btn-primary {
          background: #ffffff;
          color: #0b1836;
          box-shadow: 0 10px 28px rgba(0, 0, 0, 0.25);
        }
        .kit-btn-green {
          background: #2fbf71;
          color: #042312;
          box-shadow: 0 10px 28px rgba(47, 191, 113, 0.28);
        }
        .kit-btn-lg {
          padding: 16px 28px;
          font-size: 16px;
        }

        .kit-fan {
          position: relative;
          height: 340px;
          margin: 36px auto 0;
          max-width: 420px;
        }
        .kit-fan::after {
          content: "";
          position: absolute;
          left: 8%;
          right: 8%;
          bottom: 0;
          height: 58%;
          z-index: 5;
          pointer-events: none;
          background: linear-gradient(
            to bottom,
            rgba(11, 24, 54, 0) 0%,
            rgba(11, 24, 54, 0.55) 35%,
            rgba(11, 24, 54, 0.92) 100%
          );
        }
        .kit-fan-card {
          position: absolute;
          left: 50%;
          top: 0;
          width: 58%;
          margin-left: -29%;
          border-radius: 6px;
          overflow: hidden;
          border: 1px solid rgba(255, 255, 255, 0.18);
          box-shadow: 0 22px 50px rgba(0, 0, 0, 0.45);
          background: #fff;
          transition: transform 0.35s ease;
          max-height: 72%;
        }
        .kit-fan-card img {
          width: 100%;
          height: auto;
          display: block;
          filter: blur(0.4px);
          transform: scale(1.02);
        }
        .kit-fan-caption {
          text-align: center;
          color: #94a3b8;
          font-size: 13px;
          margin: 14px 0 0;
        }

        .kit-band {
          padding: clamp(40px, 7vw, 72px) 0;
        }
        .kit-band-dark {
          background: #071126;
        }
        .kit-band-soft {
          background: linear-gradient(180deg, #f0fdf4 0%, #ffffff 100%);
          border-top: 1px solid #dcfce7;
          border-bottom: 1px solid #dcfce7;
        }

        .kit-section {
          padding: clamp(48px, 8vw, 88px) 0;
        }
        .kit-section-tint {
          background: #f8fafc;
        }
        .kit-section-navy {
          background: #0b1836;
        }
        .kit-section-head {
          margin-bottom: clamp(28px, 5vw, 40px);
        }
        .kit-h2 {
          font-family: "Playfair Display", Georgia, serif;
          font-weight: 700;
          font-size: clamp(1.65rem, 3.6vw, 2.35rem);
          line-height: 1.2;
          color: #0f172a;
          margin: 0 0 14px;
        }
        .kit-h2-on-dark {
          color: #ffffff;
        }
        .kit-lead {
          color: #475569;
          font-size: 1.05rem;
          line-height: 1.7;
          max-width: 40em;
          margin: 0 auto;
        }
        .kit-lead-on-dark {
          color: #c7d2e0;
        }
        .kit-body {
          color: #475569;
          font-size: 1.05rem;
          line-height: 1.75;
          margin: 0 0 14px;
          max-width: 36em;
        }
        .kit-pull {
          margin: 22px 0 0;
          padding: 16px 18px;
          border-left: 3px solid #2fbf71;
          background: #f0fdf4;
          color: #0f172a;
          font-family: "Playfair Display", Georgia, serif;
          font-size: 1.2rem;
          line-height: 1.45;
          font-weight: 600;
        }

        .kit-stakes {
          background: #0f172a;
          color: #e2e8f0;
          border-radius: 14px;
          padding: clamp(22px, 4vw, 28px);
          box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
        }
        .kit-stakes h3 {
          font-family: "Playfair Display", Georgia, serif;
          font-size: 1.35rem;
          margin: 0 0 14px;
          color: #ffffff;
        }
        .kit-stakes ul {
          margin: 0 0 16px;
          padding-left: 1.25em;
          list-style: disc;
        }
        .kit-stakes li {
          margin-bottom: 10px;
          line-height: 1.5;
          color: #cbd5e1;
          list-style: disc;
          display: list-item;
        }
        .kit-stakes li::marker {
          color: #2fbf71;
        }
        .kit-stakes p {
          margin: 0;
          color: #94a3b8;
          font-size: 0.95rem;
          line-height: 1.6;
        }

        .kit-outcome-grid {
          display: grid;
          gap: 14px;
        }
        .kit-outcome-card {
          position: relative;
          background: #ffffff;
          border: 1px solid #e2e8f0;
          border-radius: 14px;
          padding: 22px 20px 18px;
          overflow: hidden;
          box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04);
        }
        .kit-outcome-num {
          position: absolute;
          right: 12px;
          top: 8px;
          font-family: "Playfair Display", Georgia, serif;
          font-size: 42px;
          font-weight: 700;
          color: #eef2f7;
          line-height: 1;
          pointer-events: none;
        }
        .kit-outcome-card h3 {
          position: relative;
          font-family: "Playfair Display", Georgia, serif;
          font-size: 1.25rem;
          margin: 0 0 10px;
          color: #0f172a;
        }
        .kit-outcome-card p {
          position: relative;
          margin: 0;
          color: #475569;
          line-height: 1.6;
          font-size: 0.98rem;
        }

        .kit-jobs {
          display: grid;
          gap: 16px;
        }
        .kit-job {
          border: 1px solid #e2e8f0;
          border-radius: 14px;
          padding: 22px 22px 20px;
          background: #ffffff;
        }
        .kit-job-label {
          display: inline-block;
          font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
          font-size: 12px;
          font-weight: 700;
          color: #15803d;
          background: #f0fdf4;
          border: 1px solid #dcfce7;
          border-radius: 6px;
          padding: 4px 8px;
          margin-bottom: 12px;
        }
        .kit-job h3 {
          font-family: "Playfair Display", Georgia, serif;
          font-size: 1.3rem;
          margin: 0 0 8px;
        }
        .kit-job p {
          margin: 0;
          color: #475569;
          line-height: 1.65;
        }

        .kit-stack {
          list-style: none;
          margin: 0 0 28px;
          padding: 0;
          border: 1px solid rgba(255, 255, 255, 0.12);
          border-radius: 14px;
          overflow: hidden;
          background: rgba(255, 255, 255, 0.03);
        }
        .kit-stack li {
          display: flex;
          justify-content: space-between;
          gap: 16px;
          align-items: flex-start;
          padding: 16px 18px;
          border-bottom: 1px solid rgba(255, 255, 255, 0.08);
        }
        .kit-stack li:last-child {
          border-bottom: 0;
        }
        .kit-stack strong {
          display: block;
          color: #ffffff;
          font-size: 0.98rem;
          margin-bottom: 4px;
        }
        .kit-stack span {
          display: block;
          color: #94a3b8;
          font-size: 0.88rem;
          line-height: 1.45;
        }
        .kit-stack em {
          flex-shrink: 0;
          font-style: normal;
          font-size: 0.78rem;
          font-weight: 700;
          letter-spacing: 0.04em;
          text-transform: uppercase;
          color: #2fbf71;
          text-align: right;
          max-width: 9.5em;
          line-height: 1.35;
        }

        .kit-offer {
          display: flex;
          flex-direction: column;
          gap: 16px;
          align-items: stretch;
          background: rgba(255, 255, 255, 0.06);
          border: 1px solid rgba(47, 191, 113, 0.35);
          border-radius: 16px;
          padding: 22px;
        }
        .kit-offer-eyebrow {
          margin: 0;
          color: #2fbf71;
          font-size: 11px;
          font-weight: 800;
          letter-spacing: 0.14em;
          text-transform: uppercase;
        }
        .kit-offer-price {
          margin: 4px 0 6px;
          font-family: "Playfair Display", Georgia, serif;
          font-size: 3rem;
          font-weight: 700;
          color: #ffffff;
          line-height: 1;
        }
        .kit-offer-note {
          margin: 0;
          color: #cbd5e1;
          font-size: 0.95rem;
        }
        .kit-offer-guarantee {
          margin: 16px 0 0;
          text-align: center;
          color: #94a3b8;
          font-size: 0.9rem;
        }

        .kit-who-grid {
          display: grid;
          gap: 14px;
        }
        .kit-who-card {
          position: relative;
          background: #f8fafc;
          border: 1px solid #e2e8f0;
          border-radius: 12px;
          padding: 22px 20px 18px;
          overflow: hidden;
        }
        .kit-who-card h3 {
          font-family: "Playfair Display", Georgia, serif;
          font-size: 1.2rem;
          margin: 0 0 10px;
          color: #0f172a;
        }
        .kit-rule {
          display: block;
          width: 28px;
          height: 2px;
          background: #2fbf71;
          margin-bottom: 12px;
        }
        .kit-who-card p {
          margin: 0;
          color: #475569;
          line-height: 1.6;
        }
        .kit-not-for {
          margin: 28px auto 0;
          max-width: 40em;
          color: #64748b;
          font-size: 0.95rem;
          line-height: 1.6;
        }

        .kit-faq {
          border: 1px solid #e2e8f0;
          border-radius: 14px;
          overflow: hidden;
          background: #ffffff;
        }
        .kit-faq-item + .kit-faq-item {
          border-top: 1px solid #e2e8f0;
        }
        .kit-faq-q {
          width: 100%;
          display: flex;
          justify-content: space-between;
          gap: 16px;
          align-items: center;
          text-align: left;
          background: none;
          border: 0;
          padding: 18px 18px;
          font-family: "Playfair Display", Georgia, serif;
          font-size: 1.08rem;
          font-weight: 700;
          color: #0f172a;
          cursor: pointer;
        }
        .kit-faq-icon {
          color: #2fbf71;
          font-size: 1.4rem;
          line-height: 1;
        }
        .kit-faq-a {
          margin: 0;
          padding: 0 18px 18px;
          color: #475569;
          line-height: 1.7;
        }

        .kit-final {
          background: #071126;
          padding: clamp(56px, 9vw, 96px) 0;
        }
        .kit-final-meta {
          margin: 16px 0 0;
          color: #94a3b8;
          font-size: 0.9rem;
        }

        .kit-sticky {
          display: none;
        }

        @media (min-width: 768px) {
          .kit-outcome-grid {
            grid-template-columns: 1fr 1fr;
          }
          .kit-jobs {
            grid-template-columns: repeat(3, 1fr);
          }
          .kit-who-grid {
            grid-template-columns: 1fr 1fr;
          }
          .kit-offer {
            flex-direction: row;
            align-items: center;
            justify-content: space-between;
          }
          .kit-fan {
            height: 420px;
            margin-top: 0;
          }
          .kit-free-panel:has(.kit-free-visual) {
            grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.95fr);
            gap: clamp(8px, 1.5vw, 20px);
            padding: clamp(28px, 4vw, 40px) clamp(24px, 3.5vw, 40px);
            align-items: center;
            overflow: visible;
          }
          .kit-free-visual {
            justify-content: center;
            justify-self: center;
            margin-left: -56px;
            margin-right: 12px;
          }
          .kit-free-preview {
            width: min(100%, 300px);
            max-height: 440px;
          }
          .kit-free-preview-blur {
            max-height: 440px;
            overflow: hidden;
          }
        }

        @media (min-width: 992px) {
          .kit-hero {
            padding-top: clamp(72px, 8vw, 100px);
            padding-bottom: clamp(56px, 8vw, 88px);
            min-height: min(92vh, 820px);
            display: flex;
            align-items: center;
          }
        }

        @media (max-width: 767px) {
          .kit-sticky {
            display: block;
            position: fixed;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 40;
            padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
            background: rgba(7, 17, 38, 0.96);
            border-top: 1px solid rgba(255, 255, 255, 0.08);
            backdrop-filter: blur(8px);
          }
          .kit-sticky-inner {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            max-width: 560px;
            margin: 0 auto;
          }
          .kit-sticky-inner strong {
            display: block;
            color: #ffffff;
            font-size: 13px;
          }
          .kit-sticky-inner span {
            color: #94a3b8;
            font-size: 12px;
          }
          .kit-sticky .kit-btn {
            padding: 12px 18px;
            flex-shrink: 0;
          }
          .kit-stack li {
            flex-direction: column;
            align-items: flex-start;
          }
          .kit-stack em {
            text-align: left;
            max-width: none;
          }
        }
      
/* Guide / resource page extensions (fractional-cto, etc.) */
.kit-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  gap: clamp(16px, 3vw, 22px);
  grid-template-columns: minmax(0, 1fr);
  grid-template-areas:
    "kicker"
    "title"
    "sub"
    "visual"
    "actions";
}

.kit-hero-kicker {
  grid-area: kicker;
  margin: 0;
}

.kit-hero-title {
  grid-area: title;
}

.kit-hero-sub {
  grid-area: sub;
}

.kit-hero-actions {
  grid-area: actions;
}

.kit-hero-visual-col {
  grid-area: visual;
  display: flex;
  justify-content: center;
  margin: 4px 0 8px;
}

.kit-hero-visual {
  width: min(100%, 440px);
}

.kit-hero-chart {
  position: relative;
  width: 100%;
  margin: 0;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 22px 50px rgba(0, 0, 0, 0.45);
  background: #ffffff;
  padding: clamp(8px, 1.5vw, 12px);
}

.kit-body--wide {
  max-width: none;
}

.kit-tldr-panel {
  display: block;
  padding: clamp(28px, 4vw, 40px);
}

.kit-tldr-head .kit-kicker {
  margin: 0 0 8px;
}

.kit-tldr-head .kit-h2 {
  margin: 0 0 16px;
}

.kit-tldr-panel .kit-body--wide {
  margin: 0;
  font-size: 1.08rem;
  line-height: 1.72;
  color: #334155;
}

.kit-tldr-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  list-style: none;
  margin: 26px 0 0;
  padding: 24px 0 0;
  border-top: 1px solid #e2e8f0;
}

.kit-tldr-strip li {
  display: grid;
  gap: 6px;
  align-content: start;
  min-height: 5.5rem;
  padding: 16px 18px;
  border-radius: 12px;
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
  border: 1px solid #e2e8f0;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}

.kit-tldr-strip li::before {
  content: "";
  display: block;
  width: 28px;
  height: 3px;
  border-radius: 999px;
  background: #2fbf71;
  margin-bottom: 2px;
}

.kit-tldr-strip strong {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.15rem, 2.4vw, 1.4rem);
  font-weight: 700;
  color: #0f172a;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.kit-tldr-strip span {
  color: #64748b;
  font-size: 0.84rem;
  line-height: 1.45;
}

.kit-tldr-nav {
  margin-top: 22px;
  padding-top: 22px;
  border-top: 1px solid #e2e8f0;
}

.kit-tldr-nav .kit-nav-pills {
  margin: 0;
}

.kit-nav-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0 0 18px;
}

.kit-nav-pills a {
  display: inline-block;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid #e2e8f0;
  background: #fff;
  color: #0f172a;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
}

.kit-nav-pills a:hover,
.kit-nav-pills a:focus-visible {
  border-color: #2fbf71;
  color: #047857;
}

.kit-outcome-stat {
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.5rem, 4vw, 2rem);
  font-weight: 700;
  color: #047857;
  margin: 0 0 6px;
  letter-spacing: -0.03em;
}

.kit-table-wrap {
  overflow-x: auto;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
}

.kit-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  font-size: 0.92rem;
}

.kit-table th,
.kit-table td {
  padding: 12px 14px;
  border-bottom: 1px solid #e2e8f0;
  text-align: left;
  vertical-align: top;
}

.kit-table thead th {
  background: #f8fafc;
  font-weight: 700;
}

.kit-table tbody th {
  font-weight: 600;
  background: rgba(0, 0, 0, 0.02);
  white-space: nowrap;
}

.kit-table td {
  color: #475569;
}

.kit-ref-list {
  list-style: none;
  margin: 0;
  padding: 0;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
}

.kit-ref-list li {
  padding: 16px 18px;
  border-bottom: 1px solid #e2e8f0;
}

.kit-ref-list li:last-child {
  border-bottom: 0;
}

.kit-ref-list a {
  color: #047857;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.kit-ref-list a:hover {
  color: #2fbf71;
}

.kit-ref-publisher {
  color: #64748b;
  font-size: 14px;
}

.kit-ref-note {
  margin: 6px 0 0;
  color: #475569;
  font-size: 0.92rem;
  line-height: 1.55;
}

.kit-guide-grid {
  display: grid;
  gap: 16px;
}

.kit-guide-card {
  display: flex;
  flex-direction: column;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  height: 100%;
}

.kit-guide-media {
  position: relative;
  height: 160px;
  background: #f8fafc;
}

.kit-guide-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex: 1;
}

.kit-guide-kicker {
  margin: 0 0 6px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #2fbf71;
}

.kit-guide-body h3 {
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.15rem;
  margin: 0 0 8px;
  color: #0f172a;
}

.kit-guide-body p {
  margin: 0 0 16px;
  flex: 1;
  color: #475569;
  font-size: 0.92rem;
  line-height: 1.55;
}

.kit-decision-step + .kit-decision-step {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.kit-decision-step p {
  margin: 0 0 6px;
  font-size: 0.92rem;
  color: #cbd5e1;
  line-height: 1.5;
}

.kit-decision-step p:last-child {
  margin-bottom: 0;
}

.kit-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.kit-btn-outline {
  background: transparent;
  color: #ffffff;
  border: 2px solid rgba(255, 255, 255, 0.35);
  box-shadow: none;
}

.kit-btn-outline:hover {
  border-color: #2fbf71;
  color: #c8f5d8;
}

@media (min-width: 768px) {
  .kit-guide-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .kit-tldr-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
  }
}

@media (min-width: 992px) {
  .kit-hero--split {
    overflow: visible;
    min-height: 0;
    padding-top: clamp(72px, 8vw, 100px);
    padding-bottom: clamp(56px, 8vw, 88px);
    display: block;
  }

  .kit-hero-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap: clamp(32px, 4vw, 56px);
    row-gap: 18px;
    align-items: start;
    grid-template-areas:
      "kicker visual"
      "title visual"
      "sub visual"
      "actions actions";
  }

  .kit-hero-actions {
    margin-top: 6px;
    padding-top: 8px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
  }

  .kit-hero-visual-col {
    justify-content: flex-end;
    align-self: center;
    margin: 0;
  }

  .kit-hero-visual {
    width: min(100%, 540px);
  }

  .kit-outcome-grid.kit-outcome-grid--3 {
    grid-template-columns: repeat(3, 1fr);
  }
}
