/* Product depth page. The presentation homepage remains controlled by presentation.css. */
.product-detail-document,.product-detail-page { height: auto !important; min-height: 100%; overflow: auto !important; }
.product-detail-page { letter-spacing: 0; background: #f9fbf7; color: #17251b; }
.product-detail-page :is(h1,h2,h3,p,a,dt,dd,span) { letter-spacing: 0; }
.product-detail-page :focus-visible { outline: 3px solid #2c6483; outline-offset: 4px; }
.product-detail-page .header-inner { min-height: 86px; }
.product-detail-page .brand img { width: 92px; height: 74px; object-fit: contain; }
.product-detail-page .main-nav { gap: 24px; font-size: 14px; }
.product-detail-page .main-nav a { font-weight: 550; }
.product-detail-page .main-nav a[aria-current="page"] { color: #203d2b; text-decoration: underline; text-underline-offset: 8px; }
.product-detail-page .main-nav .nav-cta { min-height: 42px; padding: 0 18px; border-radius: 6px; color: #fff; background: #123622; border-color: #123622; font-weight: 600; }
.product-detail-page .eyebrow { letter-spacing: 0; }
.product-detail-page h1 { max-width: 900px; font-size: 56px; line-height: 1.08; font-weight: 650; }
.product-detail-page h2 { font-size: 38px; line-height: 1.18; font-weight: 620; text-wrap: balance; }
.product-detail-page h3 { font-size: 19px; line-height: 1.3; }
.product-detail-page p { color: #45554a; }
.detail-intro { position: relative; isolation: isolate; padding: 76px 0 88px; background: url("assets/hero-bg-02-tisch.png") center / cover no-repeat; }
.detail-intro::before { content: ""; position: absolute; inset: 0; z-index: -1; background: #fbfcf8e8; }
.detail-lead { max-width: 820px; margin: 24px 0 0; font-size: 19px; line-height: 1.7; }
.answer-strip { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 38px; border-block: 1px solid #cdd8ca; }
.answer-strip div { padding: 18px 24px; border-right: 1px solid #d8e0d5; }
.answer-strip div:first-child { padding-left: 0; }
.answer-strip div:last-child { border-right: 0; }
.answer-strip strong,.answer-strip span { display: block; }
.answer-strip strong { margin-bottom: 6px; color: #294d33; font-size: 14px; }
.answer-strip span { color: #536159; font-size: 14px; line-height: 1.55; }
.product-overview-figure,.detail-figure { margin: 48px 0 0; border: 1px solid #d5ded2; border-radius: 8px; overflow: hidden; background: #fff; box-shadow: 0 18px 50px #18362212; }
.product-overview-figure img { width: 100%; max-height: 640px; object-fit: contain; }
.product-overview-figure figcaption,.detail-figure figcaption { padding: 11px 16px; color: #5b675e; font-size: 12px; border-top: 1px solid #e0e6dd; }
.detail-band { padding: 88px 0; border-top: 1px solid #dce5d7; }
.detail-band:nth-of-type(odd) { background: #f2f6f0; }
.detail-split { display: grid; grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr); gap: 80px; align-items: start; }
.section-heading > p:last-child,.narrow-heading > p:last-child { font-size: 17px; line-height: 1.7; }
.narrow-heading { max-width: 820px; margin-bottom: 42px; }
.question-list { margin: 0; border-top: 1px solid #cbd6c8; }
.question-list div { display: grid; grid-template-columns: minmax(150px,.45fr) minmax(0,1.55fr); gap: 28px; padding: 21px 0; border-bottom: 1px solid #d5ded2; }
.question-list dt { color: #294d33; font-weight: 700; }
.question-list dd { margin: 0; color: #45554a; line-height: 1.65; }
.comparison-table { border-block: 1px solid #c9d5c7; }
.comparison-table > div { display: grid; grid-template-columns: minmax(220px,.7fr) minmax(0,1.3fr); }
.comparison-table > div > span { padding: 17px 20px; border-bottom: 1px solid #dde4da; line-height: 1.55; }
.comparison-table > div > span:first-child { color: #3f4c43; border-right: 1px solid #dde4da; }
.comparison-table > div > span:last-child { color: #1f3c29; font-weight: 550; }
.comparison-table .comparison-head > span,
.comparison-table .comparison-head > span:first-child,
.comparison-table .comparison-head > span:last-child { color: #fff; background: #294934; border-color: #6f8875; font-size: 13px; font-weight: 700; }
.comparison-table > div:last-child > span { border-bottom: 0; }
.workflow-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); border-block: 1px solid #ccd7ca; }
.workflow-list li { display: flex; flex-direction: column; gap: 18px; min-width: 0; padding: 24px 20px; border-right: 1px solid #d8e0d5; }
.workflow-list li:first-child { padding-left: 0; }
.workflow-list li:last-child { border-right: 0; }
.workflow-list > li > span { color: #4f6d48; font-size: 13px; font-weight: 750; }
.workflow-list h3 { margin: 0 0 8px; }
.workflow-list p { margin: 0; font-size: 14px; line-height: 1.6; }
.detail-figure img { width: 100%; max-height: 680px; object-fit: contain; }
.capability-list { border-top: 1px solid #cbd6c8; }
.capability-list article { display: grid; grid-template-columns: minmax(240px,.72fr) minmax(0,1.28fr); gap: 48px; padding: 26px 0; border-bottom: 1px solid #d5ded2; }
.capability-list h3 { margin: 10px 0 0; }
.capability-list p { margin: 0; align-self: center; line-height: 1.7; }
.detail-status { display: inline-flex; min-height: 24px; align-items: center; padding: 3px 9px; border: 1px solid #cbd7c9; border-radius: 999px; color: #38523d; background: #edf3eb; font-size: 11px; line-height: 1.35; font-weight: 650; }
.detail-status.testing { color: #5a501d; border-color: #ded4a7; background: #f7f3de; }
.detail-status.building { color: #31516a; border-color: #c5d5df; background: #eaf1f5; }
.boundary-content > p { margin-top: 0; font-size: 17px; line-height: 1.7; }
.boundary-list { list-style: none; padding: 0; margin: 30px 0 0; }
.boundary-list li { display: grid; grid-template-columns: 32px 1fr; gap: 14px; padding: 18px 0; border-top: 1px solid #d5ded2; }
.boundary-list svg { width: 22px; height: 22px; color: #426447; stroke-width: 1.7; }
.boundary-list strong,.boundary-list span { display: block; }
.boundary-list strong { margin-bottom: 3px; color: #22382a; }
.boundary-list span { color: #4d5a52; line-height: 1.55; }
.development-focus { border-top: 1px solid #cbd6c8; }
.development-focus div { padding: 22px 0; border-bottom: 1px solid #d5ded2; }
.development-focus span { color: #294d33; font-size: 13px; font-weight: 750; text-transform: uppercase; }
.development-focus p { margin: 6px 0 0; line-height: 1.65; }
.detail-cta { padding: 72px 0; color: #fff; background: #193c28; }
.detail-cta-inner { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 64px; align-items: center; }
.detail-cta :is(h2,p,.eyebrow) { color: inherit; }
.detail-cta p { max-width: 760px; }
.product-detail-page .button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 12px 18px; border-radius: 6px; font-size: 14px; font-weight: 650; }
.product-detail-page .detail-cta .button.primary { color: #193c28; background: #fff; border-color: #fff; white-space: nowrap; }
.product-detail-page .button svg { width: 18px; height: 18px; }
.detail-footer { padding: 22px 0; color: #dce9df; background: #10271a; font-size: 12px; }
.detail-footer .container { display: flex; justify-content: space-between; gap: 24px; }
.detail-footer nav { display: flex; gap: 18px; }
.detail-footer a { font-weight: 500; text-underline-offset: 3px; }
@media (max-width: 980px) {
  .product-detail-page .header-inner { gap: 14px; }
  .product-detail-page .main-nav { gap: 12px 18px; flex-wrap: wrap; justify-content: flex-end; }
  .product-detail-page h1 { font-size: 46px; }
  .detail-split { grid-template-columns: 1fr; gap: 36px; }
  .workflow-list { grid-template-columns: repeat(2,minmax(0,1fr)); border-bottom: 0; }
  .workflow-list li { border-bottom: 1px solid #d8e0d5; }
  .workflow-list li:nth-child(2n) { border-right: 0; }
  .workflow-list li:first-child { padding-left: 20px; }
}
@media (max-width: 680px) {
  .product-detail-page .header-inner { min-height: 82px; padding: 8px 0; }
  .product-detail-page .brand img { width: 72px; height: 62px; }
  .product-detail-page .main-nav { font-size: 12px; gap: 8px 14px; }
  .product-detail-page .main-nav a:nth-child(3),.product-detail-page .main-nav a:nth-child(4) { display: none; }
  .product-detail-page .main-nav .nav-cta { min-height: 34px; padding: 0 10px; }
  .detail-intro { padding: 48px 0 64px; }
  .product-detail-page h1 { font-size: 38px; }
  .product-detail-page h2 { font-size: 30px; }
  .detail-lead { font-size: 17px; }
  .answer-strip { grid-template-columns: 1fr; }
  .answer-strip div,.answer-strip div:first-child { padding: 14px 0; border-right: 0; border-bottom: 1px solid #d8e0d5; }
  .answer-strip div:last-child { border-bottom: 0; }
  .product-overview-figure { margin-top: 32px; }
  .detail-band { padding: 62px 0; }
  .question-list div,.comparison-table > div,.capability-list article { grid-template-columns: 1fr; gap: 8px; }
  .comparison-table > div > span { padding: 14px 12px; }
  .comparison-table > div > span:first-child { border-right: 0; padding-bottom: 4px; }
  .comparison-table > div > span:last-child { padding-top: 4px; }
  .comparison-table .comparison-head { display: none; }
  .workflow-list { grid-template-columns: 1fr; }
  .workflow-list li { padding: 20px 0; border-right: 0; }
  .workflow-list li:first-child { padding-left: 0; }
  .detail-cta-inner { grid-template-columns: 1fr; gap: 24px; }
  .product-detail-page .detail-cta .button.primary { white-space: normal; }
  .detail-footer .container { flex-direction: column; gap: 8px; }
}
