/* Restaurant operations, actionable previews and solution details. */
.hero-proofs {display:grid;gap:var(--s200);padding:0;margin:var(--s400) 0 0;list-style:none;max-width:520px}
.hero-proofs .hero-proof {margin:0;padding-left:var(--s300)}
.hero-proof strong {display:block;color:var(--ink);font-weight:700;text-wrap:pretty}
.hero-proof p {margin-top:var(--s50)}
.hero-proof .proof-mark {top:0}
.guarantee-link {display:inline-flex;align-items:center;min-height:44px;color:var(--lime);text-decoration:underline;text-underline-offset:4px}
.guarantee-link:hover {color:var(--ink)}
.hero-field {display:none}
.hero-stage::before {content:"";position:absolute;inset:0;z-index:-1;background:url('assets/restaurant-pattern.svg');opacity:.55;pointer-events:none}
.hero-visual {max-width:560px;width:100%}
.venue-stage {position:relative;aspect-ratio:3/2;margin-bottom:var(--s200);isolation:isolate}
.venue-image {width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 16px 24px #0006)}
.venue-routes {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:1}
.venue-path {fill:none;stroke:var(--lime);stroke-width:2;stroke-opacity:.65}
.venue-packet {fill:var(--lime);opacity:0}
.venue-hotspot {position:absolute;z-index:2;display:flex;align-items:center;gap:var(--s75);min-height:44px;padding:var(--s75) var(--s100);border:1px solid #6c7048;border-radius:8px;background:#181818ee;color:var(--ink);font-size:12px;line-height:16px;font-weight:700;transform:translate(-50%,-50%);transition:background-color 300ms var(--curve),color 300ms var(--curve)}
.venue-hotspot:hover,.venue-hotspot:focus-visible,.venue-hotspot.is-active {color:var(--bg);background:var(--lime);border-color:var(--lime)}
.venue-pin {width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px #cad40718}
.venue-hotspot.is-active .venue-pin,.venue-hotspot:hover .venue-pin {background:var(--bg);box-shadow:0 0 0 4px #1a1a1a12}
.venue-receiving {left:23%;top:26%}.venue-kitchen {left:61%;top:31%}.venue-hall {left:45%;top:67%}.venue-manager {left:73%;top:56%}
.venue-caption {position:absolute;inset:auto 0 0;text-align:center;color:#d1d3c0;background:#1a1a1ade;padding:var(--s50) var(--s75);border-radius:4px;z-index:3}
.pulse-panel {padding:var(--s200);transform:none!important}
.panel-header h2 {font-size:24px;line-height:32px}
.panel-header .demo-label {background:transparent;color:var(--muted);min-height:40px;cursor:pointer}
.panel-header .demo-label:hover {color:var(--lime);border-color:var(--lime)}
.panel-tabs {margin-top:var(--s200)}
.panel-tabs button {min-height:44px;padding:var(--s75);border:1px solid #424438;background:var(--raised);color:var(--muted);border-radius:4px;transition:background-color 300ms var(--curve),color 300ms var(--curve)}
.panel-tabs button:hover {color:var(--ink);background:#313131}
.panel-tabs button[aria-selected=true] {background:var(--lime);color:var(--bg);border-color:var(--lime)}
.demo-panel {margin-top:var(--s200);min-height:320px;outline-offset:4px}
.demo-panel .signal-label {margin-top:0;margin-bottom:var(--s100)}
.signals {gap:var(--s75)}
.signal {padding:var(--s75) var(--s100);min-height:56px}
.signal .title-3 {font-size:14px;line-height:20px}
.signal .caption-2 {font-size:12px;line-height:16px}
.industry-icon {display:inline-block;width:32px;height:32px;flex-shrink:0;background:currentColor;mask:var(--icon) center/contain no-repeat;-webkit-mask:var(--icon) center/contain no-repeat;color:var(--lime)}
.signal-icon.industry-icon {width:24px;height:24px;border-radius:0;color:var(--muted)}
.is-active .signal-icon.industry-icon {color:var(--lime)}
.demo-panel .task-preview {margin:0;background:#272727;padding:var(--s200)}
.demo-panel #demo-context {margin-top:var(--s75)}
.demo-panel .task-meta {margin-top:var(--s100);flex-wrap:wrap}
.demo-panel .task-check {margin-top:var(--s100)}
.demo-steps {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s75);list-style:none;padding:0;margin:var(--s200) 0}
.demo-steps li {display:grid;justify-items:center;gap:var(--s50);text-align:center;color:var(--muted);min-width:0}
.demo-steps li>span {display:grid;place-items:center;width:24px;height:24px;border:1px solid #646646;border-radius:50%}
.demo-steps li.is-complete>span {background:var(--lime);border-color:var(--lime);color:var(--bg)}
.demo-steps li[aria-current] {color:var(--lime)}
.demo-actions {display:flex;flex-wrap:wrap;gap:var(--s100);align-items:center;margin-top:var(--s200)}
.demo-actions .button {min-height:44px;gap:var(--s75)}
.demo-actions .plain-button {min-height:44px;text-decoration:underline;text-underline-offset:4px}
#demo-solution {border:0;background:none;color:var(--lime);padding:0;margin-top:var(--s75);min-height:44px;text-align:left}
.demo-result-total {display:flex;align-items:center;gap:var(--s200);margin-bottom:var(--s200)}
.demo-result-total>.heading-2 {color:var(--lime);white-space:nowrap}
.demo-result-progress {height:4px;background:#454733;border-radius:4px;overflow:hidden;margin-bottom:var(--s100)}
.demo-result-progress>span {display:block;width:100%;height:100%;background:var(--lime);transform-origin:left;transition:transform 700ms var(--curve)}
.demo-result-list {list-style:none;padding:0;margin:var(--s200) 0;display:grid;gap:var(--s100)}
.demo-result-list>li {display:flex;justify-content:space-between;gap:var(--s100)}
.demo-selected-result {color:#d1d3c0;padding:var(--s100);border:1px solid #50533d;border-radius:4px}
.panel-bottom {margin-top:var(--s100)}

.solution-card {cursor:pointer}
.solution-preview {display:block;position:relative;isolation:isolate;width:100%;aspect-ratio:16/9;padding:var(--s75);margin:0 0 var(--s200);overflow:hidden;border:1px solid #444638;border-radius:8px;background:#181818;cursor:pointer}
.solution-preview img {display:block;width:100%;height:100%;object-fit:contain;transition:transform 500ms var(--curve),opacity 300ms var(--curve)}
.solution-preview:hover img,.solution-preview:focus-visible img {transform:translateY(-4px) scale(1.03)}
@media(max-width:760px) {.hero-proofs {margin-top:var(--s300)}.solution-preview {max-height:240px}}
@media(prefers-reduced-motion:reduce) {.solution-preview img {transition:opacity 300ms var(--curve)}.solution-preview:hover img,.solution-preview:focus-visible img {transform:none}}
.motion-reduced .solution-preview img {transition:opacity 300ms var(--curve)}
.motion-reduced .solution-preview:hover img,.motion-reduced .solution-preview:focus-visible img {transform:none}
.solution-card-top {gap:var(--s100);margin-bottom:var(--s200)}
.solution-card-top>.caption-3 {flex:1;min-width:0}
.solution-symbol {width:32px;height:32px}
.solution-arrow {background:transparent;color:var(--lime);width:44px;height:44px;min-width:44px;cursor:pointer;font:inherit;font-size:24px;line-height:32px}
.solution-title-button {border:0;background:none;color:inherit;padding:0;text-align:left;font:inherit;letter-spacing:inherit;cursor:pointer;min-height:44px}
.solution-title-button:hover {color:var(--lime)}
.solution-details-link {align-self:start;margin-top:var(--s200);padding:0;min-height:44px;border:0;background:none;color:var(--lime);text-align:left;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.solution-actions {margin-top:var(--s100)}
.scope-tags>button {display:inline-flex;align-items:center;gap:var(--s50);padding:var(--s75) var(--s100);min-height:44px;border:1px solid var(--line);border-radius:4px;background:#181818c9;color:var(--muted);font:inherit;cursor:pointer;transition:background-color 300ms var(--curve),color 300ms var(--curve),transform 500ms var(--curve)}
.scope-tags>button:hover {color:var(--lime);background:#272727;transform:translateY(-2px)}

.details-dialog {width:min(1080px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 48px);padding:0;border:1px solid #626548;border-radius:16px;background:#1a1a1a;color:var(--ink);box-shadow:0 32px 96px #0008;overflow:hidden}
.details-dialog[open] {display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}
.details-dialog::backdrop {background:#000b;backdrop-filter:blur(12px)}
.detail-header {display:flex;align-items:start;justify-content:space-between;gap:var(--s300);padding:var(--s300);background:#1f1f1f}
.detail-title-group {display:flex;align-items:center;gap:var(--s200);min-width:0}
.detail-title-group>div {min-width:0}
#detail-icon {display:grid;place-items:center;width:64px;height:64px;min-width:64px;border:1px solid #55593d;background:#131209;border-radius:8px}
#detail-icon .industry-icon {width:40px;height:40px}
#detail-icon.has-image {width:112px;height:80px;min-width:112px;padding:var(--s50);background:#181818}
.detail-solution-image {display:block;width:100%;height:100%;object-fit:contain}
.detail-header .eyebrow {color:var(--lime);margin-bottom:var(--s75);letter-spacing:.08em}
.detail-close {display:grid;place-items:center;width:48px;height:48px;min-width:48px;border:1px solid #5d6046;border-radius:8px;background:#272727;color:var(--ink);font-size:30px;line-height:36px;cursor:pointer;transition:transform 500ms var(--curve),background-color 300ms var(--curve)}
.detail-close:hover {background:#313131;transform:rotate(90deg)}
.detail-tabs {display:flex;align-items:center;gap:var(--s75);padding:var(--s100) var(--s300);border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:thin;flex-shrink:0}
.detail-tabs>button {min-height:44px;border:1px solid transparent;border-radius:8px;padding:var(--s75) var(--s100);background:transparent;color:var(--muted);white-space:nowrap;font-size:14px;line-height:20px;font-weight:700;cursor:pointer;transition:background-color 300ms var(--curve),color 300ms var(--curve)}
.detail-tabs>button:hover {background:#272727;color:var(--ink)}
.detail-tabs>button[aria-selected=true] {background:var(--lime);color:var(--bg)}
.detail-content {min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--s300);scrollbar-width:thin;scrollbar-color:#626548 #1f1f1f}
.detail-content>section>h3 {margin-top:var(--s300);margin-bottom:var(--s200)}
.detail-content>section>h3:first-child {margin-top:0}
.detail-lead {font-size:18px;line-height:28px;max-width:800px;margin-bottom:var(--s300)}
.detail-comparison {display:grid;grid-template-columns:1fr 1fr;gap:var(--s200)}
.detail-comparison article {background:#272727;border:1px solid #454837;border-radius:8px;padding:var(--s200)}
.detail-comparison .caption-3 {text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.detail-comparison article:last-child {border-color:#6d7136;background:#131209}
.detail-comparison article:last-child .caption-3 {color:var(--lime)}
.detail-comparison p {margin-top:var(--s100)}
.detail-list {padding-left:var(--s300);margin:var(--s200) 0;display:grid;gap:var(--s100);color:#d0d1c7}
.detail-list li::marker {color:var(--lime)}
.detail-callout {margin-top:var(--s300);border:1px solid #696d3e;border-radius:8px;background:#131209;padding:var(--s200)}
.detail-callout>.caption-3 {color:var(--lime);text-transform:uppercase;letter-spacing:.08em}
.detail-callout>.heading-5 {margin-top:var(--s75)}
.detail-callout>.body-6 {margin-top:var(--s100)}
.detail-flow {padding:0;margin:var(--s300) 0;list-style:none;display:grid;gap:var(--s100)}
.detail-flow>li {display:flex;gap:var(--s200);padding:var(--s200);border:1px solid #454837;border-radius:8px;background:#1f1f1f}
.flow-number {display:grid;place-items:center;min-width:32px;height:32px;border:1px solid #6b6e3b;border-radius:4px;color:var(--lime)}
.detail-flow p {margin-top:var(--s50)}
.detail-pairs {display:grid;gap:var(--s100);margin:var(--s200) 0}
.detail-pairs>div {display:grid;grid-template-columns:1fr 2fr;gap:var(--s200);padding:var(--s200);background:#272727;border:1px solid #3c3f32;border-radius:8px}
.detail-pairs dd {margin:0}
.detail-field-tags {display:flex;flex-wrap:wrap;gap:var(--s75)}
.detail-field-tags>span {display:block;background:#272727;border:1px solid #4b4f3a;border-radius:4px;padding:var(--s75) var(--s100);color:#d0d1c7}
.detail-note {color:var(--muted);margin-top:var(--s200);padding:var(--s200);border:1px solid #454837;border-radius:8px}
.metric-definition {padding:var(--s200);border:1px solid #454837;border-radius:8px;background:#272727;margin-top:var(--s200)}
.metric-definition h3 {color:var(--lime);margin-bottom:var(--s100)}
.detail-price-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s100)}
.detail-price-grid>div {display:grid;gap:var(--s100);background:#272727;border:1px solid #53573b;border-radius:8px;padding:var(--s200)}
.detail-price-grid strong {color:var(--lime);font-weight:600}
.detail-faq {display:grid;gap:var(--s75)}
.detail-faq details {border:1px solid #454837;border-radius:8px;background:#272727}
.detail-faq summary {padding:var(--s200);cursor:pointer;min-height:48px}
.detail-faq details>p {padding:0 var(--s200) var(--s200)}
.detail-footer {display:flex;justify-content:space-between;align-items:center;gap:var(--s200);padding:var(--s200) var(--s300);border-top:1px solid #454837;background:#1f1f1f}
.detail-footer>p {max-width:280px}
.detail-footer>div {display:flex;gap:var(--s100);flex-wrap:wrap;justify-content:end}
.detail-footer .button {gap:var(--s100)}
.related-solutions {display:grid;gap:var(--s100)}
.related-solutions>button {display:flex;align-items:center;gap:var(--s200);padding:var(--s100) var(--s200);min-height:64px;border:1px solid #55593c;border-radius:8px;background:#272727;color:var(--ink);text-align:left;cursor:pointer;transition:background-color 300ms var(--curve),transform 500ms var(--curve)}
.related-solutions>button:hover {background:#313131;transform:translateX(4px)}
.related-solutions>button>span:last-child {margin-left:auto;color:var(--lime)}
.motion-reduced .venue-packet {display:none}

@media(min-width:1101px) {.hero {column-gap:var(--s600)}}
@media(max-width:1100px) {
  .demo-panel {min-height:360px}
  .venue-hotspot {padding-inline:var(--s75);gap:var(--s50)}
  .detail-footer {align-items:start}
  .detail-footer>p {max-width:200px}
}
@media(max-width:760px) {
  .hero-visual {max-width:560px}
  .venue-stage {margin-top:0}
  .venue-image {filter:none}
  .demo-panel {min-height:320px}
  .panel-header .demo-label {max-width:112px}
  .demo-steps {gap:var(--s50)}
  .demo-steps li {font-size:12px;line-height:16px}
  .demo-actions .button {width:100%}
  .details-dialog {width:calc(100% - 24px);max-height:calc(100dvh - 24px);border-radius:16px}
  .detail-header {padding:var(--s200);gap:var(--s100)}
  .detail-header h2 {font-size:24px;line-height:32px;overflow-wrap:anywhere}
  .detail-title-group {gap:var(--s100)}
  #detail-icon {width:40px;height:40px;min-width:40px}
  #detail-icon .industry-icon {width:28px;height:28px}
  #detail-icon.has-image {display:grid;width:72px;height:56px;min-width:72px}
  .detail-header .eyebrow {font-size:12px;line-height:16px;letter-spacing:0}
  .detail-close {width:44px;height:44px;min-width:44px}
  .detail-tabs {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:var(--s75) var(--s100);gap:var(--s50);overflow:visible}
  .detail-tabs>button {padding-inline:var(--s100)}
  .detail-tabs>button:last-child {grid-column:span 2}
  .detail-content {padding:var(--s200)}
  .detail-lead {font-size:16px;line-height:24px}
  .detail-comparison {grid-template-columns:1fr}
  .detail-pairs>div {grid-template-columns:1fr;gap:var(--s75)}
  .detail-flow>li {gap:var(--s100);padding:var(--s100)}
  .detail-price-grid {grid-template-columns:1fr}
  .detail-footer {display:block;padding:var(--s100) var(--s200)}
  .detail-footer>p {max-width:none;font-size:12px;line-height:16px;margin-bottom:var(--s75)}
  .detail-footer>div {display:grid;grid-template-columns:1fr 1fr;gap:var(--s75)}
  .detail-footer .button {font-size:14px;line-height:20px;gap:var(--s50);padding:var(--s75)}
  .detail-footer .button:only-child {grid-column:1/-1}
}
@media(max-width:390px) {
  .detail-title-group {gap:var(--s75)}
  #detail-icon {display:none}
  #detail-icon.has-image {display:grid}
  .demo-panel {min-height:340px}
  .detail-footer>div {grid-template-columns:1fr}
  .detail-footer .button {min-height:44px}
  .demo-steps li {font-size:12px}
}
@media(prefers-reduced-motion:reduce) {.venue-packet{display:none}}
