.dish-page {
  --db-red: #b74b46;
  --db-red-deep: #8d3534;
  --db-coral: #d56a58;
  --db-green: #2f4437;
  --db-green-deep: #223129;
  --db-gold: #d0a153;
  --db-gold-light: #efd298;
  --db-rose: #a84c70;
  --db-cream: #fff9ef;
  background: radial-gradient(circle at 92% 4%,rgba(183,75,70,.11),transparent 33rem),radial-gradient(circle at 6% 7%,rgba(202,153,75,.1),transparent 30rem),linear-gradient(180deg,#fcfaf6,#f7eee5 57%,#fbf8f3);
}

.dish-page .ss-breadcrumb strong { color: var(--db-red); }
.dish-page .ss-hero h1 em { color: var(--db-red); }
.dish-page .ss-button-primary { border-color: #9a403e; background: linear-gradient(135deg,#c35b50,#943a39); box-shadow: 0 13px 29px rgba(145,52,50,.22); }
.dish-page .ss-assurances b { color: var(--db-red); }
.dish-page .ss-hero::before { border-color: rgba(183,75,70,.14); }
.dish-page .eyebrow { font-size: 10.5px; }
.db-wide-heading { max-width: 1040px; }
.db-wide-heading > p { max-width: 820px; }

/* Hero — Service Pulse */
.db-hero { min-height: 825px; grid-template-columns: minmax(0,1.08fr) minmax(420px,.92fr); }
.db-service-pulse { position: relative; overflow: hidden; padding: 27px; border: 1px solid rgba(234,201,143,.3); border-radius: 31px; background: radial-gradient(circle at 100% 0,rgba(183,75,70,.36),transparent 39%),radial-gradient(circle at 0 100%,rgba(205,157,81,.16),transparent 34%),linear-gradient(145deg,#33483a,#24342b 67%,#4e3438 125%); color: #fff; box-shadow: 0 38px 90px rgba(36,50,42,.31); }
.db-service-pulse::before { position: absolute; right: -133px; bottom: -158px; width: 330px; height: 330px; border: 1px solid rgba(239,210,153,.1); border-radius: 50%; box-shadow: 0 0 0 49px rgba(239,210,153,.025); content: ""; }
.db-service-pulse > * { position: relative; z-index: 1; }
.db-pulse-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 17px; border-bottom: 1px solid rgba(255,255,255,.13); color: #d5ddd4; font-size: 10.5px; font-weight: 850; letter-spacing: .7px; }
.db-pulse-top span { display: flex; align-items: center; gap: 9px; text-transform: uppercase; }
.db-pulse-top i { width: 8px; height: 8px; border-radius: 50%; background: #e2ae5a; box-shadow: 0 0 0 5px rgba(226,174,90,.13); }
.db-pulse-top b { color: #f1ccd7; font-size: 9.5px; }
.db-pulse-brand { display: grid; grid-template-columns: 55px minmax(0,1fr) auto; align-items: center; gap: 15px; margin-top: 23px; }
.db-pulse-brand > span { display: grid; width: 54px; height: 54px; place-items: center; border-radius: 17px; background: linear-gradient(145deg,#d26859,#a33f3d); color: #fff; font-size: 14px; font-weight: 900; box-shadow: 0 13px 28px rgba(25,28,25,.25); }
.db-pulse-brand div { display: grid; gap: 4px; }
.db-pulse-brand small { color: #f0c5d2; font-size: 10.5px; font-weight: 900; letter-spacing: 1px; }
.db-pulse-brand strong { font: 500 29px/1.1 Georgia,serif; }
.db-pulse-brand em { padding: 8px 10px; border: 1px solid rgba(238,207,151,.25); border-radius: 999px; background: rgba(207,160,82,.12); color: #f0cf91; font-size: 10.5px; font-style: normal; font-weight: 900; }
.db-revenue-line { position: relative; height: 137px; margin: 16px 0 8px; }
.db-revenue-line svg { display: block; width: 100%; height: 118px; overflow: visible; }
.db-area { fill: url(#dbArea); }
.db-line { fill: none; stroke: #e0af61; stroke-width: 2.6; vector-effect: non-scaling-stroke; }
.db-revenue-line circle { fill: #e6bd72; stroke: #314438; stroke-width: 4; }
.db-revenue-line > span { position: absolute; bottom: 0; color: #bac6ba; font-size: 10px; }
.db-revenue-line > span:nth-of-type(1) { left: 0; }
.db-revenue-line > span:nth-of-type(2) { left: 45%; }
.db-revenue-line > span:nth-of-type(3) { right: 0; color: #efccd6; }
.db-pulse-kpis { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.db-pulse-kpis article { display: grid; min-height: 109px; align-content: start; gap: 7px; padding: 15px; border: 1px solid rgba(239,208,153,.15); border-radius: 16px; background: rgba(255,255,255,.055); }
.db-pulse-kpis span { color: #c5d0c5; font-size: 11.5px; }
.db-pulse-kpis strong { color: #fffdf8; font: 500 27px/1 Georgia,serif; }
.db-pulse-kpis small { color: #bbc7bb; font-size: 10.5px; }
.db-pulse-kpis article.is-alert { border-color: rgba(239,190,208,.27); background: rgba(183,75,70,.16); }
.db-ticket-feed { display: grid; gap: 0; margin-top: 16px; border-top: 1px solid rgba(255,255,255,.12); }
.db-ticket-feed span { display: grid; min-height: 36px; grid-template-columns: 51px minmax(0,1fr) auto; align-items: center; gap: 9px; border-bottom: 1px dashed rgba(239,208,153,.13); font-size: 10.5px; }
.db-ticket-feed time { color: #e1bb79; font-variant-numeric: tabular-nums; }
.db-ticket-feed b { color: #d7dfd6; font-weight: 750; }
.db-ticket-feed em { color: #fff9ed; font-style: normal; font-weight: 850; }

/* Merk en taakverdeling */
.db-identity-section { padding: 104px 0 126px; border-top: 1px solid var(--ss-line); }
.db-rebrand-note { display: grid; grid-template-columns: 58px minmax(0,1fr) auto; align-items: center; gap: 19px; margin-bottom: 79px; padding: 23px 25px; border: 1px solid rgba(177,114,84,.26); border-left: 4px solid var(--db-red); border-radius: 0 22px 22px 0; background: linear-gradient(135deg,#fffaf4,#f7e8e3); box-shadow: 0 17px 45px rgba(70,47,33,.07); }
.db-rebrand-note > span { display: grid; width: 55px; height: 55px; place-items: center; border-radius: 17px; background: linear-gradient(145deg,#cf6457,#a63e3c); color: #fff; font: 500 24px/1 Georgia,serif; }
.db-rebrand-note div { display: grid; gap: 4px; }
.db-rebrand-note small { color: #9a4544; font-size: 10.5px; font-weight: 900; letter-spacing: 1px; }
.db-rebrand-note strong { color: #34453a; font: 500 21px/1.2 Georgia,serif; }
.db-rebrand-note p { margin: 0; color: #71665d; font-size: 11.5px; line-height: 1.5; }
.db-rebrand-note a { color: #85413d; font-size: 11px; font-weight: 850; text-decoration: none; white-space: nowrap; }
.db-role-rail { display: grid; grid-template-columns: minmax(190px,.98fr) 24px minmax(190px,.98fr) 24px minmax(220px,1.15fr) 24px minmax(170px,.85fr); align-items: center; gap: 8px; margin-top: 56px; }
.db-role-card { display: flex; min-height: 190px; flex-direction: column; align-items: flex-start; justify-content: center; gap: 15px; padding: 24px; border: 1px solid rgba(151,120,69,.25); border-radius: 24px; box-shadow: 0 18px 48px rgba(64,48,31,.07); }
.db-role-card > b { display: grid; width: 51px; height: 51px; place-items: center; border-radius: 16px; font-size: 13px; }
.db-role-card div { display: grid; gap: 5px; }
.db-role-card small { font-size: 10.5px; font-weight: 900; letter-spacing: 1px; }
.db-role-card strong { font: 500 25px/1.1 Georgia,serif; }
.db-role-card span { font-size: 11.5px; line-height: 1.5; }
.db-role-card.is-dish { border-color: #e3bab4; background: linear-gradient(145deg,#fff8f5,#f5e2de); color: #693a36; }
.db-role-card.is-dish > b { background: linear-gradient(145deg,#cb6255,#a23c3b); color: #fff; }
.db-role-card.is-dish small { color: #a14b46; }
.db-role-card.is-horeko { border-color: #ccd5b9; background: linear-gradient(145deg,#f8faef,#e7eddc); color: #39482f; }
.db-role-card.is-horeko > b { background: #748653; color: #fff; }
.db-role-card.is-horeko small { color: #66774d; }
.db-role-card.is-more { border-color: rgba(230,198,141,.29); background: radial-gradient(circle at 100% 0,rgba(183,75,70,.25),transparent 37%),linear-gradient(145deg,#3a4d3e,#27372e); color: #fff; box-shadow: 0 22px 55px rgba(42,57,47,.2); }
.db-role-card.is-more > b { background: linear-gradient(145deg,#d8a858,#b47d35); color: #29372d; }
.db-role-card.is-more small { color: #f0c2d0; }
.db-role-card.is-more span { color: #d1dad0; }
.db-role-rail > i { color: #bc8d46; font: 500 22px/1 Georgia,serif; text-align: center; }
.db-official-stack { display: grid; gap: 9px; }
.db-official-stack article { display: grid; min-height: 89px; grid-template-columns: 41px minmax(0,1fr); align-items: center; gap: 11px; padding: 14px; border: 1px solid rgba(151,120,69,.25); border-radius: 17px; background: rgba(255,252,247,.79); box-shadow: 0 14px 38px rgba(64,48,31,.06); }
.db-official-stack article > b { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 13px; background: #f2e3d9; color: #9d4d30; font-size: 10px; }
.db-official-stack article:last-child > b { background: #f5e4ed; color: #944363; }
.db-official-stack div { display: grid; gap: 4px; }
.db-official-stack strong { color: #3c483d; font-size: 13px; }
.db-official-stack span { color: #796f64; font-size: 10.5px; line-height: 1.35; }
.db-role-summary span { color: #743e39; }

/* Order journey */
.db-flow-band { background: radial-gradient(circle at 90% 8%,rgba(183,75,70,.3),transparent 31rem),radial-gradient(circle at 6% 92%,rgba(208,161,83,.11),transparent 29rem),linear-gradient(145deg,#35493b,#223129 73%); }
.db-flow-heading { max-width: 1000px; }
.db-order-journey { display: grid; grid-template-columns: minmax(250px,.66fr) minmax(0,1.34fr); gap: 45px; margin-top: 57px; }
.db-guest-order { position: relative; align-self: center; padding: 25px 25px 29px; background: #fff9ed; color: #2c352e; box-shadow: 0 24px 65px rgba(8,18,12,.29); transform: rotate(-1deg); }
.db-guest-order::before,.db-guest-order::after { position: absolute; right: 0; left: 0; height: 9px; background: radial-gradient(circle at 5px -2px,transparent 6px,#fff9ed 6.5px) 0 0/12px 9px repeat-x; content: ""; }
.db-guest-order::before { top: -8px; transform: rotate(180deg); }
.db-guest-order::after { bottom: -8px; }
.db-guest-order header,.db-guest-order footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; }
.db-guest-order header { padding-bottom: 14px; border-bottom: 1px dashed #b7aa97; }
.db-guest-order header span { color: #9f4843; font-size: 10px; font-weight: 900; letter-spacing: 1px; }
.db-guest-order time { color: #756b5f; font-size: 11px; }
.db-guest-order ul { display: grid; gap: 12px; margin: 19px 0; padding: 0; list-style: none; }
.db-guest-order li { display: flex; justify-content: space-between; gap: 17px; color: #4d4942; font-size: 12px; }
.db-guest-order footer { padding-top: 15px; border-top: 2px solid #354439; }
.db-guest-order footer span { color: #97504a; font-size: 10.5px; font-weight: 900; }
.db-guest-order footer strong { font: 500 25px/1 Georgia,serif; }
.db-order-journey > ol { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 10px; margin: 0; padding: 0; list-style: none; }
.db-order-journey > ol li { position: relative; display: flex; min-height: 221px; flex-direction: column; gap: 16px; padding: 21px 18px; border: 1px solid rgba(239,208,153,.17); border-radius: 19px; background: rgba(255,255,255,.06); }
.db-order-journey > ol li:not(:last-child)::after { position: absolute; z-index: 2; top: 50%; right: -10px; display: grid; width: 19px; height: 19px; place-items: center; border-radius: 50%; background: #ca9648; color: #2a382f; content: "›"; font: 900 15px/1 Arial,sans-serif; transform: translateY(-50%); }
.db-order-journey > ol li > b { display: grid; width: 37px; height: 37px; place-items: center; border: 1px solid rgba(239,208,153,.3); border-radius: 50%; color: #efcc8f; font-size: 9px; }
.db-order-journey > ol div { display: grid; gap: 7px; }
.db-order-journey > ol strong { color: #fffdf8; font-size: 12.5px; line-height: 1.35; }
.db-order-journey > ol span { color: #c0ccc0; font-size: 11.5px; line-height: 1.5; }
.db-flow-note { border-left-color: var(--db-red); }
.db-flow-note span { color: #efc5d0; }

/* Service tempo */
.db-tempo-section { padding: 120px 0 132px; }
.db-tempo-intro { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(290px,.75fr); align-items: end; gap: 65px; }
.db-tempo-intro > aside,.db-close-intro > aside { display: grid; gap: 10px; padding: 21px 23px; border: 1px solid rgba(157,113,54,.23); border-radius: 20px; background: rgba(255,252,247,.71); }
.db-tempo-intro aside > span,.db-close-intro aside > span { color: #9c4a45; font-size: 10.5px; font-weight: 900; letter-spacing: 1px; }
.db-tempo-intro aside strong,.db-close-intro aside strong { display: flex; align-items: center; gap: 9px; color: #34463a; font: 500 20px/1.1 Georgia,serif; }
.db-tempo-intro aside i,.db-close-intro aside i { width: 9px; height: 9px; border-radius: 50%; background: #ce984a; box-shadow: 0 0 0 5px rgba(206,152,74,.13); }
.db-tempo-intro aside small,.db-close-intro aside small { color: #756b61; font-size: 11.5px; line-height: 1.4; }
.db-tempo-console { overflow: hidden; margin-top: 56px; border: 1px solid rgba(222,184,119,.28); border-radius: 30px; background: radial-gradient(circle at 100% 0,rgba(183,75,70,.26),transparent 33rem),linear-gradient(145deg,#35493b,#24342b); color: #fff; box-shadow: 0 34px 86px rgba(39,53,45,.25); }
.db-tempo-console > header { display: flex; align-items: center; justify-content: space-between; gap: 23px; padding: 21px 25px; border-bottom: 1px solid rgba(239,208,153,.16); }
.db-tempo-console > header > div { display: flex; align-items: center; gap: 14px; }
.db-console-mark { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 14px; background: linear-gradient(145deg,#ca6155,#983937); font: 500 22px/1 Georgia,serif; }
.db-tempo-console header div div { display: grid; gap: 4px; }
.db-tempo-console header small { color: #efc3d0; font-size: 10.5px; font-weight: 900; letter-spacing: 1px; }
.db-tempo-console header strong { font: 500 23px/1.1 Georgia,serif; }
.db-tempo-console > header > span { color: #e5c78f; font-size: 10px; font-weight: 900; letter-spacing: .8px; }
.db-tempo-tabs,.db-order-tabs { display: flex; gap: 7px; }
.db-tempo-tabs { padding: 13px 24px; border-bottom: 1px solid rgba(239,208,153,.13); }
.db-tempo-tabs button,.db-order-tabs button { min-height: 45px; border: 1px solid transparent; border-radius: 12px; background: transparent; cursor: pointer; font: inherit; font-size: 11.5px; font-weight: 850; }
.db-tempo-tabs button { min-width: 120px; color: #c0cbc0; }
.db-tempo-tabs button.is-active { border-color: rgba(239,208,153,.27); background: rgba(204,155,76,.15); color: #efd099; }
.db-tempo-tabs button:focus-visible,.db-order-tabs button:focus-visible,.db-route-tabs button:focus-visible { outline: 3px solid rgba(234,189,111,.45); outline-offset: 2px; }
.db-tempo-body { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(310px,.65fr); gap: 16px; padding: 18px; }
.db-tempo-chart { padding: 23px; border: 1px solid rgba(239,208,153,.14); border-radius: 20px; background: rgba(255,255,255,.045); }
.db-chart-meta { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: end; gap: 5px 20px; }
.db-chart-meta span { color: #d1dad0; font-size: 11.5px; }
.db-chart-meta strong { grid-row: span 2; color: #fffdf8; font: 500 34px/1 Georgia,serif; }
.db-chart-meta small { color: #e8c783; font-size: 10.5px; }
.db-tempo-chart svg { display: block; width: 100%; height: 260px; margin-top: 21px; overflow: visible; }
.db-tempo-grid { fill: none; stroke: rgba(239,208,153,.09); stroke-width: 1; vector-effect: non-scaling-stroke; }
.db-tempo-area { fill: url(#tempoArea); }
.db-tempo-line { fill: none; stroke: #daa757; stroke-width: 3; vector-effect: non-scaling-stroke; transition: d .3s ease; }
.db-tempo-chart circle { fill: #e4b96d; stroke: #314337; stroke-width: 5; transition: cx .3s ease,cy .3s ease; }
.db-chart-axis { display: flex; justify-content: space-between; color: #aebcaf; font-size: 10px; }
.db-tempo-kpis { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.db-tempo-kpis article { display: flex; min-height: 144px; flex-direction: column; padding: 17px; border: 1px solid rgba(239,208,153,.14); border-radius: 17px; background: rgba(255,255,255,.05); }
.db-tempo-kpis article:nth-child(3) { grid-column: 1 / -1; min-height: 119px; }
.db-tempo-kpis span { color: #bfcabf; font-size: 11.5px; }
.db-tempo-kpis strong { margin-top: 17px; font: 500 26px/1 Georgia,serif; }
.db-tempo-kpis small { margin-top: auto; color: #b6c2b7; font-size: 10.5px; }
.db-tempo-kpis blockquote { grid-column: 1 / -1; margin: 0; padding: 18px 19px; border-left: 3px solid #c2524c; border-radius: 0 15px 15px 0; background: rgba(183,75,70,.15); color: #eadde0; font: 500 14px/1.55 Georgia,serif; }

/* Order naar marge */
.db-margin-section { position: relative; overflow: hidden; padding: 120px 0 132px; background: radial-gradient(circle at 91% 10%,rgba(183,75,70,.24),transparent 32rem),radial-gradient(circle at 6% 90%,rgba(208,161,83,.13),transparent 29rem),linear-gradient(145deg,#35493b,#23322a 72%); }
.db-margin-heading { max-width: 1050px; }
.db-margin-stage { display: grid; grid-template-columns: minmax(270px,.65fr) minmax(430px,1.05fr) minmax(300px,.8fr); align-items: stretch; gap: 18px; margin-top: 58px; }
.db-receipt-card { position: relative; display: flex; flex-direction: column; padding: 29px 25px; background: #fff9ed; color: #2d352e; box-shadow: 0 28px 75px rgba(8,17,12,.3); transform: rotate(-.65deg); }
.db-receipt-teeth { position: absolute; right: 0; bottom: -9px; left: 0; height: 10px; background: radial-gradient(circle at 6px -2px,transparent 7px,#fff9ed 7.5px) 0 0/14px 10px repeat-x; }
.db-receipt-card > header { display: grid; gap: 5px; padding-bottom: 17px; border-bottom: 2px solid #344238; text-align: center; }
.db-receipt-card header span { font: 500 21px/1 Georgia,serif; }
.db-receipt-card header small { color: #8f4a45; font-size: 9.5px; font-weight: 900; letter-spacing: 1px; }
.db-receipt-meta { display: flex; justify-content: space-between; padding: 13px 0; border-bottom: 1px dashed #b4a792; color: #6f665c; font-size: 10.5px; }
.db-receipt-order { display: grid; gap: 8px; padding: 23px 0; border-bottom: 1px dashed #b4a792; }
.db-receipt-order > strong { font: 500 24px/1.1 Georgia,serif; }
.db-receipt-order > span { display: flex; justify-content: space-between; gap: 17px; color: #46423c; font-size: 11.5px; }
.db-receipt-order em { font-style: normal; font-weight: 900; }
.db-receipt-order small { color: #7c7165; font-size: 10.5px; }
.db-receipt-card dl { display: grid; gap: 10px; margin: 21px 0; }
.db-receipt-card dl div { display: flex; justify-content: space-between; gap: 15px; color: #625a51; font-size: 10.5px; }
.db-receipt-card dt,.db-receipt-card dd { margin: 0; }
.db-receipt-card dd { font-weight: 850; }
.db-receipt-card > footer { display: flex; justify-content: space-between; margin-top: auto; padding-top: 17px; border-top: 2px solid #344238; color: #984844; font-size: 9.5px; font-weight: 900; letter-spacing: .7px; }
.db-margin-calculation { overflow: hidden; border: 1px solid rgba(239,208,153,.18); border-radius: 25px; background: rgba(255,255,255,.065); color: #fff; }
.db-margin-calculation > header { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; padding: 24px; border-bottom: 1px solid rgba(239,208,153,.16); }
.db-margin-calculation header div { display: grid; gap: 5px; }
.db-margin-calculation header small { color: #efc88a; font-size: 10.5px; font-weight: 900; letter-spacing: 1px; }
.db-margin-calculation h3 { margin: 0; font: 500 27px/1.15 Georgia,serif; }
.db-margin-calculation header > span { padding: 7px 9px; border-radius: 999px; background: rgba(183,75,70,.25); color: #efc3d0; font-size: 9.5px; font-weight: 900; }
.db-order-tabs { padding: 13px 17px; border-bottom: 1px solid rgba(239,208,153,.13); }
.db-order-tabs button { flex: 1; color: #bbc8bc; }
.db-order-tabs button.is-active { border-color: rgba(239,208,153,.28); background: rgba(207,159,79,.14); color: #f0cf93; }
.db-calculation-flow { display: grid; grid-template-columns: minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1.08fr); align-items: center; gap: 6px; padding: 22px; }
.db-calculation-flow article { display: grid; min-height: 145px; align-content: center; gap: 13px; padding: 16px; border: 1px solid rgba(239,208,153,.15); border-radius: 17px; background: rgba(255,255,255,.05); }
.db-calculation-flow article > span { display: grid; width: 41px; height: 41px; place-items: center; border-radius: 13px; color: #fff; font-size: 11px; font-weight: 900; }
.db-calculation-flow article > span.is-dish { background: #b84b46; }
.db-calculation-flow article > span.is-horeko { background: #718451; }
.db-calculation-flow article.is-result { border-color: rgba(231,193,126,.28); background: rgba(207,159,79,.12); }
.db-calculation-flow article.is-result > span { background: #c79344; color: #29372d; }
.db-calculation-flow article div { display: grid; gap: 6px; }
.db-calculation-flow small { color: #b8c5ba; font-size: 9.5px; font-weight: 850; letter-spacing: .5px; }
.db-calculation-flow strong { font: 500 16px/1.3 Georgia,serif; }
.db-calculation-flow > i { color: #d1a256; font: 500 20px/1 Georgia,serif; text-align: center; }
.db-margin-explanation { display: grid; grid-template-columns: 41px minmax(0,1fr); align-items: center; gap: 13px; margin: 0 22px 22px; padding: 17px; border-left: 3px solid var(--db-red); border-radius: 0 15px 15px 0; background: rgba(183,75,70,.15); }
.db-margin-explanation > span { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 12px; background: #b84b46; }
.db-margin-explanation p { display: grid; gap: 5px; margin: 0; }
.db-margin-explanation strong { font-size: 12px; }
.db-margin-explanation small { color: #d4ded4; font-size: 11.5px; line-height: 1.45; }
.db-stock-proof { display: flex; flex-direction: column; padding: 25px; border: 1px solid rgba(239,208,153,.18); border-radius: 25px; background: radial-gradient(circle at 100% 0,rgba(183,75,70,.22),transparent 42%),rgba(255,255,255,.055); color: #fff; }
.db-stock-proof > header { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-bottom: 18px; border-bottom: 1px solid rgba(239,208,153,.14); }
.db-stock-proof header small { color: #efc88a; font-size: 10px; font-weight: 900; letter-spacing: .8px; }
.db-stock-proof header span { color: #efbfd0; font-size: 9.5px; font-weight: 850; }
.db-stock-equation { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 8px; margin-top: 27px; }
.db-stock-equation > span { display: grid; gap: 5px; text-align: center; }
.db-stock-equation b { color: #fffdf7; font: 500 26px/1 Georgia,serif; }
.db-stock-equation small { color: #bfcbbf; font-size: 9.5px; line-height: 1.35; }
.db-stock-equation i { color: #d5a459; font-style: normal; }
.db-stock-actual { display: grid; gap: 6px; margin-top: 29px; padding: 19px; border: 1px solid rgba(239,190,208,.24); border-radius: 18px; background: rgba(183,75,70,.15); text-align: center; }
.db-stock-actual span { color: #e3cdd3; font-size: 10.5px; }
.db-stock-actual strong { font: 500 31px/1 Georgia,serif; }
.db-stock-actual em { color: #f0c4d0; font-size: 10.5px; font-style: normal; font-weight: 900; }
.db-stock-proof > p { margin: auto 0 0; padding-top: 23px; color: #c7d1c7; font-size: 11.5px; line-height: 1.55; }

/* Betalen en dagafsluiting */
.db-close-section { padding: 120px 0 130px; }
.db-close-intro { display: grid; grid-template-columns: minmax(0,1.22fr) minmax(290px,.78fr); align-items: end; gap: 65px; }
.db-close-console { display: grid; grid-template-columns: minmax(300px,1fr) minmax(300px,.92fr) minmax(280px,.86fr); gap: 14px; margin-top: 55px; }
.db-payment-mix,.db-reconcile-card,.db-cash-card { overflow: hidden; border: 1px solid rgba(151,114,58,.25); border-radius: 25px; background: #fffaf4; box-shadow: 0 23px 61px rgba(63,47,31,.09); }
.db-payment-mix,.db-reconcile-card,.db-cash-card { padding: 25px; }
.db-payment-mix > header,.db-reconcile-card > header,.db-cash-card > header { display: flex; align-items: flex-end; justify-content: space-between; gap: 17px; padding-bottom: 19px; border-bottom: 1px solid #e5d8c6; }
.db-payment-mix header div,.db-reconcile-card header div,.db-cash-card header div { display: grid; gap: 5px; }
.db-payment-mix header small,.db-reconcile-card header small,.db-cash-card header small { color: #9f4b46; font-size: 10.5px; font-weight: 900; letter-spacing: .9px; }
.db-payment-mix h3,.db-reconcile-card h3,.db-cash-card h3 { margin: 0; color: #34453a; font: 500 25px/1.15 Georgia,serif; }
.db-payment-mix header > strong { color: #3b483c; font: 500 27px/1 Georgia,serif; }
.db-reconcile-card header > span,.db-cash-card header > span { padding: 7px 9px; border-radius: 999px; background: #f6e5ed; color: #914260; font-size: 9.5px; font-weight: 900; }
.db-payment-bar { display: flex; overflow: hidden; height: 17px; margin-top: 27px; border-radius: 999px; background: #e9dfd1; }
.db-payment-bar span { width: var(--share); }
.db-payment-bar span:nth-child(1) { background: #344d3d; }
.db-payment-bar span:nth-child(2) { background: #d0a052; }
.db-payment-bar span:nth-child(3) { background: #aa4f70; }
.db-payment-mix ul { display: grid; gap: 0; margin: 21px 0 0; padding: 0; list-style: none; }
.db-payment-mix li { display: grid; min-height: 47px; grid-template-columns: 11px minmax(0,1fr) auto auto; align-items: center; gap: 10px; border-bottom: 1px solid #eadfce; font-size: 11.5px; }
.db-payment-mix li i { width: 8px; height: 8px; border-radius: 50%; }
.db-payment-mix i.is-pin { background: #344d3d; }
.db-payment-mix i.is-cash { background: #d0a052; }
.db-payment-mix i.is-other { background: #aa4f70; }
.db-payment-mix li span { color: #675f56; }
.db-payment-mix li b { color: #41493f; }
.db-payment-mix li em { color: #6f655b; font-size: 10.5px; font-style: normal; }
.db-payment-mix > footer { margin-top: 20px; color: #766b61; font-size: 10.5px; line-height: 1.45; }
.db-reconcile-equation { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 7px; margin-top: 27px; }
.db-reconcile-equation > span { display: grid; gap: 7px; text-align: center; }
.db-reconcile-equation small { color: #7a7065; font-size: 9.5px; font-weight: 850; }
.db-reconcile-equation strong { color: #38463a; font: 500 23px/1 Georgia,serif; }
.db-reconcile-equation > i { color: #b6843d; font-style: normal; }
.db-reconcile-equation span.is-difference { padding: 13px 7px; border-radius: 14px; background: #f7e5ec; }
.db-reconcile-equation span.is-difference strong { color: #984663; }
.db-reconcile-card > p { margin: 27px 0 0; padding: 17px; border-left: 3px solid #b84c47; border-radius: 0 13px 13px 0; background: #fff0f3; color: #705b62; font-size: 11.5px; line-height: 1.55; }
.db-cash-card dl { display: grid; margin: 19px 0 0; }
.db-cash-card dl div { display: flex; min-height: 48px; align-items: center; justify-content: space-between; gap: 15px; border-bottom: 1px solid #eadfce; color: #665e55; font-size: 11px; }
.db-cash-card dt,.db-cash-card dd { margin: 0; }
.db-cash-card dd { color: #3f483f; font-weight: 900; }
.db-cash-card dl div.is-difference dd { color: #9b4664; }
.db-reason-chips { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 18px; }
.db-reason-chips span { padding: 7px 9px; border: 1px solid #e0c9d2; border-radius: 999px; background: #fff4f7; color: #855269; font-size: 9.5px; font-weight: 800; }
.db-cash-card > footer { display: grid; grid-template-columns: 34px minmax(0,1fr); align-items: center; gap: 10px; margin-top: 19px; padding-top: 18px; border-top: 1px solid #e5d8c6; color: #776b61; font-size: 10.5px; line-height: 1.45; }
.db-cash-card footer b { display: grid; width: 33px; height: 33px; place-items: center; border-radius: 11px; background: #ad4d6e; color: #fff; }
.db-no-silent { display: grid; grid-template-columns: 43px auto minmax(0,1fr); align-items: center; gap: 14px; margin: 15px 0 0; padding: 17px 19px; border: 1px solid rgba(174,73,70,.24); border-radius: 17px; background: linear-gradient(135deg,#fff2f4,#f7e4e7); }
.db-no-silent > span { display: grid; width: 41px; height: 41px; place-items: center; border-radius: 13px; background: #b54c49; color: #fff; font-weight: 900; }
.db-no-silent strong { color: #6e3838; font-size: 12.5px; }
.db-no-silent small { color: #775f62; font-size: 11.5px; line-height: 1.45; }

/* Eén boekingsroute */
.db-booking-section { padding: 120px 0 130px; background: radial-gradient(circle at 90% 6%,rgba(183,75,70,.31),transparent 31rem),linear-gradient(145deg,#34483a,#223129 72%); }
.db-booking-intro { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr); align-items: end; gap: 65px; }
.db-single-route { display: grid; grid-template-columns: 59px minmax(0,1fr); align-items: center; gap: 15px; padding: 21px; border: 1px solid rgba(239,208,153,.2); border-radius: 20px; background: rgba(255,255,255,.06); color: #fff; }
.db-single-route > span { display: grid; width: 57px; height: 57px; place-items: center; border-radius: 17px; background: linear-gradient(145deg,#d26758,#a23d3b); font: 500 27px/1 Georgia,serif; }
.db-single-route div { display: grid; gap: 5px; }
.db-single-route small { color: #f0c4d1; font-size: 10.5px; font-weight: 900; letter-spacing: .9px; }
.db-single-route strong { color: #fffdf8; font: 500 19px/1.2 Georgia,serif; }
.db-route-console { display: grid; grid-template-columns: minmax(300px,.72fr) minmax(0,1.28fr); overflow: hidden; margin-top: 56px; border: 1px solid rgba(232,195,132,.28); border-radius: 29px; background: #fff9f1; box-shadow: 0 31px 80px rgba(12,24,17,.25); }
.db-route-tabs { display: grid; align-content: start; gap: 10px; padding: 24px; background: rgba(248,235,226,.75); }
.db-route-tabs button { display: grid; min-height: 117px; grid-template-columns: 48px minmax(0,1fr); align-items: center; gap: 13px; padding: 15px; border: 1px solid #dfcdbb; border-radius: 17px; background: rgba(255,255,255,.58); color: #655b52; cursor: pointer; text-align: left; }
.db-route-tabs button > b { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 14px; background: #eadbc9; color: #8d5d3e; }
.db-route-tabs button > span { display: grid; gap: 5px; }
.db-route-tabs strong { color: #3d493e; font-size: 12px; }
.db-route-tabs small { color: #7c7167; font-size: 10.5px; }
.db-route-tabs button.is-active { border-color: #c48664; background: #fff8f4; box-shadow: 0 13px 31px rgba(101,62,42,.09); }
.db-route-tabs button.is-active > b { background: linear-gradient(145deg,#cb6054,#a23d3b); color: #fff; }
.db-route-panel { display: grid; grid-template-columns: minmax(0,.95fr) minmax(330px,1.05fr); gap: 28px; padding: 31px; }
.db-route-diagram { display: grid; align-content: center; gap: 10px; }
.db-route-diagram > span { display: flex; min-height: 66px; align-items: center; gap: 11px; padding: 13px; border: 1px solid #ddcdbc; border-radius: 16px; color: #4e4b44; font-size: 11.5px; }
.db-route-diagram span b { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; font-size: 10px; }
.db-route-diagram span.is-dish b { background: #f1dfdc; color: #9c403d; }
.db-route-diagram span.is-snelstart b { background: #fff0e3; color: #9b4f27; }
.db-route-diagram span.is-more b { background: #e7eddf; color: #566b41; }
.db-route-diagram > i { color: #b27b39; font-style: normal; text-align: center; transform: rotate(90deg); }
.db-route-panel > aside { display: flex; flex-direction: column; padding: 24px; border-radius: 20px; background: radial-gradient(circle at 100% 0,rgba(183,75,70,.22),transparent 36%),linear-gradient(145deg,#384b3e,#29382f); color: #fff; }
.db-route-panel aside > span { color: #efc3d0; font-size: 10px; font-weight: 900; letter-spacing: .8px; }
.db-route-panel h3 { margin: 18px 0 0; font: 500 27px/1.15 Georgia,serif; }
.db-route-panel aside > p { margin: 14px 0 0; color: #d1d9cf; font-size: 11.5px; line-height: 1.6; }
.db-route-panel ul { display: grid; gap: 0; margin: 18px 0 0; padding: 0; list-style: none; }
.db-route-panel li { position: relative; min-height: 40px; padding: 11px 0 10px 24px; border-top: 1px solid rgba(239,208,153,.12); color: #d8dfd6; font-size: 11.5px; }
.db-route-panel li::before { position: absolute; top: 12px; left: 0; display: grid; width: 16px; height: 16px; place-items: center; border-radius: 50%; background: #c59346; color: #29382e; content: "✓"; font-size: 9px; font-weight: 900; }

/* Signalen */
.db-signals-section { padding: 120px 0 132px; }
.db-signals-grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,.85fr) minmax(0,1.05fr); gap: 16px; margin-top: 56px; }
.db-exception-board,.db-channel-board,.db-labor-board { overflow: hidden; padding: 27px; border: 1px solid rgba(151,114,58,.25); border-radius: 26px; box-shadow: 0 23px 63px rgba(63,47,31,.08); }
.db-exception-board { background: linear-gradient(145deg,#fff5f7,#f2e2e6); }
.db-channel-board { background: linear-gradient(145deg,#fffaf2,#f2e7d7); }
.db-labor-board { background: radial-gradient(circle at 100% 0,rgba(183,75,70,.2),transparent 40%),linear-gradient(145deg,#3b4e40,#29382f); color: #fff; }
.db-exception-board > header,.db-channel-board > header,.db-labor-board > header { display: flex; align-items: flex-end; justify-content: space-between; gap: 17px; padding-bottom: 20px; border-bottom: 1px solid rgba(151,114,58,.2); }
.db-labor-board > header { border-bottom-color: rgba(239,208,153,.14); }
.db-exception-board header div,.db-channel-board header div,.db-labor-board header div { display: grid; gap: 5px; }
.db-exception-board header small,.db-channel-board header small,.db-labor-board header small { color: #9e4b46; font-size: 10px; font-weight: 900; letter-spacing: .8px; }
.db-labor-board header small { color: #efc3d0; }
.db-exception-board h3,.db-channel-board h3,.db-labor-board h3 { margin: 0; color: #3b473d; font: 500 25px/1.15 Georgia,serif; }
.db-labor-board h3 { color: #fff; }
.db-exception-board header > span,.db-channel-board header > span,.db-labor-board header > span { padding: 7px 9px; border-radius: 999px; background: rgba(255,255,255,.65); color: #914260; font-size: 9.5px; font-weight: 900; }
.db-labor-board header > span { background: rgba(207,159,79,.14); color: #efce92; }
.db-exception-board ol { display: grid; margin: 12px 0 0; padding: 0; list-style: none; }
.db-exception-board li { display: grid; min-height: 76px; grid-template-columns: 35px minmax(0,1fr) auto; align-items: center; gap: 11px; border-bottom: 1px solid #e1ccd3; }
.db-exception-board li > b { display: grid; width: 33px; height: 33px; place-items: center; border-radius: 11px; background: #e9d9df; color: #8c4863; font-size: 9.5px; }
.db-exception-board li.is-high > b { background: #b24d4a; color: #fff; }
.db-exception-board li div { display: grid; gap: 4px; }
.db-exception-board li strong { color: #554249; font-size: 11.5px; }
.db-exception-board li span { color: #745f67; font-size: 10.5px; }
.db-exception-board li em { color: #8e4762; font-size: 9.5px; font-style: normal; font-weight: 850; }
.db-exception-board > footer,.db-channel-board > footer { margin-top: 19px; color: #66555b; font-size: 11.5px; line-height: 1.5; }
.db-channel-list { display: grid; gap: 17px; margin-top: 22px; }
.db-channel-list > div { display: grid; grid-template-columns: minmax(120px,1fr) minmax(80px,.75fr) 37px; align-items: center; gap: 11px; }
.db-channel-list div > span { display: grid; gap: 3px; }
.db-channel-list span b { color: #4b493f; font-size: 11.5px; }
.db-channel-list span small { color: #665f56; font-size: 11.5px; }
.db-channel-list div > i { height: 8px; border-radius: 999px; background: #ded1c0; }
.db-channel-list div > i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,#b84b46,#d2a253); }
.db-channel-list div > strong { color: #774541; font-size: 10.5px; text-align: right; }
.db-labor-metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 22px; }
.db-labor-metrics > span { display: grid; min-height: 105px; align-content: start; gap: 10px; padding: 13px; border: 1px solid rgba(239,208,153,.15); border-radius: 15px; background: rgba(255,255,255,.055); }
.db-labor-metrics small { color: #bbc7bc; font-size: 11.5px; line-height: 1.35; }
.db-labor-metrics strong { font: 500 23px/1 Georgia,serif; }
.db-labor-board blockquote { margin: 18px 0 0; padding: 17px; border-left: 3px solid #b94e49; border-radius: 0 14px 14px 0; background: rgba(183,75,70,.15); color: #e1d4d7; font: 500 13.5px/1.55 Georgia,serif; }
.db-labor-board > ul { display: grid; gap: 8px; margin: 19px 0 0; padding: 0; list-style: none; }
.db-labor-board > ul li { display: flex; align-items: center; gap: 9px; color: #cbd5cb; font-size: 10.5px; }
.db-labor-board > ul b { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 9px; background: rgba(207,159,79,.15); color: #efce91; font-size: 9px; }

/* Technisch vrijgavedossier */
.db-boundary-section { position: relative; overflow: hidden; padding: 124px 0 132px; background: radial-gradient(circle at 91% 8%,rgba(190,76,72,.31),transparent 31rem),radial-gradient(circle at 7% 88%,rgba(205,157,79,.16),transparent 27rem),linear-gradient(145deg,#33493c,#27372f 58%,#473438); color: #fff; }
.db-boundary-section::before { position: absolute; top: -220px; right: -170px; width: 520px; height: 520px; border: 1px solid rgba(239,202,139,.09); border-radius: 50%; box-shadow: 0 0 0 62px rgba(239,202,139,.025),0 0 0 124px rgba(239,202,139,.018); content: ""; }
.db-boundary-section::after { position: absolute; bottom: -190px; left: -145px; width: 390px; height: 390px; border: 1px solid rgba(239,202,139,.07); border-radius: 50%; content: ""; }
.db-boundary-section > .ss-container { position: relative; z-index: 1; }
.db-validation-heading { display: grid; grid-template-columns: minmax(0,1fr) 285px; align-items: end; gap: 65px; }
.db-validation-heading .ss-section-heading { max-width: 800px; }
.db-validation-status { display: grid; align-content: center; gap: 9px; min-height: 145px; padding: 23px 25px; border: 1px solid rgba(239,207,151,.2); border-radius: 22px; background: rgba(255,255,255,.07); box-shadow: inset 0 1px rgba(255,255,255,.05); }
.db-validation-status small { color: #efc986; font-size: 10.5px; font-weight: 900; letter-spacing: 1.4px; }
.db-validation-status strong { display: flex; align-items: center; gap: 10px; font: 500 25px/1.1 Georgia,serif; }
.db-validation-status strong i { width: 11px; height: 11px; border: 2px solid #d4a85a; border-radius: 50%; box-shadow: 0 0 0 6px rgba(212,168,90,.11); }
.db-validation-status span { color: #ced8cf; font-size: 12px; line-height: 1.45; }
.db-validation-dossier { overflow: hidden; margin-top: 58px; border: 1px solid rgba(226,195,139,.68); border-radius: 31px; background: #fff9f0; box-shadow: 0 36px 90px rgba(10,19,14,.28); color: #3c443d; }
.db-dossier-header { display: flex; min-height: 104px; align-items: center; justify-content: space-between; gap: 24px; padding: 23px 28px; background: radial-gradient(circle at 100% 0,rgba(185,72,68,.12),transparent 26rem),linear-gradient(90deg,#fffaf2,#f6eadb); }
.db-dossier-header > div { display: flex; align-items: center; gap: 14px; }
.db-dossier-header > div > span { display: grid; width: 49px; height: 49px; place-items: center; border-radius: 15px; background: linear-gradient(145deg,#c2534e,#8e3738); color: #fff; font-size: 11px; font-weight: 900; box-shadow: 0 10px 22px rgba(145,55,53,.2); }
.db-dossier-header > div > div { display: grid; gap: 4px; }
.db-dossier-header small { color: #9b4b45; font-size: 10.5px; font-weight: 900; letter-spacing: 1.4px; }
.db-dossier-header h3 { margin: 0; color: #34483b; font: 500 29px/1.05 Georgia,serif; }
.db-dossier-header > strong { padding: 9px 12px; border: 1px solid #d6bd93; border-radius: 999px; background: rgba(255,255,255,.57); color: #76562f; font-size: 10.5px; letter-spacing: .25px; }
.db-validation-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; border-top: 1px solid #e5d7c5; border-bottom: 1px solid #e5d7c5; background: #e5d7c5; }
.db-validation-grid > section { display: grid; min-height: 238px; grid-template-columns: 42px minmax(0,1fr); align-content: start; gap: 14px; padding: 26px 24px; background: rgba(255,250,243,.98); }
.db-validation-grid > section:nth-child(even) { background: #fbf4eb; }
.db-validation-grid > section > b { display: grid; width: 40px; height: 40px; place-items: center; border: 1px solid #c99b50; border-radius: 50%; color: #9b4a45; font-size: 10px; }
.db-validation-grid section > div { display: grid; height: 100%; grid-template-rows: auto auto 1fr auto; align-content: start; }
.db-validation-grid section small { color: #9b4b45; font-size: 10px; font-weight: 900; letter-spacing: .85px; }
.db-validation-grid h4 { margin: 9px 0 0; color: #33453a; font: 500 20px/1.12 Georgia,serif; }
.db-validation-grid p { margin: 12px 0 0; color: #655e55; font-size: 12.5px; line-height: 1.58; }
.db-validation-grid section div > span { align-self: end; width: fit-content; margin-top: 18px; padding: 7px 9px; border-radius: 8px; background: #f4e5ea; color: #88465f; font-size: 10.5px; font-weight: 800; }
.db-validation-source-rail { display: grid; grid-template-columns: minmax(0,1fr) 32px minmax(0,1fr) 32px minmax(0,1.25fr); align-items: center; gap: 8px; padding: 24px 28px 27px; background: #fff9f0; }
.db-validation-source-rail > span { display: flex; min-height: 67px; align-items: center; gap: 11px; padding: 12px 14px; border: 1px solid #dfcfbc; border-radius: 16px; background: rgba(255,255,255,.62); }
.db-validation-source-rail > i { color: #b4813c; font-size: 22px; font-style: normal; text-align: center; }
.db-validation-source-rail > span > b,.db-system-marks b { display: grid; width: 39px; height: 39px; place-items: center; flex: 0 0 auto; border-radius: 12px; font-size: 9.5px; }
.db-validation-source-rail .is-dish > b { background: #f3dfdc; color: #9d403d; }
.db-validation-source-rail .is-more > b { background: #e6eddc; color: #5b6d42; }
.db-validation-source-rail > span > span:not(.db-system-marks) { display: grid; gap: 3px; }
.db-validation-source-rail strong { color: #3c493e; font-size: 12.5px; }
.db-validation-source-rail small { color: #71695f; font-size: 11.5px; }
.db-system-marks { display: flex !important; flex: 0 0 auto; }
.db-system-marks b { width: 33px; height: 33px; margin-left: -5px; border: 3px solid #fff9f0; background: #f1e4d3; color: #835d37; }
.db-system-marks b:first-child { margin-left: 0; background: #fff0e4; color: #a05229; }
.db-system-marks b:nth-child(2) { background: #e8efde; color: #5e7145; }
.db-system-marks b:nth-child(3) { background: #f4e3ec; color: #914361; }
.db-pilot-journey { margin-top: 24px; padding: 25px 27px 28px; border: 1px solid rgba(239,207,151,.18); border-radius: 26px; background: rgba(18,31,24,.26); box-shadow: inset 0 1px rgba(255,255,255,.04); }
.db-pilot-journey > header { display: flex; align-items: flex-end; justify-content: space-between; gap: 23px; padding-bottom: 21px; border-bottom: 1px solid rgba(239,207,151,.15); }
.db-pilot-journey header > div { display: grid; gap: 6px; }
.db-pilot-journey header small { color: #efc986; font-size: 10.5px; font-weight: 900; letter-spacing: 1.1px; }
.db-pilot-journey h3 { margin: 0; font: 500 25px/1.15 Georgia,serif; }
.db-pilot-journey header > span { color: #c9d4ca; font-size: 11.5px; }
.db-pilot-journey ol { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin: 20px 0 0; padding: 0; list-style: none; counter-reset: pilot; }
.db-pilot-journey li { display: grid; min-height: 166px; grid-template-columns: 38px minmax(0,1fr); align-content: start; gap: 11px; padding: 18px 17px; border: 1px solid rgba(239,207,151,.15); border-radius: 18px; background: rgba(255,255,255,.055); }
.db-pilot-journey li > b { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; background: rgba(208,161,83,.16); color: #efc986; font-size: 9.5px; }
.db-pilot-journey li > div { display: grid; align-content: start; gap: 7px; }
.db-pilot-journey li small { color: #d6aa62; font-size: 9.5px; font-weight: 900; letter-spacing: .8px; }
.db-pilot-journey li strong { font-size: 12.5px; }
.db-pilot-journey li span { color: #c4cfc5; font-size: 11.5px; line-height: 1.5; }
.db-pilot-journey li.is-pilot { border-color: rgba(167,191,110,.36); background: rgba(120,145,70,.13); }
.db-pilot-journey li.is-pilot > b { background: #829551; color: #fff; }
.db-pilot-journey li.is-pilot small { color: #c7d78b; }
.db-pilot-journey li.is-locked { border-color: rgba(229,157,180,.29); background: rgba(166,73,108,.11); }
.db-pilot-journey li.is-locked > b { background: #9b4b67; color: #fff; }
.db-pilot-journey li.is-locked small { color: #efbfd0; }
.db-human-gate { display: grid; grid-template-columns: 126px minmax(240px,.66fr) minmax(0,1.34fr); align-items: center; gap: 25px 31px; margin-top: 24px; padding: 29px; border: 1px solid rgba(225,183,196,.72); border-radius: 27px; background: radial-gradient(circle at 0 50%,rgba(208,159,79,.13),transparent 20rem),linear-gradient(115deg,#fff8f1,#f7e7ec); color: #3b443d; box-shadow: 0 27px 70px rgba(12,21,16,.21); }
.db-human-seal { position: relative; display: grid; width: 112px; height: 112px; place-content: center; gap: 3px; transform: rotate(-4deg); border: 2px solid #a14965; border-radius: 50%; color: #91405e; text-align: center; box-shadow: inset 0 0 0 6px #f7e7ec,inset 0 0 0 7px rgba(161,73,101,.4); }
.db-human-seal::before,.db-human-seal::after { position: absolute; top: 50%; width: 17px; height: 1px; background: #b07e45; content: ""; }
.db-human-seal::before { left: 12px; }
.db-human-seal::after { right: 12px; }
.db-human-seal span { font-size: 10px; font-weight: 900; letter-spacing: 1.4px; }
.db-human-seal strong { font: 500 16px/1 Georgia,serif; }
.db-human-copy { display: grid; align-content: center; }
.db-human-copy > small { color: #9b4964; font-size: 10.5px; font-weight: 900; letter-spacing: 1px; }
.db-human-copy h3 { margin: 12px 0 0; color: #35473b; font: 500 25px/1.15 Georgia,serif; }
.db-human-copy h3 em { color: #a24968; }
.db-human-copy p { margin: 12px 0 0; color: #70645f; font-size: 12px; line-height: 1.5; }
.db-decision-domains { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.db-decision-domains article { min-width: 0; padding: 16px; border: 1px solid #e2cfd1; border-radius: 16px; background: rgba(255,255,255,.64); }
.db-decision-domains header { display: grid; grid-template-columns: 28px minmax(0,1fr); align-items: center; gap: 8px; }
.db-decision-domains header b { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 8px; background: #f0dce3; color: #984765; font-size: 9px; }
.db-decision-domains header h4 { margin: 0; color: #4c4346; font-size: 11.5px; line-height: 1.3; }
.db-decision-domains ul { display: grid; gap: 8px; margin: 13px 0 0; padding: 13px 0 0; border-top: 1px solid #eadbdd; list-style: none; }
.db-decision-domains li { position: relative; padding-left: 16px; color: #6d6062; font-size: 11.5px; line-height: 1.4; }
.db-decision-domains li::before { position: absolute; top: .5em; left: 0; width: 7px; height: 7px; border: 1px solid #a34966; border-radius: 50%; content: ""; }
.db-human-gate > footer { grid-column: 2 / -1; padding: 14px 16px; border-left: 3px solid #aa4a67; border-radius: 0 12px 12px 0; background: rgba(255,255,255,.49); color: #785d66; font-size: 11.5px; line-height: 1.5; }

/* Video, transparantie en footer */
.db-video-section { background: radial-gradient(circle at 91% 13%,rgba(183,75,70,.17),transparent 30rem),radial-gradient(circle at 7% 90%,rgba(204,157,80,.12),transparent 26rem),linear-gradient(135deg,#f9f2ea,#f0e5dc 52%,#f8efe8); }
.db-video-poster { background: radial-gradient(circle at 82% 17%,rgba(183,75,70,.43),transparent 31%),radial-gradient(circle at 16% 85%,rgba(207,159,79,.16),transparent 28%),linear-gradient(140deg,#394d3e,#28382f 62%,#52383b) !important; }
.db-transparency { border-left-color: var(--db-red); }
.db-source-links { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 8px !important; }
.db-source-links a { color: #7b4438; font-weight: 800; text-decoration: underline; text-decoration-color: rgba(123,68,56,.35); text-underline-offset: 3px; }
.dish-page .footer-app-copy span,.dish-page .footer-app-button small { font-size: 10px; }

@media (max-width: 1120px) {
  .db-margin-stage { grid-template-columns: minmax(260px,.7fr) minmax(0,1.3fr); }
  .db-stock-proof { grid-column: 1 / -1; }
  .db-stock-proof > p { margin-top: 24px; }
}

@media (max-width: 1060px) {
  .db-hero { grid-template-columns: 1fr; }
  .db-service-pulse { max-width: 720px; }
  .db-role-rail { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .db-role-rail > i { display: none; }
  .db-role-card.is-more { grid-column: 1 / -1; }
  .db-official-stack { grid-column: 1 / -1; grid-template-columns: repeat(2,minmax(0,1fr)); }
  .db-order-journey { grid-template-columns: 1fr; }
  .db-guest-order { width: min(420px,100%); margin-inline: auto; }
  .db-tempo-intro,.db-close-intro,.db-booking-intro { grid-template-columns: 1fr; gap: 32px; }
  .db-tempo-intro > aside,.db-close-intro > aside,.db-single-route { width: fit-content; max-width: 100%; }
  .db-tempo-body { grid-template-columns: 1fr; }
  .db-close-console { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .db-cash-card { grid-column: 1 / -1; }
  .db-route-console { grid-template-columns: 1fr; }
  .db-route-tabs { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .db-signals-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .db-labor-board { grid-column: 1 / -1; }
  .db-validation-heading { grid-template-columns: 1fr; gap: 28px; }
  .db-validation-status { width: min(360px,100%); }
  .db-validation-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .db-pilot-journey ol { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .db-human-gate { grid-template-columns: 112px minmax(0,1fr); }
  .db-decision-domains,.db-human-gate > footer { grid-column: 1 / -1; }
}

@media (min-width: 1100px) {
  .db-identity-section .db-wide-heading { max-width: none; }
}

@media (min-width: 761px) and (max-width: 900px) {
  .dish-page .proposal-label { display: none; }
  .dish-page .public-brand { min-width: 0; }
  .db-order-journey > ol { grid-template-columns: 1fr; }
  .db-order-journey > ol li { display: grid; min-height: 0; grid-template-columns: 40px minmax(0,1fr); align-items: center; }
  .db-order-journey > ol li:not(:last-child)::after { top: auto; right: 50%; bottom: -10px; transform: translateX(50%) rotate(90deg); }
  .db-margin-stage { grid-template-columns: 1fr; }
  .db-receipt-card { width: min(430px,100%); margin-inline: auto; }
  .db-stock-proof { grid-column: auto; }
  .db-validation-source-rail { grid-template-columns: 1fr; }
  .db-validation-source-rail > i { transform: rotate(90deg); }
}

@media (max-width: 760px) {
  .dish-page .eyebrow { font-size: 10px; }
  .db-hero { min-height: 0; }
  .db-service-pulse { padding: 21px; border-radius: 24px; }
  .db-pulse-top,.db-pulse-brand { align-items: flex-start; }
  .db-pulse-top { flex-direction: column; }
  .db-pulse-brand { grid-template-columns: 54px minmax(0,1fr); }
  .db-pulse-brand em { grid-column: 2; justify-self: start; }
  .db-pulse-kpis { grid-template-columns: 1fr; }
  .db-ticket-feed span { grid-template-columns: 48px minmax(0,1fr) auto; }
  .db-identity-section,.db-tempo-section,.db-close-section,.db-signals-section { padding-top: 84px; padding-bottom: 90px; }
  .db-rebrand-note { grid-template-columns: 52px minmax(0,1fr); margin-bottom: 59px; padding: 20px; }
  .db-rebrand-note > span { width: 50px; height: 50px; }
  .db-rebrand-note > a { grid-column: 2; }
  .db-role-rail { grid-template-columns: 1fr; margin-top: 39px; }
  .db-role-card { min-height: 0; }
  .db-role-card.is-more { grid-column: auto; }
  .db-official-stack { grid-column: auto; grid-template-columns: 1fr; }
  .db-order-journey { margin-top: 39px; }
  .db-order-journey > ol { grid-template-columns: 1fr; }
  .db-order-journey > ol li { min-height: 0; display: grid; grid-template-columns: 40px minmax(0,1fr); align-items: center; }
  .db-order-journey > ol li:not(:last-child)::after { top: auto; right: 50%; bottom: -10px; transform: translateX(50%) rotate(90deg); }
  .db-tempo-console { margin-top: 40px; border-radius: 23px; }
  .db-tempo-console > header { align-items: flex-start; flex-direction: column; }
  .db-tempo-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); padding-inline: 13px; }
  .db-tempo-tabs button { min-width: 0; }
  .db-tempo-body { padding: 13px; }
  .db-tempo-chart { padding: 17px; }
  .db-chart-meta { grid-template-columns: 1fr; }
  .db-chart-meta strong { grid-row: auto; }
  .db-tempo-chart svg { height: 210px; }
  .db-tempo-kpis { grid-template-columns: 1fr; }
  .db-tempo-kpis article:nth-child(3) { grid-column: auto; }
  .db-margin-section,.db-booking-section,.db-boundary-section { padding-top: 84px; padding-bottom: 90px; }
  .db-margin-stage { grid-template-columns: 1fr; margin-top: 40px; }
  .db-receipt-card { width: min(430px,100%); min-height: 460px; margin-inline: auto; }
  .db-stock-proof { grid-column: auto; }
  .db-margin-calculation > header { align-items: flex-start; flex-direction: column; }
  .db-order-tabs { display: grid; grid-template-columns: 1fr; }
  .db-calculation-flow { grid-template-columns: 1fr; }
  .db-calculation-flow > i { transform: rotate(90deg); }
  .db-stock-equation { grid-template-columns: 1fr; }
  .db-stock-equation i { transform: rotate(90deg); text-align: center; }
  .db-close-console { grid-template-columns: 1fr; margin-top: 40px; }
  .db-cash-card { grid-column: auto; }
  .db-payment-mix,.db-reconcile-card,.db-cash-card { padding: 22px; }
  .db-reconcile-equation { grid-template-columns: 1fr; }
  .db-reconcile-equation > i { transform: rotate(90deg); text-align: center; }
  .db-no-silent { grid-template-columns: 41px minmax(0,1fr); }
  .db-no-silent small { grid-column: 2; }
  .db-route-console { margin-top: 40px; border-radius: 23px; }
  .db-route-tabs { grid-template-columns: 1fr; padding: 15px; }
  .db-route-tabs button { min-height: 92px; }
  .db-route-panel { grid-template-columns: 1fr; padding: 20px; }
  .db-signals-grid { grid-template-columns: 1fr; margin-top: 40px; }
  .db-labor-board { grid-column: auto; }
  .db-exception-board,.db-channel-board,.db-labor-board { padding: 22px; }
  .db-exception-board > header,.db-channel-board > header,.db-labor-board > header { align-items: flex-start; flex-direction: column; }
  .db-exception-board li { grid-template-columns: 35px minmax(0,1fr); padding: 10px 0; }
  .db-exception-board li em { grid-column: 2; justify-self: start; }
  .db-labor-metrics { grid-template-columns: 1fr; }
  .db-labor-metrics > span { min-height: 85px; }
  .db-boundary-section { padding-top: 84px; padding-bottom: 90px; }
  .db-validation-status { width: 100%; min-height: 126px; }
  .db-validation-dossier { margin-top: 40px; border-radius: 23px; }
  .db-dossier-header { align-items: flex-start; flex-direction: column; padding: 22px; }
  .db-validation-grid { grid-template-columns: 1fr; }
  .db-validation-grid > section { min-height: 0; padding: 23px 21px; }
  .db-validation-source-rail { grid-template-columns: 1fr; padding: 21px; }
  .db-validation-source-rail > i { transform: rotate(90deg); }
  .db-pilot-journey { padding: 22px; border-radius: 22px; }
  .db-pilot-journey > header { align-items: flex-start; flex-direction: column; }
  .db-pilot-journey ol { grid-template-columns: 1fr; }
  .db-pilot-journey li { min-height: 0; }
  .db-human-gate { grid-template-columns: 1fr; padding: 23px; }
  .db-human-seal { width: 96px; height: 96px; }
  .db-decision-domains { grid-template-columns: 1fr; }
  .db-human-gate > footer { grid-column: auto; }
}

@media (max-width: 430px) {
  .db-pulse-brand { grid-template-columns: 1fr; }
  .db-pulse-brand em { grid-column: auto; }
  .db-revenue-line { height: 120px; }
  .db-revenue-line svg { height: 101px; }
  .db-ticket-feed span { grid-template-columns: 46px minmax(0,1fr); padding: 6px 0; }
  .db-ticket-feed em { grid-column: 2; }
  .db-rebrand-note { grid-template-columns: 1fr; border-radius: 0 18px 18px 0; }
  .db-rebrand-note > a { grid-column: auto; }
  .db-guest-order { padding: 22px 19px 26px; }
  .db-tempo-tabs { grid-template-columns: 1fr; }
  .db-tempo-chart svg { height: 170px; }
  .db-chart-axis { font-size: 9px; }
  .db-receipt-card { padding: 25px 20px; }
  .db-order-tabs button { min-height: 44px; }
  .db-margin-explanation { grid-template-columns: 1fr; }
  .db-payment-mix > header,.db-reconcile-card > header,.db-cash-card > header { align-items: flex-start; flex-direction: column; }
  .db-payment-mix li { grid-template-columns: 10px minmax(0,1fr) auto; padding: 8px 0; }
  .db-payment-mix li em { grid-column: 2; }
  .db-channel-list > div { grid-template-columns: minmax(0,1fr) 37px; }
  .db-channel-list div > i { grid-column: 1 / -1; grid-row: 2; }
  .db-dossier-header h3 { font-size: 24px; }
  .db-dossier-header > div { align-items: flex-start; }
  .db-validation-grid > section { grid-template-columns: 38px minmax(0,1fr); gap: 11px; padding-inline: 18px; }
  .db-validation-grid > section > b { width: 36px; height: 36px; }
  .db-validation-grid h4 { font-size: 19px; }
  .db-pilot-journey h3,.db-human-copy h3 { font-size: 22px; }
  .db-source-links { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  .db-tempo-line,.db-tempo-chart circle { transition: none; }
}
