/* Workflow examples, product explanation and FAQ. */
.workflow-section { max-width: 1440px; padding-block: clamp(64px,6vw,96px); }
.workflow-section .section-heading h2 { font-size: clamp(36px,4.3vw,64px); }
.workflow-section .section-heading > p { font-size: clamp(17px,1.5vw,22px); margin-top: 18px; }
.workflow-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin: 36px 0 30px; }
.workflow-tab { position: relative; display: flex; align-items: center; gap: 18px; min-width: 0; padding: 22px 20px; border: 1px solid #d0d4dd; border-bottom: 3px solid #d0d4dd; border-radius: 9px; background: #fff; text-align: left; color: var(--ink); transition: background .15s,border-color .15s; }
.workflow-tab[aria-selected="true"] { border-bottom-color: var(--orange); background: #eef0f6; }
.workflow-tab:hover { background: #f5f6f9; }
.workflow-tab > img { flex: 0 0 84px; width: 84px; height: 58px; object-fit: cover; border-radius: 4px; box-shadow: 0 3px 7px #14182020; }
.workflow-tab > span { display: grid; gap: 7px; min-width: 0; }
.workflow-tab strong { font-size: clamp(16px,1.45vw,21px); font-weight: 700; line-height: 1.2; letter-spacing: -.035em; }
.workflow-tab span span { color: var(--slate); font-size: 13px; line-height: 1.5; }
.workflow-stage { position: relative; aspect-ratio: 16/9; overflow: hidden; border-radius: 12px; background: var(--deep-slate); box-shadow: 0 12px 36px #29344612; }
.workflow-stage video { display: block; width: 100%; height: 100%; object-fit: contain; }
.workflow-play { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 16px; margin: auto; width: max-content; height: fit-content; max-width: 90%; padding: 16px 24px 16px 18px; border: 1px solid #ffffff80; border-radius: 100px; background: #fff; color: var(--ink); box-shadow: 0 8px 40px #14182033; }
.workflow-play > svg { box-sizing: content-box; padding: 15px; width: 24px; height: 24px; background: var(--orange); color: white; border-radius: 50%; }
.workflow-play > span { display: grid; gap: 4px; text-align: left; font-size: 16px; font-weight: 650; }
.workflow-play small { color: var(--slate); font-weight: 450; font-size: 13px; }
.workflow-play:hover { background: #fafbfc; transform: translateY(-2px); }
.workflow-description { display: flex; align-items: flex-start; justify-content: space-between; gap: 36px; padding: 28px 0 24px; }
.workflow-description h3 { font-size: clamp(23px,2.1vw,31px); line-height: 1.25; letter-spacing: -.04em; font-weight: 700; }
.workflow-description p { max-width: 820px; margin-top: 12px; color: var(--slate); font-size: 16px; line-height: 1.7; }
.workflow-duration { color: var(--slate); white-space: nowrap; font-size: 13px; line-height: 2; }
.workflow-story { margin: 0; padding: 24px 0 0; list-style: none; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 28px; border-top: 1px solid var(--line); }
.workflow-story li { display: grid; grid-template-columns: 24px 1fr; gap: 8px 8px; align-content: start; }
.workflow-story li > span { color: var(--orange); font-size: 13px; font-weight: 650; padding-top: 2px; }
.workflow-story strong { font-size: 14px; line-height: 1.5; font-weight: 650; }
.workflow-story p { grid-column: 2; font-size: 13px; color: var(--slate); line-height: 1.7; }
.workflow-bottom { margin-top: 32px; display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; }
.workflow-bottom p { max-width: 730px; color: var(--slate); font-size: 12px; line-height: 1.7; }
.workflow-bottom p span { display: block; margin-top: 4px; }
.workflow-bottom .text-link { flex-shrink: 0; font-size: 14px; }
.workflow-ended { position: absolute; inset: 0 0 44px; display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 28px; text-align: center; background: #424d63ed; color: #fff; }
.workflow-ended h3 { font-size: clamp(24px,3vw,40px); letter-spacing: -.04em; }
.workflow-ended p { font-size: 16px; line-height: 1.6; margin: 16px 0 26px; }
.workflow-ended > div { display: flex; justify-content: center; flex-wrap: wrap; gap: 16px; }
.workflow-ended .button-outline { color: #fff; border-color: #ffffff80; }
.workflow-error { margin-top: 18px; padding: 12px; background: #fff3ee; color: #a5340e; }
.editorial-heading h2, .faq-section h2, .proof-intro h2 { font-size: clamp(34px,3.6vw,54px); line-height: 1.1; letter-spacing: -.047em; font-weight: 720; }
.editorial-heading > p { margin-top: 22px; color: var(--slate); font-size: clamp(17px,1.5vw,21px); line-height: 1.65; max-width: 760px; }
.handoff-section { padding-block: clamp(64px,6vw,96px); background: #f1f3f7; }
.handoff-section .editorial-heading { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 70px; }
.handoff-section .editorial-heading p { margin: 0; }
.handoff-steps, .pilot-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px; margin-top: 48px; }
.handoff-steps article + article { border-left: 1px solid #cbd0da; padding-left: 36px; }
.step-number { display: block; color: var(--orange); font-size: 17px; font-weight: 650; margin-bottom: 14px; }
.handoff-steps h3, .pilot-steps h3 { font-size: clamp(20px,1.7vw,26px); font-weight: 650; line-height: 1.25; letter-spacing: -.035em; margin-bottom: 16px; }
.handoff-steps p, .pilot-steps p { font-size: 16px; line-height: 1.75; color: var(--slate); }
.integration-section { display: grid; grid-template-columns: 1fr 1.15fr; align-items: center; gap: 90px; padding-block: clamp(80px,8vw,128px); }
.integration-section .editorial-heading > p + p { font-size: 16px; }
.integration-nodes { display: flex; align-items: center; gap: 14px; }
.integration-node { flex: 1; min-width: 0; display: grid; justify-items: center; align-content: center; gap: 18px; min-height: 160px; padding: 18px 12px; text-align: center; background: #f6f7fa; border: 1px solid #d6dbe5; border-radius: 10px; }
.integration-node-brand { border-color: #f94d0f70; background: #fff5ef; }
.integration-node strong { font-size: 13px; line-height: 1.5; max-width: 120px; }
.integration-node > img { width: 42px; height: 38px; object-fit: contain; }
.node-symbol { display: block; width: 34px; height: 38px; color: var(--deep-slate); }
.node-symbol svg { width: 100%; height: 100%; }
.integration-arrow { flex-shrink: 0; color: var(--slate); }
.integration-arrow svg { width: 22px; }
.integration-diagram > p { margin: 22px auto 0; border-top: 1px solid #cbd0da; padding-top: 18px; color: var(--slate); text-align: center; font-size: 13px; line-height: 1.6; }
.proof-section { background: var(--deep-slate); color: #fff; padding: 54px 0 24px; }
.proof-intro { display: grid; grid-template-columns: .8fr 1fr; align-items: center; gap: 64px; }
.proof-intro > img { width: 100%; border-radius: 8px; }
.proof-intro h2 { font-size: clamp(30px,3vw,44px); }
.proof-intro p { margin-top: 22px; color: #e0e4ed; line-height: 1.7; font-size: 16px; }
.proof-intro .proof-small { font-size: 12px; margin-top: 16px; }
.proof-recording > summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-block: 24px; margin-top: 16px; font-size: 15px; font-weight: 550; cursor: pointer; list-style: none; border-top: 1px solid #ffffff35; }
.proof-recording > summary::-webkit-details-marker { display: none; }
.proof-recording[open] > summary svg { transform: rotate(90deg); }
.proof-recording .comparison-section { color: var(--ink); border-radius: 10px; margin-bottom: 24px; padding-block: 40px; }
.proof-recording .comparison-section > .page { width: calc(100% - 48px); }
.proof-recording .comparison-heading h2 { font-size: clamp(30px,3vw,46px); }
.proof-recording .comparison-heading > p { font-size: 16px; }
.pilot-section { padding-block: clamp(80px,8vw,120px); }
.pilot-steps { padding: 0; list-style: none; margin-bottom: 38px; }
.pilot-steps li { border-top: 1px solid var(--line); padding-top: 24px; }
.preview-team { padding-block: 70px; background: #f3f5f8; }
.preview-team > .page { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: 64px; }
.preview-team .editorial-heading p { font-size: 17px; }
.preview-team .team-portraits { aspect-ratio: auto; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
.preview-team .portrait { position: static; width: auto; transform: none; opacity: 1; }
.preview-team .portrait img { border-radius: 8px; aspect-ratio: .86; }
.preview-team .portrait figcaption { text-align: left; font-size: 15px; }
.faq-section { padding-block: clamp(70px,7vw,110px); display: grid; grid-template-columns: .8fr 1.2fr; gap: 70px; }
.faq-section details { border-bottom: 1px solid var(--line); }
.faq-section details:first-child { border-top: 1px solid var(--line); }
.faq-section summary { padding-block: 24px; display: flex; align-items: center; justify-content: space-between; gap: 24px; cursor: pointer; font-size: 16px; line-height: 1.5; font-weight: 550; list-style: none; }
.faq-section summary::-webkit-details-marker { display: none; }
.faq-section summary svg { flex: 0 0 20px; }
.faq-section details[open] summary svg { transform: rotate(180deg); }
.faq-section details p { padding: 0 40px 26px 0; color: var(--slate); font-size: 15px; line-height: 1.8; }
@media (min-width: 1700px) { .workflow-tab { padding-block: 26px; } }
@media (max-width: 1100px) {
  .workflow-tab { gap: 12px; padding: 18px 14px; }
  .workflow-tab > img { flex-basis: 58px; width: 58px; height: 45px; }
  .integration-section, .faq-section { gap: 40px; }
  .integration-nodes { gap: 8px; }
  .preview-team > .page { gap: 36px; }
}
@media (max-width: 800px) {
  .workflow-tabs { gap: 9px; margin-top: 28px; }
  .workflow-tab { flex-direction: column; align-items: flex-start; padding: 14px 12px; gap: 12px; }
  .workflow-tab > img { flex-basis: auto; width: 100%; height: auto; aspect-ratio: 16/9; }
  .workflow-tab strong { font-size: 14px; }
  .workflow-tab span span { font-size: 11px; }
  .workflow-description { flex-direction: column; gap: 10px; padding-top: 22px; }
  .workflow-description p { font-size: 15px; }
  .workflow-story { gap: 18px; }
  .workflow-story li { grid-template-columns: 1fr; gap: 8px; }
  .workflow-story p { grid-column: 1; }
  .workflow-bottom { flex-direction: column; gap: 12px; }
  .handoff-section .editorial-heading, .integration-section, .preview-team > .page, .faq-section { grid-template-columns: 1fr; gap: 32px; }
  .handoff-section .editorial-heading p { max-width: 580px; }
  .handoff-steps, .pilot-steps { gap: 22px; }
  .handoff-steps article + article { padding-left: 22px; }
  .handoff-steps p, .pilot-steps p { font-size: 14px; }
  .proof-intro { grid-template-columns: .8fr 1fr; gap: 28px; }
  .proof-intro p { font-size: 14px; }
  .integration-node { min-height: 140px; }
}
@media (max-width: 520px) {
  .workflow-tab { padding: 10px 8px; }
  .workflow-tab strong { font-size: 12px; letter-spacing: -.025em; overflow-wrap: anywhere; }
  .workflow-tab span span { display: none; }
  .workflow-tab > span { gap: 0; }
  .workflow-tabs { gap: 7px; margin-bottom: 18px; }
  .workflow-play { padding: 10px 15px 10px 10px; gap: 10px; }
  .workflow-play > svg { padding: 10px; width: 18px; height: 18px; }
  .workflow-play > span { font-size: 13px; }
  .workflow-play small { font-size: 11px; }
  .workflow-story { grid-template-columns: 1fr; gap: 18px; }
  .workflow-story li { grid-template-columns: 24px 1fr; gap: 5px 8px; }
  .workflow-story p { grid-column: 2; }
  .handoff-steps, .pilot-steps { grid-template-columns: 1fr; gap: 26px; margin-top: 32px; }
  .handoff-steps article + article { padding: 24px 0 0; border-left: 0; border-top: 1px solid #cbd0da; }
  .step-number { margin-bottom: 10px; }
  .handoff-steps h3, .pilot-steps h3 { margin-bottom: 10px; }
  .proof-intro { grid-template-columns: 1fr; }
  .proof-intro > img { max-width: 440px; }
  .integration-node { padding: 14px 7px; min-height: 136px; }
  .integration-node strong { font-size: 10px; overflow-wrap: anywhere; }
  .integration-nodes { gap: 6px; }
  .integration-arrow svg { width: 16px; }
  .preview-team .team-portraits { gap: 12px; }
  .preview-team .portrait figcaption { font-size: 12px; }
  .workflow-ended { inset: 0 0 32px; padding: 12px; }
  .workflow-ended h3 { font-size: 19px; }
  .workflow-ended p { display: none; }
  .workflow-ended > div { margin-top: 12px; gap: 8px; }
  .workflow-ended .button { min-height: 36px; padding: 8px 12px; font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) { .workflow-tab, .workflow-play { transition: none; } .workflow-play:hover { transform: none; } }

/* Open editorial vignettes in the folded-paper brand language. */
.combined-section { background:#f1f3f7; padding-block:clamp(64px,7vw,104px); }
.combined-layout { display:block; }
.combined-layout .editorial-heading { max-width:1100px; }
.combined-layout .editorial-heading h2 { font-size:clamp(36px,4.1vw,64px); letter-spacing:-.055em; }
.reason-gallery { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(16px,2.5vw,40px); margin-top:clamp(30px,3vw,48px); }
.reason-vignette { min-width:0; margin:0; }
.reason-art { position:relative; aspect-ratio:1.15; }
.reason-art img { width:100%; height:100%; object-fit:contain; display:block; }
.reason-vignette figcaption { padding:16px 8px 0; text-align:center; }
.reason-vignette h3 { font-size:clamp(17px,1.6vw,24px); font-weight:650; line-height:1.35; letter-spacing:-.035em; max-width:265px; margin:0 auto; }
.combined-conclusion { margin-top:clamp(40px,4vw,64px); padding-top:clamp(28px,3vw,42px); border-top:1px solid #d5dae4; text-align:center; }
.combined-conclusion h3 { margin:0; color:var(--ink); font-size:clamp(24px,2.2vw,34px); font-weight:650; letter-spacing:-.04em; line-height:1.3; }
.combined-conclusion h3 span { color:var(--orange); }
.combined-summary { margin:14px auto 0; color:var(--slate); font-size:clamp(15px,1.25vw,18px); line-height:1.75; max-width:790px; }
.technical-proof .proof-eyebrow { margin:0 0 18px; color:var(--slate); font-size:12px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
@media(max-width:900px) { .reason-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 24px; } .reason-art { aspect-ratio:1.4; } .reason-vignette h3 { font-size:20px; } }
@media(max-width:520px) { .reason-gallery { gap:28px 14px; margin-top:28px; } .reason-art { aspect-ratio:1.1; } .reason-vignette figcaption { padding:12px 0 0; } .reason-vignette h3 { font-size:17px; line-height:1.4; } }
