/* Pricing presentation. Plan data, links and existing handlers stay in cenas.html. */
.pricing-page .dark-top{
  background:linear-gradient(to bottom,var(--charcoal) 0 var(--header-h),#f7f8f5 var(--header-h) 100%);
  color:var(--ink);
}
.pricing-page .page-intro{padding-block:64px 44px}
.pricing-page .intro-copy{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.4fr);
  column-gap:48px;
  align-items:end;
}
.pricing-page .intro-copy .eyebrow{grid-column:1/-1;color:var(--accent-ink);font-size:10px;font-weight:600}
.pricing-page .intro-copy .eyebrow:before{height:2px}
.pricing-page .page-intro h1{max-width:none;margin-top:22px;color:var(--ink);font-size:clamp(64px,5.5vw,80px);line-height:1.04;letter-spacing:-.025em;text-wrap:balance}
.pricing-page .lead{max-width:none;margin-top:0;padding-bottom:4px;color:#59655e;font-size:15px;line-height:1.8}
.pricing-page .moonstone{background:#f7f8f5}
.pricing-page .pricing{padding-block:0 72px}
.pricing-page #plans-heading{
  display:flex;
  align-items:center;
  gap:20px;
  color:#59655e;
  font-family:var(--body);
  font-size:10px;
  font-weight:600;
  line-height:1.6;
  letter-spacing:.18em;
  text-transform:uppercase;
  text-align:left;
}
.pricing-page #plans-heading:after{content:'';height:1px;flex:1;background:var(--line)}
.pricing-page .plans{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:none;margin:28px 0 0;align-items:stretch}
.pricing-page .plan-shell{--reveal-y:12px;--reveal-duration:.25s}
.pricing-page .plan-shell:nth-child(n){--reveal-delay:0s}
.pricing-page .plan{
  padding:28px 24px 30px;
  border:1px solid #dce2d8;
  border-radius:20px;
  background:#fcfdfb;
  color:var(--ink);
  box-shadow:0 3px 10px -8px #29323924;
  transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}
.pricing-page .plan::before,.pricing-page .plan::after{display:none}
.pricing-page .plan--trial{background:#eff2eb}
.pricing-page .plan--featured{background:#edf3e4;border-color:#a8ba87;box-shadow:0 3px 10px -8px #29323924}
.pricing-page .plan-audience{display:flex;align-items:center;gap:9px;min-height:32px;margin-bottom:18px;color:#59655e;font-size:12px;font-weight:500;line-height:1.6}
.pricing-page .plan-audience svg{width:22px;height:22px;flex:none;stroke:var(--accent-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pricing-page .plan h3{min-height:38px;margin:0;font-size:36px;line-height:1.05;letter-spacing:-.015em;text-wrap:balance}
.pricing-page .plan-description,.pricing-page .plan--featured .plan-description{min-height:48px;margin-top:8px;color:#59655e;font-size:14px;line-height:1.75}
.pricing-page .price{display:flex;flex-direction:column;justify-content:flex-start;gap:9px;min-height:100px;margin-top:22px;font-size:70px;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.pricing-page .price span,.pricing-page .plan--featured .price span{font-family:var(--body);font-size:12px;font-weight:500;line-height:1.6;letter-spacing:0;color:#59655e}
.pricing-page .plan .button{
  width:100%;min-width:0;min-height:50px;gap:12px;margin-top:24px;padding:13px 16px;
  border:1px solid #b8c3ae;border-radius:10px;background:transparent;color:var(--ink);
  font-size:13px;font-weight:600;line-height:1.6;box-shadow:none;
  transition:background .2s ease,border-color .2s ease;
}
.pricing-page .plan--featured .button{border-color:var(--accent);background:var(--accent)}
.pricing-page .plan .button:hover{border-color:#7f9369;background:#e6eddf;transform:none;box-shadow:none}
.pricing-page .plan--featured .button:hover{border-color:#b8e52d;background:#b8e52d}
.pricing-page .plan .button span,.pricing-page .plan:focus-within .button span,.pricing-page .plan:hover .button span{font-size:19px;transform:none;transition:none}
.pricing-page .plan .button:focus-visible{outline:2px solid var(--accent-ink);outline-offset:4px;box-shadow:none}
.pricing-page .plan:focus-within{border-color:#7f9369;box-shadow:0 3px 10px -8px #29323924;transform:none}
.pricing-page .plan-features,.pricing-page .plan--featured .plan-features{gap:14px;margin-top:24px;padding-top:24px;border-color:#d8e0d0;color:#48534c;font-size:13px;line-height:1.75}
.pricing-page .plan-features li{padding-left:22px}
.pricing-page .plan-features li:before,.pricing-page .plan--featured .plan-features li:before{left:1px;top:6px;width:9px;height:5px;border-color:var(--accent-ink);opacity:1}
.pricing-page .plan-badge{top:0;left:auto;right:24px;padding:6px 11px;border:1px solid #a8ba87;border-radius:7px;background:#e1eccf;color:var(--accent-ink);font-size:9px;font-weight:600;line-height:1.6;letter-spacing:.04em;text-transform:none}
.pricing-page .pricing-note{margin-top:24px;color:#63705f;font-size:11px;line-height:1.8;text-align:left}
@media(hover:hover) and (pointer:fine){
  .pricing-page .plan:hover{transform:translateY(-2px);border-color:#a6b599;box-shadow:0 9px 20px -15px #29323938}
  .pricing-page .plan--featured:hover{border-color:#7f9369}
}
@media(min-width:641px) and (max-width:1399px){
  .pricing-page .plans{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
  .pricing-page .plan{padding:30px}
  .pricing-page .plan h3{min-height:38px}
  .pricing-page .plan-description{min-height:48px}
  .pricing-page .plan-badge{right:30px}
}
@media(max-width:900px){
  .pricing-page .page-intro{padding-block:48px 36px}
  .pricing-page .intro-copy{grid-template-columns:minmax(0,1fr);gap:20px}
  .pricing-page .page-intro h1{margin-top:0;font-size:clamp(56px,8.5vw,72px)}
  .pricing-page .lead{padding:0;font-size:14px}
  .pricing-page .pricing{padding-bottom:56px}
}
@media(max-width:640px){
  .pricing-page .plans{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:24px}
  .pricing-page .plan{padding:26px 24px 28px}
  .pricing-page .plan-audience{margin-bottom:16px;font-size:12px}
  .pricing-page .plan h3{min-height:0;font-size:36px;line-height:1.1}
  .pricing-page .plan-description,.pricing-page .plan--featured .plan-description{min-height:0;margin-top:10px;font-size:14px}
  .pricing-page .price{min-height:0;margin-top:24px;font-size:66px}
  .pricing-page .plan .button{margin-top:24px;font-size:13px}
  .pricing-page .plan-features{font-size:13px;gap:14px}
  .pricing-page .plan-badge{right:24px}
}
@media(max-width:480px){
  .pricing-page{--header-h:150px}
  .pricing-page .header nav{gap:clamp(18px,5.5vw,26px)}
  .pricing-page .page-intro{padding-block:36px 32px}
  .pricing-page .intro-copy{gap:18px}
  .pricing-page .page-intro h1{max-width:330px;font-size:56px;line-height:1.02}
}
@media(prefers-reduced-motion:reduce){
  .pricing-page .reveal{opacity:1;transform:none;transition:none;animation:none}
  .pricing-page .plan:hover,.pricing-page .plan:focus-within{transform:none}
}
@media(forced-colors:active){
  .pricing-page .plan,.pricing-page .plan .button,.pricing-page .plan-badge{border-color:CanvasText}
  .pricing-page .plan .button:focus-visible{outline-color:Highlight}
  .pricing-page .plan-audience svg,.pricing-page .plan-features li:before{color:CanvasText;stroke:CanvasText;border-color:CanvasText}
}
