
/* ===========================================================================
   CAMPAIGN CONVERSION LAYER
   The campaign's promise is proof-led: every new section exposes a product
   mechanism, a visible price, or an explicit boundary instead of a vague claim.
=========================================================================== */
.hero-deck strong { color: var(--ink); }
.hero-contrast { font-weight: 650; color: var(--ink) !important; }
.hero-caveat,
.hero-trust {
  max-width: 34rem;
  font-size: 0.84rem !important;
  line-height: 1.5 !important;
}
.hero-caveat {
  margin-top: calc(var(--s-3) * -0.35) !important;
  padding-left: 0.82rem;
  border-left: 3px solid var(--gold);
  color: #5d6071 !important;
}
.hero-trust {
  margin-top: var(--s-3) !important;
  color: #526072 !important;
  font-weight: 650;
}

.proof-strip {
  position: relative;
  border-top: 1px solid rgba(23, 35, 73, 0.09);
  border-bottom: 1px solid rgba(23, 35, 73, 0.09);
  background: #fff;
}
.proof-strip .shell { padding-block: clamp(2.6rem, 5vw, 4rem); }
.proof-strip-heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--s-3); margin-bottom: var(--s-5); }
.proof-strip-heading .eyebrow { margin: 0; }
.proof-strip-heading h2 { margin: 0; max-width: 22ch; font-size: clamp(1.45rem, 2.4vw, 2rem); }
.proof-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border: 1px solid var(--line); border-radius: var(--frame-radius); overflow: hidden; }
.proof-grid article { position: relative; min-height: 12.4rem; padding: var(--s-5); background: linear-gradient(145deg, #fff, #f5f8ff); }
.proof-grid article + article { border-left: 1px solid var(--line); }
.proof-mark { display: block; margin-bottom: var(--s-4); color: var(--blue-strong); font-size: 0.72rem; font-weight: 850; letter-spacing: 0.12em; }
.proof-grid h3 { margin-bottom: var(--s-2); font-size: 1.08rem; }
.proof-grid p { margin: 0; font-size: 0.92rem; line-height: 1.55; }

.comparison-section { background: linear-gradient(180deg, #f5f8ff 0%, #fcfbff 100%); }
.comparison-table-wrap { overflow-x: auto; border: 1px solid rgba(23, 35, 73, 0.17); border-radius: var(--frame-radius); box-shadow: 0 16px 40px -30px rgba(23, 49, 112, 0.45); background: white; }
.comparison-table { width: 100%; min-width: 47rem; border-collapse: collapse; font-size: 0.9rem; line-height: 1.45; }
.comparison-table th, .comparison-table td { padding: 1rem; border-bottom: 1px solid rgba(23, 35, 73, 0.1); text-align: left; vertical-align: top; }
.comparison-table thead { background: #192957; color: white; }
.comparison-table thead th { color: white; font-size: 0.84rem; letter-spacing: 0.01em; }
.comparison-table thead th:nth-child(2) { background: #1c61ca; }
.comparison-table tbody tr:last-child > * { border-bottom: 0; }
.comparison-table tbody th { width: 18%; color: var(--ink); font-size: 0.82rem; }
.comparison-table tbody td:nth-child(2) { background: rgba(226, 237, 255, 0.42); color: var(--ink); }
.comparison-notes { display: grid; grid-template-columns: 1fr 1fr; gap: var(--s-4); margin-top: var(--s-4); }
.comparison-notes p { margin: 0; color: #5a647b; font-size: 0.82rem; line-height: 1.55; }

.control-room { color: #eaf0ff; background: #151c31; }
.control-room h2, .control-room h3, .control-room p { color: inherit; }
.control-room .eyebrow { color: #9fc5ff; }
.control-heading p:not(.eyebrow) { color: #c3cee6; }
.workflow-rail { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; margin: 0; padding: 1px; list-style: none; border-radius: var(--frame-radius); overflow: hidden; background: rgba(164, 190, 240, 0.25); }
.workflow-rail li { min-height: 13.5rem; padding: var(--s-5); background: linear-gradient(145deg, #1d2947, #18223a); }
.workflow-rail li > span { display: grid; width: 2rem; height: 2rem; place-items: center; margin-bottom: var(--s-5); border-radius: 50%; background: #ec6c35; color: #171a27; font-size: 0.7rem; font-weight: 900; }
.workflow-rail h3 { margin-bottom: var(--s-2); font-size: 1.1rem; }
.workflow-rail p { margin: 0; color: #c3cee6; font-size: 0.9rem; line-height: 1.55; }

.showcase-caveat {
  margin-top: calc(var(--s-3) * -0.3) !important;
  padding-left: 0.75rem;
  border-left: 3px solid var(--gold);
  color: #61697b !important;
  font-size: 0.86rem !important;
}

.campaign-faq { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-3); }
.campaign-faq details { padding: var(--s-4); border: 1px solid var(--line); border-radius: 0.85rem; background: rgba(255,255,255,0.76); }
.campaign-faq summary { cursor: pointer; color: var(--ink); font-weight: 800; }
.campaign-faq p { margin: var(--s-3) 0 0; font-size: 0.92rem; }
.not-right { margin-top: var(--s-5); padding: var(--s-5); border: 1px dashed rgba(23,35,73,0.28); border-radius: var(--frame-radius); background: rgba(255,255,255,0.55); }
.not-right h3 { margin-bottom: var(--s-2); }
.not-right p { margin: 0; }

@media (max-width: 56rem) {
  .proof-grid, .workflow-rail, .comparison-notes, .campaign-faq { grid-template-columns: 1fr 1fr; }
  .proof-grid article:nth-child(3) { grid-column: 1 / -1; border-top: 1px solid var(--line); border-left: 0; }
  .workflow-rail li:nth-child(3) { border-top: 1px solid rgba(164, 190, 240, 0.25); }
}
@media (max-width: 42rem) {
  .proof-grid, .workflow-rail, .comparison-notes, .campaign-faq { grid-template-columns: 1fr; }
  .proof-grid article + article, .proof-grid article:nth-child(3) { border-top: 1px solid var(--line); border-left: 0; }
  .workflow-rail li + li { border-top: 1px solid rgba(164, 190, 240, 0.25); }
  .workflow-rail li { min-height: auto; }
  .comparison-table { font-size: 0.82rem; }
}
