/* /solutions/: one narrow problem per page. Tokens from /tokens.css; flat surfaces, no rules or shadows. */
.pr{max-width:1200px;margin:0 auto;padding:0 24px 96px;color:var(--color-ink);font-family:var(--font-body)}
.pr h1,.pr h2,.pr h3{font-family:var(--font-display);letter-spacing:-0.025em;color:var(--color-ink)}
.pr h1{font-size:clamp(40px,6.4vw,92px);line-height:0.98;margin:0 0 24px;max-width:11ch}
.pr h2{font-size:clamp(28px,3.6vw,48px);line-height:1.02;margin:0 0 24px;max-width:18ch}
.pr p,.pr li,.pr dd{font-size:18px;line-height:1.55}
.pr .lede{font-size:clamp(19px,1.6vw,22px);max-width:34em;margin:0 0 32px}
.pr .btn{display:inline-block;background:var(--color-accent);color:#fff;border:0;border-radius:0;padding:16px 24px;font:600 17px var(--font-body);text-decoration:none;cursor:pointer;transition:transform .15s,background .15s}
.pr .btn:hover{background:var(--color-accent-2)}.pr .btn:active{transform:translateY(1px)}
.pr section{margin-top:160px}.pr section.hero{margin-top:48px}
.hero{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:center}
.hero-pic{margin:0}.hero-pic img,.case img{width:100%;height:auto;display:block;background:var(--color-paper-2)}
.pr figcaption{font-size:15px;color:var(--color-muted);margin-top:12px}
.why{background:var(--color-ink);color:var(--color-paper);margin-left:-24px;margin-right:-24px;padding:96px 24px}
.why h2{color:var(--color-paper)}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.why-grid b{display:block;font-family:var(--font-display);font-size:26px;letter-spacing:-0.02em;margin-bottom:8px;color:var(--color-paper)}
.why-grid p{color:var(--color-paper-3);margin:0}
.case{display:grid;grid-template-columns:7fr 5fr;gap:48px;align-items:start}
.case figure{margin:0}
.facts{list-style:none;padding:0;margin:24px 0}
.facts li{padding:12px 0}.facts b{font-family:var(--font-display);font-size:24px;letter-spacing:-0.02em;margin-right:8px}
.honest{background:var(--color-accent-soft);padding:20px 24px}
.deliver{display:grid;grid-template-columns:1fr 1fr;gap:48px 64px;margin:0}
.deliver dt{font-family:var(--font-display);font-size:26px;letter-spacing:-0.02em;margin-bottom:8px}
.deliver dd{margin:0;max-width:30em}
.brief{display:grid;grid-template-columns:7fr 5fr;gap:48px;background:var(--color-paper-2);margin-left:-24px;margin-right:-24px;padding:96px 24px}
#bf{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#bf label{display:flex;flex-direction:column;gap:6px;font-weight:500;font-size:16px}
#bf input{font:inherit;font-size:17px;padding:12px;border:1px solid var(--color-rule-2);background:#fff;color:var(--color-ink)}
#bf .hp{position:absolute;left:-9999px}
#bf .btn,#bmsg{grid-column:1/-1;justify-self:start}
.card{background:var(--color-ink);color:var(--color-paper);padding:32px;align-self:start;position:sticky;top:24px;min-height:320px}
.card h3{color:var(--color-paper);font-size:28px;margin:0 0 16px}
.card dl{margin:0}.card dt{color:var(--color-paper-3);font-size:15px;margin-top:14px}.card dd{margin:2px 0 0;font-size:19px}
.card.filled .card-note{display:none}.card-note{color:var(--color-paper-3)}
.list{list-style:none;padding:0;margin:48px 0 0;display:grid;gap:24px}
.list a{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:center;text-decoration:none;color:inherit;background:var(--color-paper-2);padding:32px;transition:background .15s}
.list a:hover{background:var(--color-paper-3)}
.list img{width:100%;height:auto;display:block}
.list h2{margin-bottom:12px}.list .go{color:var(--color-accent);font-weight:600}
.next{color:var(--color-muted)}
@media (max-width:860px){
 .hero,.case,.brief,.list a{grid-template-columns:1fr}.why-grid,.deliver{grid-template-columns:1fr}
 .pr section{margin-top:96px}#bf{grid-template-columns:1fr}.card{position:static}
 .pr{padding:0 16px 64px}.why,.brief{margin-left:-16px;margin-right:-16px;padding:64px 16px}
}
@media (prefers-reduced-motion:reduce){.pr .btn,.list a{transition:none}}
/* undo compute.css's section rules and its key-value dl (mono values, dashed lines) */
main.pr section{border-bottom:0;padding:0}
main.pr section.why,main.pr section.brief{padding:96px 24px}
.pr dl div{display:block;border:0;padding:0}
.pr dd{font-family:var(--font-body)}
.pr dt{color:var(--color-ink)}
.card dt{color:var(--color-paper-3)}
.why,.brief{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:max(24px,calc(50vw - 576px))!important;padding-right:max(24px,calc(50vw - 576px))!important}
@media (max-width:860px){main.pr section.why,main.pr section.brief{padding:64px 16px}}
.tbl{overflow-x:auto;margin:24px 0}
.tbl table{border-collapse:collapse;width:100%;min-width:640px;font-size:17px}
.tbl th{text-align:left;font-weight:600;padding:12px 16px;background:var(--color-ink);color:var(--color-paper)}
.tbl td{padding:12px 16px;vertical-align:top}
.tbl tbody tr:nth-child(odd){background:var(--color-paper-2)}
#bf textarea{font:inherit;font-size:17px;padding:12px;border:1px solid var(--color-rule-2);background:#fff;color:var(--color-ink)}
