/* ==========================================================================
   /paywall_calculator/ — Revenue Recovery Calculator (Consent-cluster page).
   Links after site.css (tokens/buttons) + inner.css (.grad-head reused for the
   gradient title). This file holds ONLY the calculator layout + the CTA band.
   No 2nd-level submenu and no consent sign-up rewrite on this page, so the body
   offset is just the fixed 82px header (60px on the mobile bar).
   ========================================================================== */
body { padding-top: 82px; }
@media screen and (max-width: 1199px) { body { padding-top: 60px; } }

:root {
  --pwc-pill: #EEF1F7;     /* editable value pill fill */
  --pwc-div: #E4E7EF;      /* hairline row dividers */
  --pwc-red: #DD4242;      /* "without paywall" accent bar */
  --pwc-green: #00AD98;    /* "with paywall" accent bar + uplift panel */
}

/* ==========================================================================
   Section shell + heading
   ========================================================================== */
.pwc-section { background: var(--tint); }

.pwc-back {
  display: inline-flex; align-items: center; gap: 10px;
  color: var(--navy); text-decoration: none;
  font-size: 16px; font-weight: 500; margin-bottom: 18px;
}
.pwc-back svg { display: block; }
.pwc-back:hover { color: var(--red); }

.pwc-title { margin: 0 0 14px; font-size: clamp(34px, 5vw, 52px); line-height: 1.1; }

.pwc-subrow {
  display: flex; align-items: center; justify-content: space-between;
  gap: 24px; margin-bottom: 26px;
}
.pwc-sub { margin: 0; font-size: 20px; line-height: 1.4; color: var(--navy-section); max-width: 640px; }

.pwc-share {
  flex: none; cursor: pointer;
  background: transparent; color: var(--red);
  border: 1px solid var(--red); border-radius: 40px;
  font-family: inherit; font-size: 12px; font-weight: 600; letter-spacing: .04em;
  text-transform: uppercase; padding: 11px 24px;
  transition: background .15s ease, color .15s ease;
}
.pwc-share:hover { background: var(--red); color: #fff; }
.pwc-share.is-copied { background: var(--pwc-green); border-color: var(--pwc-green); color: #fff; }
.pwc-share.is-copied::after { content: " \2713"; }

/* ==========================================================================
   Calculator
   ========================================================================== */
.pwc { max-width: 940px; }

.pwc-panel {
  background: #fff; border-radius: 24px;
  padding: 30px 34px; margin-bottom: 20px;
}

/* rows: label left, value right */
.frow {
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px; padding: 11px 0;
}
.flabel { font-size: 16px; color: var(--navy-section); line-height: 1.3; }
.flabel--strong { font-weight: 600; color: var(--navy); }

/* editable value = light pill; readonly = plain text */
.fval {
  min-width: 116px; text-align: center;
  background: var(--pwc-pill); border-radius: 40px;
  padding: 8px 18px;
  font-size: 16px; color: var(--navy); font-variant-numeric: tabular-nums;
  cursor: text; outline: none; white-space: nowrap;
}
.fval:focus { box-shadow: 0 0 0 2px rgba(221,66,66,.35); }
.fval--ro {
  background: transparent; padding: 8px 0; min-width: 0;
  text-align: right; cursor: default;
}
.fval--strong { font-weight: 600; }
.fval .quote-btn {
  color: var(--red); font-weight: 600; text-decoration: none;
  white-space: nowrap;
}
.fval .quote-btn:hover { text-decoration: underline; }

/* ---- Inputs panel (Monthly Pageviews | Page RPM + advanced options) ------ */
.pwc-inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 20px 48px; align-items: start; }
.frow--toggle { position: relative; padding-right: 52px; }
.pwc-adv-toggle {
  position: absolute; right: 0; top: 50%; transform: translateY(-50%);
  width: 38px; height: 38px; border-radius: 50%;
  background: #fff; border: 1px solid var(--border); color: var(--navy);
  display: grid; place-items: center; cursor: pointer;
  transition: border-color .15s ease;
}
.pwc-adv-toggle:hover { border-color: var(--navy); }
.pwc-adv-toggle svg { transition: transform .2s ease; }
.pwc-adv-toggle.is-open svg { transform: rotate(180deg); }
.pwc-adv { display: none; margin-top: 8px; }
.pwc-adv.is-open { display: block; }
.pwc-adv-head { font-size: 22px; font-weight: 700; color: var(--navy); margin: 6px 0 6px; }

/* ---- Two-column panels (red "without" | green "with") -------------------- */
.pwc-two { display: grid; grid-template-columns: 1fr 1fr; gap: 0; padding: 0; }
.pwc-col { position: relative; padding: 24px 30px 24px 30px; }
.pwc-col--red::before,
.pwc-col--green::before {
  content: ""; position: absolute; left: 14px; top: 24px; bottom: 24px;
  width: 4px; border-radius: 4px;
}
.pwc-col--red::before { background: var(--pwc-red); }
.pwc-col--green::before { background: var(--pwc-green); }
.pwc-col-head { font-size: 22px; font-weight: 700; color: var(--navy); margin: 0 0 8px; }
.pwc-two .frow { border-bottom: 1px solid var(--pwc-div); }
.pwc-two .frow:last-child { border-bottom: none; }

/* ---- Uplift panel (filled green) ----------------------------------------- */
.pwc-uplift { background: var(--pwc-green); color: #fff; padding: 26px 34px; }
.pwc-uplift-row { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.pwc-uplift-head { font-size: 24px; font-weight: 600; }
.pwc-uplift .fval { background: transparent; color: #fff; font-size: 28px; font-weight: 700; padding: 0; min-width: 0; }
.pwc-uplift-row--pct { margin-top: 6px; font-size: 16px; }
.pwc-uplift-row--pct .fval { font-size: 16px; font-weight: 600; }

/* ==========================================================================
   02 — Ready to work CTA (white section, large tint card)
   ========================================================================== */
.pwc-ready { background: #fff; }
.pwc-ready-card {
  background: var(--tint); border-radius: 30px;
  text-align: center; padding: 56px 24px 64px;
}
.pwc-ready-illus { width: 220px; height: auto; margin: 0 auto 26px; }
.pwc-ready-head {
  font-size: clamp(34px, 6vw, 62px); line-height: 1.05; font-weight: 800;
  color: var(--navy); margin: 0 0 32px; letter-spacing: -0.01em;
}
.pwc-ready .pill-btn { text-transform: uppercase; letter-spacing: .03em; font-weight: 700; }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media screen and (max-width: 720px) {
  .pwc-inputs { grid-template-columns: 1fr; gap: 4px; }
  .pwc-panel { padding: 22px 20px; }
  .pwc-col { padding: 18px 16px 18px 24px; }
  .pwc-col--red::before, .pwc-col--green::before { left: 8px; top: 18px; bottom: 18px; }
  .pwc-col-head, .pwc-adv-head { font-size: 18px; }
  .flabel, .fval { font-size: 14px; }
  .fval { min-width: 92px; padding: 7px 12px; }
  .pwc-subrow { flex-wrap: wrap; gap: 14px; }
}

@media screen and (max-width: 420px) {
  /* keep the red/green comparison side-by-side like live, just tighter */
  .frow { flex-direction: column; align-items: flex-start; gap: 6px; }
  .pwc-two .frow, .pwc-inputs .frow { align-items: flex-start; }
  .fval--ro { text-align: left; }
  .frow--toggle { padding-right: 44px; }
}
