/* PRICING — common */
.pricing { background: var(--paper); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);}
.pricing h2 .italic { font-family: var(--serif); font-style: italic; color: var(--clay); font-weight: 400;}

/* ── A: Two side-by-side cards ── */
.prA-grid {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 24px;
}
@media (max-width: 900px) { .prA-grid { grid-template-columns: 1fr; } }

.prA-card {
  border-radius: var(--r-xl);
  padding: 36px 36px 32px;
  position: relative;
  display: flex; flex-direction: column;
  gap: 20px;
  border: 1px solid var(--line);
  background: var(--card);
  box-shadow: var(--shadow-soft);
}

.prA-feature {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
  box-shadow: var(--shadow-card);
  overflow: hidden;
}
.prA-feature::before {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(circle at 80% 20%, rgba(200,85,42,0.25), transparent 60%);
  pointer-events: none;
}
.prA-feature > * { position: relative; z-index: 2; }
.prA-feature-ribbon {
  position: absolute; top: 24px; right: 24px;
  font-size: 10px; letter-spacing: 0.14em;
  color: var(--clay-soft);
}

.prA-card-head { display: flex; flex-direction: column; gap: 6px;}
.prA-card-head .mono { font-size: 11px; letter-spacing: 0.18em; opacity: 0.55;}
.prA-card-head h3 { font-size: 28px; letter-spacing: -0.02em; }

.prA-price { display: flex; align-items: baseline; gap: 4px; line-height: 1; }
.prA-currency { font-size: 22px; opacity: 0.6; }
.prA-amount { font-size: 92px; letter-spacing: -0.04em; font-weight: 480;}
.prA-amount-mini { font-size: 36px; font-family: var(--serif); font-style: italic; letter-spacing: -0.01em; font-weight: 400;}
.prA-period { font-size: 14px; opacity: 0.55; margin-left: 6px; }

.prA-summary { font-size: 15px; max-width: 38ch; opacity: 0.78;}
.prA-feature .prA-summary { color: rgba(255,255,255,0.85);}

.prA-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 12px;}
.prA-list li {
  display: flex; gap: 12px; align-items: center;
  font-size: 14.5px;
  letter-spacing: -0.005em;
  padding: 8px 0;
  border-top: 1px solid var(--line);
}
.prA-feature .prA-list li { border-top-color: rgba(255,255,255,0.1); }
.prA-list li svg { color: var(--clay); flex-shrink: 0; }
.prA-feature .prA-list li svg { color: var(--clay-soft); }

.prA-cta { margin-top: 4px; align-self: flex-start;}
.prA-feature .prA-cta.btn-primary { background: var(--clay); color: var(--paper);}
.prA-feature .prA-cta.btn-primary:hover { background: var(--clay-deep);}
.prA-fine { font-size: 10px; letter-spacing: 0.1em; color: var(--ink-mute); }
.prA-feature .prA-fine { color: rgba(255,255,255,0.5);}

.prA-custom .prA-amount-mini { color: var(--ink); }

/* ── B: Single hero + custom below ── */
.prB-stage { display: flex; flex-direction: column; gap: 20px;}

.prB-hero {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 0;
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--r-xl);
  overflow: hidden;
  box-shadow: var(--shadow-card);
}
.prB-side { padding: 48px 44px; }
.prB-tag { font-size: 11px; letter-spacing: 0.18em; color: var(--clay); }
.prB-price { display: flex; align-items: baseline; gap: 6px; margin-top: 18px; line-height: 1;}
.prB-currency { font-size: 28px; color: var(--ink-soft);}
.prB-amount {
  font-size: clamp(96px, 12vw, 168px);
  letter-spacing: -0.045em;
  font-weight: 360;
  background: linear-gradient(180deg, var(--ink) 50%, var(--clay-deep) 130%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.prB-period { font-size: 16px; color: var(--ink-soft); margin-left: 10px;}
.prB-blurb { font-size: 16px; color: var(--ink-soft); margin-top: 18px; max-width: 38ch;}
.prB-ctas { display: flex; gap: 10px; margin-top: 24px; flex-wrap: wrap;}
.prB-trust { display: flex; gap: 18px; margin-top: 22px; flex-wrap: wrap; color: var(--ink-soft); font-size: 11px; letter-spacing: 0.06em;}

.prB-list-side {
  background: var(--ivory-2);
  padding: 48px 44px;
  border-left: 1px solid var(--line);
  position: relative;
}
.prB-list-side::before {
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(rgba(20,17,13,0.05) 1px, transparent 1px);
  background-size: 8px 8px;
  pointer-events: none;
  opacity: 0.6;
}
.prB-list-head { font-size: 11px; letter-spacing: 0.16em; color: var(--ink-mute); margin-bottom: 24px; position: relative;}
.prB-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 0; position: relative;}
.prB-list li {
  display: flex; align-items: center; gap: 14px;
  font-size: 15px;
  padding: 14px 0;
  border-bottom: 1px solid var(--line);
  color: var(--ink-2);
}
.prB-list li:last-child { border-bottom: none; }
.prB-list-n { color: var(--clay); font-size: 11px; letter-spacing: 0.06em;}

.prB-custom {
  display: flex; align-items: center; justify-content: space-between; gap: 28px;
  padding: 28px 32px;
  background: var(--ink);
  color: var(--paper);
  border-radius: var(--r-xl);
  box-shadow: var(--shadow-card);
}
.prB-custom .prB-tag { color: var(--clay-soft);}
.prB-custom-title { font-size: clamp(20px, 2.2vw, 28px); letter-spacing: -0.015em; margin-top: 6px; max-width: 30ch; line-height: 1.15; font-weight: 480;}
.prB-custom-title em { font-family: var(--serif); font-style: italic; color: var(--clay-soft); font-weight: 400;}
.prB-custom-sub { font-size: 14px; color: rgba(255,255,255,0.65); margin-top: 6px; max-width: 50ch;}
.prB-custom .btn-primary { background: var(--clay); color: var(--paper); flex-shrink: 0;}
.prB-custom .btn-primary:hover { background: var(--clay-deep);}

@media (max-width: 900px) {
  .prB-hero { grid-template-columns: 1fr; }
  .prB-list-side { border-left: none; border-top: 1px solid var(--line);}
  .prB-custom { flex-direction: column; align-items: flex-start; }
}

/* ── C: Comparison table ── */
.prC-table {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--r-xl);
  overflow: hidden;
  box-shadow: var(--shadow-soft);
}
.prC-row {
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr;
  border-top: 1px solid var(--line);
}
.prC-row:first-child { border-top: none; }
.prC-row-head { background: var(--paper); }
.prC-cell {
  padding: 18px 28px;
  font-size: 14.5px;
  color: var(--ink-2);
  display: flex; align-items: center;
  border-left: 1px solid var(--line);
  letter-spacing: -0.005em;
}
.prC-cell:first-child { border-left: none; color: var(--ink); font-weight: 400;}

.prC-row-head .prC-cell { padding: 32px 28px; align-items: flex-start; flex-direction: column; gap: 8px;}
.prC-row-head .prC-cell-essence { background: var(--ink); color: var(--paper); }
.prC-row-head .prC-cell-essence .mono { color: var(--clay-soft);}
.prC-row-head .prC-cell-custom { background: var(--paper); }

.prC-tag { font-size: 11px; letter-spacing: 0.16em;}
.prC-title { font-size: 26px; letter-spacing: -0.02em; font-weight: 480;}
.prC-price-mini {
  display: flex; align-items: baseline; gap: 4px;
  font-size: 13px;
  margin-bottom: 8px;
  color: inherit;
}
.prC-price-mini strong { font-size: 32px; font-weight: 480; letter-spacing: -0.02em;}
.prC-price-mini span { opacity: 0.6;}

.prC-mark { justify-content: center; }
.prC-yes { color: var(--clay); display: inline-flex; }
.prC-no { color: var(--ink-mute); font-family: var(--mono);}
.prC-text { font-family: var(--mono); font-size: 12px; letter-spacing: 0.04em; color: var(--ink-2);}

@media (max-width: 800px) {
  .prC-cell { padding: 14px 16px; font-size: 13px;}
  .prC-title { font-size: 20px; }
  .prC-row-head .prC-cell { padding: 18px 16px;}
}
