/* ════════════════════════════════════════════════════════
   Talara — pricing page (formula + live calculator)
   Rides on home.css tokens: --ink --paper --indigo --serif
   --sans --mono --ease --pad-x --maxw --line --ink-2 --on-dark
   ════════════════════════════════════════════════════════ */

:root { --pr-band: 46px; }

.pr-sec { position: relative; z-index: 1; padding: clamp(3rem, 7vh, 5rem) var(--pad-x); }
.pr-wrap { max-width: var(--maxw); margin: 0 auto; }

/* ─── Fixed founding-cohort announcement bar (above the nav) ─ */
body { padding-top: calc(var(--pr-band) + env(safe-area-inset-top, 0px)); }
.nav { top: calc(var(--pr-band) + env(safe-area-inset-top, 0px)) !important; padding-top: 0 !important; height: 84px !important; }
.pr-annb {
  position: fixed; top: 0; left: 0; right: 0; z-index: 260;
  height: calc(var(--pr-band) + env(safe-area-inset-top, 0px));
  padding: env(safe-area-inset-top, 0px) calc(var(--pad-x) + env(safe-area-inset-right, 0px)) 0 calc(var(--pad-x) + env(safe-area-inset-left, 0px));
  display: flex; align-items: center;
  background: linear-gradient(100deg, #1b1840 0%, #2a2568 55%, #342d80 100%);
  box-shadow: inset 0 -1px 0 rgba(255,255,255,0.07);
}
.pr-annb__in { max-width: var(--maxw); margin: 0 auto; width: 100%; display: flex; align-items: center; gap: 1rem; }
.pr-annb__pulse { width: 8px; height: 8px; border-radius: 50%; background: #a79fff; flex-shrink: 0; box-shadow: 0 0 0 0 rgba(167,159,255,0.6); animation: pr-pulse 2.2s var(--ease) infinite; }
@keyframes pr-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(167,159,255,0.55); } 50% { box-shadow: 0 0 0 7px rgba(167,159,255,0); } }
.pr-annb__txt { flex: 1; min-width: 0; font-family: var(--sans); font-size: 0.83rem; line-height: 1.3; color: rgba(244,244,248,0.82); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pr-annb__txt b { color: #fff; font-weight: 600; }
.pr-annb__count { flex-shrink: 0; font-size: 0.83rem; color: #C9C4FF; white-space: nowrap; }
.pr-annb__count b { color: #fff; }
.pr-annb__compact { display: none; }
.pr-annb__cta { flex-shrink: 0; font-family: var(--sans); font-weight: 600; font-size: 0.78rem; color: var(--ink); background: #fff; padding: 0.44rem 1.1rem; border-radius: 100px; text-decoration: none; white-space: nowrap; transition: transform 0.25s var(--ease), box-shadow 0.25s ease; }
.pr-annb__cta:hover { transform: translateY(-1px); box-shadow: 0 8px 20px -8px rgba(0,0,0,0.5); }

/* ─── Hero: formula (left) + calculator (right) over image ── */
.pr-hero-sec {
  background:
    linear-gradient(180deg, rgba(14,12,28,0.66), rgba(14,12,28,0.52) 45%, rgba(14,12,28,0.72)),
    linear-gradient(120deg, rgba(33,28,78,0.5), rgba(33,28,78,0.05) 60%),
    url('/assets/page-bg/pricing.jpg') center/cover;
  padding-top: clamp(6rem, 11vh, 7.5rem); padding-bottom: clamp(3rem, 7vh, 5rem);
}
.pr-hero-grid { display: grid; grid-template-columns: 0.82fr 1.18fr; gap: clamp(2rem, 4vw, 3.6rem); align-items: start; }
.pr-hero__lead { padding-top: 0.4rem; }
.pr-hero__calc { display: flex; flex-direction: column; }
.pr-hero__lead .crumbs, .pr-hero__lead .crumbs a, .pr-hero__lead .crumbs span { color: rgba(244,244,248,0.55); }
.pr-hero__lead .crumbs a:hover { color: var(--on-dark); }
.pr-eyebrow { }
.pr-formula {
  font-family: var(--serif); font-optical-sizing: auto; font-weight: 300;
  font-size: clamp(2rem, 3.6vw, 3.2rem); line-height: 1.13; letter-spacing: -0.025em;
  color: var(--on-dark); margin-top: 1.1rem;
}
.pr-formula__l { display: block; }
.pr-formula__l--2 { color: var(--on-dark-2); }
.pr-hl { color: var(--on-dark); font-weight: 400; }
.pr-u { font-family: var(--mono); font-size: 0.4em; color: rgba(244,244,248,0.5); letter-spacing: 0; margin-left: 1px; }
.pr-sub { margin-top: 1.3rem; font-family: var(--sans); font-size: clamp(1rem, 1.2vw, 1.1rem); color: var(--on-dark-2); max-width: 40ch; }

/* ─── Calculator: pastel wave panel (matches the login page) ── */
.pr-calc {
  position: relative; overflow: hidden;
  background: #e9e4f6 url('/assets/page-bg/calc-wave.svg') center / cover no-repeat;
  border: 1px solid rgba(255,255,255,0.6); border-radius: 26px;
  display: grid; grid-template-columns: 0.8fr 1.2fr;
  box-shadow: 0 60px 130px -40px rgba(3,2,18,0.68), inset 0 1px 0 rgba(255,255,255,0.6);
}
.pr-calc__in  { padding: clamp(1.7rem, 2.6vw, 2.6rem); border-right: 1px solid rgba(20,19,28,0.09); display: flex; flex-direction: column; }
.pr-calc__out { padding: clamp(1.7rem, 2.6vw, 2.6rem); background: rgba(255,255,255,0.22); display: flex; flex-direction: column; }

.pr-q { font-family: var(--sans); font-weight: 500; font-size: 0.95rem; color: var(--ink); letter-spacing: -0.01em; }
.pr-hires { display: flex; align-items: baseline; gap: 0.55rem; margin-top: 1.3rem; }
.pr-hires__n { font-family: var(--serif); font-optical-sizing: auto; font-weight: 300; font-size: clamp(2.7rem, 5vw, 3.6rem); line-height: 1; color: var(--ink); letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.pr-hires__u { font-family: var(--mono); font-size: 0.78rem; color: var(--ink-2); letter-spacing: 0.02em; }

.pr-slider { -webkit-appearance: none; appearance: none; width: 100%; height: 26px; margin-top: 1.6rem; background: transparent; cursor: pointer; }
.pr-slider:focus-visible { outline: none; }
.pr-slider::-webkit-slider-runnable-track { height: 6px; border-radius: 100px; background: linear-gradient(90deg, var(--indigo) var(--pct, 5%), rgba(20,19,28,0.13) var(--pct, 5%)); }
.pr-slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; margin-top: -10px; width: 26px; height: 26px; border-radius: 50%; background: #fff; border: 1px solid rgba(20,19,28,0.10); box-shadow: 0 4px 14px -2px rgba(30,28,80,0.4), 0 0 0 0 rgba(79,70,229,0.16); transition: transform 0.16s var(--ease), box-shadow 0.22s ease; cursor: grab; }
.pr-slider:hover::-webkit-slider-thumb { transform: scale(1.08); }
.pr-slider:active::-webkit-slider-thumb { cursor: grabbing; transform: scale(1.14); box-shadow: 0 6px 20px -2px rgba(30,28,80,0.45), 0 0 0 9px rgba(79,70,229,0.14); }
.pr-slider:focus-visible::-webkit-slider-thumb { box-shadow: 0 4px 14px -2px rgba(30,28,80,0.4), 0 0 0 6px rgba(79,70,229,0.24); }
.pr-slider::-moz-range-track { height: 6px; border-radius: 100px; background: rgba(20,19,28,0.13); }
.pr-slider::-moz-range-progress { height: 6px; border-radius: 100px; background: var(--indigo); }
.pr-slider::-moz-range-thumb { width: 24px; height: 24px; border-radius: 50%; background: #fff; border: 1px solid rgba(20,19,28,0.10); box-shadow: 0 4px 14px -2px rgba(30,28,80,0.4); cursor: grab; }

.pr-scale { display: flex; justify-content: space-between; margin-top: 0.55rem; font-family: var(--mono); font-size: 10px; color: rgba(20,19,28,0.42); letter-spacing: 0.02em; }
.pr-chips { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: auto; padding-top: 1.6rem; }
.pr-chip { font-family: var(--mono); font-size: 0.78rem; padding: 0.42rem 0.85rem; border-radius: 100px; border: 1px solid rgba(20,19,28,0.18); background: rgba(255,255,255,0.35); color: var(--ink-2); cursor: pointer; transition: border-color 0.2s ease, color 0.2s ease, background 0.2s ease; }
.pr-chip:hover { border-color: rgba(20,19,28,0.4); color: var(--ink); background: rgba(255,255,255,0.55); }
.pr-chip.is-active { background: var(--indigo); border-color: var(--indigo); color: #fff; }

.pr-total__k { font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(20,19,28,0.48); }
.pr-total__v { display: flex; align-items: baseline; gap: 0.5rem; margin-top: 0.5rem; }
.pr-total__v > span:first-child { font-family: var(--mono); font-weight: 500; font-size: clamp(2.6rem, 6vw, 3.8rem); color: var(--ink); letter-spacing: -0.03em; line-height: 1; font-variant-numeric: tabular-nums; }
.pr-total__per { font-family: var(--mono); font-size: 0.95rem; color: var(--ink-2); }
.pr-total__eff { display: block; margin-top: 0.7rem; font-family: var(--mono); font-size: 0.82rem; color: var(--ink-2); font-variant-numeric: tabular-nums; }

.pr-bar { display: flex; height: 12px; border-radius: 100px; overflow: hidden; margin: 1.5rem 0 0.4rem; background: rgba(20,19,28,0.10); }
.pr-bar__seg { height: 100%; width: 0; transition: width 0.55s var(--ease), background 0.3s ease; }

.pr-lines { margin-top: 0.8rem; list-style: none; }
.pr-line { display: flex; justify-content: space-between; align-items: baseline; gap: 1rem; }
.pr-line__k { font-family: var(--sans); font-size: 0.92rem; color: var(--ink); }
.pr-line__k em { font-family: var(--mono); font-style: normal; font-size: 10.5px; color: rgba(20,19,28,0.45); letter-spacing: 0.02em; margin-left: 0.5rem; }
.pr-line__v { font-family: var(--mono); font-size: 0.92rem; font-weight: 500; color: var(--ink); font-variant-numeric: tabular-nums; white-space: nowrap; }
.pr-line--platform { padding: 0.75rem 0; }
.pr-line[data-row="band"] { opacity: 0; max-height: 0; padding: 0; border-top: 1px solid transparent; overflow: hidden; transition: opacity 0.32s ease, max-height 0.42s var(--ease), padding 0.32s ease, border-color 0.32s ease; }
.pr-line[data-row="band"].is-on { opacity: 1; max-height: 60px; padding: 0.75rem 0; border-top-color: rgba(20,19,28,0.10); }

/* ─── Comparison (under calc, on the dark hero) ───────── */
.pr-compare { margin-top: clamp(1.2rem, 2.5vh, 1.8rem); }
.pr-compare__l { font-family: var(--sans); font-size: clamp(0.95rem, 1.2vw, 1.04rem); line-height: 1.6; color: var(--on-dark-2); }
.pr-compare__l b { color: var(--on-dark); font-weight: 600; font-variant-numeric: tabular-nums; }
.pr-compare__ours { color: #b6b1f2 !important; }
.pr-compare__note { margin-top: 0.7rem; font-family: var(--mono); font-size: 10.5px; letter-spacing: 0.04em; color: rgba(244,244,248,0.5); line-height: 1.5; }

/* ─── Promise strip (paper) ───────────────────────────── */
.pr-promises { background: var(--paper); padding: clamp(3rem, 7vh, 5rem) var(--pad-x); }
.pr-promise-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: clamp(1.4rem, 2.6vw, 2.2rem); }
.pr-promise { border-top: 1px solid rgba(20,19,28,0.16); padding-top: 1.1rem; }
.pr-promise__i { font-family: var(--mono); font-size: 11px; color: var(--indigo); letter-spacing: 0.1em; display: block; margin-bottom: 0.9rem; }
.pr-promise h3 { font-family: var(--serif); font-weight: 400; font-size: clamp(1.1rem, 1.6vw, 1.32rem); color: var(--ink); letter-spacing: -0.015em; line-height: 1.2; margin-bottom: 0.55rem; }
.pr-promise p { font-family: var(--sans); font-size: 0.9rem; color: var(--ink-2); line-height: 1.55; }

/* ─── Enterprise anchor (image) ───────────────────────── */
.pr-ent {
  padding: clamp(4rem, 9vh, 6.5rem) var(--pad-x);
  background:
    linear-gradient(180deg, rgba(14,12,28,0.58), rgba(14,12,28,0.5) 50%, rgba(14,12,28,0.64)),
    linear-gradient(260deg, rgba(33,28,78,0.42), rgba(33,28,78,0.06) 62%),
    url('/assets/page-bg/pricing-cta.jpg') center/cover;
}
.pr-ent__wrap { max-width: 640px; margin: 0 auto; text-align: center; }
.pr-ent__title { font-family: var(--serif); font-weight: 300; font-size: clamp(1.8rem, 3.4vw, 2.8rem); color: var(--on-dark); line-height: 1.14; letter-spacing: -0.025em; margin: 1rem 0 1.1rem; }
.pr-ent__body { font-family: var(--sans); font-size: clamp(0.98rem, 1.3vw, 1.08rem); color: var(--on-dark-2); line-height: 1.65; max-width: 52ch; margin: 0 auto 1.9rem; }
.pr-ent__body b { color: var(--on-dark); font-weight: 600; }

/* ─── FAQ / mechanics (paper) ─────────────────────────── */
.pr-faq { background: var(--paper); padding: clamp(3.5rem, 8vh, 6rem) var(--pad-x) clamp(4.5rem, 11vh, 7.5rem); }
.pr-faq__wrap { max-width: 820px; margin: 0 auto; }
.pr-faq__title { font-family: var(--serif); font-weight: 300; font-size: clamp(1.8rem, 3.2vw, 2.6rem); color: var(--ink); letter-spacing: -0.02em; margin-top: 0.7rem; }
.pr-faq__list { margin-top: clamp(1.6rem, 3vh, 2.4rem); border-top: 1px solid var(--line); }
.pr-qa { border-bottom: 1px solid var(--line); }
.pr-qa summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.35rem 0; font-family: var(--sans); font-weight: 500; font-size: clamp(0.98rem, 1.3vw, 1.06rem); color: var(--ink); transition: color 0.2s ease; }
.pr-qa summary::-webkit-details-marker { display: none; }
.pr-qa summary:hover { color: var(--indigo); }
.pr-qa__x { position: relative; width: 15px; height: 15px; flex-shrink: 0; }
.pr-qa__x::before, .pr-qa__x::after { content: ""; position: absolute; background: rgba(20,19,28,0.5); border-radius: 2px; }
.pr-qa__x::before { top: 50%; left: 0; right: 0; height: 1.6px; transform: translateY(-50%); }
.pr-qa__x::after { left: 50%; top: 0; bottom: 0; width: 1.6px; transform: translateX(-50%); transition: transform 0.3s var(--ease); }
.pr-qa[open] .pr-qa__x::after { transform: translateX(-50%) scaleY(0); }
.pr-qa__a { padding: 0 0 1.45rem; }
.pr-qa[open] .pr-qa__a { animation: pr-fade 0.38s var(--ease); }
.pr-qa__a p { font-family: var(--sans); font-size: clamp(0.94rem, 1.2vw, 1rem); color: var(--ink-2); line-height: 1.68; max-width: 70ch; }
@keyframes pr-fade { from { opacity: 0; transform: translateY(-5px); } to { opacity: 1; transform: none; } }
.pr-faq__cta { margin-top: 2.2rem; font-family: var(--sans); font-size: 0.98rem; color: var(--ink-2); }
.pr-faq__cta a { color: var(--indigo); text-decoration: underline; text-underline-offset: 3px; font-weight: 500; }
.pr-faq__cta a:hover { color: var(--indigo-700); }

/* ─── Responsive ──────────────────────────────────────── */
@media (max-width: 1080px) {
  .pr-hero-grid { grid-template-columns: 1fr; gap: clamp(1.8rem, 4vh, 2.6rem); align-items: stretch; }
  .pr-hero__lead { max-width: 40ch; }
}
@media (max-width: 900px) {
  .pr-promise-grid { grid-template-columns: repeat(2, 1fr); gap: 1.8rem 1.4rem; }
}
@media (max-width: 620px) {
  .pr-calc { grid-template-columns: 1fr; }
  .pr-calc__in { border-right: none; border-bottom: 1px solid rgba(20,19,28,0.09); }
  .pr-promise-grid { grid-template-columns: 1fr; }
  .pr-annb__mid { display: none; }
  .pr-annb__compact { display: inline; }
  .pr-annb__txt { font-size: 0.78rem; }
  .pr-annb__count { font-size: 0.78rem; }
  .pr-annb__cta { font-size: 0.74rem; padding: 0.42rem 0.9rem; }
}

/* ─── Founding-rate treatment ─────────────────────────── */
.pr-was { text-decoration: line-through; color: rgba(20,19,28,0.36); margin-right: 0.4rem; font-size: 0.9em; }
.pr-tag {
  margin-top: 1.2rem; display: inline-flex; align-items: center; gap: 0.5rem;
  font-family: var(--mono); font-size: 11px; letter-spacing: 0.05em; color: rgba(244,244,248,0.66);
  border: 1px solid rgba(244,244,248,0.18); padding: 0.35rem 0.8rem; border-radius: 100px;
}
.pr-tag::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #a79fff; flex-shrink: 0; }
/* When the cohort fills: founding.active = false adds .pr-founding-closed */
.pr-founding-closed { padding-top: 0; }
.pr-founding-closed .pr-annb { display: none; }
.pr-founding-closed .nav { top: 0 !important; padding-top: env(safe-area-inset-top, 0px) !important; height: calc(84px + env(safe-area-inset-top, 0px)) !important; }
.pr-founding-closed .pr-tag { display: none; }

/* ── Dedicated lead modals (founding / enterprise): textarea + optional tag ── */
.form__field textarea {
  width: 100%; min-width: 0; font-family: var(--sans); font-size: 0.92rem; color: var(--on-dark);
  background: rgba(12,12,28,0.28); border: 1px solid rgba(255,255,255,0.24); border-radius: 10px;
  padding: 0.74rem 0.9rem; outline: none; resize: vertical; min-height: 84px; line-height: 1.5;
  -webkit-backdrop-filter: blur(12px) saturate(1.2); backdrop-filter: blur(12px) saturate(1.2);
  transition: border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease; -webkit-appearance: none;
}
.form__field textarea::placeholder { color: rgba(244,244,248,0.5); }
.form__field textarea:focus { border-color: rgba(160,150,255,0.85); background: rgba(255,255,255,0.1); box-shadow: 0 0 0 3px rgba(120,110,240,0.22); }
.form__optional { font-weight: 400; letter-spacing: 0.06em; opacity: 0.6; text-transform: none; }
.modal__success { text-align: left; }
.modal__success .modal__sub { margin-bottom: 0; }
