/* ===== service-page-builder: page design, scoped to .pxsp ===== */
.pxsp{
  --ink:#1c1714; --ink-2:#4a4039; --muted:#7a6e66; --line:#f1e4da; --line-2:#e3d2c5;
  --paper:#fff; --cream:#fff8f3; --peach:#fdeadf; --peach-2:#fbd9c6;
  --orange:#eb600e; --orange-d:#c94f08; --orange-t:#b8520f;
  --dark:#1e1916;
  --pass:#15803d; --warn:#b45309; --fail:#b3261e;
  --font-head:"Fraunces",Georgia,"Times New Roman",serif;
  --font-body:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
}
.pxsp *{box-sizing:border-box}
.pxsp{margin:0;font-family:var(--font-body);font-size:16.5px;line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
.pxsp a{color:var(--orange-t)}
.pxsp strong{font-weight:700}
.pxsp img,.pxsp svg{max-width:100%}
.pxsp:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:6px}
.pxsp [hidden]{display:none!important}
.pxsp .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pxsp h1,.pxsp h2,.pxsp h3{font-family:var(--font-head);font-weight:700;letter-spacing:-.015em;color:var(--ink);margin:0 0 .45em}
.pxsp h1{font-size:clamp(2.4rem,5.4vw,3.7rem);line-height:1.04}
.pxsp h2{font-size:clamp(1.75rem,3.2vw,2.4rem);line-height:1.12}
.pxsp h3{font-size:1.2rem;line-height:1.25}
.pxsp p{margin:0 0 1em}
.pxsp .container{max-width:1120px;margin:0 auto;padding:0 24px}
.pxsp .narrow{max-width:760px;margin:0 auto;text-align:center}
.pxsp .narrow p{color:var(--ink-2)}
.pxsp .kicker{display:inline-block;font-size:12.5px;font-weight:700;color:var(--orange-t);background:var(--peach);border-radius:999px;padding:4px 12px;margin:0 0 12px}
.pxsp .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;border-radius:999px;font:600 15px/1.2 var(--font-body);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,transform .15s}
.pxsp .btn-orange{background:var(--orange);color:#fff}
.pxsp .btn-orange:hover{background:var(--orange-d)}
.pxsp .btn-dark{background:var(--dark);color:#fff}
.pxsp .btn-dark:hover{background:#3a312b}
.pxsp .btn-ghost{background:#fff;color:var(--ink);border-color:var(--line-2)}
.pxsp .btn-ghost:hover{border-color:var(--ink)}
.pxsp .btn-sm{padding:8px 15px;font-size:14px}
.pxsp .hero{padding:30px 0 56px;text-align:center;background:linear-gradient(180deg,var(--cream) 0,#fff 460px)}
.pxsp .crumbs{font-size:13.5px;color:var(--muted);display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.pxsp .crumbs a{color:var(--muted);text-decoration:none}
.pxsp .crumbs a:hover{color:var(--ink);text-decoration:underline}
.pxsp .hero .sub{font-size:1.1rem;color:var(--ink-2);max-width:640px;margin:0 auto}
.pxsp .pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.pxsp .pills li{font-size:13.5px;font-weight:600;border-radius:999px;padding:5px 14px;background:#fff;border:1px solid var(--line);color:var(--ink-2)}
.pxsp .wc{max-width:1060px;margin:30px auto 0;text-align:left;background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 1px 2px rgba(28,23,20,.04),0 30px 60px -36px rgba(120,60,20,.35);padding:24px}
.pxsp .section{padding:84px 0}
.pxsp .section.tint{background:var(--cream)}
.pxsp .split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.pxsp .split.rev .art{order:-1}
.pxsp .copy p{color:var(--ink-2)}
.pxsp .art{background:var(--peach);border-radius:24px;padding:32px;min-height:340px;display:grid;place-items:center}
.pxsp .steps4{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px;counter-reset:st;padding:0;list-style:none}
.pxsp .steps4 li{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;position:relative;font-size:15px;color:var(--ink-2)}
.pxsp .steps4 li::before{counter-increment:st;content:counter(st,decimal-leading-zero);display:block;font:700 2.1rem/1 var(--font-head);color:var(--peach-2);margin-bottom:10px}
.pxsp .steps4 b{display:block;color:var(--ink);font-size:16px;margin-bottom:4px}
.pxsp .center-copy{text-align:center;color:var(--ink-2);margin:26px auto 0;max-width:680px}
.pxsp .cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:36px}
.pxsp .tipcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column}
.pxsp .tipcard .tag{align-self:flex-start;font-size:12px;font-weight:700;color:var(--orange-t);background:var(--peach);border-radius:999px;padding:3px 10px;margin-bottom:12px}
.pxsp .tipcard p{font-size:15px;color:var(--ink-2);margin:0}
.pxsp .who{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}
.pxsp .who div{border:1px solid var(--line);border-radius:16px;padding:20px 16px;text-align:center;background:#fff}
.pxsp .who b{display:block;font:700 1.05rem/1.25 var(--font-head);margin-bottom:4px}
.pxsp .who span{font-size:13.5px;color:var(--muted)}
.pxsp .related{text-align:center;margin:26px 0 0;color:var(--ink-2)}
.pxsp .duo{display:grid;grid-template-columns:1fr 1fr;border-radius:26px;overflow:hidden}
.pxsp .duo-dark{background:var(--dark);padding:44px 36px;display:grid;place-items:center;color:#fff;border-radius:26px 0 0 26px}
.pxsp .duo-orange{background:#fde8dc;border:1px solid #fbd9c6;border-left:0;padding:48px 44px;color:var(--ink);border-radius:0 26px 26px 0}
.pxsp .duo-orange h2{color:var(--ink)}
.pxsp .duo-orange p{color:var(--ink-2)}
@media (max-width:900px){.pxsp .duo-dark{border-radius:26px 26px 0 0}
.pxsp .duo-orange{border-radius:0 0 26px 26px;border-left:1px solid #fbd9c6;border-top:0}}
.pxsp .faq{max-width:820px;margin:34px auto 0}
.pxsp .faq details{border:1px solid var(--line);border-radius:14px;background:#fff;margin-bottom:10px}
.pxsp .faq summary{list-style:none;cursor:pointer;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-weight:700;font-size:15.5px}
.pxsp .faq summary::-webkit-details-marker{display:none}
.pxsp .faq summary::after{content:"+";flex:0 0 26px;height:26px;border-radius:50%;background:var(--orange);color:#fff;font:600 18px/26px var(--font-body);text-align:center}
.pxsp .faq details[open] summary::after{content:"\2212"}
.pxsp .faq details[open]{border-color:var(--peach-2)}
.pxsp .faq .a{padding:0 20px 16px;color:var(--ink-2);font-size:15px}
.pxsp .faq .a p{margin:0}
.pxsp .worked{max-width:980px;margin:34px auto 0;background:#fff;border:1px solid var(--peach-2);border-radius:22px;padding:22px}
.pxsp .worked-cap{text-align:center;font-size:12.5px;font-weight:700;color:var(--orange-t);margin:0 0 16px}
.pxsp .worked-grid{display:grid;grid-template-columns:1fr 44px 1.5fr;gap:12px;align-items:stretch}
.pxsp .w-in,.pxsp .w-out{border:1px solid var(--line);border-radius:14px;padding:16px;font-size:14px}
.pxsp .w-in small,.pxsp .w-out small{display:block;font-size:11.5px;font-weight:700;color:var(--muted);margin-bottom:8px}
.pxsp .w-in dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:6px 12px}
.pxsp .w-in dt{color:var(--muted)}
.pxsp .w-in dd{margin:0;font-weight:600}
.pxsp .w-arrow{display:grid;place-items:center;color:var(--orange);font-size:22px}
.pxsp .w-out{background:var(--cream);border-color:var(--peach-2)}
.pxsp .w-score{font:700 2.4rem/1 var(--font-head);color:var(--pass);margin:0 0 2px;font-variant-numeric:tabular-nums}
.pxsp .w-note{font-size:13.5px;color:var(--ink-2);margin:6px 0 0}
.pxsp .more{background:var(--cream);border:1px solid var(--line);border-radius:28px;padding:64px 28px}
.pxsp .more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:1060px;margin:34px auto 0}
.pxsp .more-grid a{display:flex;gap:14px;align-items:flex-start;padding:18px;background:#fff;border:1px solid var(--line);border-radius:16px;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s,box-shadow .2s}
.pxsp .more-grid a:hover{border-color:var(--orange);transform:translateY(-2px);box-shadow:0 14px 28px -22px rgba(120,60,20,.4)}
.pxsp .more-grid .mi{flex:0 0 42px;height:42px;border-radius:12px;background:var(--peach);color:var(--orange);display:grid;place-items:center}
.pxsp .more-grid .mi svg{width:21px;height:21px}
.pxsp .more-grid strong{display:block;font-size:15px;line-height:1.3;margin-bottom:3px}
.pxsp .more-grid .d{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13.5px;line-height:1.45;color:var(--ink-2)}
.pxsp.js-on .rv{opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s cubic-bezier(.2,.8,.2,1)}
.pxsp .rv.is-in{opacity:1;transform:none}
@media (max-width:980px){.pxsp .bands{grid-template-columns:1fr 1fr}
.pxsp .who{grid-template-columns:1fr}
.pxsp .cards3{grid-template-columns:1fr}
.pxsp .steps4{grid-template-columns:1fr}}
@media (max-width:900px){.pxsp .split,.pxsp .duo{grid-template-columns:1fr;gap:28px}
.pxsp .split.rev .art{order:0}
.pxsp .art{min-height:0;padding:24px}
.pxsp .duo-orange{padding:36px 26px}
.pxsp .more-grid{grid-template-columns:1fr 1fr}
.pxsp .worked-grid{grid-template-columns:1fr}
.pxsp .w-arrow{transform:rotate(90deg);height:30px}
.pxsp .section{padding:64px 0}}
@media (max-width:600px){.pxsp .container{padding:0 16px}
.pxsp .more-grid,.pxsp .bands{grid-template-columns:1fr}
.pxsp .more{padding:48px 16px}
.pxsp .dial-split{grid-template-columns:1fr 1fr}}
@media (prefers-reduced-motion:reduce){.pxsp *,.pxsp *::before,.pxsp *::after{animation:none!important;transition:none!important}
.pxsp .rv{opacity:1;transform:none}}
.pxsp .six{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:36px;counter-reset:sx;padding:0;list-style:none}
.pxsp .six li{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;font-size:14.5px;color:var(--ink-2);position:relative;overflow:hidden}
.pxsp .six li::before{counter-increment:sx;content:counter(sx);position:absolute;right:16px;top:12px;font:700 2rem/1 var(--font-head);color:var(--peach-2)}
.pxsp .six b{display:block;color:var(--ink);font-size:15.5px;margin-bottom:4px;padding-right:30px}
@media (max-width:900px){.pxsp .six{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.pxsp .six{grid-template-columns:1fr}}
.pxsp .draft{width:100%;max-width:380px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}
.pxsp .draft .ln{height:8px;border-radius:6px;background:#f2e8e0;margin:9px 0;opacity:0;transform:translateX(-6px);transition:opacity .35s,transform .35s}
.pxsp .draft.in .ln{opacity:1;transform:none}
.pxsp .draft .ln.h{height:14px;background:var(--peach-2);width:78%}
.pxsp .draft .ln.s{width:92%}
.pxsp .draft .ln.m{width:70%}
.pxsp .draft .ln:nth-child(2){transition-delay:.08s}
.pxsp .draft .ln:nth-child(3){transition-delay:.16s}
.pxsp .draft .ln:nth-child(4){transition-delay:.24s}
.pxsp .draft .ln:nth-child(5){transition-delay:.32s}
.pxsp .draft .ln:nth-child(6){transition-delay:.40s}
.pxsp .draft .tag{display:inline-block;font-size:11px;font-weight:700;color:var(--orange-t);background:var(--peach);border-radius:999px;padding:3px 9px;margin-bottom:6px}
.pxsp .vs2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:34px}
.pxsp .vs2 div{border-radius:16px;padding:22px;font-size:14.5px}
.pxsp .vs2 .no{background:#f5eeea;color:var(--muted);border:1px solid var(--line)}
.pxsp .vs2 .yes{background:#fff3ea;border:1px solid var(--peach-2);color:var(--ink)}
.pxsp .vs2 small{display:block;font-weight:700;font-size:12px;margin-bottom:6px;letter-spacing:.02em}
@media (max-width:700px){.pxsp .vs2{grid-template-columns:1fr}}

/* ===== the tool, re-pointed at the design palette ===== */
/* ==== the live tool, re-pointed at the design palette ====
   .parix-sp is driven by its own --psp-* namespace, not --primary/--accent, so
   the earlier override changed nothing and the tool stayed purple #6c4df6. */
.pxsp .parix-sp{
  --psp-primary:#eb600e;
  --psp-primary-dark:#c94f08;
  --psp-text:#3a2a21;
  --psp-text-soft:#5a4a40;
  --psp-text-muted:#7d6b61;
  --psp-border:#f8e6da;
  --psp-bg:#ffffff;
  --psp-soft:#fff8f4;
  font-family:"Figtree",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  max-width:none; margin:28px auto 0; padding:0; text-align:left;
}
