/* Pricing page redesign (2026-09-26). Loaded after pricing.css (generated by wordpress/build/build_wp.py).
   Markup additions (hero points, title accent) come from inc/pricing.php; everything else is styling. */

/* ---------- hero: centred, soft brand canvas ---------- */
.cwc-page-pricing{position:relative;isolation:isolate}
.cwc-page-pricing::before{content:"";position:absolute;left:0;right:0;top:0;height:720px;z-index:-1;pointer-events:none;
  background:radial-gradient(700px 360px at 50% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 70%),
             radial-gradient(520px 300px at 82% 18%,color-mix(in srgb,#22d3ee 12%,transparent),transparent 70%)}
.cwc-page-pricing::after{content:"";position:absolute;left:0;right:0;top:0;height:620px;z-index:-1;pointer-events:none;
  background-image:radial-gradient(color-mix(in srgb,var(--text) 8%,transparent) 1px,transparent 1.2px);background-size:26px 26px;
  -webkit-mask-image:radial-gradient(760px 380px at 50% 10%,#000 25%,transparent 75%);mask-image:radial-gradient(760px 380px at 50% 10%,#000 25%,transparent 75%)}
.cwc-page-pricing .hero{padding:44px 0 52px;text-align:center}
.cwc-page-pricing .hero::before{content:"Pricing";display:inline-block;margin-bottom:18px;padding:5px 14px;border:1px solid var(--border);border-radius:999px;
  background:color-mix(in srgb,var(--surface) 80%,transparent);font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.cwc-page-pricing h1{font-size:clamp(42px,5.4vw,68px);line-height:1;letter-spacing:-.045em;margin:0 0 20px}
.cwc-page-pricing h1 .hl{background:linear-gradient(100deg,#2563eb 5%,#22d3ee 95%);-webkit-background-clip:text;background-clip:text;color:transparent}
.cwc-page-pricing .lede{max-width:720px;margin:0 auto;font-size:18.5px;line-height:1.65}
.cwc-page-pricing .hero-points{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 26px;margin:26px 0 0;padding:0;list-style:none;font-size:14.5px;color:var(--muted)}
.cwc-page-pricing .hero-points li{display:inline-flex;align-items:center;gap:8px}
.cwc-page-pricing .hero-points svg{width:18px;height:18px;padding:3px;border-radius:50%;color:var(--good);background:color-mix(in srgb,var(--good) 14%,transparent)}

/* ---------- cards ---------- */
.cwc-page-pricing .plans-note{margin-top:26px}

/* ---------- article: centred reading column with a quiet sidebar ---------- */
.cwc-page-pricing .article{grid-template-columns:230px minmax(0,840px);justify-content:center;gap:80px;margin-top:88px;padding-top:0;border-top:0}
.cwc-page-pricing .prose{max-width:840px}
.cwc-page-pricing .prose section{padding-bottom:72px}
.cwc-page-pricing .prose h2{font-size:clamp(28px,3.2vw,38px);letter-spacing:-.032em;margin-bottom:16px}
.cwc-page-pricing .prose > section > p,.cwc-page-pricing .prose section > p{font-size:16.5px;line-height:1.75}
.cwc-page-pricing .toc{top:104px;padding:20px 20px 16px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.cwc-page-pricing .toc ol{border-left:0;display:flex;flex-direction:column;gap:2px}
.cwc-page-pricing .toc a{padding:8px 12px;margin:0;border-left:0;border-radius:9px;font-size:14px;transition:background .15s,color .15s}
.cwc-page-pricing .toc a:hover{background:var(--surface-2)}
.cwc-page-pricing .toc a.active{background:var(--accent-soft);color:var(--accent)}

/* comparison table: the managed plans' column is highlighted */
.cwc-page-pricing .tbl-wrap{margin:24px 0 20px;border-radius:18px;box-shadow:0 1px 2px rgba(15,23,42,.04),0 24px 48px -36px rgba(15,23,42,.3)}
.cwc-page-pricing .tbl{font-size:15px}
.cwc-page-pricing .tbl th,.cwc-page-pricing .tbl td{padding:15px 18px}
.cwc-page-pricing .tbl thead th{font-size:13px;letter-spacing:.02em;color:var(--text);background:var(--surface-2)}
.cwc-page-pricing .tbl thead th.us{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-2))}
.cwc-page-pricing .tbl tbody td:nth-child(3){background:color-mix(in srgb,var(--accent) 5%,transparent);color:var(--text)}
.cwc-page-pricing .tbl tbody tr:first-child td{color:var(--text);font-weight:700;font-size:15.5px}
.cwc-page-pricing .tbl tbody tr:hover th,.cwc-page-pricing .tbl tbody tr:hover td{background-color:color-mix(in srgb,var(--accent) 4%,transparent)}

/* "which plan" guide: 2 x 2 cards with a clear recommendation chip */
.cwc-page-pricing .scen{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.cwc-page-pricing .scen div{display:flex;flex-direction:column;padding:24px;border:1px solid var(--border);border-radius:18px;background:var(--surface);
  box-shadow:0 1px 2px rgba(15,23,42,.04);transition:border-color .2s,box-shadow .2s,transform .2s}
.cwc-page-pricing .scen div:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:0 20px 40px -28px rgba(37,99,235,.45);transform:translateY(-2px)}
.cwc-page-pricing .scen h3{font-size:18px!important;letter-spacing:-.015em}
.cwc-page-pricing .scen p{font-size:15px;line-height:1.65;flex:1}
.cwc-page-pricing .scen .pick{align-self:flex-start;margin-top:18px;padding:6px 12px 6px 10px;border-radius:999px;background:var(--accent-soft);font-size:12px;letter-spacing:.06em}
.cwc-page-pricing .scen .pick::before{content:"→ ";font-weight:800}
.cwc-page-pricing .scen + p{margin-top:28px}

/* figures */
.cwc-page-pricing figure{margin:28px 0 8px}
.cwc-page-pricing figure img{border-radius:18px;box-shadow:0 30px 60px -36px rgba(15,23,42,.45)}
.cwc-page-pricing figcaption{margin-top:12px;font-size:13.5px}

/* tip: on-brand accent instead of amber */
.cwc-page-pricing .callout{border-left:0;border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);border-radius:16px;background:var(--accent-soft);padding:18px 22px 18px 58px;position:relative}
.cwc-page-pricing .callout::before{content:"";position:absolute;left:18px;top:17px;width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,#22d3ee,#2563eb);box-shadow:0 6px 14px -6px #2563eb}
.cwc-page-pricing .callout::after{content:"";position:absolute;left:23px;top:22px;width:16px;height:16px;background:#fff;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.6 10.8c.6.5 1 1.2 1.1 2h5c.1-.8.5-1.5 1.1-2A6 6 0 0 0 12 3z' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 18h6M10 21h4M12 3a6 6 0 0 0-3.6 10.8c.6.5 1 1.2 1.1 2h5c.1-.8.5-1.5 1.1-2A6 6 0 0 0 12 3z' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}

/* activation steps: gradient numbers */
.cwc-page-pricing .steps li::before{background:linear-gradient(135deg,#22d3ee,#2563eb);color:#fff;box-shadow:0 6px 14px -6px #2563eb}

/* FAQ */
.cwc-page-pricing .faq{gap:10px;margin-top:20px}
.cwc-page-pricing .faq details{border-radius:14px}

/* closing banner */
.cwc-page-pricing .cli{position:relative;overflow:hidden;padding:40px;border-radius:24px;background:#0b1120;border:1px solid rgba(255,255,255,.06);box-shadow:0 40px 80px -48px rgba(37,99,235,.6)}
.cwc-page-pricing .cli::before{content:"";position:absolute;inset:-40% -10% auto auto;width:520px;height:420px;pointer-events:none;background:radial-gradient(closest-side,rgba(37,99,235,.35),transparent)}
.cwc-page-pricing .cli > *{position:relative}
.cwc-page-pricing .cli h2{font-size:clamp(24px,2.6vw,30px)!important;letter-spacing:-.03em}
.cwc-page-pricing .cli p{font-size:15.5px}
.cwc-page-pricing .cli .cmd{padding:14px 16px;font-size:15px;border-radius:12px}
.cwc-page-pricing .cli .cmd button{padding:6px 11px;border-radius:8px}

/* ---------- responsive ---------- */
@media (max-width:1100px){.cwc-page-pricing .article{grid-template-columns:200px minmax(0,1fr);gap:48px}}
@media (max-width:900px){.cwc-page-pricing .article{grid-template-columns:minmax(0,1fr);margin-top:64px}}
@media (max-width:640px){
  .cwc-page-pricing .hero{padding:28px 0 36px}
  .cwc-page-pricing .lede{font-size:17px}
  .cwc-page-pricing .hero-points{justify-content:flex-start;flex-direction:column;align-items:flex-start;max-width:320px;margin:22px auto 0}
  .cwc-page-pricing .scen{grid-template-columns:minmax(0,1fr)}
  .cwc-page-pricing .scen div{padding:20px}
  .cwc-page-pricing .cli{padding:26px}
  .cwc-page-pricing .prose section{padding-bottom:56px}
}
