/* /crm — page-specific styles. Loaded after product-page.css + product-shared.css. */

/* Pipeline board — calm: four open columns, one card each, one featured */
.plb-clip{min-width:0}
.plb{position:relative;padding:24px 28px 18px;background:var(--surface)}
.plb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.plb-col{display:flex;flex-direction:column;gap:12px;opacity:0;transform:translateY(8px);transition:opacity .35s cubic-bezier(.25,.46,.45,.94) var(--cd,0s),transform .35s cubic-bezier(.25,.46,.45,.94) var(--cd,0s)}
.plb.is-in .plb-col{opacity:1;transform:none}
.plb-colh{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid var(--border-a);font:500 10.5px/1.2 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mutedb);transition:color .3s,border-color .3s}
.plb-card{position:relative;padding:14px 16px;border-radius:14px;background:var(--surface);border:1px solid var(--border-a);box-shadow:0 1px 2px rgba(36,81,59,.06)}
.plb-card b{display:block;font:500 14px/1.3 var(--font-body);color:var(--ink-a)}
.plb-card span{display:block;margin-top:4px;font:400 12.5px/1.5 var(--font-body);color:var(--ink-mutedb);font-variant-numeric:tabular-nums}
.plb-card--ghost{opacity:.6}
.plb-card--feat{z-index:2;border-color:var(--green-500b);box-shadow:0 8px 24px -8px rgba(36,81,59,.14)}
.plb-card--feat small{display:block;margin-top:6px;font:400 11.5px/1.5 var(--font-body);color:var(--ink-mutedb)}
.plb.is-move .plb-card--feat{animation:plbMove .7s cubic-bezier(.22,.61,.36,1) forwards}
.plb--drag.is-move .plb-card--feat{animation:plbDrag .8s cubic-bezier(.22,.61,.36,1) forwards}
@keyframes plbMove{0%{transform:none}35%{transform:translate(30%,-6px) rotate(1.5deg);box-shadow:var(--shadow-lg-g)}100%{transform:translateX(calc(100% + 16px))}}
@keyframes plbDrag{0%{transform:none}30%{transform:translate(22%,-8px) rotate(2.5deg);box-shadow:var(--shadow-lg-g)}80%{transform:translateX(calc(100% + 16px)) translateY(-4px) rotate(1deg);box-shadow:var(--shadow-lg-g)}100%{transform:translateX(calc(100% + 16px))}}
.plb.is-move .plb-col--target .plb-colh{color:var(--green-700b);border-color:var(--green-500b)}
.plb-foot{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-top:20px;padding-top:14px;border-top:1px solid var(--border-a);font:400 13px/1.4 var(--font-body);color:var(--ink-mutedb)}
.plb-foot b{font:600 16px/1 var(--font-display);letter-spacing:-.02em;color:var(--ink-a);font-variant-numeric:tabular-nums}

/* Offers: two slim panels joined by a drawn line */
.off{display:grid;grid-template-columns:minmax(0,1fr) 84px minmax(0,1fr);align-items:stretch;max-width:900px;margin:0 auto}
.off-p{padding:26px 28px;border:1px solid var(--border-a);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-md-g);opacity:0;transform:translateY(10px);transition:opacity .35s cubic-bezier(.25,.46,.45,.94) var(--od,0s),transform .35s cubic-bezier(.25,.46,.45,.94) var(--od,0s)}
.off.is-in .off-p{opacity:1;transform:none}
.off-ph{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--border-a);font:500 10.5px/1.2 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mutedb)}
.off-line{align-self:center;height:2px;margin:0 -1px;background:var(--green-500b);transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.22,.61,.36,1) .4s;z-index:1}
.off.is-in .off-line{transform:scaleX(1)}
.off-p--portal{transition-delay:.65s,.65s;display:flex;flex-direction:column}
.off-p--portal .off-signed{margin-top:auto}
.off-signed{display:flex;align-items:center;gap:12px;margin-top:18px;padding:15px 17px;border-radius:14px;background:var(--mint-50)}
.off-signed svg{flex:none}
.off-check{stroke:var(--green-700b);stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:22;stroke-dashoffset:22;transition:stroke-dashoffset .4s cubic-bezier(.22,.61,.36,1) 1s}
.off.is-in .off-check{stroke-dashoffset:0}
.off-signed b{font:500 14.5px/1.4 var(--font-body);color:var(--ink-a)}
.off-signed span{display:block;font:400 12.5px/1.5 var(--font-body);color:var(--ink-mutedb)}
.off-aside{margin:34px auto 0;max-width:900px;text-align:center;font:400 14.5px/1.6 var(--font-body);color:var(--ink-mutedb)}

/* The work around the deal — a quiet ledger, not a card grid */
.rest-list{max-width:820px;margin:0 auto}
.rest-it{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;padding:24px 4px;border-top:1px solid var(--border-a);opacity:0;transform:translateY(10px);transition:opacity .35s cubic-bezier(.25,.46,.45,.94) var(--rd,0s),transform .35s cubic-bezier(.25,.46,.45,.94) var(--rd,0s)}
.rest-it:last-child{border-bottom:1px solid var(--border-a)}
.rest-list.is-in .rest-it{opacity:1;transform:none}
.rest-it b{font:500 17px/1.4 var(--font-body);color:var(--ink-a)}
.rest-it p{margin:0;font:400 15px/1.65 var(--font-body);color:var(--ink-mutedb);text-wrap:pretty}
.rest-it small{display:block;margin-top:10px;font:400 12px/1.6 'JetBrains Mono',ui-monospace,monospace;color:var(--green-700b)}

/* Contacts split */
.crx-split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:72px;align-items:center;max-width:1144px;margin:0 auto}

/* Responsive */
@media(max-width:1080px){.crx-split{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px}}
@media(max-width:900px){.crx-split{grid-template-columns:1fr;gap:40px;align-items:start}}
@media(max-width:860px){
 .plb-clip{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -24px;padding:0 24px 8px}
 .plb-clip .bwr{min-width:600px}
 .off{grid-template-columns:1fr;max-width:480px}
 .off-line{justify-self:center;width:2px;height:44px;margin:0;transform:scaleY(0);transform-origin:top}
 .off.is-in .off-line{transform:scaleY(1)}
 .rest-it{grid-template-columns:1fr;gap:6px;padding:20px 0}
}
@media(prefers-reduced-motion:reduce){
 .plb-col,.off-p,.rest-it{opacity:1;transform:none;transition:none}
 .plb.is-move .plb-card--feat,.plb--drag.is-move .plb-card--feat{animation:none;transform:translateX(calc(100% + 16px))}
 .off-check{stroke-dashoffset:0;transition:none}
 .off.is-in .off-line{transform:none}
}
