/* B18D is opt-in, leaves historic horeca order cards unchanged. */
.d18-wrap{margin:16px 0 30px;color:#193e59}.d18-head span,.d18-rail-head small{font-size:10px;font-weight:800;letter-spacing:.14em;color:#b7783b}.d18-head h2,.d18-rail-head h2{font:700 clamp(24px,3vw,36px) Georgia,serif;color:#5b301a;margin:5px 0 12px}.d18-head p{font-size:13px;color:#796557;max-width:740px;line-height:1.55}.d18-order-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.d18-card{border:1px solid #e9d4be;border-radius:18px;background:#fffdf9;overflow:hidden;box-shadow:0 8px 20px rgba(67,30,15,.04)}.d18-card-image{height:240px;position:relative;background:#f4e7d7}.d18-card-image img{width:100%;height:100%;object-fit:contain}.d18-image-tag{position:absolute;bottom:11px;left:11px;background:#234c68;color:#fff;padding:7px 10px;border-radius:8px;font-size:10px;letter-spacing:.05em}.d18-card-copy{padding:18px}.d18-card-copy>small{font-size:10px;letter-spacing:.1em;color:#a47040;font-weight:800}.d18-card-copy h3{font:700 24px Georgia,serif;color:#4e2916;margin:7px 0}.d18-card-copy>p{font-size:12px;color:#7b685a;line-height:1.5}.d18-card-copy h4{font:700 17px Georgia,serif;color:#5a311d;margin:20px 0 8px}.d18-flavor-row,.d18-topping-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.d18-flavor-row>div,.d18-topping-row>div{border:1px solid #ead8c5;border-radius:10px;overflow:hidden;background:white;text-align:center}.d18-flavor-row img,.d18-topping-row img{height:84px;width:100%;object-fit:contain;background:#f8f1e7}.d18-flavor-row span,.d18-topping-row span{display:block;color:#3b251b;font-size:10px;font-weight:650;padding:6px 4px;overflow-wrap:anywhere}.d18-reserve{display:flex;align-items:center;gap:7px;margin-top:11px;color:#77624f;font-size:11px}.d18-reserve strong{border-radius:999px;background:#f5e9d7;color:#8a5a33;padding:4px 7px}.d18-allergens{background:#f5f7f7;border:1px solid #dde5e5;border-radius:10px;padding:10px;margin-top:18px}.d18-allergens b{font-size:11px;color:#23445b;display:block;margin-bottom:8px}.d18-allergens div{display:flex;flex-wrap:wrap;gap:5px}.d18-allergens span{border-radius:6px;padding:5px 6px;background:#fff;border:1px solid #e0e6e9;font-size:10px;color:#40566a}.d18-pricing-note{margin-top:15px;background:#fff4e5;padding:11px;border-radius:9px}.d18-pricing-note b{font-size:12px;color:#95562b}.d18-pricing-note p{font-size:11px;color:#745b4d;line-height:1.45;margin:4px 0}.d18-order-lock,.d18-notice{background:#fff4ee;border:1px solid #ecd5ca;color:#8b5139;font-size:11px;padding:10px;border-radius:9px;line-height:1.45}.d18-unpublished .d18-sample-image{height:180px;display:grid;place-items:center;background:linear-gradient(130deg,#f7ead9,#e5cbaf)}.d18-unpublished:nth-child(2) .d18-sample-image{background:linear-gradient(120deg,#d0e4e9,#90b9c2)}.d18-unpublished:nth-child(3) .d18-sample-image{background:linear-gradient(130deg,#e9d9ec,#c6aaca)}.d18-sample-image span{font-size:60px;color:#fff}.d18-legacy-divider{margin:30px 0 10px;padding:18px 22px;border-radius:15px;background:#fff6eb;border:1px solid #e9cfb1}.d18-legacy-divider h3{font:700 23px Georgia,serif;color:#63341d;margin:0 0 7px}.d18-legacy-divider p{font-size:12px;color:#7f6652;margin:0}.d18-home-rail{margin:28px 0;padding:20px;border-radius:18px;background:#fffcf8;border:1px solid #ecd8be}.d18-rail-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.d18-rail-head h2{font-size:26px}.d18-rail-head a{font-size:12px;color:#b06a33}.d18-rail{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 2px}.d18-rail-item{flex:0 0 32%;min-width:220px;text-decoration:none;border:1px solid #eee1d2;border-radius:13px;background:white;overflow:hidden;scroll-snap-align:start;color:#223e53}.d18-rail-item>div{height:155px;background:#f6ebe0}.d18-rail-item img{width:100%;height:100%;object-fit:contain}.d18-rail-placeholder{height:100%;display:grid;place-items:center;font-size:54px;background:#e8d8c5;color:#fff}.d18-rail-item strong{display:block;font:700 19px Georgia,serif;padding:10px 11px 1px}.d18-rail-item small{display:block;padding:3px 11px 12px;color:#8a705d;font-size:11px}.d18-placeholder{height:100%;min-height:80px;display:grid;place-items:center;color:#be986f;background:#f4e6d5;font-size:11px}
@media(max-width:1100px){.d18-order-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.d18-order-grid{grid-template-columns:1fr}.d18-rail-item{flex-basis:82%}.d18-rail-head{display:block}.d18-card-image{height:215px}}

.d18-reserve-picture{width:48px;height:48px;border:1px solid #e8d4be;border-radius:8px;overflow:hidden;background:#fff7ed;flex:0 0 48px}.d18-reserve-picture img{width:100%;height:100%;object-fit:contain}
/* B18F: presentation is a CHOICE INSIDE ONE THEME; retain all original photos and layout. */
.f18-presentations{margin-top:15px;padding:13px;background:#fffaf2;border:1px solid #e3d1b7;border-radius:13px}.f18-head{display:flex;align-items:start;justify-content:space-between;gap:8px;flex-wrap:wrap}.f18-head strong{font:700 16px Georgia,serif;color:#59321e}.f18-head span{font-size:10px;color:#88765e}.f18-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}.f18-variant{border:1px solid #e2d7c5;border-radius:11px;background:#fff;overflow:hidden;cursor:pointer;text-align:left;display:flex;flex-direction:column;min-width:0;padding:0;font-family:inherit}.f18-variant.selected{outline:2px solid #bd8e3d;border-color:#9e773a;box-shadow:0 3px 9px rgba(155,105,37,.14)}.f18-variant img{display:block;height:100px;width:100%;object-fit:contain;background:#f6ede2}.f18-variant>span{padding:8px;display:block}.f18-variant strong{font-size:13px;color:#59321e}.f18-variant small{display:block;font-size:10px;color:#73675c;line-height:1.35;min-height:31px;margin:5px 0}.f18-variant b{display:block;font-size:10px;color:#15566d;line-height:1.4}.f18-total{margin-top:10px;padding:10px;background:white;border-radius:9px;color:#466279;font-size:11px;line-height:1.5}.f18-total strong{font-size:17px;color:#193e56}.f18-total small{font-size:10px;color:#647780;display:block;margin-top:4px}.f18-restricted,.f18-unlinked{margin-top:10px;border:1px solid #f0dcc5;border-radius:9px;padding:10px;background:#fff6ec;color:#855538;font-size:11px;line-height:1.6}.f18-unlinked{background:#fff5eb}.d18-card-image .d18-main-pic{object-fit:contain}
@media(max-width:430px){.f18-variant img{height:90px}.f18-options{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Bouwblok 18I: geen ongecontroleerde voorbeeldfoto als zogenaamd goedgekeurde Experience. */
.f18-image-unapproved{display:grid;place-items:center;min-height:90px;padding:12px;text-align:center;color:#805c3a;background:#fbf3e8;font-size:.78rem;line-height:1.5}

/* Bouwblok 18J · conceptpresentatie met echte Beheer-productfoto's, nog zonder publicatie */
.b18j-card{position:relative;border-color:#d8be9f;box-shadow:0 10px 28px rgba(62,36,20,.07)}
.b18j-card .b18j-hero-image{height:235px;background:#fff5e9;overflow:hidden}
.b18j-photo-button{display:block;position:relative;cursor:zoom-in;border:0;padding:0;width:100%;height:100%;background:transparent;min-height:80px}
.b18j-photo-button img{height:100%;width:100%;object-fit:contain}
.b18j-cover{height:100%;min-height:0}.b18j-card .d18-card-image img{height:100%;width:100%}
.b18j-magnify{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:22px;height:22px;background:#fffdf9dd;border-radius:50%;font-size:15px;color:#234c68;opacity:.85}
.b18j-draft-stamp{position:absolute;left:12px;bottom:12px;right:12px;background:#234c68e6;color:#fff;padding:8px 11px;border-radius:8px;text-align:center;font-size:10px;font-weight:850;letter-spacing:.07em;pointer-events:none}
.b18j-card .d18-flavor-row,.b18j-card .d18-topping-row{gap:8px}
.b18j-card .d18-flavor-row>div,.b18j-card .d18-topping-row>div{overflow:hidden}
.b18j-card .d18-flavor-row .b18j-photo-button,.b18j-card .d18-topping-row .b18j-photo-button{height:85px;min-height:0}
.b18j-card .d18-reserve-picture .b18j-photo-button{min-height:0}
.b18j-card .d18-reserve{flex-wrap:wrap}
.b18j-card .d18-reserve span{max-width:66%}
.b18j-experience{border-radius:12px;padding:13px;margin-top:20px;background:#fbf4ea;border:1px solid #ecdac5}
.b18j-experience>strong{color:#864f24;font:700 17px Georgia,serif}
.b18j-experience>div{display:flex;gap:14px;margin-top:10px;align-items:center}
.b18j-experience img{height:110px;width:36%;object-fit:contain;border-radius:10px;background:white}
.b18j-experience p{font-size:12px;line-height:1.55;color:#5e554c}
.b18j-experience p a{display:block;margin-top:8px;color:#1e5377;font-weight:800;text-decoration:underline}
.b18j-concept-warning{display:flex;flex-direction:column;gap:6px;padding:12px;margin-top:16px;background:#edf4f5;border:1px solid #cee0e5;border-radius:10px;color:#24536a;font-size:11px;line-height:1.55}
.b18j-modal{position:fixed;inset:0;display:none;z-index:2000;background:#171e27ed;align-items:center;justify-content:center;flex-direction:column;gap:12px;padding:24px}
.b18j-modal.is-open{display:flex}.b18j-modal img{max-width:min(92vw,1000px);max-height:76vh;object-fit:contain;background:#fff8ef;border-radius:14px}
.b18j-modal-caption{font-size:17px;color:#fff;text-align:center;font-weight:700}
.b18j-close{position:absolute;right:18px;top:14px;background:white;color:#12374d;border:0;border-radius:50%;font-size:27px;width:44px;height:44px;cursor:pointer}
@media(max-width:680px){.b18j-experience>div{flex-direction:column;align-items:stretch}.b18j-experience img{width:100%;height:150px}}

/* B18M - duidelijk aanbod / in ontwikkeling; responsief en zonder overlappende labels */
.b18m-availability{background:#fff9f0;color:#56331e;border:1px solid #e9d3b9;border-radius:22px;margin:22px 0 28px;padding:clamp(16px,2vw,28px);box-shadow:0 8px 26px #41271209;max-width:100%;min-width:0;overflow:visible}
.b18m-availability-head>span{font-weight:800;color:#b57035;letter-spacing:.13em;font-size:10px}.b18m-availability-head h2{font:700 clamp(22px,2.5vw,32px) Georgia,serif;margin:7px 0}.b18m-availability-head p{font-size:13px;color:#736052;line-height:1.6;max-width:790px}
.b18m-availability-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0 13px;align-items:stretch}.b18m-availability-cols>div{min-width:0;border:1px solid #e5d2bc;border-radius:15px;padding:18px;background:#fff}.b18m-available{border-color:#b9d7c0!important;background:#f5fbf5!important}.b18m-development{background:#fff8f2!important}.b18m-availability-cols h3{font:700 19px Georgia,serif;margin:10px 0 7px;color:#55331e}.b18m-availability-cols p{font-size:12px;line-height:1.5;color:#6e6155}.b18m-availability-cols a{display:inline-block;font-weight:700;font-size:12px;color:#1a526e;margin-top:8px}
.b18m-status{font:800 10px/1.4 system-ui;letter-spacing:.07em;border-radius:999px;padding:5px 9px;display:inline-block}.b18m-status--ready{background:#dceee1;color:#206338}.b18m-status--work{background:#fff0d7;color:#965c25}
.b18m-status-list{display:grid;gap:8px}.b18m-status-list>div{display:flex;gap:8px;justify-content:space-between;align-items:baseline;flex-wrap:wrap;border-top:1px solid #ead8c7;padding-top:8px;font-size:12px}.b18m-status-list strong{font-size:11px}.b18m-text-work{color:#925e31}.b18m-text-ready{color:#26643f}.b18m-availability>small{display:block;color:#836d58;font-size:11px;line-height:1.5}
@media(max-width:760px){.b18m-availability-cols{grid-template-columns:1fr}.b18m-availability{margin:15px 0 22px}.b18m-status-list>div{display:grid;gap:3px}}

/* B18M: labels en inhoud blijven leesbaar op smalle kaarten */
.d18-card,.b18j-card{min-width:0}.d18-image-tag,.b18j-draft-stamp{max-width:calc(100% - 24px);box-sizing:border-box;line-height:1.35;white-space:normal;overflow-wrap:anywhere}.d18-legacy-divider p{margin:10px 0;line-height:1.65}.b18j-card .d18-card-copy{min-width:0;overflow-wrap:anywhere}.b18j-card .d18-reserve span{max-width:100%}.b18j-experience>div{min-width:0}.b18j-experience p{min-width:0;overflow-wrap:anywhere}