/* Real software case and synthetic service examples. No execution or data collection. */
.real-case { padding: 16px 0 55px; }
.real-case > h2 { max-width: 900px; margin-top: 24px; font-size: clamp(34px, 4vw, 49px); font-weight: 350; }
.real-case-intro { max-width: 840px; margin-top: 22px; color: #bed3cc; font-size: 17px; line-height: 1.8; }
.case-phase { padding-top: 35px; padding-bottom: 25px; }
.case-phase + .case-phase { margin-top: 30px; padding-top: 55px; border-top: 1px solid #426568; }
.case-phase h3 { max-width: 900px; font-size: clamp(29px, 3.3vw, 40px); font-weight: 350; }
.case-phase-lead { margin-top: 19px; max-width: 850px; color: #bed3cc; font-size: 16px; line-height: 1.8; }
.case-screen-link { display: block; margin-top: 35px; color: inherit; border: 1px solid #42636b; background: #0d303b; text-decoration: none; }
.case-screen-link:hover { border-color: #8addc8; }
.case-screen-link:focus-visible { outline-color: #f5bd4f; }
.case-screen { margin: 0; }
.case-screen img { display: block; width: 100%; height: auto; }
.case-screen figcaption { padding: 25px 28px; border-top: 1px solid #42636b; }
.case-screen figcaption strong { display: block; color: #edf3ec; font-size: 22px; font-weight: 400; line-height: 1.4; }
.case-screen figcaption p { max-width: 970px; margin-top: 12px; color: #bed3cc; font-size: 15px; line-height: 1.85; }
.case-screen figcaption small { display: block; margin-top: 13px; color: #a6c0b7; font-size: 12px; line-height: 1.7; }
.case-screen-open { display: block; margin-top: 18px; color: #a0e3d1; font-size: 13px; }
.case-conclusion { padding: 26px 29px; margin-top: 28px; border-left: 2px solid #8addc8; background: #153a44; }
.case-conclusion p { max-width: 930px; color: #c3d8ce; font-size: 15px; line-height: 1.8; }
.case-conclusion .text-link { display: inline-block; margin-top: 19px; color: #a0e3d1; white-space: normal; }
.service-examples { margin-top: 28px; border-block: 1px solid #527574; padding-block: 24px; }
.service-examples > summary { cursor: pointer; color: #d5e9df; font-size: 23px; font-weight: 400; padding-block: 14px; line-height: 1.5; }
.service-example-intro { max-width: 840px; margin-block: 20px 15px; color: #b8d0c6; font-size: 15px; }
.sample-case { padding: 20px 0 56px; }
.sample-case h2 { margin-top: 24px; max-width: 780px; }
.sample-intro { margin-top: 23px; max-width: 780px; color: #bed3cc; font-size: 16px; }
.sample-route { list-style: none; padding: 20px 0; margin: 32px 0 38px; display: flex; flex-wrap: wrap; gap: 12px 28px; border-block: 1px solid #426568; }
.sample-route a { display: inline-flex; align-items: center; gap: 9px; min-height: 36px; color: #bce3d5; font-size: 13px; text-decoration: none; }
.sample-route a:hover { text-decoration: underline; }
.sample-route span { font: 11px Consolas, monospace; color: #8addc8; }
.sample-grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 42px; align-items: start; }
.sample-grid > div { min-width: 0; }
.sample-grid h3 { font-size: 24px; font-weight: 400; margin-bottom: 20px; }
.sample-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 14px; color: #dce9e0; }
.sample-table caption { text-align: left; color: #abc6bd; font-size: 12px; line-height: 1.7; margin-bottom: 17px; }
.sample-table th, .sample-table td { padding: 14px 9px; text-align: left; vertical-align: top; border-bottom: 1px solid #426568; overflow-wrap: break-word; }
.sample-table thead th { color: #abcbbd; border-top: 1px solid #6b8d85; font-size: 11px; font-weight: 500; }
.sample-table thead th:first-child { width: 45px; }
.sample-table thead th:nth-child(2) { width: 94px; }
.sample-table thead th:last-child { width: 59px; }
.sample-table tbody th { font: 12px/1.8 Consolas, monospace; color: #acc9bd; font-weight: 400; }
.sample-case code { font: 12px/1.7 Consolas, monospace; }
.missing-value { color: #ffe3ab; }
.sample-rules { margin-top: 27px; padding: 20px 23px; background: #10343e; border: 1px solid #45696a; }
.sample-rules summary { cursor: pointer; color: #d5e7dc; font-size: 14px; line-height: 1.6; }
.sample-rules ol { margin: 20px 0 0; padding-left: 20px; color: #bcd1c7; font-size: 14px; }
.sample-rules li + li { margin-top: 12px; }
.sample-rules p { font-size: 12px; color: #aac5b9; margin-top: 20px; }
.sample-result { list-style: none; padding: 0; margin: 0; display: grid; gap: 15px; }
.sample-finding { padding: 22px; border: 1px solid #4a6d6b; background: #11343e; }
.finding-id { display: flex; flex-wrap: wrap; align-items: center; gap: 7px 18px; margin-bottom: 13px; color: #b7d7c5; }
.finding-id span { font-size: 11px; color: #abc5ba; }
.sample-finding h4 { margin: 0; font-size: 17px; line-height: 1.4; font-weight: 500; color: #ffe3ab; }
.sample-finding p { margin-top: 11px; font-size: 14px; line-height: 1.8; color: #c0d4c9; }
.sample-preserved { margin-top: 18px; color: #afc9bd; font-size: 12px; }
.sample-decision { margin-top: 35px; padding: 25px 28px; border-left: 2px solid #8addc8; background: #153a44; }
.sample-decision h3 { font-size: 22px; font-weight: 400; }
.sample-decision p { margin-top: 13px; color: #c5dacf; font-size: 15px; max-width: 800px; }
.sample-decision .text-link { display: inline-block; margin-top: 20px; white-space: normal; line-height: 1.7; }
.other-examples { border-top: 1px solid #527574; padding-top: 25px; }
.other-examples > summary { cursor: pointer; font-size: 18px; color: #d3e7db; padding: 12px 0; }
.other-examples .case-study:first-child { border-top: none; }
.faq-intro { max-width: 780px; margin-top: 22px; color: #b8d0c7; font-size: 16px; }
.faq-topics { display: grid; grid-template-columns: 1fr 1fr; gap: 55px; margin-top: 42px; }
.faq-topic { min-width: 0; }
.faq-topic h3 { font-size: 23px; font-weight: 400; }
.faq-topic .faq { margin-top: 20px; }
.faq-topic summary { font-size: 16px; line-height: 1.6; }
.faq-topic .faq p { line-height: 1.8; }
.faq-topic .faq a { color: #a0e3d1; }

@media (max-width: 900px) {
  .sample-grid, .faq-topics { grid-template-columns: 1fr; gap: 38px; }
  .sample-table { max-width: 700px; }
}
@media (max-width: 580px) {
  .real-case { padding-top: 5px; padding-bottom: 32px; }
  .real-case > h2 { font-size: 34px; }
  .real-case-intro, .case-phase-lead { font-size: 15px; }
  .case-phase { padding-top: 15px; }
  .case-phase + .case-phase { margin-top: 18px; padding-top: 38px; }
  .case-screen-link { margin-top: 26px; }
  .case-screen figcaption { padding: 19px 18px; }
  .case-screen figcaption strong { font-size: 21px; }
  .case-screen figcaption p { font-size: 14px; }
  .case-conclusion { padding: 22px 20px; }
  .service-examples > summary { font-size: 21px; }
  .sample-case { padding-top: 5px; padding-bottom: 40px; }
  .sample-case h2 { font-size: 33px; }
  .sample-intro, .faq-intro { font-size: 15px; }
  .sample-route { gap: 7px 19px; margin-block: 25px 30px; padding-block: 15px; }
  .sample-route a { font-size: 12px; }
  .sample-grid h3 { font-size: 23px; }
  .sample-table { font-size: 13px; }
  .sample-table th, .sample-table td { padding: 12px 6px; }
  .sample-table thead th:first-child { width: 40px; }
  .sample-table thead th:nth-child(2) { width: 80px; }
  .sample-table thead th:last-child { width: 46px; }
  .sample-case code { font-size: 11px; }
  .sample-rules, .sample-finding { padding: 20px 18px; }
  .sample-decision { padding: 22px 20px; }
  .sample-decision h3 { font-size: 22px; }
  .other-examples > summary { font-size: 16px; }
  .faq-topics { margin-top: 32px; gap: 35px; }
  .faq-topic h3 { font-size: 22px; }
  .faq-topic summary { font-size: 15px; }
}
@media print {
  .sample-intro, .sample-route a, .sample-route span, .sample-table, .sample-table caption, .sample-table thead th, .sample-table tbody th, .missing-value, .sample-rules summary, .sample-rules li, .sample-rules p, .sample-finding h4, .sample-finding p, .finding-id, .finding-id span, .sample-preserved, .sample-decision p, .faq-intro, .faq-topic .faq p { color: #103642; }
  .sample-rules, .sample-finding, .sample-decision { background: #fff; }
  .sample-finding { break-inside: avoid; }
}
