/* ==========================================================================
   Case-longread — smalle kolomlayout voor cases met doorlopend verhaal
   en schermen in de tekst (i.p.v. grote hero-afbeelding + vaste template).
   Gebruikt door: /cases/van-zendesk-naar-maatwerk/
   ========================================================================== */

.case-longread { width: 864px; max-width: 100%; margin: 0 auto; }

/* ---- Hero ---- */
.case-longread-hero { position: relative; overflow: hidden; padding-top: 56px; padding-bottom: 24px; }
.case-longread-hero__inner { display: flex; flex-direction: column; gap: 20px; }
.case-longread__eyebrow {
  display: inline-flex; align-items: center; gap: 10px; align-self: flex-start;
  border: 1px solid rgba(243,146,0,0.4); border-radius: var(--r-pill); padding: 7px 18px;
}
.case-longread__eyebrow .material-symbols-outlined { font-size: 17px; color: var(--c-orange); }
.case-longread__eyebrow span:last-child { color: #f5b661; font-size: 13px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; }
.case-longread__title { font-family: var(--font-head); font-weight: 900; font-size: 52px; line-height: 1.08; color: #fff; margin: 0; text-wrap: balance; }
.case-longread__lead { font-size: 20px; line-height: 1.65; color: #a9a9a9; margin: 0; text-wrap: pretty; }
.case-longread__meta { font-size: 14.5px; color: #c2c2c2; display: flex; flex-wrap: wrap; gap: 6px 10px; margin-top: 20px; }
.case-longread__meta strong { font-family: monospace; font-size: 10.5px; letter-spacing: 1.2px; text-transform: uppercase; color: #6b6b6b; font-weight: 400; margin-right: 8px; }
.case-longread__meta span:not(:last-child)::after { content: "·"; margin-left: 10px; color: #444; }

/* ---- Feiten-bar (horizontaal, i.p.v. sidebar) ---- */
.case-longread-facts-wrap { background: var(--c-black); padding-bottom: 8px; }
.case-longread-facts {
  display: grid; grid-template-columns: 0.8fr 1.6fr 1fr;
  background: var(--c-panel-glass); border: 1px solid var(--c-border-dark); border-radius: var(--r-card);
  overflow: hidden;
}
.case-longread-facts__col { padding: 20px 24px; border-right: 1px solid var(--c-border-dark); display: flex; flex-direction: column; gap: 4px; }
.case-longread-facts__col:last-child { border-right: 0; }
.case-longread-facts__label { font-family: monospace; font-size: 11px; color: #888; letter-spacing: 1px; text-transform: uppercase; }
.case-longread-facts__value { font-size: 16px; color: #fff; font-weight: 500; }
.case-longread-facts__value--sm { font-size: 13.5px; color: #ddd; line-height: 1.4; font-weight: 400; }
.case-longread-facts__tags { display: flex; gap: 5px; flex-wrap: wrap; margin-top: 2px; }

/* ---- Sticky cta-bar: schuift omhoog zodra er gescrold is --------------- */
.cta-bar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 60;
  background: rgba(10,10,10,0.94); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  border-top: 1px solid var(--c-border-dark);
  transform: translateY(100%); transition: transform 0.3s ease;
}
.cta-bar.is-visible { transform: translateY(0); }
.cta-bar__inner {
  width: 864px; max-width: 100%; margin: 0 auto; padding: 14px var(--pad-x);
  display: flex; align-items: center; justify-content: flex-end; gap: 20px;
}
.cta-bar__text { font-size: 14.5px; color: #ccc; margin-right: auto; }
.cta-bar__cta { font-size: 15px; padding: 13px 26px; white-space: nowrap; }

/* ---- Genummerde sectie (01/02/03) ---- */
.case-longread-sec { background: var(--c-black); }
.case-longread-sec--pad-lg { padding-top: 56px; }
.case-longread-sec--pad-md { padding-top: 44px; }
.case-longread-sec__head { display: flex; align-items: baseline; gap: 16px; margin-bottom: 16px; }
.case-longread-sec__num { font-family: monospace; font-size: 20px; font-weight: 600; color: var(--c-orange); }
.case-longread-sec__title { font-family: var(--font-head); font-weight: 800; font-size: 30px; color: #fff; margin: 0; }
.case-longread-sec p { font-size: 18px; line-height: 1.8; color: #b4b4b4; margin: 0 0 14px; text-wrap: pretty; }
.case-longread-sec p:last-child { margin-bottom: 0; }

/* ---- Checklist-paneel (03) ---- */
.case-longread-panel {
  background: var(--c-panel-glass); border: 1px solid var(--c-border-dark); border-radius: var(--r-card-lg);
  padding: 36px 40px; display: flex; flex-direction: column; gap: 18px;
}
.case-longread-panel .case-longread-sec__head { margin-bottom: 0; }
.case-longread-panel .checks { gap: 14px; }
.case-longread-panel .checks__row { align-items: flex-start; }
.case-longread-panel .checks__row .material-symbols-outlined { margin-top: 1px; }
.case-longread-panel .checks__row span:last-child { color: #cfcfcf; }

/* ---- Schermen / mockups met genummerde callouts ---- */
.case-screen-sec { background: var(--c-black); padding-top: 32px; }
.case-screen-sec--tight { padding-top: 24px; }
.case-screen-sec__wrap { display: flex; flex-direction: column; gap: 14px; }
.case-screen { position: relative; }
.case-screen__badge {
  position: absolute; top: 14px; right: 14px; z-index: 4; font-family: monospace; font-size: 11px;
  color: #0a0a0a; background: var(--c-orange); padding: 3px 10px; border-radius: var(--r-pill); font-weight: 600;
}
.case-screen__frame { background: #fff; border-radius: 14px; overflow: hidden; box-shadow: 0 30px 70px rgba(0,0,0,0.5); border: 1px solid #e6e2da; }
.case-screen__bar { display: flex; align-items: center; gap: 8px; padding: 12px 18px; background: #f3f0ea; border-bottom: 1px solid #e6e2da; }
.case-screen__dot { width: 11px; height: 11px; border-radius: 50%; }
.case-screen__dot--red { background: #e05a4d; }
.case-screen__dot--yellow { background: #e8b02c; }
.case-screen__dot--green { background: #4caf6d; }
.case-screen__bar-label { margin-left: 10px; font-family: monospace; font-size: 12px; color: #6d675e; }
.case-screen__body { padding: 22px 26px; }

.case-callout {
  position: absolute; top: -11px; right: -11px; width: 24px; height: 24px; border-radius: 50%;
  background: var(--c-red); color: #fff; font-family: monospace; font-size: 13px; font-weight: 700;
  display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 12px rgba(228,0,58,0.4); border: 2px solid #fff;
}
.case-callout--inline {
  position: static; display: inline-flex; width: 18px; height: 18px; border: none; box-shadow: none;
  font-size: 11px; vertical-align: middle;
}

.case-screen__caption { display: flex; gap: 18px; align-items: baseline; }
.case-screen__caption-label { font-family: monospace; font-size: 12px; color: #7d818a; white-space: nowrap; }
.case-screen__caption-text { font-size: 14px; color: #a9a9a9; line-height: 1.5; }
.case-screen__caption-text strong { color: #fff; }

/* ---- Resultaat: before/na-vergelijking ---- */
.case-results--longread { padding-top: 72px; padding-bottom: 72px; margin-top: 48px; }
.case-results--longread .case-longread { display: flex; flex-direction: column; gap: 32px; }
.case-results--longread .case-results__title { font-size: 38px; }

.case-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; align-items: stretch; }
.case-compare__col { border-radius: var(--r-card-lg); padding: 30px 30px 32px; display: flex; flex-direction: column; gap: 18px; }
.case-compare__col--then { background: #fff; border: 1px solid var(--c-border-light-2); }
.case-compare__col--now { position: relative; overflow: hidden; background: var(--c-black-2); box-shadow: 0 22px 54px rgba(228,0,58,0.18); padding-bottom: 28px; }
.case-compare__col--now::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: var(--grad); }
.case-compare__head { display: flex; align-items: baseline; gap: 10px; }
.case-compare__eyebrow { font-family: monospace; font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase; }
.case-compare__col--then .case-compare__eyebrow { color: #7a7266; }
.case-compare__col--now .case-compare__eyebrow { color: #f5b661; }
.case-compare__name { font-family: var(--font-head); font-weight: 800; font-size: 22px; }
.case-compare__col--then .case-compare__name { color: #6b6157; }
.case-compare__col--now .case-compare__name { color: #fff; }
.case-compare__list { display: flex; flex-direction: column; gap: 12px; }
.case-compare__row { display: flex; gap: 11px; align-items: flex-start; }
.case-compare__row .material-symbols-outlined { font-size: 19px; margin-top: 1px; }
.case-compare__col--then .case-compare__row .material-symbols-outlined { color: #b9afa2; }
.case-compare__col--then .case-compare__row span:last-child { font-size: 15px; line-height: 1.55; color: #7d7368; }
.case-compare__col--now .case-compare__row .material-symbols-outlined { color: var(--c-orange); }
.case-compare__col--now .case-compare__row span:last-child { font-size: 15px; line-height: 1.55; color: #efeae4; }
.case-compare__stats { border-top: 1px solid var(--c-border-dark); padding-top: 16px; font-size: 13.5px; line-height: 1.6; color: #9a9a9a; }

.case-results--longread .case-quote { padding: 40px 44px; }

/* ---- AI-agent case: flow, techniek en resultaten ---- */
.case-ai-chat-grid { display: grid; grid-template-columns: 1.25fr 0.75fr; gap: 18px; align-items: stretch; }
.case-ai-knowledge-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.case-ai-flow { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: 14px; align-items: stretch; }
.case-ai-flow__col,
.case-ai-flow__answer {
  border: 1px solid #eee7db; background: #fdfcfa; border-radius: 12px; padding: 15px 16px;
  display: flex; flex-direction: column; gap: 10px;
}
.case-ai-flow__label { font-family: monospace; font-size: 10.5px; font-weight: 700; color: #8a8175; letter-spacing: 0.5px; text-transform: uppercase; }
.case-ai-flow__label--green { color: #2e7d4f; }
.case-ai-flow__item { display: flex; align-items: center; gap: 8px; background: #fff; border: 1px solid #eee7db; border-radius: 8px; padding: 9px 11px; }
.case-ai-flow__item .material-symbols-outlined { font-size: 16px; color: #d97b00; }
.case-ai-flow__item span:last-child { font-size: 12px; color: #16130f; }
.case-ai-flow__agent {
  position: relative; border: 1.5px solid transparent; border-radius: 12px; padding: 16px;
  background: linear-gradient(#fff,#fff) padding-box, linear-gradient(135deg, #e4003a, #f39200) border-box;
  display: flex; flex-direction: column; gap: 10px; align-items: center; justify-content: center; text-align: center;
}
.case-ai-flow__icon { width: 52px; height: 52px; border-radius: 14px; background: var(--grad); display: flex; align-items: center; justify-content: center; box-shadow: 0 12px 30px rgba(228,0,58,0.3); }
.case-ai-flow__icon .material-symbols-outlined { font-size: 28px; color: #fff; }
.case-ai-flow__name { font-family: var(--font-head); font-weight: 800; font-size: 16px; color: #16130f; }
.case-ai-flow__text { font-size: 11.5px; color: #6b6157; line-height: 1.5; }
.case-ai-flow__tag { font-family: monospace; font-size: 10px; font-weight: 700; color: #d97b00; background: #fff4e2; border-radius: 6px; padding: 3px 9px; letter-spacing: 0.5px; }
.case-ai-flow__arrow { align-self: center; font-size: 26px; color: #c9bfb1; }

.case-tech-panel {
  background: #0e0e0e; border: 1px solid #232323; border-radius: var(--r-card-lg);
  padding: 30px 34px; display: flex; flex-direction: column; gap: 18px;
}
.case-tech-panel__head,
.case-tech-panel__foot { display: flex; align-items: center; gap: 11px; }
.case-tech-panel__head .material-symbols-outlined { font-size: 19px; color: var(--c-orange); }
.case-tech-panel__head span:last-child { font-family: monospace; font-size: 12px; letter-spacing: 1.5px; text-transform: uppercase; color: #8a8175; }
.case-tech-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 34px; }
.case-tech-step { display: flex; gap: 12px; align-items: flex-start; }
.case-tech-step span { font-family: monospace; font-size: 12px; font-weight: 700; color: var(--c-orange); flex: 0 0 auto; margin-top: 2px; }
.case-tech-step p { font-size: 13.5px; color: #b4b4b4; line-height: 1.55; margin: 0; }
.case-tech-panel__foot { border-top: 1px solid #232323; padding-top: 16px; }
.case-tech-panel__foot .material-symbols-outlined { font-size: 17px; color: #35b869; }
.case-tech-panel__foot span:last-child { font-size: 13px; color: #9a9083; line-height: 1.5; }

.case-ai-results { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.case-ai-result {
  background: #fff; border: 1px solid var(--c-border-light-2); border-radius: var(--r-card);
  padding: 24px 26px; display: flex; gap: 14px; align-items: flex-start; box-shadow: 0 12px 34px rgba(0,0,0,0.06);
}
.case-ai-result .material-symbols-outlined {
  width: 34px; height: 34px; border-radius: 9px; background: rgba(243,146,0,0.12);
  flex: 0 0 auto; display: flex; align-items: center; justify-content: center; font-size: 20px; color: #d97b00;
}
.case-ai-result span:last-child { font-size: 16px; color: #3a332c; line-height: 1.5; }

/* ---- Case-nav (smalle kolom i.p.v. volle container) ---- */
.case-nav--longread .case-nav__inner { width: 864px; max-width: 100%; margin: 0 auto; padding: 0 var(--pad-x); }

/* ---- Footer kicker ---- */

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 1080px) {
  .case-longread { width: 100%; padding: 0 var(--pad-x); }
  .case-longread-facts-wrap .case-longread,
  .case-nav--longread .case-nav__inner { padding: 0 var(--pad-x); }
  .case-longread__title { font-size: 40px; }
  .case-compare { grid-template-columns: 1fr; }
  .case-ai-chat-grid,
  .case-ai-knowledge-grid { grid-template-columns: 1fr; }
  .case-ai-flow { grid-template-columns: 1fr; }
  .case-ai-flow__arrow { transform: rotate(90deg); }
}

@media (max-width: 700px) {
  .case-longread { padding: 0 24px; }
  .case-longread-facts-wrap .case-longread,
  .case-nav--longread .case-nav__inner { padding: 0 24px; }
  .case-longread-hero { padding-top: 38px; }
  .case-longread__title { font-size: 30px; }
  .case-longread-facts { grid-template-columns: 1fr; }
  .case-longread-facts__col { border-right: 0; border-bottom: 1px solid var(--c-border-dark); }
  .case-longread-facts__col:last-child { border-bottom: 0; }
  .case-screen__body { padding: 16px 18px; }
  .case-results--longread .case-quote { padding: 28px 26px; }
  .case-tech-grid,
  .case-ai-results { grid-template-columns: 1fr; }
  .case-tech-panel { padding: 24px 22px; }
  .cta-bar__inner { padding: 12px 24px; }
}

@media (max-width: 560px) {
  .cta-bar__text { display: none; }
  .cta-bar__inner { justify-content: center; }
}
